From 12d158fa4eea2a21af15c801796a9428bd42d73b Mon Sep 17 00:00:00 2001 From: Johan Girod Date: Tue, 13 Dec 2022 15:33:22 +0100 Subject: [PATCH] =?UTF-8?q?Am=C3=A9liore=20la=20gestion=20des=20icons=20et?= =?UTF-8?q?=20l=C3=A9ger=20refacto=20du=20composant=20Message?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- site/.storybook/main.cjs | 6 +- site/.storybook/preview.jsx | 3 + site/package.json | 1 + site/source/design-system/card/Article.tsx | 4 +- .../design-system/field/SearchField.tsx | 2 +- .../design-system/field/Select/index.tsx | 4 +- .../source/design-system/icons/SearchIcon.tsx | 24 -- .../design-system/icons/carret-down.tsx | 16 -- .../design-system/icons/index.stories.tsx | 18 ++ site/source/design-system/icons/index.tsx | 145 ++++++++++++- site/source/design-system/icons/shared.tsx | 7 - .../source/design-system/message/baseIcon.svg | 4 - .../design-system/message/errorIcon.svg | 5 - site/source/design-system/message/index.tsx | 63 +++--- .../source/design-system/message/infoIcon.svg | 5 - .../design-system/message/successIcon.svg | 4 - yarn.lock | 205 ++++++++++++++++++ 17 files changed, 412 insertions(+), 104 deletions(-) delete mode 100644 site/source/design-system/icons/SearchIcon.tsx delete mode 100644 site/source/design-system/icons/carret-down.tsx create mode 100644 site/source/design-system/icons/index.stories.tsx delete mode 100644 site/source/design-system/icons/shared.tsx delete mode 100644 site/source/design-system/message/baseIcon.svg delete mode 100644 site/source/design-system/message/errorIcon.svg delete mode 100644 site/source/design-system/message/infoIcon.svg delete mode 100644 site/source/design-system/message/successIcon.svg diff --git a/site/.storybook/main.cjs b/site/.storybook/main.cjs index 320ec0aaf..dc7cdff97 100644 --- a/site/.storybook/main.cjs +++ b/site/.storybook/main.cjs @@ -10,7 +10,11 @@ module.exports = { '../source/**/*.stories.mdx', '../source/**/*.stories.@(js|jsx|ts|tsx)', ], - addons: ['@storybook/addon-links', '@storybook/addon-essentials'], + addons: [ + '@storybook/addon-links', + '@storybook/addon-essentials', + '@storybook/addon-a11y', + ], framework: '@storybook/react', core: { builder: '@storybook/builder-vite', diff --git a/site/.storybook/preview.jsx b/site/.storybook/preview.jsx index b94b3987c..d34d6b488 100644 --- a/site/.storybook/preview.jsx +++ b/site/.storybook/preview.jsx @@ -1,13 +1,16 @@ import React from 'react' +import { DarkModeProvider } from '@/contexts/DarkModeContext' import { GlobalStyle } from '@/design-system/index' import DesignSystemThemeProvider from '@/design-system/root' export const decorators = [ (Story) => ( + + ), ] diff --git a/site/package.json b/site/package.json index 09f434b4d..fedd0331b 100644 --- a/site/package.json +++ b/site/package.json @@ -113,6 +113,7 @@ "@rollup/plugin-replace": "^4.0.0", "@rollup/plugin-yaml": "^3.1.0", "@rushstack/package-deps-hash": "^3.2.64", + "@storybook/addon-a11y": "^6.5.14", "@storybook/addon-actions": "^6.5.13", "@storybook/addon-essentials": "^6.5.13", "@storybook/addon-interactions": "^6.5.13", diff --git a/site/source/design-system/card/Article.tsx b/site/source/design-system/card/Article.tsx index 60b68914c..c89458328 100644 --- a/site/source/design-system/card/Article.tsx +++ b/site/source/design-system/card/Article.tsx @@ -3,7 +3,7 @@ import React, { useRef } from 'react' import { Link } from 'react-router-dom' import styled from 'styled-components' -import { Chevron } from '@/design-system/icons' +import { ChevronIcon } from '@/design-system/icons' import { H4 } from '@/design-system/typography/heading' import { NewWindowLinkIcon, @@ -86,7 +86,7 @@ const StyledHeader = styled(H4)` background-color: inherit; ` -const StyledChevron = styled(Chevron)` +const StyledChevron = styled(ChevronIcon)` margin-left: ${({ theme }) => theme.spacings.xxs}; ` diff --git a/site/source/design-system/field/SearchField.tsx b/site/source/design-system/field/SearchField.tsx index f000026a5..073047731 100644 --- a/site/source/design-system/field/SearchField.tsx +++ b/site/source/design-system/field/SearchField.tsx @@ -8,8 +8,8 @@ import { AriaSearchFieldProps } from '@react-types/searchfield' import { useRef } from 'react' import styled, { css } from 'styled-components' +import { SearchIcon } from '@/design-system/icons' import { Loader } from '@/design-system/icons/Loader' -import { SearchIcon } from '@/design-system/icons/SearchIcon' import { StyledContainer, diff --git a/site/source/design-system/field/Select/index.tsx b/site/source/design-system/field/Select/index.tsx index 4d306e045..fe19fa6bf 100644 --- a/site/source/design-system/field/Select/index.tsx +++ b/site/source/design-system/field/Select/index.tsx @@ -8,7 +8,7 @@ import { useEffect, useRef } from 'react' import { useTranslation } from 'react-i18next' import styled, { css } from 'styled-components' -import { CarretDown } from '@/design-system/icons/carret-down' +import { CarretDownIcon } from '@/design-system/icons' import { omit } from '@/utils' import { ListBox } from './ListBox' @@ -79,7 +79,7 @@ const Value = styled.span` margin-top: 1rem; ` -const StyledIcon = styled(CarretDown)` +const StyledIcon = styled(CarretDownIcon)` margin: 0 4px; ` diff --git a/site/source/design-system/icons/SearchIcon.tsx b/site/source/design-system/icons/SearchIcon.tsx deleted file mode 100644 index 6b852b117..000000000 --- a/site/source/design-system/icons/SearchIcon.tsx +++ /dev/null @@ -1,24 +0,0 @@ -export function SearchIcon({ ...props }) { - return ( - - - - - ) -} diff --git a/site/source/design-system/icons/carret-down.tsx b/site/source/design-system/icons/carret-down.tsx deleted file mode 100644 index 838eb8280..000000000 --- a/site/source/design-system/icons/carret-down.tsx +++ /dev/null @@ -1,16 +0,0 @@ -import { HTMLAttributes } from 'react' - -export const CarretDown = (props: HTMLAttributes) => ( - - - -) diff --git a/site/source/design-system/icons/index.stories.tsx b/site/source/design-system/icons/index.stories.tsx new file mode 100644 index 000000000..a27cd0970 --- /dev/null +++ b/site/source/design-system/icons/index.stories.tsx @@ -0,0 +1,18 @@ +import { ComponentMeta } from '@storybook/react' + +import { SvgIcon } from '.' + +// More on default export: https://storybook.js.org/docs/react/writing-stories/introduction#default-export +export default { + component: SvgIcon, +} as ComponentMeta + +export { + CarretDownIcon, + ChevronIcon, + ErrorIcon, + InfoIcon, + ReturnIcon, + SearchIcon, + SuccessIcon, +} from '@/design-system/icons' diff --git a/site/source/design-system/icons/index.tsx b/site/source/design-system/icons/index.tsx index ee0da31f4..9930b2494 100644 --- a/site/source/design-system/icons/index.tsx +++ b/site/source/design-system/icons/index.tsx @@ -1,18 +1,153 @@ import { HTMLAttributes } from 'react' +import styled from 'styled-components' -import { StyledSVG } from './shared' +export const SvgIcon = styled.svg` + /* width: ${({ theme }) => theme.spacings.lg}; + height: ${({ theme }) => theme.spacings.lg}; */ + fill: ${({ theme }) => + theme.darkMode + ? theme.colors.extended.grey[100] + : theme.colors.bases.primary[800]}; +` -export const Chevron = (props: HTMLAttributes) => ( - ) => ( + - + +) + +export const InfoIcon = (props: HTMLAttributes) => ( + + + + + +) + +export const SuccessIcon = (props: HTMLAttributes) => ( + + + + +) + +export const CarretDownIcon = (props: HTMLAttributes) => ( + + + +) + +export function SearchIcon({ ...props }) { + return ( + + + + + ) +} + +export const ErrorIcon = (props: HTMLAttributes) => ( + + + + + +) + +export const ReturnIcon = (props: HTMLAttributes) => ( + + + + ) diff --git a/site/source/design-system/icons/shared.tsx b/site/source/design-system/icons/shared.tsx deleted file mode 100644 index f506eede5..000000000 --- a/site/source/design-system/icons/shared.tsx +++ /dev/null @@ -1,7 +0,0 @@ -import styled from 'styled-components' - -export const StyledSVG = styled.svg` - width: ${({ theme }) => theme.spacings.lg}; - height: ${({ theme }) => theme.spacings.lg}; - fill: ${({ theme }) => theme.colors.bases.primary[800]}; -` diff --git a/site/source/design-system/message/baseIcon.svg b/site/source/design-system/message/baseIcon.svg deleted file mode 100644 index 65c21fb50..000000000 --- a/site/source/design-system/message/baseIcon.svg +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/site/source/design-system/message/errorIcon.svg b/site/source/design-system/message/errorIcon.svg deleted file mode 100644 index 1307cb2f7..000000000 --- a/site/source/design-system/message/errorIcon.svg +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/site/source/design-system/message/index.tsx b/site/source/design-system/message/index.tsx index 7a5f9ce12..d135789c8 100644 --- a/site/source/design-system/message/index.tsx +++ b/site/source/design-system/message/index.tsx @@ -3,11 +3,8 @@ import styled, { ThemeProvider, css } from 'styled-components' import { Palette, SmallPalette } from '@/types/styled' +import { ErrorIcon, InfoIcon, ReturnIcon, SuccessIcon } from '../icons' import { Body } from '../typography/paragraphs' -import baseIcon from './baseIcon.svg' -import errorIcon from './errorIcon.svg' -import infoIcon from './infoIcon.svg' -import successIcon from './successIcon.svg' export type MessageType = 'primary' | 'secondary' | 'info' | 'error' | 'success' type MessageProps = { @@ -42,21 +39,44 @@ export function Message({ light={light} aria-atomic > - {icon && - (type === 'success' ? ( - - ) : type === 'error' ? ( - - ) : type === 'info' ? ( - - ) : ( - - ))} + {icon && ( + + {type === 'success' ? ( + + ) : type === 'error' ? ( + + ) : type === 'info' ? ( + + ) : ( + + )} + + )} {children} ) } +const StyledIconWrapper = styled.div<{ + type: MessageProps['type'] +}>` + display: flex; + position: relative; + top: ${({ theme }) => theme.spacings.xxs}; + width: ${({ theme }) => theme.spacings.xl}; + svg { + fill: ${({ theme, type }) => + type === 'success' + ? theme.colors.extended.success[600] + : type === 'error' + ? theme.colors.extended.error[600] + : type === 'info' + ? theme.colors.extended.info[600] + : type === 'secondary' + ? theme.colors.bases.secondary[700] + : theme.colors.bases.primary[700]}; + } +` type StyledMessageProps = Pick & { messageType: NonNullable @@ -73,7 +93,7 @@ const StyledMessage = styled.div` : theme.colors.extended[messageType] return css` - padding: ${theme.spacings.xs} ${theme.spacings.lg}; + padding: 0px ${theme.spacings.lg}; background-color: ${light ? 'rgba(255,255,255,0.75)' : colorSpace[100]}; border: 2px solid ${colorSpace[border ? 500 : 100]}; border-radius: ${theme.box.borderRadius}; @@ -90,19 +110,6 @@ const StyledMessage = styled.div` }} ` -const StyledIcon = styled.img` - padding-right: ${({ theme }) => theme.spacings.md}; - ${({ theme, title }) => - title !== 'paragraph' - ? css` - margin-top: calc(${theme.spacings.md} + ${theme.spacings.xxs} / 2); - height: calc(${theme.spacings.md} + ${theme.spacings.xxs}); - ` - : css` - margin-top: calc(${theme.spacings.lg}); - `} -` - const Wrapper = styled.div` flex: 1; ` diff --git a/site/source/design-system/message/infoIcon.svg b/site/source/design-system/message/infoIcon.svg deleted file mode 100644 index 84707fbca..000000000 --- a/site/source/design-system/message/infoIcon.svg +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/site/source/design-system/message/successIcon.svg b/site/source/design-system/message/successIcon.svg deleted file mode 100644 index 3174d25cb..000000000 --- a/site/source/design-system/message/successIcon.svg +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/yarn.lock b/yarn.lock index d5579d74b..c079fbcaf 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6374,6 +6374,38 @@ __metadata: languageName: node linkType: hard +"@storybook/addon-a11y@npm:^6.5.14": + version: 6.5.14 + resolution: "@storybook/addon-a11y@npm:6.5.14" + dependencies: + "@storybook/addons": 6.5.14 + "@storybook/api": 6.5.14 + "@storybook/channels": 6.5.14 + "@storybook/client-logger": 6.5.14 + "@storybook/components": 6.5.14 + "@storybook/core-events": 6.5.14 + "@storybook/csf": 0.0.2--canary.4566f4d.1 + "@storybook/theming": 6.5.14 + axe-core: ^4.2.0 + core-js: ^3.8.2 + global: ^4.4.0 + lodash: ^4.17.21 + react-sizeme: ^3.0.1 + regenerator-runtime: ^0.13.7 + ts-dedent: ^2.0.0 + util-deprecate: ^1.0.2 + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + react: + optional: true + react-dom: + optional: true + checksum: 2c35e693641b38e90989a656b8766cd2a86482e24164e62afd2cd1899d454b1a0c0b8f23df328c5350884d22615e9779dd617c71c642f4eada1df6345feba8e3 + languageName: node + linkType: hard + "@storybook/addon-actions@npm:6.5.13, @storybook/addon-actions@npm:^6.5.13": version: 6.5.13 resolution: "@storybook/addon-actions@npm:6.5.13" @@ -6754,6 +6786,28 @@ __metadata: languageName: node linkType: hard +"@storybook/addons@npm:6.5.14": + version: 6.5.14 + resolution: "@storybook/addons@npm:6.5.14" + dependencies: + "@storybook/api": 6.5.14 + "@storybook/channels": 6.5.14 + "@storybook/client-logger": 6.5.14 + "@storybook/core-events": 6.5.14 + "@storybook/csf": 0.0.2--canary.4566f4d.1 + "@storybook/router": 6.5.14 + "@storybook/theming": 6.5.14 + "@types/webpack-env": ^1.16.0 + core-js: ^3.8.2 + global: ^4.4.0 + regenerator-runtime: ^0.13.7 + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 + checksum: 99d06641bab06a3cc2821f309589d062c0efd8707b451ae24017449034da408bfddce3beda1ccdedadf59669d7d13348bee127f6fd4fc057200c84ff43288312 + languageName: node + linkType: hard + "@storybook/api@npm:6.5.13": version: 6.5.13 resolution: "@storybook/api@npm:6.5.13" @@ -6782,6 +6836,34 @@ __metadata: languageName: node linkType: hard +"@storybook/api@npm:6.5.14": + version: 6.5.14 + resolution: "@storybook/api@npm:6.5.14" + dependencies: + "@storybook/channels": 6.5.14 + "@storybook/client-logger": 6.5.14 + "@storybook/core-events": 6.5.14 + "@storybook/csf": 0.0.2--canary.4566f4d.1 + "@storybook/router": 6.5.14 + "@storybook/semver": ^7.3.2 + "@storybook/theming": 6.5.14 + core-js: ^3.8.2 + fast-deep-equal: ^3.1.3 + global: ^4.4.0 + lodash: ^4.17.21 + memoizerific: ^1.11.3 + regenerator-runtime: ^0.13.7 + store2: ^2.12.0 + telejson: ^6.0.8 + ts-dedent: ^2.0.0 + util-deprecate: ^1.0.2 + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 + checksum: 0d421c3211a49cb8910dea647b898edd60af79755108ed321626a8fc134713dd1b018c830f15c2fc6c863f0528b571c2e2b34bb79df3c2f43497f5ab36fa9bbf + languageName: node + linkType: hard + "@storybook/builder-vite@npm:^0.2.5": version: 0.2.5 resolution: "@storybook/builder-vite@npm:0.2.5" @@ -6920,6 +7002,17 @@ __metadata: languageName: node linkType: hard +"@storybook/channels@npm:6.5.14": + version: 6.5.14 + resolution: "@storybook/channels@npm:6.5.14" + dependencies: + core-js: ^3.8.2 + ts-dedent: ^2.0.0 + util-deprecate: ^1.0.2 + checksum: ff1ee3fea3c7b8591280ba7eabe13c999fc3e12a483ff2c0467cc9cca027662cbbc4676438da567865919157521df8a9a50bd20b35daed6896f39a3a7251a1e5 + languageName: node + linkType: hard + "@storybook/client-api@npm:6.5.13": version: 6.5.13 resolution: "@storybook/client-api@npm:6.5.13" @@ -6961,6 +7054,16 @@ __metadata: languageName: node linkType: hard +"@storybook/client-logger@npm:6.5.14": + version: 6.5.14 + resolution: "@storybook/client-logger@npm:6.5.14" + dependencies: + core-js: ^3.8.2 + global: ^4.4.0 + checksum: 29cc0b58db7a8dc90484320c86b386975580c0e534791b29f6a8c00ce5b156f2bff9513994202f9f9ef99787e8d793988048ae88d2780ba151c6782f3bbf97ff + languageName: node + linkType: hard + "@storybook/components@npm:6.5.13": version: 6.5.13 resolution: "@storybook/components@npm:6.5.13" @@ -6980,6 +7083,25 @@ __metadata: languageName: node linkType: hard +"@storybook/components@npm:6.5.14": + version: 6.5.14 + resolution: "@storybook/components@npm:6.5.14" + dependencies: + "@storybook/client-logger": 6.5.14 + "@storybook/csf": 0.0.2--canary.4566f4d.1 + "@storybook/theming": 6.5.14 + core-js: ^3.8.2 + memoizerific: ^1.11.3 + qs: ^6.10.0 + regenerator-runtime: ^0.13.7 + util-deprecate: ^1.0.2 + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 + checksum: 73d0ff418f2c5b1fc9f421f089ebee2342ef0684905e4959397a8bc6f67f32ff97f4ec3587847980cb7e4fc8e40278d8ecea11a8d267fea8d94ad3d8265a0c21 + languageName: node + linkType: hard + "@storybook/core-client@npm:6.5.13": version: 6.5.13 resolution: "@storybook/core-client@npm:6.5.13" @@ -7088,6 +7210,15 @@ __metadata: languageName: node linkType: hard +"@storybook/core-events@npm:6.5.14": + version: 6.5.14 + resolution: "@storybook/core-events@npm:6.5.14" + dependencies: + core-js: ^3.8.2 + checksum: 6787925c520a6ee5aee748d4b7e2ec599c5ee16a87dbb62a94eeec88003ef42683d8e7ac8b98b49ea2a33205e0648805410c4759d16a997ba2f4215f6c8784ce + languageName: node + linkType: hard + "@storybook/core-server@npm:6.5.13": version: 6.5.13 resolution: "@storybook/core-server@npm:6.5.13" @@ -7472,6 +7603,22 @@ __metadata: languageName: node linkType: hard +"@storybook/router@npm:6.5.14": + version: 6.5.14 + resolution: "@storybook/router@npm:6.5.14" + dependencies: + "@storybook/client-logger": 6.5.14 + core-js: ^3.8.2 + memoizerific: ^1.11.3 + qs: ^6.10.0 + regenerator-runtime: ^0.13.7 + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 + checksum: ec2550568c02f45de5307e77928eaeb39413049944e994adbc397d9c7e083ac7e110886e40517ddae40e3879c172f458167682f1d73d0bb150bc93ab9dd61514 + languageName: node + linkType: hard + "@storybook/semver@npm:^7.3.2": version: 7.3.2 resolution: "@storybook/semver@npm:7.3.2" @@ -7579,6 +7726,21 @@ __metadata: languageName: node linkType: hard +"@storybook/theming@npm:6.5.14": + version: 6.5.14 + resolution: "@storybook/theming@npm:6.5.14" + dependencies: + "@storybook/client-logger": 6.5.14 + core-js: ^3.8.2 + memoizerific: ^1.11.3 + regenerator-runtime: ^0.13.7 + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 + checksum: d139325dd51e8dfa58458a5c033104123b019fc02ddc899898e02de2b5d1358fd318b5def7ef82e6138420f9198e90d50b0fdfbea926987ac6852fc3a2e77c6d + languageName: node + linkType: hard + "@storybook/ui@npm:6.5.13": version: 6.5.13 resolution: "@storybook/ui@npm:6.5.13" @@ -10296,6 +10458,13 @@ __metadata: languageName: node linkType: hard +"axe-core@npm:^4.2.0": + version: 4.6.0 + resolution: "axe-core@npm:4.6.0" + checksum: ed112f76bbb2e2ab52dda623fc4baf882b2d00045a55b2cc15358e891f7f164d674be1a2fbcfd49e11d064b146c387c5c9c3c29d7d59c9de6c22c65b86eb68ac + languageName: node + linkType: hard + "axe-core@npm:^4.4.3, axe-core@npm:^4.5.2": version: 4.5.2 resolution: "axe-core@npm:4.5.2" @@ -10519,6 +10688,13 @@ __metadata: languageName: node linkType: hard +"batch-processor@npm:1.0.0": + version: 1.0.0 + resolution: "batch-processor@npm:1.0.0" + checksum: 5519b024f6cd0e95a543bb3edf0ae19e5badae0c32b30b41839b4469bbb1f91e14fc04bff3759cd9c2621aa9e16def48c938783e9027e7ec977fba62d537a468 + languageName: node + linkType: hard + "bcrypt-pbkdf@npm:^1.0.0": version: 1.0.2 resolution: "bcrypt-pbkdf@npm:1.0.2" @@ -13975,6 +14151,15 @@ __metadata: languageName: node linkType: hard +"element-resize-detector@npm:^1.2.2": + version: 1.2.4 + resolution: "element-resize-detector@npm:1.2.4" + dependencies: + batch-processor: 1.0.0 + checksum: 81c47b7e229c303889d3a9d78ec3f3232e88a6682f1e2424fb0632d9b4f503b2ca011e6954321060604da07749a5a972b6a175fdf6c6806093a3b80a304cde7b + languageName: node + linkType: hard + "elliptic@npm:^6.5.3": version: 6.5.4 resolution: "elliptic@npm:6.5.4" @@ -24413,6 +24598,18 @@ __metadata: languageName: node linkType: hard +"react-sizeme@npm:^3.0.1": + version: 3.0.2 + resolution: "react-sizeme@npm:3.0.2" + dependencies: + element-resize-detector: ^1.2.2 + invariant: ^2.2.4 + shallowequal: ^1.1.0 + throttle-debounce: ^3.0.1 + checksum: 97cb852c24bbd50acb310da89df564e0d069415f6635676dae3d3bdc583ece88090c0f2ee88a6b0dc36d2793af4a11e83bf6bbb41b86225dd0cf338e8f7e8552 + languageName: node + linkType: hard + "react-smooth@npm:^2.0.1": version: 2.0.1 resolution: "react-smooth@npm:2.0.1" @@ -25956,6 +26153,7 @@ __metadata: "@sentry/integrations": ^7.22.0 "@sentry/react": ^7.22.0 "@sentry/tracing": ^7.22.0 + "@storybook/addon-a11y": ^6.5.14 "@storybook/addon-actions": ^6.5.13 "@storybook/addon-essentials": ^6.5.13 "@storybook/addon-interactions": ^6.5.13 @@ -27375,6 +27573,13 @@ __metadata: languageName: node linkType: hard +"throttle-debounce@npm:^3.0.1": + version: 3.0.1 + resolution: "throttle-debounce@npm:3.0.1" + checksum: e34ef638e8df3a9154249101b68afcbf2652a139c803415ef8a2f6a8bc577bcd4d79e4bb914ad3cd206523ac78b9fb7e80885bfa049f64fbb1927f99d98b5736 + languageName: node + linkType: hard + "throttleit@npm:^1.0.0": version: 1.0.0 resolution: "throttleit@npm:1.0.0"