diff --git a/.github/workflows/storybook-tests.yml b/.github/workflows/storybook-tests.yml index d12eec3a..d5eacd62 100644 --- a/.github/workflows/storybook-tests.yml +++ b/.github/workflows/storybook-tests.yml @@ -1,8 +1,5 @@ name: 'Storybook Tests' -on: - push: - branches: - - SUR-242 +on: push jobs: test: timeout-minutes: 60 diff --git a/.storybook/preview.tsx b/.storybook/preview.tsx index 5a23f5dc..cad2f823 100644 --- a/.storybook/preview.tsx +++ b/.storybook/preview.tsx @@ -11,6 +11,12 @@ const preview: Preview = { date: /Date$/i, }, }, + // Disable color contrast checks for the entire storybook. + a11y: { + config: { + rules: [{ id: 'color-contrast', enabled: false }], + }, + }, }, decorators: [ (Story) => ( diff --git a/.storybook/test-runner.js b/.storybook/test-runner.js index 6b3a38f2..e54ce8c9 100644 --- a/.storybook/test-runner.js +++ b/.storybook/test-runner.js @@ -1,11 +1,26 @@ -const { injectAxe, checkA11y } = require('axe-playwright'); +const { getStoryContext } = require('@storybook/test-runner'); +const { injectAxe, checkA11y, configureAxe } = require('axe-playwright'); module.exports = { async preVisit(page) { await injectAxe(page); }, - async postVisit(page) { - await checkA11y(page, '#storybook-root', { + async postVisit(page, context) { + // Get the entire context of a story, including parameters, args, argTypes, etc. + const storyContext = await getStoryContext(page, context); + // Apply story-level a11y rules + await configureAxe(page, { + rules: storyContext.parameters?.a11y?.config?.rules, + }); + + // Do not run a11y tests on disabled stories. + if (storyContext.parameters?.a11y?.disable) { + return; + } + + const element = + storyContext.parameters?.a11y?.element ?? '#storybook-root'; + await checkA11y(page, element, { detailedReport: true, detailedReportOptions: { html: true, diff --git a/package-lock.json b/package-lock.json index 3e385d4f..c4875601 100644 --- a/package-lock.json +++ b/package-lock.json @@ -3695,9 +3695,9 @@ } }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.25.0.tgz", - "integrity": "sha512-CC/ZqFZwlAIbU1wUPisHyV/XRc5RydFrNLtgl3dGYskdwPZdt4HERtKm50a/+DtTlKeCq9IXFEWR+P6blwjqBA==", + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.26.0.tgz", + "integrity": "sha512-gJNwtPDGEaOEgejbaseY6xMFu+CPltsc8/T+diUTTbOQLqD+bnrJq9ulH6WD69TqwqWmrfRAtUv30cCFZlbGTQ==", "cpu": [ "arm" ], @@ -3708,9 +3708,9 @@ ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.25.0.tgz", - "integrity": "sha512-/Y76tmLGUJqVBXXCfVS8Q8FJqYGhgH4wl4qTA24E9v/IJM0XvJCGQVSW1QZ4J+VURO9h8YCa28sTFacZXwK7Rg==", + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.26.0.tgz", + "integrity": "sha512-YJa5Gy8mEZgz5JquFruhJODMq3lTHWLm1fOy+HIANquLzfIOzE9RA5ie3JjCdVb9r46qfAQY/l947V0zfGJ0OQ==", "cpu": [ "arm64" ], @@ -3721,9 +3721,9 @@ ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.25.0.tgz", - "integrity": "sha512-YVT6L3UrKTlC0FpCZd0MGA7NVdp7YNaEqkENbWQ7AOVOqd/7VzyHpgIpc1mIaxRAo1ZsJRH45fq8j4N63I/vvg==", + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.26.0.tgz", + "integrity": "sha512-ErTASs8YKbqTBoPLp/kA1B1Um5YSom8QAc4rKhg7b9tyyVqDBlQxy7Bf2wW7yIlPGPg2UODDQcbkTlruPzDosw==", "cpu": [ "arm64" ], @@ -3734,9 +3734,9 @@ ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.25.0.tgz", - "integrity": "sha512-ZRL+gexs3+ZmmWmGKEU43Bdn67kWnMeWXLFhcVv5Un8FQcx38yulHBA7XR2+KQdYIOtD0yZDWBCudmfj6lQJoA==", + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.26.0.tgz", + "integrity": "sha512-wbgkYDHcdWW+NqP2mnf2NOuEbOLzDblalrOWcPyY6+BRbVhliavon15UploG7PpBRQ2bZJnbmh8o3yLoBvDIHA==", "cpu": [ "x64" ], @@ -3747,9 +3747,9 @@ ] }, "node_modules/@rollup/rollup-freebsd-arm64": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.25.0.tgz", - "integrity": "sha512-xpEIXhiP27EAylEpreCozozsxWQ2TJbOLSivGfXhU4G1TBVEYtUPi2pOZBnvGXHyOdLAUUhPnJzH3ah5cqF01g==", + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.26.0.tgz", + "integrity": "sha512-Y9vpjfp9CDkAG4q/uwuhZk96LP11fBz/bYdyg9oaHYhtGZp7NrbkQrj/66DYMMP2Yo/QPAsVHkV891KyO52fhg==", "cpu": [ "arm64" ], @@ -3760,9 +3760,9 @@ ] }, "node_modules/@rollup/rollup-freebsd-x64": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.25.0.tgz", - "integrity": "sha512-sC5FsmZGlJv5dOcURrsnIK7ngc3Kirnx3as2XU9uER+zjfyqIjdcMVgzy4cOawhsssqzoAX19qmxgJ8a14Qrqw==", + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.26.0.tgz", + "integrity": "sha512-A/jvfCZ55EYPsqeaAt/yDAG4q5tt1ZboWMHEvKAH9Zl92DWvMIbnZe/f/eOXze65aJaaKbL+YeM0Hz4kLQvdwg==", "cpu": [ "x64" ], @@ -3773,9 +3773,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.25.0.tgz", - "integrity": "sha512-uD/dbLSs1BEPzg564TpRAQ/YvTnCds2XxyOndAO8nJhaQcqQGFgv/DAVko/ZHap3boCvxnzYMa3mTkV/B/3SWA==", + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.26.0.tgz", + "integrity": "sha512-paHF1bMXKDuizaMODm2bBTjRiHxESWiIyIdMugKeLnjuS1TCS54MF5+Y5Dx8Ui/1RBPVRE09i5OUlaLnv8OGnA==", "cpu": [ "arm" ], @@ -3786,9 +3786,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.25.0.tgz", - "integrity": "sha512-ZVt/XkrDlQWegDWrwyC3l0OfAF7yeJUF4fq5RMS07YM72BlSfn2fQQ6lPyBNjt+YbczMguPiJoCfaQC2dnflpQ==", + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.26.0.tgz", + "integrity": "sha512-cwxiHZU1GAs+TMxvgPfUDtVZjdBdTsQwVnNlzRXC5QzIJ6nhfB4I1ahKoe9yPmoaA/Vhf7m9dB1chGPpDRdGXg==", "cpu": [ "arm" ], @@ -3799,9 +3799,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.25.0.tgz", - "integrity": "sha512-qboZ+T0gHAW2kkSDPHxu7quaFaaBlynODXpBVnPxUgvWYaE84xgCKAPEYE+fSMd3Zv5PyFZR+L0tCdYCMAtG0A==", + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.26.0.tgz", + "integrity": "sha512-4daeEUQutGRCW/9zEo8JtdAgtJ1q2g5oHaoQaZbMSKaIWKDQwQ3Yx0/3jJNmpzrsScIPtx/V+1AfibLisb3AMQ==", "cpu": [ "arm64" ], @@ -3812,9 +3812,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.25.0.tgz", - "integrity": "sha512-ndWTSEmAaKr88dBuogGH2NZaxe7u2rDoArsejNslugHZ+r44NfWiwjzizVS1nUOHo+n1Z6qV3X60rqE/HlISgw==", + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.26.0.tgz", + "integrity": "sha512-eGkX7zzkNxvvS05ROzJ/cO/AKqNvR/7t1jA3VZDi2vRniLKwAWxUr85fH3NsvtxU5vnUUKFHKh8flIBdlo2b3Q==", "cpu": [ "arm64" ], @@ -3825,9 +3825,9 @@ ] }, "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.25.0.tgz", - "integrity": "sha512-BVSQvVa2v5hKwJSy6X7W1fjDex6yZnNKy3Kx1JGimccHft6HV0THTwNtC2zawtNXKUu+S5CjXslilYdKBAadzA==", + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.26.0.tgz", + "integrity": "sha512-Odp/lgHbW/mAqw/pU21goo5ruWsytP7/HCC/liOt0zcGG0llYWKrd10k9Fj0pdj3prQ63N5yQLCLiE7HTX+MYw==", "cpu": [ "ppc64" ], @@ -3838,9 +3838,9 @@ ] }, "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.25.0.tgz", - "integrity": "sha512-G4hTREQrIdeV0PE2JruzI+vXdRnaK1pg64hemHq2v5fhv8C7WjVaeXc9P5i4Q5UC06d/L+zA0mszYIKl+wY8oA==", + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.26.0.tgz", + "integrity": "sha512-MBR2ZhCTzUgVD0OJdTzNeF4+zsVogIR1U/FsyuFerwcqjZGvg2nYe24SAHp8O5sN8ZkRVbHwlYeHqcSQ8tcYew==", "cpu": [ "riscv64" ], @@ -3851,9 +3851,9 @@ ] }, "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.25.0.tgz", - "integrity": "sha512-9T/w0kQ+upxdkFL9zPVB6zy9vWW1deA3g8IauJxojN4bnz5FwSsUAD034KpXIVX5j5p/rn6XqumBMxfRkcHapQ==", + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.26.0.tgz", + "integrity": "sha512-YYcg8MkbN17fMbRMZuxwmxWqsmQufh3ZJFxFGoHjrE7bv0X+T6l3glcdzd7IKLiwhT+PZOJCblpnNlz1/C3kGQ==", "cpu": [ "s390x" ], @@ -3864,9 +3864,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.25.0.tgz", - "integrity": "sha512-ThcnU0EcMDn+J4B9LD++OgBYxZusuA7iemIIiz5yzEcFg04VZFzdFjuwPdlURmYPZw+fgVrFzj4CA64jSTG4Ig==", + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.26.0.tgz", + "integrity": "sha512-ZuwpfjCwjPkAOxpjAEjabg6LRSfL7cAJb6gSQGZYjGhadlzKKywDkCUnJ+KEfrNY1jH5EEoSIKLCb572jSiglA==", "cpu": [ "x64" ], @@ -3877,9 +3877,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.25.0.tgz", - "integrity": "sha512-zx71aY2oQxGxAT1JShfhNG79PnjYhMC6voAjzpu/xmMjDnKNf6Nl/xv7YaB/9SIa9jDYf8RBPWEnjcdlhlv1rQ==", + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.26.0.tgz", + "integrity": "sha512-+HJD2lFS86qkeF8kNu0kALtifMpPCZU80HvwztIKnYwym3KnA1os6nsX4BGSTLtS2QVAGG1P3guRgsYyMA0Yhg==", "cpu": [ "x64" ], @@ -3890,9 +3890,9 @@ ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.25.0.tgz", - "integrity": "sha512-JT8tcjNocMs4CylWY/CxVLnv8e1lE7ff1fi6kbGocWwxDq9pj30IJ28Peb+Y8yiPNSF28oad42ApJB8oUkwGww==", + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.26.0.tgz", + "integrity": "sha512-WUQzVFWPSw2uJzX4j6YEbMAiLbs0BUysgysh8s817doAYhR5ybqTI1wtKARQKo6cGop3pHnrUJPFCsXdoFaimQ==", "cpu": [ "arm64" ], @@ -3903,9 +3903,9 @@ ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.25.0.tgz", - "integrity": "sha512-dRLjLsO3dNOfSN6tjyVlG+Msm4IiZnGkuZ7G5NmpzwF9oOc582FZG05+UdfTbz5Jd4buK/wMb6UeHFhG18+OEg==", + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.26.0.tgz", + "integrity": "sha512-D4CxkazFKBfN1akAIY6ieyOqzoOoBV1OICxgUblWxff/pSjCA2khXlASUx7mK6W1oP4McqhgcCsu6QaLj3WMWg==", "cpu": [ "ia32" ], @@ -3916,9 +3916,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.25.0.tgz", - "integrity": "sha512-/RqrIFtLB926frMhZD0a5oDa4eFIbyNEwLLloMTEjmqfwZWXywwVVOVmwTsuyhC9HKkVEZcOOi+KV4U9wmOdlg==", + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.26.0.tgz", + "integrity": "sha512-2x8MO1rm4PGEP0xWbubJW5RtbNLk3puzAMaLQd3B3JHVw4KcHlmXcO+Wewx9zCoo7EUFiMlu/aZbCJ7VjMzAag==", "cpu": [ "x64" ], @@ -4137,12 +4137,12 @@ } }, "node_modules/@storybook/addon-a11y": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/@storybook/addon-a11y/-/addon-a11y-8.4.2.tgz", - "integrity": "sha512-v6Tl+qr3Eslf06qmt2hq1ticYi7oRLIFosePQUOlW1+cgdIbV+r1IxsZ7creCDWX4kIMTbUFhbET9LTYGHem1A==", + "version": "8.4.3", + "resolved": "https://registry.npmjs.org/@storybook/addon-a11y/-/addon-a11y-8.4.3.tgz", + "integrity": "sha512-/kKk236z2VLu0TMAabe+B03NZR+WO6ghH+7TD85fz2mqKNH2KDGjDlVSooZzLIH60Kti2lp23NZJjhUqCUhD4Q==", "dev": true, "dependencies": { - "@storybook/addon-highlight": "8.4.2", + "@storybook/addon-highlight": "8.4.3", "axe-core": "^4.2.0" }, "funding": { @@ -4150,13 +4150,13 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.4.2" + "storybook": "^8.4.3" } }, "node_modules/@storybook/addon-actions": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/@storybook/addon-actions/-/addon-actions-8.4.2.tgz", - "integrity": "sha512-+hA200XN5aeA4T3jq8IifQq6Y+9FyNQ0Q+blM1L0Tl7WLzBc7B1kHQnKvhSj5pvMSBWc/Q/kY7Ev5t9gdOu13g==", + "version": "8.4.3", + "resolved": "https://registry.npmjs.org/@storybook/addon-actions/-/addon-actions-8.4.3.tgz", + "integrity": "sha512-3lPiMszzxi7YWouIiWSLELCQNFLY2ABmD7O1u2+i/0ZXZZeHqIrhdNoVCj9j0qMisAe9neYzDWLfyKX5yv226g==", "dev": true, "dependencies": { "@storybook/global": "^5.0.0", @@ -4170,13 +4170,13 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.4.2" + "storybook": "^8.4.3" } }, "node_modules/@storybook/addon-backgrounds": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/@storybook/addon-backgrounds/-/addon-backgrounds-8.4.2.tgz", - "integrity": "sha512-s4uag5VKuk8q2MSnuNS7Sv+v1/mykzGPXe/zZRW2ammtkdHp8Uy78eQS2G0aiG02chXCX+qQgWMyy5QItDcTFQ==", + "version": "8.4.3", + "resolved": "https://registry.npmjs.org/@storybook/addon-backgrounds/-/addon-backgrounds-8.4.3.tgz", + "integrity": "sha512-m3kTxtn+GgO1dj+qVUYV8LnYEVbeITUk+iXJlCBoYQptmWOmOry0KBSk3m/eWlWPeI42X6btwrLtXzMziC2RGA==", "dev": true, "dependencies": { "@storybook/global": "^5.0.0", @@ -4188,13 +4188,13 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.4.2" + "storybook": "^8.4.3" } }, "node_modules/@storybook/addon-controls": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/@storybook/addon-controls/-/addon-controls-8.4.2.tgz", - "integrity": "sha512-raCbHEj1xl4F3wKH6IdfEXNRaxKpY4QGhjSTE8Pte5iJSVhKG86taLqqRr+4dC7H1/LVMPU1XCGV4mkgDGtyxQ==", + "version": "8.4.3", + "resolved": "https://registry.npmjs.org/@storybook/addon-controls/-/addon-controls-8.4.3.tgz", + "integrity": "sha512-KPX1IxI60C0iLNYlkGVuRT+YKbSdbdy//pc2eDHWktxY0TnDymc3VWaSxNvIOpZK8N7ut1/UP/qb+sH/ckW7SA==", "dev": true, "dependencies": { "@storybook/global": "^5.0.0", @@ -4206,19 +4206,19 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.4.2" + "storybook": "^8.4.3" } }, "node_modules/@storybook/addon-docs": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/@storybook/addon-docs/-/addon-docs-8.4.2.tgz", - "integrity": "sha512-jIpykha7hv2Inlrq31ZoYg2QhuCuvcO+Q+uvhT45RDTB+2US/fg3rJINKlw2Djq8RPPOXvty5W0yvE6CrWKhnQ==", + "version": "8.4.3", + "resolved": "https://registry.npmjs.org/@storybook/addon-docs/-/addon-docs-8.4.3.tgz", + "integrity": "sha512-3xSYtbg+pjZiQIzJJOKlSXgxxRvRSdQYMQbAZoJVizGpb2y5OpEKiAoP1wuOaYTD8t2wlBgpi/aEx7qHAWaDbA==", "dev": true, "dependencies": { "@mdx-js/react": "^3.0.0", - "@storybook/blocks": "8.4.2", - "@storybook/csf-plugin": "8.4.2", - "@storybook/react-dom-shim": "8.4.2", + "@storybook/blocks": "8.4.3", + "@storybook/csf-plugin": "8.4.3", + "@storybook/react-dom-shim": "8.4.3", "react": "^16.8.0 || ^17.0.0 || ^18.0.0", "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0", "ts-dedent": "^2.0.0" @@ -4228,24 +4228,24 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.4.2" + "storybook": "^8.4.3" } }, "node_modules/@storybook/addon-essentials": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/@storybook/addon-essentials/-/addon-essentials-8.4.2.tgz", - "integrity": "sha512-+/vfPrXM/GWU3Kbrg92PepwAZr7lOeulTTYF4THK0CL3DfUUlkGNpBPLP5PtjCuIkVrTCjXiIEdVWk47d5m2+w==", - "dev": true, - "dependencies": { - "@storybook/addon-actions": "8.4.2", - "@storybook/addon-backgrounds": "8.4.2", - "@storybook/addon-controls": "8.4.2", - "@storybook/addon-docs": "8.4.2", - "@storybook/addon-highlight": "8.4.2", - "@storybook/addon-measure": "8.4.2", - "@storybook/addon-outline": "8.4.2", - "@storybook/addon-toolbars": "8.4.2", - "@storybook/addon-viewport": "8.4.2", + "version": "8.4.3", + "resolved": "https://registry.npmjs.org/@storybook/addon-essentials/-/addon-essentials-8.4.3.tgz", + "integrity": "sha512-5SOC8FUJHVhicbLlaD9D+BKa556Zc0XnsXgkFWgeXhNSXRcM1ZrhUFWxVYGMAyXBZ3lmeYHNo/mYxDBnD2fWPQ==", + "dev": true, + "dependencies": { + "@storybook/addon-actions": "8.4.3", + "@storybook/addon-backgrounds": "8.4.3", + "@storybook/addon-controls": "8.4.3", + "@storybook/addon-docs": "8.4.3", + "@storybook/addon-highlight": "8.4.3", + "@storybook/addon-measure": "8.4.3", + "@storybook/addon-outline": "8.4.3", + "@storybook/addon-toolbars": "8.4.3", + "@storybook/addon-viewport": "8.4.3", "ts-dedent": "^2.0.0" }, "funding": { @@ -4253,13 +4253,13 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.4.2" + "storybook": "^8.4.3" } }, "node_modules/@storybook/addon-highlight": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/@storybook/addon-highlight/-/addon-highlight-8.4.2.tgz", - "integrity": "sha512-vTtwp7nyJ09SXrsMnH+pukCjHjRMjQXgHZHxvbrv09uoH8ldQMv9B7u+X+9Wcy/jYSKFz/ng7pWo4b4a2oXHkg==", + "version": "8.4.3", + "resolved": "https://registry.npmjs.org/@storybook/addon-highlight/-/addon-highlight-8.4.3.tgz", + "integrity": "sha512-MfBvokTJkbynHBceA2SgvFvS7Tpdv6FxzSZbeVtJHyYBqXrobj8llpo4n2IqAo/f3otcapN64wK82Jl4u8dYVg==", "dev": true, "dependencies": { "@storybook/global": "^5.0.0" @@ -4269,18 +4269,18 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.4.2" + "storybook": "^8.4.3" } }, "node_modules/@storybook/addon-interactions": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/@storybook/addon-interactions/-/addon-interactions-8.4.2.tgz", - "integrity": "sha512-+/NTENTApeOcONgFNQ6Olbk0GH3pTDG3w0eh00slCB+2agD1BcVKg8SSlHQV0lQF1cK3vWL/X3jeaxdFLYOjjg==", + "version": "8.4.3", + "resolved": "https://registry.npmjs.org/@storybook/addon-interactions/-/addon-interactions-8.4.3.tgz", + "integrity": "sha512-PLc5qM5/CtVcSSVmoyS+dgJNvLN3Z99PwcbDb7y0a2/tSd+LGQ6pEB02OtHWyJepkzKulMV7k9SwpywD2XsToA==", "dev": true, "dependencies": { "@storybook/global": "^5.0.0", - "@storybook/instrumenter": "8.4.2", - "@storybook/test": "8.4.2", + "@storybook/instrumenter": "8.4.3", + "@storybook/test": "8.4.3", "polished": "^4.2.2", "ts-dedent": "^2.2.0" }, @@ -4289,13 +4289,13 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.4.2" + "storybook": "^8.4.3" } }, "node_modules/@storybook/addon-links": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/@storybook/addon-links/-/addon-links-8.4.2.tgz", - "integrity": "sha512-8nncReA/drR2cyAcUz484FIv+MXbyCQxYrA6yfWHthZfGu+vMIETvhh+eP4OpluVnxySoQ+hCVK/V8G2jcyAZg==", + "version": "8.4.3", + "resolved": "https://registry.npmjs.org/@storybook/addon-links/-/addon-links-8.4.3.tgz", + "integrity": "sha512-trt0s1mj6gvHkNyE/wk83HsfDedaS8OwMtcYmIkQrotCMHjv+ZyyxWP1/zOtudn3THdzGV7qOAFoi6hAEFdrlg==", "dev": true, "dependencies": { "@storybook/csf": "^0.1.11", @@ -4308,7 +4308,7 @@ }, "peerDependencies": { "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta", - "storybook": "^8.4.2" + "storybook": "^8.4.3" }, "peerDependenciesMeta": { "react": { @@ -4317,9 +4317,9 @@ } }, "node_modules/@storybook/addon-measure": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/@storybook/addon-measure/-/addon-measure-8.4.2.tgz", - "integrity": "sha512-z+j6xQwcUBSpgzl1XDU+xU4YYgLraLMljECW7NvRNyJ/PYixvol8R3wtzWbr+CBpxmvbXjEJCPlF+EjF9/mBWQ==", + "version": "8.4.3", + "resolved": "https://registry.npmjs.org/@storybook/addon-measure/-/addon-measure-8.4.3.tgz", + "integrity": "sha512-R9m71P6LDNr7cUtDgWWPBRB/GQfv8hdDjWbD/HfqPkGi49RtBXf/zzFr7OrzgwaT9A73VEM74FGOhCZyHz5Qtg==", "dev": true, "dependencies": { "@storybook/global": "^5.0.0", @@ -4330,13 +4330,13 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.4.2" + "storybook": "^8.4.3" } }, "node_modules/@storybook/addon-onboarding": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/@storybook/addon-onboarding/-/addon-onboarding-8.4.2.tgz", - "integrity": "sha512-zWzOyRASnIPt2AcaEl1KhI+aOaKDuoIcNB7u1GoABj0YM+V9d6o3lvcsmOAQG5pgwgFyqyOnLwpTfvRSEyzGFA==", + "version": "8.4.3", + "resolved": "https://registry.npmjs.org/@storybook/addon-onboarding/-/addon-onboarding-8.4.3.tgz", + "integrity": "sha512-GR384uns/cb0nhjEab+woOrWDiZYJeq5RLEfHoLePvSm75cmZ785U9jxirUh8uX+/RxRok7b/TjGmd5EMxYhfg==", "dev": true, "dependencies": { "react-confetti": "^6.1.0" @@ -4346,13 +4346,13 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.4.2" + "storybook": "^8.4.3" } }, "node_modules/@storybook/addon-outline": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/@storybook/addon-outline/-/addon-outline-8.4.2.tgz", - "integrity": "sha512-oTMlPEyT4CBqzcQbfemoJzJ6yzeRAmvrAx9ssaBcnQQRsKxo0D2Ri/Jmm6SNcR0yBHxYRkvIH+2phLw8aiflCQ==", + "version": "8.4.3", + "resolved": "https://registry.npmjs.org/@storybook/addon-outline/-/addon-outline-8.4.3.tgz", + "integrity": "sha512-9dMmh6uQrlJUlKvH+rxEvvo8BCYznRa/YxLoGtgNzh5EbbSR03IVqgfZPpE4ewZidsfCL3Jf3cPjwSuWs3dxLA==", "dev": true, "dependencies": { "@storybook/global": "^5.0.0", @@ -4363,26 +4363,26 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.4.2" + "storybook": "^8.4.3" } }, "node_modules/@storybook/addon-toolbars": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/@storybook/addon-toolbars/-/addon-toolbars-8.4.2.tgz", - "integrity": "sha512-DidzW/NQS224niMJIjcJI2ls83emqygUcS9GYNGgdc5Xwro/TPgGYOXP2qnXgYUxXQTHbrxmIbHdEehxC7CcYQ==", + "version": "8.4.3", + "resolved": "https://registry.npmjs.org/@storybook/addon-toolbars/-/addon-toolbars-8.4.3.tgz", + "integrity": "sha512-lW7p7VPeUDIqS0RAXY4yRQ4LCQWGzGdw64moU20NpeVfedfDc4EeCisLD54sU/xA6kMnxoFNYsdHfpkHvJA/Cg==", "dev": true, "funding": { "type": "opencollective", "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.4.2" + "storybook": "^8.4.3" } }, "node_modules/@storybook/addon-viewport": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/@storybook/addon-viewport/-/addon-viewport-8.4.2.tgz", - "integrity": "sha512-qVQ2UaxCNsUSFHnAAAizNPIJ/QwfMg7p5bBdpYROTZXJe+bxVp0rFzZmQgHZ3/sn+lzE4ItM4QEfxkfQUWi1ag==", + "version": "8.4.3", + "resolved": "https://registry.npmjs.org/@storybook/addon-viewport/-/addon-viewport-8.4.3.tgz", + "integrity": "sha512-KUstpUx++5cWXMXlz9jBhM6qDW9rwtKMvTyJV24TmhYIDmynset2ILRknIqLbVdBixop40+I67O3SF/ydU4E0w==", "dev": true, "dependencies": { "memoizerific": "^1.11.3" @@ -4392,13 +4392,13 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.4.2" + "storybook": "^8.4.3" } }, "node_modules/@storybook/blocks": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/@storybook/blocks/-/blocks-8.4.2.tgz", - "integrity": "sha512-yAAvmOWaD8gIrepOxCh/RxQqd/1xZIwd/V+gsvAhW/thawN+SpI+zK63gmcqAPLX84hJ3Dh5pegRk0SoHNuDVA==", + "version": "8.4.3", + "resolved": "https://registry.npmjs.org/@storybook/blocks/-/blocks-8.4.3.tgz", + "integrity": "sha512-PPC+RXievuHKYlL+oO4ygllT59YzpESklNfeHUkeyuSo0nr04UwSrbfdsQlYJo3nRP0wNKyj/NkYDvzMJ5RlTg==", "dev": true, "dependencies": { "@storybook/csf": "^0.1.11", @@ -4412,7 +4412,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.4.2" + "storybook": "^8.4.3" }, "peerDependenciesMeta": { "react": { @@ -4424,12 +4424,12 @@ } }, "node_modules/@storybook/builder-vite": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/@storybook/builder-vite/-/builder-vite-8.4.2.tgz", - "integrity": "sha512-dO5FB5yH1C6tr/kBHn1frvGwp8Pt0D1apgXWkJ5ITWEUfh6WwOqX2fqsWsqaNwE7gP0qn0XgwCIEkI/4Mj55SA==", + "version": "8.4.3", + "resolved": "https://registry.npmjs.org/@storybook/builder-vite/-/builder-vite-8.4.3.tgz", + "integrity": "sha512-kLM2vPKOo/yAavYmQgt0qO8kU/vDYuHRq3/AH9g4AvU155u9NeY5u5p8V4KtEHIDxWNmIOD2C09nDkk7DA22sw==", "dev": true, "dependencies": { - "@storybook/csf-plugin": "8.4.2", + "@storybook/csf-plugin": "8.4.3", "browser-assert": "^1.2.1", "ts-dedent": "^2.0.0" }, @@ -4438,14 +4438,14 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.4.2", + "storybook": "^8.4.3", "vite": "^4.0.0 || ^5.0.0" } }, "node_modules/@storybook/components": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/@storybook/components/-/components-8.4.2.tgz", - "integrity": "sha512-+W59oF7D73LAxLNmCfFrfs98cH9pyNHK9HlJoO5/lKbK4IdWhhOoqUR/AJ3ueksoLuetFat4DxyE8SN1H4Bvrg==", + "version": "8.4.3", + "resolved": "https://registry.npmjs.org/@storybook/components/-/components-8.4.3.tgz", + "integrity": "sha512-5+krpYrKC0aLUlkfhKLR78Yrai0S9AP7SR3jXMpyuWIny0fIKn+Ak2IQ721A6RGW+zP02GR6/wLHI+A7CDpcAg==", "dev": true, "funding": { "type": "opencollective", @@ -4456,9 +4456,9 @@ } }, "node_modules/@storybook/core": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/@storybook/core/-/core-8.4.2.tgz", - "integrity": "sha512-hF8GWoUZTjwwuV5j4OLhMHZtZQL/NYcVUBReC2Ba06c8PkFIKqKZwATr1zKd301gQ5Qwcn9WgmZxJTMgdKQtOg==", + "version": "8.4.3", + "resolved": "https://registry.npmjs.org/@storybook/core/-/core-8.4.3.tgz", + "integrity": "sha512-Ly4sR2gU2Xxu+O0qR4RJpq+Bs45Kv0JPlzdkoTDKQD8B2ozRAdvQLgBHjnBbUYw9jUPzC96uusqTJIBxIdBi7w==", "dev": true, "dependencies": { "@storybook/csf": "^0.1.11", @@ -4487,9 +4487,9 @@ } }, "node_modules/@storybook/core-common": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/@storybook/core-common/-/core-common-8.4.2.tgz", - "integrity": "sha512-om+tWPdCDuL9zSioxE1EGaZw5c8yRjQTfaVBpWCxbGOMgbbFJXOcJ9oXwmVEQSbxEPY7RUmCXcVpO3N+N+xDKA==", + "version": "8.4.3", + "resolved": "https://registry.npmjs.org/@storybook/core-common/-/core-common-8.4.3.tgz", + "integrity": "sha512-KR+5nsj4s3i0HjkMegDmAg9R/HDrdUoeYjwzP6DEy9wod45NekDa+tpepUD9TkhPEVle0Jovymq/f4L7qpYusg==", "dev": true, "funding": { "type": "opencollective", @@ -4521,9 +4521,9 @@ } }, "node_modules/@storybook/csf-plugin": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/@storybook/csf-plugin/-/csf-plugin-8.4.2.tgz", - "integrity": "sha512-1f0t6W5xbC1sSAHHs3uXYPIQs2NXAEtIGqn6X9i3xbbub6hDS8PF8BIm7dOjQ8dZOPp7d9ltR64V5CoLlsOigA==", + "version": "8.4.3", + "resolved": "https://registry.npmjs.org/@storybook/csf-plugin/-/csf-plugin-8.4.3.tgz", + "integrity": "sha512-lS3qJ1qBZk7ddu3O+1hmmp+eDsQ/pOTKuTCJY7Zaoyze97LnLtYRs3FbfPhievVWiIoPdnXtK+mcssR9N9AHMw==", "dev": true, "dependencies": { "unplugin": "^1.3.1" @@ -4533,13 +4533,13 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.4.2" + "storybook": "^8.4.3" } }, "node_modules/@storybook/csf-tools": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/@storybook/csf-tools/-/csf-tools-8.4.2.tgz", - "integrity": "sha512-zBIwzc3Anj2jW5dE900dLOMDJrMb1tz3Hcea9rsB/zJKOhyAKz2H0wEsoC97sge7ga90FJAHDM6Q0UBVnBRWcQ==", + "version": "8.4.3", + "resolved": "https://registry.npmjs.org/@storybook/csf-tools/-/csf-tools-8.4.3.tgz", + "integrity": "sha512-dn2x3j5VGhdvdv6SBBHy1kCef/SR1LKjG3WA+iAKjnreQDqiiCJFxBuPK0n9oaTpS5pqQAy8nFiiq1R+ko2XuA==", "dev": true, "funding": { "type": "opencollective", @@ -4569,9 +4569,9 @@ } }, "node_modules/@storybook/instrumenter": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/@storybook/instrumenter/-/instrumenter-8.4.2.tgz", - "integrity": "sha512-gPYCZ/0O6gRLI3zmenu2N6QtKzxDZFdT2xf4RWcNUSZyp28RZkRCIgKFMt3fTmvE0yMzAjQyRSkBdrONjQ44HA==", + "version": "8.4.3", + "resolved": "https://registry.npmjs.org/@storybook/instrumenter/-/instrumenter-8.4.3.tgz", + "integrity": "sha512-jEMi3CFlyeMQv6V/WWPnL10Qgqn5j03pXXnfLylGcrvLnl1pa1A6sDWqeB6XR2L1HuW96XelkMecCvp5pYXAdQ==", "dev": true, "dependencies": { "@storybook/global": "^5.0.0", @@ -4582,13 +4582,13 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.4.2" + "storybook": "^8.4.3" } }, "node_modules/@storybook/manager-api": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/@storybook/manager-api/-/manager-api-8.4.2.tgz", - "integrity": "sha512-rhPc4cgQDKDH8NUyRh/ZaJW7QIhR/PO5MNX4xc+vz71sM2nO7ONA/FrgLtCuu4SULdwilEPvGefYvLK0dE+Caw==", + "version": "8.4.3", + "resolved": "https://registry.npmjs.org/@storybook/manager-api/-/manager-api-8.4.3.tgz", + "integrity": "sha512-b09FHQLHrc3VGdodgV+EkA6V8VhpgadygDn9aVIXUULHXMQCfzzsSK9kiunFGVjH5r4BtdanucBXoBRFAi9D/g==", "dev": true, "funding": { "type": "opencollective", @@ -4599,9 +4599,9 @@ } }, "node_modules/@storybook/preview-api": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/@storybook/preview-api/-/preview-api-8.4.2.tgz", - "integrity": "sha512-5X/xvIvDPaWJKUBCo5zVeBbbjkhnwcI2KPkuOgrHVRRhuQ5WqD0RYxVtOOFNyQXme7g0nNl5RFNgvT7qv9qGeg==", + "version": "8.4.3", + "resolved": "https://registry.npmjs.org/@storybook/preview-api/-/preview-api-8.4.3.tgz", + "integrity": "sha512-SQPiGJ5iNk/RMZTfTQZe27MaZz16XfIgb1GTDWuaSrDBWVcelHRCZdh8Ps+9X5Mre6GeZ9wMQ56l+hQf/DO9Ug==", "dev": true, "funding": { "type": "opencollective", @@ -4612,17 +4612,17 @@ } }, "node_modules/@storybook/react": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/@storybook/react/-/react-8.4.2.tgz", - "integrity": "sha512-rO5/aVKBVhIKENcL7G8ud4QKC5OyWBPCkJIvY6XUHIuhErJy9/4pP+sZ85jypVwx5kq+EqCPF8AEOWjIxB/4/Q==", + "version": "8.4.3", + "resolved": "https://registry.npmjs.org/@storybook/react/-/react-8.4.3.tgz", + "integrity": "sha512-Dz7Kt81lGjS+b4LLOKyLK5Ifp9ZzfD0pwOM2r5QYuBcD5b1I4I6gpRoTfQI/dI6bk5WevVqeOZ2iigZAnaXNGw==", "dev": true, "dependencies": { - "@storybook/components": "8.4.2", + "@storybook/components": "8.4.3", "@storybook/global": "^5.0.0", - "@storybook/manager-api": "8.4.2", - "@storybook/preview-api": "8.4.2", - "@storybook/react-dom-shim": "8.4.2", - "@storybook/theming": "8.4.2" + "@storybook/manager-api": "8.4.3", + "@storybook/preview-api": "8.4.3", + "@storybook/react-dom-shim": "8.4.3", + "@storybook/theming": "8.4.3" }, "engines": { "node": ">=18.0.0" @@ -4632,10 +4632,10 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "@storybook/test": "8.4.2", + "@storybook/test": "8.4.3", "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.4.2", + "storybook": "^8.4.3", "typescript": ">= 4.2.x" }, "peerDependenciesMeta": { @@ -4648,9 +4648,9 @@ } }, "node_modules/@storybook/react-dom-shim": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/@storybook/react-dom-shim/-/react-dom-shim-8.4.2.tgz", - "integrity": "sha512-FZVTM1f34FpGnf6e3MDIKkz05gmn8H9wEccvQAgr8pEFe8VWfrpVWeUrmatSAfgrCMNXYC1avDend8UX6IM8Fg==", + "version": "8.4.3", + "resolved": "https://registry.npmjs.org/@storybook/react-dom-shim/-/react-dom-shim-8.4.3.tgz", + "integrity": "sha512-0zFfPJsDzqEMXk6CEHOIPRR8BcST/X4UbZDZmQBVrzOlmJWdyx1nFK7BT9bbJvb6N9v2Qy6yHL3b2wzZqkDezA==", "dev": true, "funding": { "type": "opencollective", @@ -4659,19 +4659,19 @@ "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.4.2" + "storybook": "^8.4.3" } }, "node_modules/@storybook/react-vite": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/@storybook/react-vite/-/react-vite-8.4.2.tgz", - "integrity": "sha512-OoXaW/V1AqLggMyniRcnuwmqQ1/OtSn38t31lePX4nDDeJhbGT3ZPldRrwvsLb0EaD3N27uoL+QbAOgsYJIhwA==", + "version": "8.4.3", + "resolved": "https://registry.npmjs.org/@storybook/react-vite/-/react-vite-8.4.3.tgz", + "integrity": "sha512-5M6sZLmD0PogJnhuWNgXySJux/NbRinz7fznj+05to/t8uIgqx6UDu5tZO0LWnSw7K/NsHnvLLwhhzttM3X8zQ==", "dev": true, "dependencies": { "@joshwooding/vite-plugin-react-docgen-typescript": "0.3.0", "@rollup/pluginutils": "^5.0.2", - "@storybook/builder-vite": "8.4.2", - "@storybook/react": "8.4.2", + "@storybook/builder-vite": "8.4.3", + "@storybook/react": "8.4.3", "find-up": "^5.0.0", "magic-string": "^0.30.0", "react-docgen": "^7.0.0", @@ -4688,7 +4688,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.4.2", + "storybook": "^8.4.3", "vite": "^4.0.0 || ^5.0.0" } }, @@ -4710,14 +4710,14 @@ } }, "node_modules/@storybook/test": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/@storybook/test/-/test-8.4.2.tgz", - "integrity": "sha512-MipTdboStv0hsqF2Sw8TZgP0YnxCcDYwxkTOd4hmRzev/7Brtvpi4pqjqh8k98ZCvhrCPAPVIoX5drk+oi3YUA==", + "version": "8.4.3", + "resolved": "https://registry.npmjs.org/@storybook/test/-/test-8.4.3.tgz", + "integrity": "sha512-R4KMIZE4S7GyFE4AFD9FESv2Ws406lsg9GFrBaiJGrzOlRKe5yJ7w1MWOu76UclqRNlQHzaEOnOE6lEHVISsDQ==", "dev": true, "dependencies": { "@storybook/csf": "^0.1.11", "@storybook/global": "^5.0.0", - "@storybook/instrumenter": "8.4.2", + "@storybook/instrumenter": "8.4.3", "@testing-library/dom": "10.4.0", "@testing-library/jest-dom": "6.5.0", "@testing-library/user-event": "14.5.2", @@ -4729,7 +4729,7 @@ "url": "https://opencollective.com/storybook" }, "peerDependencies": { - "storybook": "^8.4.2" + "storybook": "^8.4.3" } }, "node_modules/@storybook/test-runner": { @@ -4769,9 +4769,9 @@ } }, "node_modules/@storybook/theming": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/@storybook/theming/-/theming-8.4.2.tgz", - "integrity": "sha512-9j4fnu5LcV+qSs1rdwf61Bt14lms0T1LOZkHxGNcS1c1oH+cPS+sxECh2lxtni+mvOAHUlBs9pKhVZzRPdWpvg==", + "version": "8.4.3", + "resolved": "https://registry.npmjs.org/@storybook/theming/-/theming-8.4.3.tgz", + "integrity": "sha512-ORQY2/C488ur5NkQYes6x+fO5rcyRMyh4uX3DlkNhCsA2CJ/Ik3WVGjprrDuLn+9S4+mtXfVUNfvN7xszlT1oA==", "dev": true, "funding": { "type": "opencollective", @@ -5699,9 +5699,9 @@ } }, "node_modules/@vitest/pretty-format": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-2.1.4.tgz", - "integrity": "sha512-L95zIAkEuTDbUX1IsjRl+vyBSLh3PwLLgKpghl37aCK9Jvw0iP+wKwIFhfjdUtA2myLgjrG6VU6JCFLv8q/3Ww==", + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-2.1.5.tgz", + "integrity": "sha512-4ZOwtk2bqG5Y6xRGHcveZVr+6txkH7M2e+nPFd6guSoN638v/1XQ0K06eOpi0ptVU/2tW/pIU4IoPotY/GZ9fw==", "dev": true, "dependencies": { "tinyrainbow": "^1.2.0" @@ -5723,12 +5723,12 @@ } }, "node_modules/@vitest/utils": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-2.1.4.tgz", - "integrity": "sha512-MXDnZn0Awl2S86PSNIim5PWXgIAx8CIkzu35mBdSApUip6RFOGXBCf3YFyeEu8n1IHk4bWD46DeYFu9mQlFIRg==", + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-2.1.5.tgz", + "integrity": "sha512-yfj6Yrp0Vesw2cwJbP+cl04OC+IHFsuQsrsJBL9pyGeQXE56v1UAOQco+SR55Vf1nQzfV0QJg1Qum7AaWUwwYg==", "dev": true, "dependencies": { - "@vitest/pretty-format": "2.1.4", + "@vitest/pretty-format": "2.1.5", "loupe": "^3.1.2", "tinyrainbow": "^1.2.0" }, @@ -7414,9 +7414,9 @@ } }, "node_modules/chromatic": { - "version": "11.18.0", - "resolved": "https://registry.npmjs.org/chromatic/-/chromatic-11.18.0.tgz", - "integrity": "sha512-3o9Frn1oIS1hFLsJxVH9yVJ1O7+TCYoyL7OZzUorL/DCYduhXr5LDSBfpUsp7EdCPb64ufkbyFzSRNbt/xy9kg==", + "version": "11.18.1", + "resolved": "https://registry.npmjs.org/chromatic/-/chromatic-11.18.1.tgz", + "integrity": "sha512-hkNT9vA6K9+PnE/khhZYBnRCOm8NonaQDs7RZ8YHFo7/lh1b/x/uFMkTjWjaj/mkM6QOR/evu5VcZMtcaauSlw==", "dev": true, "bin": { "chroma": "dist/bin.js", @@ -8232,9 +8232,9 @@ "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" }, "node_modules/electron-to-chromium": { - "version": "1.5.56", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.56.tgz", - "integrity": "sha512-7lXb9dAvimCFdvUMTyucD4mnIndt/xhRKFAlky0CyFogdnNmdPQNoHI23msF/2V4mpTxMzgMdjK4+YRlFlRQZw==", + "version": "1.5.57", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.57.tgz", + "integrity": "sha512-xS65H/tqgOwUBa5UmOuNSLuslDo7zho0y/lgQw35pnrqiZh7UOWHCeL/Bt6noJATbA6tpQJGCifsFsIRZj1Fqg==", "dev": true }, "node_modules/emittery": { @@ -8279,9 +8279,9 @@ } }, "node_modules/es-abstract": { - "version": "1.23.3", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.3.tgz", - "integrity": "sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==", + "version": "1.23.4", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.4.tgz", + "integrity": "sha512-HR1gxH5OaiN7XH7uiWH0RLw0RcFySiSoW1ctxmD1ahTw3uGBtkmm/ng0tDU1OtYx5OK6EOL5Y6O21cDflG3Jcg==", "dev": true, "dependencies": { "array-buffer-byte-length": "^1.0.1", @@ -8299,7 +8299,7 @@ "function.prototype.name": "^1.1.6", "get-intrinsic": "^1.2.4", "get-symbol-description": "^1.0.2", - "globalthis": "^1.0.3", + "globalthis": "^1.0.4", "gopd": "^1.0.1", "has-property-descriptors": "^1.0.2", "has-proto": "^1.0.3", @@ -8315,10 +8315,10 @@ "is-string": "^1.0.7", "is-typed-array": "^1.1.13", "is-weakref": "^1.0.2", - "object-inspect": "^1.13.1", + "object-inspect": "^1.13.3", "object-keys": "^1.1.1", "object.assign": "^4.1.5", - "regexp.prototype.flags": "^1.5.2", + "regexp.prototype.flags": "^1.5.3", "safe-array-concat": "^1.1.2", "safe-regex-test": "^1.0.3", "string.prototype.trim": "^1.2.9", @@ -9650,9 +9650,9 @@ } }, "node_modules/framer-motion": { - "version": "11.11.11", - "resolved": "https://registry.npmjs.org/framer-motion/-/framer-motion-11.11.11.tgz", - "integrity": "sha512-tuDH23ptJAKUHGydJQII9PhABNJBpB+z0P1bmgKK9QFIssHGlfPd6kxMq00LSKwE27WFsb2z0ovY0bpUyMvfRw==", + "version": "11.11.15", + "resolved": "https://registry.npmjs.org/framer-motion/-/framer-motion-11.11.15.tgz", + "integrity": "sha512-fib+OpUe4nap4W1vhaDohnPU+42B5s1q+jNkNkb6TfzmDYtRhDyvn4mkRCAD5a2cQKOI3nJZP7yqGYtxnlmleg==", "dependencies": { "tslib": "^2.4.0" }, @@ -12702,14 +12702,14 @@ } }, "node_modules/mlly": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.7.2.tgz", - "integrity": "sha512-tN3dvVHYVz4DhSXinXIk7u9syPYaJvio118uomkovAtWBT+RdbP6Lfh/5Lvo519YMmwBafwlh20IPTXIStscpA==", + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.7.3.tgz", + "integrity": "sha512-xUsx5n/mN0uQf4V548PKQ+YShA4/IW0KI1dZhrNrPCLG+xizETbHTkOa1f8/xut9JRPp8kQuMnz0oqwkTiLo/A==", "dev": true, "dependencies": { - "acorn": "^8.12.1", + "acorn": "^8.14.0", "pathe": "^1.1.2", - "pkg-types": "^1.2.0", + "pkg-types": "^1.2.1", "ufo": "^1.5.4" } }, @@ -13865,9 +13865,9 @@ } }, "node_modules/process-on-spawn": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/process-on-spawn/-/process-on-spawn-1.0.0.tgz", - "integrity": "sha512-1WsPDsUSMmZH5LeMLegqkPDrsGgsWwk1Exipy2hvB0o/F0ASzbpIctSCcZIK1ykJvtTJULEH+20WOFjMvGnCTg==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/process-on-spawn/-/process-on-spawn-1.1.0.tgz", + "integrity": "sha512-JOnOPQ/8TZgjs1JIH/m9ni7FfimjNa/PRx7y/Wb5qdItsnhO0jE4AT7fC0HjC28DUQWDr50dwSYZLdRMlqDq3Q==", "dev": true, "dependencies": { "fromentries": "^1.2.0" @@ -14483,9 +14483,9 @@ } }, "node_modules/rollup": { - "version": "4.25.0", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.25.0.tgz", - "integrity": "sha512-uVbClXmR6wvx5R1M3Od4utyLUxrmOcEm3pAtMphn73Apq19PDtHpgZoEvqH2YnnaNUuvKmg2DgRd2Sqv+odyqg==", + "version": "4.26.0", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.26.0.tgz", + "integrity": "sha512-ilcl12hnWonG8f+NxU6BlgysVA0gvY2l8N0R84S1HcINbW20bvwuCngJkkInV6LXhwRpucsW5k1ovDwEdBVrNg==", "dev": true, "dependencies": { "@types/estree": "1.0.6" @@ -14498,24 +14498,24 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.25.0", - "@rollup/rollup-android-arm64": "4.25.0", - "@rollup/rollup-darwin-arm64": "4.25.0", - "@rollup/rollup-darwin-x64": "4.25.0", - "@rollup/rollup-freebsd-arm64": "4.25.0", - "@rollup/rollup-freebsd-x64": "4.25.0", - "@rollup/rollup-linux-arm-gnueabihf": "4.25.0", - "@rollup/rollup-linux-arm-musleabihf": "4.25.0", - "@rollup/rollup-linux-arm64-gnu": "4.25.0", - "@rollup/rollup-linux-arm64-musl": "4.25.0", - "@rollup/rollup-linux-powerpc64le-gnu": "4.25.0", - "@rollup/rollup-linux-riscv64-gnu": "4.25.0", - "@rollup/rollup-linux-s390x-gnu": "4.25.0", - "@rollup/rollup-linux-x64-gnu": "4.25.0", - "@rollup/rollup-linux-x64-musl": "4.25.0", - "@rollup/rollup-win32-arm64-msvc": "4.25.0", - "@rollup/rollup-win32-ia32-msvc": "4.25.0", - "@rollup/rollup-win32-x64-msvc": "4.25.0", + "@rollup/rollup-android-arm-eabi": "4.26.0", + "@rollup/rollup-android-arm64": "4.26.0", + "@rollup/rollup-darwin-arm64": "4.26.0", + "@rollup/rollup-darwin-x64": "4.26.0", + "@rollup/rollup-freebsd-arm64": "4.26.0", + "@rollup/rollup-freebsd-x64": "4.26.0", + "@rollup/rollup-linux-arm-gnueabihf": "4.26.0", + "@rollup/rollup-linux-arm-musleabihf": "4.26.0", + "@rollup/rollup-linux-arm64-gnu": "4.26.0", + "@rollup/rollup-linux-arm64-musl": "4.26.0", + "@rollup/rollup-linux-powerpc64le-gnu": "4.26.0", + "@rollup/rollup-linux-riscv64-gnu": "4.26.0", + "@rollup/rollup-linux-s390x-gnu": "4.26.0", + "@rollup/rollup-linux-x64-gnu": "4.26.0", + "@rollup/rollup-linux-x64-musl": "4.26.0", + "@rollup/rollup-win32-arm64-msvc": "4.26.0", + "@rollup/rollup-win32-ia32-msvc": "4.26.0", + "@rollup/rollup-win32-x64-msvc": "4.26.0", "fsevents": "~2.3.2" } }, @@ -14887,12 +14887,12 @@ } }, "node_modules/storybook": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/storybook/-/storybook-8.4.2.tgz", - "integrity": "sha512-GMCgyAulmLNrkUtDkCpFO4SB77YrpiIxq6e5tzaQdXEuaDu1mdNwOuP3VG7nE2FzxmqDvagSgriM68YW9iFaZA==", + "version": "8.4.3", + "resolved": "https://registry.npmjs.org/storybook/-/storybook-8.4.3.tgz", + "integrity": "sha512-n+6ME+APinsx0zjNTmx3SntJ4iCgoTK7TsxUC8+op/rUAA8hNbD+/NT7Qx/F5peHNchVeVFGtebPDAHU9g1M/Q==", "dev": true, "dependencies": { - "@storybook/core": "8.4.2" + "@storybook/core": "8.4.3" }, "bin": { "getstorybook": "bin/index.cjs", diff --git a/src/components/alert/alert.tsx b/src/components/alert/alert.tsx index 48479fa2..30f36f69 100644 --- a/src/components/alert/alert.tsx +++ b/src/components/alert/alert.tsx @@ -110,6 +110,7 @@ const Alert = ( { closeIconClassNames.light ) } onClick={ () => closeAlert() } + aria-label="Close alert" > @@ -157,6 +158,7 @@ const Alert = ( { closeIconClassNames.light ) } onClick={ () => closeAlert() } + aria-label="Close alert" > diff --git a/src/components/area-chart/area-chart.stories.tsx b/src/components/area-chart/area-chart.stories.tsx index 700ba24f..69de4b6f 100644 --- a/src/components/area-chart/area-chart.stories.tsx +++ b/src/components/area-chart/area-chart.stories.tsx @@ -205,6 +205,7 @@ export const AreaChartCard1: Story1 = ( args ) => ( @@ -267,6 +268,7 @@ export const AreaChartCard2: Story1 = ( args ) => ( diff --git a/src/components/area-chart/area-chart.tsx b/src/components/area-chart/area-chart.tsx index d5d76a3f..d31d4828 100644 --- a/src/components/area-chart/area-chart.tsx +++ b/src/components/area-chart/area-chart.tsx @@ -93,7 +93,7 @@ const AreaChart = ( { xAxisDataKey, yAxisDataKey, xAxisFontSize = 'sm', // sm, md, lg - xAxisFontColor = '#4B5563', + xAxisFontColor = '#6B7280', chartWidth = 350, chartHeight = 200, }: AreaChartProps ) => { diff --git a/src/components/avatar/avatar.tsx b/src/components/avatar/avatar.tsx index 8cd551a8..ddd80927 100644 --- a/src/components/avatar/avatar.tsx +++ b/src/components/avatar/avatar.tsx @@ -33,6 +33,7 @@ const Avatar = forwardRef( alt, children, className, + ...props }, ref ) => { @@ -116,6 +117,7 @@ const Avatar = forwardRef( { ...( textAvatar ? { children: getChildren() } : { src: url, alt, onError: handleImageError } ) } + { ...props } /> ); } diff --git a/src/components/bar-chart/bar-chart.stories.tsx b/src/components/bar-chart/bar-chart.stories.tsx index b4af981c..6d576c0e 100644 --- a/src/components/bar-chart/bar-chart.stories.tsx +++ b/src/components/bar-chart/bar-chart.stories.tsx @@ -260,6 +260,7 @@ export const BarChartCard1: Story1 = ( args ) => ( @@ -321,6 +322,7 @@ export const BarChartCard2: Story1 = ( args ) => ( @@ -385,6 +387,7 @@ export const BarChartCard3: Story1 = ( args ) => ( @@ -450,6 +453,7 @@ export const BarChartCard4: Story1 = ( args ) => ( @@ -514,6 +518,7 @@ export const AreaChartCard5: Story1 = ( args ) => ( diff --git a/src/components/bar-chart/bar-chart.tsx b/src/components/bar-chart/bar-chart.tsx index 0da1e99c..2f8010cc 100644 --- a/src/components/bar-chart/bar-chart.tsx +++ b/src/components/bar-chart/bar-chart.tsx @@ -101,8 +101,8 @@ const BarChart = ( { xAxisDataKey, yAxisDataKey, xAxisFontSize = 'sm', // sm, md, lg - xAxisFontColor = '#4B5563', - yAxisFontColor = '#4B5563', + xAxisFontColor = '#6B7280', + yAxisFontColor = '#6B7280', chartWidth = 350, chartHeight = 200, borderRadius = 8, diff --git a/src/components/breadcrumb/breadcrumb.tsx b/src/components/breadcrumb/breadcrumb.tsx index 176961e9..8b1b7e55 100644 --- a/src/components/breadcrumb/breadcrumb.tsx +++ b/src/components/breadcrumb/breadcrumb.tsx @@ -111,9 +111,13 @@ export const BreadcrumbSeparator = ( { type }: BreadcrumbSeparatorProps ) => { }; return ( - + ); }; BreadcrumbSeparator.displayName = 'Breadcrumb.Separator'; diff --git a/src/components/cards/plugin-blocks.stories.tsx b/src/components/cards/plugin-blocks.stories.tsx index 7015efbc..35eb5f68 100644 --- a/src/components/cards/plugin-blocks.stories.tsx +++ b/src/components/cards/plugin-blocks.stories.tsx @@ -91,6 +91,7 @@ const Template2 = ( args: Template2Props ) => { diff --git a/src/components/cards/widget-blocks.stories.tsx b/src/components/cards/widget-blocks.stories.tsx index 9f9ed100..4eeeb7da 100644 --- a/src/components/cards/widget-blocks.stories.tsx +++ b/src/components/cards/widget-blocks.stories.tsx @@ -255,6 +255,7 @@ const Template1 = ( args: Template1Props ) => { diff --git a/src/components/datepicker/datepicker-component.tsx b/src/components/datepicker/datepicker-component.tsx index 3656162f..a5c088ca 100644 --- a/src/components/datepicker/datepicker-component.tsx +++ b/src/components/datepicker/datepicker-component.tsx @@ -199,6 +199,7 @@ const DatePickerComponent = ( { variant="ghost" onClick={ handlePrevButtonClick } className="bg-background-primary border-none cursor-pointer" + aria-label="Previous Button" > @@ -226,6 +227,7 @@ const DatePickerComponent = ( { variant="ghost" onClick={ handleNextButtonClick } className="bg-background-primary border-none cursor-pointer" + aria-label="Next Button" > diff --git a/src/components/drawer/drawer.tsx b/src/components/drawer/drawer.tsx index 0a32bd99..533e3301 100644 --- a/src/components/drawer/drawer.tsx +++ b/src/components/drawer/drawer.tsx @@ -189,8 +189,10 @@ const Drawer = ( { 'fixed z-auto w-0 h-0 overflow-visible', className ) } - role="dialog" ref={ drawerContainerRef } + role="dialog" + aria-modal="true" + aria-label="drawer" > { children } diff --git a/src/components/dropdown-menu/dropdown-menu.stories.tsx b/src/components/dropdown-menu/dropdown-menu.stories.tsx index 21066dfc..b932ecf3 100644 --- a/src/components/dropdown-menu/dropdown-menu.stories.tsx +++ b/src/components/dropdown-menu/dropdown-menu.stories.tsx @@ -50,6 +50,7 @@ export const AvatarTrigger: Story = ( args ) => ( John + Open Menu @@ -67,6 +68,7 @@ export const IconTrigger: Story = ( args ) => ( + Open Menu diff --git a/src/components/dropdown-menu/dropdown-menu.tsx b/src/components/dropdown-menu/dropdown-menu.tsx index a8c9ad7f..6cdcf2f3 100644 --- a/src/components/dropdown-menu/dropdown-menu.tsx +++ b/src/components/dropdown-menu/dropdown-menu.tsx @@ -5,7 +5,7 @@ import React, { cloneElement, Fragment, isValidElement, - type ReactNode, + type ReactElement, } from 'react'; import { useFloating, @@ -39,8 +39,8 @@ export const DropdownMenu = ( { placement = 'bottom', offset: offsetValue = 10, boundary = 'clippingAncestors', - dropdownPortalRoot = null, - dropdownPortalId = '', + dropdownPortalRoot, + dropdownPortalId, children, className, }: DropdownMenuProps ) => { @@ -83,27 +83,23 @@ export const DropdownMenu = ( { return (
-
- { React.Children.map( children, ( child ) => { - if ( - ( - child as ReactNode & { - type: { displayName: string }; - } - )?.type?.displayName === 'DropdownMenu.Trigger' - ) { - return child; - } - return null; - } ) } -
+ { React.Children.map( children, ( child ) => { + if ( + React.isValidElement( child ) && + ( + child as ReactElement & { + type: { displayName: string }; + } + )?.type?.displayName === 'DropdownMenu.Trigger' + ) { + return cloneElement( child as ReactElement, { + ref: refs.setReference, + onClick: toggleMenu, + ...getReferenceProps(), + } ); + } + return null; + } ) } { isMounted && ( { if ( ( - child as ReactNode & { + child as ReactElement & { type?: { displayName: string }; } )?.type?.displayName === @@ -144,11 +140,27 @@ DropdownMenu.displayName = 'DropdownMenu'; export const DropdownMenuTrigger = React.forwardRef< HTMLDivElement, DropdownCommonProps ->( ( { children, className }, ref ) => ( -
- { children } -
-) ); +>( ( { children, className, ...props }, ref ) => { + if ( isValidElement( children ) ) { + return React.cloneElement( children as React.ReactElement, { + className, + ref, + ...props, + } ); + } + + return ( +
+ { children } +
+ ); +} ); DropdownMenuTrigger.displayName = 'DropdownMenu.Trigger'; diff --git a/src/components/editor-input/editor-input.stories.tsx b/src/components/editor-input/editor-input.stories.tsx index 4ebadae9..cb4c2191 100644 --- a/src/components/editor-input/editor-input.stories.tsx +++ b/src/components/editor-input/editor-input.stories.tsx @@ -5,6 +5,13 @@ const meta: Meta = { title: 'Atoms/EditorInput', component: EditorInput, tags: [ 'autodocs' ], + parameters: { + a11y: { + config: { + rules: [ { id: 'aria-input-field-name', enabled: false } ], + }, + }, + }, decorators: [ ( Story ) => (
= { title: 'Atoms/Input', @@ -21,60 +21,61 @@ const meta: Meta = { export default meta; -type Story = StoryObj; +const Template: StoryFn = ( args ) => { + return ( + <> + + + ); +}; // Basic Input -export const Basic: Story = { - args: { - type: 'text', - size: 'sm', - disabled: false, - error: false, - defaultValue: 'Basic Input', - }, +export const Basic = Template.bind( {} ); +Basic.args = { + type: 'text', + size: 'sm', + disabled: false, + error: false, + defaultValue: 'Basic Input', }; // Input with Error -export const ErrorState: Story = { - args: { - type: 'text', - size: 'sm', - disabled: false, - error: true, - defaultValue: 'Input with Error', - }, +export const ErrorState = Template.bind( {} ); +ErrorState.args = { + type: 'text', + size: 'sm', + disabled: false, + error: true, + defaultValue: 'Input with Error', }; -// Disabled Input -export const Disabled: Story = { - args: { - type: 'text', - size: 'sm', - disabled: true, - error: false, - defaultValue: 'Disabled Input', - }, +// // Disabled Input +export const Disabled = Template.bind( {} ); +Disabled.args = { + type: 'text', + size: 'sm', + disabled: true, + error: false, + defaultValue: 'Disabled Input', }; -// File Input -export const FileInput: Story = { - args: { - type: 'file', - size: 'md', - disabled: false, - error: false, - }, +// // File Input +export const FileInput = Template.bind( {} ); +FileInput.args = { + type: 'file', + size: 'md', + disabled: false, + error: false, }; -// Input with Prefix and Suffix -export const WithPrefixSuffix: Story = { - args: { - type: 'text', - size: 'md', - disabled: false, - error: false, - prefix: , - suffix: '#', - defaultValue: '', - }, +// // Input with Prefix and Suffix +export const WithPrefixSuffix = Template.bind( {} ); +WithPrefixSuffix.args = { + type: 'text', + size: 'md', + disabled: false, + error: false, + prefix: , + suffix: '#', + defaultValue: '', }; diff --git a/src/components/line-chart/line-chart.tsx b/src/components/line-chart/line-chart.tsx index 66936c9a..1000ff2e 100644 --- a/src/components/line-chart/line-chart.tsx +++ b/src/components/line-chart/line-chart.tsx @@ -86,8 +86,8 @@ const LineChart = ( { xAxisDataKey, yAxisDataKey, xAxisFontSize = 'sm', // sm, md, lg - xAxisFontColor = '#4B5563', - yAxisFontColor = '#4B5563', + xAxisFontColor = '#6B7280', + yAxisFontColor = '#6B7280', chartWidth = 350, chartHeight = 200, withDots = false, diff --git a/src/components/menu-item/menu-item.tsx b/src/components/menu-item/menu-item.tsx index c2db755e..f185a5a2 100644 --- a/src/components/menu-item/menu-item.tsx +++ b/src/components/menu-item/menu-item.tsx @@ -103,53 +103,56 @@ export const MenuList = ( { return (
-
{ - if ( event.key === 'Enter' || event.key === ' ' ) { - handleToggle(); - } - } } - onMouseEnter={ () => showArrowOnHover && setIsHovered( true ) } - onMouseLeave={ () => showArrowOnHover && setIsHovered( false ) } - className={ cn( - baseClasses, - sizeClasses, - heading ? 'p-1' : 'p-0', - className - ) } - aria-expanded={ isOpen } - > - { heading } + { !! heading && ( +
{ + if ( event.key === 'Enter' || event.key === ' ' ) { + handleToggle(); + } + } } + onMouseEnter={ () => showArrowOnHover && setIsHovered( true ) } + onMouseLeave={ () => showArrowOnHover && setIsHovered( false ) } + className={ cn( + baseClasses, + sizeClasses, + heading ? 'p-1' : 'p-0', + className + ) } + aria-expanded={ isOpen } + > + { heading } - { arrow && ( - - - - - - ) } -
+ + + + + ) } +
+ ) } { isOpen && ( + ); }; diff --git a/src/components/pagination/pagination.tsx b/src/components/pagination/pagination.tsx index fa10437d..ef8c61b2 100644 --- a/src/components/pagination/pagination.tsx +++ b/src/components/pagination/pagination.tsx @@ -162,9 +162,11 @@ export const PaginationButton = ( { export const PaginationPrevious = ( props: PaginationButtonProps ) => { const { size, disabled } = usePageContext(); return ( -
  • +
  • span]:flex [&>span]:items-center' ) } { ...props } > @@ -178,9 +180,11 @@ PaginationPrevious.displayName = 'Pagination.Previous'; export const PaginationNext = ( props: PaginationButtonProps ) => { const { size, disabled } = usePageContext(); return ( -
  • +
  • span]:flex [&>span]:items-center' ) } { ...props } > diff --git a/src/components/pie-chart/pie-chart.stories.tsx b/src/components/pie-chart/pie-chart.stories.tsx index 01ef34fd..a69481ff 100644 --- a/src/components/pie-chart/pie-chart.stories.tsx +++ b/src/components/pie-chart/pie-chart.stories.tsx @@ -69,6 +69,7 @@ export const PieChartCard1: Story1 = ( args ) => ( @@ -108,6 +109,7 @@ export const PieChartCard2: Story1 = ( args ) => ( diff --git a/src/components/pie-chart/pie-chart.tsx b/src/components/pie-chart/pie-chart.tsx index a1722d47..32cba859 100644 --- a/src/components/pie-chart/pie-chart.tsx +++ b/src/components/pie-chart/pie-chart.tsx @@ -66,7 +66,7 @@ const PieChart = ( { tooltipLabelKey, label = false, labelName = '', - labelNameColor = '#9CA3AF', + labelNameColor = '#6B7280', labelValue, showLegend = false, chartWidth = 300, diff --git a/src/components/progress-bar/progress-bar.tsx b/src/components/progress-bar/progress-bar.tsx index 892d42a2..6870cbd0 100644 --- a/src/components/progress-bar/progress-bar.tsx +++ b/src/components/progress-bar/progress-bar.tsx @@ -37,6 +37,7 @@ export const ProgressBar = ( { aria-valuenow={ percent } aria-valuemin={ 0 } aria-valuemax={ 100 } + aria-label="Progress Bar" >
    { - if ( ! multiSelection ) { - // Toggle the switch on or off - onChange( value ); - } else { - // In multi-selection, toggle the current state - onChange( value, ! checkedValue ); - } - } } - checked={ checkedValue } - { ...props } - /> + <> + { + if ( ! multiSelection ) { + // Toggle the switch on or off + onChange( value ); + } else { + // In multi-selection, toggle the current state + onChange( value, ! checkedValue ); + } + } } + checked={ checkedValue } + { ...props } + aria-label={ label?.heading ?? 'Switch' } + /> + ) : ( ; export type SelectOnChange = ( @@ -82,7 +82,7 @@ export interface SelectPortalProps { id?: string; } -export interface SelectButtonProps { +export interface SelectButtonProps extends AriaAttributes { /** Expects the `Select.Button` children of the Select Component. */ children?: MultiTypeChildren; /** Option Icon to show at the right of the option trigger/button. By default it will show chevron down icon. */ diff --git a/src/components/select/select.tsx b/src/components/select/select.tsx index 0801e6f8..ca8637d3 100644 --- a/src/components/select/select.tsx +++ b/src/components/select/select.tsx @@ -59,6 +59,7 @@ export function SelectButton( { displayBy = 'name', // Used to display the value. Default is 'name'. label, // Label for the select component. className, + ...props }: SelectButtonProps ) { const { sizeValue, @@ -213,7 +214,7 @@ export function SelectButton( { id={ selectId } ref={ refs.setReference } className={ cn( - 'flex items-center justify-between w-full box-border transition-colors duration-150 bg-white', + 'flex items-center justify-between w-full box-border transition-[outline,background-color,color,box-shadow] duration-200 bg-white', 'outline outline-1 outline-field-border border-none cursor-pointer', ! isOpen && 'focus:ring-2 focus:ring-offset-4 focus:outline-focus-border focus:ring-focus [&:hover:not(:focus):not(:disabled)]:outline-border-strong', @@ -223,9 +224,9 @@ export function SelectButton( { disabledClassNames.selectButton, className ) } - aria-labelledby="select-label" tabIndex={ 0 } disabled={ disabled } + { ...props } { ...getReferenceProps() } > { /* Input and selected item container */ } @@ -270,7 +271,7 @@ export function SelectButton( { export function SelectOptions( { children, - searchBy = 'id', // Used to identify searched value using the key. Default is 'id'. + searchBy = 'name', // Used to identify searched value using the key. Default is 'id'. searchPlaceholder = 'Search...', // Placeholder text for search box. className, // Additional class name for the dropdown. }: SelectOptionsProps ) { @@ -381,7 +382,11 @@ export function SelectOptions( { } } - listContentRef.current.push( child.props.value ); + listContentRef.current.push( + typeof child.props.value === 'object' + ? child.props.value[ searchBy || by ] + : child.props.value + ); } } ); }, [ searchKeyword ] ); diff --git a/src/components/switch/switch.stories.tsx b/src/components/switch/switch.stories.tsx index 639f86dd..5b350c56 100644 --- a/src/components/switch/switch.stories.tsx +++ b/src/components/switch/switch.stories.tsx @@ -33,7 +33,16 @@ const Template: StoryFn = ( { defaultValue, size, ...args } ) => { }; return ( - + <> + + ); }; diff --git a/src/components/textarea/textarea.stories.tsx b/src/components/textarea/textarea.stories.tsx index b55bc16d..72a344f2 100644 --- a/src/components/textarea/textarea.stories.tsx +++ b/src/components/textarea/textarea.stories.tsx @@ -1,4 +1,4 @@ -import { Meta, StoryObj } from '@storybook/react'; +import { Meta, StoryFn } from '@storybook/react'; import TextArea, { TextAreaProps } from './textarea'; const meta: Meta = { @@ -17,44 +17,46 @@ const meta: Meta = { export default meta; -type Story = StoryObj; +const Template: StoryFn = ( args ) => { + return ( + <> +