diff --git a/.github/workflows/test-storybook.yml b/.github/workflows/test-storybook.yml index dc05ef9..49d7111 100644 --- a/.github/workflows/test-storybook.yml +++ b/.github/workflows/test-storybook.yml @@ -8,7 +8,7 @@ jobs: container: # Make sure to grab the latest version of the Playwright image # https://playwright.dev/docs/docker#pull-the-image - image: mcr.microsoft.com/playwright:v1.54.1-noble + image: mcr.microsoft.com/playwright:v1.57.0-noble steps: - uses: actions/checkout@v4 diff --git a/.storybook/main.ts b/.storybook/main.ts index a7b3804..09339a8 100644 --- a/.storybook/main.ts +++ b/.storybook/main.ts @@ -4,7 +4,7 @@ import svgr from "vite-plugin-svgr"; const config: StorybookConfig = { stories: ["../src/**/*.mdx", "../src/**/*.stories.@(js|jsx|mjs|ts|tsx)"], - staticDirs: ["../node_modules/dkfds/dist"], + staticDirs: ["../node_modules/dkfds/dist", "../src/stories/assets"], previewHead: (head) => `${head} `, diff --git a/.storybook/preview.tsx b/.storybook/preview.tsx index 888b604..89c1871 100644 --- a/.storybook/preview.tsx +++ b/.storybook/preview.tsx @@ -4,7 +4,6 @@ import { DkfdsTranslationProvider } from "../src/contexts/translation-context"; import { loadTranslations } from "../src/stories/translations/translations"; const withSVGHeader = (Story) => { - // eslint-disable-next-line react-hooks/rules-of-hooks const translations = loadTranslations(); return ( @@ -27,12 +26,18 @@ const preview: Preview = { date: /Date$/i, }, }, + layout: "centered", + backgrounds: { grid: { opacity: 0.1, }, }, + + a11y: { + test: "error", + }, }, decorators: [withSVGHeader], tags: ["autodocs"], diff --git a/.storybook/vitest.setup.ts b/.storybook/vitest.setup.ts index e775d53..fd7ac45 100644 --- a/.storybook/vitest.setup.ts +++ b/.storybook/vitest.setup.ts @@ -1,6 +1,7 @@ +import * as a11yAddonAnnotations from "@storybook/addon-a11y/preview"; import { setProjectAnnotations } from "@storybook/react-vite"; import * as projectAnnotations from "./preview"; // This is an important step to apply the right configuration when testing your stories. // More info at: https://storybook.js.org/docs/api/portable-stories/portable-stories-vitest#setprojectannotations -setProjectAnnotations([projectAnnotations]); +setProjectAnnotations([a11yAddonAnnotations, projectAnnotations]); diff --git a/package-lock.json b/package-lock.json index 369734b..ef39f7d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -18,10 +18,10 @@ "@rollup/plugin-node-resolve": "^15.3.1", "@rollup/plugin-terser": "^0.4.4", "@rollup/plugin-typescript": "^12.1.1", - "@storybook/addon-a11y": "^9.0.18", - "@storybook/addon-docs": "^9.0.18", - "@storybook/addon-vitest": "^9.0.18", - "@storybook/react-vite": "^9.0.18", + "@storybook/addon-a11y": "^10.1.0", + "@storybook/addon-docs": "^10.1.0", + "@storybook/addon-vitest": "^10.1.0", + "@storybook/react-vite": "^10.1.0", "@svgr/webpack": "^6.5.1", "@types/react-dom": "^19.1.7", "@typescript-eslint/eslint-plugin": "^8.32.0", @@ -34,7 +34,7 @@ "eslint-plugin-prettier": "^5.2.1", "eslint-plugin-react": "^7.37.2", "eslint-plugin-react-hooks": "^5.0.0", - "eslint-plugin-storybook": "^0.11.0", + "eslint-plugin-storybook": "^10.1.0", "globals": "^16.1.0", "playwright": "^1.54.1", "prettier": "^3.3.3", @@ -44,7 +44,7 @@ "rollup-plugin-import-css": "^3.5.8", "rollup-plugin-peer-deps-external": "^2.2.4", "rollup-plugin-postcss": "^4.0.2", - "storybook": "^9.0.18", + "storybook": "^10.1.0", "typescript": "^5.8.3", "vite-plugin-svgr": "^4.3.0", "vitest": "^3.2.4" @@ -56,9 +56,9 @@ } }, "node_modules/@adobe/css-tools": { - "version": "4.4.3", - "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.4.3.tgz", - "integrity": "sha512-VQKMkwriZbaOgVCby1UDY/LDk5fIjhQicCvVPFqfe+69fWaPWydbWJ3wRt59/YzIwda1I81loas3oCoHxnqvdA==", + "version": "4.4.4", + "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.4.4.tgz", + "integrity": "sha512-Elp+iwUx5rN5+Y8xLt5/GRoG20WGoDCQ/1Fb+1LiGtvwbDavuSk0jhD/eZdckHAuzcDzccnkv+rEjyWfRx18gg==", "dev": true, "license": "MIT" }, @@ -2522,6 +2522,17 @@ "@jridgewell/trace-mapping": "^0.3.24" } }, + "node_modules/@jridgewell/remapping": { + "version": "2.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz", + "integrity": "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, "node_modules/@jridgewell/resolve-uri": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", @@ -3418,9 +3429,9 @@ } }, "node_modules/@storybook/addon-a11y": { - "version": "9.1.1", - "resolved": "https://registry.npmjs.org/@storybook/addon-a11y/-/addon-a11y-9.1.1.tgz", - "integrity": "sha512-ZCKxYQmHnisAdpjYeRRD41NfA5UlTFpej0xgGLiAc9PGz264RRP5B+pZUHHNIyEKA9JCDcyc4BPe+xnXZgDjSA==", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/@storybook/addon-a11y/-/addon-a11y-10.1.0.tgz", + "integrity": "sha512-2AU4mkTqHXaEd+v1A5wvjwOExwjJy8f+/d72nku8FKQI1+7n96D9zb1T5gQocw8oykSU9yxRR5jSn8ShDFudAA==", "dev": true, "license": "MIT", "dependencies": { @@ -3432,20 +3443,20 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^9.1.1" + "storybook": "^10.1.0" } }, "node_modules/@storybook/addon-docs": { - "version": "9.1.1", - "resolved": "https://registry.npmjs.org/@storybook/addon-docs/-/addon-docs-9.1.1.tgz", - "integrity": "sha512-CzgvTy3V5X4fe+VPkiZVwPKARlpEBDAKte8ajLAlHJQLFpADdYrBRQ0se6I+kcxva7rZQzdhuH7qjXMDRVcfnw==", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/@storybook/addon-docs/-/addon-docs-10.1.0.tgz", + "integrity": "sha512-CVW2pc9iAfz1A6/L9S0z8XqKUON+u92xaOTC1x6d3WS8cyOT94nD7tfohT8aWydwvvmtwRHZJzl0aWnKUNgSJw==", "dev": true, "license": "MIT", "dependencies": { "@mdx-js/react": "^3.0.0", - "@storybook/csf-plugin": "9.1.1", - "@storybook/icons": "^1.4.0", - "@storybook/react-dom-shim": "9.1.1", + "@storybook/csf-plugin": "10.1.0", + "@storybook/icons": "^2.0.0", + "@storybook/react-dom-shim": "10.1.0", "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0", "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0", "ts-dedent": "^2.0.0" @@ -3455,35 +3466,37 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^9.1.1" + "storybook": "^10.1.0" } }, "node_modules/@storybook/addon-vitest": { - "version": "9.1.1", - "resolved": "https://registry.npmjs.org/@storybook/addon-vitest/-/addon-vitest-9.1.1.tgz", - "integrity": "sha512-8qbJx9ZC5kqbLp+wZ9RsDwVb+ypUiT3L7YMuDZHBqHROfn6UYmz1x3iHWOCI7YTkffLSjI9OkJYjOltrL/094Q==", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/@storybook/addon-vitest/-/addon-vitest-10.1.0.tgz", + "integrity": "sha512-OxEEizTE9s3W3ZmOI0Nl2jwIsAq9drDfOMtiIaE2tGk0nG9GLpVLD9AFrpZyMQ8MXhfp7mokjGS8yv2eyoiAlA==", "dev": true, "license": "MIT", "dependencies": { "@storybook/global": "^5.0.0", - "@storybook/icons": "^1.4.0", - "prompts": "^2.4.0", - "ts-dedent": "^2.2.0" + "@storybook/icons": "^2.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "@vitest/browser": "^3.0.0", - "@vitest/runner": "^3.0.0", - "storybook": "^9.1.1", - "vitest": "^3.0.0" + "@vitest/browser": "^3.0.0 || ^4.0.0", + "@vitest/browser-playwright": "^4.0.0", + "@vitest/runner": "^3.0.0 || ^4.0.0", + "storybook": "^10.1.0", + "vitest": "^3.0.0 || ^4.0.0" }, "peerDependenciesMeta": { "@vitest/browser": { "optional": true }, + "@vitest/browser-playwright": { + "optional": true + }, "@vitest/runner": { "optional": true }, @@ -3493,13 +3506,14 @@ } }, "node_modules/@storybook/builder-vite": { - "version": "9.1.1", - "resolved": "https://registry.npmjs.org/@storybook/builder-vite/-/builder-vite-9.1.1.tgz", - "integrity": "sha512-rM0QOfykr39SFBRQnoAa5PU3xTHnJE1R5tigvjved1o7sumcfjrhqmEyAgNZv1SoRztOO92jwkTi7En6yheOKg==", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/@storybook/builder-vite/-/builder-vite-10.1.0.tgz", + "integrity": "sha512-5vVg8kZozI4Lg2voHdimm34jlEf6MrP9QzXS795dVA/KIR9BCVUzVw+yQBT9jRDWnp6Q4XbzqfILih/TVeh7iA==", "dev": true, "license": "MIT", "dependencies": { - "@storybook/csf-plugin": "9.1.1", + "@storybook/csf-plugin": "10.1.0", + "@vitest/mocker": "3.2.4", "ts-dedent": "^2.0.0" }, "funding": { @@ -3507,35 +3521,43 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^9.1.1", + "storybook": "^10.1.0", "vite": "^5.0.0 || ^6.0.0 || ^7.0.0" } }, - "node_modules/@storybook/csf": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/@storybook/csf/-/csf-0.1.13.tgz", - "integrity": "sha512-7xOOwCLGB3ebM87eemep89MYRFTko+D8qE7EdAAq74lgdqRR5cOUtYWJLjO2dLtP94nqoOdHJo6MdLLKzg412Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "type-fest": "^2.19.0" - } - }, "node_modules/@storybook/csf-plugin": { - "version": "9.1.1", - "resolved": "https://registry.npmjs.org/@storybook/csf-plugin/-/csf-plugin-9.1.1.tgz", - "integrity": "sha512-MwdtvzzFpkard06pCfDrgRXZiBfWAQICdKh7kzpv1L8SwewsRgUr5WZQuEAVfYdSvCFJbWnNN4KirzPhe5ENCg==", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/@storybook/csf-plugin/-/csf-plugin-10.1.0.tgz", + "integrity": "sha512-oApFTBUlHusihoejKmlunprNA2BDpEBmBBx+PcCMzTpUbEiZNI95ZeGrlBuuEepF5dIpAIPAQQD09FibmkQlBQ==", "dev": true, "license": "MIT", "dependencies": { - "unplugin": "^1.3.1" + "unplugin": "^2.3.5" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^9.1.1" + "esbuild": "*", + "rollup": "*", + "storybook": "^10.1.0", + "vite": "*", + "webpack": "*" + }, + "peerDependenciesMeta": { + "esbuild": { + "optional": true + }, + "rollup": { + "optional": true + }, + "vite": { + "optional": true + }, + "webpack": { + "optional": true + } } }, "node_modules/@storybook/global": { @@ -3546,40 +3568,35 @@ "license": "MIT" }, "node_modules/@storybook/icons": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@storybook/icons/-/icons-1.4.0.tgz", - "integrity": "sha512-Td73IeJxOyalzvjQL+JXx72jlIYHgs+REaHiREOqfpo3A2AYYG71AUbcv+lg7mEDIweKVCxsMQ0UKo634c8XeA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@storybook/icons/-/icons-2.0.1.tgz", + "integrity": "sha512-/smVjw88yK3CKsiuR71vNgWQ9+NuY2L+e8X7IMrFjexjm6ZR8ULrV2DRkTA61aV6ryefslzHEGDInGpnNeIocg==", "dev": true, "license": "MIT", - "engines": { - "node": ">=14.0.0" - }, "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" + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0", + "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" } }, "node_modules/@storybook/react": { - "version": "9.1.1", - "resolved": "https://registry.npmjs.org/@storybook/react/-/react-9.1.1.tgz", - "integrity": "sha512-F5vRFxDf1fzM6CG88olrzEH03iP6C1YAr4/nr5bkLNs6TNm9Hh7KmRVG2jFtoy5w9uCwbQ9RdY+TrRbBI7n67g==", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/@storybook/react/-/react-10.1.0.tgz", + "integrity": "sha512-6Uc3SmUhUlAcNjl8PevnLplZC7HtcE2tz6NEPJWYt3KAb7D11bDZB7BD7jGOU9edE+vRXsTHUUPmaxJpWQ+5nQ==", "dev": true, "license": "MIT", "dependencies": { "@storybook/global": "^5.0.0", - "@storybook/react-dom-shim": "9.1.1" - }, - "engines": { - "node": ">=20.0.0" + "@storybook/react-dom-shim": "10.1.0", + "react-docgen": "^8.0.2" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/storybook" }, "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": "^9.1.1", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0", + "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0", + "storybook": "^10.1.0", "typescript": ">= 4.9.x" }, "peerDependenciesMeta": { @@ -3589,9 +3606,9 @@ } }, "node_modules/@storybook/react-dom-shim": { - "version": "9.1.1", - "resolved": "https://registry.npmjs.org/@storybook/react-dom-shim/-/react-dom-shim-9.1.1.tgz", - "integrity": "sha512-L+HCOXvOP+PwKrVS8od9aF+F4hO7zA0Nt1vnpbg2LeAHCxYghrjFVtioe7gSlzrlYdozQrPLY98a4OkDB7KGrw==", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/@storybook/react-dom-shim/-/react-dom-shim-10.1.0.tgz", + "integrity": "sha512-Zb86jWk3ch33lkCmsgqqqsv5q0ePk1wg2wAurM0BMQUAKTLPebdBvwC8esBsti8fp2ZGv0eNbJDGg3qzWYr/Uw==", "dev": true, "license": "MIT", "funding": { @@ -3599,39 +3616,36 @@ "url": "https://opencollective.com/storybook" }, "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": "^9.1.1" + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0", + "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0", + "storybook": "^10.1.0" } }, "node_modules/@storybook/react-vite": { - "version": "9.1.1", - "resolved": "https://registry.npmjs.org/@storybook/react-vite/-/react-vite-9.1.1.tgz", - "integrity": "sha512-9rMjAqgrcuVF/GS171fYSLuUs5QC3e0WPpIm2JOP7Z9qWctM1ApVb9UCYY7ZNl9Gc3kvjKsK5J1+A4Zw4a2+ag==", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/@storybook/react-vite/-/react-vite-10.1.0.tgz", + "integrity": "sha512-gFLTU92QQ69saFzQGeIRysQ1G2o3DSWWuG07JRj03493H9USKhvzHo88utKZ2BQP/H93UgcEwy6Ms5psIS3AUA==", "dev": true, "license": "MIT", "dependencies": { "@joshwooding/vite-plugin-react-docgen-typescript": "0.6.1", "@rollup/pluginutils": "^5.0.2", - "@storybook/builder-vite": "9.1.1", - "@storybook/react": "9.1.1", - "find-up": "^7.0.0", + "@storybook/builder-vite": "10.1.0", + "@storybook/react": "10.1.0", + "empathic": "^2.0.0", "magic-string": "^0.30.0", "react-docgen": "^8.0.0", "resolve": "^1.22.8", "tsconfig-paths": "^4.2.0" }, - "engines": { - "node": ">=20.0.0" - }, "funding": { "type": "opencollective", "url": "https://opencollective.com/storybook" }, "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": "^9.1.1", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0", + "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0", + "storybook": "^10.1.0", "vite": "^5.0.0 || ^6.0.0 || ^7.0.0" } }, @@ -3927,9 +3941,9 @@ } }, "node_modules/@testing-library/jest-dom": { - "version": "6.6.4", - "resolved": "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-6.6.4.tgz", - "integrity": "sha512-xDXgLjVunjHqczScfkCJ9iyjdNOVHvvCdqHSSxwM9L0l/wHkTRum67SDc020uAlCoqktJplgO2AAQeLP1wgqDQ==", + "version": "6.9.1", + "resolved": "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-6.9.1.tgz", + "integrity": "sha512-zIcONa+hVtVSSep9UT3jZ5rizo2BsxgyDYU7WFD5eICBE7no3881HGeb/QkGfsJs6JTkY1aQhT7rIPC7e+0nnA==", "dev": true, "license": "MIT", "dependencies": { @@ -3937,7 +3951,6 @@ "aria-query": "^5.0.0", "css.escape": "^1.5.1", "dom-accessibility-api": "^0.6.3", - "lodash": "^4.17.21", "picocolors": "^1.1.1", "redent": "^3.0.0" }, @@ -5121,19 +5134,6 @@ "dev": true, "license": "MIT" }, - "node_modules/better-opn": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/better-opn/-/better-opn-3.0.2.tgz", - "integrity": "sha512-aVNobHnJqLiUelTaHat9DZ1qM2w0C0Eym4LPI/3JxOnSokGVdsl1T1kN7TFvsEAD8G47A6VKQ0TVHqbBnYMJlQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "open": "^8.0.4" - }, - "engines": { - "node": ">=12.0.0" - } - }, "node_modules/boolbase": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", @@ -5990,16 +5990,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/define-lazy-prop": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", - "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, "node_modules/define-properties": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", @@ -6187,6 +6177,16 @@ "dev": true, "license": "MIT" }, + "node_modules/empathic": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/empathic/-/empathic-2.0.0.tgz", + "integrity": "sha512-i6UzDscO/XfAcNYD75CfICkmfLedpyPDdozrLMmQc5ORaQcdMoc21OnlEylMIqI7U8eniKrPMxxtj8k0vhmJhA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14" + } + }, "node_modules/encoding": { "version": "0.1.13", "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", @@ -6464,19 +6464,6 @@ "@esbuild/win32-x64": "0.25.8" } }, - "node_modules/esbuild-register": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/esbuild-register/-/esbuild-register-3.6.0.tgz", - "integrity": "sha512-H2/S7Pm8a9CL1uhp9OvjwrBh5Pvx0H8qVOxNu8Wed9Y7qv56MPtq+GGM8RJpq6glYJn9Wspr8uw7l55uyinNeg==", - "dev": true, - "license": "MIT", - "dependencies": { - "debug": "^4.3.4" - }, - "peerDependencies": { - "esbuild": ">=0.12 <1" - } - }, "node_modules/escalade": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", @@ -6670,21 +6657,17 @@ } }, "node_modules/eslint-plugin-storybook": { - "version": "0.11.6", - "resolved": "https://registry.npmjs.org/eslint-plugin-storybook/-/eslint-plugin-storybook-0.11.6.tgz", - "integrity": "sha512-3WodYD6Bs9ACqnB+TP2TuLh774c/nacAjxSKOP9bHJ2c8rf+nrhocxjjeAWNmO9IPkFIzTKlcl0vNXI2yYpVOw==", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-storybook/-/eslint-plugin-storybook-10.1.0.tgz", + "integrity": "sha512-5s/Hi9bKl6xSChPOlHwLrQDW+Nj6OXnl9nnQmbKtEQoCdEuSDbAEDc8zZ9NLAyD2rljE2N6Jhe9iP9+2lm43tQ==", "dev": true, "license": "MIT", "dependencies": { - "@storybook/csf": "^0.1.11", - "@typescript-eslint/utils": "^8.8.1", - "ts-dedent": "^2.2.0" - }, - "engines": { - "node": ">= 18" + "@typescript-eslint/utils": "^8.8.1" }, "peerDependencies": { - "eslint": ">=8" + "eslint": ">=8", + "storybook": "^10.1.0" } }, "node_modules/eslint-scope": { @@ -7009,11 +6992,14 @@ } }, "node_modules/fdir": { - "version": "6.4.6", - "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.6.tgz", - "integrity": "sha512-hiFoqpyZcfNm1yc4u8oWCf9A2c4D3QjCrks3zmoVKVxpQRzmPNar1hUJcBG2RQHvEVGDN+Jm81ZheVLAQMK6+w==", + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", "dev": true, "license": "MIT", + "engines": { + "node": ">=12.0.0" + }, "peerDependencies": { "picomatch": "^3 || ^4" }, @@ -7059,24 +7045,6 @@ "node": ">=8" } }, - "node_modules/find-up": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-7.0.0.tgz", - "integrity": "sha512-YyZM99iHrqLKjmt4LJDj58KI+fYyufRLBSYcqycxf//KpBk9FoewoGX0450m9nB44qrZnovzC2oeP5hUibxc/g==", - "dev": true, - "license": "MIT", - "dependencies": { - "locate-path": "^7.2.0", - "path-exists": "^5.0.0", - "unicorn-magic": "^0.1.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/flat-cache": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz", @@ -7348,9 +7316,9 @@ } }, "node_modules/glob": { - "version": "10.4.5", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", - "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", + "version": "10.5.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.5.0.tgz", + "integrity": "sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg==", "dev": true, "license": "ISC", "dependencies": { @@ -8017,22 +7985,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "dev": true, - "license": "MIT", - "bin": { - "is-docker": "cli.js" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", @@ -8323,19 +8275,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-docker": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/isarray": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", @@ -8446,9 +8385,9 @@ "license": "MIT" }, "node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz", + "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==", "dev": true, "license": "MIT", "dependencies": { @@ -8555,16 +8494,6 @@ "json-buffer": "3.0.1" } }, - "node_modules/kleur": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", - "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, "node_modules/levn": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", @@ -8606,29 +8535,6 @@ "node": ">= 12.13.0" } }, - "node_modules/locate-path": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", - "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", - "dev": true, - "license": "MIT", - "dependencies": { - "p-locate": "^6.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true, - "license": "MIT" - }, "node_modules/lodash.camelcase": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", @@ -9873,24 +9779,6 @@ "wrappy": "1" } }, - "node_modules/open": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", - "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "define-lazy-prop": "^2.0.0", - "is-docker": "^2.1.1", - "is-wsl": "^2.2.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/optionator": { "version": "0.9.4", "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", @@ -9937,38 +9825,6 @@ "node": ">=4" } }, - "node_modules/p-limit": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", - "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "yocto-queue": "^1.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-locate": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", - "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", - "dev": true, - "license": "MIT", - "dependencies": { - "p-limit": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/p-map": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", @@ -10097,16 +9953,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/path-exists": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", - "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - } - }, "node_modules/path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", @@ -10219,13 +10065,13 @@ } }, "node_modules/playwright": { - "version": "1.54.2", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.54.2.tgz", - "integrity": "sha512-Hu/BMoA1NAdRUuulyvQC0pEqZ4vQbGfn8f7wPXcnqQmM+zct9UliKxsIkLNmz/ku7LElUNqmaiv1TG/aL5ACsw==", + "version": "1.57.0", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.57.0.tgz", + "integrity": "sha512-ilYQj1s8sr2ppEJ2YVadYBN0Mb3mdo9J0wQ+UuDhzYqURwSoW4n1Xs5vs7ORwgDGmyEh33tRMeS8KhdkMoLXQw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "playwright-core": "1.54.2" + "playwright-core": "1.57.0" }, "bin": { "playwright": "cli.js" @@ -10238,9 +10084,9 @@ } }, "node_modules/playwright-core": { - "version": "1.54.2", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.54.2.tgz", - "integrity": "sha512-n5r4HFbMmWsB4twG7tJLDN9gmBUeSPcsBZiWSE4DnYz9mJMAFqr2ID7+eGC9kpEnxExJ1epttwR59LEWCk8mtA==", + "version": "1.57.0", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.57.0.tgz", + "integrity": "sha512-agTcKlMw/mjBWOnD6kFZttAAGHgi/Nw0CZ2o6JqWSbMlI219lAFLZZCyqByTsvVAJq5XA5H8cA6PrvBRpBWEuQ==", "dev": true, "license": "Apache-2.0", "bin": { @@ -11001,20 +10847,6 @@ "node": ">=0.12" } }, - "node_modules/prompts": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", - "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "kleur": "^3.0.3", - "sisteransi": "^1.0.5" - }, - "engines": { - "node": ">= 6" - } - }, "node_modules/prop-types": { "version": "15.8.1", "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", @@ -11085,17 +10917,17 @@ } }, "node_modules/react-docgen": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/react-docgen/-/react-docgen-8.0.0.tgz", - "integrity": "sha512-kmob/FOTwep7DUWf9KjuenKX0vyvChr3oTdvvPt09V60Iz75FJp+T/0ZeHMbAfJj2WaVWqAPP5Hmm3PYzSPPKg==", + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/react-docgen/-/react-docgen-8.0.2.tgz", + "integrity": "sha512-+NRMYs2DyTP4/tqWz371Oo50JqmWltR1h2gcdgUMAWZJIAvrd0/SqlCfx7tpzpl/s36rzw6qH2MjoNrxtRNYhA==", "dev": true, "license": "MIT", "dependencies": { - "@babel/core": "^7.18.9", - "@babel/traverse": "^7.18.9", - "@babel/types": "^7.18.9", - "@types/babel__core": "^7.18.0", - "@types/babel__traverse": "^7.18.0", + "@babel/core": "^7.28.0", + "@babel/traverse": "^7.28.0", + "@babel/types": "^7.28.2", + "@types/babel__core": "^7.20.5", + "@types/babel__traverse": "^7.20.7", "@types/doctrine": "^0.0.9", "@types/resolve": "^1.20.2", "doctrine": "^3.0.0", @@ -12044,13 +11876,6 @@ "node": ">=18" } }, - "node_modules/sisteransi": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", - "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", - "dev": true, - "license": "MIT" - }, "node_modules/smart-buffer": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", @@ -12234,27 +12059,26 @@ } }, "node_modules/storybook": { - "version": "9.1.1", - "resolved": "https://registry.npmjs.org/storybook/-/storybook-9.1.1.tgz", - "integrity": "sha512-q6GaGZdVZh6rjOdGnc+4hGTu8ECyhyjQDw4EZNxKtQjDO8kqtuxbFm8l/IP2l+zLVJAatGWKkaX9Qcd7QZxz+Q==", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/storybook/-/storybook-10.1.0.tgz", + "integrity": "sha512-RCTybwtyQaKRoU1Z8rWGv5h6ZN3+HelSM0WMMWKBsKgXZkpQ00vro1kd/tWILawxNiU2YS9Zo+4On5hx2Rm+8w==", "dev": true, "license": "MIT", "dependencies": { "@storybook/global": "^5.0.0", + "@storybook/icons": "^2.0.0", "@testing-library/jest-dom": "^6.6.3", "@testing-library/user-event": "^14.6.1", "@vitest/expect": "3.2.4", - "@vitest/mocker": "3.2.4", "@vitest/spy": "3.2.4", - "better-opn": "^3.0.2", - "esbuild": "^0.18.0 || ^0.19.0 || ^0.20.0 || ^0.21.0 || ^0.22.0 || ^0.23.0 || ^0.24.0 || ^0.25.0", - "esbuild-register": "^3.5.0", + "esbuild": "^0.18.0 || ^0.19.0 || ^0.20.0 || ^0.21.0 || ^0.22.0 || ^0.23.0 || ^0.24.0 || ^0.25.0 || ^0.26.0 || ^0.27.0", "recast": "^0.23.5", "semver": "^7.6.2", + "use-sync-external-store": "^1.5.0", "ws": "^8.18.0" }, "bin": { - "storybook": "bin/index.cjs" + "storybook": "dist/bin/dispatcher.js" }, "funding": { "type": "opencollective", @@ -12270,9 +12094,9 @@ } }, "node_modules/storybook/node_modules/semver": { - "version": "7.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", - "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", + "version": "7.7.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", "dev": true, "license": "ISC", "bin": { @@ -12798,14 +12622,14 @@ "license": "MIT" }, "node_modules/tinyglobby": { - "version": "0.2.14", - "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.14.tgz", - "integrity": "sha512-tX5e7OM1HnYr2+a2C/4V0htOcSQcoSTH9KgJnVvNm5zm/cyEWKJ7j7YutsH9CxMdtOkkLFy2AHrMci9IM8IPZQ==", + "version": "0.2.15", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz", + "integrity": "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==", "dev": true, "license": "MIT", "dependencies": { - "fdir": "^6.4.4", - "picomatch": "^4.0.2" + "fdir": "^6.5.0", + "picomatch": "^4.0.3" }, "engines": { "node": ">=12.0.0" @@ -13015,19 +12839,6 @@ "node": ">= 0.8.0" } }, - "node_modules/type-fest": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", - "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==", - "dev": true, - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=12.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/typed-array-buffer": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz", @@ -13183,19 +12994,6 @@ "node": ">=4" } }, - "node_modules/unicorn-magic": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.1.0.tgz", - "integrity": "sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/unique-filename": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-3.0.0.tgz", @@ -13223,17 +13021,19 @@ } }, "node_modules/unplugin": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/unplugin/-/unplugin-1.16.1.tgz", - "integrity": "sha512-4/u/j4FrCKdi17jaxuJA0jClGxB1AvU2hw/IuayPc4ay1XGaJs/rbb4v5WKwAjNifjmXK9PIFyuPiaK8azyR9w==", + "version": "2.3.11", + "resolved": "https://registry.npmjs.org/unplugin/-/unplugin-2.3.11.tgz", + "integrity": "sha512-5uKD0nqiYVzlmCRs01Fhs2BdkEgBS3SAVP6ndrBsuK42iC2+JHyxM05Rm9G8+5mkmRtzMZGY8Ct5+mliZxU/Ww==", "dev": true, "license": "MIT", "dependencies": { - "acorn": "^8.14.0", + "@jridgewell/remapping": "^2.3.5", + "acorn": "^8.15.0", + "picomatch": "^4.0.3", "webpack-virtual-modules": "^0.6.2" }, "engines": { - "node": ">=14.0.0" + "node": ">=18.12.0" } }, "node_modules/update-browserslist-db": { @@ -13277,6 +13077,16 @@ "punycode": "^2.1.0" } }, + "node_modules/use-sync-external-store": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.6.0.tgz", + "integrity": "sha512-Pp6GSwGP/NrPIrxVFAIkOQeyw8lFenOHijQWkUTrDvrF4ALqylP2C/KCkeS9dpUM3KvYRQhna5vt7IL95+ZQ9w==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, "node_modules/util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", @@ -13306,18 +13116,18 @@ } }, "node_modules/vite": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/vite/-/vite-7.1.1.tgz", - "integrity": "sha512-yJ+Mp7OyV+4S+afWo+QyoL9jFWD11QFH0i5i7JypnfTcA1rmgxCbiA8WwAICDEtZ1Z1hzrVhN8R8rGTqkTY8ZQ==", + "version": "7.2.4", + "resolved": "https://registry.npmjs.org/vite/-/vite-7.2.4.tgz", + "integrity": "sha512-NL8jTlbo0Tn4dUEXEsUg8KeyG/Lkmc4Fnzb8JXN/Ykm9G4HNImjtABMJgkQoVjOBN/j2WAwDTRytdqJbZsah7w==", "dev": true, "license": "MIT", "dependencies": { "esbuild": "^0.25.0", - "fdir": "^6.4.6", + "fdir": "^6.5.0", "picomatch": "^4.0.3", "postcss": "^8.5.6", "rollup": "^4.43.0", - "tinyglobby": "^0.2.14" + "tinyglobby": "^0.2.15" }, "bin": { "vite": "bin/vite.js" @@ -14091,19 +13901,6 @@ "engines": { "node": ">= 14.6" } - }, - "node_modules/yocto-queue": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.2.1.tgz", - "integrity": "sha512-AyeEbWOu/TAXdxlV9wmGcR0+yh2j3vYPGOECcIj2S7MkrLyC7ne+oye2BKTItt0ii2PHk4cDy+95+LshzbXnGg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } } } } diff --git a/package.json b/package.json index 4d05aa9..cf7e962 100644 --- a/package.json +++ b/package.json @@ -38,10 +38,10 @@ "@rollup/plugin-node-resolve": "^15.3.1", "@rollup/plugin-terser": "^0.4.4", "@rollup/plugin-typescript": "^12.1.1", - "@storybook/addon-a11y": "^9.0.18", - "@storybook/addon-docs": "^9.0.18", - "@storybook/addon-vitest": "^9.0.18", - "@storybook/react-vite": "^9.0.18", + "@storybook/addon-a11y": "^10.1.0", + "@storybook/addon-docs": "^10.1.0", + "@storybook/addon-vitest": "^10.1.0", + "@storybook/react-vite": "^10.1.0", "@svgr/webpack": "^6.5.1", "@types/react-dom": "^19.1.7", "@typescript-eslint/eslint-plugin": "^8.32.0", @@ -54,7 +54,7 @@ "eslint-plugin-prettier": "^5.2.1", "eslint-plugin-react": "^7.37.2", "eslint-plugin-react-hooks": "^5.0.0", - "eslint-plugin-storybook": "^0.11.0", + "eslint-plugin-storybook": "^10.1.0", "globals": "^16.1.0", "playwright": "^1.54.1", "prettier": "^3.3.3", @@ -64,7 +64,7 @@ "rollup-plugin-import-css": "^3.5.8", "rollup-plugin-peer-deps-external": "^2.2.4", "rollup-plugin-postcss": "^4.0.2", - "storybook": "^9.0.18", + "storybook": "^10.1.0", "typescript": "^5.8.3", "vite-plugin-svgr": "^4.3.0", "vitest": "^3.2.4" diff --git a/src/components/Table/Table.tsx b/src/components/Table/Table.tsx index 5ed2d0c..63bbc91 100644 --- a/src/components/Table/Table.tsx +++ b/src/components/Table/Table.tsx @@ -228,7 +228,7 @@ export function SelectRowCheckbox({ }} id={id} /> - + Vælg række diff --git a/src/components/Tabs/TabContainer.tsx b/src/components/Tabs/TabContainer.tsx index b8f3d16..c8f09f8 100644 --- a/src/components/Tabs/TabContainer.tsx +++ b/src/components/Tabs/TabContainer.tsx @@ -105,7 +105,7 @@ export function TabContainer({ }); return ( - + {tabs.map((tab, index, array) => { return ( setKey(tab.id)} role="tab" - aria-controls={tab.id.toString()} + aria-controls={`tabpanel${tab.id}`} aria-selected={selectedKey === tab.id} id={`tabcontrol${tab.id}`} tabIndex={selectedKey === index ? 0 : -1} diff --git a/src/stories/dkfds/Accordion.stories.tsx b/src/stories/dkfds/Accordion.stories.tsx index e2a191a..f38a996 100644 --- a/src/stories/dkfds/Accordion.stories.tsx +++ b/src/stories/dkfds/Accordion.stories.tsx @@ -1,4 +1,4 @@ -import type { Meta, StoryObj } from "@storybook/react"; +import type { Meta, StoryObj } from "@storybook/react-vite"; import { Accordion } from "../../components/Accordion/Accordion"; import { Alert } from "../../components/Alert/Alert"; diff --git a/src/stories/dkfds/Alert.stories.tsx b/src/stories/dkfds/Alert.stories.tsx index 4b20632..95c3f93 100644 --- a/src/stories/dkfds/Alert.stories.tsx +++ b/src/stories/dkfds/Alert.stories.tsx @@ -1,4 +1,4 @@ -import type { Meta, StoryObj } from "@storybook/react"; +import type { Meta, StoryObj } from "@storybook/react-vite"; import { Alert } from "../../components/Alert/Alert"; const meta = { diff --git a/src/stories/dkfds/Anchorlinks.stories.tsx b/src/stories/dkfds/Anchorlinks.stories.tsx index 4345b28..ea2ffb6 100644 --- a/src/stories/dkfds/Anchorlinks.stories.tsx +++ b/src/stories/dkfds/Anchorlinks.stories.tsx @@ -1,4 +1,4 @@ -import type { Meta, StoryObj } from "@storybook/react"; +import type { Meta, StoryObj } from "@storybook/react-vite"; import { Anchorlinks } from "../../components/Anchorlinks/Anchorlinks"; const meta = { diff --git a/src/stories/dkfds/BackLink.stories.tsx b/src/stories/dkfds/BackLink.stories.tsx index 2228a9a..78ad1a9 100644 --- a/src/stories/dkfds/BackLink.stories.tsx +++ b/src/stories/dkfds/BackLink.stories.tsx @@ -1,4 +1,4 @@ -import type { Meta, StoryObj } from "@storybook/react"; +import type { Meta, StoryObj } from "@storybook/react-vite"; import { BackLink } from "../../components/BackLink/BackLink"; const meta = { diff --git a/src/stories/dkfds/BackToTop.stories.tsx b/src/stories/dkfds/BackToTop.stories.tsx index 1454384..e955241 100644 --- a/src/stories/dkfds/BackToTop.stories.tsx +++ b/src/stories/dkfds/BackToTop.stories.tsx @@ -1,4 +1,4 @@ -import type { Meta, StoryObj } from "@storybook/react"; +import type { Meta, StoryObj } from "@storybook/react-vite"; import { BackToTop } from "../../components/BackToTop/BackToTop"; const meta = { diff --git a/src/stories/dkfds/Badge.stories.tsx b/src/stories/dkfds/Badge.stories.tsx index 4c06290..594ea38 100644 --- a/src/stories/dkfds/Badge.stories.tsx +++ b/src/stories/dkfds/Badge.stories.tsx @@ -1,4 +1,4 @@ -import type { Meta, StoryObj } from "@storybook/react"; +import type { Meta, StoryObj } from "@storybook/react-vite"; import { Badge } from "../../components/Badge/Badge"; const meta = { diff --git a/src/stories/dkfds/Breadcrumb.stories.tsx b/src/stories/dkfds/Breadcrumb.stories.tsx index be3cd12..f5ffec6 100644 --- a/src/stories/dkfds/Breadcrumb.stories.tsx +++ b/src/stories/dkfds/Breadcrumb.stories.tsx @@ -1,4 +1,4 @@ -import type { Meta, StoryObj } from "@storybook/react"; +import type { Meta, StoryObj } from "@storybook/react-vite"; import { Breadcrumb } from "../../components/Breadcrumb/Breadcrumb"; const meta = { diff --git a/src/stories/dkfds/Button.stories.tsx b/src/stories/dkfds/Button.stories.tsx index 572e12e..37eb962 100644 --- a/src/stories/dkfds/Button.stories.tsx +++ b/src/stories/dkfds/Button.stories.tsx @@ -1,4 +1,4 @@ -import type { Meta, StoryObj } from "@storybook/react"; +import type { Meta, StoryObj } from "@storybook/react-vite"; import { Button, ButtonProps } from "../../components/Button/Button"; import { useState } from "react"; diff --git a/src/stories/dkfds/Card.stories.tsx b/src/stories/dkfds/Card.stories.tsx index fe05359..8bd7b08 100644 --- a/src/stories/dkfds/Card.stories.tsx +++ b/src/stories/dkfds/Card.stories.tsx @@ -1,4 +1,4 @@ -import type { Meta, StoryObj } from "@storybook/react"; +import type { Meta, StoryObj } from "@storybook/react-vite"; import { Card, @@ -75,7 +75,7 @@ export const MultipleLinkCards: Story = { navigationProps={{ href: "/", }} - image={} + image={} > Lorem}> Dette card linker til en anden side @@ -87,9 +87,7 @@ export const MultipleLinkCards: Story = { navigationProps={{ href: "/", }} - image={ - - } + image={} > Sit amet}> Dette card linker til en side, der åbner i en ny fane diff --git a/src/stories/dkfds/Checkbox.stories.tsx b/src/stories/dkfds/Checkbox.stories.tsx index 1a493c4..e4e3720 100644 --- a/src/stories/dkfds/Checkbox.stories.tsx +++ b/src/stories/dkfds/Checkbox.stories.tsx @@ -1,4 +1,4 @@ -import type { Meta, StoryObj } from "@storybook/react"; +import type { Meta, StoryObj } from "@storybook/react-vite"; import { Checkbox } from "../../components/Checkbox/Checkbox"; import { InputField } from "../../components/InputField/InputField"; import { useState } from "react"; diff --git a/src/stories/dkfds/CookieConsent.stories.tsx b/src/stories/dkfds/CookieConsent.stories.tsx index d8ee763..d32320e 100644 --- a/src/stories/dkfds/CookieConsent.stories.tsx +++ b/src/stories/dkfds/CookieConsent.stories.tsx @@ -1,4 +1,4 @@ -import type { Meta, StoryObj } from "@storybook/react"; +import type { Meta, StoryObj } from "@storybook/react-vite"; import { CookieConsent } from "../../components/CookieConsent/CookieConsent"; const meta = { diff --git a/src/stories/dkfds/DateFields.stories.tsx b/src/stories/dkfds/DateFields.stories.tsx index 66df968..63987a0 100644 --- a/src/stories/dkfds/DateFields.stories.tsx +++ b/src/stories/dkfds/DateFields.stories.tsx @@ -1,4 +1,4 @@ -import type { Meta, StoryObj } from "@storybook/react"; +import type { Meta, StoryObj } from "@storybook/react-vite"; import { DateFields } from "../../components/DateFields/DateFields"; const meta = { diff --git a/src/stories/dkfds/DatePicker.stories.tsx b/src/stories/dkfds/DatePicker.stories.tsx index 52a0a21..08bf43d 100644 --- a/src/stories/dkfds/DatePicker.stories.tsx +++ b/src/stories/dkfds/DatePicker.stories.tsx @@ -1,4 +1,4 @@ -import type { Meta, StoryObj } from "@storybook/react"; +import type { Meta, StoryObj } from "@storybook/react-vite"; import { DatePicker } from "../../components/DatePicker/DatePicker"; diff --git a/src/stories/dkfds/Details.stories.tsx b/src/stories/dkfds/Details.stories.tsx index 124abfc..9de9935 100644 --- a/src/stories/dkfds/Details.stories.tsx +++ b/src/stories/dkfds/Details.stories.tsx @@ -1,4 +1,4 @@ -import type { Meta, StoryObj } from "@storybook/react"; +import type { Meta, StoryObj } from "@storybook/react-vite"; import { Details } from "../../components/Details/Details"; const meta = { diff --git a/src/stories/dkfds/Dropdown.stories.tsx b/src/stories/dkfds/Dropdown.stories.tsx index d107007..e6b1966 100644 --- a/src/stories/dkfds/Dropdown.stories.tsx +++ b/src/stories/dkfds/Dropdown.stories.tsx @@ -1,4 +1,4 @@ -import type { Meta, StoryObj } from "@storybook/react"; +import type { Meta, StoryObj } from "@storybook/react-vite"; import { Dropdown } from "../../components/Dropdown/Dropdown"; // More on how to set up stories at: https://storybook.js.org/docs/writing-stories#default-export diff --git a/src/stories/dkfds/ErrorMessages.stories.tsx b/src/stories/dkfds/ErrorMessages.stories.tsx index 8bcb3f0..51a129c 100644 --- a/src/stories/dkfds/ErrorMessages.stories.tsx +++ b/src/stories/dkfds/ErrorMessages.stories.tsx @@ -1,4 +1,4 @@ -import type { Meta, StoryObj } from "@storybook/react"; +import type { Meta, StoryObj } from "@storybook/react-vite"; import { InputField } from "../../components/InputField/InputField"; import { Accordion } from "../../components/Accordion/Accordion"; import { Alert } from "../../components/Alert/Alert"; diff --git a/src/stories/dkfds/ErrorSummary.stories.tsx b/src/stories/dkfds/ErrorSummary.stories.tsx index 1532b54..91ba115 100644 --- a/src/stories/dkfds/ErrorSummary.stories.tsx +++ b/src/stories/dkfds/ErrorSummary.stories.tsx @@ -1,4 +1,4 @@ -import { Meta, StoryObj } from "@storybook/react"; +import { Meta, StoryObj } from "@storybook/react-vite"; import { fn } from "storybook/test"; import { Heading } from "../../components/Shared/Heading"; import { InputField } from "../../components/InputField/InputField"; diff --git a/src/stories/dkfds/Footer.stories.tsx b/src/stories/dkfds/Footer.stories.tsx index 81343bf..9cbffc0 100644 --- a/src/stories/dkfds/Footer.stories.tsx +++ b/src/stories/dkfds/Footer.stories.tsx @@ -1,4 +1,4 @@ -import type { Meta, StoryObj } from "@storybook/react"; +import type { Meta, StoryObj } from "@storybook/react-vite"; import { Footer, FooterColumn, diff --git a/src/stories/dkfds/FunctionalLink.stories.tsx b/src/stories/dkfds/FunctionalLink.stories.tsx index 999fa04..7f549a4 100644 --- a/src/stories/dkfds/FunctionalLink.stories.tsx +++ b/src/stories/dkfds/FunctionalLink.stories.tsx @@ -1,4 +1,4 @@ -import type { Meta, StoryObj } from "@storybook/react"; +import type { Meta, StoryObj } from "@storybook/react-vite"; import { FunctionalLink } from "../../components/FunctionalLink/FunctionalLink"; import { Icon } from "../../components/Shared/Icon"; diff --git a/src/stories/dkfds/Header.stories.tsx b/src/stories/dkfds/Header.stories.tsx index 454798b..fd41a90 100644 --- a/src/stories/dkfds/Header.stories.tsx +++ b/src/stories/dkfds/Header.stories.tsx @@ -1,4 +1,4 @@ -import type { Meta, StoryObj } from "@storybook/react"; +import type { Meta, StoryObj } from "@storybook/react-vite"; import { Header } from "../../components/Header/Header"; const meta = { diff --git a/src/stories/dkfds/InputField.stories.tsx b/src/stories/dkfds/InputField.stories.tsx index 1a093a8..02f9489 100644 --- a/src/stories/dkfds/InputField.stories.tsx +++ b/src/stories/dkfds/InputField.stories.tsx @@ -1,4 +1,4 @@ -import type { Meta, StoryObj } from "@storybook/react"; +import type { Meta, StoryObj } from "@storybook/react-vite"; import { InputField, InputFieldProps, diff --git a/src/stories/dkfds/LanguagePicker.stories.tsx b/src/stories/dkfds/LanguagePicker.stories.tsx index a9cbe83..5904fbc 100644 --- a/src/stories/dkfds/LanguagePicker.stories.tsx +++ b/src/stories/dkfds/LanguagePicker.stories.tsx @@ -1,4 +1,4 @@ -import type { Meta, StoryObj } from "@storybook/react"; +import type { Meta, StoryObj } from "@storybook/react-vite"; import { LanguagePicker } from "../../components/LanguagePicker/LanguagePicker"; const meta = { diff --git a/src/stories/dkfds/LeftMenu.stories.tsx b/src/stories/dkfds/LeftMenu.stories.tsx index 61c0855..9cb6220 100644 --- a/src/stories/dkfds/LeftMenu.stories.tsx +++ b/src/stories/dkfds/LeftMenu.stories.tsx @@ -1,4 +1,4 @@ -import type { Meta, StoryObj } from "@storybook/react"; +import type { Meta, StoryObj } from "@storybook/react-vite"; import { LeftMenu, LeftMenuItem } from "../../components/LeftMenu/LeftMenu"; const meta = { diff --git a/src/stories/dkfds/LoadingSpinner.stories.tsx b/src/stories/dkfds/LoadingSpinner.stories.tsx index 7b12baa..021b675 100644 --- a/src/stories/dkfds/LoadingSpinner.stories.tsx +++ b/src/stories/dkfds/LoadingSpinner.stories.tsx @@ -1,4 +1,4 @@ -import type { Meta, StoryObj } from "@storybook/react"; +import type { Meta, StoryObj } from "@storybook/react-vite"; import { LoadingSpinner } from "../../components/LoadingSpinner/LoadingSpinner"; import { ScreenReaderLabel } from "../../components/ScreenReaderLabel/ScreenReaderLabel"; diff --git a/src/stories/dkfds/Modal.stories.tsx b/src/stories/dkfds/Modal.stories.tsx index 7d9ae76..3a5e6da 100644 --- a/src/stories/dkfds/Modal.stories.tsx +++ b/src/stories/dkfds/Modal.stories.tsx @@ -1,4 +1,4 @@ -import type { Meta, StoryObj } from "@storybook/react"; +import type { Meta, StoryObj } from "@storybook/react-vite"; import { Modal } from "../../components/Modal/Modal"; import { Button } from "../../components/Button/Button"; import { useState } from "react"; diff --git a/src/stories/dkfds/OverflowMenu.stories.tsx b/src/stories/dkfds/OverflowMenu.stories.tsx index 381b4dc..7992d4e 100644 --- a/src/stories/dkfds/OverflowMenu.stories.tsx +++ b/src/stories/dkfds/OverflowMenu.stories.tsx @@ -1,4 +1,4 @@ -import type { Meta, StoryObj } from "@storybook/react"; +import type { Meta, StoryObj } from "@storybook/react-vite"; import { OverflowMenu, OverflowMenuProps, diff --git a/src/stories/dkfds/Pagination.stories.tsx b/src/stories/dkfds/Pagination.stories.tsx index 9512b86..ad9f3ad 100644 --- a/src/stories/dkfds/Pagination.stories.tsx +++ b/src/stories/dkfds/Pagination.stories.tsx @@ -1,4 +1,4 @@ -import type { Meta, StoryObj } from "@storybook/react"; +import type { Meta, StoryObj } from "@storybook/react-vite"; import { Pagination, PaginationProps, diff --git a/src/stories/dkfds/RadioButton.stories.tsx b/src/stories/dkfds/RadioButton.stories.tsx index ceaa052..7c25caa 100644 --- a/src/stories/dkfds/RadioButton.stories.tsx +++ b/src/stories/dkfds/RadioButton.stories.tsx @@ -1,4 +1,4 @@ -import type { Meta, StoryObj } from "@storybook/react"; +import type { Meta, StoryObj } from "@storybook/react-vite"; import { RadioButtons } from "../../components/RadioButtons/RadioButtons"; import { InputField } from "../../components/InputField/InputField"; import { useState } from "react"; diff --git a/src/stories/dkfds/SearchField.stories.tsx b/src/stories/dkfds/SearchField.stories.tsx index 0818044..eaa09a5 100644 --- a/src/stories/dkfds/SearchField.stories.tsx +++ b/src/stories/dkfds/SearchField.stories.tsx @@ -1,4 +1,4 @@ -import type { Meta, StoryObj } from "@storybook/react"; +import type { Meta, StoryObj } from "@storybook/react-vite"; import { InputField } from "../../components/InputField/InputField"; const meta = { @@ -11,6 +11,10 @@ type Story = StoryObj; export const MainSearchField: Story = { args: { + label: "Search", + labelProps: { + className: "sr-only", + }, inputProps: { id: "search-field", name: "search-field", @@ -25,6 +29,10 @@ export const MainSearchField: Story = { export const MainSearchFieldIcon: Story = { args: { + label: "Search", + labelProps: { + className: "sr-only", + }, inputProps: { id: "search-field", name: "search-field", diff --git a/src/stories/dkfds/StepIndicator.stories.tsx b/src/stories/dkfds/StepIndicator.stories.tsx index 2f993b8..effcbf7 100644 --- a/src/stories/dkfds/StepIndicator.stories.tsx +++ b/src/stories/dkfds/StepIndicator.stories.tsx @@ -1,4 +1,4 @@ -import type { Meta, StoryObj } from "@storybook/react"; +import type { Meta, StoryObj } from "@storybook/react-vite"; import { StepIndicator } from "../../components/StepIndicator/StepIndicator"; import { SimpleStepIndicator } from "../../components/StepIndicator/SimpleStepIndicator"; diff --git a/src/stories/dkfds/StructuredList.stories.tsx b/src/stories/dkfds/StructuredList.stories.tsx index b262181..46bf44d 100644 --- a/src/stories/dkfds/StructuredList.stories.tsx +++ b/src/stories/dkfds/StructuredList.stories.tsx @@ -1,4 +1,4 @@ -import type { Meta, StoryObj } from "@storybook/react"; +import type { Meta, StoryObj } from "@storybook/react-vite"; import { StructuredList } from "../../components/Table/StructuredList"; import { ScreenReaderLabel } from "../../components/ScreenReaderLabel/ScreenReaderLabel"; diff --git a/src/stories/dkfds/Tables.stories.tsx b/src/stories/dkfds/Tables.stories.tsx index 21ce8a6..244617c 100644 --- a/src/stories/dkfds/Tables.stories.tsx +++ b/src/stories/dkfds/Tables.stories.tsx @@ -1,4 +1,4 @@ -import type { Meta, StoryObj } from "@storybook/react"; +import type { Meta, StoryObj } from "@storybook/react-vite"; import { SelectAllRowsCheckbox, SelectRowCheckbox, diff --git a/src/stories/dkfds/Tabs.stories.tsx b/src/stories/dkfds/Tabs.stories.tsx index 31ca88c..881a6ff 100644 --- a/src/stories/dkfds/Tabs.stories.tsx +++ b/src/stories/dkfds/Tabs.stories.tsx @@ -1,4 +1,4 @@ -import type { Meta, StoryObj } from "@storybook/react"; +import type { Meta, StoryObj } from "@storybook/react-vite"; import { Tab, TabContainer, @@ -23,7 +23,7 @@ export const MainTabs: Story = { activeKey: undefined, // No active tab set initially }, render: () => ( - + Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse ullamcorper, enim eu fringilla varius, massa lectus molestie lacus, sed diff --git a/src/stories/dkfds/Tags.stories.tsx b/src/stories/dkfds/Tags.stories.tsx index 086b7fd..61b890c 100644 --- a/src/stories/dkfds/Tags.stories.tsx +++ b/src/stories/dkfds/Tags.stories.tsx @@ -1,4 +1,4 @@ -import type { Meta, StoryObj } from "@storybook/react"; +import type { Meta, StoryObj } from "@storybook/react-vite"; import { Tag } from "../../components/Tag/Tag"; const meta = { diff --git a/src/stories/dkfds/Textareas.stories.tsx b/src/stories/dkfds/Textareas.stories.tsx index cf670ad..324c3a0 100644 --- a/src/stories/dkfds/Textareas.stories.tsx +++ b/src/stories/dkfds/Textareas.stories.tsx @@ -1,4 +1,4 @@ -import type { Meta, StoryObj } from "@storybook/react"; +import type { Meta, StoryObj } from "@storybook/react-vite"; import { TextArea } from "../../components/Textarea/Textarea"; import { useState } from "react"; diff --git a/src/stories/dkfds/Toast.stories.tsx b/src/stories/dkfds/Toast.stories.tsx index bf911ad..770b83f 100644 --- a/src/stories/dkfds/Toast.stories.tsx +++ b/src/stories/dkfds/Toast.stories.tsx @@ -1,4 +1,4 @@ -import type { Meta, StoryObj } from "@storybook/react"; +import type { Meta, StoryObj } from "@storybook/react-vite"; import { Toast, ToastContainer, diff --git a/src/stories/dkfds/ToggleSwitch.stories.tsx b/src/stories/dkfds/ToggleSwitch.stories.tsx index 70dfa6f..d380c69 100644 --- a/src/stories/dkfds/ToggleSwitch.stories.tsx +++ b/src/stories/dkfds/ToggleSwitch.stories.tsx @@ -1,4 +1,4 @@ -import type { Meta, StoryObj } from "@storybook/react"; +import type { Meta, StoryObj } from "@storybook/react-vite"; import { useArgs } from "storybook/preview-api"; import { ToggleSwitch } from "../../components/ToggleSwitch/ToggleSwitch"; diff --git a/src/stories/dkfds/Tooltip.stories.tsx b/src/stories/dkfds/Tooltip.stories.tsx index 3aae66c..e96bf16 100644 --- a/src/stories/dkfds/Tooltip.stories.tsx +++ b/src/stories/dkfds/Tooltip.stories.tsx @@ -1,4 +1,4 @@ -import type { Meta, StoryObj } from "@storybook/react"; +import type { Meta, StoryObj } from "@storybook/react-vite"; import { Tooltip } from "../../components/Tooltip/Tooltip"; import { Button } from "../../components/Button/Button"; import { RadioButtons } from "../../components/RadioButtons/RadioButtons"; diff --git a/src/stories/translations/TranslationEditor.stories.tsx b/src/stories/translations/TranslationEditor.stories.tsx index 58b11e8..bdd40db 100644 --- a/src/stories/translations/TranslationEditor.stories.tsx +++ b/src/stories/translations/TranslationEditor.stories.tsx @@ -1,4 +1,4 @@ -import type { Meta, StoryObj } from "@storybook/react"; +import type { Meta, StoryObj } from "@storybook/react-vite"; import { useState } from "react"; import { loadTranslations,
Dette card linker til en anden side
Dette card linker til en side, der åbner i en ny fane