diff --git a/package-lock.json b/package-lock.json index bca664d..67e3644 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,44 +9,44 @@ "version": "1.0.0", "license": "MIT", "dependencies": { - "@blueprintjs/core": "^6.3.1", - "@blueprintjs/icons": "^6.1.0", - "@blueprintjs/select": "^6.0.5", + "@blueprintjs/core": "^6.3.2", + "@blueprintjs/icons": "^6.2.0", + "@blueprintjs/select": "^6.0.6", "@emotion/styled": "^11.14.1", - "@vitejs/plugin-react": "^5.0.3", - "@zakodium/nmrium-core": "^0.1.7", - "@zakodium/nmrium-core-plugins": "^0.1.10", + "@vitejs/plugin-react": "^5.0.4", + "@zakodium/nmrium-core": "^0.2.3", + "@zakodium/nmrium-core-plugins": "^0.3.6", "fifo-logger": "^2.0.1", "filelist-utils": "^1.11.3", - "nmr-processing": "^19.1.0", - "nmrium": "^1.3.0", - "openchemlib": "^9.8.0", - "react-science": "^19.1.0" + "nmr-processing": "^19.4.1", + "nmrium": "^1.6.1", + "openchemlib": "^9.12.0", + "react-science": "^19.3.1" }, "devDependencies": { "@babel/plugin-transform-modules-commonjs": "^7.27.1", "@babel/preset-react": "^7.27.1", "@babel/preset-typescript": "^7.27.1", - "@playwright/test": "^1.55.0", + "@playwright/test": "^1.56.1", "@simbathesailor/use-what-changed": "^2.0.0", "@types/jest": "^30.0.0", - "@types/node": "^24.5.2", + "@types/node": "^24.8.1", "@types/react": "^18.3.3", "@types/react-dom": "^18.3.0", "@types/react-router-dom": "^5.3.3", - "cross-env": "^10.0.0", - "eslint": "^9.35.0", - "eslint-config-cheminfo-react": "^18.0.0", + "cross-env": "^10.1.0", + "eslint": "^9.38.0", + "eslint-config-cheminfo-react": "^18.0.1", "eslint-config-cheminfo-typescript": "^20.0.0", - "jest": "^30.1.3", + "jest": "^30.2.0", "prettier": "3.6.2", "react": "^18.3.1", "react-dom": "^18.3.1", - "react-router-dom": "^7.9.1", + "react-router-dom": "^7.9.4", "serve": "^14.2.5", - "typescript": "^5.9.2", - "vite": "^7.1.6", - "vite-plugin-pwa": "^1.0.3" + "typescript": "^5.9.3", + "vite": "^7.1.11", + "vite-plugin-pwa": "^1.1.0" } }, "node_modules/@aashutoshrathi/word-wrap": { @@ -60,9 +60,9 @@ } }, "node_modules/@atlaskit/pragmatic-drag-and-drop": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/@atlaskit/pragmatic-drag-and-drop/-/pragmatic-drag-and-drop-1.7.4.tgz", - "integrity": "sha512-lZHnO9BJdHPKnwB0uvVUCyDnIhL+WAHzXQ2EXX0qacogOsnvIUiCgY0BLKhBqTCWln3/f/Ox5jU54MKO6ayh9A==", + "version": "1.7.7", + "resolved": "https://registry.npmjs.org/@atlaskit/pragmatic-drag-and-drop/-/pragmatic-drag-and-drop-1.7.7.tgz", + "integrity": "sha512-jX+68AoSTqO/fhCyJDTZ38Ey6/wyL2Iq+J/moanma0YyktpnoHxevjY1UNJHYp0NCburdQDZSL1ZFac1mO1osQ==", "license": "Apache-2.0", "dependencies": { "@babel/runtime": "^7.0.0", @@ -71,9 +71,9 @@ } }, "node_modules/@atlaskit/pragmatic-drag-and-drop-auto-scroll": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@atlaskit/pragmatic-drag-and-drop-auto-scroll/-/pragmatic-drag-and-drop-auto-scroll-2.1.1.tgz", - "integrity": "sha512-VAQEb3NVLY9Q5ZgC5Eiws9Uf6xOINY9/pAZMdbOVlF90uRXEkmpYqdTL+zeyZ8U8deuqYCmXr7oWIEnxpNQVzA==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@atlaskit/pragmatic-drag-and-drop-auto-scroll/-/pragmatic-drag-and-drop-auto-scroll-2.1.2.tgz", + "integrity": "sha512-6BgAUxSNbQFiG3uqNxf53cDQADn5mSeh/JsQzCHo46GPQnVWIJk77zWC8yZ++0Mfg1ECy02zNrbniF7SgHAhXQ==", "license": "Apache-2.0", "dependencies": { "@atlaskit/pragmatic-drag-and-drop": "^1.7.0", @@ -1989,13 +1989,13 @@ } }, "node_modules/@blueprintjs/core": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/@blueprintjs/core/-/core-6.3.1.tgz", - "integrity": "sha512-mvpzyrkkyLdprL9LgzGeQBtR+9dZFXizmwRHHWVFQzIvLNjU+9EIwJlnKBjIAovsKSvZnMRc/8pSXn/LTEQDVQ==", + "version": "6.3.2", + "resolved": "https://registry.npmjs.org/@blueprintjs/core/-/core-6.3.2.tgz", + "integrity": "sha512-BZ46b0RxavATBfni9WcgAJAp8sFrqiNoUwoIIWoe1MTFlrI3IipOPKG6IcYKLGW1YAYa1jwc9ftaYiZVubll5A==", "license": "Apache-2.0", "dependencies": { "@blueprintjs/colors": "^5.1.9", - "@blueprintjs/icons": "^6.1.0", + "@blueprintjs/icons": "^6.2.0", "@popperjs/core": "^2.11.8", "classnames": "^2.3.1", "normalize.css": "^8.0.1", @@ -2020,9 +2020,9 @@ } }, "node_modules/@blueprintjs/icons": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/@blueprintjs/icons/-/icons-6.1.0.tgz", - "integrity": "sha512-FvARNeJGvQPwewtKBB/8jYAj1xQFXFf34/SSdpDxZGhAeEf98NdUHilsel3M2wT/FPNWJCKhDHSND4sDgpMr+A==", + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/@blueprintjs/icons/-/icons-6.2.0.tgz", + "integrity": "sha512-iPM2nx1lYe1kT3C4oOS7NsxdJCc1kF3vluDLwF3chRrChwZfrSAF1aPD7dJLAZFaVgdaguElfTs89e9H13a9rQ==", "license": "Apache-2.0", "dependencies": { "change-case": "^4.1.2", @@ -2041,13 +2041,13 @@ } }, "node_modules/@blueprintjs/select": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/@blueprintjs/select/-/select-6.0.5.tgz", - "integrity": "sha512-85i7bzxI/ABIJ/D8zufZkrzlj/ozt8YPqcUdYYlBv0VTC8cNyhNSp+zUohEEdTlc00EHX6I55EjSI7HbuFyd5Q==", + "version": "6.0.6", + "resolved": "https://registry.npmjs.org/@blueprintjs/select/-/select-6.0.6.tgz", + "integrity": "sha512-1c4YaahEZZ+P1z/265bsvQCJvoIhBaP4eQambdFrHT3+7DbpleOnjjIN56FW5o8CaL30KQMD0bnUSOSGrTpSFw==", "license": "Apache-2.0", "dependencies": { - "@blueprintjs/core": "^6.3.1", - "@blueprintjs/icons": "^6.1.0", + "@blueprintjs/core": "^6.3.2", + "@blueprintjs/icons": "^6.2.0", "classnames": "^2.3.1", "tslib": "~2.6.2" }, @@ -2721,13 +2721,13 @@ } }, "node_modules/@eslint/config-array": { - "version": "0.21.0", - "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.21.0.tgz", - "integrity": "sha512-ENIdc4iLu0d93HeYirvKmrzshzofPw6VkZRKQGe9Nv46ZnWUzcF1xV01dcvEg/1wXUR61OmmlSfyeyO7EvjLxQ==", + "version": "0.21.1", + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.21.1.tgz", + "integrity": "sha512-aw1gNayWpdI/jSYVgzN5pL0cfzU02GT3NBpeT/DXbx1/1x7ZKxFPd9bwrzygx/qiwIQiJ1sw/zD8qY/kRvlGHA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@eslint/object-schema": "^2.1.6", + "@eslint/object-schema": "^2.1.7", "debug": "^4.3.1", "minimatch": "^3.1.2" }, @@ -2736,11 +2736,27 @@ } }, "node_modules/@eslint/config-helpers": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.3.1.tgz", - "integrity": "sha512-xR93k9WhrDYpXHORXpxVL5oHj3Era7wo6k/Wd8/IsQNnZUTzkGS29lyn3nAT05v6ltUuTFVCCYDEGfy2Or/sPA==", + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.4.1.tgz", + "integrity": "sha512-csZAzkNhsgwb0I/UAV6/RGFTbiakPCf0ZrGmrIxQpYvGZ00PhTkSnyKNolphgIvmnJeGw6rcGVEXfTzUnFuEvw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/core": "^0.16.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/config-helpers/node_modules/@eslint/core": { + "version": "0.16.0", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.16.0.tgz", + "integrity": "sha512-nmC8/totwobIiFcGkDza3GIKfAw1+hLiYVrh3I1nIomQ8PEr5cxg34jnkmGawul/ep52wGRAcyeDCNtWKSOj4Q==", "dev": true, "license": "Apache-2.0", + "dependencies": { + "@types/json-schema": "^7.0.15" + }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } @@ -2783,9 +2799,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.35.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.35.0.tgz", - "integrity": "sha512-30iXE9whjlILfWobBkNerJo+TXYsgVM5ERQwMcMKCHckHflCmf7wXDAHlARoWnh0s1U72WqlbeyE7iAcCzuCPw==", + "version": "9.38.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.38.0.tgz", + "integrity": "sha512-UZ1VpFvXf9J06YG9xQBdnzU+kthors6KjhMAl6f4gH4usHyh31rUf2DLGInT8RFYIReYXNSydgPY0V2LuWgl7A==", "dev": true, "license": "MIT", "engines": { @@ -2796,9 +2812,9 @@ } }, "node_modules/@eslint/object-schema": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.6.tgz", - "integrity": "sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA==", + "version": "2.1.7", + "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.7.tgz", + "integrity": "sha512-VtAOaymWVfZcmZbp6E2mympDIHvyjXs/12LqWYjVw6qjrfF+VK+fyG33kChz3nnK+SU5/NeHOqrTEHS8sXO3OA==", "dev": true, "license": "Apache-2.0", "engines": { @@ -2820,9 +2836,9 @@ } }, "node_modules/@hookform/resolvers": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/@hookform/resolvers/-/resolvers-5.2.1.tgz", - "integrity": "sha512-u0+6X58gkjMcxur1wRWokA7XsiiBJ6aK17aPZxhkoYiK5J+HcTx0Vhu9ovXe6H+dVpO6cjrn2FkJTryXEMlryQ==", + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/@hookform/resolvers/-/resolvers-5.2.2.tgz", + "integrity": "sha512-A/IxlMLShx3KjV/HeTcTfaMxdwy690+L/ZADoeaTltLx+CVuzkeVIPuybK3jrRfw7YZnmdKsVVHAlEPIAEUNlA==", "license": "MIT", "dependencies": { "@standard-schema/utils": "^0.3.0" @@ -3033,17 +3049,17 @@ } }, "node_modules/@jest/console": { - "version": "30.1.2", - "resolved": "https://registry.npmjs.org/@jest/console/-/console-30.1.2.tgz", - "integrity": "sha512-BGMAxj8VRmoD0MoA/jo9alMXSRoqW8KPeqOfEo1ncxnRLatTBCpRoOwlwlEMdudp68Q6WSGwYrrLtTGOh8fLzw==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-30.2.0.tgz", + "integrity": "sha512-+O1ifRjkvYIkBqASKWgLxrpEhQAAE7hY77ALLUufSk5717KfOShg6IbqLmdsLMPdUiFvA2kTs0R7YZy+l0IzZQ==", "dev": true, "license": "MIT", "dependencies": { - "@jest/types": "30.0.5", + "@jest/types": "30.2.0", "@types/node": "*", "chalk": "^4.1.2", - "jest-message-util": "30.1.0", - "jest-util": "30.0.5", + "jest-message-util": "30.2.0", + "jest-util": "30.2.0", "slash": "^3.0.0" }, "engines": { @@ -3051,39 +3067,39 @@ } }, "node_modules/@jest/core": { - "version": "30.1.3", - "resolved": "https://registry.npmjs.org/@jest/core/-/core-30.1.3.tgz", - "integrity": "sha512-LIQz7NEDDO1+eyOA2ZmkiAyYvZuo6s1UxD/e2IHldR6D7UYogVq3arTmli07MkENLq6/3JEQjp0mA8rrHHJ8KQ==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-30.2.0.tgz", + "integrity": "sha512-03W6IhuhjqTlpzh/ojut/pDB2LPRygyWX8ExpgHtQA8H/3K7+1vKmcINx5UzeOX1se6YEsBsOHQ1CRzf3fOwTQ==", "dev": true, "license": "MIT", "dependencies": { - "@jest/console": "30.1.2", + "@jest/console": "30.2.0", "@jest/pattern": "30.0.1", - "@jest/reporters": "30.1.3", - "@jest/test-result": "30.1.3", - "@jest/transform": "30.1.2", - "@jest/types": "30.0.5", + "@jest/reporters": "30.2.0", + "@jest/test-result": "30.2.0", + "@jest/transform": "30.2.0", + "@jest/types": "30.2.0", "@types/node": "*", "ansi-escapes": "^4.3.2", "chalk": "^4.1.2", "ci-info": "^4.2.0", "exit-x": "^0.2.2", "graceful-fs": "^4.2.11", - "jest-changed-files": "30.0.5", - "jest-config": "30.1.3", - "jest-haste-map": "30.1.0", - "jest-message-util": "30.1.0", + "jest-changed-files": "30.2.0", + "jest-config": "30.2.0", + "jest-haste-map": "30.2.0", + "jest-message-util": "30.2.0", "jest-regex-util": "30.0.1", - "jest-resolve": "30.1.3", - "jest-resolve-dependencies": "30.1.3", - "jest-runner": "30.1.3", - "jest-runtime": "30.1.3", - "jest-snapshot": "30.1.2", - "jest-util": "30.0.5", - "jest-validate": "30.1.0", - "jest-watcher": "30.1.3", + "jest-resolve": "30.2.0", + "jest-resolve-dependencies": "30.2.0", + "jest-runner": "30.2.0", + "jest-runtime": "30.2.0", + "jest-snapshot": "30.2.0", + "jest-util": "30.2.0", + "jest-validate": "30.2.0", + "jest-watcher": "30.2.0", "micromatch": "^4.0.8", - "pretty-format": "30.0.5", + "pretty-format": "30.2.0", "slash": "^3.0.0" }, "engines": { @@ -3109,39 +3125,39 @@ } }, "node_modules/@jest/environment": { - "version": "30.1.2", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-30.1.2.tgz", - "integrity": "sha512-N8t1Ytw4/mr9uN28OnVf0SYE2dGhaIxOVYcwsf9IInBKjvofAjbFRvedvBBlyTYk2knbJTiEjEJ2PyyDIBnd9w==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-30.2.0.tgz", + "integrity": "sha512-/QPTL7OBJQ5ac09UDRa3EQes4gt1FTEG/8jZ/4v5IVzx+Cv7dLxlVIvfvSVRiiX2drWyXeBjkMSR8hvOWSog5g==", "dev": true, "license": "MIT", "dependencies": { - "@jest/fake-timers": "30.1.2", - "@jest/types": "30.0.5", + "@jest/fake-timers": "30.2.0", + "@jest/types": "30.2.0", "@types/node": "*", - "jest-mock": "30.0.5" + "jest-mock": "30.2.0" }, "engines": { "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, "node_modules/@jest/expect": { - "version": "30.1.2", - "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-30.1.2.tgz", - "integrity": "sha512-tyaIExOwQRCxPCGNC05lIjWJztDwk2gPDNSDGg1zitXJJ8dC3++G/CRjE5mb2wQsf89+lsgAgqxxNpDLiCViTA==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-30.2.0.tgz", + "integrity": "sha512-V9yxQK5erfzx99Sf+7LbhBwNWEZ9eZay8qQ9+JSC0TrMR1pMDHLMY+BnVPacWU6Jamrh252/IKo4F1Xn/zfiqA==", "dev": true, "license": "MIT", "dependencies": { - "expect": "30.1.2", - "jest-snapshot": "30.1.2" + "expect": "30.2.0", + "jest-snapshot": "30.2.0" }, "engines": { "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, "node_modules/@jest/expect-utils": { - "version": "30.1.2", - "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-30.1.2.tgz", - "integrity": "sha512-HXy1qT/bfdjCv7iC336ExbqqYtZvljrV8odNdso7dWK9bSeHtLlvwWWC3YSybSPL03Gg5rug6WLCZAZFH72m0A==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-30.2.0.tgz", + "integrity": "sha512-1JnRfhqpD8HGpOmQp180Fo9Zt69zNtC+9lR+kT7NVL05tNXIi+QC8Csz7lfidMoVLPD3FnOtcmp0CEFnxExGEA==", "dev": true, "license": "MIT", "dependencies": { @@ -3152,18 +3168,18 @@ } }, "node_modules/@jest/fake-timers": { - "version": "30.1.2", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-30.1.2.tgz", - "integrity": "sha512-Beljfv9AYkr9K+ETX9tvV61rJTY706BhBUtiaepQHeEGfe0DbpvUA5Z3fomwc5Xkhns6NWrcFDZn+72fLieUnA==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-30.2.0.tgz", + "integrity": "sha512-HI3tRLjRxAbBy0VO8dqqm7Hb2mIa8d5bg/NJkyQcOk7V118ObQML8RC5luTF/Zsg4474a+gDvhce7eTnP4GhYw==", "dev": true, "license": "MIT", "dependencies": { - "@jest/types": "30.0.5", + "@jest/types": "30.2.0", "@sinonjs/fake-timers": "^13.0.0", "@types/node": "*", - "jest-message-util": "30.1.0", - "jest-mock": "30.0.5", - "jest-util": "30.0.5" + "jest-message-util": "30.2.0", + "jest-mock": "30.2.0", + "jest-util": "30.2.0" }, "engines": { "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" @@ -3180,16 +3196,16 @@ } }, "node_modules/@jest/globals": { - "version": "30.1.2", - "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-30.1.2.tgz", - "integrity": "sha512-teNTPZ8yZe3ahbYnvnVRDeOjr+3pu2uiAtNtrEsiMjVPPj+cXd5E/fr8BL7v/T7F31vYdEHrI5cC/2OoO/vM9A==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-30.2.0.tgz", + "integrity": "sha512-b63wmnKPaK+6ZZfpYhz9K61oybvbI1aMcIs80++JI1O1rR1vaxHUCNqo3ITu6NU0d4V34yZFoHMn/uoKr/Rwfw==", "dev": true, "license": "MIT", "dependencies": { - "@jest/environment": "30.1.2", - "@jest/expect": "30.1.2", - "@jest/types": "30.0.5", - "jest-mock": "30.0.5" + "@jest/environment": "30.2.0", + "@jest/expect": "30.2.0", + "@jest/types": "30.2.0", + "jest-mock": "30.2.0" }, "engines": { "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" @@ -3210,17 +3226,17 @@ } }, "node_modules/@jest/reporters": { - "version": "30.1.3", - "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-30.1.3.tgz", - "integrity": "sha512-VWEQmJWfXMOrzdFEOyGjUEOuVXllgZsoPtEHZzfdNz18RmzJ5nlR6kp8hDdY8dDS1yGOXAY7DHT+AOHIPSBV0w==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-30.2.0.tgz", + "integrity": "sha512-DRyW6baWPqKMa9CzeiBjHwjd8XeAyco2Vt8XbcLFjiwCOEKOvy82GJ8QQnJE9ofsxCMPjH4MfH8fCWIHHDKpAQ==", "dev": true, "license": "MIT", "dependencies": { "@bcoe/v8-coverage": "^0.2.3", - "@jest/console": "30.1.2", - "@jest/test-result": "30.1.3", - "@jest/transform": "30.1.2", - "@jest/types": "30.0.5", + "@jest/console": "30.2.0", + "@jest/test-result": "30.2.0", + "@jest/transform": "30.2.0", + "@jest/types": "30.2.0", "@jridgewell/trace-mapping": "^0.3.25", "@types/node": "*", "chalk": "^4.1.2", @@ -3233,9 +3249,9 @@ "istanbul-lib-report": "^3.0.0", "istanbul-lib-source-maps": "^5.0.0", "istanbul-reports": "^3.1.3", - "jest-message-util": "30.1.0", - "jest-util": "30.0.5", - "jest-worker": "30.1.0", + "jest-message-util": "30.2.0", + "jest-util": "30.2.0", + "jest-worker": "30.2.0", "slash": "^3.0.0", "string-length": "^4.0.2", "v8-to-istanbul": "^9.0.1" @@ -3266,13 +3282,13 @@ } }, "node_modules/@jest/snapshot-utils": { - "version": "30.1.2", - "resolved": "https://registry.npmjs.org/@jest/snapshot-utils/-/snapshot-utils-30.1.2.tgz", - "integrity": "sha512-vHoMTpimcPSR7OxS2S0V1Cpg8eKDRxucHjoWl5u4RQcnxqQrV3avETiFpl8etn4dqxEGarBeHbIBety/f8mLXw==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/@jest/snapshot-utils/-/snapshot-utils-30.2.0.tgz", + "integrity": "sha512-0aVxM3RH6DaiLcjj/b0KrIBZhSX1373Xci4l3cW5xiUWPctZ59zQ7jj4rqcJQ/Z8JuN/4wX3FpJSa3RssVvCug==", "dev": true, "license": "MIT", "dependencies": { - "@jest/types": "30.0.5", + "@jest/types": "30.2.0", "chalk": "^4.1.2", "graceful-fs": "^4.2.11", "natural-compare": "^1.4.0" @@ -3297,14 +3313,14 @@ } }, "node_modules/@jest/test-result": { - "version": "30.1.3", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-30.1.3.tgz", - "integrity": "sha512-P9IV8T24D43cNRANPPokn7tZh0FAFnYS2HIfi5vK18CjRkTDR9Y3e1BoEcAJnl4ghZZF4Ecda4M/k41QkvurEQ==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-30.2.0.tgz", + "integrity": "sha512-RF+Z+0CCHkARz5HT9mcQCBulb1wgCP3FBvl9VFokMX27acKphwyQsNuWH3c+ojd1LeWBLoTYoxF0zm6S/66mjg==", "dev": true, "license": "MIT", "dependencies": { - "@jest/console": "30.1.2", - "@jest/types": "30.0.5", + "@jest/console": "30.2.0", + "@jest/types": "30.2.0", "@types/istanbul-lib-coverage": "^2.0.6", "collect-v8-coverage": "^1.0.2" }, @@ -3313,15 +3329,15 @@ } }, "node_modules/@jest/test-sequencer": { - "version": "30.1.3", - "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-30.1.3.tgz", - "integrity": "sha512-82J+hzC0qeQIiiZDThh+YUadvshdBswi5nuyXlEmXzrhw5ZQSRHeQ5LpVMD/xc8B3wPePvs6VMzHnntxL+4E3w==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-30.2.0.tgz", + "integrity": "sha512-wXKgU/lk8fKXMu/l5Hog1R61bL4q5GCdT6OJvdAFz1P+QrpoFuLU68eoKuVc4RbrTtNnTL5FByhWdLgOPSph+Q==", "dev": true, "license": "MIT", "dependencies": { - "@jest/test-result": "30.1.3", + "@jest/test-result": "30.2.0", "graceful-fs": "^4.2.11", - "jest-haste-map": "30.1.0", + "jest-haste-map": "30.2.0", "slash": "^3.0.0" }, "engines": { @@ -3329,23 +3345,23 @@ } }, "node_modules/@jest/transform": { - "version": "30.1.2", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-30.1.2.tgz", - "integrity": "sha512-UYYFGifSgfjujf1Cbd3iU/IQoSd6uwsj8XHj5DSDf5ERDcWMdJOPTkHWXj4U+Z/uMagyOQZ6Vne8C4nRIrCxqA==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-30.2.0.tgz", + "integrity": "sha512-XsauDV82o5qXbhalKxD7p4TZYYdwcaEXC77PPD2HixEFF+6YGppjrAAQurTl2ECWcEomHBMMNS9AH3kcCFx8jA==", "dev": true, "license": "MIT", "dependencies": { "@babel/core": "^7.27.4", - "@jest/types": "30.0.5", + "@jest/types": "30.2.0", "@jridgewell/trace-mapping": "^0.3.25", - "babel-plugin-istanbul": "^7.0.0", + "babel-plugin-istanbul": "^7.0.1", "chalk": "^4.1.2", "convert-source-map": "^2.0.0", "fast-json-stable-stringify": "^2.1.0", "graceful-fs": "^4.2.11", - "jest-haste-map": "30.1.0", + "jest-haste-map": "30.2.0", "jest-regex-util": "30.0.1", - "jest-util": "30.0.5", + "jest-util": "30.2.0", "micromatch": "^4.0.8", "pirates": "^4.0.7", "slash": "^3.0.0", @@ -3356,9 +3372,9 @@ } }, "node_modules/@jest/types": { - "version": "30.0.5", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-30.0.5.tgz", - "integrity": "sha512-aREYa3aku9SSnea4aX6bhKn4bgv3AXkgijoQgbYV3yvbiGt6z+MQ85+6mIhx9DsKW2BuB/cLR/A+tcMThx+KLQ==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-30.2.0.tgz", + "integrity": "sha512-H9xg1/sfVvyfU7o3zMfBEjQ1gcsdeTMgqHoYdN79tuLqfTtuu7WckRA1R5whDwOzxaZAeMKTYWqP+WCAi0CHsg==", "dev": true, "license": "MIT", "dependencies": { @@ -3506,13 +3522,13 @@ } }, "node_modules/@playwright/test": { - "version": "1.55.0", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.55.0.tgz", - "integrity": "sha512-04IXzPwHrW69XusN/SIdDdKZBzMfOT9UNT/YiJit/xpy2VuAoB8NHc8Aplb96zsWDddLnbkPL3TsmrS04ZU2xQ==", + "version": "1.56.1", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.56.1.tgz", + "integrity": "sha512-vSMYtL/zOcFpvJCW71Q/OEGQb7KYBPAdKh35WNSkaZA75JlAO8ED8UN6GUNTm3drWomcbcqRPFqQbLae8yBTdg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "playwright": "1.55.0" + "playwright": "1.56.1" }, "bin": { "playwright": "cli.js" @@ -3584,9 +3600,9 @@ } }, "node_modules/@rolldown/pluginutils": { - "version": "1.0.0-beta.35", - "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-beta.35.tgz", - "integrity": "sha512-slYrCpoxJUqzFDDNlvrOYRazQUNRvWPjXA17dAOISY3rDMxX6k8K4cj2H+hEYMHF81HO3uNd5rHVigAWRM5dSg==", + "version": "1.0.0-beta.38", + "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-beta.38.tgz", + "integrity": "sha512-N/ICGKleNhA5nc9XXQG/kkKHJ7S55u0x0XUJbbkmdCnFuoRkM1Il12q9q0eX19+M7KKUEPw/daUPIRnxhcxAIw==", "license": "MIT" }, "node_modules/@rollup/plugin-node-resolve": { @@ -3996,6 +4012,76 @@ "string.prototype.matchall": "^4.0.6" } }, + "node_modules/@tanstack/devtools-event-client": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@tanstack/devtools-event-client/-/devtools-event-client-0.3.3.tgz", + "integrity": "sha512-RfV+OPV/M3CGryYqTue684u10jUt55PEqeBOnOtCe6tAmHI9Iqyc8nHeDhWPEV9715gShuauFVaMc9RiUVNdwg==", + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + } + }, + "node_modules/@tanstack/form-core": { + "version": "1.24.3", + "resolved": "https://registry.npmjs.org/@tanstack/form-core/-/form-core-1.24.3.tgz", + "integrity": "sha512-e+HzSD49NWr4aIqJWtPPzmi+/phBJAP3nSPN8dvxwmJWqAxuB/cH138EcmCFf3+oA7j3BXvwvTY0I+8UweGPjQ==", + "license": "MIT", + "dependencies": { + "@tanstack/devtools-event-client": "^0.3.2", + "@tanstack/store": "^0.7.7" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + } + }, + "node_modules/@tanstack/react-form": { + "version": "1.23.7", + "resolved": "https://registry.npmjs.org/@tanstack/react-form/-/react-form-1.23.7.tgz", + "integrity": "sha512-p/j9Gi2+s135sOjj48RjM+6xZQr1FVpliQlETLYBEGmmmxWHgYYs2b62mTDSnuv7AqtuZhpQ+t0CRFVfbQLsFA==", + "license": "MIT", + "dependencies": { + "@tanstack/form-core": "1.24.3", + "@tanstack/react-store": "^0.7.7", + "decode-formdata": "^0.9.0", + "devalue": "^5.3.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + }, + "peerDependencies": { + "@tanstack/react-start": "^1.130.10", + "react": "^17.0.0 || ^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@tanstack/react-start": { + "optional": true + } + } + }, + "node_modules/@tanstack/react-form/node_modules/@tanstack/react-store": { + "version": "0.7.7", + "resolved": "https://registry.npmjs.org/@tanstack/react-store/-/react-store-0.7.7.tgz", + "integrity": "sha512-qqT0ufegFRDGSof9D/VqaZgjNgp4tRPHZIJq2+QIHkMUtHjaJ0lYrrXjeIUJvjnTbgPfSD1XgOMEt0lmANn6Zg==", + "license": "MIT", + "dependencies": { + "@tanstack/store": "0.7.7", + "use-sync-external-store": "^1.5.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0", + "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, "node_modules/@tanstack/react-table": { "version": "8.21.3", "resolved": "https://registry.npmjs.org/@tanstack/react-table/-/react-table-8.21.3.tgz", @@ -4033,6 +4119,16 @@ "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" } }, + "node_modules/@tanstack/store": { + "version": "0.7.7", + "resolved": "https://registry.npmjs.org/@tanstack/store/-/store-0.7.7.tgz", + "integrity": "sha512-xa6pTan1bcaqYDS9BDpSiS63qa6EoDkPN9RsRaxHuDdVDNntzq3xNwR5YKTU/V3SkSyC9T4YVOPh2zRQN0nhIQ==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + } + }, "node_modules/@tanstack/table-core": { "version": "8.21.3", "resolved": "https://registry.npmjs.org/@tanstack/table-core/-/table-core-8.21.3.tgz", @@ -4057,9 +4153,9 @@ } }, "node_modules/@tybys/wasm-util": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.0.tgz", - "integrity": "sha512-VyyPYFlOMNylG45GoAe0xDoLwWuowvf92F9kySqzYh8vmYm7D2u4iUJKa1tOUpS70Ku13ASrOkS4ScXFsTaCNQ==", + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.1.tgz", + "integrity": "sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==", "dev": true, "license": "MIT", "optional": true, @@ -4189,13 +4285,13 @@ "license": "MIT" }, "node_modules/@types/node": { - "version": "24.5.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-24.5.2.tgz", - "integrity": "sha512-FYxk1I7wPv3K2XBaoyH2cTnocQEu8AOZ60hPbsyukMPLv5/5qr7V1i8PLHdl6Zf87I+xZXFvPCXYjiTFq+YSDQ==", + "version": "24.8.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.8.1.tgz", + "integrity": "sha512-alv65KGRadQVfVcG69MuB4IzdYVpRwMG/mq8KWOaoOdyY617P5ivaDiMCGOFDWD2sAn5Q0mR3mRtUOgm99hL9Q==", "devOptional": true, "license": "MIT", "dependencies": { - "undici-types": "~7.12.0" + "undici-types": "~7.14.0" } }, "node_modules/@types/parse-json": { @@ -4839,15 +4935,15 @@ ] }, "node_modules/@vitejs/plugin-react": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-5.0.3.tgz", - "integrity": "sha512-PFVHhosKkofGH0Yzrw1BipSedTH68BFF8ZWy1kfUpCtJcouXXY0+racG8sExw7hw0HoX36813ga5o3LTWZ4FUg==", + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-5.0.4.tgz", + "integrity": "sha512-La0KD0vGkVkSk6K+piWDKRUyg8Rl5iAIKRMH0vMJI0Eg47bq1eOxmoObAaQG37WMW9MSyk7Cs8EIWwJC1PtzKA==", "license": "MIT", "dependencies": { "@babel/core": "^7.28.4", "@babel/plugin-transform-react-jsx-self": "^7.27.1", "@babel/plugin-transform-react-jsx-source": "^7.27.1", - "@rolldown/pluginutils": "1.0.0-beta.35", + "@rolldown/pluginutils": "1.0.0-beta.38", "@types/babel__core": "^7.20.5", "react-refresh": "^0.17.0" }, @@ -4883,19 +4979,20 @@ } }, "node_modules/@zakodium/nmr-types": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@zakodium/nmr-types/-/nmr-types-0.1.1.tgz", - "integrity": "sha512-FU3RlFkKMJcIE+Pb94fl4nxFu3mwVF1IBAqlQ7khbiIOh/paLVnL+cLn4WfycL/0IvVMhkaMeLPtopx9CEFLPA==", + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@zakodium/nmr-types/-/nmr-types-0.2.1.tgz", + "integrity": "sha512-y7HRcJ4VpR0kFZ/r4bckm6uGJRTk/X4CAA3Gqj7FdyaulQ7JqiIl+Bi1hfCpjJFyHvFImXHKxAMYfuXxDYBWjg==", "license": "CC-BY-NC-SA-4.0", "dependencies": { "ml-peak-shape-generator": "^4.2.0", - "ml-signal-processing": "^2.0.0" + "ml-signal-processing": "^2.1.0", + "ml-spectra-processing": "^14.17.1" } }, "node_modules/@zakodium/nmrium-core": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/@zakodium/nmrium-core/-/nmrium-core-0.1.7.tgz", - "integrity": "sha512-aKSXINlAcNyXjo2gs1/ePgfB6SbW2SRYle8/zjg0My8nvsZozbsjW+VtM/QXGEfYthgyw3HcsIr489AhUyEH9A==", + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@zakodium/nmrium-core/-/nmrium-core-0.2.3.tgz", + "integrity": "sha512-dnPfe60iZDeeOTyuFRlGYtLtq+BJpxYj8ZVjk8G5ytXxguZhv+E1hqa9ReJDK0rj43lBVUtw+7ntVc7Xyn101Q==", "license": "CC-BY-NC-SA-4.0", "dependencies": { "cheminfo-types": "^1.8.1", @@ -4908,29 +5005,40 @@ } }, "node_modules/@zakodium/nmrium-core-plugins": { - "version": "0.1.10", - "resolved": "https://registry.npmjs.org/@zakodium/nmrium-core-plugins/-/nmrium-core-plugins-0.1.10.tgz", - "integrity": "sha512-f6y6n2bCoN4pUTAbaKl9NNZO1vd86ZFzyeZ8eSAYpyp4z29Pu4r8qBsgKSrJwW7VY916bCZmk++pw25cXyGSuQ==", + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/@zakodium/nmrium-core-plugins/-/nmrium-core-plugins-0.3.6.tgz", + "integrity": "sha512-06ZQRamulnr9vPo1Sp1PW/uHSFpm14C/ml4lRAcq/lzHsU2Q9bXb+21PtfeHnl4ZlRK+hMaSUW4blC4dqiRVKg==", "license": "CC-BY-NC-SA-4.0", "dependencies": { "@date-fns/utc": "^2.1.1", - "@zakodium/nmrium-core": "^0.1.7", + "@zakodium/nmrium-core": "^0.2.3", "cheminfo-types": "^1.8.1", "convert-to-jcamp": "^6.0.0", "date-fns": "^4.1.0", "file-collection": "^5.1.1", "gyromagnetic-ratio": "^2.0.0", "is-any-array": "^2.0.1", - "jcampconverter": "^11.0.5", + "jcampconverter": "^11.2.1", "linear-sum-assignment": "^1.0.7", "lodash.merge": "^4.6.2", "ml-spectra-processing": "^14.17.1", - "nmr-processing": "^19.1.0", - "openchemlib": "^9.7.0", - "openchemlib-utils": "^8.3.1", + "nmr-processing": "^19.4.1", + "openchemlib": "^9.10.0", + "openchemlib-utils": "^8.6.0", "sdf-parser": "^7.0.4" } }, + "node_modules/@zakodium/pdnd-esm": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@zakodium/pdnd-esm/-/pdnd-esm-1.0.2.tgz", + "integrity": "sha512-eyamAVS2KNGx89hyZEWkGb35Xir89WQP4AvoDEDZmMlY6EdvHTZc5XwNcJmBPXquZ9cy6Bw0t/PdOxsvM/tYhA==", + "license": "MIT", + "dependencies": { + "@atlaskit/pragmatic-drag-and-drop": "^1.7.7", + "@atlaskit/pragmatic-drag-and-drop-auto-scroll": "^2.1.2", + "@atlaskit/pragmatic-drag-and-drop-hitbox": "^1.1.0" + } + }, "node_modules/@zeit/schemas": { "version": "2.36.0", "resolved": "https://registry.npmjs.org/@zeit/schemas/-/schemas-2.36.0.tgz", @@ -4939,14 +5047,14 @@ "license": "MIT" }, "node_modules/@zip.js/zip.js": { - "version": "2.7.72", - "resolved": "https://registry.npmjs.org/@zip.js/zip.js/-/zip.js-2.7.72.tgz", - "integrity": "sha512-3/A4JwrgkvGBlCxtItjxs8HrNbuTAAl/zlGkV6tC5Fb5k5nk4x2Dqxwl/YnUys5Ch+QB01eJ8Q5K/J2uXfy9Vw==", + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/@zip.js/zip.js/-/zip.js-2.8.8.tgz", + "integrity": "sha512-v0KutehhSAuaoFAFGLp+V4+UiZ1mIxQ8vNOYMD7k9ZJaBbtQV49MYlg568oRLiuwWDg2Di58Iw3Q0ESNWR+5JA==", "license": "BSD-3-Clause", "engines": { "bun": ">=0.7.0", "deno": ">=1.0.0", - "node": ">=16.5.0" + "node": ">=18.0.0" } }, "node_modules/acorn": { @@ -5367,16 +5475,16 @@ } }, "node_modules/babel-jest": { - "version": "30.1.2", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-30.1.2.tgz", - "integrity": "sha512-IQCus1rt9kaSh7PQxLYRY5NmkNrNlU2TpabzwV7T2jljnpdHOcmnYYv8QmE04Li4S3a2Lj8/yXyET5pBarPr6g==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-30.2.0.tgz", + "integrity": "sha512-0YiBEOxWqKkSQWL9nNGGEgndoeL0ZpWrbLMNL5u/Kaxrli3Eaxlt3ZtIDktEvXt4L/R9r3ODr2zKwGM/2BjxVw==", "dev": true, "license": "MIT", "dependencies": { - "@jest/transform": "30.1.2", + "@jest/transform": "30.2.0", "@types/babel__core": "^7.20.5", - "babel-plugin-istanbul": "^7.0.0", - "babel-preset-jest": "30.0.1", + "babel-plugin-istanbul": "^7.0.1", + "babel-preset-jest": "30.2.0", "chalk": "^4.1.2", "graceful-fs": "^4.2.11", "slash": "^3.0.0" @@ -5385,15 +5493,18 @@ "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" }, "peerDependencies": { - "@babel/core": "^7.11.0" + "@babel/core": "^7.11.0 || ^8.0.0-0" } }, "node_modules/babel-plugin-istanbul": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-7.0.0.tgz", - "integrity": "sha512-C5OzENSx/A+gt7t4VH1I2XsflxyPUmXRFPKBxt33xncdOmq7oROVM3bZv9Ysjjkv8OJYDMa+tKuKMvqU/H3xdw==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-7.0.1.tgz", + "integrity": "sha512-D8Z6Qm8jCvVXtIRkBnqNHX0zJ37rQcFJ9u8WOS6tkYOsRdHBzypCstaxWiu5ZIlqQtviRYbgnRLSoCEvjqcqbA==", "dev": true, "license": "BSD-3-Clause", + "workspaces": [ + "test/babel-8" + ], "dependencies": { "@babel/helper-plugin-utils": "^7.0.0", "@istanbuljs/load-nyc-config": "^1.0.0", @@ -5406,14 +5517,12 @@ } }, "node_modules/babel-plugin-jest-hoist": { - "version": "30.0.1", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-30.0.1.tgz", - "integrity": "sha512-zTPME3pI50NsFW8ZBaVIOeAxzEY7XHlmWeXXu9srI+9kNfzCUTy8MFan46xOGZY8NZThMqq+e3qZUKsvXbasnQ==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-30.2.0.tgz", + "integrity": "sha512-ftzhzSGMUnOzcCXd6WHdBGMyuwy15Wnn0iyyWGKgBDLxf9/s5ABuraCSpBX2uG0jUg4rqJnxsLc5+oYBqoxVaA==", "dev": true, "license": "MIT", "dependencies": { - "@babel/template": "^7.27.2", - "@babel/types": "^7.27.3", "@types/babel__core": "^7.20.5" }, "engines": { @@ -5505,20 +5614,20 @@ } }, "node_modules/babel-preset-jest": { - "version": "30.0.1", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-30.0.1.tgz", - "integrity": "sha512-+YHejD5iTWI46cZmcc/YtX4gaKBtdqCHCVfuVinizVpbmyjO3zYmeuyFdfA8duRqQZfgCAMlsfmkVbJ+e2MAJw==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-30.2.0.tgz", + "integrity": "sha512-US4Z3NOieAQumwFnYdUWKvUKh8+YSnS/gB3t6YBiz0bskpu7Pine8pPCheNxlPEW4wnUkma2a94YuW2q3guvCQ==", "dev": true, "license": "MIT", "dependencies": { - "babel-plugin-jest-hoist": "30.0.1", - "babel-preset-current-node-syntax": "^1.1.0" + "babel-plugin-jest-hoist": "30.2.0", + "babel-preset-current-node-syntax": "^1.2.0" }, "engines": { "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" }, "peerDependencies": { - "@babel/core": "^7.11.0" + "@babel/core": "^7.11.0 || ^8.0.0-beta.1" } }, "node_modules/balanced-match": { @@ -6106,9 +6215,9 @@ } }, "node_modules/collect-v8-coverage": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz", - "integrity": "sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.3.tgz", + "integrity": "sha512-1L5aqIkwPfiodaMgQunkF1zRhNqifHBmtbbbxcr6yVxxBnliw4TDOW6NxpO8DJLgJ16OT+Y4ztZqP6p/FtXnAw==", "dev": true, "license": "MIT" }, @@ -6132,15 +6241,6 @@ "dev": true, "license": "MIT" }, - "node_modules/commander": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", - "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", - "license": "MIT", - "engines": { - "node": ">= 10" - } - }, "node_modules/comment-parser": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.4.1.tgz", @@ -6345,9 +6445,9 @@ } }, "node_modules/cross-env": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-10.0.0.tgz", - "integrity": "sha512-aU8qlEK/nHYtVuN4p7UQgAwVljzMg8hB4YK5ThRqD2l/ziSnryncPNn7bMLt5cFYsKVKBh8HqLqyCoTupEUu7Q==", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-10.1.0.tgz", + "integrity": "sha512-GsYosgnACZTADcmEyJctkJIoqAhHjttw7RsFrVoJNXbsWWqaq6Ym+7kZjq6mS45O0jij6vtiReppKQEtqWy6Dw==", "dev": true, "license": "MIT", "dependencies": { @@ -6399,47 +6499,6 @@ "integrity": "sha512-ehXCHYXZhZzDZmVQE/P9wQ7XPOn1G3e+pVqcqXvYykBL8Lg7HFm2ewD3TZseOMWiM9bNU0u4UWSV/dAzf+unug==", "license": "MIT" }, - "node_modules/d3": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/d3/-/d3-7.9.0.tgz", - "integrity": "sha512-e1U46jVP+w7Iut8Jt8ri1YsPOvFpg46k+K8TpCb0P+zjCkjkPnV7WzfDJzMHy1LnA+wj5pLT1wjO901gLXeEhA==", - "license": "ISC", - "dependencies": { - "d3-array": "3", - "d3-axis": "3", - "d3-brush": "3", - "d3-chord": "3", - "d3-color": "3", - "d3-contour": "4", - "d3-delaunay": "6", - "d3-dispatch": "3", - "d3-drag": "3", - "d3-dsv": "3", - "d3-ease": "3", - "d3-fetch": "3", - "d3-force": "3", - "d3-format": "3", - "d3-geo": "3", - "d3-hierarchy": "3", - "d3-interpolate": "3", - "d3-path": "3", - "d3-polygon": "3", - "d3-quadtree": "3", - "d3-random": "3", - "d3-scale": "4", - "d3-scale-chromatic": "3", - "d3-selection": "3", - "d3-shape": "3", - "d3-time": "3", - "d3-time-format": "4", - "d3-timer": "3", - "d3-transition": "3", - "d3-zoom": "3" - }, - "engines": { - "node": ">=12" - } - }, "node_modules/d3-array": { "version": "3.2.4", "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-3.2.4.tgz", @@ -6452,43 +6511,6 @@ "node": ">=12" } }, - "node_modules/d3-axis": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/d3-axis/-/d3-axis-3.0.0.tgz", - "integrity": "sha512-IH5tgjV4jE/GhHkRV0HiVYPDtvfjHQlQfJHs0usq7M30XcSBvOotpmH1IgkcXsO/5gEQZD43B//fc7SRT5S+xw==", - "license": "ISC", - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-brush": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/d3-brush/-/d3-brush-3.0.0.tgz", - "integrity": "sha512-ALnjWlVYkXsVIGlOsuWH1+3udkYFI48Ljihfnh8FZPF2QS9o+PzGLBslO0PjzVoHLZ2KCVgAM8NVkXPJB2aNnQ==", - "license": "ISC", - "dependencies": { - "d3-dispatch": "1 - 3", - "d3-drag": "2 - 3", - "d3-interpolate": "1 - 3", - "d3-selection": "3", - "d3-transition": "3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-chord": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-chord/-/d3-chord-3.0.1.tgz", - "integrity": "sha512-VE5S6TNa+j8msksl7HwjxMHDM2yNK3XCkusIlpX5kwauBfXuyLAtNg9jCp/iHH61tgI4sb6R/EIMWCqEIdjT/g==", - "license": "ISC", - "dependencies": { - "d3-path": "1 - 3" - }, - "engines": { - "node": ">=12" - } - }, "node_modules/d3-color": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-3.1.0.tgz", @@ -6498,30 +6520,6 @@ "node": ">=12" } }, - "node_modules/d3-contour": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/d3-contour/-/d3-contour-4.0.2.tgz", - "integrity": "sha512-4EzFTRIikzs47RGmdxbeUvLWtGedDUNkTcmzoeyg4sP/dvCexO47AaQL7VKy/gul85TOxw+IBgA8US2xwbToNA==", - "license": "ISC", - "dependencies": { - "d3-array": "^3.2.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-delaunay": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/d3-delaunay/-/d3-delaunay-6.0.4.tgz", - "integrity": "sha512-mdjtIZ1XLAM8bm/hx3WwjfHt6Sggek7qH043O8KEjDXN40xi3vx/6pYSVTwLjEgiXQTbvaouWKynLBiUZ6SK6A==", - "license": "ISC", - "dependencies": { - "delaunator": "5" - }, - "engines": { - "node": ">=12" - } - }, "node_modules/d3-dispatch": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/d3-dispatch/-/d3-dispatch-3.0.1.tgz", @@ -6544,31 +6542,6 @@ "node": ">=12" } }, - "node_modules/d3-dsv": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-dsv/-/d3-dsv-3.0.1.tgz", - "integrity": "sha512-UG6OvdI5afDIFP9w4G0mNq50dSOsXHJaRE8arAS5o9ApWnIElp8GZw1Dun8vP8OyHOZ/QJUKUJwxiiCCnUwm+Q==", - "license": "ISC", - "dependencies": { - "commander": "7", - "iconv-lite": "0.6", - "rw": "1" - }, - "bin": { - "csv2json": "bin/dsv2json.js", - "csv2tsv": "bin/dsv2dsv.js", - "dsv2dsv": "bin/dsv2dsv.js", - "dsv2json": "bin/dsv2json.js", - "json2csv": "bin/json2dsv.js", - "json2dsv": "bin/json2dsv.js", - "json2tsv": "bin/json2dsv.js", - "tsv2csv": "bin/dsv2dsv.js", - "tsv2json": "bin/dsv2json.js" - }, - "engines": { - "node": ">=12" - } - }, "node_modules/d3-ease": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/d3-ease/-/d3-ease-3.0.1.tgz", @@ -6578,32 +6551,6 @@ "node": ">=12" } }, - "node_modules/d3-fetch": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-fetch/-/d3-fetch-3.0.1.tgz", - "integrity": "sha512-kpkQIM20n3oLVBKGg6oHrUchHM3xODkTzjMoj7aWQFq5QEM+R6E4WkzT5+tojDY7yjez8KgCBRoj4aEr99Fdqw==", - "license": "ISC", - "dependencies": { - "d3-dsv": "1 - 3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-force": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/d3-force/-/d3-force-3.0.0.tgz", - "integrity": "sha512-zxV/SsA+U4yte8051P4ECydjD/S+qeYtnaIyAs9tgHCqfguma/aAQDjo85A9Z6EKhBirHRJHXIgJUlffT4wdLg==", - "license": "ISC", - "dependencies": { - "d3-dispatch": "1 - 3", - "d3-quadtree": "1 - 3", - "d3-timer": "1 - 3" - }, - "engines": { - "node": ">=12" - } - }, "node_modules/d3-format": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/d3-format/-/d3-format-3.1.0.tgz", @@ -6613,27 +6560,6 @@ "node": ">=12" } }, - "node_modules/d3-geo": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/d3-geo/-/d3-geo-3.1.1.tgz", - "integrity": "sha512-637ln3gXKXOwhalDzinUgY83KzNWZRKbYubaG+fGVuc/dxO64RRljtCTnf5ecMyE1RIdtqpkVcq0IbtU2S8j2Q==", - "license": "ISC", - "dependencies": { - "d3-array": "2.5.0 - 3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-hierarchy": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/d3-hierarchy/-/d3-hierarchy-3.1.2.tgz", - "integrity": "sha512-FX/9frcub54beBdugHjDCdikxThEqjnR93Qt7PvQTOHxyiNCAlvMrHhclk3cD5VeAaq9fxmfRp+CnWw9rEMBuA==", - "license": "ISC", - "engines": { - "node": ">=12" - } - }, "node_modules/d3-interpolate": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-3.0.1.tgz", @@ -6655,33 +6581,6 @@ "node": ">=12" } }, - "node_modules/d3-polygon": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-polygon/-/d3-polygon-3.0.1.tgz", - "integrity": "sha512-3vbA7vXYwfe1SYhED++fPUQlWSYTTGmFmQiany/gdbiWgU/iEyQzyymwL9SkJjFFuCS4902BSzewVGsHHmHtXg==", - "license": "ISC", - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-quadtree": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-quadtree/-/d3-quadtree-3.0.1.tgz", - "integrity": "sha512-04xDrxQTDTCFwP5H6hRhsRcb9xxv2RzkcsygFzmkSIOJy3PeRJP7sNk3VRIbKXcog561P9oU0/rVH6vDROAgUw==", - "license": "ISC", - "engines": { - "node": ">=12" - } - }, - "node_modules/d3-random": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/d3-random/-/d3-random-3.0.1.tgz", - "integrity": "sha512-FXMe9GfxTxqd5D6jFsQ+DJ8BJS4E/fT5mqqdjovykEB2oFbTMDVdg1MGFxfQW+FBOGoB++k8swBrgwSHT1cUXQ==", - "license": "ISC", - "engines": { - "node": ">=12" - } - }, "node_modules/d3-scale": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/d3-scale/-/d3-scale-4.0.2.tgz", @@ -6881,6 +6780,12 @@ } } }, + "node_modules/decode-formdata": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/decode-formdata/-/decode-formdata-0.9.0.tgz", + "integrity": "sha512-q5uwOjR3Um5YD+ZWPOF/1sGHVW9A5rCrRwITQChRXlmPkxDFBqCm4jNTIVdGHNH9OnR+V9MoZVgRhsFb+ARbUw==", + "license": "MIT" + }, "node_modules/dedent": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.7.0.tgz", @@ -6959,15 +6864,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/delaunator": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/delaunator/-/delaunator-5.0.1.tgz", - "integrity": "sha512-8nvh+XBe96aCESrGOqMp/84b13H9cdKbG5P2ejQCh4d4sK9RL4371qou9drQjMhvnPmhWl5hnmqbEE0fXr9Xnw==", - "license": "ISC", - "dependencies": { - "robust-predicates": "^3.0.2" - } - }, "node_modules/detect-newline": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", @@ -6978,6 +6874,12 @@ "node": ">=8" } }, + "node_modules/devalue": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/devalue/-/devalue-5.4.1.tgz", + "integrity": "sha512-YtoaOfsqjbZQKGIMRYDWKjUmSB4VJ/RElB+bXZawQAQYAo4xu08GKTMVlsZDTF6R2MbAgjcAQRPI5eIyRAT2OQ==", + "license": "MIT" + }, "node_modules/dlv": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", @@ -7345,25 +7247,24 @@ } }, "node_modules/eslint": { - "version": "9.35.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.35.0.tgz", - "integrity": "sha512-QePbBFMJFjgmlE+cXAlbHZbHpdFVS2E/6vzCy7aKlebddvl1vadiC4JFV5u/wqTkNUwEV8WrQi257jf5f06hrg==", + "version": "9.38.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.38.0.tgz", + "integrity": "sha512-t5aPOpmtJcZcz5UJyY2GbvpDlsK5E8JqRqoKtfiKE3cNh437KIqfJr3A3AKf5k64NPx6d0G3dno6XDY05PqPtw==", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.8.0", "@eslint-community/regexpp": "^4.12.1", - "@eslint/config-array": "^0.21.0", - "@eslint/config-helpers": "^0.3.1", - "@eslint/core": "^0.15.2", + "@eslint/config-array": "^0.21.1", + "@eslint/config-helpers": "^0.4.1", + "@eslint/core": "^0.16.0", "@eslint/eslintrc": "^3.3.1", - "@eslint/js": "9.35.0", - "@eslint/plugin-kit": "^0.3.5", + "@eslint/js": "9.38.0", + "@eslint/plugin-kit": "^0.4.0", "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", "@humanwhocodes/retry": "^0.4.2", "@types/estree": "^1.0.6", - "@types/json-schema": "^7.0.15", "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.6", @@ -7423,17 +7324,17 @@ } }, "node_modules/eslint-config-cheminfo-react": { - "version": "18.0.0", - "resolved": "https://registry.npmjs.org/eslint-config-cheminfo-react/-/eslint-config-cheminfo-react-18.0.0.tgz", - "integrity": "sha512-zlkJbzDuBXGbp9H0JLxNSXqP8bO5+fr1a+YwCQFtoRQ6vSP9B7yDLqq3Fi+TBjmgIgKuZBeT56JHC+IYsw7EXw==", + "version": "18.0.1", + "resolved": "https://registry.npmjs.org/eslint-config-cheminfo-react/-/eslint-config-cheminfo-react-18.0.1.tgz", + "integrity": "sha512-6I0/GhQuuSEIPl5LaXmp6uvOU4XBY2vZzQWfkfUh2Kqs5tZcn04ORdQBF7ZHrFCRtYeKlNO0y+KmGYljYkRQEQ==", "dev": true, "license": "MIT", "dependencies": { "eslint-config-cheminfo": "^16.0.0", "eslint-plugin-react": "^7.37.5", - "eslint-plugin-react-hooks": "^6.0.0-rc.2", - "eslint-plugin-react-refresh": "^0.4.20", - "eslint-plugin-react-you-might-not-need-an-effect": "^0.5.0", + "eslint-plugin-react-hooks": "^6.1.1", + "eslint-plugin-react-refresh": "^0.4.23", + "eslint-plugin-react-you-might-not-need-an-effect": "^0.5.6", "globals": "^16.4.0" }, "peerDependencies": { @@ -7648,18 +7549,16 @@ } }, "node_modules/eslint-plugin-react-hooks": { - "version": "6.0.0-rc1", - "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-6.0.0-rc1.tgz", - "integrity": "sha512-I4ntWyjqgGemGtOU85FUdVo00h0i0Y5xvQ7a8EVxyzjOZsxXaxvkKBcYoXbP97QDvDjMzY/nGIvfdB/WRLTGxQ==", + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-6.1.1.tgz", + "integrity": "sha512-St9EKZzOAQF704nt2oJvAKZHjhrpg25ClQoaAlHmPZuajFldVLqRDW4VBNAS01NzeiQF0m0qhG1ZA807K6aVaQ==", "dev": true, "license": "MIT", "dependencies": { "@babel/core": "^7.24.4", "@babel/parser": "^7.24.4", - "@babel/plugin-transform-private-methods": "^7.24.4", - "hermes-parser": "^0.25.1", - "zod": "^3.22.4", - "zod-validation-error": "^3.0.3" + "zod": "^3.22.4 || ^4.0.0", + "zod-validation-error": "^3.0.3 || ^4.0.0" }, "engines": { "node": ">=18" @@ -7669,9 +7568,9 @@ } }, "node_modules/eslint-plugin-react-refresh": { - "version": "0.4.20", - "resolved": "https://registry.npmjs.org/eslint-plugin-react-refresh/-/eslint-plugin-react-refresh-0.4.20.tgz", - "integrity": "sha512-XpbHQ2q5gUF8BGOX4dHe+71qoirYMhApEPZ7sfhF/dNnOF1UXnCMGZf79SFTBO7Bz5YEIT4TMieSlJBWhP9WBA==", + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-refresh/-/eslint-plugin-react-refresh-0.4.24.tgz", + "integrity": "sha512-nLHIW7TEq3aLrEYWpVaJ1dRgFR+wLDPN8e8FpYAql/bMV2oBEfC37K0gLEGgv9fy66juNShSMV8OkTqzltcG/w==", "dev": true, "license": "MIT", "peerDependencies": { @@ -7679,9 +7578,9 @@ } }, "node_modules/eslint-plugin-react-you-might-not-need-an-effect": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-react-you-might-not-need-an-effect/-/eslint-plugin-react-you-might-not-need-an-effect-0.5.0.tgz", - "integrity": "sha512-n3tY9eAhZ1Exf7dI39Cbsl6PsI/c/PZwKmwZ1OePChiqg2HxoTx7viGrSZfWv7Qk0J4ZGUcC/PYAYh/CDqCnkA==", + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-you-might-not-need-an-effect/-/eslint-plugin-react-you-might-not-need-an-effect-0.5.6.tgz", + "integrity": "sha512-WZe5XlnsqempwyyLOrVMJWnA9yHC6TxibCwQyz4o9NfGKOh9svoydld10sFfaLVIOi+yO8G7BfYuOmZ6DCRuTw==", "dev": true, "license": "MIT", "dependencies": { @@ -7854,6 +7753,33 @@ "url": "https://opencollective.com/eslint" } }, + "node_modules/eslint/node_modules/@eslint/core": { + "version": "0.16.0", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.16.0.tgz", + "integrity": "sha512-nmC8/totwobIiFcGkDza3GIKfAw1+hLiYVrh3I1nIomQ8PEr5cxg34jnkmGawul/ep52wGRAcyeDCNtWKSOj4Q==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@types/json-schema": "^7.0.15" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/eslint/node_modules/@eslint/plugin-kit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.4.0.tgz", + "integrity": "sha512-sB5uyeq+dwCWyPi31B2gQlVlo+j5brPlWx4yZBrEaRo/nhdDE8Xke1gsGgtiBdaBTxuTkceLVuVt/pclrasb0A==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/core": "^0.16.0", + "levn": "^0.4.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, "node_modules/espree": { "version": "10.4.0", "resolved": "https://registry.npmjs.org/espree/-/espree-10.4.0.tgz", @@ -7987,18 +7913,18 @@ } }, "node_modules/expect": { - "version": "30.1.2", - "resolved": "https://registry.npmjs.org/expect/-/expect-30.1.2.tgz", - "integrity": "sha512-xvHszRavo28ejws8FpemjhwswGj4w/BetHIL8cU49u4sGyXDw2+p3YbeDbj6xzlxi6kWTjIRSTJ+9sNXPnF0Zg==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/expect/-/expect-30.2.0.tgz", + "integrity": "sha512-u/feCi0GPsI+988gU2FLcsHyAHTU0MX1Wg68NhAnN7z/+C5wqG+CY8J53N9ioe8RXgaoz0nBR/TYMf3AycUuPw==", "dev": true, "license": "MIT", "dependencies": { - "@jest/expect-utils": "30.1.2", + "@jest/expect-utils": "30.2.0", "@jest/get-type": "30.1.0", - "jest-matcher-utils": "30.1.2", - "jest-message-util": "30.1.0", - "jest-mock": "30.0.5", - "jest-util": "30.0.5" + "jest-matcher-utils": "30.2.0", + "jest-message-util": "30.2.0", + "jest-mock": "30.2.0", + "jest-util": "30.2.0" }, "engines": { "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" @@ -8108,12 +8034,12 @@ } }, "node_modules/file-collection": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/file-collection/-/file-collection-5.1.1.tgz", - "integrity": "sha512-zaMg3tvTVZWLQk6TtNcV/iwxm+kJ7HbPGdqWaUzKNXYUH2iPLe3TaGzJDhlCmOg84j7tetf9Bc7i4BQsaEONYA==", + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/file-collection/-/file-collection-5.2.2.tgz", + "integrity": "sha512-7S4PhN80cX92iSQJpxx/WDYtBlMcN4x+zj5yixP7A5FjoJYihbP+Lj1bcPN1jTqoMITja0L49YxTJTCMka/S6A==", "license": "MIT", "dependencies": { - "@zip.js/zip.js": "^2.7.72", + "@zip.js/zip.js": "^2.8.8", "cheminfo-types": "^1.8.1" } }, @@ -8729,23 +8655,6 @@ "integrity": "sha512-2bsegYkkHO+h/9MGbn6KWcE45cHZgPANo5LXF7EvWdT0yT2EguSVO1nDgU5c8+ZOPwp2vMNa7YFsJhVcDR9Sdg==", "license": "MIT" }, - "node_modules/hermes-estree": { - "version": "0.25.1", - "resolved": "https://registry.npmjs.org/hermes-estree/-/hermes-estree-0.25.1.tgz", - "integrity": "sha512-0wUoCcLp+5Ev5pDW2OriHC2MJCbwLwuRx+gAqMTOkGKJJiBCLjtrvy4PWUGn6MIVefecRpzoOZ/UV6iGdOr+Cw==", - "dev": true, - "license": "MIT" - }, - "node_modules/hermes-parser": { - "version": "0.25.1", - "resolved": "https://registry.npmjs.org/hermes-parser/-/hermes-parser-0.25.1.tgz", - "integrity": "sha512-6pEjquH3rqaI6cYAXYPcz9MS4rY6R4ngRgrgfDshRptUZIc3lw0MCIJIGDj9++mfySOuPTHB4nrSW99BCvOPIA==", - "dev": true, - "license": "MIT", - "dependencies": { - "hermes-estree": "0.25.1" - } - }, "node_modules/hoist-non-react-statics": { "version": "3.3.2", "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", @@ -8772,18 +8681,6 @@ "node": ">=10.17.0" } }, - "node_modules/iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "license": "MIT", - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/idb": { "version": "7.1.1", "resolved": "https://registry.npmjs.org/idb/-/idb-7.1.1.tgz", @@ -8808,9 +8705,9 @@ "license": "MIT" }, "node_modules/immer": { - "version": "10.1.1", - "resolved": "https://registry.npmjs.org/immer/-/immer-10.1.1.tgz", - "integrity": "sha512-s2MPrmjovJcoMaHtx6K11Ra7oD05NT97w1IC5zpMkT6Atjr7H8LjaDd81iIxUYpMKSRRNMJE703M1Fhr/TctHw==", + "version": "10.1.3", + "resolved": "https://registry.npmjs.org/immer/-/immer-10.1.3.tgz", + "integrity": "sha512-tmjF/k8QDKydUlm3mZU+tjM6zeq9/fFpPqH9SzWmBnVVKsPBg/V66qsMwb3/Bo90cgUN+ghdVBess+hPsxUyRw==", "license": "MIT", "funding": { "type": "opencollective", @@ -9495,9 +9392,9 @@ } }, "node_modules/istanbul-lib-instrument/node_modules/semver": { - "version": "7.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", - "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", + "version": "7.7.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", "dev": true, "license": "ISC", "bin": { @@ -9614,9 +9511,9 @@ } }, "node_modules/jcampconverter": { - "version": "11.0.5", - "resolved": "https://registry.npmjs.org/jcampconverter/-/jcampconverter-11.0.5.tgz", - "integrity": "sha512-/FOcPmKqe7Mac7JYsYZv5vdFKNbg3NxXL9Mi2v9mYf2Tr8l57nKsdkJQjFToNZP827g7IOKmgXBTlOGnaHmmNg==", + "version": "11.2.1", + "resolved": "https://registry.npmjs.org/jcampconverter/-/jcampconverter-11.2.1.tgz", + "integrity": "sha512-EMsCJH+SKt17IELtK1zg7tI4LnVMLUjE+8iCSstQqG7e6BqexNM/6AuCe2OsfamZruDvVAkswjXTEP6no9bsng==", "license": "CC-BY-NC-SA-4.0", "dependencies": { "cheminfo-types": "^1.8.1", @@ -9624,20 +9521,20 @@ "ensure-string": "^1.2.0", "gyromagnetic-ratio": "^2.0.0", "ml-array-median": "^1.1.6", - "openchemlib": "^9.6.0" + "openchemlib": "^9.10.0" } }, "node_modules/jest": { - "version": "30.1.3", - "resolved": "https://registry.npmjs.org/jest/-/jest-30.1.3.tgz", - "integrity": "sha512-Ry+p2+NLk6u8Agh5yVqELfUJvRfV51hhVBRIB5yZPY7mU0DGBmOuFG5GebZbMbm86cdQNK0fhJuDX8/1YorISQ==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest/-/jest-30.2.0.tgz", + "integrity": "sha512-F26gjC0yWN8uAA5m5Ss8ZQf5nDHWGlN/xWZIh8S5SRbsEKBovwZhxGd6LJlbZYxBgCYOtreSUyb8hpXyGC5O4A==", "dev": true, "license": "MIT", "dependencies": { - "@jest/core": "30.1.3", - "@jest/types": "30.0.5", + "@jest/core": "30.2.0", + "@jest/types": "30.2.0", "import-local": "^3.2.0", - "jest-cli": "30.1.3" + "jest-cli": "30.2.0" }, "bin": { "jest": "bin/jest.js" @@ -9655,14 +9552,14 @@ } }, "node_modules/jest-changed-files": { - "version": "30.0.5", - "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-30.0.5.tgz", - "integrity": "sha512-bGl2Ntdx0eAwXuGpdLdVYVr5YQHnSZlQ0y9HVDu565lCUAe9sj6JOtBbMmBBikGIegne9piDDIOeiLVoqTkz4A==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-30.2.0.tgz", + "integrity": "sha512-L8lR1ChrRnSdfeOvTrwZMlnWV8G/LLjQ0nG9MBclwWZidA2N5FviRki0Bvh20WRMOX31/JYvzdqTJrk5oBdydQ==", "dev": true, "license": "MIT", "dependencies": { "execa": "^5.1.1", - "jest-util": "30.0.5", + "jest-util": "30.2.0", "p-limit": "^3.1.0" }, "engines": { @@ -9670,29 +9567,29 @@ } }, "node_modules/jest-circus": { - "version": "30.1.3", - "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-30.1.3.tgz", - "integrity": "sha512-Yf3dnhRON2GJT4RYzM89t/EXIWNxKTpWTL9BfF3+geFetWP4XSvJjiU1vrWplOiUkmq8cHLiwuhz+XuUp9DscA==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-30.2.0.tgz", + "integrity": "sha512-Fh0096NC3ZkFx05EP2OXCxJAREVxj1BcW/i6EWqqymcgYKWjyyDpral3fMxVcHXg6oZM7iULer9wGRFvfpl+Tg==", "dev": true, "license": "MIT", "dependencies": { - "@jest/environment": "30.1.2", - "@jest/expect": "30.1.2", - "@jest/test-result": "30.1.3", - "@jest/types": "30.0.5", + "@jest/environment": "30.2.0", + "@jest/expect": "30.2.0", + "@jest/test-result": "30.2.0", + "@jest/types": "30.2.0", "@types/node": "*", "chalk": "^4.1.2", "co": "^4.6.0", "dedent": "^1.6.0", "is-generator-fn": "^2.1.0", - "jest-each": "30.1.0", - "jest-matcher-utils": "30.1.2", - "jest-message-util": "30.1.0", - "jest-runtime": "30.1.3", - "jest-snapshot": "30.1.2", - "jest-util": "30.0.5", + "jest-each": "30.2.0", + "jest-matcher-utils": "30.2.0", + "jest-message-util": "30.2.0", + "jest-runtime": "30.2.0", + "jest-snapshot": "30.2.0", + "jest-util": "30.2.0", "p-limit": "^3.1.0", - "pretty-format": "30.0.5", + "pretty-format": "30.2.0", "pure-rand": "^7.0.0", "slash": "^3.0.0", "stack-utils": "^2.0.6" @@ -9702,21 +9599,21 @@ } }, "node_modules/jest-cli": { - "version": "30.1.3", - "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-30.1.3.tgz", - "integrity": "sha512-G8E2Ol3OKch1DEeIBl41NP7OiC6LBhfg25Btv+idcusmoUSpqUkbrneMqbW9lVpI/rCKb/uETidb7DNteheuAQ==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-30.2.0.tgz", + "integrity": "sha512-Os9ukIvADX/A9sLt6Zse3+nmHtHaE6hqOsjQtNiugFTbKRHYIYtZXNGNK9NChseXy7djFPjndX1tL0sCTlfpAA==", "dev": true, "license": "MIT", "dependencies": { - "@jest/core": "30.1.3", - "@jest/test-result": "30.1.3", - "@jest/types": "30.0.5", + "@jest/core": "30.2.0", + "@jest/test-result": "30.2.0", + "@jest/types": "30.2.0", "chalk": "^4.1.2", "exit-x": "^0.2.2", "import-local": "^3.2.0", - "jest-config": "30.1.3", - "jest-util": "30.0.5", - "jest-validate": "30.1.0", + "jest-config": "30.2.0", + "jest-util": "30.2.0", + "jest-validate": "30.2.0", "yargs": "^17.7.2" }, "bin": { @@ -9735,34 +9632,34 @@ } }, "node_modules/jest-config": { - "version": "30.1.3", - "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-30.1.3.tgz", - "integrity": "sha512-M/f7gqdQEPgZNA181Myz+GXCe8jXcJsGjCMXUzRj22FIXsZOyHNte84e0exntOvdPaeh9tA0w+B8qlP2fAezfw==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-30.2.0.tgz", + "integrity": "sha512-g4WkyzFQVWHtu6uqGmQR4CQxz/CH3yDSlhzXMWzNjDx843gYjReZnMRanjRCq5XZFuQrGDxgUaiYWE8BRfVckA==", "dev": true, "license": "MIT", "dependencies": { "@babel/core": "^7.27.4", "@jest/get-type": "30.1.0", "@jest/pattern": "30.0.1", - "@jest/test-sequencer": "30.1.3", - "@jest/types": "30.0.5", - "babel-jest": "30.1.2", + "@jest/test-sequencer": "30.2.0", + "@jest/types": "30.2.0", + "babel-jest": "30.2.0", "chalk": "^4.1.2", "ci-info": "^4.2.0", "deepmerge": "^4.3.1", "glob": "^10.3.10", "graceful-fs": "^4.2.11", - "jest-circus": "30.1.3", - "jest-docblock": "30.0.1", - "jest-environment-node": "30.1.2", + "jest-circus": "30.2.0", + "jest-docblock": "30.2.0", + "jest-environment-node": "30.2.0", "jest-regex-util": "30.0.1", - "jest-resolve": "30.1.3", - "jest-runner": "30.1.3", - "jest-util": "30.0.5", - "jest-validate": "30.1.0", + "jest-resolve": "30.2.0", + "jest-runner": "30.2.0", + "jest-util": "30.2.0", + "jest-validate": "30.2.0", "micromatch": "^4.0.8", "parse-json": "^5.2.0", - "pretty-format": "30.0.5", + "pretty-format": "30.2.0", "slash": "^3.0.0", "strip-json-comments": "^3.1.1" }, @@ -9787,25 +9684,25 @@ } }, "node_modules/jest-diff": { - "version": "30.1.2", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-30.1.2.tgz", - "integrity": "sha512-4+prq+9J61mOVXCa4Qp8ZjavdxzrWQXrI80GNxP8f4tkI2syPuPrJgdRPZRrfUTRvIoUwcmNLbqEJy9W800+NQ==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-30.2.0.tgz", + "integrity": "sha512-dQHFo3Pt4/NLlG5z4PxZ/3yZTZ1C7s9hveiOj+GCN+uT109NC2QgsoVZsVOAvbJ3RgKkvyLGXZV9+piDpWbm6A==", "dev": true, "license": "MIT", "dependencies": { "@jest/diff-sequences": "30.0.1", "@jest/get-type": "30.1.0", "chalk": "^4.1.2", - "pretty-format": "30.0.5" + "pretty-format": "30.2.0" }, "engines": { "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, "node_modules/jest-docblock": { - "version": "30.0.1", - "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-30.0.1.tgz", - "integrity": "sha512-/vF78qn3DYphAaIc3jy4gA7XSAz167n9Bm/wn/1XhTLW7tTBIzXtCJpb/vcmc73NIIeeohCbdL94JasyXUZsGA==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-30.2.0.tgz", + "integrity": "sha512-tR/FFgZKS1CXluOQzZvNH3+0z9jXr3ldGSD8bhyuxvlVUwbeLOGynkunvlTMxchC5urrKndYiwCFC0DLVjpOCA==", "dev": true, "license": "MIT", "dependencies": { @@ -9816,56 +9713,56 @@ } }, "node_modules/jest-each": { - "version": "30.1.0", - "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-30.1.0.tgz", - "integrity": "sha512-A+9FKzxPluqogNahpCv04UJvcZ9B3HamqpDNWNKDjtxVRYB8xbZLFuCr8JAJFpNp83CA0anGQFlpQna9Me+/tQ==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-30.2.0.tgz", + "integrity": "sha512-lpWlJlM7bCUf1mfmuqTA8+j2lNURW9eNafOy99knBM01i5CQeY5UH1vZjgT9071nDJac1M4XsbyI44oNOdhlDQ==", "dev": true, "license": "MIT", "dependencies": { "@jest/get-type": "30.1.0", - "@jest/types": "30.0.5", + "@jest/types": "30.2.0", "chalk": "^4.1.2", - "jest-util": "30.0.5", - "pretty-format": "30.0.5" + "jest-util": "30.2.0", + "pretty-format": "30.2.0" }, "engines": { "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, "node_modules/jest-environment-node": { - "version": "30.1.2", - "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-30.1.2.tgz", - "integrity": "sha512-w8qBiXtqGWJ9xpJIA98M0EIoq079GOQRQUyse5qg1plShUCQ0Ek1VTTcczqKrn3f24TFAgFtT+4q3aOXvjbsuA==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-30.2.0.tgz", + "integrity": "sha512-ElU8v92QJ9UrYsKrxDIKCxu6PfNj4Hdcktcn0JX12zqNdqWHB0N+hwOnnBBXvjLd2vApZtuLUGs1QSY+MsXoNA==", "dev": true, "license": "MIT", "dependencies": { - "@jest/environment": "30.1.2", - "@jest/fake-timers": "30.1.2", - "@jest/types": "30.0.5", + "@jest/environment": "30.2.0", + "@jest/fake-timers": "30.2.0", + "@jest/types": "30.2.0", "@types/node": "*", - "jest-mock": "30.0.5", - "jest-util": "30.0.5", - "jest-validate": "30.1.0" + "jest-mock": "30.2.0", + "jest-util": "30.2.0", + "jest-validate": "30.2.0" }, "engines": { "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, "node_modules/jest-haste-map": { - "version": "30.1.0", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-30.1.0.tgz", - "integrity": "sha512-JLeM84kNjpRkggcGpQLsV7B8W4LNUWz7oDNVnY1Vjj22b5/fAb3kk3htiD+4Na8bmJmjJR7rBtS2Rmq/NEcADg==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-30.2.0.tgz", + "integrity": "sha512-sQA/jCb9kNt+neM0anSj6eZhLZUIhQgwDt7cPGjumgLM4rXsfb9kpnlacmvZz3Q5tb80nS+oG/if+NBKrHC+Xw==", "dev": true, "license": "MIT", "dependencies": { - "@jest/types": "30.0.5", + "@jest/types": "30.2.0", "@types/node": "*", "anymatch": "^3.1.3", "fb-watchman": "^2.0.2", "graceful-fs": "^4.2.11", "jest-regex-util": "30.0.1", - "jest-util": "30.0.5", - "jest-worker": "30.1.0", + "jest-util": "30.2.0", + "jest-worker": "30.2.0", "micromatch": "^4.0.8", "walker": "^1.0.8" }, @@ -9877,49 +9774,49 @@ } }, "node_modules/jest-leak-detector": { - "version": "30.1.0", - "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-30.1.0.tgz", - "integrity": "sha512-AoFvJzwxK+4KohH60vRuHaqXfWmeBATFZpzpmzNmYTtmRMiyGPVhkXpBqxUQunw+dQB48bDf4NpUs6ivVbRv1g==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-30.2.0.tgz", + "integrity": "sha512-M6jKAjyzjHG0SrQgwhgZGy9hFazcudwCNovY/9HPIicmNSBuockPSedAP9vlPK6ONFJ1zfyH/M2/YYJxOz5cdQ==", "dev": true, "license": "MIT", "dependencies": { "@jest/get-type": "30.1.0", - "pretty-format": "30.0.5" + "pretty-format": "30.2.0" }, "engines": { "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, "node_modules/jest-matcher-utils": { - "version": "30.1.2", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-30.1.2.tgz", - "integrity": "sha512-7ai16hy4rSbDjvPTuUhuV8nyPBd6EX34HkBsBcBX2lENCuAQ0qKCPb/+lt8OSWUa9WWmGYLy41PrEzkwRwoGZQ==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-30.2.0.tgz", + "integrity": "sha512-dQ94Nq4dbzmUWkQ0ANAWS9tBRfqCrn0bV9AMYdOi/MHW726xn7eQmMeRTpX2ViC00bpNaWXq+7o4lIQ3AX13Hg==", "dev": true, "license": "MIT", "dependencies": { "@jest/get-type": "30.1.0", "chalk": "^4.1.2", - "jest-diff": "30.1.2", - "pretty-format": "30.0.5" + "jest-diff": "30.2.0", + "pretty-format": "30.2.0" }, "engines": { "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, "node_modules/jest-message-util": { - "version": "30.1.0", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-30.1.0.tgz", - "integrity": "sha512-HizKDGG98cYkWmaLUHChq4iN+oCENohQLb7Z5guBPumYs+/etonmNFlg1Ps6yN9LTPyZn+M+b/9BbnHx3WTMDg==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-30.2.0.tgz", + "integrity": "sha512-y4DKFLZ2y6DxTWD4cDe07RglV88ZiNEdlRfGtqahfbIjfsw1nMCPx49Uev4IA/hWn3sDKyAnSPwoYSsAEdcimw==", "dev": true, "license": "MIT", "dependencies": { "@babel/code-frame": "^7.27.1", - "@jest/types": "30.0.5", + "@jest/types": "30.2.0", "@types/stack-utils": "^2.0.3", "chalk": "^4.1.2", "graceful-fs": "^4.2.11", "micromatch": "^4.0.8", - "pretty-format": "30.0.5", + "pretty-format": "30.2.0", "slash": "^3.0.0", "stack-utils": "^2.0.6" }, @@ -9928,15 +9825,15 @@ } }, "node_modules/jest-mock": { - "version": "30.0.5", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-30.0.5.tgz", - "integrity": "sha512-Od7TyasAAQX/6S+QCbN6vZoWOMwlTtzzGuxJku1GhGanAjz9y+QsQkpScDmETvdc9aSXyJ/Op4rhpMYBWW91wQ==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-30.2.0.tgz", + "integrity": "sha512-JNNNl2rj4b5ICpmAcq+WbLH83XswjPbjH4T7yvGzfAGCPh1rw+xVNbtk+FnRslvt9lkCcdn9i1oAoKUuFsOxRw==", "dev": true, "license": "MIT", "dependencies": { - "@jest/types": "30.0.5", + "@jest/types": "30.2.0", "@types/node": "*", - "jest-util": "30.0.5" + "jest-util": "30.2.0" }, "engines": { "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" @@ -9971,18 +9868,18 @@ } }, "node_modules/jest-resolve": { - "version": "30.1.3", - "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-30.1.3.tgz", - "integrity": "sha512-DI4PtTqzw9GwELFS41sdMK32Ajp3XZQ8iygeDMWkxlRhm7uUTOFSZFVZABFuxr0jvspn8MAYy54NxZCsuCTSOw==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-30.2.0.tgz", + "integrity": "sha512-TCrHSxPlx3tBY3hWNtRQKbtgLhsXa1WmbJEqBlTBrGafd5fiQFByy2GNCEoGR+Tns8d15GaL9cxEzKOO3GEb2A==", "dev": true, "license": "MIT", "dependencies": { "chalk": "^4.1.2", "graceful-fs": "^4.2.11", - "jest-haste-map": "30.1.0", + "jest-haste-map": "30.2.0", "jest-pnp-resolver": "^1.2.3", - "jest-util": "30.0.5", - "jest-validate": "30.1.0", + "jest-util": "30.2.0", + "jest-validate": "30.2.0", "slash": "^3.0.0", "unrs-resolver": "^1.7.11" }, @@ -9991,46 +9888,46 @@ } }, "node_modules/jest-resolve-dependencies": { - "version": "30.1.3", - "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-30.1.3.tgz", - "integrity": "sha512-DNfq3WGmuRyHRHfEet+Zm3QOmVFtIarUOQHHryKPc0YL9ROfgWZxl4+aZq/VAzok2SS3gZdniP+dO4zgo59hBg==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-30.2.0.tgz", + "integrity": "sha512-xTOIGug/0RmIe3mmCqCT95yO0vj6JURrn1TKWlNbhiAefJRWINNPgwVkrVgt/YaerPzY3iItufd80v3lOrFJ2w==", "dev": true, "license": "MIT", "dependencies": { "jest-regex-util": "30.0.1", - "jest-snapshot": "30.1.2" + "jest-snapshot": "30.2.0" }, "engines": { "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" } }, "node_modules/jest-runner": { - "version": "30.1.3", - "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-30.1.3.tgz", - "integrity": "sha512-dd1ORcxQraW44Uz029TtXj85W11yvLpDuIzNOlofrC8GN+SgDlgY4BvyxJiVeuabA1t6idjNbX59jLd2oplOGQ==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-30.2.0.tgz", + "integrity": "sha512-PqvZ2B2XEyPEbclp+gV6KO/F1FIFSbIwewRgmROCMBo/aZ6J1w8Qypoj2pEOcg3G2HzLlaP6VUtvwCI8dM3oqQ==", "dev": true, "license": "MIT", "dependencies": { - "@jest/console": "30.1.2", - "@jest/environment": "30.1.2", - "@jest/test-result": "30.1.3", - "@jest/transform": "30.1.2", - "@jest/types": "30.0.5", + "@jest/console": "30.2.0", + "@jest/environment": "30.2.0", + "@jest/test-result": "30.2.0", + "@jest/transform": "30.2.0", + "@jest/types": "30.2.0", "@types/node": "*", "chalk": "^4.1.2", "emittery": "^0.13.1", "exit-x": "^0.2.2", "graceful-fs": "^4.2.11", - "jest-docblock": "30.0.1", - "jest-environment-node": "30.1.2", - "jest-haste-map": "30.1.0", - "jest-leak-detector": "30.1.0", - "jest-message-util": "30.1.0", - "jest-resolve": "30.1.3", - "jest-runtime": "30.1.3", - "jest-util": "30.0.5", - "jest-watcher": "30.1.3", - "jest-worker": "30.1.0", + "jest-docblock": "30.2.0", + "jest-environment-node": "30.2.0", + "jest-haste-map": "30.2.0", + "jest-leak-detector": "30.2.0", + "jest-message-util": "30.2.0", + "jest-resolve": "30.2.0", + "jest-runtime": "30.2.0", + "jest-util": "30.2.0", + "jest-watcher": "30.2.0", + "jest-worker": "30.2.0", "p-limit": "^3.1.0", "source-map-support": "0.5.13" }, @@ -10039,32 +9936,32 @@ } }, "node_modules/jest-runtime": { - "version": "30.1.3", - "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-30.1.3.tgz", - "integrity": "sha512-WS8xgjuNSphdIGnleQcJ3AKE4tBKOVP+tKhCD0u+Tb2sBmsU8DxfbBpZX7//+XOz81zVs4eFpJQwBNji2Y07DA==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-30.2.0.tgz", + "integrity": "sha512-p1+GVX/PJqTucvsmERPMgCPvQJpFt4hFbM+VN3n8TMo47decMUcJbt+rgzwrEme0MQUA/R+1de2axftTHkKckg==", "dev": true, "license": "MIT", "dependencies": { - "@jest/environment": "30.1.2", - "@jest/fake-timers": "30.1.2", - "@jest/globals": "30.1.2", + "@jest/environment": "30.2.0", + "@jest/fake-timers": "30.2.0", + "@jest/globals": "30.2.0", "@jest/source-map": "30.0.1", - "@jest/test-result": "30.1.3", - "@jest/transform": "30.1.2", - "@jest/types": "30.0.5", + "@jest/test-result": "30.2.0", + "@jest/transform": "30.2.0", + "@jest/types": "30.2.0", "@types/node": "*", "chalk": "^4.1.2", "cjs-module-lexer": "^2.1.0", "collect-v8-coverage": "^1.0.2", "glob": "^10.3.10", "graceful-fs": "^4.2.11", - "jest-haste-map": "30.1.0", - "jest-message-util": "30.1.0", - "jest-mock": "30.0.5", + "jest-haste-map": "30.2.0", + "jest-message-util": "30.2.0", + "jest-mock": "30.2.0", "jest-regex-util": "30.0.1", - "jest-resolve": "30.1.3", - "jest-snapshot": "30.1.2", - "jest-util": "30.0.5", + "jest-resolve": "30.2.0", + "jest-snapshot": "30.2.0", + "jest-util": "30.2.0", "slash": "^3.0.0", "strip-bom": "^4.0.0" }, @@ -10073,9 +9970,9 @@ } }, "node_modules/jest-snapshot": { - "version": "30.1.2", - "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-30.1.2.tgz", - "integrity": "sha512-4q4+6+1c8B6Cy5pGgFvjDy/Pa6VYRiGu0yQafKkJ9u6wQx4G5PqI2QR6nxTl43yy7IWsINwz6oT4o6tD12a8Dg==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-30.2.0.tgz", + "integrity": "sha512-5WEtTy2jXPFypadKNpbNkZ72puZCa6UjSr/7djeecHWOu7iYhSXSnHScT8wBz3Rn8Ena5d5RYRcsyKIeqG1IyA==", "dev": true, "license": "MIT", "dependencies": { @@ -10084,20 +9981,20 @@ "@babel/plugin-syntax-jsx": "^7.27.1", "@babel/plugin-syntax-typescript": "^7.27.1", "@babel/types": "^7.27.3", - "@jest/expect-utils": "30.1.2", + "@jest/expect-utils": "30.2.0", "@jest/get-type": "30.1.0", - "@jest/snapshot-utils": "30.1.2", - "@jest/transform": "30.1.2", - "@jest/types": "30.0.5", - "babel-preset-current-node-syntax": "^1.1.0", + "@jest/snapshot-utils": "30.2.0", + "@jest/transform": "30.2.0", + "@jest/types": "30.2.0", + "babel-preset-current-node-syntax": "^1.2.0", "chalk": "^4.1.2", - "expect": "30.1.2", + "expect": "30.2.0", "graceful-fs": "^4.2.11", - "jest-diff": "30.1.2", - "jest-matcher-utils": "30.1.2", - "jest-message-util": "30.1.0", - "jest-util": "30.0.5", - "pretty-format": "30.0.5", + "jest-diff": "30.2.0", + "jest-matcher-utils": "30.2.0", + "jest-message-util": "30.2.0", + "jest-util": "30.2.0", + "pretty-format": "30.2.0", "semver": "^7.7.2", "synckit": "^0.11.8" }, @@ -10106,9 +10003,9 @@ } }, "node_modules/jest-snapshot/node_modules/semver": { - "version": "7.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", - "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", + "version": "7.7.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", "dev": true, "license": "ISC", "bin": { @@ -10119,13 +10016,13 @@ } }, "node_modules/jest-util": { - "version": "30.0.5", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-30.0.5.tgz", - "integrity": "sha512-pvyPWssDZR0FlfMxCBoc0tvM8iUEskaRFALUtGQYzVEAqisAztmy+R8LnU14KT4XA0H/a5HMVTXat1jLne010g==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-30.2.0.tgz", + "integrity": "sha512-QKNsM0o3Xe6ISQU869e+DhG+4CK/48aHYdJZGlFQVTjnbvgpcKyxpzk29fGiO7i/J8VENZ+d2iGnSsvmuHywlA==", "dev": true, "license": "MIT", "dependencies": { - "@jest/types": "30.0.5", + "@jest/types": "30.2.0", "@types/node": "*", "chalk": "^4.1.2", "ci-info": "^4.2.0", @@ -10150,18 +10047,18 @@ } }, "node_modules/jest-validate": { - "version": "30.1.0", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-30.1.0.tgz", - "integrity": "sha512-7P3ZlCFW/vhfQ8pE7zW6Oi4EzvuB4sgR72Q1INfW9m0FGo0GADYlPwIkf4CyPq7wq85g+kPMtPOHNAdWHeBOaA==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-30.2.0.tgz", + "integrity": "sha512-FBGWi7dP2hpdi8nBoWxSsLvBFewKAg0+uSQwBaof4Y4DPgBabXgpSYC5/lR7VmnIlSpASmCi/ntRWPbv7089Pw==", "dev": true, "license": "MIT", "dependencies": { "@jest/get-type": "30.1.0", - "@jest/types": "30.0.5", + "@jest/types": "30.2.0", "camelcase": "^6.3.0", "chalk": "^4.1.2", "leven": "^3.1.0", - "pretty-format": "30.0.5" + "pretty-format": "30.2.0" }, "engines": { "node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0" @@ -10181,19 +10078,19 @@ } }, "node_modules/jest-watcher": { - "version": "30.1.3", - "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-30.1.3.tgz", - "integrity": "sha512-6jQUZCP1BTL2gvG9E4YF06Ytq4yMb4If6YoQGRR6PpjtqOXSP3sKe2kqwB6SQ+H9DezOfZaSLnmka1NtGm3fCQ==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-30.2.0.tgz", + "integrity": "sha512-PYxa28dxJ9g777pGm/7PrbnMeA0Jr7osHP9bS7eJy9DuAjMgdGtxgf0uKMyoIsTWAkIbUW5hSDdJ3urmgXBqxg==", "dev": true, "license": "MIT", "dependencies": { - "@jest/test-result": "30.1.3", - "@jest/types": "30.0.5", + "@jest/test-result": "30.2.0", + "@jest/types": "30.2.0", "@types/node": "*", "ansi-escapes": "^4.3.2", "chalk": "^4.1.2", "emittery": "^0.13.1", - "jest-util": "30.0.5", + "jest-util": "30.2.0", "string-length": "^4.0.2" }, "engines": { @@ -10201,15 +10098,15 @@ } }, "node_modules/jest-worker": { - "version": "30.1.0", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-30.1.0.tgz", - "integrity": "sha512-uvWcSjlwAAgIu133Tt77A05H7RIk3Ho8tZL50bQM2AkvLdluw9NG48lRCl3Dt+MOH719n/0nnb5YxUwcuJiKRA==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-30.2.0.tgz", + "integrity": "sha512-0Q4Uk8WF7BUwqXHuAjc23vmopWJw5WH7w2tqBoUOZpOjW/ZnR44GXXd1r82RvnmI2GZge3ivrYXk/BE2+VtW2g==", "dev": true, "license": "MIT", "dependencies": { "@types/node": "*", "@ungap/structured-clone": "^1.3.0", - "jest-util": "30.0.5", + "jest-util": "30.2.0", "merge-stream": "^2.0.0", "supports-color": "^8.1.1" }, @@ -10543,9 +10440,9 @@ } }, "node_modules/make-dir/node_modules/semver": { - "version": "7.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", - "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", + "version": "7.7.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", "dev": true, "license": "ISC", "bin": { @@ -10824,9 +10721,9 @@ } }, "node_modules/ml-gsd": { - "version": "13.0.1", - "resolved": "https://registry.npmjs.org/ml-gsd/-/ml-gsd-13.0.1.tgz", - "integrity": "sha512-Du0759hFmjz/LXYnbQcnUs7kP/3iczrczwEAax5W9GTVay9YtR6tZ019PJJK4Fw2aZvysUt3MwrnFZUemsHKCQ==", + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/ml-gsd/-/ml-gsd-13.1.0.tgz", + "integrity": "sha512-CmUZ/hCPCb6L089Xon1U8xSxTR35DMh3ICfaBuP16mKm7HA8XoonAnjnVOjM4ayewDjgMM3KVqPS/+ti3tFYhA==", "license": "MIT", "dependencies": { "cheminfo-types": "^1.8.1", @@ -10967,16 +10864,16 @@ } }, "node_modules/ml-signal-processing": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ml-signal-processing/-/ml-signal-processing-2.0.0.tgz", - "integrity": "sha512-U7jY/QvTXKj2fDedOXNQf+hSXclQY+tVdVSsQzIQve6GL5a8W/kBHQ71dq80duNBB9bsv74Y4axOwD1AeMLyOA==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ml-signal-processing/-/ml-signal-processing-2.1.0.tgz", + "integrity": "sha512-FgZKMMgslSnnT+WKpKwJrInKs0xYmCZb+pz/1Bcr8ks6KQrdNA2xI9jjkr74O5ZSA9RVGjGWt7gG2Ra8UhtrIw==", "license": "MIT", "dependencies": { "baselines": "^1.1.9", "cheminfo-types": "^1.8.1", "ml-gsd": "^13.0.1", "ml-savitzky-golay-generalized": "^4.2.0", - "ml-spectra-processing": "^14.12.0" + "ml-spectra-processing": "^14.17.1" } }, "node_modules/ml-simple-clustering": { @@ -11008,9 +10905,9 @@ } }, "node_modules/ml-spectra-processing": { - "version": "14.17.1", - "resolved": "https://registry.npmjs.org/ml-spectra-processing/-/ml-spectra-processing-14.17.1.tgz", - "integrity": "sha512-ff2K8Nb91I5fSYcRRiHH0RvUIX1nC4TGg/ctbbyf6R7SUR5MgKF5Kicj+w1HACCK4DQ1HvSc2ZHVE2Z1NDvCRQ==", + "version": "14.18.0", + "resolved": "https://registry.npmjs.org/ml-spectra-processing/-/ml-spectra-processing-14.18.0.tgz", + "integrity": "sha512-vzk7Lf/21mm9Otjn13xDFsFL4reDViU6GbtAxQfkXtprARxRRoQScbnlDNE11UhOKXy88/FTnR4vf2osMkT4fA==", "license": "MIT", "dependencies": { "binary-search": "^1.3.6", @@ -11080,9 +10977,9 @@ } }, "node_modules/napi-postinstall": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/napi-postinstall/-/napi-postinstall-0.3.3.tgz", - "integrity": "sha512-uTp172LLXSxuSYHv/kou+f6KW3SMppU9ivthaVTXian9sOt3XM/zHYHpRZiLgQoxeWfYUnslNWQHF1+G71xcow==", + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/napi-postinstall/-/napi-postinstall-0.3.4.tgz", + "integrity": "sha512-PHI5f1O0EP5xJ9gQmFGMS6IZcrVvTjpXjz7Na41gTE7eE2hK11lg04CECCYEEjdc17EV4DO+fkGEtt7TpTaTiQ==", "dev": true, "license": "MIT", "bin": { @@ -11130,9 +11027,9 @@ } }, "node_modules/nmr-processing": { - "version": "19.1.0", - "resolved": "https://registry.npmjs.org/nmr-processing/-/nmr-processing-19.1.0.tgz", - "integrity": "sha512-Yu1iIITUiR63VrmE0SeGYcNWidYP4oldkD3V2AqQ15oDHBtmIxJkWV7q+MD/x9l44/6zpET8KNS/mdETfPAeUg==", + "version": "19.4.1", + "resolved": "https://registry.npmjs.org/nmr-processing/-/nmr-processing-19.4.1.tgz", + "integrity": "sha512-hEw0mZV2rjsc5RzwWddsq1MPDAlgi47gtAaByc31jKusfriwi0coENnBy6yDeqLrvgJa6usqXkRLNL4oSkVgPw==", "license": "CC-BY-NC-SA-4.0", "dependencies": { "binary-search": "^1.3.6", @@ -11144,7 +11041,7 @@ "ml-airpls": "^2.0.0", "ml-convolution": "^2.0.0", "ml-direct": "^1.0.0", - "ml-gsd": "^13.0.1", + "ml-gsd": "^13.1.0", "ml-hclust": "^3.1.0", "ml-levenberg-marquardt": "^5.0.0", "ml-matrix": "^6.12.1", @@ -11156,16 +11053,17 @@ "ml-regression-polynomial": "^3.0.2", "ml-regression-simple-linear": "^3.0.1", "ml-savitzky-golay-generalized": "^4.2.0", - "ml-signal-processing": "^2.0.0", + "ml-signal-processing": "^2.1.0", "ml-simple-clustering": "^1.0.0", "ml-sparse-matrix": "^3.1.0", - "ml-spectra-processing": "^14.14.1", + "ml-spectra-processing": "^14.17.1", "ml-tree-set": "^1.0.1", "multiplet-analysis": "^2.1.5", "nmr-correlation": "^3.0.0", "numeral": "^2.0.6", - "openchemlib-utils": "^8.2.0", - "spectrum-generator": "^8.1.0" + "openchemlib": "^9.10.0", + "openchemlib-utils": "^8.6.0", + "spectrum-generator": "^8.1.1" } }, "node_modules/nmr-processing/node_modules/ml-matrix-convolution": { @@ -11199,60 +11097,63 @@ } }, "node_modules/nmrium": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/nmrium/-/nmrium-1.3.0.tgz", - "integrity": "sha512-/SufaKT/XTa4TPrG7aJb16njjBHhbpmJfyApF43JefixX54r9Dmy5SG7TdT+P3n1GPUw5pMAFPsGpxwbkuuKBg==", + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/nmrium/-/nmrium-1.6.1.tgz", + "integrity": "sha512-S2gKYbLo8pmT5EpmaOnJ8kJBh2XS65VgZsuXEgMwcJ5MaxA2t3VqXeBusc7EG4c6YuS4rXBBRvNOY/cOgHoSWg==", "license": "MIT", "dependencies": { - "@atlaskit/pragmatic-drag-and-drop": "^1.7.4", + "@atlaskit/pragmatic-drag-and-drop": "^1.7.7", "@atlaskit/pragmatic-drag-and-drop-hitbox": "^1.1.0", "@emotion/react": "^11.14.0", "@emotion/styled": "^11.14.1", - "@hookform/resolvers": "^5.2.1", - "@zakodium/nmr-types": "^0.1.1", - "@zakodium/nmrium-core": "^0.1.7", - "@zakodium/nmrium-core-plugins": "^0.1.10", - "@zip.js/zip.js": "^2.7.72", + "@hookform/resolvers": "^5.2.2", + "@zakodium/nmr-types": "^0.2.1", + "@zakodium/nmrium-core": "^0.2.3", + "@zakodium/nmrium-core-plugins": "^0.3.6", + "@zakodium/pdnd-esm": "^1.0.2", + "@zip.js/zip.js": "^2.8.7", "cheminfo-font": "^1.13.1", "cheminfo-types": "^1.8.1", "clipboard-polyfill": "^4.1.1", - "d3": "^7.9.0", + "d3-array": "^3.2.4", + "d3-scale": "^4.0.2", + "d3-zoom": "^3.0.0", "dlv": "^1.1.3", "eventemitter3": "^5.0.1", "fifo-logger": "^2.0.1", - "file-collection": "^5.1.1", + "file-collection": "^5.2.0", "file-saver": "^2.0.5", - "immer": "^10.1.1", + "immer": "^10.1.3", "lodash": "^4.17.21", "mf-parser": "^3.6.0", "ml-array-mean": "^1.1.6", "ml-array-median": "^1.1.6", "ml-conrec": "^5.0.3", - "ml-gsd": "^13.0.1", - "ml-signal-processing": "^2.0.0", - "ml-spectra-processing": "^14.17.0", + "ml-gsd": "^13.1.0", + "ml-signal-processing": "^2.1.0", + "ml-spectra-processing": "^14.18.0", "ml-tree-similarity": "^2.2.0", "nmr-correlation": "2.3.3", - "nmr-processing": "^19.1.0", + "nmr-processing": "^19.4.1", "numeral": "^2.0.6", - "openchemlib": "^9.7.0", - "openchemlib-utils": "^8.2.1", + "openchemlib": "^9.11.1", + "openchemlib-utils": "^8.6.0", "papaparse": "^5.5.3", "react-d3-utils": "^3.1.2", "react-dropzone": "^14.3.8", "react-error-boundary": "^6.0.0", - "react-hook-form": "^7.62.0", + "react-hook-form": "^7.64.0", "react-icons": "^5.5.0", - "react-inspector": "^6.0.2", + "react-inspector": "^9.0.0", "react-mf": "^3.1.1", - "react-ocl": "^8.2.0", + "react-ocl": "^8.3.0", "react-ocl-nmr": "^4.1.1", "react-plot": "^3.1.1", "react-rnd": "^10.5.2", - "react-science": "^19.1.0", + "react-science": "^19.3.0", "react-table": "^7.8.0", - "smart-array-filter": "^4.1.1", - "yup": "^1.7.0" + "smart-array-filter": "^5.0.0", + "yup": "^1.7.1" }, "peerDependencies": { "@blueprintjs/core": "^6.0.0", @@ -11529,15 +11430,15 @@ } }, "node_modules/openchemlib": { - "version": "9.8.0", - "resolved": "https://registry.npmjs.org/openchemlib/-/openchemlib-9.8.0.tgz", - "integrity": "sha512-n2OJKvM6vS5a4xDkAxzLebzPP6J8KgzdKX518E4phfSOzRN8L5nfd7NqmnB/JHfgKi8MAwSBJPcwB+g05QUPcg==", + "version": "9.12.0", + "resolved": "https://registry.npmjs.org/openchemlib/-/openchemlib-9.12.0.tgz", + "integrity": "sha512-oOhfWPmXkEb20lq+lrIU0jFVooyZy9fN73HeteG1vABbjhwCky3+dk4bBbcA4vle4PSwSQzeHnJW0BqaSPqB6w==", "license": "BSD-3-Clause" }, "node_modules/openchemlib-utils": { - "version": "8.3.1", - "resolved": "https://registry.npmjs.org/openchemlib-utils/-/openchemlib-utils-8.3.1.tgz", - "integrity": "sha512-Fzgw80e/W7G5CT6DZknaIkL0DlzBPU9ocu1UL1zIEuYQ7vdpSq9u0rEQcvrlMOj4mNKNagNBIzmO99se39HoVg==", + "version": "8.6.0", + "resolved": "https://registry.npmjs.org/openchemlib-utils/-/openchemlib-utils-8.6.0.tgz", + "integrity": "sha512-CThsnliacv25l0mcf1k62KCV9bRLAAgY7Se7jVXdH6jSN2YpFDV056Oi2kNGi4ZobG2jTH45TKuGhpJSIgv4mQ==", "license": "MIT", "dependencies": { "atom-sorter": "^2.2.1", @@ -11549,7 +11450,7 @@ "sdf-parser": "^7.0.4" }, "peerDependencies": { - "openchemlib": ">=9.3.0" + "openchemlib": ">=9.8.0" } }, "node_modules/optionator": { @@ -11908,13 +11809,13 @@ } }, "node_modules/playwright": { - "version": "1.55.0", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.55.0.tgz", - "integrity": "sha512-sdCWStblvV1YU909Xqx0DhOjPZE4/5lJsIS84IfN9dAZfcl/CIZ5O8l3o0j7hPMjDvqoTF8ZUcc+i/GL5erstA==", + "version": "1.56.1", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.56.1.tgz", + "integrity": "sha512-aFi5B0WovBHTEvpM3DzXTUaeN6eN0qWnTkKx4NQaH4Wvcmc153PdaY2UBdSYKaGYw+UyWXSVyxDUg5DoPEttjw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "playwright-core": "1.55.0" + "playwright-core": "1.56.1" }, "bin": { "playwright": "cli.js" @@ -11927,9 +11828,9 @@ } }, "node_modules/playwright-core": { - "version": "1.55.0", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.55.0.tgz", - "integrity": "sha512-GvZs4vU3U5ro2nZpeiwyb0zuFaqb9sUiAJuyrWpcGouD8y9/HLgGbNRjIph7zU9D3hnPaisMl9zG9CgFi/biIg==", + "version": "1.56.1", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.56.1.tgz", + "integrity": "sha512-hutraynyn31F+Bifme+Ps9Vq59hKuUCz7H1kDOcBs+2oGguKkWTU50bBWrtz34OUWmIwpBTWDxaRPXrIXkgvmQ==", "dev": true, "license": "Apache-2.0", "bin": { @@ -12042,9 +11943,9 @@ } }, "node_modules/pretty-format": { - "version": "30.0.5", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-30.0.5.tgz", - "integrity": "sha512-D1tKtYvByrBkFLe2wHJl2bwMJIiT8rW+XA+TiataH79/FszLQMrpGEvzUVkzPau7OCO0Qnrhpe87PqtOAIB8Yw==", + "version": "30.2.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-30.2.0.tgz", + "integrity": "sha512-9uBdv/B4EefsuAL+pWqueZyZS2Ba+LxfFeQ9DN14HU4bN8bhaxKdkpjpB6fs9+pSjIBu+FXQHImEg8j/Lw0+vA==", "dev": true, "license": "MIT", "dependencies": { @@ -12312,9 +12213,9 @@ } }, "node_modules/react-hook-form": { - "version": "7.62.0", - "resolved": "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.62.0.tgz", - "integrity": "sha512-7KWFejc98xqG/F4bAxpL41NB3o1nnvQO1RWZT3TqRZYL8RryQETGfEdVnJN2fy1crCiBLLjkRBVK05j24FxJGA==", + "version": "7.65.0", + "resolved": "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.65.0.tgz", + "integrity": "sha512-xtOzDz063WcXvGWaHgLNrNzlsdFgtUWcb32E6WFaGTd7kPZG3EeDusjdZfUsPwKCKVXy1ZlntifaHZ4l8pAsmw==", "license": "MIT", "engines": { "node": ">=18.0.0" @@ -12337,12 +12238,12 @@ } }, "node_modules/react-inspector": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/react-inspector/-/react-inspector-6.0.2.tgz", - "integrity": "sha512-x+b7LxhmHXjHoU/VrFAzw5iutsILRoYyDq97EDYdFpPLcvqtEzk4ZSZSQjnFPbr5T57tLXnHcqFYoN1pI6u8uQ==", + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/react-inspector/-/react-inspector-9.0.0.tgz", + "integrity": "sha512-w/VJucSeHxlwRa2nfM2k7YhpT1r5EtlDOClSR+L7DyQP91QMdfFEDXDs9bPYN4kzP7umFtom7L0b2GGjph4Kow==", "license": "MIT", "peerDependencies": { - "react": "^16.8.4 || ^17.0.0 || ^18.0.0" + "react": "^18.0.0 || ^19.0.0" } }, "node_modules/react-is": { @@ -12365,9 +12266,9 @@ } }, "node_modules/react-ocl": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/react-ocl/-/react-ocl-8.2.0.tgz", - "integrity": "sha512-S0JsH9uqpz06z5jfnUwl3HwulNZ0WwJdQaHo7Jl4y+cVb3XKOqzGToAlvSFtNzpTLKH+6Y9KdYcKtrUVrXIXRQ==", + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/react-ocl/-/react-ocl-8.3.0.tgz", + "integrity": "sha512-UHdJpmnKbKspfvon0zz93lOQjAWJyAcL8iMKAUf4fh3KvbSv7m+C+dkSRhhh0DkBu92WI060u1IwbG9pM5l6BA==", "license": "MIT", "peerDependencies": { "openchemlib": ">=8", @@ -12448,9 +12349,9 @@ } }, "node_modules/react-router": { - "version": "7.9.1", - "resolved": "https://registry.npmjs.org/react-router/-/react-router-7.9.1.tgz", - "integrity": "sha512-pfAByjcTpX55mqSDGwGnY9vDCpxqBLASg0BMNAuMmpSGESo/TaOUG6BllhAtAkCGx8Rnohik/XtaqiYUJtgW2g==", + "version": "7.9.4", + "resolved": "https://registry.npmjs.org/react-router/-/react-router-7.9.4.tgz", + "integrity": "sha512-SD3G8HKviFHg9xj7dNODUKDFgpG4xqD5nhyd0mYoB5iISepuZAvzSr8ywxgxKJ52yRzf/HWtVHc9AWwoTbljvA==", "dev": true, "license": "MIT", "dependencies": { @@ -12471,13 +12372,13 @@ } }, "node_modules/react-router-dom": { - "version": "7.9.1", - "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-7.9.1.tgz", - "integrity": "sha512-U9WBQssBE9B1vmRjo9qTM7YRzfZ3lUxESIZnsf4VjR/lXYz9MHjvOxHzr/aUm4efpktbVOrF09rL/y4VHa8RMw==", + "version": "7.9.4", + "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-7.9.4.tgz", + "integrity": "sha512-f30P6bIkmYvnHHa5Gcu65deIXoA2+r3Eb6PJIAddvsT9aGlchMatJ51GgpU470aSqRRbFX22T70yQNUGuW3DfA==", "dev": true, "license": "MIT", "dependencies": { - "react-router": "7.9.1" + "react-router": "7.9.4" }, "engines": { "node": ">=20.0.0" @@ -12488,26 +12389,29 @@ } }, "node_modules/react-science": { - "version": "19.1.0", - "resolved": "https://registry.npmjs.org/react-science/-/react-science-19.1.0.tgz", - "integrity": "sha512-LByWoM9EzpBkaUb5YKqy2ORLINoNzSp3lrqfFfRFJC4qfX4Bi/LlBkmxNpuWsV7+M6Zui5Xe+lb5Fv9kqcy0aA==", + "version": "19.3.1", + "resolved": "https://registry.npmjs.org/react-science/-/react-science-19.3.1.tgz", + "integrity": "sha512-qgkf0mdoUMFLIVfNWMN6sijdGlnEagd/s9mqXJPvSu/iJbL0f6Zvzn1cC8H2vbyHr44JkTT2cFKOERQMjDwmyg==", "license": "MIT", "dependencies": { - "@atlaskit/pragmatic-drag-and-drop": "^1.7.4", - "@atlaskit/pragmatic-drag-and-drop-auto-scroll": "^2.1.1", + "@atlaskit/pragmatic-drag-and-drop": "^1.7.7", + "@atlaskit/pragmatic-drag-and-drop-auto-scroll": "^2.1.2", "@atlaskit/pragmatic-drag-and-drop-hitbox": "^1.1.0", "@emotion/styled": "^11.14.1", "@radix-ui/react-use-controllable-state": "^1.2.2", + "@tanstack/react-form": "^1.23.6", "@tanstack/react-table": "^8.21.3", "@tanstack/react-virtual": "^3.13.12", + "@zakodium/pdnd-esm": "^1.0.2", "d3-scale-chromatic": "^3.1.0", - "react-d3-utils": "^3.1.1", + "react-d3-utils": "^3.1.2", "react-dropzone": "^14.3.8", "react-full-screen": "^1.1.1", "react-icons": "^5.5.0", - "react-inspector": "^6.0.2", + "react-inspector": "^9.0.0", "tinycolor2": "^1.6.0", - "ts-pattern": "^5.7.1" + "ts-pattern": "^5.8.0", + "zod": "^4.1.12" }, "peerDependencies": { "@blueprintjs/core": "^6.0.0", @@ -12807,12 +12711,6 @@ "node": ">=0.10.0" } }, - "node_modules/robust-predicates": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/robust-predicates/-/robust-predicates-3.0.2.tgz", - "integrity": "sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==", - "license": "Unlicense" - }, "node_modules/rollup": { "version": "4.44.1", "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.44.1.tgz", @@ -12876,12 +12774,6 @@ "queue-microtask": "^1.2.2" } }, - "node_modules/rw": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/rw/-/rw-1.3.3.tgz", - "integrity": "sha512-PdhdWy89SiZogBLaw42zdeqtRJ//zFd2PgQavcICDUgJT5oW10QCRKbJ6bg4r0/UY2M6BWd5tkxuGFRvCkgfHQ==", - "license": "BSD-3-Clause" - }, "node_modules/safe-array-concat": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.3.tgz", @@ -12957,12 +12849,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "license": "MIT" - }, "node_modules/scheduler": { "version": "0.23.2", "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz", @@ -13299,9 +13185,9 @@ } }, "node_modules/smart-array-filter": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/smart-array-filter/-/smart-array-filter-4.1.1.tgz", - "integrity": "sha512-xvUAm7zqPzaBFcdJsCFo5AHqhXPZlyCXXWkxSH1xqKYN30QMDypFPjmll6HuFc9JRXOoblTdXQV+Gc0XXWDUHQ==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/smart-array-filter/-/smart-array-filter-5.0.0.tgz", + "integrity": "sha512-GvS9w8VqhEgw+sy7yynKnhdOevSx4bBmST1qFwr0w2m0g6Jk4e1JyeLkXVi2unHftWWg/Ev4ieMpACNDpKgE+g==", "license": "MIT", "dependencies": { "lodash.escaperegexp": "^4.1.2" @@ -13397,9 +13283,9 @@ "license": "CC0-1.0" }, "node_modules/spectrum-generator": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/spectrum-generator/-/spectrum-generator-8.1.0.tgz", - "integrity": "sha512-OJxJ7fGR+cJ9AyQegeaKaZtjGh+lxk/9A6UFBoeodduI82VIKpm0bjjSd2Q6t5BIFLsYicbMztY1hcx+55Oe2w==", + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/spectrum-generator/-/spectrum-generator-8.1.1.tgz", + "integrity": "sha512-u5xXYVKV/cZ4gNjFjwcJ4eqMui+XVKEoRWqxdI/Bu0hEx1gRTHzBL4dlJwnhaad+J887X77k03bVAigRXOwKxA==", "license": "MIT", "dependencies": { "ml-peak-shape-generator": "^4.1.4", @@ -14049,9 +13935,9 @@ } }, "node_modules/ts-pattern": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/ts-pattern/-/ts-pattern-5.7.1.tgz", - "integrity": "sha512-EGs8PguQqAAUIcQfK4E9xdXxB6s2GK4sJfT/vcc9V1ELIvC4LH/zXu2t/5fajtv6oiRCxdv7BgtVK3vWgROxag==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/ts-pattern/-/ts-pattern-5.8.0.tgz", + "integrity": "sha512-kIjN2qmWiHnhgr5DAkAafF9fwb0T5OhMVSWrm8XEdTFnX6+wfXwYOFjeF86UZ54vduqiR7BfqScFmXSzSaH8oA==", "license": "MIT" }, "node_modules/tsconfig-paths": { @@ -14211,9 +14097,9 @@ } }, "node_modules/typescript": { - "version": "5.9.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.2.tgz", - "integrity": "sha512-CWBzXQrc/qOkhidw1OzBTQuYRbfyxDXJMVJ1XNwUHGROVmuaeiEm3OslpZ1RV96d7SKKjZKrSJu3+t/xlw3R9A==", + "version": "5.9.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", + "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", "dev": true, "license": "Apache-2.0", "bin": { @@ -14274,9 +14160,9 @@ } }, "node_modules/undici-types": { - "version": "7.12.0", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.12.0.tgz", - "integrity": "sha512-goOacqME2GYyOZZfb5Lgtu+1IDmAlAEu5xnD3+xTzS10hT0vzpf0SPjkXwAw9Jm+4n/mQGDP3LO8CPbYROeBfQ==", + "version": "7.14.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.14.0.tgz", + "integrity": "sha512-QQiYxHuyZ9gQUIrmPo3IA+hUl4KYk8uSA7cHrcKd/l3p1OTpZcM0Tbp9x7FAtXdAYhlasd60ncPpgu6ihG6TOA==", "devOptional": true, "license": "MIT" }, @@ -14463,12 +14349,12 @@ } }, "node_modules/use-sync-external-store": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz", - "integrity": "sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.6.0.tgz", + "integrity": "sha512-Pp6GSwGP/NrPIrxVFAIkOQeyw8lFenOHijQWkUTrDvrF4ALqylP2C/KCkeS9dpUM3KvYRQhna5vt7IL95+ZQ9w==", "license": "MIT", "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" } }, "node_modules/util-deprecate": { @@ -14503,9 +14389,9 @@ } }, "node_modules/vite": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/vite/-/vite-7.1.6.tgz", - "integrity": "sha512-SRYIB8t/isTwNn8vMB3MR6E+EQZM/WG1aKmmIUCfDXfVvKfc20ZpamngWHKzAmmu9ppsgxsg4b2I7c90JZudIQ==", + "version": "7.1.11", + "resolved": "https://registry.npmjs.org/vite/-/vite-7.1.11.tgz", + "integrity": "sha512-uzcxnSDVjAopEUjljkWh8EIrg6tlzrjFUfMcR1EVsRDGwf/ccef0qQPRyOrROwhrTDaApueq+ja+KLPlzR/zdg==", "license": "MIT", "dependencies": { "esbuild": "^0.25.0", @@ -14577,9 +14463,9 @@ } }, "node_modules/vite-plugin-pwa": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/vite-plugin-pwa/-/vite-plugin-pwa-1.0.3.tgz", - "integrity": "sha512-/OpqIpUldALGxcsEnv/ekQiQ5xHkQ53wcoN5ewX4jiIDNGs3W+eNcI1WYZeyOLmzoEjg09D7aX0O89YGjen1aw==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/vite-plugin-pwa/-/vite-plugin-pwa-1.1.0.tgz", + "integrity": "sha512-VsSpdubPzXhHWVINcSx6uHRMpOHVHQcHsef1QgkOlEoaIDAlssFEW88LBq1a59BuokAhsh2kUDJbaX1bZv4Bjw==", "dev": true, "license": "MIT", "dependencies": { @@ -15405,9 +15291,9 @@ } }, "node_modules/yup": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/yup/-/yup-1.7.0.tgz", - "integrity": "sha512-VJce62dBd+JQvoc+fCVq+KZfPHr+hXaxCcVgotfwWvlR0Ja3ffYKaJBT8rptPOSKOGJDCUnW2C2JWpud7aRP6Q==", + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/yup/-/yup-1.7.1.tgz", + "integrity": "sha512-GKHFX2nXul2/4Dtfxhozv701jLQHdf6J34YDh2cEkpqoo8le5Mg6/LrdseVLrFarmFygZTlfIhHx/QKfb/QWXw==", "license": "MIT", "dependencies": { "property-expr": "^2.0.5", @@ -15429,26 +15315,25 @@ } }, "node_modules/zod": { - "version": "3.25.71", - "resolved": "https://registry.npmjs.org/zod/-/zod-3.25.71.tgz", - "integrity": "sha512-BsBc/NPk7h8WsUWYWYL+BajcJPY8YhjelaWu2NMLuzgraKAz4Lb4/6K11g9jpuDetjMiqhZ6YaexFLOC0Ogi3Q==", - "dev": true, + "version": "4.1.12", + "resolved": "https://registry.npmjs.org/zod/-/zod-4.1.12.tgz", + "integrity": "sha512-JInaHOamG8pt5+Ey8kGmdcAcg3OL9reK8ltczgHTAwNhMys/6ThXHityHxVV2p3fkw/c+MAvBHFVYHFZDmjMCQ==", "license": "MIT", "funding": { "url": "https://github.com/sponsors/colinhacks" } }, "node_modules/zod-validation-error": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/zod-validation-error/-/zod-validation-error-3.5.2.tgz", - "integrity": "sha512-mdi7YOLtram5dzJ5aDtm1AG9+mxRma1iaMrZdYIpFO7epdKBUwLHIxTF8CPDeCQ828zAXYtizrKlEJAtzgfgrw==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/zod-validation-error/-/zod-validation-error-4.0.2.tgz", + "integrity": "sha512-Q6/nZLe6jxuU80qb/4uJ4t5v2VEZ44lzQjPDhYJNztRQ4wyWc6VF3D3Kb/fAuPetZQnhS3hnajCf9CsWesghLQ==", "dev": true, "license": "MIT", "engines": { "node": ">=18.0.0" }, "peerDependencies": { - "zod": "^3.25.0" + "zod": "^3.25.0 || ^4.0.0" } } } diff --git a/package.json b/package.json index 4d3cef8..f119fda 100644 --- a/package.json +++ b/package.json @@ -13,19 +13,19 @@ "node": "24.4.0" }, "dependencies": { - "@blueprintjs/core": "^6.3.1", - "@blueprintjs/icons": "^6.1.0", - "@blueprintjs/select": "^6.0.5", + "@blueprintjs/core": "^6.3.2", + "@blueprintjs/icons": "^6.2.0", + "@blueprintjs/select": "^6.0.6", "@emotion/styled": "^11.14.1", - "@vitejs/plugin-react": "^5.0.3", - "@zakodium/nmrium-core": "^0.1.7", - "@zakodium/nmrium-core-plugins": "^0.1.10", + "@vitejs/plugin-react": "^5.0.4", + "@zakodium/nmrium-core": "^0.2.3", + "@zakodium/nmrium-core-plugins": "^0.3.6", "fifo-logger": "^2.0.1", "filelist-utils": "^1.11.3", - "nmr-processing": "^19.1.0", - "nmrium": "^1.3.0", - "openchemlib": "^9.8.0", - "react-science": "^19.1.0" + "nmr-processing": "^19.4.1", + "nmrium": "^1.6.1", + "openchemlib": "^9.12.0", + "react-science": "^19.3.1" }, "scripts": { "start": "vite --host localhost --port 3000 --open", @@ -46,25 +46,25 @@ "@babel/plugin-transform-modules-commonjs": "^7.27.1", "@babel/preset-react": "^7.27.1", "@babel/preset-typescript": "^7.27.1", - "@playwright/test": "^1.55.0", + "@playwright/test": "^1.56.1", "@simbathesailor/use-what-changed": "^2.0.0", "@types/jest": "^30.0.0", - "@types/node": "^24.5.2", + "@types/node": "^24.8.1", "@types/react": "^18.3.3", "@types/react-dom": "^18.3.0", "@types/react-router-dom": "^5.3.3", - "cross-env": "^10.0.0", - "eslint": "^9.35.0", - "eslint-config-cheminfo-react": "^18.0.0", + "cross-env": "^10.1.0", + "eslint": "^9.38.0", + "eslint-config-cheminfo-react": "^18.0.1", "eslint-config-cheminfo-typescript": "^20.0.0", - "jest": "^30.1.3", + "jest": "^30.2.0", "prettier": "3.6.2", "react": "^18.3.1", "react-dom": "^18.3.1", - "react-router-dom": "^7.9.1", + "react-router-dom": "^7.9.4", "serve": "^14.2.5", - "typescript": "^5.9.2", - "vite": "^7.1.6", - "vite-plugin-pwa": "^1.0.3" + "typescript": "^5.9.3", + "vite": "^7.1.11", + "vite-plugin-pwa": "^1.1.0" } } \ No newline at end of file diff --git a/src/NMRiumWrapper.tsx b/src/NMRiumWrapper.tsx index b9a7dc9..b2c4ac4 100644 --- a/src/NMRiumWrapper.tsx +++ b/src/NMRiumWrapper.tsx @@ -1,7 +1,8 @@ -import type { NMRiumChangeCb, NMRiumData, NMRiumRefAPI } from 'nmrium'; +import type { NmriumData } from '@zakodium/nmrium-core'; +import type { NMRiumChangeCb, NMRiumRefAPI } from 'nmrium'; import { NMRium } from 'nmrium'; import type { CSSProperties } from 'react'; -import { useCallback, useEffect, useRef, useState } from 'react'; +import { useCallback, useEffect, useRef } from 'react'; import { RootLayout } from 'react-science/ui'; import events from './events/event.js'; @@ -37,8 +38,6 @@ const styles: Record<'container' | 'loadingContainer', CSSProperties> = { export default function NMRiumWrapper() { const { allowedOrigins, isFetchAllowedOriginsPending } = useWhiteList(); const nmriumRef = useRef(null); - const [data, setDate] = useState(); - const { workspace, preferences, defaultEmptyMessage, customWorkspaces } = usePreferences(); const dataChangeHandler = useCallback((state, source) => { @@ -48,13 +47,7 @@ export default function NMRiumWrapper() { }); }, []); - const { load: loadSpectra, isLoading, data: loadedData } = useLoadSpectra(); - - useEffect(() => { - if (!isLoading) { - setDate(loadedData as unknown as NMRiumData); - } - }, [isLoading, loadedData]); + const { load: loadSpectra, data, setData } = useLoadSpectra(); useEffect(() => { const clearActionListener = events.on( @@ -85,7 +78,7 @@ export default function NMRiumWrapper() { (loadData) => { switch (loadData.type) { case 'nmrium': - setDate(loadData.data); + setData(loadData.data as NmriumData); break; case 'file': { const { data: files, activeTab } = loadData; @@ -122,7 +115,7 @@ export default function NMRiumWrapper() { )} ); } - -export { type NMRiumData } from 'nmrium'; diff --git a/src/hooks/useLoadSpectra.ts b/src/hooks/useLoadSpectra.ts index 61506c8..ab8fad0 100644 --- a/src/hooks/useLoadSpectra.ts +++ b/src/hooks/useLoadSpectra.ts @@ -1,5 +1,5 @@ import type { - NmriumState, + NmriumData, ParsingOptions, ViewState, } from '@zakodium/nmrium-core'; @@ -64,20 +64,19 @@ async function loadSpectraFromURLs(urls: string[]) { return data; } -type NMRiumData = NmriumState['data']; - type LoadOptions = | { urls: string[]; activeTab?: string } | { files: File[]; activeTab?: string }; interface UseLoadSpectraResult { - data: { version: number; data: NMRiumData }; + data: { version: number; data: NmriumData }; load: (options: LoadOptions) => void; + setData: (data: NmriumData) => void; isLoading: boolean; } export function useLoadSpectra(): UseLoadSpectraResult { - const [data, setData] = useState({ spectra: [], molecules: [] }); + const [data, setData] = useState({ spectra: [], molecules: [] }); const [activeTab, setActiveTab] = useState(); const [isLoading, setLoading] = useState(false); @@ -87,14 +86,14 @@ export function useLoadSpectra(): UseLoadSpectraResult { if ('urls' in options) { if (isArrayOfString(options.urls)) { const result = await loadSpectraFromURLs(options.urls); - setData(result as NMRiumData); + setData(result as NmriumData); setActiveTab(options?.activeTab); } else { throw new Error('The input must be a valid urls array of string[]'); } } else if ('files' in options) { const result = await loadSpectraFromFiles(options.files); - setData(result as NMRiumData); + setData(result as NmriumData); setActiveTab(options?.activeTab); } } catch (error: unknown) { @@ -117,6 +116,7 @@ export function useLoadSpectra(): UseLoadSpectraResult { data: { version: CURRENT_EXPORT_VERSION, data, view }, load, isLoading, + setData, }; }, [activeTab, data, isLoading, load]); } diff --git a/src/hooks/usePreferences.ts b/src/hooks/usePreferences.ts index cf6089c..1aadf4b 100644 --- a/src/hooks/usePreferences.ts +++ b/src/hooks/usePreferences.ts @@ -3,63 +3,58 @@ import type { WorkspacePreferences, } from '@zakodium/nmrium-core'; import type { NMRiumWorkspace } from 'nmrium'; -import { useLayoutEffect, useState } from 'react'; import { getNmrXivWorkspace } from '../workspaces/nmrxiv.js'; -interface Preferences { - preferences: WorkspacePreferences | undefined; - workspace: NMRiumWorkspace | undefined; - defaultEmptyMessage: string | undefined; - customWorkspaces: CustomWorkspaces; -} +export function usePreferences() { + const { href } = window.location; + const parameters = new URL(href).searchParams; -const DEFAULT_PREFERENCES = { - preferences: undefined, - workspace: undefined, - defaultEmptyMessage: undefined, - customWorkspaces: {}, -}; + let preferences: WorkspacePreferences | undefined; + let workspace: NMRiumWorkspace | undefined; + let defaultEmptyMessage: string | undefined; + let hidePanelOnLoad = false; -export function usePreferences() { - const [configuration, setConfiguration] = - useState(DEFAULT_PREFERENCES); + if (parameters.has('workspace')) { + workspace = parameters.get('workspace') as NMRiumWorkspace; + } - useLayoutEffect(() => { - const { href } = window.location; - const parameters = new URL(href).searchParams; + if (parameters.has('preferences')) { + preferences = JSON.parse(parameters.get('preferences') || ''); + } - let preferences: WorkspacePreferences | undefined; - let workspace: NMRiumWorkspace | undefined; - let defaultEmptyMessage: string | undefined; - let hidePanelOnLoad = false; + if (parameters.has('defaultEmptyMessage')) { + defaultEmptyMessage = parameters.get('defaultEmptyMessage') as string; + } + if (parameters.has('hidePanelOnLoad')) { + hidePanelOnLoad = + parameters.get('hidePanelOnLoad')?.toLowerCase() === 'true'; + } - if (parameters.has('workspace')) { - workspace = parameters.get('workspace') as NMRiumWorkspace; - } + const customWorkspaces = createCustomWorkspaces({ hidePanelOnLoad }); - if (parameters.has('preferences')) { - preferences = JSON.parse(parameters.get('preferences') || ''); - } + if (parameters.has('workspace')) { + workspace = parameters.get('workspace') as NMRiumWorkspace; + } - if (parameters.has('defaultEmptyMessage')) { - defaultEmptyMessage = parameters.get('defaultEmptyMessage') as string; - } - if (parameters.has('hidePanelOnLoad')) { - hidePanelOnLoad = - parameters.get('hidePanelOnLoad')?.toLowerCase() === 'true'; - } + if (parameters.has('preferences')) { + preferences = JSON.parse(parameters.get('preferences') || ''); + } - const customWorkspaces = createCustomWorkspaces({ hidePanelOnLoad }); - setConfiguration({ - preferences, - workspace, - defaultEmptyMessage, - customWorkspaces, - }); - }, []); + if (parameters.has('defaultEmptyMessage')) { + defaultEmptyMessage = parameters.get('defaultEmptyMessage') as string; + } + if (parameters.has('hidePanelOnLoad')) { + hidePanelOnLoad = + parameters.get('hidePanelOnLoad')?.toLowerCase() === 'true'; + } - return configuration; + return { + preferences, + workspace, + defaultEmptyMessage, + customWorkspaces, + }; } interface CreateCustomWorkspacesOptions { diff --git a/yarn.lock b/yarn.lock index 3cbecce..f46dc19 100644 --- a/yarn.lock +++ b/yarn.lock @@ -16,10 +16,10 @@ jsonpointer "^5.0.0" leven "^3.1.0" -"@atlaskit/pragmatic-drag-and-drop-auto-scroll@^2.1.1": - version "2.1.1" - resolved "https://registry.npmjs.org/@atlaskit/pragmatic-drag-and-drop-auto-scroll/-/pragmatic-drag-and-drop-auto-scroll-2.1.1.tgz" - integrity sha512-VAQEb3NVLY9Q5ZgC5Eiws9Uf6xOINY9/pAZMdbOVlF90uRXEkmpYqdTL+zeyZ8U8deuqYCmXr7oWIEnxpNQVzA== +"@atlaskit/pragmatic-drag-and-drop-auto-scroll@^2.1.2": + version "2.1.2" + resolved "https://registry.npmjs.org/@atlaskit/pragmatic-drag-and-drop-auto-scroll/-/pragmatic-drag-and-drop-auto-scroll-2.1.2.tgz" + integrity sha512-6BgAUxSNbQFiG3uqNxf53cDQADn5mSeh/JsQzCHo46GPQnVWIJk77zWC8yZ++0Mfg1ECy02zNrbniF7SgHAhXQ== dependencies: "@atlaskit/pragmatic-drag-and-drop" "^1.7.0" "@babel/runtime" "^7.0.0" @@ -32,10 +32,10 @@ "@atlaskit/pragmatic-drag-and-drop" "^1.6.0" "@babel/runtime" "^7.0.0" -"@atlaskit/pragmatic-drag-and-drop@^1.6.0", "@atlaskit/pragmatic-drag-and-drop@^1.7.0", "@atlaskit/pragmatic-drag-and-drop@^1.7.4": - version "1.7.4" - resolved "https://registry.npmjs.org/@atlaskit/pragmatic-drag-and-drop/-/pragmatic-drag-and-drop-1.7.4.tgz" - integrity sha512-lZHnO9BJdHPKnwB0uvVUCyDnIhL+WAHzXQ2EXX0qacogOsnvIUiCgY0BLKhBqTCWln3/f/Ox5jU54MKO6ayh9A== +"@atlaskit/pragmatic-drag-and-drop@^1.6.0", "@atlaskit/pragmatic-drag-and-drop@^1.7.0", "@atlaskit/pragmatic-drag-and-drop@^1.7.7": + version "1.7.7" + resolved "https://registry.npmjs.org/@atlaskit/pragmatic-drag-and-drop/-/pragmatic-drag-and-drop-1.7.7.tgz" + integrity sha512-jX+68AoSTqO/fhCyJDTZ38Ey6/wyL2Iq+J/moanma0YyktpnoHxevjY1UNJHYp0NCburdQDZSL1ZFac1mO1osQ== dependencies: "@babel/runtime" "^7.0.0" bind-event-listener "^3.0.0" @@ -55,7 +55,7 @@ resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.28.0.tgz" integrity sha512-60X7qkglvrap8mn1lh2ebxXdZYtUcpd7gsmy9kLaBJ4i/WdY8PqTSdxyA8qraikqKQK5C1KRBKXqznrVapyNaw== -"@babel/core@^7.0.0", "@babel/core@^7.0.0 || ^8.0.0-0", "@babel/core@^7.0.0-0", "@babel/core@^7.0.0-0 || ^8.0.0-0 <8.0.0", "@babel/core@^7.11.0", "@babel/core@^7.12.0", "@babel/core@^7.13.0", "@babel/core@^7.23.9", "@babel/core@^7.24.4", "@babel/core@^7.27.4", "@babel/core@^7.28.4", "@babel/core@^7.4.0 || ^8.0.0-0 <8.0.0": +"@babel/core@^7.0.0", "@babel/core@^7.0.0 || ^8.0.0-0", "@babel/core@^7.0.0-0", "@babel/core@^7.0.0-0 || ^8.0.0-0 <8.0.0", "@babel/core@^7.11.0 || ^8.0.0-0", "@babel/core@^7.11.0 || ^8.0.0-beta.1", "@babel/core@^7.12.0", "@babel/core@^7.13.0", "@babel/core@^7.23.9", "@babel/core@^7.24.4", "@babel/core@^7.27.4", "@babel/core@^7.28.4", "@babel/core@^7.4.0 || ^8.0.0-0 <8.0.0": version "7.28.4" resolved "https://registry.npmjs.org/@babel/core/-/core-7.28.4.tgz" integrity sha512-2BCOP7TN8M+gVDj7/ht3hsaO/B/n5oDbiAyyvnRlNOs+u1o+JWNYTQrmpuNp1/Wq2gcFrI01JAW+paEKDMx/CA== @@ -696,7 +696,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-private-methods@^7.24.4", "@babel/plugin-transform-private-methods@^7.25.9": +"@babel/plugin-transform-private-methods@^7.25.9": version "7.25.9" resolved "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.25.9.tgz" integrity sha512-D/JUozNpQLAPUVusvqMxyvjzllRaF8/nSrP1s2YGQT/W4LHK4xxsMcHjhOGTS01mp9Hda8nswb+FblLdJornQw== @@ -1024,13 +1024,13 @@ dependencies: tslib "~2.6.2" -"@blueprintjs/core@^6.0.0", "@blueprintjs/core@^6.3.1": - version "6.3.1" - resolved "https://registry.npmjs.org/@blueprintjs/core/-/core-6.3.1.tgz" - integrity sha512-mvpzyrkkyLdprL9LgzGeQBtR+9dZFXizmwRHHWVFQzIvLNjU+9EIwJlnKBjIAovsKSvZnMRc/8pSXn/LTEQDVQ== +"@blueprintjs/core@^6.0.0", "@blueprintjs/core@^6.3.2": + version "6.3.2" + resolved "https://registry.npmjs.org/@blueprintjs/core/-/core-6.3.2.tgz" + integrity sha512-BZ46b0RxavATBfni9WcgAJAp8sFrqiNoUwoIIWoe1MTFlrI3IipOPKG6IcYKLGW1YAYa1jwc9ftaYiZVubll5A== dependencies: "@blueprintjs/colors" "^5.1.9" - "@blueprintjs/icons" "^6.1.0" + "@blueprintjs/icons" "^6.2.0" "@popperjs/core" "^2.11.8" classnames "^2.3.1" normalize.css "^8.0.1" @@ -1039,22 +1039,22 @@ tslib "~2.6.2" use-sync-external-store "^1.2.0" -"@blueprintjs/icons@^6.0.0", "@blueprintjs/icons@^6.1.0": - version "6.1.0" - resolved "https://registry.npmjs.org/@blueprintjs/icons/-/icons-6.1.0.tgz" - integrity sha512-FvARNeJGvQPwewtKBB/8jYAj1xQFXFf34/SSdpDxZGhAeEf98NdUHilsel3M2wT/FPNWJCKhDHSND4sDgpMr+A== +"@blueprintjs/icons@^6.0.0", "@blueprintjs/icons@^6.2.0": + version "6.2.0" + resolved "https://registry.npmjs.org/@blueprintjs/icons/-/icons-6.2.0.tgz" + integrity sha512-iPM2nx1lYe1kT3C4oOS7NsxdJCc1kF3vluDLwF3chRrChwZfrSAF1aPD7dJLAZFaVgdaguElfTs89e9H13a9rQ== dependencies: change-case "^4.1.2" classnames "^2.3.1" tslib "~2.6.2" -"@blueprintjs/select@^6.0.0", "@blueprintjs/select@^6.0.5": - version "6.0.5" - resolved "https://registry.npmjs.org/@blueprintjs/select/-/select-6.0.5.tgz" - integrity sha512-85i7bzxI/ABIJ/D8zufZkrzlj/ozt8YPqcUdYYlBv0VTC8cNyhNSp+zUohEEdTlc00EHX6I55EjSI7HbuFyd5Q== +"@blueprintjs/select@^6.0.0", "@blueprintjs/select@^6.0.6": + version "6.0.6" + resolved "https://registry.npmjs.org/@blueprintjs/select/-/select-6.0.6.tgz" + integrity sha512-1c4YaahEZZ+P1z/265bsvQCJvoIhBaP4eQambdFrHT3+7DbpleOnjjIN56FW5o8CaL30KQMD0bnUSOSGrTpSFw== dependencies: - "@blueprintjs/core" "^6.3.1" - "@blueprintjs/icons" "^6.1.0" + "@blueprintjs/core" "^6.3.2" + "@blueprintjs/icons" "^6.2.0" classnames "^2.3.1" tslib "~2.6.2" @@ -1345,19 +1345,21 @@ resolved "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.1.tgz" integrity sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ== -"@eslint/config-array@^0.21.0": - version "0.21.0" - resolved "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.21.0.tgz" - integrity sha512-ENIdc4iLu0d93HeYirvKmrzshzofPw6VkZRKQGe9Nv46ZnWUzcF1xV01dcvEg/1wXUR61OmmlSfyeyO7EvjLxQ== +"@eslint/config-array@^0.21.1": + version "0.21.1" + resolved "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.21.1.tgz" + integrity sha512-aw1gNayWpdI/jSYVgzN5pL0cfzU02GT3NBpeT/DXbx1/1x7ZKxFPd9bwrzygx/qiwIQiJ1sw/zD8qY/kRvlGHA== dependencies: - "@eslint/object-schema" "^2.1.6" + "@eslint/object-schema" "^2.1.7" debug "^4.3.1" minimatch "^3.1.2" -"@eslint/config-helpers@^0.3.1": - version "0.3.1" - resolved "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.3.1.tgz" - integrity sha512-xR93k9WhrDYpXHORXpxVL5oHj3Era7wo6k/Wd8/IsQNnZUTzkGS29lyn3nAT05v6ltUuTFVCCYDEGfy2Or/sPA== +"@eslint/config-helpers@^0.4.1": + version "0.4.1" + resolved "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.4.1.tgz" + integrity sha512-csZAzkNhsgwb0I/UAV6/RGFTbiakPCf0ZrGmrIxQpYvGZ00PhTkSnyKNolphgIvmnJeGw6rcGVEXfTzUnFuEvw== + dependencies: + "@eslint/core" "^0.16.0" "@eslint/core@^0.15.2": version "0.15.2" @@ -1366,6 +1368,13 @@ dependencies: "@types/json-schema" "^7.0.15" +"@eslint/core@^0.16.0": + version "0.16.0" + resolved "https://registry.npmjs.org/@eslint/core/-/core-0.16.0.tgz" + integrity sha512-nmC8/totwobIiFcGkDza3GIKfAw1+hLiYVrh3I1nIomQ8PEr5cxg34jnkmGawul/ep52wGRAcyeDCNtWKSOj4Q== + dependencies: + "@types/json-schema" "^7.0.15" + "@eslint/eslintrc@^3.3.1": version "3.3.1" resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.1.tgz" @@ -1381,17 +1390,17 @@ minimatch "^3.1.2" strip-json-comments "^3.1.1" -"@eslint/js@9.35.0": - version "9.35.0" - resolved "https://registry.npmjs.org/@eslint/js/-/js-9.35.0.tgz" - integrity sha512-30iXE9whjlILfWobBkNerJo+TXYsgVM5ERQwMcMKCHckHflCmf7wXDAHlARoWnh0s1U72WqlbeyE7iAcCzuCPw== +"@eslint/js@9.38.0": + version "9.38.0" + resolved "https://registry.npmjs.org/@eslint/js/-/js-9.38.0.tgz" + integrity sha512-UZ1VpFvXf9J06YG9xQBdnzU+kthors6KjhMAl6f4gH4usHyh31rUf2DLGInT8RFYIReYXNSydgPY0V2LuWgl7A== -"@eslint/object-schema@^2.1.6": - version "2.1.6" - resolved "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.6.tgz" - integrity sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA== +"@eslint/object-schema@^2.1.7": + version "2.1.7" + resolved "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.7.tgz" + integrity sha512-VtAOaymWVfZcmZbp6E2mympDIHvyjXs/12LqWYjVw6qjrfF+VK+fyG33kChz3nnK+SU5/NeHOqrTEHS8sXO3OA== -"@eslint/plugin-kit@^0.3.3", "@eslint/plugin-kit@^0.3.5": +"@eslint/plugin-kit@^0.3.3": version "0.3.5" resolved "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.3.5.tgz" integrity sha512-Z5kJ+wU3oA7MMIqVR9tyZRtjYPr4OC004Q4Rw7pgOKUOKkJfZ3O24nz3WYfGRpMDNmcOi3TwQOmgm7B7Tpii0w== @@ -1399,10 +1408,18 @@ "@eslint/core" "^0.15.2" levn "^0.4.1" -"@hookform/resolvers@^5.2.1": - version "5.2.1" - resolved "https://registry.npmjs.org/@hookform/resolvers/-/resolvers-5.2.1.tgz" - integrity sha512-u0+6X58gkjMcxur1wRWokA7XsiiBJ6aK17aPZxhkoYiK5J+HcTx0Vhu9ovXe6H+dVpO6cjrn2FkJTryXEMlryQ== +"@eslint/plugin-kit@^0.4.0": + version "0.4.0" + resolved "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.4.0.tgz" + integrity sha512-sB5uyeq+dwCWyPi31B2gQlVlo+j5brPlWx4yZBrEaRo/nhdDE8Xke1gsGgtiBdaBTxuTkceLVuVt/pclrasb0A== + dependencies: + "@eslint/core" "^0.16.0" + levn "^0.4.1" + +"@hookform/resolvers@^5.2.2": + version "5.2.2" + resolved "https://registry.npmjs.org/@hookform/resolvers/-/resolvers-5.2.2.tgz" + integrity sha512-A/IxlMLShx3KjV/HeTcTfaMxdwy690+L/ZADoeaTltLx+CVuzkeVIPuybK3jrRfw7YZnmdKsVVHAlEPIAEUNlA== dependencies: "@standard-schema/utils" "^0.3.0" @@ -1462,50 +1479,50 @@ resolved "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz" integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== -"@jest/console@30.1.2": - version "30.1.2" - resolved "https://registry.npmjs.org/@jest/console/-/console-30.1.2.tgz" - integrity sha512-BGMAxj8VRmoD0MoA/jo9alMXSRoqW8KPeqOfEo1ncxnRLatTBCpRoOwlwlEMdudp68Q6WSGwYrrLtTGOh8fLzw== +"@jest/console@30.2.0": + version "30.2.0" + resolved "https://registry.npmjs.org/@jest/console/-/console-30.2.0.tgz" + integrity sha512-+O1ifRjkvYIkBqASKWgLxrpEhQAAE7hY77ALLUufSk5717KfOShg6IbqLmdsLMPdUiFvA2kTs0R7YZy+l0IzZQ== dependencies: - "@jest/types" "30.0.5" + "@jest/types" "30.2.0" "@types/node" "*" chalk "^4.1.2" - jest-message-util "30.1.0" - jest-util "30.0.5" + jest-message-util "30.2.0" + jest-util "30.2.0" slash "^3.0.0" -"@jest/core@30.1.3": - version "30.1.3" - resolved "https://registry.npmjs.org/@jest/core/-/core-30.1.3.tgz" - integrity sha512-LIQz7NEDDO1+eyOA2ZmkiAyYvZuo6s1UxD/e2IHldR6D7UYogVq3arTmli07MkENLq6/3JEQjp0mA8rrHHJ8KQ== +"@jest/core@30.2.0": + version "30.2.0" + resolved "https://registry.npmjs.org/@jest/core/-/core-30.2.0.tgz" + integrity sha512-03W6IhuhjqTlpzh/ojut/pDB2LPRygyWX8ExpgHtQA8H/3K7+1vKmcINx5UzeOX1se6YEsBsOHQ1CRzf3fOwTQ== dependencies: - "@jest/console" "30.1.2" + "@jest/console" "30.2.0" "@jest/pattern" "30.0.1" - "@jest/reporters" "30.1.3" - "@jest/test-result" "30.1.3" - "@jest/transform" "30.1.2" - "@jest/types" "30.0.5" + "@jest/reporters" "30.2.0" + "@jest/test-result" "30.2.0" + "@jest/transform" "30.2.0" + "@jest/types" "30.2.0" "@types/node" "*" ansi-escapes "^4.3.2" chalk "^4.1.2" ci-info "^4.2.0" exit-x "^0.2.2" graceful-fs "^4.2.11" - jest-changed-files "30.0.5" - jest-config "30.1.3" - jest-haste-map "30.1.0" - jest-message-util "30.1.0" + jest-changed-files "30.2.0" + jest-config "30.2.0" + jest-haste-map "30.2.0" + jest-message-util "30.2.0" jest-regex-util "30.0.1" - jest-resolve "30.1.3" - jest-resolve-dependencies "30.1.3" - jest-runner "30.1.3" - jest-runtime "30.1.3" - jest-snapshot "30.1.2" - jest-util "30.0.5" - jest-validate "30.1.0" - jest-watcher "30.1.3" + jest-resolve "30.2.0" + jest-resolve-dependencies "30.2.0" + jest-runner "30.2.0" + jest-runtime "30.2.0" + jest-snapshot "30.2.0" + jest-util "30.2.0" + jest-validate "30.2.0" + jest-watcher "30.2.0" micromatch "^4.0.8" - pretty-format "30.0.5" + pretty-format "30.2.0" slash "^3.0.0" "@jest/diff-sequences@30.0.1": @@ -1513,57 +1530,57 @@ resolved "https://registry.npmjs.org/@jest/diff-sequences/-/diff-sequences-30.0.1.tgz" integrity sha512-n5H8QLDJ47QqbCNn5SuFjCRDrOLEZ0h8vAHCK5RL9Ls7Xa8AQLa/YxAc9UjFqoEDM48muwtBGjtMY5cr0PLDCw== -"@jest/environment@30.1.2": - version "30.1.2" - resolved "https://registry.npmjs.org/@jest/environment/-/environment-30.1.2.tgz" - integrity sha512-N8t1Ytw4/mr9uN28OnVf0SYE2dGhaIxOVYcwsf9IInBKjvofAjbFRvedvBBlyTYk2knbJTiEjEJ2PyyDIBnd9w== +"@jest/environment@30.2.0": + version "30.2.0" + resolved "https://registry.npmjs.org/@jest/environment/-/environment-30.2.0.tgz" + integrity sha512-/QPTL7OBJQ5ac09UDRa3EQes4gt1FTEG/8jZ/4v5IVzx+Cv7dLxlVIvfvSVRiiX2drWyXeBjkMSR8hvOWSog5g== dependencies: - "@jest/fake-timers" "30.1.2" - "@jest/types" "30.0.5" + "@jest/fake-timers" "30.2.0" + "@jest/types" "30.2.0" "@types/node" "*" - jest-mock "30.0.5" + jest-mock "30.2.0" -"@jest/expect-utils@30.1.2": - version "30.1.2" - resolved "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-30.1.2.tgz" - integrity sha512-HXy1qT/bfdjCv7iC336ExbqqYtZvljrV8odNdso7dWK9bSeHtLlvwWWC3YSybSPL03Gg5rug6WLCZAZFH72m0A== +"@jest/expect-utils@30.2.0": + version "30.2.0" + resolved "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-30.2.0.tgz" + integrity sha512-1JnRfhqpD8HGpOmQp180Fo9Zt69zNtC+9lR+kT7NVL05tNXIi+QC8Csz7lfidMoVLPD3FnOtcmp0CEFnxExGEA== dependencies: "@jest/get-type" "30.1.0" -"@jest/expect@30.1.2": - version "30.1.2" - resolved "https://registry.npmjs.org/@jest/expect/-/expect-30.1.2.tgz" - integrity sha512-tyaIExOwQRCxPCGNC05lIjWJztDwk2gPDNSDGg1zitXJJ8dC3++G/CRjE5mb2wQsf89+lsgAgqxxNpDLiCViTA== +"@jest/expect@30.2.0": + version "30.2.0" + resolved "https://registry.npmjs.org/@jest/expect/-/expect-30.2.0.tgz" + integrity sha512-V9yxQK5erfzx99Sf+7LbhBwNWEZ9eZay8qQ9+JSC0TrMR1pMDHLMY+BnVPacWU6Jamrh252/IKo4F1Xn/zfiqA== dependencies: - expect "30.1.2" - jest-snapshot "30.1.2" + expect "30.2.0" + jest-snapshot "30.2.0" -"@jest/fake-timers@30.1.2": - version "30.1.2" - resolved "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-30.1.2.tgz" - integrity sha512-Beljfv9AYkr9K+ETX9tvV61rJTY706BhBUtiaepQHeEGfe0DbpvUA5Z3fomwc5Xkhns6NWrcFDZn+72fLieUnA== +"@jest/fake-timers@30.2.0": + version "30.2.0" + resolved "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-30.2.0.tgz" + integrity sha512-HI3tRLjRxAbBy0VO8dqqm7Hb2mIa8d5bg/NJkyQcOk7V118ObQML8RC5luTF/Zsg4474a+gDvhce7eTnP4GhYw== dependencies: - "@jest/types" "30.0.5" + "@jest/types" "30.2.0" "@sinonjs/fake-timers" "^13.0.0" "@types/node" "*" - jest-message-util "30.1.0" - jest-mock "30.0.5" - jest-util "30.0.5" + jest-message-util "30.2.0" + jest-mock "30.2.0" + jest-util "30.2.0" "@jest/get-type@30.1.0": version "30.1.0" resolved "https://registry.npmjs.org/@jest/get-type/-/get-type-30.1.0.tgz" integrity sha512-eMbZE2hUnx1WV0pmURZY9XoXPkUYjpc55mb0CrhtdWLtzMQPFvu/rZkTLZFTsdaVQa+Tr4eWAteqcUzoawq/uA== -"@jest/globals@30.1.2": - version "30.1.2" - resolved "https://registry.npmjs.org/@jest/globals/-/globals-30.1.2.tgz" - integrity sha512-teNTPZ8yZe3ahbYnvnVRDeOjr+3pu2uiAtNtrEsiMjVPPj+cXd5E/fr8BL7v/T7F31vYdEHrI5cC/2OoO/vM9A== +"@jest/globals@30.2.0": + version "30.2.0" + resolved "https://registry.npmjs.org/@jest/globals/-/globals-30.2.0.tgz" + integrity sha512-b63wmnKPaK+6ZZfpYhz9K61oybvbI1aMcIs80++JI1O1rR1vaxHUCNqo3ITu6NU0d4V34yZFoHMn/uoKr/Rwfw== dependencies: - "@jest/environment" "30.1.2" - "@jest/expect" "30.1.2" - "@jest/types" "30.0.5" - jest-mock "30.0.5" + "@jest/environment" "30.2.0" + "@jest/expect" "30.2.0" + "@jest/types" "30.2.0" + jest-mock "30.2.0" "@jest/pattern@30.0.1": version "30.0.1" @@ -1573,16 +1590,16 @@ "@types/node" "*" jest-regex-util "30.0.1" -"@jest/reporters@30.1.3": - version "30.1.3" - resolved "https://registry.npmjs.org/@jest/reporters/-/reporters-30.1.3.tgz" - integrity sha512-VWEQmJWfXMOrzdFEOyGjUEOuVXllgZsoPtEHZzfdNz18RmzJ5nlR6kp8hDdY8dDS1yGOXAY7DHT+AOHIPSBV0w== +"@jest/reporters@30.2.0": + version "30.2.0" + resolved "https://registry.npmjs.org/@jest/reporters/-/reporters-30.2.0.tgz" + integrity sha512-DRyW6baWPqKMa9CzeiBjHwjd8XeAyco2Vt8XbcLFjiwCOEKOvy82GJ8QQnJE9ofsxCMPjH4MfH8fCWIHHDKpAQ== dependencies: "@bcoe/v8-coverage" "^0.2.3" - "@jest/console" "30.1.2" - "@jest/test-result" "30.1.3" - "@jest/transform" "30.1.2" - "@jest/types" "30.0.5" + "@jest/console" "30.2.0" + "@jest/test-result" "30.2.0" + "@jest/transform" "30.2.0" + "@jest/types" "30.2.0" "@jridgewell/trace-mapping" "^0.3.25" "@types/node" "*" chalk "^4.1.2" @@ -1595,9 +1612,9 @@ istanbul-lib-report "^3.0.0" istanbul-lib-source-maps "^5.0.0" istanbul-reports "^3.1.3" - jest-message-util "30.1.0" - jest-util "30.0.5" - jest-worker "30.1.0" + jest-message-util "30.2.0" + jest-util "30.2.0" + jest-worker "30.2.0" slash "^3.0.0" string-length "^4.0.2" v8-to-istanbul "^9.0.1" @@ -1609,12 +1626,12 @@ dependencies: "@sinclair/typebox" "^0.34.0" -"@jest/snapshot-utils@30.1.2": - version "30.1.2" - resolved "https://registry.npmjs.org/@jest/snapshot-utils/-/snapshot-utils-30.1.2.tgz" - integrity sha512-vHoMTpimcPSR7OxS2S0V1Cpg8eKDRxucHjoWl5u4RQcnxqQrV3avETiFpl8etn4dqxEGarBeHbIBety/f8mLXw== +"@jest/snapshot-utils@30.2.0": + version "30.2.0" + resolved "https://registry.npmjs.org/@jest/snapshot-utils/-/snapshot-utils-30.2.0.tgz" + integrity sha512-0aVxM3RH6DaiLcjj/b0KrIBZhSX1373Xci4l3cW5xiUWPctZ59zQ7jj4rqcJQ/Z8JuN/4wX3FpJSa3RssVvCug== dependencies: - "@jest/types" "30.0.5" + "@jest/types" "30.2.0" chalk "^4.1.2" graceful-fs "^4.2.11" natural-compare "^1.4.0" @@ -1628,51 +1645,51 @@ callsites "^3.1.0" graceful-fs "^4.2.11" -"@jest/test-result@30.1.3": - version "30.1.3" - resolved "https://registry.npmjs.org/@jest/test-result/-/test-result-30.1.3.tgz" - integrity sha512-P9IV8T24D43cNRANPPokn7tZh0FAFnYS2HIfi5vK18CjRkTDR9Y3e1BoEcAJnl4ghZZF4Ecda4M/k41QkvurEQ== +"@jest/test-result@30.2.0": + version "30.2.0" + resolved "https://registry.npmjs.org/@jest/test-result/-/test-result-30.2.0.tgz" + integrity sha512-RF+Z+0CCHkARz5HT9mcQCBulb1wgCP3FBvl9VFokMX27acKphwyQsNuWH3c+ojd1LeWBLoTYoxF0zm6S/66mjg== dependencies: - "@jest/console" "30.1.2" - "@jest/types" "30.0.5" + "@jest/console" "30.2.0" + "@jest/types" "30.2.0" "@types/istanbul-lib-coverage" "^2.0.6" collect-v8-coverage "^1.0.2" -"@jest/test-sequencer@30.1.3": - version "30.1.3" - resolved "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-30.1.3.tgz" - integrity sha512-82J+hzC0qeQIiiZDThh+YUadvshdBswi5nuyXlEmXzrhw5ZQSRHeQ5LpVMD/xc8B3wPePvs6VMzHnntxL+4E3w== +"@jest/test-sequencer@30.2.0": + version "30.2.0" + resolved "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-30.2.0.tgz" + integrity sha512-wXKgU/lk8fKXMu/l5Hog1R61bL4q5GCdT6OJvdAFz1P+QrpoFuLU68eoKuVc4RbrTtNnTL5FByhWdLgOPSph+Q== dependencies: - "@jest/test-result" "30.1.3" + "@jest/test-result" "30.2.0" graceful-fs "^4.2.11" - jest-haste-map "30.1.0" + jest-haste-map "30.2.0" slash "^3.0.0" -"@jest/transform@30.1.2": - version "30.1.2" - resolved "https://registry.npmjs.org/@jest/transform/-/transform-30.1.2.tgz" - integrity sha512-UYYFGifSgfjujf1Cbd3iU/IQoSd6uwsj8XHj5DSDf5ERDcWMdJOPTkHWXj4U+Z/uMagyOQZ6Vne8C4nRIrCxqA== +"@jest/transform@30.2.0": + version "30.2.0" + resolved "https://registry.npmjs.org/@jest/transform/-/transform-30.2.0.tgz" + integrity sha512-XsauDV82o5qXbhalKxD7p4TZYYdwcaEXC77PPD2HixEFF+6YGppjrAAQurTl2ECWcEomHBMMNS9AH3kcCFx8jA== dependencies: "@babel/core" "^7.27.4" - "@jest/types" "30.0.5" + "@jest/types" "30.2.0" "@jridgewell/trace-mapping" "^0.3.25" - babel-plugin-istanbul "^7.0.0" + babel-plugin-istanbul "^7.0.1" chalk "^4.1.2" convert-source-map "^2.0.0" fast-json-stable-stringify "^2.1.0" graceful-fs "^4.2.11" - jest-haste-map "30.1.0" + jest-haste-map "30.2.0" jest-regex-util "30.0.1" - jest-util "30.0.5" + jest-util "30.2.0" micromatch "^4.0.8" pirates "^4.0.7" slash "^3.0.0" write-file-atomic "^5.0.1" -"@jest/types@30.0.5": - version "30.0.5" - resolved "https://registry.npmjs.org/@jest/types/-/types-30.0.5.tgz" - integrity sha512-aREYa3aku9SSnea4aX6bhKn4bgv3AXkgijoQgbYV3yvbiGt6z+MQ85+6mIhx9DsKW2BuB/cLR/A+tcMThx+KLQ== +"@jest/types@30.2.0": + version "30.2.0" + resolved "https://registry.npmjs.org/@jest/types/-/types-30.2.0.tgz" + integrity sha512-H9xg1/sfVvyfU7o3zMfBEjQ1gcsdeTMgqHoYdN79tuLqfTtuu7WckRA1R5whDwOzxaZAeMKTYWqP+WCAi0CHsg== dependencies: "@jest/pattern" "30.0.1" "@jest/schemas" "30.0.5" @@ -1764,12 +1781,12 @@ resolved "https://registry.npmjs.org/@pkgr/core/-/core-0.2.9.tgz" integrity sha512-QNqXyfVS2wm9hweSYD2O7F0G06uurj9kZ96TRQE5Y9hU7+tgdZwIkbAKc5Ocy1HxEY2kuDQa6cQ1WRs/O5LFKA== -"@playwright/test@^1.55.0": - version "1.55.0" - resolved "https://registry.npmjs.org/@playwright/test/-/test-1.55.0.tgz" - integrity sha512-04IXzPwHrW69XusN/SIdDdKZBzMfOT9UNT/YiJit/xpy2VuAoB8NHc8Aplb96zsWDddLnbkPL3TsmrS04ZU2xQ== +"@playwright/test@^1.56.1": + version "1.56.1" + resolved "https://registry.npmjs.org/@playwright/test/-/test-1.56.1.tgz" + integrity sha512-vSMYtL/zOcFpvJCW71Q/OEGQb7KYBPAdKh35WNSkaZA75JlAO8ED8UN6GUNTm3drWomcbcqRPFqQbLae8yBTdg== dependencies: - playwright "1.55.0" + playwright "1.56.1" "@popperjs/core@^2.0.0", "@popperjs/core@^2.11.8": version "2.11.8" @@ -1796,10 +1813,10 @@ resolved "https://registry.npmjs.org/@radix-ui/react-use-layout-effect/-/react-use-layout-effect-1.1.1.tgz" integrity sha512-RbJRS4UWQFkzHTTwVymMTUv8EqYhOp8dOOviLj2ugtTiXRaRQS7GLGxZTLL1jWhMeoSCf5zmcZkqTl9IiYfXcQ== -"@rolldown/pluginutils@1.0.0-beta.35": - version "1.0.0-beta.35" - resolved "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-beta.35.tgz" - integrity sha512-slYrCpoxJUqzFDDNlvrOYRazQUNRvWPjXA17dAOISY3rDMxX6k8K4cj2H+hEYMHF81HO3uNd5rHVigAWRM5dSg== +"@rolldown/pluginutils@1.0.0-beta.38": + version "1.0.0-beta.38" + resolved "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-beta.38.tgz" + integrity sha512-N/ICGKleNhA5nc9XXQG/kkKHJ7S55u0x0XUJbbkmdCnFuoRkM1Il12q9q0eX19+M7KKUEPw/daUPIRnxhcxAIw== "@rollup/plugin-babel@^5.2.0": version "5.3.1" @@ -1999,6 +2016,37 @@ magic-string "^0.25.0" string.prototype.matchall "^4.0.6" +"@tanstack/devtools-event-client@^0.3.2": + version "0.3.3" + resolved "https://registry.npmjs.org/@tanstack/devtools-event-client/-/devtools-event-client-0.3.3.tgz" + integrity sha512-RfV+OPV/M3CGryYqTue684u10jUt55PEqeBOnOtCe6tAmHI9Iqyc8nHeDhWPEV9715gShuauFVaMc9RiUVNdwg== + +"@tanstack/form-core@1.24.3": + version "1.24.3" + resolved "https://registry.npmjs.org/@tanstack/form-core/-/form-core-1.24.3.tgz" + integrity sha512-e+HzSD49NWr4aIqJWtPPzmi+/phBJAP3nSPN8dvxwmJWqAxuB/cH138EcmCFf3+oA7j3BXvwvTY0I+8UweGPjQ== + dependencies: + "@tanstack/devtools-event-client" "^0.3.2" + "@tanstack/store" "^0.7.7" + +"@tanstack/react-form@^1.23.6": + version "1.23.7" + resolved "https://registry.npmjs.org/@tanstack/react-form/-/react-form-1.23.7.tgz" + integrity sha512-p/j9Gi2+s135sOjj48RjM+6xZQr1FVpliQlETLYBEGmmmxWHgYYs2b62mTDSnuv7AqtuZhpQ+t0CRFVfbQLsFA== + dependencies: + "@tanstack/form-core" "1.24.3" + "@tanstack/react-store" "^0.7.7" + decode-formdata "^0.9.0" + devalue "^5.3.2" + +"@tanstack/react-store@^0.7.7": + version "0.7.7" + resolved "https://registry.npmjs.org/@tanstack/react-store/-/react-store-0.7.7.tgz" + integrity sha512-qqT0ufegFRDGSof9D/VqaZgjNgp4tRPHZIJq2+QIHkMUtHjaJ0lYrrXjeIUJvjnTbgPfSD1XgOMEt0lmANn6Zg== + dependencies: + "@tanstack/store" "0.7.7" + use-sync-external-store "^1.5.0" + "@tanstack/react-table@^8.21.3": version "8.21.3" resolved "https://registry.npmjs.org/@tanstack/react-table/-/react-table-8.21.3.tgz" @@ -2013,6 +2061,11 @@ dependencies: "@tanstack/virtual-core" "3.13.12" +"@tanstack/store@^0.7.7", "@tanstack/store@0.7.7": + version "0.7.7" + resolved "https://registry.npmjs.org/@tanstack/store/-/store-0.7.7.tgz" + integrity sha512-xa6pTan1bcaqYDS9BDpSiS63qa6EoDkPN9RsRaxHuDdVDNntzq3xNwR5YKTU/V3SkSyC9T4YVOPh2zRQN0nhIQ== + "@tanstack/table-core@8.21.3": version "8.21.3" resolved "https://registry.npmjs.org/@tanstack/table-core/-/table-core-8.21.3.tgz" @@ -2024,9 +2077,9 @@ integrity sha512-1YBOJfRHV4sXUmWsFSf5rQor4Ss82G8dQWLRbnk3GA4jeP8hQt1hxXh0tmflpC0dz3VgEv/1+qwPyLeWkQuPFA== "@tybys/wasm-util@^0.10.0": - version "0.10.0" - resolved "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.0.tgz" - integrity sha512-VyyPYFlOMNylG45GoAe0xDoLwWuowvf92F9kySqzYh8vmYm7D2u4iUJKa1tOUpS70Ku13ASrOkS4ScXFsTaCNQ== + version "0.10.1" + resolved "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.1.tgz" + integrity sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg== dependencies: tslib "^2.4.0" @@ -2127,12 +2180,12 @@ resolved "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz" integrity sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ== -"@types/node@*", "@types/node@^20.19.0 || >=22.12.0", "@types/node@^24.5.2": - version "24.5.2" - resolved "https://registry.npmjs.org/@types/node/-/node-24.5.2.tgz" - integrity sha512-FYxk1I7wPv3K2XBaoyH2cTnocQEu8AOZ60hPbsyukMPLv5/5qr7V1i8PLHdl6Zf87I+xZXFvPCXYjiTFq+YSDQ== +"@types/node@*", "@types/node@^20.19.0 || >=22.12.0", "@types/node@^24.8.1": + version "24.8.1" + resolved "https://registry.npmjs.org/@types/node/-/node-24.8.1.tgz" + integrity sha512-alv65KGRadQVfVcG69MuB4IzdYVpRwMG/mq8KWOaoOdyY617P5ivaDiMCGOFDWD2sAn5Q0mR3mRtUOgm99hL9Q== dependencies: - undici-types "~7.12.0" + undici-types "~7.14.0" "@types/parse-json@^4.0.0": version "4.0.0" @@ -2403,15 +2456,15 @@ resolved "https://registry.npmjs.org/@unrs/resolver-binding-win32-x64-msvc/-/resolver-binding-win32-x64-msvc-1.11.1.tgz" integrity sha512-lrW200hZdbfRtztbygyaq/6jP6AKE8qQN2KvPcJ+x7wiD038YtnYtZ82IMNJ69GJibV7bwL3y9FgK+5w/pYt6g== -"@vitejs/plugin-react@^5.0.3": - version "5.0.3" - resolved "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-5.0.3.tgz" - integrity sha512-PFVHhosKkofGH0Yzrw1BipSedTH68BFF8ZWy1kfUpCtJcouXXY0+racG8sExw7hw0HoX36813ga5o3LTWZ4FUg== +"@vitejs/plugin-react@^5.0.4": + version "5.0.4" + resolved "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-5.0.4.tgz" + integrity sha512-La0KD0vGkVkSk6K+piWDKRUyg8Rl5iAIKRMH0vMJI0Eg47bq1eOxmoObAaQG37WMW9MSyk7Cs8EIWwJC1PtzKA== dependencies: "@babel/core" "^7.28.4" "@babel/plugin-transform-react-jsx-self" "^7.27.1" "@babel/plugin-transform-react-jsx-source" "^7.27.1" - "@rolldown/pluginutils" "1.0.0-beta.35" + "@rolldown/pluginutils" "1.0.0-beta.38" "@types/babel__core" "^7.20.5" react-refresh "^0.17.0" @@ -2423,40 +2476,41 @@ "@typescript-eslint/scope-manager" "^8.41.0" "@typescript-eslint/utils" "^8.24.1" -"@zakodium/nmr-types@^0.1.1": - version "0.1.1" - resolved "https://registry.npmjs.org/@zakodium/nmr-types/-/nmr-types-0.1.1.tgz" - integrity sha512-FU3RlFkKMJcIE+Pb94fl4nxFu3mwVF1IBAqlQ7khbiIOh/paLVnL+cLn4WfycL/0IvVMhkaMeLPtopx9CEFLPA== +"@zakodium/nmr-types@^0.2.1": + version "0.2.1" + resolved "https://registry.npmjs.org/@zakodium/nmr-types/-/nmr-types-0.2.1.tgz" + integrity sha512-y7HRcJ4VpR0kFZ/r4bckm6uGJRTk/X4CAA3Gqj7FdyaulQ7JqiIl+Bi1hfCpjJFyHvFImXHKxAMYfuXxDYBWjg== dependencies: ml-peak-shape-generator "^4.2.0" - ml-signal-processing "^2.0.0" + ml-signal-processing "^2.1.0" + ml-spectra-processing "^14.17.1" -"@zakodium/nmrium-core-plugins@^0.1.10": - version "0.1.10" - resolved "https://registry.npmjs.org/@zakodium/nmrium-core-plugins/-/nmrium-core-plugins-0.1.10.tgz" - integrity sha512-f6y6n2bCoN4pUTAbaKl9NNZO1vd86ZFzyeZ8eSAYpyp4z29Pu4r8qBsgKSrJwW7VY916bCZmk++pw25cXyGSuQ== +"@zakodium/nmrium-core-plugins@^0.3.6": + version "0.3.6" + resolved "https://registry.npmjs.org/@zakodium/nmrium-core-plugins/-/nmrium-core-plugins-0.3.6.tgz" + integrity sha512-06ZQRamulnr9vPo1Sp1PW/uHSFpm14C/ml4lRAcq/lzHsU2Q9bXb+21PtfeHnl4ZlRK+hMaSUW4blC4dqiRVKg== dependencies: "@date-fns/utc" "^2.1.1" - "@zakodium/nmrium-core" "^0.1.7" + "@zakodium/nmrium-core" "^0.2.3" cheminfo-types "^1.8.1" convert-to-jcamp "^6.0.0" date-fns "^4.1.0" file-collection "^5.1.1" gyromagnetic-ratio "^2.0.0" is-any-array "^2.0.1" - jcampconverter "^11.0.5" + jcampconverter "^11.2.1" linear-sum-assignment "^1.0.7" lodash.merge "^4.6.2" ml-spectra-processing "^14.17.1" - nmr-processing "^19.1.0" - openchemlib "^9.7.0" - openchemlib-utils "^8.3.1" + nmr-processing "^19.4.1" + openchemlib "^9.10.0" + openchemlib-utils "^8.6.0" sdf-parser "^7.0.4" -"@zakodium/nmrium-core@^0.1.7": - version "0.1.7" - resolved "https://registry.npmjs.org/@zakodium/nmrium-core/-/nmrium-core-0.1.7.tgz" - integrity sha512-aKSXINlAcNyXjo2gs1/ePgfB6SbW2SRYle8/zjg0My8nvsZozbsjW+VtM/QXGEfYthgyw3HcsIr489AhUyEH9A== +"@zakodium/nmrium-core@^0.2.3": + version "0.2.3" + resolved "https://registry.npmjs.org/@zakodium/nmrium-core/-/nmrium-core-0.2.3.tgz" + integrity sha512-dnPfe60iZDeeOTyuFRlGYtLtq+BJpxYj8ZVjk8G5ytXxguZhv+E1hqa9ReJDK0rj43lBVUtw+7ntVc7Xyn101Q== dependencies: cheminfo-types "^1.8.1" fifo-logger "^2.0.1" @@ -2466,15 +2520,24 @@ ml-spectra-processing "^14.17.1" nmr-correlation "^2.3.5" +"@zakodium/pdnd-esm@^1.0.2": + version "1.0.2" + resolved "https://registry.npmjs.org/@zakodium/pdnd-esm/-/pdnd-esm-1.0.2.tgz" + integrity sha512-eyamAVS2KNGx89hyZEWkGb35Xir89WQP4AvoDEDZmMlY6EdvHTZc5XwNcJmBPXquZ9cy6Bw0t/PdOxsvM/tYhA== + dependencies: + "@atlaskit/pragmatic-drag-and-drop" "^1.7.7" + "@atlaskit/pragmatic-drag-and-drop-auto-scroll" "^2.1.2" + "@atlaskit/pragmatic-drag-and-drop-hitbox" "^1.1.0" + "@zeit/schemas@2.36.0": version "2.36.0" resolved "https://registry.npmjs.org/@zeit/schemas/-/schemas-2.36.0.tgz" integrity sha512-7kjMwcChYEzMKjeex9ZFXkt1AyNov9R5HZtjBKVsmVpw7pa7ZtlCGvCBC2vnnXctaYN+aRI61HjIqeetZW5ROg== -"@zip.js/zip.js@^2.7.72": - version "2.7.72" - resolved "https://registry.npmjs.org/@zip.js/zip.js/-/zip.js-2.7.72.tgz" - integrity sha512-3/A4JwrgkvGBlCxtItjxs8HrNbuTAAl/zlGkV6tC5Fb5k5nk4x2Dqxwl/YnUys5Ch+QB01eJ8Q5K/J2uXfy9Vw== +"@zip.js/zip.js@^2.8.7", "@zip.js/zip.js@^2.8.8": + version "2.8.8" + resolved "https://registry.npmjs.org/@zip.js/zip.js/-/zip.js-2.8.8.tgz" + integrity sha512-v0KutehhSAuaoFAFGLp+V4+UiZ1mIxQ8vNOYMD7k9ZJaBbtQV49MYlg568oRLiuwWDg2Di58Iw3Q0ESNWR+5JA== acorn-jsx@^5.3.2: version "5.3.2" @@ -2715,23 +2778,23 @@ available-typed-arrays@^1.0.7: dependencies: possible-typed-array-names "^1.0.0" -babel-jest@30.1.2: - version "30.1.2" - resolved "https://registry.npmjs.org/babel-jest/-/babel-jest-30.1.2.tgz" - integrity sha512-IQCus1rt9kaSh7PQxLYRY5NmkNrNlU2TpabzwV7T2jljnpdHOcmnYYv8QmE04Li4S3a2Lj8/yXyET5pBarPr6g== +babel-jest@30.2.0: + version "30.2.0" + resolved "https://registry.npmjs.org/babel-jest/-/babel-jest-30.2.0.tgz" + integrity sha512-0YiBEOxWqKkSQWL9nNGGEgndoeL0ZpWrbLMNL5u/Kaxrli3Eaxlt3ZtIDktEvXt4L/R9r3ODr2zKwGM/2BjxVw== dependencies: - "@jest/transform" "30.1.2" + "@jest/transform" "30.2.0" "@types/babel__core" "^7.20.5" - babel-plugin-istanbul "^7.0.0" - babel-preset-jest "30.0.1" + babel-plugin-istanbul "^7.0.1" + babel-preset-jest "30.2.0" chalk "^4.1.2" graceful-fs "^4.2.11" slash "^3.0.0" -babel-plugin-istanbul@^7.0.0: - version "7.0.0" - resolved "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-7.0.0.tgz" - integrity sha512-C5OzENSx/A+gt7t4VH1I2XsflxyPUmXRFPKBxt33xncdOmq7oROVM3bZv9Ysjjkv8OJYDMa+tKuKMvqU/H3xdw== +babel-plugin-istanbul@^7.0.1: + version "7.0.1" + resolved "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-7.0.1.tgz" + integrity sha512-D8Z6Qm8jCvVXtIRkBnqNHX0zJ37rQcFJ9u8WOS6tkYOsRdHBzypCstaxWiu5ZIlqQtviRYbgnRLSoCEvjqcqbA== dependencies: "@babel/helper-plugin-utils" "^7.0.0" "@istanbuljs/load-nyc-config" "^1.0.0" @@ -2739,13 +2802,11 @@ babel-plugin-istanbul@^7.0.0: istanbul-lib-instrument "^6.0.2" test-exclude "^6.0.0" -babel-plugin-jest-hoist@30.0.1: - version "30.0.1" - resolved "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-30.0.1.tgz" - integrity sha512-zTPME3pI50NsFW8ZBaVIOeAxzEY7XHlmWeXXu9srI+9kNfzCUTy8MFan46xOGZY8NZThMqq+e3qZUKsvXbasnQ== +babel-plugin-jest-hoist@30.2.0: + version "30.2.0" + resolved "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-30.2.0.tgz" + integrity sha512-ftzhzSGMUnOzcCXd6WHdBGMyuwy15Wnn0iyyWGKgBDLxf9/s5ABuraCSpBX2uG0jUg4rqJnxsLc5+oYBqoxVaA== dependencies: - "@babel/template" "^7.27.2" - "@babel/types" "^7.27.3" "@types/babel__core" "^7.20.5" babel-plugin-macros@^3.1.0: @@ -2781,7 +2842,7 @@ babel-plugin-polyfill-regenerator@^0.6.1: dependencies: "@babel/helper-define-polyfill-provider" "^0.6.3" -babel-preset-current-node-syntax@^1.1.0: +babel-preset-current-node-syntax@^1.2.0: version "1.2.0" resolved "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.2.0.tgz" integrity sha512-E/VlAEzRrsLEb2+dv8yp3bo4scof3l9nR4lrld+Iy5NyVqgVYUJnDAmunkhPMisRI32Qc4iRiz425d8vM++2fg== @@ -2802,13 +2863,13 @@ babel-preset-current-node-syntax@^1.1.0: "@babel/plugin-syntax-private-property-in-object" "^7.14.5" "@babel/plugin-syntax-top-level-await" "^7.14.5" -babel-preset-jest@30.0.1: - version "30.0.1" - resolved "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-30.0.1.tgz" - integrity sha512-+YHejD5iTWI46cZmcc/YtX4gaKBtdqCHCVfuVinizVpbmyjO3zYmeuyFdfA8duRqQZfgCAMlsfmkVbJ+e2MAJw== +babel-preset-jest@30.2.0: + version "30.2.0" + resolved "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-30.2.0.tgz" + integrity sha512-US4Z3NOieAQumwFnYdUWKvUKh8+YSnS/gB3t6YBiz0bskpu7Pine8pPCheNxlPEW4wnUkma2a94YuW2q3guvCQ== dependencies: - babel-plugin-jest-hoist "30.0.1" - babel-preset-current-node-syntax "^1.1.0" + babel-plugin-jest-hoist "30.2.0" + babel-preset-current-node-syntax "^1.2.0" balanced-match@^1.0.0: version "1.0.2" @@ -3117,9 +3178,9 @@ co@^4.6.0: integrity sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ== collect-v8-coverage@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz" - integrity sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q== + version "1.0.3" + resolved "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.3.tgz" + integrity sha512-1L5aqIkwPfiodaMgQunkF1zRhNqifHBmtbbbxcr6yVxxBnliw4TDOW6NxpO8DJLgJ16OT+Y4ztZqP6p/FtXnAw== color-convert@^2.0.1: version "2.0.1" @@ -3138,11 +3199,6 @@ commander@^2.20.0: resolved "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz" integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== -commander@7: - version "7.2.0" - resolved "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz" - integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw== - comment-parser@1.4.1: version "1.4.1" resolved "https://registry.npmjs.org/comment-parser/-/comment-parser-1.4.1.tgz" @@ -3242,10 +3298,10 @@ cosmiconfig@^7.0.0: path-type "^4.0.0" yaml "^1.10.0" -cross-env@^10.0.0: - version "10.0.0" - resolved "https://registry.npmjs.org/cross-env/-/cross-env-10.0.0.tgz" - integrity sha512-aU8qlEK/nHYtVuN4p7UQgAwVljzMg8hB4YK5ThRqD2l/ziSnryncPNn7bMLt5cFYsKVKBh8HqLqyCoTupEUu7Q== +cross-env@^10.1.0: + version "10.1.0" + resolved "https://registry.npmjs.org/cross-env/-/cross-env-10.1.0.tgz" + integrity sha512-GsYosgnACZTADcmEyJctkJIoqAhHjttw7RsFrVoJNXbsWWqaq6Ym+7kZjq6mS45O0jij6vtiReppKQEtqWy6Dw== dependencies: "@epic-web/invariant" "^1.0.0" cross-spawn "^7.0.6" @@ -3274,61 +3330,24 @@ cuthill-mckee@^1.0.0: resolved "https://registry.npmjs.org/cuthill-mckee/-/cuthill-mckee-1.0.0.tgz" integrity sha512-ehXCHYXZhZzDZmVQE/P9wQ7XPOn1G3e+pVqcqXvYykBL8Lg7HFm2ewD3TZseOMWiM9bNU0u4UWSV/dAzf+unug== -d3-array@^3.2.0, d3-array@^3.2.4, "d3-array@2 - 3", "d3-array@2.10.0 - 3", "d3-array@2.5.0 - 3", d3-array@3: +d3-array@^3.2.4, "d3-array@2 - 3", "d3-array@2.10.0 - 3": version "3.2.4" resolved "https://registry.npmjs.org/d3-array/-/d3-array-3.2.4.tgz" integrity sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg== dependencies: internmap "1 - 2" -d3-axis@3: - version "3.0.0" - resolved "https://registry.npmjs.org/d3-axis/-/d3-axis-3.0.0.tgz" - integrity sha512-IH5tgjV4jE/GhHkRV0HiVYPDtvfjHQlQfJHs0usq7M30XcSBvOotpmH1IgkcXsO/5gEQZD43B//fc7SRT5S+xw== - -d3-brush@3: - version "3.0.0" - resolved "https://registry.npmjs.org/d3-brush/-/d3-brush-3.0.0.tgz" - integrity sha512-ALnjWlVYkXsVIGlOsuWH1+3udkYFI48Ljihfnh8FZPF2QS9o+PzGLBslO0PjzVoHLZ2KCVgAM8NVkXPJB2aNnQ== - dependencies: - d3-dispatch "1 - 3" - d3-drag "2 - 3" - d3-interpolate "1 - 3" - d3-selection "3" - d3-transition "3" - -d3-chord@3: - version "3.0.1" - resolved "https://registry.npmjs.org/d3-chord/-/d3-chord-3.0.1.tgz" - integrity sha512-VE5S6TNa+j8msksl7HwjxMHDM2yNK3XCkusIlpX5kwauBfXuyLAtNg9jCp/iHH61tgI4sb6R/EIMWCqEIdjT/g== - dependencies: - d3-path "1 - 3" - -"d3-color@1 - 3", d3-color@3, d3-color@3.1.0: +"d3-color@1 - 3", d3-color@3.1.0: version "3.1.0" resolved "https://registry.npmjs.org/d3-color/-/d3-color-3.1.0.tgz" integrity sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA== -d3-contour@4: - version "4.0.2" - resolved "https://registry.npmjs.org/d3-contour/-/d3-contour-4.0.2.tgz" - integrity sha512-4EzFTRIikzs47RGmdxbeUvLWtGedDUNkTcmzoeyg4sP/dvCexO47AaQL7VKy/gul85TOxw+IBgA8US2xwbToNA== - dependencies: - d3-array "^3.2.0" - -d3-delaunay@6: - version "6.0.4" - resolved "https://registry.npmjs.org/d3-delaunay/-/d3-delaunay-6.0.4.tgz" - integrity sha512-mdjtIZ1XLAM8bm/hx3WwjfHt6Sggek7qH043O8KEjDXN40xi3vx/6pYSVTwLjEgiXQTbvaouWKynLBiUZ6SK6A== - dependencies: - delaunator "5" - -"d3-dispatch@1 - 3", d3-dispatch@3: +"d3-dispatch@1 - 3": version "3.0.1" resolved "https://registry.npmjs.org/d3-dispatch/-/d3-dispatch-3.0.1.tgz" integrity sha512-rzUyPU/S7rwUflMyLc1ETDeBj0NRuHKKAcvukozwhshr6g6c5d8zh4c2gQjY2bZ0dXeGLWc1PF174P2tVvKhfg== -"d3-drag@2 - 3", d3-drag@3: +"d3-drag@2 - 3": version "3.0.0" resolved "https://registry.npmjs.org/d3-drag/-/d3-drag-3.0.0.tgz" integrity sha512-pWbUJLdETVA8lQNJecMxoXfH6x+mO2UQo8rSmZ+QqxcbyA3hfeprFgIT//HW2nlHChWeIIMwS2Fq+gEARkhTkg== @@ -3336,81 +3355,29 @@ d3-delaunay@6: d3-dispatch "1 - 3" d3-selection "3" -"d3-dsv@1 - 3", d3-dsv@3: - version "3.0.1" - resolved "https://registry.npmjs.org/d3-dsv/-/d3-dsv-3.0.1.tgz" - integrity sha512-UG6OvdI5afDIFP9w4G0mNq50dSOsXHJaRE8arAS5o9ApWnIElp8GZw1Dun8vP8OyHOZ/QJUKUJwxiiCCnUwm+Q== - dependencies: - commander "7" - iconv-lite "0.6" - rw "1" - -"d3-ease@1 - 3", d3-ease@3: +"d3-ease@1 - 3": version "3.0.1" resolved "https://registry.npmjs.org/d3-ease/-/d3-ease-3.0.1.tgz" integrity sha512-wR/XK3D3XcLIZwpbvQwQ5fK+8Ykds1ip7A2Txe0yxncXSdq1L9skcG7blcedkOX+ZcgxGAmLX1FrRGbADwzi0w== -d3-fetch@3: - version "3.0.1" - resolved "https://registry.npmjs.org/d3-fetch/-/d3-fetch-3.0.1.tgz" - integrity sha512-kpkQIM20n3oLVBKGg6oHrUchHM3xODkTzjMoj7aWQFq5QEM+R6E4WkzT5+tojDY7yjez8KgCBRoj4aEr99Fdqw== - dependencies: - d3-dsv "1 - 3" - -d3-force@3: - version "3.0.0" - resolved "https://registry.npmjs.org/d3-force/-/d3-force-3.0.0.tgz" - integrity sha512-zxV/SsA+U4yte8051P4ECydjD/S+qeYtnaIyAs9tgHCqfguma/aAQDjo85A9Z6EKhBirHRJHXIgJUlffT4wdLg== - dependencies: - d3-dispatch "1 - 3" - d3-quadtree "1 - 3" - d3-timer "1 - 3" - -"d3-format@1 - 3", d3-format@3: +"d3-format@1 - 3": version "3.1.0" resolved "https://registry.npmjs.org/d3-format/-/d3-format-3.1.0.tgz" integrity sha512-YyUI6AEuY/Wpt8KWLgZHsIU86atmikuoOmCfommt0LYHiQSPjvX2AcFc38PX0CBpr2RCyZhjex+NS/LPOv6YqA== -d3-geo@3: - version "3.1.1" - resolved "https://registry.npmjs.org/d3-geo/-/d3-geo-3.1.1.tgz" - integrity sha512-637ln3gXKXOwhalDzinUgY83KzNWZRKbYubaG+fGVuc/dxO64RRljtCTnf5ecMyE1RIdtqpkVcq0IbtU2S8j2Q== - dependencies: - d3-array "2.5.0 - 3" - -d3-hierarchy@3: - version "3.1.2" - resolved "https://registry.npmjs.org/d3-hierarchy/-/d3-hierarchy-3.1.2.tgz" - integrity sha512-FX/9frcub54beBdugHjDCdikxThEqjnR93Qt7PvQTOHxyiNCAlvMrHhclk3cD5VeAaq9fxmfRp+CnWw9rEMBuA== - -d3-interpolate@^3.0.1, "d3-interpolate@1 - 3", "d3-interpolate@1.2.0 - 3", d3-interpolate@3: +d3-interpolate@^3.0.1, "d3-interpolate@1 - 3", "d3-interpolate@1.2.0 - 3": version "3.0.1" resolved "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-3.0.1.tgz" integrity sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g== dependencies: d3-color "1 - 3" -d3-path@^3.1.0, "d3-path@1 - 3", d3-path@3: +d3-path@^3.1.0: version "3.1.0" resolved "https://registry.npmjs.org/d3-path/-/d3-path-3.1.0.tgz" integrity sha512-p3KP5HCf/bvjBSSKuXid6Zqijx7wIfNW+J/maPs+iwR35at5JCbLUT0LzF1cnjbCHWhqzQTIN2Jpe8pRebIEFQ== -d3-polygon@3: - version "3.0.1" - resolved "https://registry.npmjs.org/d3-polygon/-/d3-polygon-3.0.1.tgz" - integrity sha512-3vbA7vXYwfe1SYhED++fPUQlWSYTTGmFmQiany/gdbiWgU/iEyQzyymwL9SkJjFFuCS4902BSzewVGsHHmHtXg== - -"d3-quadtree@1 - 3", d3-quadtree@3: - version "3.0.1" - resolved "https://registry.npmjs.org/d3-quadtree/-/d3-quadtree-3.0.1.tgz" - integrity sha512-04xDrxQTDTCFwP5H6hRhsRcb9xxv2RzkcsygFzmkSIOJy3PeRJP7sNk3VRIbKXcog561P9oU0/rVH6vDROAgUw== - -d3-random@3: - version "3.0.1" - resolved "https://registry.npmjs.org/d3-random/-/d3-random-3.0.1.tgz" - integrity sha512-FXMe9GfxTxqd5D6jFsQ+DJ8BJS4E/fT5mqqdjovykEB2oFbTMDVdg1MGFxfQW+FBOGoB++k8swBrgwSHT1cUXQ== - -d3-scale-chromatic@^3.1.0, d3-scale-chromatic@3: +d3-scale-chromatic@^3.1.0: version "3.1.0" resolved "https://registry.npmjs.org/d3-scale-chromatic/-/d3-scale-chromatic-3.1.0.tgz" integrity sha512-A3s5PWiZ9YCXFye1o246KoscMWqf8BsD9eRiJ3He7C9OBaxKhAd5TFCdEx/7VbKtxxTsu//1mMJFrEt572cEyQ== @@ -3418,7 +3385,7 @@ d3-scale-chromatic@^3.1.0, d3-scale-chromatic@3: d3-color "1 - 3" d3-interpolate "1 - 3" -d3-scale@^4.0.2, d3-scale@4: +d3-scale@^4.0.2: version "4.0.2" resolved "https://registry.npmjs.org/d3-scale/-/d3-scale-4.0.2.tgz" integrity sha512-GZW464g1SH7ag3Y7hXjf8RoUuAFIqklOAq3MRl4OaWabTFJY9PN/E1YklhXLh+OQ3fM9yS2nOkCoS+WLZ6kvxQ== @@ -3434,33 +3401,33 @@ d3-scale@^4.0.2, d3-scale@4: resolved "https://registry.npmjs.org/d3-selection/-/d3-selection-3.0.0.tgz" integrity sha512-fmTRWbNMmsmWq6xJV8D19U/gw/bwrHfNXxrIN+HfZgnzqTHp9jOmKMhsTUjXOJnZOdZY9Q28y4yebKzqDKlxlQ== -d3-shape@^3.2.0, d3-shape@3: +d3-shape@^3.2.0: version "3.2.0" resolved "https://registry.npmjs.org/d3-shape/-/d3-shape-3.2.0.tgz" integrity sha512-SaLBuwGm3MOViRq2ABk3eLoxwZELpH6zhl3FbAoJ7Vm1gofKx6El1Ib5z23NUEhF9AsGl7y+dzLe5Cw2AArGTA== dependencies: d3-path "^3.1.0" -"d3-time-format@2 - 4", d3-time-format@4: +"d3-time-format@2 - 4": version "4.1.0" resolved "https://registry.npmjs.org/d3-time-format/-/d3-time-format-4.1.0.tgz" integrity sha512-dJxPBlzC7NugB2PDLwo9Q8JiTR3M3e4/XANkreKSUxF8vvXKqm1Yfq4Q5dl8budlunRVlUUaDUgFt7eA8D6NLg== dependencies: d3-time "1 - 3" -"d3-time@1 - 3", "d3-time@2.1.1 - 3", d3-time@3: +"d3-time@1 - 3", "d3-time@2.1.1 - 3": version "3.1.0" resolved "https://registry.npmjs.org/d3-time/-/d3-time-3.1.0.tgz" integrity sha512-VqKjzBLejbSMT4IgbmVgDjpkYrNWUYJnbCGo874u7MMKIWsILRX+OpX/gTk8MqjpT1A/c6HY2dCA77ZN0lkQ2Q== dependencies: d3-array "2 - 3" -"d3-timer@1 - 3", d3-timer@3: +"d3-timer@1 - 3": version "3.0.1" resolved "https://registry.npmjs.org/d3-timer/-/d3-timer-3.0.1.tgz" integrity sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA== -"d3-transition@2 - 3", d3-transition@3: +"d3-transition@2 - 3": version "3.0.1" resolved "https://registry.npmjs.org/d3-transition/-/d3-transition-3.0.1.tgz" integrity sha512-ApKvfjsSR6tg06xrL434C0WydLr7JewBB3V+/39RMHsaXTOG0zmt/OAXeng5M5LBm0ojmxJrpomQVZ1aPvBL4w== @@ -3471,7 +3438,7 @@ d3-shape@^3.2.0, d3-shape@3: d3-interpolate "1 - 3" d3-timer "1 - 3" -d3-zoom@3: +d3-zoom@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/d3-zoom/-/d3-zoom-3.0.0.tgz" integrity sha512-b8AmV3kfQaqWAuacbPuNbL6vahnOJflOhexLzMMNLga62+/nh0JzvJ0aO/5a5MVgUFGS7Hu1P9P03o3fJkDCyw== @@ -3482,42 +3449,6 @@ d3-zoom@3: d3-selection "2 - 3" d3-transition "2 - 3" -d3@^7.9.0: - version "7.9.0" - resolved "https://registry.npmjs.org/d3/-/d3-7.9.0.tgz" - integrity sha512-e1U46jVP+w7Iut8Jt8ri1YsPOvFpg46k+K8TpCb0P+zjCkjkPnV7WzfDJzMHy1LnA+wj5pLT1wjO901gLXeEhA== - dependencies: - d3-array "3" - d3-axis "3" - d3-brush "3" - d3-chord "3" - d3-color "3" - d3-contour "4" - d3-delaunay "6" - d3-dispatch "3" - d3-drag "3" - d3-dsv "3" - d3-ease "3" - d3-fetch "3" - d3-force "3" - d3-format "3" - d3-geo "3" - d3-hierarchy "3" - d3-interpolate "3" - d3-path "3" - d3-polygon "3" - d3-quadtree "3" - d3-random "3" - d3-scale "4" - d3-scale-chromatic "3" - d3-selection "3" - d3-shape "3" - d3-time "3" - d3-time-format "4" - d3-timer "3" - d3-transition "3" - d3-zoom "3" - data-view-buffer@^1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz" @@ -3571,6 +3502,11 @@ debug@2.6.9: dependencies: ms "2.0.0" +decode-formdata@^0.9.0: + version "0.9.0" + resolved "https://registry.npmjs.org/decode-formdata/-/decode-formdata-0.9.0.tgz" + integrity sha512-q5uwOjR3Um5YD+ZWPOF/1sGHVW9A5rCrRwITQChRXlmPkxDFBqCm4jNTIVdGHNH9OnR+V9MoZVgRhsFb+ARbUw== + dedent@^1.6.0: version "1.7.0" resolved "https://registry.npmjs.org/dedent/-/dedent-1.7.0.tgz" @@ -3609,18 +3545,16 @@ define-properties@^1.1.3, define-properties@^1.2.1: has-property-descriptors "^1.0.0" object-keys "^1.1.1" -delaunator@5: - version "5.0.1" - resolved "https://registry.npmjs.org/delaunator/-/delaunator-5.0.1.tgz" - integrity sha512-8nvh+XBe96aCESrGOqMp/84b13H9cdKbG5P2ejQCh4d4sK9RL4371qou9drQjMhvnPmhWl5hnmqbEE0fXr9Xnw== - dependencies: - robust-predicates "^3.0.2" - detect-newline@^3.1.0: version "3.1.0" resolved "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz" integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA== +devalue@^5.3.2: + version "5.4.1" + resolved "https://registry.npmjs.org/devalue/-/devalue-5.4.1.tgz" + integrity sha512-YtoaOfsqjbZQKGIMRYDWKjUmSB4VJ/RElB+bXZawQAQYAo4xu08GKTMVlsZDTF6R2MbAgjcAQRPI5eIyRAT2OQ== + dlv@^1.1.3: version "1.1.3" resolved "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz" @@ -3886,16 +3820,16 @@ escape-string-regexp@^4.0.0: resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz" integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== -eslint-config-cheminfo-react@^18.0.0: - version "18.0.0" - resolved "https://registry.npmjs.org/eslint-config-cheminfo-react/-/eslint-config-cheminfo-react-18.0.0.tgz" - integrity sha512-zlkJbzDuBXGbp9H0JLxNSXqP8bO5+fr1a+YwCQFtoRQ6vSP9B7yDLqq3Fi+TBjmgIgKuZBeT56JHC+IYsw7EXw== +eslint-config-cheminfo-react@^18.0.1: + version "18.0.1" + resolved "https://registry.npmjs.org/eslint-config-cheminfo-react/-/eslint-config-cheminfo-react-18.0.1.tgz" + integrity sha512-6I0/GhQuuSEIPl5LaXmp6uvOU4XBY2vZzQWfkfUh2Kqs5tZcn04ORdQBF7ZHrFCRtYeKlNO0y+KmGYljYkRQEQ== dependencies: eslint-config-cheminfo "^16.0.0" eslint-plugin-react "^7.37.5" - eslint-plugin-react-hooks "^6.0.0-rc.2" - eslint-plugin-react-refresh "^0.4.20" - eslint-plugin-react-you-might-not-need-an-effect "^0.5.0" + eslint-plugin-react-hooks "^6.1.1" + eslint-plugin-react-refresh "^0.4.23" + eslint-plugin-react-you-might-not-need-an-effect "^0.5.6" globals "^16.4.0" eslint-config-cheminfo-typescript@^20.0.0: @@ -3975,27 +3909,25 @@ eslint-plugin-jsdoc@^56.1.2: semver "^7.7.2" spdx-expression-parse "^4.0.0" -eslint-plugin-react-hooks@^6.0.0-rc.2: - version "6.0.0-rc1" - resolved "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-6.0.0-rc1.tgz" - integrity sha512-I4ntWyjqgGemGtOU85FUdVo00h0i0Y5xvQ7a8EVxyzjOZsxXaxvkKBcYoXbP97QDvDjMzY/nGIvfdB/WRLTGxQ== +eslint-plugin-react-hooks@^6.1.1: + version "6.1.1" + resolved "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-6.1.1.tgz" + integrity sha512-St9EKZzOAQF704nt2oJvAKZHjhrpg25ClQoaAlHmPZuajFldVLqRDW4VBNAS01NzeiQF0m0qhG1ZA807K6aVaQ== dependencies: "@babel/core" "^7.24.4" "@babel/parser" "^7.24.4" - "@babel/plugin-transform-private-methods" "^7.24.4" - hermes-parser "^0.25.1" - zod "^3.22.4" - zod-validation-error "^3.0.3" + zod "^3.22.4 || ^4.0.0" + zod-validation-error "^3.0.3 || ^4.0.0" -eslint-plugin-react-refresh@^0.4.20: - version "0.4.20" - resolved "https://registry.npmjs.org/eslint-plugin-react-refresh/-/eslint-plugin-react-refresh-0.4.20.tgz" - integrity sha512-XpbHQ2q5gUF8BGOX4dHe+71qoirYMhApEPZ7sfhF/dNnOF1UXnCMGZf79SFTBO7Bz5YEIT4TMieSlJBWhP9WBA== +eslint-plugin-react-refresh@^0.4.23: + version "0.4.24" + resolved "https://registry.npmjs.org/eslint-plugin-react-refresh/-/eslint-plugin-react-refresh-0.4.24.tgz" + integrity sha512-nLHIW7TEq3aLrEYWpVaJ1dRgFR+wLDPN8e8FpYAql/bMV2oBEfC37K0gLEGgv9fy66juNShSMV8OkTqzltcG/w== -eslint-plugin-react-you-might-not-need-an-effect@^0.5.0: - version "0.5.0" - resolved "https://registry.npmjs.org/eslint-plugin-react-you-might-not-need-an-effect/-/eslint-plugin-react-you-might-not-need-an-effect-0.5.0.tgz" - integrity sha512-n3tY9eAhZ1Exf7dI39Cbsl6PsI/c/PZwKmwZ1OePChiqg2HxoTx7viGrSZfWv7Qk0J4ZGUcC/PYAYh/CDqCnkA== +eslint-plugin-react-you-might-not-need-an-effect@^0.5.6: + version "0.5.6" + resolved "https://registry.npmjs.org/eslint-plugin-react-you-might-not-need-an-effect/-/eslint-plugin-react-you-might-not-need-an-effect-0.5.6.tgz" + integrity sha512-WZe5XlnsqempwyyLOrVMJWnA9yHC6TxibCwQyz4o9NfGKOh9svoydld10sFfaLVIOi+yO8G7BfYuOmZ6DCRuTw== dependencies: eslint-utils "^3.0.0" globals "^16.2.0" @@ -4078,24 +4010,23 @@ eslint-visitor-keys@^4.2.1: resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz" integrity sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ== -"eslint@^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9", "eslint@^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7", "eslint@^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0", "eslint@^6.0.0 || ^7.0.0 || >=8.0.0", "eslint@^7.0.0 || ^8.0.0 || ^9.0.0", "eslint@^8.57.0 || ^9.0.0", eslint@^9.35.0, "eslint@>= 8.57.0", eslint@>=5, eslint@>=8.40, eslint@>=8.40.0, eslint@>=9.29.0: - version "9.35.0" - resolved "https://registry.npmjs.org/eslint/-/eslint-9.35.0.tgz" - integrity sha512-QePbBFMJFjgmlE+cXAlbHZbHpdFVS2E/6vzCy7aKlebddvl1vadiC4JFV5u/wqTkNUwEV8WrQi257jf5f06hrg== +"eslint@^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9", "eslint@^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7", "eslint@^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0", "eslint@^6.0.0 || ^7.0.0 || >=8.0.0", "eslint@^7.0.0 || ^8.0.0 || ^9.0.0", "eslint@^8.57.0 || ^9.0.0", eslint@^9.35.0, eslint@^9.38.0, "eslint@>= 8.57.0", eslint@>=5, eslint@>=8.40, eslint@>=8.40.0, eslint@>=9.29.0: + version "9.38.0" + resolved "https://registry.npmjs.org/eslint/-/eslint-9.38.0.tgz" + integrity sha512-t5aPOpmtJcZcz5UJyY2GbvpDlsK5E8JqRqoKtfiKE3cNh437KIqfJr3A3AKf5k64NPx6d0G3dno6XDY05PqPtw== dependencies: "@eslint-community/eslint-utils" "^4.8.0" "@eslint-community/regexpp" "^4.12.1" - "@eslint/config-array" "^0.21.0" - "@eslint/config-helpers" "^0.3.1" - "@eslint/core" "^0.15.2" + "@eslint/config-array" "^0.21.1" + "@eslint/config-helpers" "^0.4.1" + "@eslint/core" "^0.16.0" "@eslint/eslintrc" "^3.3.1" - "@eslint/js" "9.35.0" - "@eslint/plugin-kit" "^0.3.5" + "@eslint/js" "9.38.0" + "@eslint/plugin-kit" "^0.4.0" "@humanfs/node" "^0.16.6" "@humanwhocodes/module-importer" "^1.0.1" "@humanwhocodes/retry" "^0.4.2" "@types/estree" "^1.0.6" - "@types/json-schema" "^7.0.15" ajv "^6.12.4" chalk "^4.0.0" cross-spawn "^7.0.6" @@ -4192,17 +4123,17 @@ exit-x@^0.2.2: resolved "https://registry.npmjs.org/exit-x/-/exit-x-0.2.2.tgz" integrity sha512-+I6B/IkJc1o/2tiURyz/ivu/O0nKNEArIUB5O7zBrlDVJr22SCLH3xTeEry428LvFhRzIA1g8izguxJ/gbNcVQ== -expect@^30.0.0, expect@30.1.2: - version "30.1.2" - resolved "https://registry.npmjs.org/expect/-/expect-30.1.2.tgz" - integrity sha512-xvHszRavo28ejws8FpemjhwswGj4w/BetHIL8cU49u4sGyXDw2+p3YbeDbj6xzlxi6kWTjIRSTJ+9sNXPnF0Zg== +expect@^30.0.0, expect@30.2.0: + version "30.2.0" + resolved "https://registry.npmjs.org/expect/-/expect-30.2.0.tgz" + integrity sha512-u/feCi0GPsI+988gU2FLcsHyAHTU0MX1Wg68NhAnN7z/+C5wqG+CY8J53N9ioe8RXgaoz0nBR/TYMf3AycUuPw== dependencies: - "@jest/expect-utils" "30.1.2" + "@jest/expect-utils" "30.2.0" "@jest/get-type" "30.1.0" - jest-matcher-utils "30.1.2" - jest-message-util "30.1.0" - jest-mock "30.0.5" - jest-util "30.0.5" + jest-matcher-utils "30.2.0" + jest-message-util "30.2.0" + jest-mock "30.2.0" + jest-util "30.2.0" fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: version "3.1.3" @@ -4266,12 +4197,12 @@ fft.js@^4.0.3, fft.js@^4.0.4: dependencies: typescript-event-target "^1.1.1" -file-collection@^5.1.1: - version "5.1.1" - resolved "https://registry.npmjs.org/file-collection/-/file-collection-5.1.1.tgz" - integrity sha512-zaMg3tvTVZWLQk6TtNcV/iwxm+kJ7HbPGdqWaUzKNXYUH2iPLe3TaGzJDhlCmOg84j7tetf9Bc7i4BQsaEONYA== +file-collection@^5.1.1, file-collection@^5.2.0: + version "5.2.2" + resolved "https://registry.npmjs.org/file-collection/-/file-collection-5.2.2.tgz" + integrity sha512-7S4PhN80cX92iSQJpxx/WDYtBlMcN4x+zj5yixP7A5FjoJYihbP+Lj1bcPN1jTqoMITja0L49YxTJTCMka/S6A== dependencies: - "@zip.js/zip.js" "^2.7.72" + "@zip.js/zip.js" "^2.8.8" cheminfo-types "^1.8.1" file-entry-cache@^8.0.0: @@ -4652,18 +4583,6 @@ heap@^0.2.6: resolved "https://registry.npmjs.org/heap/-/heap-0.2.7.tgz" integrity sha512-2bsegYkkHO+h/9MGbn6KWcE45cHZgPANo5LXF7EvWdT0yT2EguSVO1nDgU5c8+ZOPwp2vMNa7YFsJhVcDR9Sdg== -hermes-estree@0.25.1: - version "0.25.1" - resolved "https://registry.npmjs.org/hermes-estree/-/hermes-estree-0.25.1.tgz" - integrity sha512-0wUoCcLp+5Ev5pDW2OriHC2MJCbwLwuRx+gAqMTOkGKJJiBCLjtrvy4PWUGn6MIVefecRpzoOZ/UV6iGdOr+Cw== - -hermes-parser@^0.25.1: - version "0.25.1" - resolved "https://registry.npmjs.org/hermes-parser/-/hermes-parser-0.25.1.tgz" - integrity sha512-6pEjquH3rqaI6cYAXYPcz9MS4rY6R4ngRgrgfDshRptUZIc3lw0MCIJIGDj9++mfySOuPTHB4nrSW99BCvOPIA== - dependencies: - hermes-estree "0.25.1" - hoist-non-react-statics@^3.3.1: version "3.3.2" resolved "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz" @@ -4681,13 +4600,6 @@ human-signals@^2.1.0: resolved "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz" integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw== -iconv-lite@0.6: - version "0.6.3" - resolved "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz" - integrity sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw== - dependencies: - safer-buffer ">= 2.1.2 < 3.0.0" - idb@^7.0.1: version "7.1.1" resolved "https://registry.npmjs.org/idb/-/idb-7.1.1.tgz" @@ -4708,10 +4620,10 @@ immediate@~3.0.5: resolved "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz" integrity sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ== -immer@^10.1.1: - version "10.1.1" - resolved "https://registry.npmjs.org/immer/-/immer-10.1.1.tgz" - integrity sha512-s2MPrmjovJcoMaHtx6K11Ra7oD05NT97w1IC5zpMkT6Atjr7H8LjaDd81iIxUYpMKSRRNMJE703M1Fhr/TctHw== +immer@^10.1.1, immer@^10.1.3: + version "10.1.3" + resolved "https://registry.npmjs.org/immer/-/immer-10.1.3.tgz" + integrity sha512-tmjF/k8QDKydUlm3mZU+tjM6zeq9/fFpPqH9SzWmBnVVKsPBg/V66qsMwb3/Bo90cgUN+ghdVBess+hPsxUyRw== import-fresh@^3.2.1: version "3.3.0" @@ -5115,199 +5027,199 @@ jake@^10.8.5: filelist "^1.0.4" minimatch "^3.1.2" -jcampconverter@^11.0.5: - version "11.0.5" - resolved "https://registry.npmjs.org/jcampconverter/-/jcampconverter-11.0.5.tgz" - integrity sha512-/FOcPmKqe7Mac7JYsYZv5vdFKNbg3NxXL9Mi2v9mYf2Tr8l57nKsdkJQjFToNZP827g7IOKmgXBTlOGnaHmmNg== +jcampconverter@^11.2.1: + version "11.2.1" + resolved "https://registry.npmjs.org/jcampconverter/-/jcampconverter-11.2.1.tgz" + integrity sha512-EMsCJH+SKt17IELtK1zg7tI4LnVMLUjE+8iCSstQqG7e6BqexNM/6AuCe2OsfamZruDvVAkswjXTEP6no9bsng== dependencies: cheminfo-types "^1.8.1" dynamic-typing "^1.0.1" ensure-string "^1.2.0" gyromagnetic-ratio "^2.0.0" ml-array-median "^1.1.6" - openchemlib "^9.6.0" + openchemlib "^9.10.0" -jest-changed-files@30.0.5: - version "30.0.5" - resolved "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-30.0.5.tgz" - integrity sha512-bGl2Ntdx0eAwXuGpdLdVYVr5YQHnSZlQ0y9HVDu565lCUAe9sj6JOtBbMmBBikGIegne9piDDIOeiLVoqTkz4A== +jest-changed-files@30.2.0: + version "30.2.0" + resolved "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-30.2.0.tgz" + integrity sha512-L8lR1ChrRnSdfeOvTrwZMlnWV8G/LLjQ0nG9MBclwWZidA2N5FviRki0Bvh20WRMOX31/JYvzdqTJrk5oBdydQ== dependencies: execa "^5.1.1" - jest-util "30.0.5" + jest-util "30.2.0" p-limit "^3.1.0" -jest-circus@30.1.3: - version "30.1.3" - resolved "https://registry.npmjs.org/jest-circus/-/jest-circus-30.1.3.tgz" - integrity sha512-Yf3dnhRON2GJT4RYzM89t/EXIWNxKTpWTL9BfF3+geFetWP4XSvJjiU1vrWplOiUkmq8cHLiwuhz+XuUp9DscA== +jest-circus@30.2.0: + version "30.2.0" + resolved "https://registry.npmjs.org/jest-circus/-/jest-circus-30.2.0.tgz" + integrity sha512-Fh0096NC3ZkFx05EP2OXCxJAREVxj1BcW/i6EWqqymcgYKWjyyDpral3fMxVcHXg6oZM7iULer9wGRFvfpl+Tg== dependencies: - "@jest/environment" "30.1.2" - "@jest/expect" "30.1.2" - "@jest/test-result" "30.1.3" - "@jest/types" "30.0.5" + "@jest/environment" "30.2.0" + "@jest/expect" "30.2.0" + "@jest/test-result" "30.2.0" + "@jest/types" "30.2.0" "@types/node" "*" chalk "^4.1.2" co "^4.6.0" dedent "^1.6.0" is-generator-fn "^2.1.0" - jest-each "30.1.0" - jest-matcher-utils "30.1.2" - jest-message-util "30.1.0" - jest-runtime "30.1.3" - jest-snapshot "30.1.2" - jest-util "30.0.5" + jest-each "30.2.0" + jest-matcher-utils "30.2.0" + jest-message-util "30.2.0" + jest-runtime "30.2.0" + jest-snapshot "30.2.0" + jest-util "30.2.0" p-limit "^3.1.0" - pretty-format "30.0.5" + pretty-format "30.2.0" pure-rand "^7.0.0" slash "^3.0.0" stack-utils "^2.0.6" -jest-cli@30.1.3: - version "30.1.3" - resolved "https://registry.npmjs.org/jest-cli/-/jest-cli-30.1.3.tgz" - integrity sha512-G8E2Ol3OKch1DEeIBl41NP7OiC6LBhfg25Btv+idcusmoUSpqUkbrneMqbW9lVpI/rCKb/uETidb7DNteheuAQ== +jest-cli@30.2.0: + version "30.2.0" + resolved "https://registry.npmjs.org/jest-cli/-/jest-cli-30.2.0.tgz" + integrity sha512-Os9ukIvADX/A9sLt6Zse3+nmHtHaE6hqOsjQtNiugFTbKRHYIYtZXNGNK9NChseXy7djFPjndX1tL0sCTlfpAA== dependencies: - "@jest/core" "30.1.3" - "@jest/test-result" "30.1.3" - "@jest/types" "30.0.5" + "@jest/core" "30.2.0" + "@jest/test-result" "30.2.0" + "@jest/types" "30.2.0" chalk "^4.1.2" exit-x "^0.2.2" import-local "^3.2.0" - jest-config "30.1.3" - jest-util "30.0.5" - jest-validate "30.1.0" + jest-config "30.2.0" + jest-util "30.2.0" + jest-validate "30.2.0" yargs "^17.7.2" -jest-config@30.1.3: - version "30.1.3" - resolved "https://registry.npmjs.org/jest-config/-/jest-config-30.1.3.tgz" - integrity sha512-M/f7gqdQEPgZNA181Myz+GXCe8jXcJsGjCMXUzRj22FIXsZOyHNte84e0exntOvdPaeh9tA0w+B8qlP2fAezfw== +jest-config@30.2.0: + version "30.2.0" + resolved "https://registry.npmjs.org/jest-config/-/jest-config-30.2.0.tgz" + integrity sha512-g4WkyzFQVWHtu6uqGmQR4CQxz/CH3yDSlhzXMWzNjDx843gYjReZnMRanjRCq5XZFuQrGDxgUaiYWE8BRfVckA== dependencies: "@babel/core" "^7.27.4" "@jest/get-type" "30.1.0" "@jest/pattern" "30.0.1" - "@jest/test-sequencer" "30.1.3" - "@jest/types" "30.0.5" - babel-jest "30.1.2" + "@jest/test-sequencer" "30.2.0" + "@jest/types" "30.2.0" + babel-jest "30.2.0" chalk "^4.1.2" ci-info "^4.2.0" deepmerge "^4.3.1" glob "^10.3.10" graceful-fs "^4.2.11" - jest-circus "30.1.3" - jest-docblock "30.0.1" - jest-environment-node "30.1.2" + jest-circus "30.2.0" + jest-docblock "30.2.0" + jest-environment-node "30.2.0" jest-regex-util "30.0.1" - jest-resolve "30.1.3" - jest-runner "30.1.3" - jest-util "30.0.5" - jest-validate "30.1.0" + jest-resolve "30.2.0" + jest-runner "30.2.0" + jest-util "30.2.0" + jest-validate "30.2.0" micromatch "^4.0.8" parse-json "^5.2.0" - pretty-format "30.0.5" + pretty-format "30.2.0" slash "^3.0.0" strip-json-comments "^3.1.1" -jest-diff@30.1.2: - version "30.1.2" - resolved "https://registry.npmjs.org/jest-diff/-/jest-diff-30.1.2.tgz" - integrity sha512-4+prq+9J61mOVXCa4Qp8ZjavdxzrWQXrI80GNxP8f4tkI2syPuPrJgdRPZRrfUTRvIoUwcmNLbqEJy9W800+NQ== +jest-diff@30.2.0: + version "30.2.0" + resolved "https://registry.npmjs.org/jest-diff/-/jest-diff-30.2.0.tgz" + integrity sha512-dQHFo3Pt4/NLlG5z4PxZ/3yZTZ1C7s9hveiOj+GCN+uT109NC2QgsoVZsVOAvbJ3RgKkvyLGXZV9+piDpWbm6A== dependencies: "@jest/diff-sequences" "30.0.1" "@jest/get-type" "30.1.0" chalk "^4.1.2" - pretty-format "30.0.5" + pretty-format "30.2.0" -jest-docblock@30.0.1: - version "30.0.1" - resolved "https://registry.npmjs.org/jest-docblock/-/jest-docblock-30.0.1.tgz" - integrity sha512-/vF78qn3DYphAaIc3jy4gA7XSAz167n9Bm/wn/1XhTLW7tTBIzXtCJpb/vcmc73NIIeeohCbdL94JasyXUZsGA== +jest-docblock@30.2.0: + version "30.2.0" + resolved "https://registry.npmjs.org/jest-docblock/-/jest-docblock-30.2.0.tgz" + integrity sha512-tR/FFgZKS1CXluOQzZvNH3+0z9jXr3ldGSD8bhyuxvlVUwbeLOGynkunvlTMxchC5urrKndYiwCFC0DLVjpOCA== dependencies: detect-newline "^3.1.0" -jest-each@30.1.0: - version "30.1.0" - resolved "https://registry.npmjs.org/jest-each/-/jest-each-30.1.0.tgz" - integrity sha512-A+9FKzxPluqogNahpCv04UJvcZ9B3HamqpDNWNKDjtxVRYB8xbZLFuCr8JAJFpNp83CA0anGQFlpQna9Me+/tQ== +jest-each@30.2.0: + version "30.2.0" + resolved "https://registry.npmjs.org/jest-each/-/jest-each-30.2.0.tgz" + integrity sha512-lpWlJlM7bCUf1mfmuqTA8+j2lNURW9eNafOy99knBM01i5CQeY5UH1vZjgT9071nDJac1M4XsbyI44oNOdhlDQ== dependencies: "@jest/get-type" "30.1.0" - "@jest/types" "30.0.5" + "@jest/types" "30.2.0" chalk "^4.1.2" - jest-util "30.0.5" - pretty-format "30.0.5" + jest-util "30.2.0" + pretty-format "30.2.0" -jest-environment-node@30.1.2: - version "30.1.2" - resolved "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-30.1.2.tgz" - integrity sha512-w8qBiXtqGWJ9xpJIA98M0EIoq079GOQRQUyse5qg1plShUCQ0Ek1VTTcczqKrn3f24TFAgFtT+4q3aOXvjbsuA== +jest-environment-node@30.2.0: + version "30.2.0" + resolved "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-30.2.0.tgz" + integrity sha512-ElU8v92QJ9UrYsKrxDIKCxu6PfNj4Hdcktcn0JX12zqNdqWHB0N+hwOnnBBXvjLd2vApZtuLUGs1QSY+MsXoNA== dependencies: - "@jest/environment" "30.1.2" - "@jest/fake-timers" "30.1.2" - "@jest/types" "30.0.5" + "@jest/environment" "30.2.0" + "@jest/fake-timers" "30.2.0" + "@jest/types" "30.2.0" "@types/node" "*" - jest-mock "30.0.5" - jest-util "30.0.5" - jest-validate "30.1.0" + jest-mock "30.2.0" + jest-util "30.2.0" + jest-validate "30.2.0" -jest-haste-map@30.1.0: - version "30.1.0" - resolved "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-30.1.0.tgz" - integrity sha512-JLeM84kNjpRkggcGpQLsV7B8W4LNUWz7oDNVnY1Vjj22b5/fAb3kk3htiD+4Na8bmJmjJR7rBtS2Rmq/NEcADg== +jest-haste-map@30.2.0: + version "30.2.0" + resolved "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-30.2.0.tgz" + integrity sha512-sQA/jCb9kNt+neM0anSj6eZhLZUIhQgwDt7cPGjumgLM4rXsfb9kpnlacmvZz3Q5tb80nS+oG/if+NBKrHC+Xw== dependencies: - "@jest/types" "30.0.5" + "@jest/types" "30.2.0" "@types/node" "*" anymatch "^3.1.3" fb-watchman "^2.0.2" graceful-fs "^4.2.11" jest-regex-util "30.0.1" - jest-util "30.0.5" - jest-worker "30.1.0" + jest-util "30.2.0" + jest-worker "30.2.0" micromatch "^4.0.8" walker "^1.0.8" optionalDependencies: fsevents "^2.3.3" -jest-leak-detector@30.1.0: - version "30.1.0" - resolved "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-30.1.0.tgz" - integrity sha512-AoFvJzwxK+4KohH60vRuHaqXfWmeBATFZpzpmzNmYTtmRMiyGPVhkXpBqxUQunw+dQB48bDf4NpUs6ivVbRv1g== +jest-leak-detector@30.2.0: + version "30.2.0" + resolved "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-30.2.0.tgz" + integrity sha512-M6jKAjyzjHG0SrQgwhgZGy9hFazcudwCNovY/9HPIicmNSBuockPSedAP9vlPK6ONFJ1zfyH/M2/YYJxOz5cdQ== dependencies: "@jest/get-type" "30.1.0" - pretty-format "30.0.5" + pretty-format "30.2.0" -jest-matcher-utils@30.1.2: - version "30.1.2" - resolved "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-30.1.2.tgz" - integrity sha512-7ai16hy4rSbDjvPTuUhuV8nyPBd6EX34HkBsBcBX2lENCuAQ0qKCPb/+lt8OSWUa9WWmGYLy41PrEzkwRwoGZQ== +jest-matcher-utils@30.2.0: + version "30.2.0" + resolved "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-30.2.0.tgz" + integrity sha512-dQ94Nq4dbzmUWkQ0ANAWS9tBRfqCrn0bV9AMYdOi/MHW726xn7eQmMeRTpX2ViC00bpNaWXq+7o4lIQ3AX13Hg== dependencies: "@jest/get-type" "30.1.0" chalk "^4.1.2" - jest-diff "30.1.2" - pretty-format "30.0.5" + jest-diff "30.2.0" + pretty-format "30.2.0" -jest-message-util@30.1.0: - version "30.1.0" - resolved "https://registry.npmjs.org/jest-message-util/-/jest-message-util-30.1.0.tgz" - integrity sha512-HizKDGG98cYkWmaLUHChq4iN+oCENohQLb7Z5guBPumYs+/etonmNFlg1Ps6yN9LTPyZn+M+b/9BbnHx3WTMDg== +jest-message-util@30.2.0: + version "30.2.0" + resolved "https://registry.npmjs.org/jest-message-util/-/jest-message-util-30.2.0.tgz" + integrity sha512-y4DKFLZ2y6DxTWD4cDe07RglV88ZiNEdlRfGtqahfbIjfsw1nMCPx49Uev4IA/hWn3sDKyAnSPwoYSsAEdcimw== dependencies: "@babel/code-frame" "^7.27.1" - "@jest/types" "30.0.5" + "@jest/types" "30.2.0" "@types/stack-utils" "^2.0.3" chalk "^4.1.2" graceful-fs "^4.2.11" micromatch "^4.0.8" - pretty-format "30.0.5" + pretty-format "30.2.0" slash "^3.0.0" stack-utils "^2.0.6" -jest-mock@30.0.5: - version "30.0.5" - resolved "https://registry.npmjs.org/jest-mock/-/jest-mock-30.0.5.tgz" - integrity sha512-Od7TyasAAQX/6S+QCbN6vZoWOMwlTtzzGuxJku1GhGanAjz9y+QsQkpScDmETvdc9aSXyJ/Op4rhpMYBWW91wQ== +jest-mock@30.2.0: + version "30.2.0" + resolved "https://registry.npmjs.org/jest-mock/-/jest-mock-30.2.0.tgz" + integrity sha512-JNNNl2rj4b5ICpmAcq+WbLH83XswjPbjH4T7yvGzfAGCPh1rw+xVNbtk+FnRslvt9lkCcdn9i1oAoKUuFsOxRw== dependencies: - "@jest/types" "30.0.5" + "@jest/types" "30.2.0" "@types/node" "*" - jest-util "30.0.5" + jest-util "30.2.0" jest-pnp-resolver@^1.2.3: version "1.2.3" @@ -5319,169 +5231,169 @@ jest-regex-util@30.0.1: resolved "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-30.0.1.tgz" integrity sha512-jHEQgBXAgc+Gh4g0p3bCevgRCVRkB4VB70zhoAE48gxeSr1hfUOsM/C2WoJgVL7Eyg//hudYENbm3Ne+/dRVVA== -jest-resolve-dependencies@30.1.3: - version "30.1.3" - resolved "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-30.1.3.tgz" - integrity sha512-DNfq3WGmuRyHRHfEet+Zm3QOmVFtIarUOQHHryKPc0YL9ROfgWZxl4+aZq/VAzok2SS3gZdniP+dO4zgo59hBg== +jest-resolve-dependencies@30.2.0: + version "30.2.0" + resolved "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-30.2.0.tgz" + integrity sha512-xTOIGug/0RmIe3mmCqCT95yO0vj6JURrn1TKWlNbhiAefJRWINNPgwVkrVgt/YaerPzY3iItufd80v3lOrFJ2w== dependencies: jest-regex-util "30.0.1" - jest-snapshot "30.1.2" + jest-snapshot "30.2.0" -jest-resolve@*, jest-resolve@30.1.3: - version "30.1.3" - resolved "https://registry.npmjs.org/jest-resolve/-/jest-resolve-30.1.3.tgz" - integrity sha512-DI4PtTqzw9GwELFS41sdMK32Ajp3XZQ8iygeDMWkxlRhm7uUTOFSZFVZABFuxr0jvspn8MAYy54NxZCsuCTSOw== +jest-resolve@*, jest-resolve@30.2.0: + version "30.2.0" + resolved "https://registry.npmjs.org/jest-resolve/-/jest-resolve-30.2.0.tgz" + integrity sha512-TCrHSxPlx3tBY3hWNtRQKbtgLhsXa1WmbJEqBlTBrGafd5fiQFByy2GNCEoGR+Tns8d15GaL9cxEzKOO3GEb2A== dependencies: chalk "^4.1.2" graceful-fs "^4.2.11" - jest-haste-map "30.1.0" + jest-haste-map "30.2.0" jest-pnp-resolver "^1.2.3" - jest-util "30.0.5" - jest-validate "30.1.0" + jest-util "30.2.0" + jest-validate "30.2.0" slash "^3.0.0" unrs-resolver "^1.7.11" -jest-runner@30.1.3: - version "30.1.3" - resolved "https://registry.npmjs.org/jest-runner/-/jest-runner-30.1.3.tgz" - integrity sha512-dd1ORcxQraW44Uz029TtXj85W11yvLpDuIzNOlofrC8GN+SgDlgY4BvyxJiVeuabA1t6idjNbX59jLd2oplOGQ== +jest-runner@30.2.0: + version "30.2.0" + resolved "https://registry.npmjs.org/jest-runner/-/jest-runner-30.2.0.tgz" + integrity sha512-PqvZ2B2XEyPEbclp+gV6KO/F1FIFSbIwewRgmROCMBo/aZ6J1w8Qypoj2pEOcg3G2HzLlaP6VUtvwCI8dM3oqQ== dependencies: - "@jest/console" "30.1.2" - "@jest/environment" "30.1.2" - "@jest/test-result" "30.1.3" - "@jest/transform" "30.1.2" - "@jest/types" "30.0.5" + "@jest/console" "30.2.0" + "@jest/environment" "30.2.0" + "@jest/test-result" "30.2.0" + "@jest/transform" "30.2.0" + "@jest/types" "30.2.0" "@types/node" "*" chalk "^4.1.2" emittery "^0.13.1" exit-x "^0.2.2" graceful-fs "^4.2.11" - jest-docblock "30.0.1" - jest-environment-node "30.1.2" - jest-haste-map "30.1.0" - jest-leak-detector "30.1.0" - jest-message-util "30.1.0" - jest-resolve "30.1.3" - jest-runtime "30.1.3" - jest-util "30.0.5" - jest-watcher "30.1.3" - jest-worker "30.1.0" + jest-docblock "30.2.0" + jest-environment-node "30.2.0" + jest-haste-map "30.2.0" + jest-leak-detector "30.2.0" + jest-message-util "30.2.0" + jest-resolve "30.2.0" + jest-runtime "30.2.0" + jest-util "30.2.0" + jest-watcher "30.2.0" + jest-worker "30.2.0" p-limit "^3.1.0" source-map-support "0.5.13" -jest-runtime@30.1.3: - version "30.1.3" - resolved "https://registry.npmjs.org/jest-runtime/-/jest-runtime-30.1.3.tgz" - integrity sha512-WS8xgjuNSphdIGnleQcJ3AKE4tBKOVP+tKhCD0u+Tb2sBmsU8DxfbBpZX7//+XOz81zVs4eFpJQwBNji2Y07DA== +jest-runtime@30.2.0: + version "30.2.0" + resolved "https://registry.npmjs.org/jest-runtime/-/jest-runtime-30.2.0.tgz" + integrity sha512-p1+GVX/PJqTucvsmERPMgCPvQJpFt4hFbM+VN3n8TMo47decMUcJbt+rgzwrEme0MQUA/R+1de2axftTHkKckg== dependencies: - "@jest/environment" "30.1.2" - "@jest/fake-timers" "30.1.2" - "@jest/globals" "30.1.2" + "@jest/environment" "30.2.0" + "@jest/fake-timers" "30.2.0" + "@jest/globals" "30.2.0" "@jest/source-map" "30.0.1" - "@jest/test-result" "30.1.3" - "@jest/transform" "30.1.2" - "@jest/types" "30.0.5" + "@jest/test-result" "30.2.0" + "@jest/transform" "30.2.0" + "@jest/types" "30.2.0" "@types/node" "*" chalk "^4.1.2" cjs-module-lexer "^2.1.0" collect-v8-coverage "^1.0.2" glob "^10.3.10" graceful-fs "^4.2.11" - jest-haste-map "30.1.0" - jest-message-util "30.1.0" - jest-mock "30.0.5" + jest-haste-map "30.2.0" + jest-message-util "30.2.0" + jest-mock "30.2.0" jest-regex-util "30.0.1" - jest-resolve "30.1.3" - jest-snapshot "30.1.2" - jest-util "30.0.5" + jest-resolve "30.2.0" + jest-snapshot "30.2.0" + jest-util "30.2.0" slash "^3.0.0" strip-bom "^4.0.0" -jest-snapshot@30.1.2: - version "30.1.2" - resolved "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-30.1.2.tgz" - integrity sha512-4q4+6+1c8B6Cy5pGgFvjDy/Pa6VYRiGu0yQafKkJ9u6wQx4G5PqI2QR6nxTl43yy7IWsINwz6oT4o6tD12a8Dg== +jest-snapshot@30.2.0: + version "30.2.0" + resolved "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-30.2.0.tgz" + integrity sha512-5WEtTy2jXPFypadKNpbNkZ72puZCa6UjSr/7djeecHWOu7iYhSXSnHScT8wBz3Rn8Ena5d5RYRcsyKIeqG1IyA== dependencies: "@babel/core" "^7.27.4" "@babel/generator" "^7.27.5" "@babel/plugin-syntax-jsx" "^7.27.1" "@babel/plugin-syntax-typescript" "^7.27.1" "@babel/types" "^7.27.3" - "@jest/expect-utils" "30.1.2" + "@jest/expect-utils" "30.2.0" "@jest/get-type" "30.1.0" - "@jest/snapshot-utils" "30.1.2" - "@jest/transform" "30.1.2" - "@jest/types" "30.0.5" - babel-preset-current-node-syntax "^1.1.0" + "@jest/snapshot-utils" "30.2.0" + "@jest/transform" "30.2.0" + "@jest/types" "30.2.0" + babel-preset-current-node-syntax "^1.2.0" chalk "^4.1.2" - expect "30.1.2" + expect "30.2.0" graceful-fs "^4.2.11" - jest-diff "30.1.2" - jest-matcher-utils "30.1.2" - jest-message-util "30.1.0" - jest-util "30.0.5" - pretty-format "30.0.5" + jest-diff "30.2.0" + jest-matcher-utils "30.2.0" + jest-message-util "30.2.0" + jest-util "30.2.0" + pretty-format "30.2.0" semver "^7.7.2" synckit "^0.11.8" -jest-util@30.0.5: - version "30.0.5" - resolved "https://registry.npmjs.org/jest-util/-/jest-util-30.0.5.tgz" - integrity sha512-pvyPWssDZR0FlfMxCBoc0tvM8iUEskaRFALUtGQYzVEAqisAztmy+R8LnU14KT4XA0H/a5HMVTXat1jLne010g== +jest-util@30.2.0: + version "30.2.0" + resolved "https://registry.npmjs.org/jest-util/-/jest-util-30.2.0.tgz" + integrity sha512-QKNsM0o3Xe6ISQU869e+DhG+4CK/48aHYdJZGlFQVTjnbvgpcKyxpzk29fGiO7i/J8VENZ+d2iGnSsvmuHywlA== dependencies: - "@jest/types" "30.0.5" + "@jest/types" "30.2.0" "@types/node" "*" chalk "^4.1.2" ci-info "^4.2.0" graceful-fs "^4.2.11" picomatch "^4.0.2" -jest-validate@30.1.0: - version "30.1.0" - resolved "https://registry.npmjs.org/jest-validate/-/jest-validate-30.1.0.tgz" - integrity sha512-7P3ZlCFW/vhfQ8pE7zW6Oi4EzvuB4sgR72Q1INfW9m0FGo0GADYlPwIkf4CyPq7wq85g+kPMtPOHNAdWHeBOaA== +jest-validate@30.2.0: + version "30.2.0" + resolved "https://registry.npmjs.org/jest-validate/-/jest-validate-30.2.0.tgz" + integrity sha512-FBGWi7dP2hpdi8nBoWxSsLvBFewKAg0+uSQwBaof4Y4DPgBabXgpSYC5/lR7VmnIlSpASmCi/ntRWPbv7089Pw== dependencies: "@jest/get-type" "30.1.0" - "@jest/types" "30.0.5" + "@jest/types" "30.2.0" camelcase "^6.3.0" chalk "^4.1.2" leven "^3.1.0" - pretty-format "30.0.5" + pretty-format "30.2.0" -jest-watcher@30.1.3: - version "30.1.3" - resolved "https://registry.npmjs.org/jest-watcher/-/jest-watcher-30.1.3.tgz" - integrity sha512-6jQUZCP1BTL2gvG9E4YF06Ytq4yMb4If6YoQGRR6PpjtqOXSP3sKe2kqwB6SQ+H9DezOfZaSLnmka1NtGm3fCQ== +jest-watcher@30.2.0: + version "30.2.0" + resolved "https://registry.npmjs.org/jest-watcher/-/jest-watcher-30.2.0.tgz" + integrity sha512-PYxa28dxJ9g777pGm/7PrbnMeA0Jr7osHP9bS7eJy9DuAjMgdGtxgf0uKMyoIsTWAkIbUW5hSDdJ3urmgXBqxg== dependencies: - "@jest/test-result" "30.1.3" - "@jest/types" "30.0.5" + "@jest/test-result" "30.2.0" + "@jest/types" "30.2.0" "@types/node" "*" ansi-escapes "^4.3.2" chalk "^4.1.2" emittery "^0.13.1" - jest-util "30.0.5" + jest-util "30.2.0" string-length "^4.0.2" -jest-worker@30.1.0: - version "30.1.0" - resolved "https://registry.npmjs.org/jest-worker/-/jest-worker-30.1.0.tgz" - integrity sha512-uvWcSjlwAAgIu133Tt77A05H7RIk3Ho8tZL50bQM2AkvLdluw9NG48lRCl3Dt+MOH719n/0nnb5YxUwcuJiKRA== +jest-worker@30.2.0: + version "30.2.0" + resolved "https://registry.npmjs.org/jest-worker/-/jest-worker-30.2.0.tgz" + integrity sha512-0Q4Uk8WF7BUwqXHuAjc23vmopWJw5WH7w2tqBoUOZpOjW/ZnR44GXXd1r82RvnmI2GZge3ivrYXk/BE2+VtW2g== dependencies: "@types/node" "*" "@ungap/structured-clone" "^1.3.0" - jest-util "30.0.5" + jest-util "30.2.0" merge-stream "^2.0.0" supports-color "^8.1.1" -jest@^30.1.3: - version "30.1.3" - resolved "https://registry.npmjs.org/jest/-/jest-30.1.3.tgz" - integrity sha512-Ry+p2+NLk6u8Agh5yVqELfUJvRfV51hhVBRIB5yZPY7mU0DGBmOuFG5GebZbMbm86cdQNK0fhJuDX8/1YorISQ== +jest@^30.2.0: + version "30.2.0" + resolved "https://registry.npmjs.org/jest/-/jest-30.2.0.tgz" + integrity sha512-F26gjC0yWN8uAA5m5Ss8ZQf5nDHWGlN/xWZIh8S5SRbsEKBovwZhxGd6LJlbZYxBgCYOtreSUyb8hpXyGC5O4A== dependencies: - "@jest/core" "30.1.3" - "@jest/types" "30.0.5" + "@jest/core" "30.2.0" + "@jest/types" "30.2.0" import-local "^3.2.0" - jest-cli "30.1.3" + jest-cli "30.2.0" "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: version "4.0.0" @@ -5929,10 +5841,10 @@ ml-floyd-warshall@^3.0.1: dependencies: ml-matrix "^6.10.4" -ml-gsd@^13.0.1: - version "13.0.1" - resolved "https://registry.npmjs.org/ml-gsd/-/ml-gsd-13.0.1.tgz" - integrity sha512-Du0759hFmjz/LXYnbQcnUs7kP/3iczrczwEAax5W9GTVay9YtR6tZ019PJJK4Fw2aZvysUt3MwrnFZUemsHKCQ== +ml-gsd@^13.0.1, ml-gsd@^13.1.0: + version "13.1.0" + resolved "https://registry.npmjs.org/ml-gsd/-/ml-gsd-13.1.0.tgz" + integrity sha512-CmUZ/hCPCb6L089Xon1U8xSxTR35DMh3ICfaBuP16mKm7HA8XoonAnjnVOjM4ayewDjgMM3KVqPS/+ti3tFYhA== dependencies: cheminfo-types "^1.8.1" ml-peak-shape-generator "^4.1.4" @@ -6059,16 +5971,16 @@ ml-savitzky-golay-generalized@^4.2.0: cheminfo-types "^1.7.3" is-any-array "^2.0.1" -ml-signal-processing@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/ml-signal-processing/-/ml-signal-processing-2.0.0.tgz" - integrity sha512-U7jY/QvTXKj2fDedOXNQf+hSXclQY+tVdVSsQzIQve6GL5a8W/kBHQ71dq80duNBB9bsv74Y4axOwD1AeMLyOA== +ml-signal-processing@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/ml-signal-processing/-/ml-signal-processing-2.1.0.tgz" + integrity sha512-FgZKMMgslSnnT+WKpKwJrInKs0xYmCZb+pz/1Bcr8ks6KQrdNA2xI9jjkr74O5ZSA9RVGjGWt7gG2Ra8UhtrIw== dependencies: baselines "^1.1.9" cheminfo-types "^1.8.1" ml-gsd "^13.0.1" ml-savitzky-golay-generalized "^4.2.0" - ml-spectra-processing "^14.12.0" + ml-spectra-processing "^14.17.1" ml-simple-clustering@^1.0.0: version "1.0.0" @@ -6093,10 +6005,10 @@ ml-spectra-fitting@^5.0.1: ml-peak-shape-generator "^4.1.4" ml-spectra-processing "^14.2.0" -ml-spectra-processing@^14.10.0, ml-spectra-processing@^14.12.0, ml-spectra-processing@^14.14.1, ml-spectra-processing@^14.17.0, ml-spectra-processing@^14.17.1, ml-spectra-processing@^14.2.0, ml-spectra-processing@^14.2.2, ml-spectra-processing@^14.5.0, ml-spectra-processing@^14.7.0: - version "14.17.1" - resolved "https://registry.npmjs.org/ml-spectra-processing/-/ml-spectra-processing-14.17.1.tgz" - integrity sha512-ff2K8Nb91I5fSYcRRiHH0RvUIX1nC4TGg/ctbbyf6R7SUR5MgKF5Kicj+w1HACCK4DQ1HvSc2ZHVE2Z1NDvCRQ== +ml-spectra-processing@^14.10.0, ml-spectra-processing@^14.12.0, ml-spectra-processing@^14.17.1, ml-spectra-processing@^14.18.0, ml-spectra-processing@^14.2.0, ml-spectra-processing@^14.2.2, ml-spectra-processing@^14.5.0, ml-spectra-processing@^14.7.0: + version "14.18.0" + resolved "https://registry.npmjs.org/ml-spectra-processing/-/ml-spectra-processing-14.18.0.tgz" + integrity sha512-vzk7Lf/21mm9Otjn13xDFsFL4reDViU6GbtAxQfkXtprARxRRoQScbnlDNE11UhOKXy88/FTnR4vf2osMkT4fA== dependencies: binary-search "^1.3.6" cheminfo-types "^1.8.1" @@ -6149,9 +6061,9 @@ nanoid@^3.3.11: integrity sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w== napi-postinstall@^0.3.0: - version "0.3.3" - resolved "https://registry.npmjs.org/napi-postinstall/-/napi-postinstall-0.3.3.tgz" - integrity sha512-uTp172LLXSxuSYHv/kou+f6KW3SMppU9ivthaVTXian9sOt3XM/zHYHpRZiLgQoxeWfYUnslNWQHF1+G71xcow== + version "0.3.4" + resolved "https://registry.npmjs.org/napi-postinstall/-/napi-postinstall-0.3.4.tgz" + integrity sha512-PHI5f1O0EP5xJ9gQmFGMS6IZcrVvTjpXjz7Na41gTE7eE2hK11lg04CECCYEEjdc17EV4DO+fkGEtt7TpTaTiQ== natural-compare@^1.4.0: version "1.4.0" @@ -6196,10 +6108,10 @@ nmr-correlation@2.3.3: ml-matrix-peaks-finder "^1.0.0" ml-peak-shape-generator "^4.1.1" -nmr-processing@^19.1.0: - version "19.1.0" - resolved "https://registry.npmjs.org/nmr-processing/-/nmr-processing-19.1.0.tgz" - integrity sha512-Yu1iIITUiR63VrmE0SeGYcNWidYP4oldkD3V2AqQ15oDHBtmIxJkWV7q+MD/x9l44/6zpET8KNS/mdETfPAeUg== +nmr-processing@^19.4.1: + version "19.4.1" + resolved "https://registry.npmjs.org/nmr-processing/-/nmr-processing-19.4.1.tgz" + integrity sha512-hEw0mZV2rjsc5RzwWddsq1MPDAlgi47gtAaByc31jKusfriwi0coENnBy6yDeqLrvgJa6usqXkRLNL4oSkVgPw== dependencies: binary-search "^1.3.6" d3-color "3.1.0" @@ -6210,7 +6122,7 @@ nmr-processing@^19.1.0: ml-airpls "^2.0.0" ml-convolution "^2.0.0" ml-direct "^1.0.0" - ml-gsd "^13.0.1" + ml-gsd "^13.1.0" ml-hclust "^3.1.0" ml-levenberg-marquardt "^5.0.0" ml-matrix "^6.12.1" @@ -6222,71 +6134,75 @@ nmr-processing@^19.1.0: ml-regression-polynomial "^3.0.2" ml-regression-simple-linear "^3.0.1" ml-savitzky-golay-generalized "^4.2.0" - ml-signal-processing "^2.0.0" + ml-signal-processing "^2.1.0" ml-simple-clustering "^1.0.0" ml-sparse-matrix "^3.1.0" - ml-spectra-processing "^14.14.1" + ml-spectra-processing "^14.17.1" ml-tree-set "^1.0.1" multiplet-analysis "^2.1.5" nmr-correlation "^3.0.0" numeral "^2.0.6" - openchemlib-utils "^8.2.0" - spectrum-generator "^8.1.0" + openchemlib "^9.10.0" + openchemlib-utils "^8.6.0" + spectrum-generator "^8.1.1" -nmrium@^1.3.0: - version "1.3.0" - resolved "https://registry.npmjs.org/nmrium/-/nmrium-1.3.0.tgz" - integrity sha512-/SufaKT/XTa4TPrG7aJb16njjBHhbpmJfyApF43JefixX54r9Dmy5SG7TdT+P3n1GPUw5pMAFPsGpxwbkuuKBg== +nmrium@^1.6.1: + version "1.6.1" + resolved "https://registry.npmjs.org/nmrium/-/nmrium-1.6.1.tgz" + integrity sha512-S2gKYbLo8pmT5EpmaOnJ8kJBh2XS65VgZsuXEgMwcJ5MaxA2t3VqXeBusc7EG4c6YuS4rXBBRvNOY/cOgHoSWg== dependencies: - "@atlaskit/pragmatic-drag-and-drop" "^1.7.4" + "@atlaskit/pragmatic-drag-and-drop" "^1.7.7" "@atlaskit/pragmatic-drag-and-drop-hitbox" "^1.1.0" "@emotion/react" "^11.14.0" "@emotion/styled" "^11.14.1" - "@hookform/resolvers" "^5.2.1" - "@zakodium/nmr-types" "^0.1.1" - "@zakodium/nmrium-core" "^0.1.7" - "@zakodium/nmrium-core-plugins" "^0.1.10" - "@zip.js/zip.js" "^2.7.72" + "@hookform/resolvers" "^5.2.2" + "@zakodium/nmr-types" "^0.2.1" + "@zakodium/nmrium-core" "^0.2.3" + "@zakodium/nmrium-core-plugins" "^0.3.6" + "@zakodium/pdnd-esm" "^1.0.2" + "@zip.js/zip.js" "^2.8.7" cheminfo-font "^1.13.1" cheminfo-types "^1.8.1" clipboard-polyfill "^4.1.1" - d3 "^7.9.0" + d3-array "^3.2.4" + d3-scale "^4.0.2" + d3-zoom "^3.0.0" dlv "^1.1.3" eventemitter3 "^5.0.1" fifo-logger "^2.0.1" - file-collection "^5.1.1" + file-collection "^5.2.0" file-saver "^2.0.5" - immer "^10.1.1" + immer "^10.1.3" lodash "^4.17.21" mf-parser "^3.6.0" ml-array-mean "^1.1.6" ml-array-median "^1.1.6" ml-conrec "^5.0.3" - ml-gsd "^13.0.1" - ml-signal-processing "^2.0.0" - ml-spectra-processing "^14.17.0" + ml-gsd "^13.1.0" + ml-signal-processing "^2.1.0" + ml-spectra-processing "^14.18.0" ml-tree-similarity "^2.2.0" nmr-correlation "2.3.3" - nmr-processing "^19.1.0" + nmr-processing "^19.4.1" numeral "^2.0.6" - openchemlib "^9.7.0" - openchemlib-utils "^8.2.1" + openchemlib "^9.11.1" + openchemlib-utils "^8.6.0" papaparse "^5.5.3" react-d3-utils "^3.1.2" react-dropzone "^14.3.8" react-error-boundary "^6.0.0" - react-hook-form "^7.62.0" + react-hook-form "^7.64.0" react-icons "^5.5.0" - react-inspector "^6.0.2" + react-inspector "^9.0.0" react-mf "^3.1.1" - react-ocl "^8.2.0" + react-ocl "^8.3.0" react-ocl-nmr "^4.1.1" react-plot "^3.1.1" react-rnd "^10.5.2" - react-science "^19.1.0" + react-science "^19.3.0" react-table "^7.8.0" - smart-array-filter "^4.1.1" - yup "^1.7.0" + smart-array-filter "^5.0.0" + yup "^1.7.1" no-case@^3.0.4: version "3.0.4" @@ -6425,10 +6341,10 @@ onetime@^5.1.2: dependencies: mimic-fn "^2.1.0" -openchemlib-utils@^8.1.1, openchemlib-utils@^8.2.0, openchemlib-utils@^8.2.1, openchemlib-utils@^8.3.1: - version "8.3.1" - resolved "https://registry.npmjs.org/openchemlib-utils/-/openchemlib-utils-8.3.1.tgz" - integrity sha512-Fzgw80e/W7G5CT6DZknaIkL0DlzBPU9ocu1UL1zIEuYQ7vdpSq9u0rEQcvrlMOj4mNKNagNBIzmO99se39HoVg== +openchemlib-utils@^8.1.1, openchemlib-utils@^8.6.0: + version "8.6.0" + resolved "https://registry.npmjs.org/openchemlib-utils/-/openchemlib-utils-8.6.0.tgz" + integrity sha512-CThsnliacv25l0mcf1k62KCV9bRLAAgY7Se7jVXdH6jSN2YpFDV056Oi2kNGi4ZobG2jTH45TKuGhpJSIgv4mQ== dependencies: atom-sorter "^2.2.1" ensure-string "^1.2.0" @@ -6438,10 +6354,10 @@ openchemlib-utils@^8.1.1, openchemlib-utils@^8.2.0, openchemlib-utils@^8.2.1, op papaparse "^5.5.3" sdf-parser "^7.0.4" -openchemlib@^9.1.1, openchemlib@^9.6.0, openchemlib@^9.7.0, openchemlib@^9.8.0, openchemlib@>=8, openchemlib@>=9.3.0: - version "9.8.0" - resolved "https://registry.npmjs.org/openchemlib/-/openchemlib-9.8.0.tgz" - integrity sha512-n2OJKvM6vS5a4xDkAxzLebzPP6J8KgzdKX518E4phfSOzRN8L5nfd7NqmnB/JHfgKi8MAwSBJPcwB+g05QUPcg== +openchemlib@^9.1.1, openchemlib@^9.10.0, openchemlib@^9.11.1, openchemlib@^9.12.0, openchemlib@>=8, openchemlib@>=9.8.0: + version "9.12.0" + resolved "https://registry.npmjs.org/openchemlib/-/openchemlib-9.12.0.tgz" + integrity sha512-oOhfWPmXkEb20lq+lrIU0jFVooyZy9fN73HeteG1vABbjhwCky3+dk4bBbcA4vle4PSwSQzeHnJW0BqaSPqB6w== optionator@^0.9.3: version "0.9.3" @@ -6645,17 +6561,17 @@ pkg-dir@^4.2.0: dependencies: find-up "^4.0.0" -playwright-core@1.55.0: - version "1.55.0" - resolved "https://registry.npmjs.org/playwright-core/-/playwright-core-1.55.0.tgz" - integrity sha512-GvZs4vU3U5ro2nZpeiwyb0zuFaqb9sUiAJuyrWpcGouD8y9/HLgGbNRjIph7zU9D3hnPaisMl9zG9CgFi/biIg== +playwright-core@1.56.1: + version "1.56.1" + resolved "https://registry.npmjs.org/playwright-core/-/playwright-core-1.56.1.tgz" + integrity sha512-hutraynyn31F+Bifme+Ps9Vq59hKuUCz7H1kDOcBs+2oGguKkWTU50bBWrtz34OUWmIwpBTWDxaRPXrIXkgvmQ== -playwright@1.55.0: - version "1.55.0" - resolved "https://registry.npmjs.org/playwright/-/playwright-1.55.0.tgz" - integrity sha512-sdCWStblvV1YU909Xqx0DhOjPZE4/5lJsIS84IfN9dAZfcl/CIZ5O8l3o0j7hPMjDvqoTF8ZUcc+i/GL5erstA== +playwright@1.56.1: + version "1.56.1" + resolved "https://registry.npmjs.org/playwright/-/playwright-1.56.1.tgz" + integrity sha512-aFi5B0WovBHTEvpM3DzXTUaeN6eN0qWnTkKx4NQaH4Wvcmc153PdaY2UBdSYKaGYw+UyWXSVyxDUg5DoPEttjw== dependencies: - playwright-core "1.55.0" + playwright-core "1.56.1" optionalDependencies: fsevents "2.3.2" @@ -6698,10 +6614,10 @@ pretty-bytes@^6.1.1: resolved "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-6.1.1.tgz" integrity sha512-mQUvGU6aUFQ+rNvTIAcZuWGRT9a6f6Yrg9bHs4ImKF+HZCEK+plBvnAZYSIQztknZF2qnzNtr6F8s0+IuptdlQ== -pretty-format@^30.0.0, pretty-format@30.0.5: - version "30.0.5" - resolved "https://registry.npmjs.org/pretty-format/-/pretty-format-30.0.5.tgz" - integrity sha512-D1tKtYvByrBkFLe2wHJl2bwMJIiT8rW+XA+TiataH79/FszLQMrpGEvzUVkzPau7OCO0Qnrhpe87PqtOAIB8Yw== +pretty-format@^30.0.0, pretty-format@30.2.0: + version "30.2.0" + resolved "https://registry.npmjs.org/pretty-format/-/pretty-format-30.2.0.tgz" + integrity sha512-9uBdv/B4EefsuAL+pWqueZyZS2Ba+LxfFeQ9DN14HU4bN8bhaxKdkpjpB6fs9+pSjIBu+FXQHImEg8j/Lw0+vA== dependencies: "@jest/schemas" "30.0.5" ansi-styles "^5.2.0" @@ -6773,7 +6689,7 @@ re-resizable@6.11.2: resolved "https://registry.npmjs.org/re-resizable/-/re-resizable-6.11.2.tgz" integrity sha512-2xI2P3OHs5qw7K0Ud1aLILK6MQxW50TcO+DetD9eIV58j84TqYeHoZcL9H4GXFXXIh7afhH8mv5iUCXII7OW7A== -react-d3-utils@^3.1.1, react-d3-utils@^3.1.2: +react-d3-utils@^3.1.2: version "3.1.2" resolved "https://registry.npmjs.org/react-d3-utils/-/react-d3-utils-3.1.2.tgz" integrity sha512-AphVJgDxO2YjwlgFq5lzOUOfE86DnjnckzDnXbpC7PKqlNyzdyjbcV+ilmRI/FECjeeK0dX38MvpxBDyAvnHFg== @@ -6825,20 +6741,20 @@ react-full-screen@^1.1.1: dependencies: fscreen "^1.0.2" -react-hook-form@^7.55.0, react-hook-form@^7.62.0: - version "7.62.0" - resolved "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.62.0.tgz" - integrity sha512-7KWFejc98xqG/F4bAxpL41NB3o1nnvQO1RWZT3TqRZYL8RryQETGfEdVnJN2fy1crCiBLLjkRBVK05j24FxJGA== +react-hook-form@^7.55.0, react-hook-form@^7.64.0: + version "7.65.0" + resolved "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.65.0.tgz" + integrity sha512-xtOzDz063WcXvGWaHgLNrNzlsdFgtUWcb32E6WFaGTd7kPZG3EeDusjdZfUsPwKCKVXy1ZlntifaHZ4l8pAsmw== react-icons@^5.5.0: version "5.5.0" resolved "https://registry.npmjs.org/react-icons/-/react-icons-5.5.0.tgz" integrity sha512-MEFcXdkP3dLo8uumGI5xN3lDFNsRtrjbOEKDLD7yv76v4wpnEq2Lt2qeHaQOr34I/wPN3s3+N08WkQ+CW37Xiw== -react-inspector@^6.0.2: - version "6.0.2" - resolved "https://registry.npmjs.org/react-inspector/-/react-inspector-6.0.2.tgz" - integrity sha512-x+b7LxhmHXjHoU/VrFAzw5iutsILRoYyDq97EDYdFpPLcvqtEzk4ZSZSQjnFPbr5T57tLXnHcqFYoN1pI6u8uQ== +react-inspector@^9.0.0: + version "9.0.0" + resolved "https://registry.npmjs.org/react-inspector/-/react-inspector-9.0.0.tgz" + integrity sha512-w/VJucSeHxlwRa2nfM2k7YhpT1r5EtlDOClSR+L7DyQP91QMdfFEDXDs9bPYN4kzP7umFtom7L0b2GGjph4Kow== react-is@^16.13.1, react-is@^16.7.0: version "16.13.1" @@ -6866,10 +6782,10 @@ react-ocl-nmr@^4.1.1: openchemlib-utils "^8.1.1" react-ocl "^8.2.0" -react-ocl@^8.2.0: - version "8.2.0" - resolved "https://registry.npmjs.org/react-ocl/-/react-ocl-8.2.0.tgz" - integrity sha512-S0JsH9uqpz06z5jfnUwl3HwulNZ0WwJdQaHo7Jl4y+cVb3XKOqzGToAlvSFtNzpTLKH+6Y9KdYcKtrUVrXIXRQ== +react-ocl@^8.2.0, react-ocl@^8.3.0: + version "8.3.0" + resolved "https://registry.npmjs.org/react-ocl/-/react-ocl-8.3.0.tgz" + integrity sha512-UHdJpmnKbKspfvon0zz93lOQjAWJyAcL8iMKAUf4fh3KvbSv7m+C+dkSRhhh0DkBu92WI060u1IwbG9pM5l6BA== react-plot@^3.1.1: version "3.1.1" @@ -6906,41 +6822,44 @@ react-rnd@^10.5.2: react-draggable "4.4.6" tslib "2.6.2" -react-router-dom@^7.9.1: - version "7.9.1" - resolved "https://registry.npmjs.org/react-router-dom/-/react-router-dom-7.9.1.tgz" - integrity sha512-U9WBQssBE9B1vmRjo9qTM7YRzfZ3lUxESIZnsf4VjR/lXYz9MHjvOxHzr/aUm4efpktbVOrF09rL/y4VHa8RMw== +react-router-dom@^7.9.4: + version "7.9.4" + resolved "https://registry.npmjs.org/react-router-dom/-/react-router-dom-7.9.4.tgz" + integrity sha512-f30P6bIkmYvnHHa5Gcu65deIXoA2+r3Eb6PJIAddvsT9aGlchMatJ51GgpU470aSqRRbFX22T70yQNUGuW3DfA== dependencies: - react-router "7.9.1" + react-router "7.9.4" -react-router@7.9.1: - version "7.9.1" - resolved "https://registry.npmjs.org/react-router/-/react-router-7.9.1.tgz" - integrity sha512-pfAByjcTpX55mqSDGwGnY9vDCpxqBLASg0BMNAuMmpSGESo/TaOUG6BllhAtAkCGx8Rnohik/XtaqiYUJtgW2g== +react-router@7.9.4: + version "7.9.4" + resolved "https://registry.npmjs.org/react-router/-/react-router-7.9.4.tgz" + integrity sha512-SD3G8HKviFHg9xj7dNODUKDFgpG4xqD5nhyd0mYoB5iISepuZAvzSr8ywxgxKJ52yRzf/HWtVHc9AWwoTbljvA== dependencies: cookie "^1.0.1" set-cookie-parser "^2.6.0" -react-science@^19.1.0: - version "19.1.0" - resolved "https://registry.npmjs.org/react-science/-/react-science-19.1.0.tgz" - integrity sha512-LByWoM9EzpBkaUb5YKqy2ORLINoNzSp3lrqfFfRFJC4qfX4Bi/LlBkmxNpuWsV7+M6Zui5Xe+lb5Fv9kqcy0aA== +react-science@^19.3.0, react-science@^19.3.1: + version "19.3.1" + resolved "https://registry.npmjs.org/react-science/-/react-science-19.3.1.tgz" + integrity sha512-qgkf0mdoUMFLIVfNWMN6sijdGlnEagd/s9mqXJPvSu/iJbL0f6Zvzn1cC8H2vbyHr44JkTT2cFKOERQMjDwmyg== dependencies: - "@atlaskit/pragmatic-drag-and-drop" "^1.7.4" - "@atlaskit/pragmatic-drag-and-drop-auto-scroll" "^2.1.1" + "@atlaskit/pragmatic-drag-and-drop" "^1.7.7" + "@atlaskit/pragmatic-drag-and-drop-auto-scroll" "^2.1.2" "@atlaskit/pragmatic-drag-and-drop-hitbox" "^1.1.0" "@emotion/styled" "^11.14.1" "@radix-ui/react-use-controllable-state" "^1.2.2" + "@tanstack/react-form" "^1.23.6" "@tanstack/react-table" "^8.21.3" "@tanstack/react-virtual" "^3.13.12" + "@zakodium/pdnd-esm" "^1.0.2" d3-scale-chromatic "^3.1.0" - react-d3-utils "^3.1.1" + react-d3-utils "^3.1.2" react-dropzone "^14.3.8" react-full-screen "^1.1.1" react-icons "^5.5.0" - react-inspector "^6.0.2" + react-inspector "^9.0.0" tinycolor2 "^1.6.0" - ts-pattern "^5.7.1" + ts-pattern "^5.8.0" + zod "^4.1.12" react-table@^7.8.0: version "7.8.0" @@ -6957,7 +6876,7 @@ react-transition-group@^4.4.5: loose-envify "^1.4.0" prop-types "^15.6.2" -react@*, "react@^16.13.1 || ^17.0.0 || ^18.0.0 || ^19.0.0", "react@^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", "react@^16.8.0 || ^17 || ^18", "react@^16.8.0 || ^17 || ^18 || ^19", "react@^16.8.0 || ^17.0.0 || ^18.0.0", "react@^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0", "react@^16.8.3 || ^17.0.0-0 || ^18.0.0", "react@^16.8.4 || ^17.0.0 || ^18.0.0", react@^18.3.1, "react@>= 16.3.0", "react@>= 16.8 || 18.0.0", "react@>= 16.8.0", react@>=16, react@>=16.13.1, react@>=16.3.0, react@>=16.6.0, react@>=16.8, react@>=16.8.0, react@>=18, react@>=18.0.0, react@18: +react@*, "react@^16.13.1 || ^17.0.0 || ^18.0.0 || ^19.0.0", "react@^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", "react@^16.8.0 || ^17 || ^18", "react@^16.8.0 || ^17 || ^18 || ^19", "react@^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0", "react@^16.8.3 || ^17.0.0-0 || ^18.0.0", "react@^17.0.0 || ^18.0.0 || ^19.0.0", "react@^18.0.0 || ^19.0.0", react@^18.3.1, "react@>= 16.3.0", "react@>= 16.8 || 18.0.0", "react@>= 16.8.0", react@>=16, react@>=16.13.1, react@>=16.3.0, react@>=16.6.0, react@>=16.8, react@>=16.8.0, react@>=18, react@>=18.0.0, react@18: version "18.3.1" resolved "https://registry.npmjs.org/react/-/react-18.3.1.tgz" integrity sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ== @@ -7121,11 +7040,6 @@ reusify@^1.0.4: resolved "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz" integrity sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw== -robust-predicates@^3.0.2: - version "3.0.2" - resolved "https://registry.npmjs.org/robust-predicates/-/robust-predicates-3.0.2.tgz" - integrity sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg== - "rollup@^1.20.0 || ^2.0.0", rollup@^1.20.0||^2.0.0, rollup@^2.43.1: version "2.79.2" resolved "https://registry.npmjs.org/rollup/-/rollup-2.79.2.tgz" @@ -7169,11 +7083,6 @@ run-parallel@^1.1.9: dependencies: queue-microtask "^1.2.2" -rw@1: - version "1.3.3" - resolved "https://registry.npmjs.org/rw/-/rw-1.3.3.tgz" - integrity sha512-PdhdWy89SiZogBLaw42zdeqtRJ//zFd2PgQavcICDUgJT5oW10QCRKbJ6bg4r0/UY2M6BWd5tkxuGFRvCkgfHQ== - safe-array-concat@^1.1.3: version "1.1.3" resolved "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.3.tgz" @@ -7212,11 +7121,6 @@ safe-regex-test@^1.1.0: es-errors "^1.3.0" is-regex "^1.2.1" -"safer-buffer@>= 2.1.2 < 3.0.0": - version "2.1.2" - resolved "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz" - integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== - scheduler@^0.23.2: version "0.23.2" resolved "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz" @@ -7238,14 +7142,14 @@ semver@^6.3.1: integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== semver@^7.5.3: - version "7.7.2" - resolved "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz" - integrity sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA== + version "7.7.3" + resolved "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz" + integrity sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q== semver@^7.5.4: - version "7.7.2" - resolved "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz" - integrity sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA== + version "7.7.3" + resolved "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz" + integrity sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q== semver@^7.6.0: version "7.7.2" @@ -7411,10 +7315,10 @@ slash@^3.0.0: resolved "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz" integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== -smart-array-filter@^4.1.1: - version "4.1.1" - resolved "https://registry.npmjs.org/smart-array-filter/-/smart-array-filter-4.1.1.tgz" - integrity sha512-xvUAm7zqPzaBFcdJsCFo5AHqhXPZlyCXXWkxSH1xqKYN30QMDypFPjmll6HuFc9JRXOoblTdXQV+Gc0XXWDUHQ== +smart-array-filter@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/smart-array-filter/-/smart-array-filter-5.0.0.tgz" + integrity sha512-GvS9w8VqhEgw+sy7yynKnhdOevSx4bBmST1qFwr0w2m0g6Jk4e1JyeLkXVi2unHftWWg/Ev4ieMpACNDpKgE+g== dependencies: lodash.escaperegexp "^4.1.2" @@ -7492,10 +7396,10 @@ spdx-license-ids@^3.0.0: resolved "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.22.tgz" integrity sha512-4PRT4nh1EImPbt2jASOKHX7PB7I+e4IWNLvkKFDxNhJlfjbYlleYQh285Z/3mPTHSAK/AvdMmw5BNNuYH8ShgQ== -spectrum-generator@^8.1.0: - version "8.1.0" - resolved "https://registry.npmjs.org/spectrum-generator/-/spectrum-generator-8.1.0.tgz" - integrity sha512-OJxJ7fGR+cJ9AyQegeaKaZtjGh+lxk/9A6UFBoeodduI82VIKpm0bjjSd2Q6t5BIFLsYicbMztY1hcx+55Oe2w== +spectrum-generator@^8.1.1: + version "8.1.1" + resolved "https://registry.npmjs.org/spectrum-generator/-/spectrum-generator-8.1.1.tgz" + integrity sha512-u5xXYVKV/cZ4gNjFjwcJ4eqMui+XVKEoRWqxdI/Bu0hEx1gRTHzBL4dlJwnhaad+J887X77k03bVAigRXOwKxA== dependencies: ml-peak-shape-generator "^4.1.4" ml-spectra-processing "^14.10.0" @@ -7807,10 +7711,10 @@ ts-api-utils@^2.1.0: resolved "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz" integrity sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ== -ts-pattern@^5.7.1: - version "5.7.1" - resolved "https://registry.npmjs.org/ts-pattern/-/ts-pattern-5.7.1.tgz" - integrity sha512-EGs8PguQqAAUIcQfK4E9xdXxB6s2GK4sJfT/vcc9V1ELIvC4LH/zXu2t/5fajtv6oiRCxdv7BgtVK3vWgROxag== +ts-pattern@^5.8.0: + version "5.8.0" + resolved "https://registry.npmjs.org/ts-pattern/-/ts-pattern-5.8.0.tgz" + integrity sha512-kIjN2qmWiHnhgr5DAkAafF9fwb0T5OhMVSWrm8XEdTFnX6+wfXwYOFjeF86UZ54vduqiR7BfqScFmXSzSaH8oA== tsconfig-paths@^3.15.0: version "3.15.0" @@ -7929,10 +7833,10 @@ typescript-event-target@^1.1.1: resolved "https://registry.npmjs.org/typescript-event-target/-/typescript-event-target-1.1.1.tgz" integrity sha512-dFSOFBKV6uwaloBCCUhxlD3Pr/P1a/tJdcmPrTXCHlEFD3faj0mztjcGn6VBAhQ0/Bdy8K3VWrrqwbt/ffsYsg== -typescript@^5.9.2, "typescript@>= 5.0.0", typescript@>=4.8.4, "typescript@>=4.8.4 <6.0.0", typescript@>=5.7.3: - version "5.9.2" - resolved "https://registry.npmjs.org/typescript/-/typescript-5.9.2.tgz" - integrity sha512-CWBzXQrc/qOkhidw1OzBTQuYRbfyxDXJMVJ1XNwUHGROVmuaeiEm3OslpZ1RV96d7SKKjZKrSJu3+t/xlw3R9A== +typescript@^5.9.3, "typescript@>= 5.0.0", typescript@>=4.8.4, "typescript@>=4.8.4 <6.0.0", typescript@>=5.7.3: + version "5.9.3" + resolved "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz" + integrity sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw== unbox-primitive@^1.1.0: version "1.1.0" @@ -7944,10 +7848,10 @@ unbox-primitive@^1.1.0: has-symbols "^1.1.0" which-boxed-primitive "^1.1.1" -undici-types@~7.12.0: - version "7.12.0" - resolved "https://registry.npmjs.org/undici-types/-/undici-types-7.12.0.tgz" - integrity sha512-goOacqME2GYyOZZfb5Lgtu+1IDmAlAEu5xnD3+xTzS10hT0vzpf0SPjkXwAw9Jm+4n/mQGDP3LO8CPbYROeBfQ== +undici-types@~7.14.0: + version "7.14.0" + resolved "https://registry.npmjs.org/undici-types/-/undici-types-7.14.0.tgz" + integrity sha512-QQiYxHuyZ9gQUIrmPo3IA+hUl4KYk8uSA7cHrcKd/l3p1OTpZcM0Tbp9x7FAtXdAYhlasd60ncPpgu6ihG6TOA== unicode-canonical-property-names-ecmascript@^2.0.0: version "2.0.1" @@ -8053,10 +7957,10 @@ uri-js@^4.2.2: dependencies: punycode "^2.1.0" -use-sync-external-store@^1.2.0: - version "1.2.0" - resolved "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz" - integrity sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA== +use-sync-external-store@^1.2.0, use-sync-external-store@^1.5.0: + version "1.6.0" + resolved "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.6.0.tgz" + integrity sha512-Pp6GSwGP/NrPIrxVFAIkOQeyw8lFenOHijQWkUTrDvrF4ALqylP2C/KCkeS9dpUM3KvYRQhna5vt7IL95+ZQ9w== util-deprecate@~1.0.1: version "1.0.2" @@ -8077,10 +7981,10 @@ vary@~1.1.2: resolved "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz" integrity sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg== -vite-plugin-pwa@^1.0.3: - version "1.0.3" - resolved "https://registry.npmjs.org/vite-plugin-pwa/-/vite-plugin-pwa-1.0.3.tgz" - integrity sha512-/OpqIpUldALGxcsEnv/ekQiQ5xHkQ53wcoN5ewX4jiIDNGs3W+eNcI1WYZeyOLmzoEjg09D7aX0O89YGjen1aw== +vite-plugin-pwa@^1.1.0: + version "1.1.0" + resolved "https://registry.npmjs.org/vite-plugin-pwa/-/vite-plugin-pwa-1.1.0.tgz" + integrity sha512-VsSpdubPzXhHWVINcSx6uHRMpOHVHQcHsef1QgkOlEoaIDAlssFEW88LBq1a59BuokAhsh2kUDJbaX1bZv4Bjw== dependencies: debug "^4.3.6" pretty-bytes "^6.1.1" @@ -8088,10 +7992,10 @@ vite-plugin-pwa@^1.0.3: workbox-build "^7.3.0" workbox-window "^7.3.0" -"vite@^3.1.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0", "vite@^4.2.0 || ^5.0.0 || ^6.0.0 || ^7.0.0", vite@^7.1.6: - version "7.1.6" - resolved "https://registry.npmjs.org/vite/-/vite-7.1.6.tgz" - integrity sha512-SRYIB8t/isTwNn8vMB3MR6E+EQZM/WG1aKmmIUCfDXfVvKfc20ZpamngWHKzAmmu9ppsgxsg4b2I7c90JZudIQ== +"vite@^3.1.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0", "vite@^4.2.0 || ^5.0.0 || ^6.0.0 || ^7.0.0", vite@^7.1.11: + version "7.1.11" + resolved "https://registry.npmjs.org/vite/-/vite-7.1.11.tgz" + integrity sha512-uzcxnSDVjAopEUjljkWh8EIrg6tlzrjFUfMcR1EVsRDGwf/ccef0qQPRyOrROwhrTDaApueq+ja+KLPlzR/zdg== dependencies: esbuild "^0.25.0" fdir "^6.5.0" @@ -8433,22 +8337,22 @@ yocto-queue@^0.1.0: resolved "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz" integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== -yup@^1.7.0: - version "1.7.0" - resolved "https://registry.npmjs.org/yup/-/yup-1.7.0.tgz" - integrity sha512-VJce62dBd+JQvoc+fCVq+KZfPHr+hXaxCcVgotfwWvlR0Ja3ffYKaJBT8rptPOSKOGJDCUnW2C2JWpud7aRP6Q== +yup@^1.7.1: + version "1.7.1" + resolved "https://registry.npmjs.org/yup/-/yup-1.7.1.tgz" + integrity sha512-GKHFX2nXul2/4Dtfxhozv701jLQHdf6J34YDh2cEkpqoo8le5Mg6/LrdseVLrFarmFygZTlfIhHx/QKfb/QWXw== dependencies: property-expr "^2.0.5" tiny-case "^1.0.3" toposort "^2.0.2" type-fest "^2.19.0" -zod-validation-error@^3.0.3: - version "3.5.2" - resolved "https://registry.npmjs.org/zod-validation-error/-/zod-validation-error-3.5.2.tgz" - integrity sha512-mdi7YOLtram5dzJ5aDtm1AG9+mxRma1iaMrZdYIpFO7epdKBUwLHIxTF8CPDeCQ828zAXYtizrKlEJAtzgfgrw== +"zod-validation-error@^3.0.3 || ^4.0.0": + version "4.0.2" + resolved "https://registry.npmjs.org/zod-validation-error/-/zod-validation-error-4.0.2.tgz" + integrity sha512-Q6/nZLe6jxuU80qb/4uJ4t5v2VEZ44lzQjPDhYJNztRQ4wyWc6VF3D3Kb/fAuPetZQnhS3hnajCf9CsWesghLQ== -zod@^3.22.4, zod@^3.25.0: - version "3.25.71" - resolved "https://registry.npmjs.org/zod/-/zod-3.25.71.tgz" - integrity sha512-BsBc/NPk7h8WsUWYWYL+BajcJPY8YhjelaWu2NMLuzgraKAz4Lb4/6K11g9jpuDetjMiqhZ6YaexFLOC0Ogi3Q== +"zod@^3.22.4 || ^4.0.0", "zod@^3.25.0 || ^4.0.0", zod@^4.1.12: + version "4.1.12" + resolved "https://registry.npmjs.org/zod/-/zod-4.1.12.tgz" + integrity sha512-JInaHOamG8pt5+Ey8kGmdcAcg3OL9reK8ltczgHTAwNhMys/6ThXHityHxVV2p3fkw/c+MAvBHFVYHFZDmjMCQ==