diff --git a/package-lock.json b/package-lock.json index 1a6a2567..41b1a28d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -693,9 +693,9 @@ } }, "node_modules/@dotenvx/dotenvx": { - "version": "1.21.0", - "resolved": "https://registry.npmjs.org/@dotenvx/dotenvx/-/dotenvx-1.21.0.tgz", - "integrity": "sha512-tbVWzE20ENwex7VOqTX2PiDP68v4SurAOsFHXMiNNCXYzpOXEje/M8lmMr+a8xKCfkhAmO1L+XhsPL7FDyfx4w==", + "version": "1.21.1", + "resolved": "https://registry.npmjs.org/@dotenvx/dotenvx/-/dotenvx-1.21.1.tgz", + "integrity": "sha512-ER9oBUtcFgDB/hwhJ0eg7xvR/8EtXkFm8J6nGo0rvLLMZKBpmvMtgTIQ8hDSjnboOaELOdUXTpa7WgoRZR6g3A==", "license": "BSD-3-Clause", "dependencies": { "commander": "^11.1.0", @@ -767,9 +767,9 @@ } }, "node_modules/@drizzle-team/brocli": { - "version": "0.10.1", - "resolved": "https://registry.npmjs.org/@drizzle-team/brocli/-/brocli-0.10.1.tgz", - "integrity": "sha512-AHy0vjc+n/4w/8Mif+w86qpppHuF3AyXbcWW+R/W7GNA3F5/p2nuhlkCJaTXSLZheB4l1rtHzOfr9A7NwoR/Zg==", + "version": "0.10.2", + "resolved": "https://registry.npmjs.org/@drizzle-team/brocli/-/brocli-0.10.2.tgz", + "integrity": "sha512-z33Il7l5dKjUgGULTqBsQBQwckHh5AbIuxhdsIxDDiZAzBOrZO6q9ogcWC65kU382AfynTfgNumVcNIjuIua6w==", "dev": true, "license": "Apache-2.0" }, @@ -2202,6 +2202,7 @@ "@libsql/libsql-wasm-experimental" ], "license": "MIT", + "optional": true, "peer": true, "dependencies": { "@libsql/core": "^0.14.0", @@ -2223,6 +2224,7 @@ "resolved": "https://registry.npmjs.org/@libsql/core/-/core-0.14.0.tgz", "integrity": "sha512-nhbuXf7GP3PSZgdCY2Ecj8vz187ptHlZQ0VRc751oB2C1W8jQUXKKklvt7t1LJiUTQBVJuadF628eUk+3cRi4Q==", "license": "MIT", + "optional": true, "peer": true, "dependencies": { "js-base64": "^3.7.5" @@ -2275,9 +2277,9 @@ } }, "node_modules/@mdx-js/react": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@mdx-js/react/-/react-3.0.1.tgz", - "integrity": "sha512-9ZrPIU4MGf6et1m1ov3zKf+q9+deetI51zprKB1D/z3NOb+rUxxtEl3mCjW5wTGh6VhRdwPueh1oRzi6ezkA8A==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@mdx-js/react/-/react-3.1.0.tgz", + "integrity": "sha512-QjHtSaoameoalGnKDT3FoIl4+9RwyTmo9ZJGBdLOks/YOiWHoRDI3PUwEzOE7kEmGcV3AFcp9K6dYu9rEuKLAQ==", "dev": true, "license": "MIT", "dependencies": { @@ -4201,9 +4203,9 @@ } }, "node_modules/@solidjs/router": { - "version": "0.14.10", - "resolved": "https://registry.npmjs.org/@solidjs/router/-/router-0.14.10.tgz", - "integrity": "sha512-5B8LVgvvXijfXyXWPVLUm7RQ05BhjIpAyRkYVDZtrR3OaSvftXobWc6qSEwk4ICLoGi/IE9CUp2LUdCBIs9AXg==", + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/@solidjs/router/-/router-0.15.0.tgz", + "integrity": "sha512-Q286eKFh9sY2OeSISqiNrZW5ZJ7M58fkxCfFeYg0KE15P9QMwhT9YqnInE/OdzavWzXU3ZYclV2NGVKz8pfqWg==", "license": "MIT", "peerDependencies": { "solid-js": "^1.8.6" @@ -4232,9 +4234,9 @@ } }, "node_modules/@storybook/addon-actions": { - "version": "8.3.6", - "resolved": "https://registry.npmjs.org/@storybook/addon-actions/-/addon-actions-8.3.6.tgz", - "integrity": "sha512-nOqgl0WoZK2KwjaABaXMoIgrIHOQl9inOzJvqQau0HOtsvnXGXYfJXYnpjZenoZDoZXKbUDl0U2haDFx2a2fJw==", + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/@storybook/addon-actions/-/addon-actions-8.4.0.tgz", + "integrity": "sha512-xQ84mDIl+jyDpjt8SnCfhqVECQu7k1dLyhiAi983Tp5nyW8KRJa/tEATDLOCpz1eL9AMf2WjAypi+vIiNIul8w==", "dev": true, "license": "MIT", "dependencies": { @@ -4249,13 +4251,13 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.3.6" + "storybook": "^8.4.0" } }, "node_modules/@storybook/addon-backgrounds": { - "version": "8.3.6", - "resolved": "https://registry.npmjs.org/@storybook/addon-backgrounds/-/addon-backgrounds-8.3.6.tgz", - "integrity": "sha512-yBn+a8i5OJzJaX6Bx5MAkfei7c2nvq+RRmvuyvxw11rtDGR6Nz4OBBe56reWxo868wVUggpRTPJCMVe5tDYgVg==", + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/@storybook/addon-backgrounds/-/addon-backgrounds-8.4.0.tgz", + "integrity": "sha512-2LpA7Ja7s76rFjSQHTPhbfmwsCmAuyU5k05CIbbUxM+iBVOaBXUYLaoi8dl448W/o/rmNHeW5YCtxzmMPlScrQ==", "dev": true, "license": "MIT", "dependencies": { @@ -4268,19 +4270,18 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.3.6" + "storybook": "^8.4.0" } }, "node_modules/@storybook/addon-controls": { - "version": "8.3.6", - "resolved": "https://registry.npmjs.org/@storybook/addon-controls/-/addon-controls-8.3.6.tgz", - "integrity": "sha512-9IMLHgtWPuFoRCt3hDsIk1FbkK5SlCMDW1DDwtTBIeWYYZLvptS42+vGVTeQ8v5SejmVzZkzuUdzu3p4sb3IcA==", + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/@storybook/addon-controls/-/addon-controls-8.4.0.tgz", + "integrity": "sha512-KoqwWHi6cUv1WXcANH4l175kNkuFPVhexP/8F9tE9uhv2xHNx5cTefmB174dWpfOO2H3IdUk0RuMWjOZFpztqQ==", "dev": true, "license": "MIT", "dependencies": { "@storybook/global": "^5.0.0", "dequal": "^2.0.2", - "lodash": "^4.17.21", "ts-dedent": "^2.0.0" }, "funding": { @@ -4288,27 +4289,22 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.3.6" + "storybook": "^8.4.0" } }, "node_modules/@storybook/addon-docs": { - "version": "8.3.6", - "resolved": "https://registry.npmjs.org/@storybook/addon-docs/-/addon-docs-8.3.6.tgz", - "integrity": "sha512-31Rk1TOhDIzGM2wNCUIB1xKuWtArW0D2Puua9warEXlQ3FtvwmxnPrwbIzw6ufYZDWPwl9phDYTcRh8WqZIoGg==", + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/@storybook/addon-docs/-/addon-docs-8.4.0.tgz", + "integrity": "sha512-n/tAu8xmfdxTkr7ooDM3h+QwDyP9eoKoKuaKXfiPPevrFk0FXRw5KzNhTHTlHniJ2LD+gyaomPGV6D2oBl1KIg==", "dev": true, "license": "MIT", "dependencies": { "@mdx-js/react": "^3.0.0", - "@storybook/blocks": "8.3.6", - "@storybook/csf-plugin": "8.3.6", - "@storybook/global": "^5.0.0", - "@storybook/react-dom-shim": "8.3.6", - "@types/react": "^16.8.0 || ^17.0.0 || ^18.0.0", - "fs-extra": "^11.1.0", + "@storybook/blocks": "8.4.0", + "@storybook/csf-plugin": "8.4.0", + "@storybook/react-dom-shim": "8.4.0", "react": "^16.8.0 || ^17.0.0 || ^18.0.0", "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0", - "rehype-external-links": "^3.0.0", - "rehype-slug": "^6.0.0", "ts-dedent": "^2.0.0" }, "funding": { @@ -4316,40 +4312,25 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.3.6" - } - }, - "node_modules/@storybook/addon-docs/node_modules/fs-extra": { - "version": "11.2.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz", - "integrity": "sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==", - "dev": true, - "license": "MIT", - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=14.14" + "storybook": "^8.4.0" } }, "node_modules/@storybook/addon-essentials": { - "version": "8.3.6", - "resolved": "https://registry.npmjs.org/@storybook/addon-essentials/-/addon-essentials-8.3.6.tgz", - "integrity": "sha512-MQPFvThlGU7wlda1xhBPQCmDh90cSSZ31OsVs1uC5kJh0aLbY2gYXPurq1G54kzrYo8SMfBxsXrCplz8Ir6UTg==", + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/@storybook/addon-essentials/-/addon-essentials-8.4.0.tgz", + "integrity": "sha512-45CI0LpNr8ASHEckxbW/osgnsFMWl847S9rALNQUAN3VaqlDQeF/VIDt1s9vtV9ZYNHASxPFmW4qjgylxv8HpQ==", "dev": true, "license": "MIT", "dependencies": { - "@storybook/addon-actions": "8.3.6", - "@storybook/addon-backgrounds": "8.3.6", - "@storybook/addon-controls": "8.3.6", - "@storybook/addon-docs": "8.3.6", - "@storybook/addon-highlight": "8.3.6", - "@storybook/addon-measure": "8.3.6", - "@storybook/addon-outline": "8.3.6", - "@storybook/addon-toolbars": "8.3.6", - "@storybook/addon-viewport": "8.3.6", + "@storybook/addon-actions": "8.4.0", + "@storybook/addon-backgrounds": "8.4.0", + "@storybook/addon-controls": "8.4.0", + "@storybook/addon-docs": "8.4.0", + "@storybook/addon-highlight": "8.4.0", + "@storybook/addon-measure": "8.4.0", + "@storybook/addon-outline": "8.4.0", + "@storybook/addon-toolbars": "8.4.0", + "@storybook/addon-viewport": "8.4.0", "ts-dedent": "^2.0.0" }, "funding": { @@ -4357,13 +4338,13 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.3.6" + "storybook": "^8.4.0" } }, "node_modules/@storybook/addon-highlight": { - "version": "8.3.6", - "resolved": "https://registry.npmjs.org/@storybook/addon-highlight/-/addon-highlight-8.3.6.tgz", - "integrity": "sha512-A7uU+1OPVXGpkklEUJjSl2VEEDLCSNvmffUJlvW1GjajsNFIHOW2CSD+KnfFlQyPxyVbnWAYLqUP4XJxoqrvDw==", + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/@storybook/addon-highlight/-/addon-highlight-8.4.0.tgz", + "integrity": "sha512-tshX/2HnPzGQ9Kza2DARNfirBRhE/Ts7bldbhMiJu20YhJD1jQzXSDEX1cCgHsDc8HKYOsV/Kuu5WDzp/1i97w==", "dev": true, "license": "MIT", "dependencies": { @@ -4374,19 +4355,19 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.3.6" + "storybook": "^8.4.0" } }, "node_modules/@storybook/addon-interactions": { - "version": "8.3.6", - "resolved": "https://registry.npmjs.org/@storybook/addon-interactions/-/addon-interactions-8.3.6.tgz", - "integrity": "sha512-Y0YUJj0oE1+6DFkaTPXM/8+dwTSoy0ltj2Sn2KOTJYzxKQYXBp8TlUv0QOQiGH7o/GKXIWek/VlTuvG/JEeiWw==", + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/@storybook/addon-interactions/-/addon-interactions-8.4.0.tgz", + "integrity": "sha512-yXPAyGRjElYZ0ObUo7Ipww4CwgScc2FXMxeQHKSZ+9wuDOU8uSaWpINB++8nS6yPZyhHeUqgzGCF/w3ZusNvzA==", "dev": true, "license": "MIT", "dependencies": { "@storybook/global": "^5.0.0", - "@storybook/instrumenter": "8.3.6", - "@storybook/test": "8.3.6", + "@storybook/instrumenter": "8.4.0", + "@storybook/test": "8.4.0", "polished": "^4.2.2", "ts-dedent": "^2.2.0" }, @@ -4395,13 +4376,13 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.3.6" + "storybook": "^8.4.0" } }, "node_modules/@storybook/addon-links": { - "version": "8.3.6", - "resolved": "https://registry.npmjs.org/@storybook/addon-links/-/addon-links-8.3.6.tgz", - "integrity": "sha512-EGEH/kEjndEldbqyiJ8XSASkxqwzL/lgA/+6mHpa6Ljxhk1s5IMGcdA1ymJYJ2BpNdkUxRj/uxAa38eGcQiJ/g==", + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/@storybook/addon-links/-/addon-links-8.4.0.tgz", + "integrity": "sha512-6MxHHfeshQLA0q40/djK7LrDDLtYt/FnKbNWgH4fbj281IELn1BTYc8cihyN7CZEWyqRqusi6EFpGFgO3LWBgA==", "dev": true, "license": "MIT", "dependencies": { @@ -4415,7 +4396,7 @@ }, "peerDependencies": { "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta", - "storybook": "^8.3.6" + "storybook": "^8.4.0" }, "peerDependenciesMeta": { "react": { @@ -4424,9 +4405,9 @@ } }, "node_modules/@storybook/addon-measure": { - "version": "8.3.6", - "resolved": "https://registry.npmjs.org/@storybook/addon-measure/-/addon-measure-8.3.6.tgz", - "integrity": "sha512-VHWeGgYjhzhwb2WAqYW/qyEPqg5pwKR/XqFfd+3tEirUs/64olL1l3lzLwZ8Cm07cJ81T8Z4myywb9kObZfQlw==", + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/@storybook/addon-measure/-/addon-measure-8.4.0.tgz", + "integrity": "sha512-Zews/03IL/UUJMaheduGxJKG1mEwfpGq7SP1RtK0kK3l/yh6kVcKG63RXw5zVEoDwG4wzuuH9vi06Mlzhu8/rA==", "dev": true, "license": "MIT", "dependencies": { @@ -4438,13 +4419,13 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.3.6" + "storybook": "^8.4.0" } }, "node_modules/@storybook/addon-outline": { - "version": "8.3.6", - "resolved": "https://registry.npmjs.org/@storybook/addon-outline/-/addon-outline-8.3.6.tgz", - "integrity": "sha512-+VXpM8SIHX2cn30qLlMvER9/6iioFRSn2sAfLniqy4RrcQmcMP+qgE7ZzbzExt7cneJh3VFsYqBS/HElu14Vgg==", + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/@storybook/addon-outline/-/addon-outline-8.4.0.tgz", + "integrity": "sha512-qZdHaWq/DXoVycKzcynvVxg3MNzavsGCuq9HUl2X/oBKNii00NEZgYVLo4dQ8iDNlmykuJ9ReyXKBOKF7AU+9w==", "dev": true, "license": "MIT", "dependencies": { @@ -4456,13 +4437,13 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.3.6" + "storybook": "^8.4.0" } }, "node_modules/@storybook/addon-toolbars": { - "version": "8.3.6", - "resolved": "https://registry.npmjs.org/@storybook/addon-toolbars/-/addon-toolbars-8.3.6.tgz", - "integrity": "sha512-FJH+lRoZXENfpMR/G09ZqB0TmL/k6bv07GN1ysoVs420tKRgjfz6uXaZz5COrhcdISr5mTNmG+mw9x7xXTfX3Q==", + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/@storybook/addon-toolbars/-/addon-toolbars-8.4.0.tgz", + "integrity": "sha512-fXDeLsAweC1/roe5qNys+pBrjf1Mxof/7O/dZtQZJtcKox4WwzgirxexFFAZLfXOE9awm5svzo0YWYxWk+Lfwg==", "dev": true, "license": "MIT", "funding": { @@ -4470,13 +4451,13 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.3.6" + "storybook": "^8.4.0" } }, "node_modules/@storybook/addon-viewport": { - "version": "8.3.6", - "resolved": "https://registry.npmjs.org/@storybook/addon-viewport/-/addon-viewport-8.3.6.tgz", - "integrity": "sha512-bL51v837W1cng/+0pypkoLsWKWmvux96zLOzqLCpcWAQ4OSMhW3foIWpCiFwMG/KY+GanoOocTx6i7j5hLtuTA==", + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/@storybook/addon-viewport/-/addon-viewport-8.4.0.tgz", + "integrity": "sha512-hbHJzz7PcZ/bazUH3nAdG9yP3CUfF+wPdDwzcqSEVBRjdWSLZ4DHAtB0wajqhUoCsiRehg9avft1NokAc+KOgg==", "dev": true, "license": "MIT", "dependencies": { @@ -4487,30 +4468,19 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.3.6" + "storybook": "^8.4.0" } }, "node_modules/@storybook/blocks": { - "version": "8.3.6", - "resolved": "https://registry.npmjs.org/@storybook/blocks/-/blocks-8.3.6.tgz", - "integrity": "sha512-Oc5jU6EzfsENjrd91KcKyEKBh60RT+8uyLi1RIrymC2C/mzZMTEoNIrbnQt0eIqbjlHxn6y9JMJxHu4NJ4EmZg==", + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/@storybook/blocks/-/blocks-8.4.0.tgz", + "integrity": "sha512-LeXsZLTNcmKtgt0ZRdgzBa2Z8A5CH3gGyjG7QT3M+3yH9fVAXB2XplKOIejDsvR9jSBww3mKXyabX12NVZKz0A==", "dev": true, "license": "MIT", "dependencies": { "@storybook/csf": "^0.1.11", - "@storybook/global": "^5.0.0", - "@storybook/icons": "^1.2.10", - "@types/lodash": "^4.14.167", - "color-convert": "^2.0.1", - "dequal": "^2.0.2", - "lodash": "^4.17.21", - "markdown-to-jsx": "^7.4.5", - "memoizerific": "^1.11.3", - "polished": "^4.2.2", - "react-colorful": "^5.1.2", - "telejson": "^7.2.0", - "ts-dedent": "^2.0.0", - "util-deprecate": "^1.0.2" + "@storybook/icons": "^1.2.12", + "ts-dedent": "^2.0.0" }, "funding": { "type": "opencollective", @@ -4519,7 +4489,7 @@ "peerDependencies": { "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta", "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta", - "storybook": "^8.3.6" + "storybook": "^8.4.0" }, "peerDependenciesMeta": { "react": { @@ -4531,20 +4501,14 @@ } }, "node_modules/@storybook/builder-vite": { - "version": "8.3.6", - "resolved": "https://registry.npmjs.org/@storybook/builder-vite/-/builder-vite-8.3.6.tgz", - "integrity": "sha512-AF4+oFe1mvIHrLvaYsv8B0YSlXQtSlKTKwrXnUbcAbeGRwMmFKA1t3VyAcXV0yB9MtZ8YJsA/uKRkgGEaN7wJQ==", + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/@storybook/builder-vite/-/builder-vite-8.4.0.tgz", + "integrity": "sha512-V1CjAumq1Xkj077MT1A7o00GOdewwQTE2LxhThUaB/qND+sApCaBbB3+jjfz147bu9IFn2esV3k5oLjiwqgUKw==", "dev": true, "license": "MIT", "dependencies": { - "@storybook/csf-plugin": "8.3.6", - "@types/find-cache-dir": "^3.2.1", + "@storybook/csf-plugin": "8.4.0", "browser-assert": "^1.2.1", - "es-module-lexer": "^1.5.0", - "express": "^4.19.2", - "find-cache-dir": "^3.0.0", - "fs-extra": "^11.1.0", - "magic-string": "^0.30.0", "ts-dedent": "^2.0.0" }, "funding": { @@ -4552,53 +4516,22 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "@preact/preset-vite": "*", - "storybook": "^8.3.6", - "typescript": ">= 4.3.x", - "vite": "^4.0.0 || ^5.0.0", - "vite-plugin-glimmerx": "*" - }, - "peerDependenciesMeta": { - "@preact/preset-vite": { - "optional": true - }, - "typescript": { - "optional": true - }, - "vite-plugin-glimmerx": { - "optional": true - } - } - }, - "node_modules/@storybook/builder-vite/node_modules/fs-extra": { - "version": "11.2.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz", - "integrity": "sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==", - "dev": true, - "license": "MIT", - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=14.14" + "storybook": "^8.4.0", + "vite": "^4.0.0 || ^5.0.0" } }, "node_modules/@storybook/core": { - "version": "8.3.6", - "resolved": "https://registry.npmjs.org/@storybook/core/-/core-8.3.6.tgz", - "integrity": "sha512-frwfgf0EJ7QL29DWZ5bla/g0eOOWqJGd14t+VUBlpP920zB6sdDfo7+p9JoCjD9u08lGeFDqbPNKayUk+0qDag==", + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/@storybook/core/-/core-8.4.0.tgz", + "integrity": "sha512-RlvkBNPPLbHtJQ5M3SKfLLtn5GssRBOLBbJLJf8HjraeDI+YRt+J9FVXqNa9aHhOGoxam+hFinmuy9gyMbPW1A==", "dev": true, "license": "MIT", "dependencies": { "@storybook/csf": "^0.1.11", - "@types/express": "^4.17.21", "better-opn": "^3.0.2", "browser-assert": "^1.2.1", - "esbuild": "^0.18.0 || ^0.19.0 || ^0.20.0 || ^0.21.0 || ^0.22.0 || ^0.23.0", + "esbuild": "^0.18.0 || ^0.19.0 || ^0.20.0 || ^0.21.0 || ^0.22.0 || ^0.23.0 || ^0.24.0", "esbuild-register": "^3.5.0", - "express": "^4.19.2", "jsdoc-type-pratt-parser": "^4.0.0", "process": "^0.11.10", "recast": "^0.23.5", @@ -4609,6 +4542,14 @@ "funding": { "type": "opencollective", "url": "https://opencollective.com/storybook" + }, + "peerDependencies": { + "prettier": "^2 || ^3" + }, + "peerDependenciesMeta": { + "prettier": { + "optional": true + } } }, "node_modules/@storybook/csf": { @@ -4622,9 +4563,9 @@ } }, "node_modules/@storybook/csf-plugin": { - "version": "8.3.6", - "resolved": "https://registry.npmjs.org/@storybook/csf-plugin/-/csf-plugin-8.3.6.tgz", - "integrity": "sha512-TJyJPFejO6Gyr3+bXqE/+LomQbivvfHEbee/GwtlRj0XF4KQlqnvuEdEdcK25JbD0NXT8AbyncEUmjoxE7ojQw==", + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/@storybook/csf-plugin/-/csf-plugin-8.4.0.tgz", + "integrity": "sha512-l4vD1XboHh3nFOvcCIjoTED6bQZtRx+T/CUFfuZu3KEA7uJnXt/kUCXair9+Cgky9XvSEMvBPhoqa2dRx9ibBQ==", "dev": true, "license": "MIT", "dependencies": { @@ -4635,13 +4576,13 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.3.6" + "storybook": "^8.4.0" } }, "node_modules/@storybook/docs-tools": { - "version": "8.3.6", - "resolved": "https://registry.npmjs.org/@storybook/docs-tools/-/docs-tools-8.3.6.tgz", - "integrity": "sha512-/Fw/gX1DYt2RGZYido8fEkcazhxmZ2rXoj3qdVXMXZZ3ah4XIeQwo069lgBYeR7XygK/JE22O6TD38COO4jv/w==", + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/@storybook/docs-tools/-/docs-tools-8.4.0.tgz", + "integrity": "sha512-2W0Scn+1iUpQu4rub9fhK49KL4EofxYERjFa8350d5N96/TanCgYSI9au0aDDzG4w6fta7hi6TBKudX0EQn4ZA==", "dev": true, "license": "MIT", "funding": { @@ -4649,7 +4590,7 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.3.6" + "storybook": "^8.4.0" } }, "node_modules/@storybook/global": { @@ -4674,28 +4615,27 @@ } }, "node_modules/@storybook/instrumenter": { - "version": "8.3.6", - "resolved": "https://registry.npmjs.org/@storybook/instrumenter/-/instrumenter-8.3.6.tgz", - "integrity": "sha512-0RowbKwoB/s7rtymlnKNiyWN1Z3ZK5mwgzVjlRmzxDL8hrdi5KDjTNExuJTRR3ZaBP2RR0/I3m/n0p9JhHAZvg==", + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/@storybook/instrumenter/-/instrumenter-8.4.0.tgz", + "integrity": "sha512-iqQdH2lhyRVcCBnVOmjn/r/pFwIJ5X1isUkvyavwPf0KOB2bz+QuXXkvKdzirwQFu9jSLOEdu0v3Fr+PHUbIfA==", "dev": true, "license": "MIT", "dependencies": { "@storybook/global": "^5.0.0", - "@vitest/utils": "^2.0.5", - "util": "^0.12.4" + "@vitest/utils": "^2.1.1" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.3.6" + "storybook": "^8.4.0" } }, "node_modules/@storybook/react-dom-shim": { - "version": "8.3.6", - "resolved": "https://registry.npmjs.org/@storybook/react-dom-shim/-/react-dom-shim-8.3.6.tgz", - "integrity": "sha512-9BO6VXIdli4GHSfiP/Z0gwAf7oQig3D/yWK2U1+91UWDV8nIAgnNBAi76U4ORC6MiK5MdkDfIikIxnLLeLnahA==", + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/@storybook/react-dom-shim/-/react-dom-shim-8.4.0.tgz", + "integrity": "sha512-PYYZVdQ6/ts6hBMAwMEu4hfbyHFPzUYmVsZNtF2egaVJQ44xM4i1Zt+RJuo2NOt5VyBCfXJOs+lSIdmSBY2arw==", "dev": true, "license": "MIT", "funding": { @@ -4705,32 +4645,31 @@ "peerDependencies": { "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta", "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta", - "storybook": "^8.3.6" + "storybook": "^8.4.0" } }, "node_modules/@storybook/test": { - "version": "8.3.6", - "resolved": "https://registry.npmjs.org/@storybook/test/-/test-8.3.6.tgz", - "integrity": "sha512-WIc8LzK9jaEw+e3OiweEM2j3cppPzsWod59swuf6gDBf176EQLIyjtVc+Kh3qO4NNkcL+lwmqaLPjOxlBLaDbg==", + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/@storybook/test/-/test-8.4.0.tgz", + "integrity": "sha512-uHZ6+8RfEauwxi7Zy/LijfyIXrjCD7iTHmnTdT3BdP+2c/lDFAKXzHmbQJitefDFEgz1eHx/MArHZ8V3qu1ogg==", "dev": true, "license": "MIT", "dependencies": { "@storybook/csf": "^0.1.11", "@storybook/global": "^5.0.0", - "@storybook/instrumenter": "8.3.6", + "@storybook/instrumenter": "8.4.0", "@testing-library/dom": "10.4.0", "@testing-library/jest-dom": "6.5.0", "@testing-library/user-event": "14.5.2", "@vitest/expect": "2.0.5", - "@vitest/spy": "2.0.5", - "util": "^0.12.4" + "@vitest/spy": "2.0.5" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.3.6" + "storybook": "^8.4.0" } }, "node_modules/@tailwindcss/container-queries": { @@ -4896,33 +4835,12 @@ "@types/node": "*" } }, - "node_modules/@types/body-parser": { - "version": "1.19.5", - "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.5.tgz", - "integrity": "sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/connect": "*", - "@types/node": "*" - } - }, "node_modules/@types/braces": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/@types/braces/-/braces-3.0.4.tgz", "integrity": "sha512-0WR3b8eaISjEW7RpZnclONaLFDf7buaowRHdqLp4vLj54AsSAYWfh3DRbfiYJY9XDxMgx1B4sE1Afw2PGpuHOA==", "license": "MIT" }, - "node_modules/@types/connect": { - "version": "3.4.38", - "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz", - "integrity": "sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, "node_modules/@types/debug": { "version": "4.1.12", "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", @@ -4939,56 +4857,6 @@ "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", "license": "MIT" }, - "node_modules/@types/express": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.21.tgz", - "integrity": "sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/body-parser": "*", - "@types/express-serve-static-core": "^4.17.33", - "@types/qs": "*", - "@types/serve-static": "*" - } - }, - "node_modules/@types/express-serve-static-core": { - "version": "4.19.6", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.19.6.tgz", - "integrity": "sha512-N4LZ2xG7DatVqhCZzOGb1Yi5lMbXSZcmdLDe9EzSndPV2HpWYWzRbaerl2n27irrm94EPpprqa8KpskPT085+A==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/node": "*", - "@types/qs": "*", - "@types/range-parser": "*", - "@types/send": "*" - } - }, - "node_modules/@types/find-cache-dir": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@types/find-cache-dir/-/find-cache-dir-3.2.1.tgz", - "integrity": "sha512-frsJrz2t/CeGifcu/6uRo4b+SzAwT4NYCVPu1GN8IB9XTzrpPkGuV0tmh9mN+/L0PklAlsC3u5Fxt0ju00LXIw==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/hast": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", - "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/unist": "*" - } - }, - "node_modules/@types/http-errors": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.4.tgz", - "integrity": "sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==", - "dev": true, - "license": "MIT" - }, "node_modules/@types/http-proxy": { "version": "1.17.15", "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.15.tgz", @@ -4998,13 +4866,6 @@ "@types/node": "*" } }, - "node_modules/@types/lodash": { - "version": "4.17.11", - "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-jzqWo/uQP/iqeGGTjhgFp2yaCrCYTauASQcpdzESNCkHjSprBJVcZP9KG9aQ0q+xcsXiKd/iuw/4dLjS3Odc7Q==", - "dev": true, - "license": "MIT" - }, "node_modules/@types/mdast": { "version": "4.0.4", "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.4.tgz", @@ -5031,13 +4892,6 @@ "@types/braces": "*" } }, - "node_modules/@types/mime": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz", - "integrity": "sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==", - "dev": true, - "license": "MIT" - }, "node_modules/@types/ms": { "version": "0.7.34", "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.34.tgz", @@ -5046,9 +4900,9 @@ "license": "MIT" }, "node_modules/@types/node": { - "version": "22.8.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.8.4.tgz", - "integrity": "sha512-SpNNxkftTJOPk0oN+y2bIqurEXHTA2AOZ3EJDDKeJ5VzkvvORSvmQXGQarcOzWV1ac7DCaPBEdMDxBsM+d8jWw==", + "version": "22.8.6", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.8.6.tgz", + "integrity": "sha512-tosuJYKrIqjQIlVCM4PEGxOmyg3FCPa/fViuJChnGeEIhjA46oy8FMVoF9su1/v8PNs2a8Q0iFNyOx0uOF91nw==", "license": "MIT", "dependencies": { "undici-types": "~6.19.8" @@ -5083,21 +4937,8 @@ "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.13.tgz", "integrity": "sha512-hCZTSvwbzWGvhqxp/RqVqwU999pBf2vp7hzIjiYOsl8wqOmUxkQ6ddw1cV3l8811+kdUFus/q4d1Y3E3SyEifA==", "devOptional": true, - "license": "MIT" - }, - "node_modules/@types/qs": { - "version": "6.9.16", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.16.tgz", - "integrity": "sha512-7i+zxXdPD0T4cKDuxCUXJ4wHcsJLwENa6Z3dCu8cfCK743OGy5Nu1RmAGqDPsoTDINVEcdXKRvR/zre+P2Ku1A==", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/range-parser": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.7.tgz", - "integrity": "sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==", - "dev": true, - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/@types/react": { "version": "18.3.11", @@ -5105,6 +4946,7 @@ "integrity": "sha512-r6QZ069rFTjrEYgFdOck1gK7FLVsgJE7tTz0pQBczlBNUhBNk0MQH4UbnFSwjpQLMkLzgqvBBa+qGpLje16eTQ==", "devOptional": true, "license": "MIT", + "peer": true, "dependencies": { "@types/prop-types": "*", "csstype": "^3.0.2" @@ -5116,29 +4958,6 @@ "integrity": "sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==", "license": "MIT" }, - "node_modules/@types/send": { - "version": "0.17.4", - "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.4.tgz", - "integrity": "sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/mime": "^1", - "@types/node": "*" - } - }, - "node_modules/@types/serve-static": { - "version": "1.15.7", - "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.7.tgz", - "integrity": "sha512-W8Ym+h8nhuRwaKPaDw34QUkwsGi6Rc4yYqvKFo5rm2FUEhCFbzVWrxXUxuKK8TASjWsysJY0nsmNCGhCOIsrOw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/http-errors": "*", - "@types/node": "*", - "@types/send": "*" - } - }, "node_modules/@types/triple-beam": { "version": "1.3.5", "resolved": "https://registry.npmjs.org/@types/triple-beam/-/triple-beam-1.3.5.tgz", @@ -5160,13 +4979,6 @@ "dev": true, "license": "MIT" }, - "node_modules/@ungap/structured-clone": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", - "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", - "dev": true, - "license": "ISC" - }, "node_modules/@vercel/nft": { "version": "0.26.5", "resolved": "https://registry.npmjs.org/@vercel/nft/-/nft-0.26.5.tgz", @@ -5347,9 +5159,9 @@ } }, "node_modules/@vitest/pretty-format": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-2.1.3.tgz", - "integrity": "sha512-XH1XdtoLZCpqV59KRbPrIhFCOO0hErxrQCMcvnQete3Vibb9UeIOX02uFPfVn3Z9ZXsq78etlfyhnkmIZSzIwQ==", + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-2.1.4.tgz", + "integrity": "sha512-L95zIAkEuTDbUX1IsjRl+vyBSLh3PwLLgKpghl37aCK9Jvw0iP+wKwIFhfjdUtA2myLgjrG6VU6JCFLv8q/3Ww==", "dev": true, "license": "MIT", "dependencies": { @@ -5373,14 +5185,14 @@ } }, "node_modules/@vitest/utils": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-2.1.3.tgz", - "integrity": "sha512-xpiVfDSg1RrYT0tX6czgerkpcKFmFOF/gCr30+Mve5V2kewCy4Prn1/NDMSRwaSmT7PRaOF83wu+bEtsY1wrvA==", + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-2.1.4.tgz", + "integrity": "sha512-MXDnZn0Awl2S86PSNIim5PWXgIAx8CIkzu35mBdSApUip6RFOGXBCf3YFyeEu8n1IHk4bWD46DeYFu9mQlFIRg==", "dev": true, "license": "MIT", "dependencies": { - "@vitest/pretty-format": "2.1.3", - "loupe": "^3.1.1", + "@vitest/pretty-format": "2.1.4", + "loupe": "^3.1.2", "tinyrainbow": "^1.2.0" }, "funding": { @@ -5422,20 +5234,6 @@ "node": ">=6.5" } }, - "node_modules/accepts": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", - "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", - "dev": true, - "license": "MIT", - "dependencies": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" - }, - "engines": { - "node": ">= 0.6" - } - }, "node_modules/acorn": { "version": "8.12.1", "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.1.tgz", @@ -5767,9 +5565,9 @@ } }, "node_modules/arctic": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/arctic/-/arctic-2.2.0.tgz", - "integrity": "sha512-OGY7XwuFgZ32MUbqd4e7iH2Zq9iZVmub+n0NSFzxNo33Bdkcb4/Zv/sBpeBvYlxToCJRCY46SpjeSubyDVLd5Q==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/arctic/-/arctic-2.2.1.tgz", + "integrity": "sha512-ZaHREgEur4APnlhm7uQwIRFVMjr+z1YPD2O8qpqndPt7m1AW/BeT23nNn+xfoo2iAYx57A8ehq7ACiDQmgIGSw==", "license": "MIT", "dependencies": { "@oslojs/crypto": "1.0.1", @@ -5813,13 +5611,6 @@ "dequal": "^2.0.3" } }, - "node_modules/array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", - "dev": true, - "license": "MIT" - }, "node_modules/assertion-error": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-2.0.1.tgz", @@ -6092,48 +5883,6 @@ "readable-stream": "^3.4.0" } }, - "node_modules/body-parser": { - "version": "1.20.3", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", - "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", - "dev": true, - "license": "MIT", - "dependencies": { - "bytes": "3.1.2", - "content-type": "~1.0.5", - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "on-finished": "2.4.1", - "qs": "6.13.0", - "raw-body": "2.5.2", - "type-is": "~1.6.18", - "unpipe": "1.0.0" - }, - "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" - } - }, - "node_modules/body-parser/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/body-parser/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true, - "license": "MIT" - }, "node_modules/boolbase": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", @@ -6274,16 +6023,6 @@ "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", "license": "MIT" }, - "node_modules/bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.8" - } - }, "node_modules/call-bind": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", @@ -6357,9 +6096,9 @@ } }, "node_modules/chai": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/chai/-/chai-5.1.1.tgz", - "integrity": "sha512-pT1ZgP8rPNqUgieVaEY+ryQr6Q4HXNg8Ei9UnLUrjN4IA7dvQC5JB+/kxVcPNDHyBcc/26CXPkbNzq3qwrOEKA==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/chai/-/chai-5.1.2.tgz", + "integrity": "sha512-aGtmf24DW6MLHHG5gCx4zaI3uBq3KRtxeVs0DjFH6Z0rDNbsvTxFASFvdj79pxjxZ8/5u3PIiN3IwEIQkiiuPw==", "dev": true, "license": "MIT", "dependencies": { @@ -7011,58 +6750,18 @@ "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", "license": "ISC" }, - "node_modules/content-disposition": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", - "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "safe-buffer": "5.2.1" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/content-type": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", - "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, "node_modules/convert-source-map": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", "license": "MIT" }, - "node_modules/cookie": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz", - "integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, "node_modules/cookie-es": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/cookie-es/-/cookie-es-1.2.2.tgz", "integrity": "sha512-+W7VmiVINB+ywl1HGXJXmrqkOhpKrIiVZV6tQuV54ZyQC7MMuBt81Vc336GMLoHBq5hV/F9eXgt5Mnx0Rha5Fg==", "license": "MIT" }, - "node_modules/cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", - "dev": true, - "license": "MIT" - }, "node_modules/copy-anything": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-2.0.6.tgz", @@ -7622,13 +7321,13 @@ } }, "node_modules/drizzle-kit": { - "version": "0.26.2", - "resolved": "https://registry.npmjs.org/drizzle-kit/-/drizzle-kit-0.26.2.tgz", - "integrity": "sha512-cMq8omEKywjIy5KcqUo6LvEFxkl8/zYHsgYjFVXjmPWWtuW4blcz+YW9+oIhoaALgs2ebRjzXwsJgN9i6P49Dw==", + "version": "0.27.0", + "resolved": "https://registry.npmjs.org/drizzle-kit/-/drizzle-kit-0.27.0.tgz", + "integrity": "sha512-vJJCPvKGLFcmOFBELKqcRng3Fc6qTOaKNAqetLEoysD7HjlSlJOWwM54FJlhpqA+cZcIdsL8r9/7v9JIFfs3MA==", "dev": true, "license": "MIT", "dependencies": { - "@drizzle-team/brocli": "^0.10.1", + "@drizzle-team/brocli": "^0.10.2", "@esbuild-kit/esm-loader": "^2.5.5", "esbuild": "^0.19.7", "esbuild-register": "^3.5.0" @@ -7638,14 +7337,14 @@ } }, "node_modules/drizzle-orm": { - "version": "0.35.3", - "resolved": "https://registry.npmjs.org/drizzle-orm/-/drizzle-orm-0.35.3.tgz", - "integrity": "sha512-Uv6N+b36x4BaZlxc96e+ag7RnMapBLGhc4SSi2F7RDwqYJipWjaU/P68RUp1FbW9r+mxoDp8nMz2Eece8PJxfA==", + "version": "0.36.0", + "resolved": "https://registry.npmjs.org/drizzle-orm/-/drizzle-orm-0.36.0.tgz", + "integrity": "sha512-6BETYPdKSR7cDHC0ZfqZk2VrKJ8n/Rfd3ajFPsAbc69gi87nwZ6oBA2wUGMELHA0tQE4kUKN0Ds00LUZQ6Z69A==", "license": "Apache-2.0", "peerDependencies": { "@aws-sdk/client-rds-data": ">=3", "@cloudflare/workers-types": ">=3", - "@electric-sql/pglite": ">=0.1.1", + "@electric-sql/pglite": ">=0.2.0", "@libsql/client": ">=0.10.0", "@libsql/client-wasm": ">=0.10.0", "@neondatabase/serverless": ">=0.1", @@ -7685,6 +7384,9 @@ "@libsql/client": { "optional": true }, + "@libsql/client-wasm": { + "optional": true + }, "@neondatabase/serverless": { "optional": true }, @@ -8065,66 +7767,6 @@ "node": ">=6" } }, - "node_modules/express": { - "version": "4.21.1", - "resolved": "https://registry.npmjs.org/express/-/express-4.21.1.tgz", - "integrity": "sha512-YSFlK1Ee0/GC8QaO91tHcDxJiE/X4FbpAyQWkxAvG6AXCuR65YzK8ua6D9hvi/TzUfZMpc+BwuM1IPw8fmQBiQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "1.20.3", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.7.1", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "2.0.0", - "encodeurl": "~2.0.0", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "1.3.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "merge-descriptors": "1.0.3", - "methods": "~1.1.2", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.10", - "proxy-addr": "~2.0.7", - "qs": "6.13.0", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.19.0", - "serve-static": "1.16.2", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "engines": { - "node": ">= 0.10.0" - } - }, - "node_modules/express/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/express/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true, - "license": "MIT" - }, "node_modules/extend": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", @@ -8200,74 +7842,6 @@ "node": ">=8" } }, - "node_modules/finalhandler": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", - "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "debug": "2.6.9", - "encodeurl": "~2.0.0", - "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", - "unpipe": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/finalhandler/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "license": "MIT", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/finalhandler/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true, - "license": "MIT" - }, - "node_modules/find-cache-dir": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", - "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", - "dev": true, - "license": "MIT", - "dependencies": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/avajs/find-cache-dir?sponsor=1" - } - }, - "node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "license": "MIT", - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/find-yarn-workspace-root": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/find-yarn-workspace-root/-/find-yarn-workspace-root-2.0.0.tgz", @@ -8343,16 +7917,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, "node_modules/fraction.js": { "version": "4.3.7", "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", @@ -8598,13 +8162,6 @@ "integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==", "license": "MIT" }, - "node_modules/github-slugger": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/github-slugger/-/github-slugger-2.0.0.tgz", - "integrity": "sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==", - "dev": true, - "license": "ISC" - }, "node_modules/glob": { "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", @@ -8820,48 +8377,6 @@ "node": ">= 0.4" } }, - "node_modules/hast-util-heading-rank": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/hast-util-heading-rank/-/hast-util-heading-rank-3.0.0.tgz", - "integrity": "sha512-EJKb8oMUXVHcWZTDepnr+WNbfnXKFNf9duMesmr4S8SXTJBJ9M4Yok08pu9vxdJwdlGRhVumk9mEhkEvKGifwA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-is-element": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/hast-util-is-element/-/hast-util-is-element-3.0.0.tgz", - "integrity": "sha512-Val9mnv2IWpLbNPqc/pUem+a7Ipj2aHacCwgNfTiK0vJKl0LF+4Ba4+v1oPHFpf3bLYmreq0/l3Gud9S5OH42g==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hast-util-to-string": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/hast-util-to-string/-/hast-util-to-string-3.0.1.tgz", - "integrity": "sha512-XelQVTDWvqcl3axRfI0xSeoVKzyIFPwsAGSLIsKdJKQMXDYJS4WYrBNF/8J7RdhIcFI2BOHgAifggsvsxp/3+A==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, "node_modules/hey-listen": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/hey-listen/-/hey-listen-1.0.8.tgz", @@ -8951,20 +8466,7 @@ "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", "license": "Apache-2.0", "engines": { - "node": ">=10.17.0" - } - }, - "node_modules/iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "license": "MIT", - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" - }, - "engines": { - "node": ">=0.10.0" + "node": ">=10.17.0" } }, "node_modules/icss-utils": { @@ -9094,16 +8596,6 @@ "url": "https://opencollective.com/ioredis" } }, - "node_modules/ipaddr.js": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", - "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.10" - } - }, "node_modules/iron-webcrypto": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/iron-webcrypto/-/iron-webcrypto-1.2.1.tgz", @@ -9113,19 +8605,6 @@ "url": "https://github.com/sponsors/brc-dd" } }, - "node_modules/is-absolute-url": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-4.0.1.tgz", - "integrity": "sha512-/51/TKE88Lmm7Gc4/8btclNXWS+g50wXhYJq8HWIBAGUBnoAdRu1aXeh364t/O7wXDAcTJDP8PNuNKWUDWie+A==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/is-arguments": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", @@ -9480,6 +8959,7 @@ "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-3.7.7.tgz", "integrity": "sha512-7rCnleh0z2CkXhH67J8K1Ytz0b2Y+yxTPL+/KOJoa20hfnVQ/3/T6W/KflYI4bRHRagNeXeU2bkNGI3v1oS/lw==", "license": "BSD-3-Clause", + "optional": true, "peer": true }, "node_modules/js-tokens": { @@ -9829,19 +9309,6 @@ "url": "https://github.com/sponsors/antfu" } }, - "node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "license": "MIT", - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/lodash": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", @@ -10020,19 +9487,6 @@ "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/markdown-to-jsx": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/markdown-to-jsx/-/markdown-to-jsx-7.5.0.tgz", - "integrity": "sha512-RrBNcMHiFPcz/iqIj0n3wclzHXjwS7mzjBNWecKKVhNTIxQepIix6Il/wZCn2Cg5Y1ow2Qi84+eJrryFRWBEWw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 10" - }, - "peerDependencies": { - "react": ">= 0.14.0" - } - }, "node_modules/mdast-util-find-and-replace": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-3.0.1.tgz", @@ -10239,16 +9693,6 @@ "dev": true, "license": "CC0-1.0" }, - "node_modules/media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, "node_modules/memfs": { "version": "3.5.3", "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.5.3.tgz", @@ -10309,16 +9753,6 @@ "url": "https://github.com/sponsors/mesqueeb" } }, - "node_modules/merge-descriptors": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz", - "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/merge-stream": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", @@ -10334,16 +9768,6 @@ "node": ">= 8" } }, - "node_modules/methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, "node_modules/micromark": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/micromark/-/micromark-4.0.0.tgz", @@ -10960,29 +10384,6 @@ "node": ">=4" } }, - "node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dev": true, - "license": "MIT", - "dependencies": { - "mime-db": "1.52.0" - }, - "engines": { - "node": ">= 0.6" - } - }, "node_modules/mimic-fn": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", @@ -11195,16 +10596,6 @@ "node": ">=0.10.0" } }, - "node_modules/negotiator": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, "node_modules/nitropack": { "version": "2.9.7", "resolved": "https://registry.npmjs.org/nitropack/-/nitropack-2.9.7.tgz", @@ -12248,19 +11639,6 @@ "node": ">= 6" } }, - "node_modules/object-inspect": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.2.tgz", - "integrity": "sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/object-keys": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", @@ -12409,45 +11787,6 @@ "@node-rs/bcrypt": "1.9.0" } }, - "node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "license": "MIT", - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "license": "MIT", - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, "node_modules/package-json-from-dist": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", @@ -12515,16 +11854,6 @@ "npm": ">5" } }, - "node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, "node_modules/path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", @@ -12571,13 +11900,6 @@ "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", "license": "ISC" }, - "node_modules/path-to-regexp": { - "version": "0.1.10", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.10.tgz", - "integrity": "sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==", - "dev": true, - "license": "MIT" - }, "node_modules/path-type": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/path-type/-/path-type-5.0.0.tgz", @@ -12648,19 +11970,6 @@ "node": ">= 6" } }, - "node_modules/pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "find-up": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/pkg-types": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-1.2.1.tgz", @@ -13029,20 +12338,6 @@ "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", "license": "MIT" }, - "node_modules/proxy-addr": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", - "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", - "dev": true, - "license": "MIT", - "dependencies": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" - }, - "engines": { - "node": ">= 0.10" - } - }, "node_modules/prr": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", @@ -13075,22 +12370,6 @@ "integrity": "sha512-HM7yY8O2ilqhmULxGMpcHSF1EhJJ9yBj8gvDEuZ6M+KGJ0YY2hKpnXvRD+hZPLrDVck3ExIGhmPtSdcjC+guuw==", "license": "MIT" }, - "node_modules/qs": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", - "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "side-channel": "^1.0.6" - }, - "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/queue-microtask": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", @@ -13141,22 +12420,6 @@ "node": ">= 0.6" } }, - "node_modules/raw-body": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", - "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", - "dev": true, - "license": "MIT", - "dependencies": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, "node_modules/rc": { "version": "1.2.8", "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", @@ -13195,17 +12458,6 @@ "node": ">=0.10.0" } }, - "node_modules/react-colorful": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/react-colorful/-/react-colorful-5.6.1.tgz", - "integrity": "sha512-1exovf0uGTGyq5mXQT0zgQ80uvj2PCwvF8zY1RN9/vbJVSjSo3fsB/4L3ObbF7u70NduSiK4xu4Y6q1MHoUGEw==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "react": ">=16.8.0", - "react-dom": ">=16.8.0" - } - }, "node_modules/react-dom": { "version": "18.3.1", "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz", @@ -13350,43 +12602,6 @@ "dev": true, "license": "MIT" }, - "node_modules/rehype-external-links": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/rehype-external-links/-/rehype-external-links-3.0.0.tgz", - "integrity": "sha512-yp+e5N9V3C6bwBeAC4n796kc86M4gJCdlVhiMTxIrJG5UHDMh+PJANf9heqORJbt1nrCbDwIlAZKjANIaVBbvw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0", - "@ungap/structured-clone": "^1.0.0", - "hast-util-is-element": "^3.0.0", - "is-absolute-url": "^4.0.0", - "space-separated-tokens": "^2.0.0", - "unist-util-visit": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/rehype-slug": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/rehype-slug/-/rehype-slug-6.0.0.tgz", - "integrity": "sha512-lWyvf/jwu+oS5+hL5eClVd3hNdmwM1kAC0BUvEGD19pajQMIzcNUd/k9GsfQ+FfECvX+JE+e9/btsKH0EjJT6A==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/hast": "^3.0.0", - "github-slugger": "^2.0.0", - "hast-util-heading-rank": "^3.0.0", - "hast-util-to-string": "^3.0.0", - "unist-util-visit": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, "node_modules/remark-gfm": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/remark-gfm/-/remark-gfm-4.0.0.tgz", @@ -13681,8 +12896,8 @@ "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "devOptional": true, - "license": "MIT" + "license": "MIT", + "optional": true }, "node_modules/sass": { "version": "1.79.5", @@ -13975,25 +13190,6 @@ "deprecated": "Shikiji is merged back to Shiki v1.0, please migrate over to get the latest updates", "license": "MIT" }, - "node_modules/side-channel": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", - "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.7", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.4", - "object-inspect": "^1.13.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/signal-exit": { "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", @@ -14157,17 +13353,6 @@ "source-map": "^0.6.0" } }, - "node_modules/space-separated-tokens": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz", - "integrity": "sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==", - "dev": true, - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, "node_modules/stable": { "version": "0.1.8", "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", @@ -14214,13 +13399,13 @@ "license": "MIT" }, "node_modules/storybook": { - "version": "8.3.6", - "resolved": "https://registry.npmjs.org/storybook/-/storybook-8.3.6.tgz", - "integrity": "sha512-9GVbtej6ZzPRUM7KRQ7848506FfHrUiJGqPuIQdoSJd09EmuEoLjmLAgEOmrHBQKgGYMaM7Vh9GsTLim6vwZTQ==", + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/storybook/-/storybook-8.4.0.tgz", + "integrity": "sha512-hLfXPtqfoQUMKVortxXdnQoUwDwtH85eSj9LbqGT/z1f/gLLYGNG3Mv3QbsRjHXhn+EfYffh7wuLpAn+Cicijw==", "dev": true, "license": "MIT", "dependencies": { - "@storybook/core": "8.3.6" + "@storybook/core": "8.4.0" }, "bin": { "getstorybook": "bin/index.cjs", @@ -14230,6 +13415,14 @@ "funding": { "type": "opencollective", "url": "https://opencollective.com/storybook" + }, + "peerDependencies": { + "prettier": "^2 || ^3" + }, + "peerDependenciesMeta": { + "prettier": { + "optional": true + } } }, "node_modules/storybook-solidjs": { @@ -14799,16 +13992,6 @@ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "license": "ISC" }, - "node_modules/telejson": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/telejson/-/telejson-7.2.0.tgz", - "integrity": "sha512-1QTEcJkJEhc8OnStBx/ILRu5J2p0GjvWsBx56bmZRqnrkdBMUe+nX92jxV+p3dB4CP6PZCdJMQJwCggkNBMzkQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "memoizerific": "^1.11.3" - } - }, "node_modules/temporal-polyfill": { "version": "0.2.5", "resolved": "https://registry.npmjs.org/temporal-polyfill/-/temporal-polyfill-0.2.5.tgz", @@ -15684,20 +14867,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/type-is": { - "version": "1.6.18", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", - "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", - "dev": true, - "license": "MIT", - "dependencies": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" - }, - "engines": { - "node": ">= 0.6" - } - }, "node_modules/typescript": { "version": "5.6.3", "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.3.tgz", @@ -15982,16 +15151,6 @@ "node": ">= 10.0.0" } }, - "node_modules/unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.8" - } - }, "node_modules/unplugin": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/unplugin/-/unplugin-1.14.1.tgz", @@ -16201,16 +15360,6 @@ "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", "license": "MIT" }, - "node_modules/utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4.0" - } - }, "node_modules/uuid": { "version": "9.0.1", "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz", @@ -16245,16 +15394,6 @@ "integrity": "sha512-hGdgQozCsQJMyfK5urgFcWEqsSSrK63Awe0t/IMR0bZ0QMtnuaiHzThW81guu3qx9abLi99NEuiaN6P9gVYsNg==", "license": "ISC" }, - "node_modules/vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.8" - } - }, "node_modules/vfile": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.3.tgz", @@ -17807,12 +16946,12 @@ "version": "1.0.0", "license": "GNU General Public License v3.0", "dependencies": { - "@dotenvx/dotenvx": "^1.21.0", + "@dotenvx/dotenvx": "^1.21.1", "@playwright/test": "^1.48.2" }, "devDependencies": { "@faker-js/faker": "^9.1.0", - "@types/node": "^22.8.4" + "@types/node": "^22.8.6" } }, "packages/config": { @@ -17846,23 +16985,23 @@ "@solid-primitives/presence": "^0.0.6", "@solid-primitives/refs": "^1.0.8", "@solid-primitives/rootless": "^1.4.5", - "@solidjs/router": "^0.14.10", + "@solidjs/router": "^0.15.0", "class-variance-authority": "^0.7.0", "solid-js": "^1.9.3", "tailwind-merge": "^2.5.4" }, "devDependencies": { "@nou/config": "^1.0.0", - "@storybook/addon-essentials": "^8.3.6", - "@storybook/addon-interactions": "^8.3.6", - "@storybook/addon-links": "^8.3.6", - "@storybook/blocks": "^8.3.6", - "@storybook/docs-tools": "^8.3.6", - "@storybook/test": "^8.3.6", + "@storybook/addon-essentials": "^8.4.0", + "@storybook/addon-interactions": "^8.4.0", + "@storybook/addon-links": "^8.4.0", + "@storybook/blocks": "^8.4.0", + "@storybook/docs-tools": "^8.4.0", + "@storybook/test": "^8.4.0", "autoprefixer": "^10.4.20", "postcss": "^8.4.47", "remark-gfm": "^4.0.0", - "storybook": "^8.3.6", + "storybook": "^8.4.0", "storybook-solidjs": "^1.0.0-beta.2", "storybook-solidjs-vite": "^1.0.0-beta.2", "tailwindcss": "^3.4.14", @@ -17889,13 +17028,13 @@ "@solid-primitives/refs": "^1.0.8", "@solid-primitives/storage": "^4.2.1", "@solidjs/meta": "^0.29.4", - "@solidjs/router": "^0.14.10", + "@solidjs/router": "^0.15.0", "@solidjs/start": "^1.0.9", - "arctic": "^2.2.0", + "arctic": "^2.2.1", "better-sqlite3": "^11.5.0", "class-variance-authority": "^0.7.0", "date-fns": "^4.1.0", - "drizzle-orm": "^0.35.3", + "drizzle-orm": "^0.36.0", "drizzle-valibot": "^0.2.0", "lucia": "^3.2.2", "nanoid": "^5.0.8", @@ -17911,10 +17050,10 @@ "devDependencies": { "@faker-js/faker": "^9.1.0", "@nou/config": "^1.0.0", - "@storybook/builder-vite": "^8.3.6", + "@storybook/builder-vite": "^8.4.0", "@types/better-sqlite3": "^7.6.11", "dotenv": "^16.4.5", - "drizzle-kit": "^0.26.2", + "drizzle-kit": "^0.27.0", "tailwindcss": "^3.4.14", "tsx": "^4.19.2", "vite": "^5.4.10", diff --git a/packages/acceptance-tests/package.json b/packages/acceptance-tests/package.json index f3fa389c..73253e6e 100644 --- a/packages/acceptance-tests/package.json +++ b/packages/acceptance-tests/package.json @@ -19,10 +19,10 @@ "author": "", "devDependencies": { "@faker-js/faker": "^9.1.0", - "@types/node": "^22.8.4" + "@types/node": "^22.8.6" }, "dependencies": { - "@dotenvx/dotenvx": "^1.21.0", + "@dotenvx/dotenvx": "^1.21.1", "@playwright/test": "^1.48.2" } } diff --git a/packages/ui/package.json b/packages/ui/package.json index b60661ec..83a35e9d 100644 --- a/packages/ui/package.json +++ b/packages/ui/package.json @@ -22,23 +22,23 @@ "@solid-primitives/presence": "^0.0.6", "@solid-primitives/refs": "^1.0.8", "@solid-primitives/rootless": "^1.4.5", - "@solidjs/router": "^0.14.10", + "@solidjs/router": "^0.15.0", "class-variance-authority": "^0.7.0", "solid-js": "^1.9.3", "tailwind-merge": "^2.5.4" }, "devDependencies": { "@nou/config": "^1.0.0", - "@storybook/addon-essentials": "^8.3.6", - "@storybook/addon-interactions": "^8.3.6", - "@storybook/addon-links": "^8.3.6", - "@storybook/blocks": "^8.3.6", - "@storybook/docs-tools": "^8.3.6", - "@storybook/test": "^8.3.6", + "@storybook/addon-essentials": "^8.4.0", + "@storybook/addon-interactions": "^8.4.0", + "@storybook/addon-links": "^8.4.0", + "@storybook/blocks": "^8.4.0", + "@storybook/docs-tools": "^8.4.0", + "@storybook/test": "^8.4.0", "autoprefixer": "^10.4.20", "postcss": "^8.4.47", "remark-gfm": "^4.0.0", - "storybook": "^8.3.6", + "storybook": "^8.4.0", "storybook-solidjs": "^1.0.0-beta.2", "storybook-solidjs-vite": "^1.0.0-beta.2", "tailwindcss": "^3.4.14", diff --git a/packages/web/package.json b/packages/web/package.json index 8b513afd..d5461dc1 100644 --- a/packages/web/package.json +++ b/packages/web/package.json @@ -25,13 +25,13 @@ "@solid-primitives/refs": "^1.0.8", "@solid-primitives/storage": "^4.2.1", "@solidjs/meta": "^0.29.4", - "@solidjs/router": "^0.14.10", + "@solidjs/router": "^0.15.0", "@solidjs/start": "^1.0.9", - "arctic": "^2.2.0", + "arctic": "^2.2.1", "better-sqlite3": "^11.5.0", "class-variance-authority": "^0.7.0", "date-fns": "^4.1.0", - "drizzle-orm": "^0.35.3", + "drizzle-orm": "^0.36.0", "drizzle-valibot": "^0.2.0", "lucia": "^3.2.2", "nanoid": "^5.0.8", @@ -47,10 +47,10 @@ "devDependencies": { "@faker-js/faker": "^9.1.0", "@nou/config": "^1.0.0", - "@storybook/builder-vite": "^8.3.6", + "@storybook/builder-vite": "^8.4.0", "@types/better-sqlite3": "^7.6.11", "dotenv": "^16.4.5", - "drizzle-kit": "^0.26.2", + "drizzle-kit": "^0.27.0", "tailwindcss": "^3.4.14", "tsx": "^4.19.2", "vite": "^5.4.10", diff --git a/packages/web/src/lib/utils/make-persisted-signal.ts b/packages/web/src/lib/utils/make-persisted-signal.ts index e1af1048..ff0659c6 100644 --- a/packages/web/src/lib/utils/make-persisted-signal.ts +++ b/packages/web/src/lib/utils/make-persisted-signal.ts @@ -1,4 +1,4 @@ -import { cache, createAsync, revalidate } from "@solidjs/router"; +import { createAsync, query, revalidate } from "@solidjs/router"; import { untrack } from "solid-js"; import { isServer } from "solid-js/web"; @@ -27,7 +27,7 @@ const getServerSetting = async (name: string) => { return deserialize(getCookie(name)); }; -const setting = cache(async (name: string): Promise => { +const setting = query(async (name: string): Promise => { if (isServer) { return getServerSetting(name); } diff --git a/packages/web/src/routes/(www).tsx b/packages/web/src/routes/(www).tsx index 69d657e9..9dc05d2f 100644 --- a/packages/web/src/routes/(www).tsx +++ b/packages/web/src/routes/(www).tsx @@ -2,13 +2,13 @@ import { Icon, NavCard, type SvgIcons, Text } from "@nou/ui"; import type { RouteDefinition } from "@solidjs/router"; import { type Accessor, For, type ParentProps } from "solid-js"; -import { cacheTranslations, createTranslator } from "~/server/i18n"; +import { createTranslator, queryDictionary } from "~/server/i18n"; import { LogoLink } from "~/lib/logo-link"; export const route = { preload() { - void cacheTranslations("www"); + void queryDictionary("www"); }, } satisfies RouteDefinition; diff --git a/packages/web/src/routes/app.tsx b/packages/web/src/routes/app.tsx index ffde4e44..52e5cfd4 100644 --- a/packages/web/src/routes/app.tsx +++ b/packages/web/src/routes/app.tsx @@ -1,11 +1,11 @@ import { Toaster } from "@nou/ui"; import type { RouteDefinition, RouteSectionProps } from "@solidjs/router"; -import { cacheTranslations, createTranslator } from "~/server/i18n"; +import { createTranslator, queryDictionary } from "~/server/i18n"; export const route = { async preload() { - void cacheTranslations("app"); + void queryDictionary("app"); }, } satisfies RouteDefinition; diff --git a/packages/web/src/routes/app/(home)/index.tsx b/packages/web/src/routes/app/(home)/index.tsx index f6299b12..58d768c7 100644 --- a/packages/web/src/routes/app/(home)/index.tsx +++ b/packages/web/src/routes/app/(home)/index.tsx @@ -5,7 +5,7 @@ import { For, Match, Show, Suspense, Switch, createUniqueId, lazy } from "solid- import { getUserPets } from "~/server/api/pet"; import { getUserFamily } from "~/server/api/user"; -import { cacheTranslations, createTranslator } from "~/server/i18n"; +import { createTranslator, queryDictionary } from "~/server/i18n"; import { AppHeader } from "~/lib/app-header"; import { FamilyInviteDialog } from "~/lib/family-invite"; @@ -15,7 +15,7 @@ const CreateNewPetForm = lazy(() => import("~/lib/create-new-pet-form")); export const route = { preload() { - void cacheTranslations("app"); + void queryDictionary("app"); void getUserPets(); void getUserFamily(); }, diff --git a/packages/web/src/routes/app/family(invite)/invite/[invite-code].tsx b/packages/web/src/routes/app/family(invite)/invite/[invite-code].tsx index 0142975f..65467564 100644 --- a/packages/web/src/routes/app/family(invite)/invite/[invite-code].tsx +++ b/packages/web/src/routes/app/family(invite)/invite/[invite-code].tsx @@ -12,7 +12,7 @@ import { Match, Show, Suspense, Switch } from "solid-js"; import { checkFamilyInvite, joinFamilyWithLink } from "~/server/api/family-invite"; import { getUserProfile } from "~/server/api/user"; import { UserAlreadyInFamily, isErrorResponse } from "~/server/errors"; -import { cacheTranslations, createTranslator } from "~/server/i18n"; +import { createTranslator, queryDictionary } from "~/server/i18n"; import { AccountMenu } from "~/lib/account-menu"; import { FamilyInviteBenefits } from "~/lib/family-invite-benefits"; @@ -20,7 +20,7 @@ import { HeroImage } from "~/lib/hero-image"; export const route = { preload() { - void cacheTranslations("invited"); + void queryDictionary("invited"); void getUserProfile(); }, } satisfies RouteDefinition; diff --git a/packages/web/src/routes/app/family.tsx b/packages/web/src/routes/app/family.tsx index e2570b77..1024dfbc 100644 --- a/packages/web/src/routes/app/family.tsx +++ b/packages/web/src/routes/app/family.tsx @@ -4,14 +4,14 @@ import { type RouteDefinition, type RouteSectionProps, createAsync } from "@soli import { Match, Show, Suspense, Switch } from "solid-js"; import { getUserFamily } from "~/server/api/user"; -import { T, cacheTranslations, createTranslator } from "~/server/i18n"; +import { T, createTranslator, queryDictionary } from "~/server/i18n"; import { AppHeader } from "~/lib/app-header"; import { FamilyInviteDialog } from "~/lib/family-invite"; export const route = { preload() { - void cacheTranslations("family"); + void queryDictionary("family"); void getUserFamily(); }, } satisfies RouteDefinition; diff --git a/packages/web/src/routes/app/family/(family).tsx b/packages/web/src/routes/app/family/(family).tsx index 24b5681e..e0f85c36 100644 --- a/packages/web/src/routes/app/family/(family).tsx +++ b/packages/web/src/routes/app/family/(family).tsx @@ -17,7 +17,7 @@ import { For, Match, Show, Suspense, Switch } from "solid-js"; import { cancelFamilyJoin, getFamilyMembers, leaveFamily } from "~/server/api/family"; import { getUserFamily } from "~/server/api/user"; -import { T, cacheTranslations, createTranslator } from "~/server/i18n"; +import { T, createTranslator, queryDictionary } from "~/server/i18n"; import { FamilyInviteDialog } from "~/lib/family-invite"; import { FamilyNameForm } from "~/lib/family-invite/family-name-form"; @@ -25,7 +25,7 @@ import { WaitingFamilyConfirmation } from "~/lib/family-invite/waiting-family-co export const route = { preload() { - void cacheTranslations("family"); + void queryDictionary("family"); void getUserFamily(); void getFamilyMembers(); }, diff --git a/packages/web/src/routes/app/family/[memberId].tsx b/packages/web/src/routes/app/family/[memberId].tsx index cc38ca32..1f99dd04 100644 --- a/packages/web/src/routes/app/family/[memberId].tsx +++ b/packages/web/src/routes/app/family/[memberId].tsx @@ -3,12 +3,12 @@ import { type RouteDefinition, type RouteSectionProps, createAsync } from "@soli import { Show } from "solid-js"; import { getFamilyMember, getFamilyMembers } from "~/server/api/family"; -import { cacheTranslations } from "~/server/i18n"; +import { queryDictionary } from "~/server/i18n"; import type { UserID } from "~/server/types"; export const route = { load({ params }) { - void cacheTranslations("family"); + void queryDictionary("family"); void getFamilyMember(params.memberId as UserID); }, } satisfies RouteDefinition; diff --git a/packages/web/src/routes/app/pets.tsx b/packages/web/src/routes/app/pets.tsx index db86e97f..5a5c1f52 100644 --- a/packages/web/src/routes/app/pets.tsx +++ b/packages/web/src/routes/app/pets.tsx @@ -11,12 +11,12 @@ import { Match, Switch } from "solid-js"; import { AppHeader } from "~/lib/app-header"; import { getPet } from "~/server/api/pet"; import { getUserFamily } from "~/server/api/user"; -import { cacheTranslations, createTranslator } from "~/server/i18n"; +import { createTranslator, queryDictionary } from "~/server/i18n"; import type { PetID } from "~/server/types"; export const route = { preload({ params }) { - void cacheTranslations("pets"); + void queryDictionary("pets"); void getUserFamily(); if (params.petId) { void getPet(params.petId as PetID); diff --git a/packages/web/src/routes/app/pets/[petId]/edit.tsx b/packages/web/src/routes/app/pets/[petId]/edit.tsx index e9e2b807..309e3ff4 100644 --- a/packages/web/src/routes/app/pets/[petId]/edit.tsx +++ b/packages/web/src/routes/app/pets/[petId]/edit.tsx @@ -16,12 +16,12 @@ import { GenderSwitch } from "~/lib/species-selector"; import { isSubmissionValidationError } from "~/lib/utils/submission"; import { deletePet, getPet, updatePet } from "~/server/api/pet"; import type { DatabasePet } from "~/server/db/schema"; -import { T, cacheTranslations, createTranslator } from "~/server/i18n"; +import { T, createTranslator, queryDictionary } from "~/server/i18n"; import type { PetGender, PetID, PetSpecies } from "~/server/types"; export const route = { preload({ params }) { - void cacheTranslations("pets"); + void queryDictionary("pets"); void getPet(params.petId as PetID); }, } satisfies RouteDefinition; diff --git a/packages/web/src/routes/app/pets/[petId]/index.tsx b/packages/web/src/routes/app/pets/[petId]/index.tsx index 5e94ca6d..00bff123 100644 --- a/packages/web/src/routes/app/pets/[petId]/index.tsx +++ b/packages/web/src/routes/app/pets/[petId]/index.tsx @@ -21,14 +21,14 @@ import { PetPicture } from "~/lib/pet-home-card"; import { getPetScheduledActivities, listAllPetActivities } from "~/server/api/activity"; import { getPet } from "~/server/api/pet"; import { getUser, getUserProfile } from "~/server/api/user"; -import { cacheTranslations, createTranslator } from "~/server/i18n"; +import { createTranslator, queryDictionary } from "~/server/i18n"; import type { ActivityType, PetID, UserSession } from "~/server/types"; import { PetPastActivities } from "./_lib/past-activities"; import { PetPrescriptions, type PrescriptionActivity } from "./_lib/pet-prescriptions"; export const route = { preload({ params }) { - void cacheTranslations("pets"); + void queryDictionary("pets"); void getPet(params.petId as PetID); void getUserProfile(); void getUser(); diff --git a/packages/web/src/routes/app/profile/index.tsx b/packages/web/src/routes/app/profile/index.tsx index be04d52f..19999971 100644 --- a/packages/web/src/routes/app/profile/index.tsx +++ b/packages/web/src/routes/app/profile/index.tsx @@ -17,7 +17,7 @@ import { Show, Suspense } from "solid-js"; import { getUserProfile, updateUserProfile } from "~/server/api/user"; import type { DatabaseUser } from "~/server/db/schema"; -import { cacheTranslations, createTranslator } from "~/server/i18n"; +import { createTranslator, queryDictionary } from "~/server/i18n"; import type { SupportedLocale } from "~/server/i18n/shared"; import { AppHeader } from "~/lib/app-header"; @@ -25,7 +25,7 @@ import { pickSubmissionValidationErrors } from "~/lib/utils/submission"; export const route = { preload() { - void cacheTranslations("profile"); + void queryDictionary("profile"); void getUserProfile(); }, } satisfies RouteDefinition; diff --git a/packages/web/src/server/api/activity.ts b/packages/web/src/server/api/activity.ts index 67a5cc2f..fb252f87 100644 --- a/packages/web/src/server/api/activity.ts +++ b/packages/web/src/server/api/activity.ts @@ -1,17 +1,17 @@ -import { action, cache } from "@solidjs/router"; +import { action, query } from "@solidjs/router"; import { createPetActivityServer, getPetScheduledActivitiesServer, listAllPetActivitiesServer, } from "./activity.server"; -export const getPetScheduledActivities = cache( +export const getPetScheduledActivities = query( (...args: Parameters) => getPetScheduledActivitiesServer(...args), "pet-activities-scheduled", ); -export const listAllPetActivities = cache( +export const listAllPetActivities = query( (...args: Parameters) => listAllPetActivitiesServer(...args), "pet-activities", ); diff --git a/packages/web/src/server/api/family-invite.ts b/packages/web/src/server/api/family-invite.ts index a50a1309..70a1a3c4 100644 --- a/packages/web/src/server/api/family-invite.ts +++ b/packages/web/src/server/api/family-invite.ts @@ -1,4 +1,4 @@ -import { action, cache } from "@solidjs/router"; +import { action, query } from "@solidjs/router"; import { checkFamilyInviteServer, @@ -8,9 +8,9 @@ import { moveUserFromTheWaitListServer, } from "./family-invite.server"; -export const getFamilyInvite = cache(getFamilyInviteServer, "family-invite-code"); +export const getFamilyInvite = query(getFamilyInviteServer, "family-invite-code"); -export const checkFamilyInvite = cache(checkFamilyInviteServer, "check-family-invite"); +export const checkFamilyInvite = query(checkFamilyInviteServer, "check-family-invite"); export const joinFamilyWithLink = action(joinFamilyWithLinkServer, "join-family"); diff --git a/packages/web/src/server/api/family.ts b/packages/web/src/server/api/family.ts index eed0e028..82e47f1d 100644 --- a/packages/web/src/server/api/family.ts +++ b/packages/web/src/server/api/family.ts @@ -1,4 +1,4 @@ -import { action, cache } from "@solidjs/router"; +import { action, query } from "@solidjs/router"; import { cancelFamilyJoinServer, @@ -9,9 +9,9 @@ import { updateFamilyServer, } from "./family.server"; -export const getFamilyMembers = cache(getFamilyMembersServer, "family-members"); +export const getFamilyMembers = query(getFamilyMembersServer, "family-members"); -export const getFamilyMember = cache(getFamilyMemberServer, "family-member"); +export const getFamilyMember = query(getFamilyMemberServer, "family-member"); export const updateFamily = action(updateFamilyServer, "update-family"); diff --git a/packages/web/src/server/api/pet.ts b/packages/web/src/server/api/pet.ts index dec10a42..e100a4a6 100644 --- a/packages/web/src/server/api/pet.ts +++ b/packages/web/src/server/api/pet.ts @@ -1,4 +1,4 @@ -import { action, cache } from "@solidjs/router"; +import { action, query } from "@solidjs/router"; import { createPetServer, @@ -11,7 +11,7 @@ import { updatePetWeightServer, } from "./pet.server"; -export const getUserPets = cache(getUserPetsServer, "user-pets"); +export const getUserPets = query(getUserPetsServer, "user-pets"); export const createPet = action(createPetServer, "create-pet"); @@ -23,6 +23,6 @@ export const updatePetBreed = action(updatePetBreedServer, "update-pet-breed"); export const updatePet = action(updatePetServer, "update-pet"); -export const getPet = cache(getPetServer, "user-pet"); +export const getPet = query(getPetServer, "user-pet"); export const deletePet = action(deletePetServer, "delete-pet"); diff --git a/packages/web/src/server/api/user.ts b/packages/web/src/server/api/user.ts index f07bcadd..19242a30 100644 --- a/packages/web/src/server/api/user.ts +++ b/packages/web/src/server/api/user.ts @@ -1,11 +1,11 @@ -import { action, cache } from "@solidjs/router"; +import { action, query } from "@solidjs/router"; import { getRequestUser } from "~/server/auth/request-user"; import { userFamily } from "~/server/db/queries/user-family"; import { getUserProfileServer, updateUserProfileServer } from "./user.server"; -export const getUserFamily = cache(async () => { +export const getUserFamily = query(async () => { "use server"; const currentUser = await getRequestUser(); @@ -17,12 +17,12 @@ export const getUserFamily = cache(async () => { return user; }, "user-family"); -export const getUser = cache(async () => { +export const getUser = query(async () => { "use server"; const user = await getRequestUser(); return user; }, "user"); -export const getUserProfile = cache(getUserProfileServer, "user-profile"); +export const getUserProfile = query(getUserProfileServer, "user-profile"); export const updateUserProfile = action(updateUserProfileServer, "update-user-profile"); diff --git a/packages/web/src/server/i18n/index.tsx b/packages/web/src/server/i18n/index.tsx index a326ee38..7f7dcd0c 100644 --- a/packages/web/src/server/i18n/index.tsx +++ b/packages/web/src/server/i18n/index.tsx @@ -1,12 +1,12 @@ import { resolveTemplate, translator } from "@solid-primitives/i18n"; -import { cache, createAsync } from "@solidjs/router"; +import { createAsync, query } from "@solidjs/router"; import type { JSX, ParentProps } from "solid-js"; import { getRequestEvent } from "solid-js/web"; import { getDictionary } from "./dict"; import type { Namespace, NamespaceMap } from "./dict"; -export const cacheTranslations = cache(async (namespace: T) => { +export const queryDictionary = query(async (namespace: T) => { "use server"; return getDictionary(namespace); // 1 hour browser cache @@ -22,14 +22,14 @@ export const cacheTranslations = cache(async (namespace: T) * Revalidation is required to ensure no new deployed code is relying on translations that aren't available due to caching. */ export const createTranslator = (namespace: T) => { - const dict = createAsync(() => cacheTranslations(namespace) as Promise, { + const dict = createAsync(() => queryDictionary(namespace) as Promise, { name: `t-${namespace}`, deferStream: true, }); return translator(dict, resolveTemplate); }; -export const getLocale = cache(async () => { +export const getLocale = query(async () => { "use server"; const event = getRequestEvent(); const locale = event?.locals.locale; diff --git a/packages/web/src/server/types.ts b/packages/web/src/server/types.ts index 29a8cade..114d394d 100644 --- a/packages/web/src/server/types.ts +++ b/packages/web/src/server/types.ts @@ -24,3 +24,4 @@ export type PrescriptionMedicationType = NonNullable; export type { UserSession } from "~/server/auth/user-session"; +export type { DatabaseSession } from "~/server/db/schema";