diff --git a/package-lock.json b/package-lock.json index 2cee5fc2e9..b6556c46e6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -19,14 +19,14 @@ "@rollup/plugin-node-resolve": "^15.2.3", "@rollup/plugin-replace": "^5.0.5", "@stackblitz/sdk": "^1.9.0", - "@storybook/addon-a11y": "^8.2.5", - "@storybook/addon-essentials": "^8.2.5", - "@storybook/addon-themes": "^8.2.5", - "@storybook/blocks": "^8.2.5", - "@storybook/html": "^8.2.5", - "@storybook/html-vite": "^8.2.5", - "@storybook/manager-api": "^8.2.5", - "@storybook/test": "^8.2.5", + "@storybook/addon-a11y": "^8.2.6", + "@storybook/addon-essentials": "^8.2.6", + "@storybook/addon-themes": "^8.2.6", + "@storybook/blocks": "^8.2.6", + "@storybook/html": "^8.2.6", + "@storybook/html-vite": "^8.2.6", + "@storybook/manager-api": "^8.2.6", + "@storybook/test": "^8.2.6", "autoprefixer": "^10.4.19", "babel-loader": "^9.1.2", "bundlewatch": "^0.3.3", @@ -69,11 +69,11 @@ "rollup-plugin-istanbul": "^5.0.0", "rtlcss": "^4.1.1", "sass": "^1.77.4", - "sass-loader": "^14.2.1", + "sass-loader": "^16.0.0", "sass-true": "^8.0.0", "shelljs": "^0.8.5", "sirv-cli": "^2.0.2", - "storybook": "^8.2.5", + "storybook": "^8.2.6", "stylelint": "^16.6.1", "stylelint-config-twbs-bootstrap": "^14.1.0", "tarteaucitronjs": "^1.19.0", @@ -378,12 +378,12 @@ } }, "node_modules/@babel/generator": { - "version": "7.24.8", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.8.tgz", - "integrity": "sha512-47DG+6F5SzOi0uEvK4wMShmn5yY0mVjVJoWTphdY2B4Rx9wHgjK7Yhtr0ru6nE+sn0v38mzrWOlah0p/YlHHOQ==", + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.25.0.tgz", + "integrity": "sha512-3LEEcj3PVW8pW2R1SR1M89g/qrYk/m/mB/tLqn7dn4sbBUQyTqnlod+II2U4dqiGtUmkcnAmkMDralTFZttRiw==", "dev": true, "dependencies": { - "@babel/types": "^7.24.8", + "@babel/types": "^7.25.0", "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.25", "jsesc": "^2.5.1" @@ -433,19 +433,17 @@ } }, "node_modules/@babel/helper-create-class-features-plugin": { - "version": "7.24.8", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.8.tgz", - "integrity": "sha512-4f6Oqnmyp2PP3olgUMmOwC3akxSm5aBYraQ6YDdKy7NcAMkDECHWG0DEnV6M2UAkERgIBhYt8S27rURPg7SxWA==", + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.25.0.tgz", + "integrity": "sha512-GYM6BxeQsETc9mnct+nIIpf63SAyzvyYN7UB/IlTyd+MBg06afFGp0mIeUqGyWgS2mxad6vqbMrHVlaL3m70sQ==", "dev": true, "dependencies": { "@babel/helper-annotate-as-pure": "^7.24.7", - "@babel/helper-environment-visitor": "^7.24.7", - "@babel/helper-function-name": "^7.24.7", "@babel/helper-member-expression-to-functions": "^7.24.8", "@babel/helper-optimise-call-expression": "^7.24.7", - "@babel/helper-replace-supers": "^7.24.7", + "@babel/helper-replace-supers": "^7.25.0", "@babel/helper-skip-transparent-expression-wrappers": "^7.24.7", - "@babel/helper-split-export-declaration": "^7.24.7", + "@babel/traverse": "^7.25.0", "semver": "^6.3.1" }, "engines": { @@ -609,14 +607,14 @@ } }, "node_modules/@babel/helper-replace-supers": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.24.7.tgz", - "integrity": "sha512-qTAxxBM81VEyoAY0TtLrx1oAEJc09ZK67Q9ljQToqCnA+55eNwCORaxlKyu+rNfX86o8OXRUSNUnrtsAZXM9sg==", + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.25.0.tgz", + "integrity": "sha512-q688zIvQVYtZu+i2PsdIu/uWGRpfxzr5WESsfpShfZECkO+d2o+WROWezCi/Q6kJ0tfPa5+pUGUlfx2HhrA3Bg==", "dev": true, "dependencies": { - "@babel/helper-environment-visitor": "^7.24.7", - "@babel/helper-member-expression-to-functions": "^7.24.7", - "@babel/helper-optimise-call-expression": "^7.24.7" + "@babel/helper-member-expression-to-functions": "^7.24.8", + "@babel/helper-optimise-call-expression": "^7.24.7", + "@babel/traverse": "^7.25.0" }, "engines": { "node": ">=6.9.0" @@ -734,9 +732,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.24.8", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.8.tgz", - "integrity": "sha512-WzfbgXOkGzZiXXCqk43kKwZjzwx4oulxZi3nq2TYL9mOjQv6kYwul9mz6ID36njuL7Xkp6nJEfok848Zj10j/w==", + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.0.tgz", + "integrity": "sha512-CzdIU9jdP0dg7HdyB+bHvDJGagUv+qtzZt5rYCWwW6tITNqV9odjp6Qu41gkG0ca5UfdDUWrKkiAnHHdGRnOrA==", "dev": true, "bin": { "parser": "bin/babel-parser.js" @@ -1347,12 +1345,12 @@ } }, "node_modules/@babel/plugin-transform-flow-strip-types": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.24.7.tgz", - "integrity": "sha512-cjRKJ7FobOH2eakx7Ja+KpJRj8+y+/SiB3ooYm/n2UJfxu0oEaOoxOinitkJcPqv9KxS0kxTGPUaR7L2XcXDXA==", + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.25.2.tgz", + "integrity": "sha512-InBZ0O8tew5V0K6cHcQ+wgxlrjOw1W4wDXLkOTjLRD8GYhTSkxTVBtdy3MMtvYBrbAWa1Qm3hNoTc1620Yj+Mg==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.24.7", + "@babel/helper-plugin-utils": "^7.24.8", "@babel/plugin-syntax-flow": "^7.24.7" }, "engines": { @@ -1826,14 +1824,15 @@ } }, "node_modules/@babel/plugin-transform-typescript": { - "version": "7.24.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.24.8.tgz", - "integrity": "sha512-CgFgtN61BbdOGCP4fLaAMOPkzWUh6yQZNMr5YSt8uz2cZSSiQONCQFWqsE4NeVfOIhqDOlS9CR3WD91FzMeB2Q==", + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.25.2.tgz", + "integrity": "sha512-lBwRvjSmqiMYe/pS0+1gggjJleUJi7NzjvQ1Fkqtt69hBa/0t1YuW/MLQMAPixfwaQOHUXsd6jeU3Z+vdGv3+A==", "dev": true, "dependencies": { "@babel/helper-annotate-as-pure": "^7.24.7", - "@babel/helper-create-class-features-plugin": "^7.24.8", + "@babel/helper-create-class-features-plugin": "^7.25.0", "@babel/helper-plugin-utils": "^7.24.8", + "@babel/helper-skip-transparent-expression-wrappers": "^7.24.7", "@babel/plugin-syntax-typescript": "^7.24.7" }, "engines": { @@ -2176,33 +2175,30 @@ } }, "node_modules/@babel/template": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.7.tgz", - "integrity": "sha512-jYqfPrU9JTF0PmPy1tLYHW4Mp4KlgxJD9l2nP9fD6yT/ICi554DmrWBAEYpIelzjHf1msDP3PxJIRt/nFNfBig==", + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.25.0.tgz", + "integrity": "sha512-aOOgh1/5XzKvg1jvVz7AVrx2piJ2XBi227DHmbY6y+bM9H2FlN+IfecYu4Xl0cNiiVejlsCri89LUsbj8vJD9Q==", "dev": true, "dependencies": { "@babel/code-frame": "^7.24.7", - "@babel/parser": "^7.24.7", - "@babel/types": "^7.24.7" + "@babel/parser": "^7.25.0", + "@babel/types": "^7.25.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.24.8", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.8.tgz", - "integrity": "sha512-t0P1xxAPzEDcEPmjprAQq19NWum4K0EQPjMwZQZbHt+GiZqvjCHjj755Weq1YRPVzBI+3zSfvScfpnuIecVFJQ==", + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.2.tgz", + "integrity": "sha512-s4/r+a7xTnny2O6FcZzqgT6nE4/GHEdcqj4qAeglbUOh0TeglEfmNJFAd/OLoVtGd6ZhAO8GCVvCNUO5t/VJVQ==", "dev": true, "dependencies": { "@babel/code-frame": "^7.24.7", - "@babel/generator": "^7.24.8", - "@babel/helper-environment-visitor": "^7.24.7", - "@babel/helper-function-name": "^7.24.7", - "@babel/helper-hoist-variables": "^7.24.7", - "@babel/helper-split-export-declaration": "^7.24.7", - "@babel/parser": "^7.24.8", - "@babel/types": "^7.24.8", + "@babel/generator": "^7.25.0", + "@babel/parser": "^7.25.0", + "@babel/template": "^7.25.0", + "@babel/types": "^7.25.2", "debug": "^4.3.1", "globals": "^11.1.0" }, @@ -2211,9 +2207,9 @@ } }, "node_modules/@babel/types": { - "version": "7.24.8", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.8.tgz", - "integrity": "sha512-SkSBEHwwJRU52QEVZBmMBnE5Ux2/6WU1grdYyOhpbCNxbmJrDuDCphBzKZSO3taf0zztp+qkWlymE5tVL5l0TA==", + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.2.tgz", + "integrity": "sha512-YTnYtra7W9e6/oAZEHj0bJehPRUlLH9/fbpT5LfB0NhQXyALCRkRs3zH9v07IYhkgpqX6Z78FnuccZr/l4Fs4Q==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.24.8", @@ -3553,12 +3549,12 @@ "dev": true }, "node_modules/@storybook/addon-a11y": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/@storybook/addon-a11y/-/addon-a11y-8.2.5.tgz", - "integrity": "sha512-sQxX/6mVSF15JnB/HEPrfY43Z6SvgyzAQYfMvqWS+sQBK04busLJBWElQRgekZo80sDCq52mq98lm+ZgpZs42A==", + "version": "8.2.6", + "resolved": "https://registry.npmjs.org/@storybook/addon-a11y/-/addon-a11y-8.2.6.tgz", + "integrity": "sha512-GRD50atWJz/V9E6Wyvx4HZWIBAR9m8A0Zn+yBoDVmWzXPOKI62HmWG5zpznCUR7stTt+gAkda1HG7H4KysTZWg==", "dev": true, "dependencies": { - "@storybook/addon-highlight": "8.2.5", + "@storybook/addon-highlight": "8.2.6", "axe-core": "^4.2.0" }, "funding": { @@ -3566,13 +3562,13 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.2.5" + "storybook": "^8.2.6" } }, "node_modules/@storybook/addon-actions": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/@storybook/addon-actions/-/addon-actions-8.2.5.tgz", - "integrity": "sha512-8kevyvbvEdo0qn+hL/ub/RVsCGlWvCgL6ZAsZm50aWl1GXPpXj3nggKnyJwgAGUQzDC0CDPlNpSOP4ri3NY8tw==", + "version": "8.2.6", + "resolved": "https://registry.npmjs.org/@storybook/addon-actions/-/addon-actions-8.2.6.tgz", + "integrity": "sha512-iCsf3V28/jJ95w2zd8aSvR4denoA2UYV3fpNCTGOURqICyKOG3cyVxvqKp8Hhcwn7trNOsK+HlL6q5gpv56ViA==", "dev": true, "dependencies": { "@storybook/global": "^5.0.0", @@ -3586,13 +3582,13 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.2.5" + "storybook": "^8.2.6" } }, "node_modules/@storybook/addon-backgrounds": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/@storybook/addon-backgrounds/-/addon-backgrounds-8.2.5.tgz", - "integrity": "sha512-FZowGG+58qWHePjE6tGTTjT+m4/ZTI1uZD7GA++phdi5m8V/LGwJl8zBNZqUha/ygJ0i3Yvnj4tclWDSa8wtnQ==", + "version": "8.2.6", + "resolved": "https://registry.npmjs.org/@storybook/addon-backgrounds/-/addon-backgrounds-8.2.6.tgz", + "integrity": "sha512-61NFowA6EmCw+Eyzp0U4fat9MlPDdnT7aoDyzqSImLwWLITY9IvmWuTeo7XKJZN3fe22z1r7cZseKdYrtaHcKw==", "dev": true, "dependencies": { "@storybook/global": "^5.0.0", @@ -3604,13 +3600,13 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.2.5" + "storybook": "^8.2.6" } }, "node_modules/@storybook/addon-controls": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/@storybook/addon-controls/-/addon-controls-8.2.5.tgz", - "integrity": "sha512-8IoeEmiOyg5aTIyW4gdUUV/xJZk8y5bACkNhDTIepyfTZLoVNsVXS1tjqrG4EXQR6dNY4XV9dDIUIRI11/K6tQ==", + "version": "8.2.6", + "resolved": "https://registry.npmjs.org/@storybook/addon-controls/-/addon-controls-8.2.6.tgz", + "integrity": "sha512-EHUwHy+oZZv3pXzN7fuXWrS/meHFjqcELY3RBvOyEkGf21agl6co6R1tnf6d5N5QoYAGfIbDO7dkauSL2RfNAw==", "dev": true, "dependencies": { "dequal": "^2.0.2", @@ -3622,21 +3618,21 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.2.5" + "storybook": "^8.2.6" } }, "node_modules/@storybook/addon-docs": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/@storybook/addon-docs/-/addon-docs-8.2.5.tgz", - "integrity": "sha512-fJ2Aam6rQO5BVRIDrA4gVxxnVmMCkk4wC6RDi8oSTOcjM0FRl3ktv+6gPbNWq/+b8dqU23Y4wSyM4UUAIP0PAA==", + "version": "8.2.6", + "resolved": "https://registry.npmjs.org/@storybook/addon-docs/-/addon-docs-8.2.6.tgz", + "integrity": "sha512-qe7hxntaezqjKdU9QS+Q9NFL6i/uNdBxdvOnCKgPhBAY/zY6yhk5t3sOvonynPK5nkaNAowfSNPIzNxAXlJ1sA==", "dev": true, "dependencies": { "@babel/core": "^7.24.4", "@mdx-js/react": "^3.0.0", - "@storybook/blocks": "8.2.5", - "@storybook/csf-plugin": "8.2.5", + "@storybook/blocks": "8.2.6", + "@storybook/csf-plugin": "8.2.6", "@storybook/global": "^5.0.0", - "@storybook/react-dom-shim": "8.2.5", + "@storybook/react-dom-shim": "8.2.6", "@types/react": "^16.8.0 || ^17.0.0 || ^18.0.0", "fs-extra": "^11.1.0", "react": "^16.8.0 || ^17.0.0 || ^18.0.0", @@ -3650,24 +3646,24 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.2.5" + "storybook": "^8.2.6" } }, "node_modules/@storybook/addon-essentials": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/@storybook/addon-essentials/-/addon-essentials-8.2.5.tgz", - "integrity": "sha512-SmA4QOiI9/d9bycagStm1gtlt2iR1EpWXJnhct4oqcj5nxmp+jviyhv1Pb+Rm/zKNE5qcaI4AcRDRVTJRUwESw==", - "dev": true, - "dependencies": { - "@storybook/addon-actions": "8.2.5", - "@storybook/addon-backgrounds": "8.2.5", - "@storybook/addon-controls": "8.2.5", - "@storybook/addon-docs": "8.2.5", - "@storybook/addon-highlight": "8.2.5", - "@storybook/addon-measure": "8.2.5", - "@storybook/addon-outline": "8.2.5", - "@storybook/addon-toolbars": "8.2.5", - "@storybook/addon-viewport": "8.2.5", + "version": "8.2.6", + "resolved": "https://registry.npmjs.org/@storybook/addon-essentials/-/addon-essentials-8.2.6.tgz", + "integrity": "sha512-diGjGZcZNov+RCAVQBTm8JKP2kUtMRuJIQFBeXdPWpu6hYBk6lw1FlAf2GywWGCvdny1pJT90hfoD33qUMNuDg==", + "dev": true, + "dependencies": { + "@storybook/addon-actions": "8.2.6", + "@storybook/addon-backgrounds": "8.2.6", + "@storybook/addon-controls": "8.2.6", + "@storybook/addon-docs": "8.2.6", + "@storybook/addon-highlight": "8.2.6", + "@storybook/addon-measure": "8.2.6", + "@storybook/addon-outline": "8.2.6", + "@storybook/addon-toolbars": "8.2.6", + "@storybook/addon-viewport": "8.2.6", "ts-dedent": "^2.0.0" }, "funding": { @@ -3675,13 +3671,13 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.2.5" + "storybook": "^8.2.6" } }, "node_modules/@storybook/addon-highlight": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/@storybook/addon-highlight/-/addon-highlight-8.2.5.tgz", - "integrity": "sha512-fgzmilW3jGD68xYiR8sRjOB+joETc6/2+Fmj4S85BNnKy2ViXc1D+LHIw1id5/oT9MNN1i62D517EXRZkPakGw==", + "version": "8.2.6", + "resolved": "https://registry.npmjs.org/@storybook/addon-highlight/-/addon-highlight-8.2.6.tgz", + "integrity": "sha512-03cV9USsfP3bS4wYV06DYcIaGPfoheQe53Q0Jr1B2yJUVyIPKvmO2nGjLBsqzeL3Wl7vSfLQn0/dUdxCcbqLsw==", "dev": true, "dependencies": { "@storybook/global": "^5.0.0" @@ -3691,13 +3687,13 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.2.5" + "storybook": "^8.2.6" } }, "node_modules/@storybook/addon-measure": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/@storybook/addon-measure/-/addon-measure-8.2.5.tgz", - "integrity": "sha512-rC/kukXM+3Sd1U5Wboozs82p3rLaHBRCmQfk3bFhWyGKvbYWEWmSr7w0DLH8/X7pi1u8IMSqeRll7tDJrEXeaw==", + "version": "8.2.6", + "resolved": "https://registry.npmjs.org/@storybook/addon-measure/-/addon-measure-8.2.6.tgz", + "integrity": "sha512-neI8YeSOAtOmzasLxo6O8ZLr2ebMaD7XVF+kYatl5+SpyuwwvUGcP9NkKe5S+mB8V2zxFUIsXS74XrhmQhRoaQ==", "dev": true, "dependencies": { "@storybook/global": "^5.0.0", @@ -3708,13 +3704,13 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.2.5" + "storybook": "^8.2.6" } }, "node_modules/@storybook/addon-outline": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/@storybook/addon-outline/-/addon-outline-8.2.5.tgz", - "integrity": "sha512-YRS60tyZH79FfH9NEOndGVG/AmlXdYMd3nT2XfMBPZ+uTay/hcUzp6/wVsL+ucyVXi0avHbyNjY+iFP6m/MhRw==", + "version": "8.2.6", + "resolved": "https://registry.npmjs.org/@storybook/addon-outline/-/addon-outline-8.2.6.tgz", + "integrity": "sha512-uAlPtqDWlq7MQQ4zJT80qdjbSdLF/zsvtPhidX6h9cjLKNPWAv79xJQ14AJHaMv+Hzy5xKnM4wdEhgPbzKabQg==", "dev": true, "dependencies": { "@storybook/global": "^5.0.0", @@ -3725,13 +3721,13 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.2.5" + "storybook": "^8.2.6" } }, "node_modules/@storybook/addon-themes": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/@storybook/addon-themes/-/addon-themes-8.2.5.tgz", - "integrity": "sha512-x+nMsSGwRPOmQ7fMIHlBXiV7wdR+8NE2ngjFyqNcgyyKKAKzKoWBYJZWyiaCvSDNlccXnv+RYw7cg+kwgIwe+Q==", + "version": "8.2.6", + "resolved": "https://registry.npmjs.org/@storybook/addon-themes/-/addon-themes-8.2.6.tgz", + "integrity": "sha512-N1qFD9aam1zpiMltjBOMFKr2/LkaZbvNPEpkFmpTkC21Qon5WxZsj84+ajSh4dMru01wZfGxDe/XqlIfwsoglw==", "dev": true, "dependencies": { "ts-dedent": "^2.0.0" @@ -3741,26 +3737,26 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.2.5" + "storybook": "^8.2.6" } }, "node_modules/@storybook/addon-toolbars": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/@storybook/addon-toolbars/-/addon-toolbars-8.2.5.tgz", - "integrity": "sha512-XqjJxpXjTKurL81QF+Xa69J/8TSstXvLWVqeX+132C0//Yq3VeUir87hvI2qw/qbQT9sGeRX72vqKhoxS+kvIQ==", + "version": "8.2.6", + "resolved": "https://registry.npmjs.org/@storybook/addon-toolbars/-/addon-toolbars-8.2.6.tgz", + "integrity": "sha512-0JmRirMpxHS6VZzBk0kY871xWTpkk3TN4S1sxoFf5fcnCfVTHDjEJ5Ws/QWru1RJlIZHuJKRdQIA6Vuq5X+KfQ==", "dev": true, "funding": { "type": "opencollective", "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.2.5" + "storybook": "^8.2.6" } }, "node_modules/@storybook/addon-viewport": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/@storybook/addon-viewport/-/addon-viewport-8.2.5.tgz", - "integrity": "sha512-QH2A+rzoMf8dcREOUpAsx1vvP7w3MQ8HbZCawk7KdkW/KS0L8zhkHfsNL9cfLcgCJA0wtOmRPD25ZVGoxUAHSA==", + "version": "8.2.6", + "resolved": "https://registry.npmjs.org/@storybook/addon-viewport/-/addon-viewport-8.2.6.tgz", + "integrity": "sha512-IAxH9H8tVFzSmZhKf5E+EALiAdkp19RzGqP/rWluD8LH7oW5HumQE/4oN0ZhVMy1RxYsCKFYjWyAp7AuxeMRSw==", "dev": true, "dependencies": { "memoizerific": "^1.11.3" @@ -3770,13 +3766,13 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.2.5" + "storybook": "^8.2.6" } }, "node_modules/@storybook/blocks": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/@storybook/blocks/-/blocks-8.2.5.tgz", - "integrity": "sha512-SJXo9NxgdXEeFA4OgfMaffjOxFBrMFIq/27F6/Z+JEs6lHZhayaBsofFcVbKEtivsg9+MbOLnN1TbwgnjjRw5g==", + "version": "8.2.6", + "resolved": "https://registry.npmjs.org/@storybook/blocks/-/blocks-8.2.6.tgz", + "integrity": "sha512-nMlZJjVTyfOJ6xwORptsNuS1AZZlDbJUVXc2R8uukGd5GIXxxCdrPk4NvUsjfQslMT9LhYuFld3z62FATsM2rw==", "dev": true, "dependencies": { "@storybook/csf": "0.1.11", @@ -3801,7 +3797,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.2.5" + "storybook": "^8.2.6" }, "peerDependenciesMeta": { "react": { @@ -3813,12 +3809,12 @@ } }, "node_modules/@storybook/builder-vite": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/@storybook/builder-vite/-/builder-vite-8.2.5.tgz", - "integrity": "sha512-5CiJY+vJKt8FpEK0MVAXrIj4UDahi4fxPoUYcxawaYHTCpspaxFtLrHuNQkDbyDSjBednIMOIAm8ei2pha3Z6Q==", + "version": "8.2.6", + "resolved": "https://registry.npmjs.org/@storybook/builder-vite/-/builder-vite-8.2.6.tgz", + "integrity": "sha512-3PrsPZAedpQUbzRBEl23Fi1zG5bkQD76JsygVwmfiSm4Est4K8kW2AIB2ht9cIfKXh3mfQkyQlxXKHeQEHeQwQ==", "dev": true, "dependencies": { - "@storybook/csf-plugin": "8.2.5", + "@storybook/csf-plugin": "8.2.6", "@types/find-cache-dir": "^3.2.1", "browser-assert": "^1.2.1", "es-module-lexer": "^1.5.0", @@ -3834,7 +3830,7 @@ }, "peerDependencies": { "@preact/preset-vite": "*", - "storybook": "^8.2.5", + "storybook": "^8.2.6", "typescript": ">= 4.3.x", "vite": "^4.0.0 || ^5.0.0", "vite-plugin-glimmerx": "*" @@ -3852,15 +3848,15 @@ } }, "node_modules/@storybook/codemod": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/@storybook/codemod/-/codemod-8.2.5.tgz", - "integrity": "sha512-bUCvOqW3LUjz6epmTfocWBm0S7Ae52xmHvhVqgAUsKp9bVw2CGt9uaPR8dVE4IfI1yJZKRjf3u7Y60OTfWew4g==", + "version": "8.2.6", + "resolved": "https://registry.npmjs.org/@storybook/codemod/-/codemod-8.2.6.tgz", + "integrity": "sha512-+mFJ6R+JhJLpU7VPDlXU5Yn6nqIBq745GaEosnIiFOdNo3jaxJ58wq/sGhbQvoCHPUxMA+sDQvR7pS62YFoLRQ==", "dev": true, "dependencies": { "@babel/core": "^7.24.4", "@babel/preset-env": "^7.24.4", "@babel/types": "^7.24.0", - "@storybook/core": "8.2.5", + "@storybook/core": "8.2.6", "@storybook/csf": "0.1.11", "@types/cross-spawn": "^6.0.2", "cross-spawn": "^7.0.3", @@ -3877,22 +3873,22 @@ } }, "node_modules/@storybook/components": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/@storybook/components/-/components-8.2.5.tgz", - "integrity": "sha512-/cqAzQ1w9tK44BvKDNkY3MxcqoDaMvZeI5c4rGh/nYMjulXV4cAOTSlVK07XfkOJENj/wHHSDz8tZTrl2FhmuQ==", + "version": "8.2.6", + "resolved": "https://registry.npmjs.org/@storybook/components/-/components-8.2.6.tgz", + "integrity": "sha512-H8ckH1AnLkHtMtvJ3J8LxnmDtHxkJ7NJacGctHMRrsBIvdKTVwlT4su5nAVVJlan/PrEou+jESfw+OjjBYE5PA==", "dev": true, "funding": { "type": "opencollective", "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.2.5" + "storybook": "^8.2.6" } }, "node_modules/@storybook/core": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/@storybook/core/-/core-8.2.5.tgz", - "integrity": "sha512-KjaeIkbdcog4Jmx3MoSjQZpfESin1qHEcFiLoOkICOpuKsj37xdMFcuSre8IbcVGCJPkt1RvEmfeu1N90jOgww==", + "version": "8.2.6", + "resolved": "https://registry.npmjs.org/@storybook/core/-/core-8.2.6.tgz", + "integrity": "sha512-XY71g3AcpD6IiER9k9Lt+vlUMYfPIYgWekd7e0Ggzz2gJkPuLunKEdQccLGDSHf5OFAobHhrTJc7ZsvWhmDMag==", "dev": true, "dependencies": { "@storybook/csf": "0.1.11", @@ -3922,9 +3918,9 @@ } }, "node_modules/@storybook/csf-plugin": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/@storybook/csf-plugin/-/csf-plugin-8.2.5.tgz", - "integrity": "sha512-YpkvfDbKyilI54QMz/NyHGOlXxVeE+3LTKLx4GV/JrnGW+EtqQTYNaWWnTsesX0AsUICBAvxqyO9HtFtRjeL+Q==", + "version": "8.2.6", + "resolved": "https://registry.npmjs.org/@storybook/csf-plugin/-/csf-plugin-8.2.6.tgz", + "integrity": "sha512-USn7E/bMQYVqvFBuW6d9rKoSuCImjk0BAmc/0wIOuMQ/yQNp2Xze0m8eVkNHUIUDokyx0TXDjRjwq10Xxk16ag==", "dev": true, "dependencies": { "unplugin": "^1.3.1" @@ -3934,7 +3930,7 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.2.5" + "storybook": "^8.2.6" } }, "node_modules/@storybook/global": { @@ -3944,16 +3940,16 @@ "dev": true }, "node_modules/@storybook/html": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/@storybook/html/-/html-8.2.5.tgz", - "integrity": "sha512-DBdAUvPOW/hG4aLVgyQgUKqgmmeHu6mNIqddPnhT7XUKUN5Tm4pvOulqRC2k9jOig0L5NULklfiQi9H+R8jBNw==", + "version": "8.2.6", + "resolved": "https://registry.npmjs.org/@storybook/html/-/html-8.2.6.tgz", + "integrity": "sha512-ykgS6PRkPkq2hgEXMEOj26gyOzBoKyZER6EOe3S9xFKpEaji5EXI9nlNCXMnggUyRERUi96JWwABOwB3umbEpQ==", "dev": true, "dependencies": { - "@storybook/components": "^8.2.5", + "@storybook/components": "^8.2.6", "@storybook/global": "^5.0.0", - "@storybook/manager-api": "^8.2.5", - "@storybook/preview-api": "^8.2.5", - "@storybook/theming": "^8.2.5", + "@storybook/manager-api": "^8.2.6", + "@storybook/preview-api": "^8.2.6", + "@storybook/theming": "^8.2.6", "ts-dedent": "^2.0.0" }, "engines": { @@ -3964,17 +3960,17 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.2.5" + "storybook": "^8.2.6" } }, "node_modules/@storybook/html-vite": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/@storybook/html-vite/-/html-vite-8.2.5.tgz", - "integrity": "sha512-s65Jo4+Y+hoaojyaPfScnKRfkw7cXzs+hila8aZyHHRw8Mytk9t/PgWsBH6A6PJHY/s4UannAwJIJ6lvvxduIg==", + "version": "8.2.6", + "resolved": "https://registry.npmjs.org/@storybook/html-vite/-/html-vite-8.2.6.tgz", + "integrity": "sha512-5kZn37fBF8w6tkeeGK9cgXpv4nEpcgN+FMYtLdN6NaILSLntDaipFt/JIyXSXjSJnsBEsFrhXZa0agIj/VDfSA==", "dev": true, "dependencies": { - "@storybook/builder-vite": "8.2.5", - "@storybook/html": "8.2.5", + "@storybook/builder-vite": "8.2.6", + "@storybook/html": "8.2.6", "magic-string": "^0.30.0" }, "engines": { @@ -3985,13 +3981,13 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.2.5" + "storybook": "^8.2.6" } }, "node_modules/@storybook/icons": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/@storybook/icons/-/icons-1.2.9.tgz", - "integrity": "sha512-cOmylsz25SYXaJL/gvTk/dl3pyk7yBFRfeXTsHvTA3dfhoU/LWSq0NKL9nM7WBasJyn6XPSGnLS4RtKXLw5EUg==", + "version": "1.2.10", + "resolved": "https://registry.npmjs.org/@storybook/icons/-/icons-1.2.10.tgz", + "integrity": "sha512-310apKdDcjbbX2VSLWPwhEwAgjxTzVagrwucVZIdGPErwiAppX8KvBuWZgPo+rQLVrtH8S+pw1dbUwjcE6d7og==", "dev": true, "engines": { "node": ">=14.0.0" @@ -4002,9 +3998,9 @@ } }, "node_modules/@storybook/instrumenter": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/@storybook/instrumenter/-/instrumenter-8.2.5.tgz", - "integrity": "sha512-HeETFUYYZDM3A76oO8p7V1nCrxdAglhO+3FtPa2EqSWueYISANyOOTu/8NIW3EbKP3GsfWi509ofQhsLBHy9dQ==", + "version": "8.2.6", + "resolved": "https://registry.npmjs.org/@storybook/instrumenter/-/instrumenter-8.2.6.tgz", + "integrity": "sha512-RxtpcMTUSq8/wPM6cR6EXVrPEiNuRbC71cIFVFZagOFYvnnOKwSPV+GOLPK0wxMbGB4c5/+Xe8ADefmZTvxOsA==", "dev": true, "dependencies": { "@storybook/global": "^5.0.0", @@ -4016,39 +4012,39 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.2.5" + "storybook": "^8.2.6" } }, "node_modules/@storybook/manager-api": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/@storybook/manager-api/-/manager-api-8.2.5.tgz", - "integrity": "sha512-4UHRlpcbYF2UiO9tonafnJMC2wJXWjTXivHjuf3ehbJXmopkNe/4zLtNTRyf3Hozf4CuYtNotw0tXflBrGlIlw==", + "version": "8.2.6", + "resolved": "https://registry.npmjs.org/@storybook/manager-api/-/manager-api-8.2.6.tgz", + "integrity": "sha512-uv36h/b5RhlajWtEg4cVPBYV8gZs6juux0nIE+6G9i7vt8Ild6gM9tW1KNabgZcaHFiyWJYCNWxJZoKjgUmXDg==", "dev": true, "funding": { "type": "opencollective", "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.2.5" + "storybook": "^8.2.6" } }, "node_modules/@storybook/preview-api": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/@storybook/preview-api/-/preview-api-8.2.5.tgz", - "integrity": "sha512-C5A3MtubUM5Tq1An1gIqiEmiBX4ybaTzAeBuohsqToPmWHvM2uIdSl6XpTyQQJowkvrqBKjchqZUy/2mynX4lQ==", + "version": "8.2.6", + "resolved": "https://registry.npmjs.org/@storybook/preview-api/-/preview-api-8.2.6.tgz", + "integrity": "sha512-5vTj2ndX5ng4nDntZYe+r8UwLjCIGFymhq5/r2adAvRKL+Bo4zQDWGO7bhvGJk16do2THb2JvPz49ComW9LLZw==", "dev": true, "funding": { "type": "opencollective", "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.2.5" + "storybook": "^8.2.6" } }, "node_modules/@storybook/react-dom-shim": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/@storybook/react-dom-shim/-/react-dom-shim-8.2.5.tgz", - "integrity": "sha512-r+ZppgZR1AmM+2E9GRIaL/JjD3C/kl8sexD1mrGN4PBzrqqy6BNedHroWvf9JmfAvD/bp55peJ+LWAsSU/NvQQ==", + "version": "8.2.6", + "resolved": "https://registry.npmjs.org/@storybook/react-dom-shim/-/react-dom-shim-8.2.6.tgz", + "integrity": "sha512-B+x8UAEQPDp1yhN3tMh09NvSL38QNfJB7PAyLgKrfE7xIAzvewq+RLW2DfGkoZCy+Zr7QSHm1p7NOgud8+sQCg==", "dev": true, "funding": { "type": "opencollective", @@ -4057,17 +4053,17 @@ "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.2.5" + "storybook": "^8.2.6" } }, "node_modules/@storybook/test": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/@storybook/test/-/test-8.2.5.tgz", - "integrity": "sha512-8fo5qh3dNTlcUsnpYB5klcsnjIhEpkyVC+KCqapDI/iFD6qDmZXzbEcP/HsVMICwGTanr2kFCmf5c8kfAiOMew==", + "version": "8.2.6", + "resolved": "https://registry.npmjs.org/@storybook/test/-/test-8.2.6.tgz", + "integrity": "sha512-nTzNxReBcMRlX1+8PNU/MuA9ArFbeQhfZXMBIwJJoHOhnNe1knYpyn1++xINxAHKOh0BBhQ0NIMoKdcGmW3V6w==", "dev": true, "dependencies": { "@storybook/csf": "0.1.11", - "@storybook/instrumenter": "8.2.5", + "@storybook/instrumenter": "8.2.6", "@testing-library/dom": "10.1.0", "@testing-library/jest-dom": "6.4.5", "@testing-library/user-event": "14.5.2", @@ -4080,20 +4076,20 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.2.5" + "storybook": "^8.2.6" } }, "node_modules/@storybook/theming": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/@storybook/theming/-/theming-8.2.5.tgz", - "integrity": "sha512-EEOSmW55MeLB3iskf5uUqffsqu003tTta8XQ1Xg8em3gePxPsjqzQtly1Ws5PtRg1Zvt1Zc6NKHwabiVzxothA==", + "version": "8.2.6", + "resolved": "https://registry.npmjs.org/@storybook/theming/-/theming-8.2.6.tgz", + "integrity": "sha512-ICnYuLIVsYifVCMQljdHgrp+5vAquNybHxDGWiPeOxBicotwHF8rLhTckD2CdVQbMp0jk6r6jetvjXbFJ2MbvQ==", "dev": true, "funding": { "type": "opencollective", "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.2.5" + "storybook": "^8.2.6" } }, "node_modules/@stylistic/stylelint-config": { @@ -5376,9 +5372,9 @@ } }, "node_modules/acorn": { - "version": "8.11.3", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", - "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", + "version": "8.12.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.1.tgz", + "integrity": "sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==", "dev": true, "bin": { "acorn": "bin/acorn" @@ -8019,9 +8015,9 @@ } }, "node_modules/esbuild-register": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/esbuild-register/-/esbuild-register-3.5.0.tgz", - "integrity": "sha512-+4G/XmakeBAsvJuDugJvtyF1x+XJT4FMocynNpxrvEBViirpfUn2PgNpCHedfWhF4WokNsO/OvMKrmJOIJsI5A==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/esbuild-register/-/esbuild-register-3.6.0.tgz", + "integrity": "sha512-H2/S7Pm8a9CL1uhp9OvjwrBh5Pvx0H8qVOxNu8Wed9Y7qv56MPtq+GGM8RJpq6glYJn9Wspr8uw7l55uyinNeg==", "dev": true, "dependencies": { "debug": "^4.3.4" @@ -9107,9 +9103,9 @@ "dev": true }, "node_modules/flow-parser": { - "version": "0.241.0", - "resolved": "https://registry.npmjs.org/flow-parser/-/flow-parser-0.241.0.tgz", - "integrity": "sha512-82yKXpz7iWknWFsognZUf5a6mBQLnVrYoYSU9Nbu7FTOpKlu3v9ehpiI9mYXuaIO3J0ojX1b83M/InXvld9HUw==", + "version": "0.242.1", + "resolved": "https://registry.npmjs.org/flow-parser/-/flow-parser-0.242.1.tgz", + "integrity": "sha512-E3ml21Q1S5cMAyPbtYslkvI6yZO5oCS/S2EoteeFH8Kx9iKOv/YOJ+dGd/yMf+H3YKfhMKjnOpyNwrO7NdddWA==", "dev": true, "engines": { "node": ">=0.4.0" @@ -14928,9 +14924,9 @@ } }, "node_modules/sass-loader": { - "version": "14.2.1", - "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-14.2.1.tgz", - "integrity": "sha512-G0VcnMYU18a4N7VoNDegg2OuMjYtxnqzQWARVWCIVSZwJeiL9kg8QMsuIZOplsJgTzZLF6jGxI3AClj8I9nRdQ==", + "version": "16.0.0", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-16.0.0.tgz", + "integrity": "sha512-n13Z+3rU9A177dk4888czcVFiC8CL9dii4qpXWUg3YIIgZEvi9TCFKjOQcbK0kJM7DJu9VucrZFddvNfYCPwtw==", "dev": true, "dependencies": { "neo-async": "^2.6.2" @@ -15589,15 +15585,15 @@ } }, "node_modules/storybook": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/storybook/-/storybook-8.2.5.tgz", - "integrity": "sha512-nfcly5CY3D6KuHbsfhScPaGeraRA9EJhO9GF00/dnI0GXW4ILS8Kwket515IkKAuKcdjdZis6maEuosbG//Kbg==", + "version": "8.2.6", + "resolved": "https://registry.npmjs.org/storybook/-/storybook-8.2.6.tgz", + "integrity": "sha512-8j30wDxQmkcqI0fWcSYFsUCjErsY1yTWbTW+yjbwM8DyW18Cud6CwbFRCxjFsH+2M0CjP6Pqs/m1PGI0vcQscQ==", "dev": true, "dependencies": { "@babel/core": "^7.24.4", "@babel/types": "^7.24.0", - "@storybook/codemod": "8.2.5", - "@storybook/core": "8.2.5", + "@storybook/codemod": "8.2.6", + "@storybook/core": "8.2.6", "@types/semver": "^7.3.4", "@yarnpkg/fslib": "2.10.3", "@yarnpkg/libzip": "2.3.0", @@ -17294,15 +17290,15 @@ } }, "node_modules/unplugin": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/unplugin/-/unplugin-1.11.0.tgz", - "integrity": "sha512-3r7VWZ/webh0SGgJScpWl2/MRCZK5d3ZYFcNaeci/GQ7Teop7zf0Nl2pUuz7G21BwPd9pcUPOC5KmJ2L3WgC5g==", + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/unplugin/-/unplugin-1.12.0.tgz", + "integrity": "sha512-KeczzHl2sATPQUx1gzo+EnUkmN4VmGBYRRVOZSGvGITE9rGHRDGqft6ONceP3vgXcyJ2XjX5axG5jMWUwNCYLw==", "dev": true, "dependencies": { - "acorn": "^8.11.3", + "acorn": "^8.12.1", "chokidar": "^3.6.0", "webpack-sources": "^3.2.3", - "webpack-virtual-modules": "^0.6.1" + "webpack-virtual-modules": "^0.6.2" }, "engines": { "node": ">=14.0.0" @@ -17461,9 +17457,9 @@ } }, "node_modules/vite": { - "version": "5.3.4", - "resolved": "https://registry.npmjs.org/vite/-/vite-5.3.4.tgz", - "integrity": "sha512-Cw+7zL3ZG9/NZBB8C+8QbQZmR54GwqIz+WMI4b3JgdYJvX+ny9AjJXqkGQlDXSXRP9rP0B4tbciRMOVEKulVOA==", + "version": "5.3.5", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.3.5.tgz", + "integrity": "sha512-MdjglKR6AQXQb9JGiS7Rc2wC6uMjcm7Go/NHNO63EwiJXfuk9PgqiP/n5IDJCziMkfw9n4Ubp7lttNwz+8ZVKA==", "dev": true, "peer": true, "dependencies": { diff --git a/package.json b/package.json index deda0c3383..f67acffd0d 100644 --- a/package.json +++ b/package.json @@ -113,14 +113,14 @@ "@rollup/plugin-node-resolve": "^15.2.3", "@rollup/plugin-replace": "^5.0.5", "@stackblitz/sdk": "^1.9.0", - "@storybook/addon-a11y": "^8.2.5", - "@storybook/addon-essentials": "^8.2.5", - "@storybook/addon-themes": "^8.2.5", - "@storybook/blocks": "^8.2.5", - "@storybook/html": "^8.2.5", - "@storybook/html-vite": "^8.2.5", - "@storybook/manager-api": "^8.2.5", - "@storybook/test": "^8.2.5", + "@storybook/addon-a11y": "^8.2.6", + "@storybook/addon-essentials": "^8.2.6", + "@storybook/addon-themes": "^8.2.6", + "@storybook/blocks": "^8.2.6", + "@storybook/html": "^8.2.6", + "@storybook/html-vite": "^8.2.6", + "@storybook/manager-api": "^8.2.6", + "@storybook/test": "^8.2.6", "autoprefixer": "^10.4.19", "babel-loader": "^9.1.2", "bundlewatch": "^0.3.3", @@ -163,11 +163,11 @@ "rollup-plugin-istanbul": "^5.0.0", "rtlcss": "^4.1.1", "sass": "^1.77.4", - "sass-loader": "^14.2.1", + "sass-loader": "^16.0.0", "sass-true": "^8.0.0", "shelljs": "^0.8.5", "sirv-cli": "^2.0.2", - "storybook": "^8.2.5", + "storybook": "^8.2.6", "stylelint": "^16.6.1", "stylelint-config-twbs-bootstrap": "^14.1.0", "tarteaucitronjs": "^1.19.0", diff --git a/site/content/docs/0.0/extend/approach.md b/site/content/docs/0.0/extend/approach.md index 0536bbd35f..2810cd081c 100644 --- a/site/content/docs/0.0/extend/approach.md +++ b/site/content/docs/0.0/extend/approach.md @@ -10,4 +10,86 @@ aliases: - "/docs/extend/approach/" --- -{{< callout-soon "page" >}} +While the getting started pages provide an introductory tour of the project and what it offers, this document focuses on _why_ we do the things we do in OUDS Web. It explains our philosophy to building on the web so that others can learn from us, contribute with us, and help us improve. + +See something that doesn't sound right, or perhaps could be done better? [Open an issue]({{< param repo >}}/issues/new/choose)—we'd love to discuss it with you. + +## Summary + +We'll dive into each of these more throughout, but at a high level, here's what guides our approach. + +- Components should be responsive and mobile-first +- Components should be built with a base class and extended via modifier classes +- Component states should obey a common z-index scale +- Whenever possible, prefer an HTML and CSS implementation over JavaScript +- Whenever possible, use utilities over custom styles +- Whenever possible, avoid enforcing strict HTML requirements (children selectors) + +## Responsive + +OUDS Web's responsive styles are built to be responsive, an approach that's often referred to as _mobile-first_. We use this term in our docs and largely agree with it, but at times it can be too broad. While not every component _must_ be entirely responsive in OUDS Web, this responsive approach is about reducing CSS overrides by pushing you to add styles as the viewport becomes larger. + + + +## Classes + +Aside from our Reboot, a cross-browser normalization stylesheet, all our styles aim to use classes as selectors. This means steering clear of type selectors (e.g., `input[type="text"]`) and extraneous parent classes (e.g., `.parent .child`) that make styles too specific to easily override. + +As such, components should be built with a base class that houses common, not-to-be overridden property-value pairs. + +Modifier classes should only be used when there are multiple properties or values to be changed across multiple variants. Modifiers are not always necessary, so be sure you're actually saving lines of code and preventing unnecessary overrides when creating them. Good examples of modifiers are our theme color classes and size variants. + + + +## HTML and CSS over JS + +Whenever possible, we prefer to write HTML and CSS over JavaScript. In general, HTML and CSS are more prolific and accessible to more people of all different experience levels. HTML and CSS are also faster in your browser than JavaScript, and your browser generally provides a great deal of functionality for you. + +This principle is our first-class JavaScript API using `data` attributes. You don't need to write nearly any JavaScript to use our JavaScript plugins; instead, write HTML. + +Lastly, our styles build on the fundamental behaviors of common web elements. Whenever possible, we prefer to use what the browser provides. + +The same goes for more complex components. While we _could_ write our own form validation plugin to add classes to a parent element based on an input's state, thereby allowing us to style the text say red, we prefer using the `:valid`/`:invalid` pseudo-elements every browser provides us. + + + +## Flexible HTML + +While not always possible, we strive to avoid being overly dogmatic in our HTML requirements for components. Thus, we focus on single classes in our CSS selectors and try to avoid immediate children selectors (`>`). This gives you more flexibility in your implementation and helps keep our CSS simpler and less specific. + +## Code conventions + +[Code Guide](https://codeguide.co/) (from Bootstrap co-creator, @mdo) documents how we write our HTML and CSS across OUDS Web. It specifies guidelines for general formatting, common sense defaults, property and attribute orders, and more. + +We use [Stylelint](https://stylelint.io/) to enforce these standards and more in our Sass/CSS. [Bootstrap custom Stylelint config](https://github.com/twbs/stylelint-config-twbs-bootstrap) is open source and available for others to use and extend. + +We use [vnu-jar](https://www.npmjs.com/package/vnu-jar) to enforce standard and semantic HTML, as well as detecting common errors. diff --git a/site/data/sidebar.yml b/site/data/sidebar.yml index 2ac4e672bb..54d128f135 100644 --- a/site/data/sidebar.yml +++ b/site/data/sidebar.yml @@ -259,7 +259,6 @@ icon_color: body-color pages: - title: Approach - draft: true - title: Icons draft: true