@redsift/design-system 7.4.0-alpha.3 → 7.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.d.ts +1 -1
- package/index.js +7 -3
- package/index.js.map +1 -1
- package/package.json +3 -3
package/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/types/fonts.ts","../src/types/colors.ts","../src/types/styles.ts","../src/utils/isComponent.ts","../src/utils/filterComponents.ts","../src/utils/partitionComponents.ts","../src/utils/redsift-design-tokens.ts","../src/utils/warnIfNoAccessibleLabelFound.ts","../src/hooks/useWindowSize.ts","../src/components/alert/types.ts","../src/components/alert/intl/index.ts","../src/components/icon-button/types.ts","../src/components/icon/types.ts","../src/components/shared/styles.ts","../src/components/icon/styles.ts","../src/components/icon/Icon.tsx","../src/components/button/types.ts","../src/components/button/styles.ts","../src/components/spinner/intl/index.ts","../src/components/spinner/types.ts","../src/components/spinner/styles.ts","../src/components/spinner/Spinner.tsx","../src/components/button/Button.tsx","../src/components/icon-button/styles.ts","../src/components/icon-button/IconButton.tsx","../src/components/alert/styles.ts","../src/components/heading/types.ts","../src/components/heading/styles.ts","../src/components/heading/Heading.tsx","../src/components/flexbox/styles.ts","../src/components/flexbox/Flexbox.tsx","../src/components/alert/Alert.tsx","../src/components/app-bar/intl/index.ts","../src/components/app-container/context.ts","../src/hooks/useIsLoaded.ts","../src/components/app-bar/styles.ts","../src/components/app-bar/AppBar.tsx","../src/components/app-container/styles.ts","../src/components/app-container/AppContainer.tsx","../src/components/app-content/styles.ts","../src/components/app-content/AppContent.tsx","../src/components/app-side-panel/styles.ts","../src/components/app-side-panel/AppSidePanel.tsx","../src/components/side-navigation-menu/types.ts","../src/components/side-navigation-menu-bar/context.ts","../src/components/side-navigation-menu/context.ts","../src/components/side-navigation-menu-item/styles.ts","../src/components/badge/types.ts","../src/components/badge/styles.ts","../src/components/badge/Badge.tsx","../src/components/side-navigation-menu-item/SideNavigationMenuItem.tsx","../src/components/side-navigation-menu/styles.ts","../src/components/side-navigation-menu/reducer.ts","../src/components/side-navigation-menu/SideNavigationMenu.tsx","../src/components/side-navigation-menu-bar/styles.ts","../src/hooks/useBoundingRect.ts","../src/components/side-navigation-menu-bar/SideNavigationMenuBar.tsx","../src/components/side-navigation-menu-bar/useSideNavigationMenuBar.tsx","../src/components/app-side-panel/useAppSidePanel.tsx","../src/components/breadcrumb-item/styles.ts","../src/components/breadcrumb-item/BreadcrumbItem.tsx","../src/components/breadcrumbs/styles.ts","../src/components/breadcrumbs/Breadcrumbs.tsx","../src/components/button-link/ButtonLink.tsx","../src/components/card/intl/index.ts","../src/components/card/styles.ts","../src/components/card-header/styles.ts","../src/components/card-header/CardHeader.tsx","../src/components/card-body/styles.ts","../src/components/card-body/CardBody.tsx","../src/components/card-actions/styles.ts","../src/components/card-actions/CardActions.tsx","../src/components/card/Card.tsx","../src/components/checkbox-group/types.ts","../src/components/checkbox-group/context.ts","../src/components/checkbox-group/styles.ts","../src/components/checkbox-group/CheckboxGroup.tsx","../src/components/checkbox/styles.ts","../src/components/checkbox/Checkbox.tsx","../src/components/conditional-wrapper/ConditionalWrapper.tsx","../src/components/detailed-card/intl/index.ts","../src/components/shield/types.ts","../src/components/shield/styles.ts","../src/components/shield/Shield.tsx","../src/components/detailed-card-section/intl/index.ts","../src/components/detailed-card-collapsible-section-items/styles.ts","../src/components/detailed-card-collapsible-section-items/DetailedCardCollapsibleSectionItems.tsx","../src/components/detailed-card-section/styles.ts","../src/components/detailed-card-section/DetailedCardSection.tsx","../src/components/detailed-card/styles.ts","../src/components/detailed-card-header/styles.ts","../src/components/detailed-card-header/DetailedCardHeader.tsx","../src/components/pill/styles.ts","../src/components/pill/Pill.tsx","../src/components/detailed-card-section-item/styles.ts","../src/components/detailed-card-section-item/DetailedCardSectionItem.tsx","../src/components/detailed-card/DetailedCard.tsx","../src/components/grid/styles.ts","../src/components/grid-item/styles.ts","../src/components/grid-item/GridItem.tsx","../src/components/grid/Grid.tsx","../src/components/link/styles.ts","../src/components/link/Link.tsx","../src/components/link-button/LinkButton.tsx","../src/components/text/types.ts","../src/components/text/styles.ts","../src/components/number/styles.ts","../src/components/number/Number.tsx","../src/components/radio-group/types.ts","../src/components/radio-group/context.ts","../src/components/radio-group/styles.ts","../src/components/radio-group/RadioGroup.tsx","../src/components/radio/styles.ts","../src/components/radio/Radio.tsx","../src/components/text/Text.tsx"],"sourcesContent":["import { ValueOf } from './helpers';\n\n/**\n * Font.\n */\nexport const FontFamily = {\n raleway: 'raleway',\n 'source-code-pro': 'source-code-pro',\n electrolize: 'electrolize',\n} as const;\nexport type FontFamily = ValueOf<typeof FontFamily>;\n","import { ValueOf } from './helpers';\n\n/**\n * Color palette.\n */\nexport const ColorPalette = {\n default: 'default',\n success: 'success',\n error: 'error',\n warning: 'warning',\n info: 'info',\n question: 'question',\n 'no-data': 'no-data',\n} as const;\nexport type ColorPalette = ValueOf<typeof ColorPalette>;\n\nexport const ProductColorPalette = {\n website: 'website',\n ondmarc: 'ondmarc',\n oninbox: 'oninbox',\n ondomain: 'ondomain',\n hardenize: 'hardenize',\n tools: 'tools',\n} as const;\nexport type ProductColorPalette = ValueOf<typeof ProductColorPalette>;\n\nexport const DataVizColorPalette = {\n purple: 'purple',\n blue: 'blue',\n green: 'green',\n red: 'red',\n pink: 'pink',\n cyan: 'cyan',\n orange: 'orange',\n yellow: 'yellow',\n brown: 'brown',\n grey: 'grey',\n} as const;\nexport type DataVizColorPalette = ValueOf<typeof DataVizColorPalette>;\n\nexport const NeutralColorPalette = {\n black: 'black',\n darkgrey: 'darkgrey',\n midgrey: 'midgrey',\n lightgrey: 'lightgrey',\n xlightgrey: 'xlightgrey',\n white: 'white',\n} as const;\nexport type NeutralColorPalette = ValueOf<typeof NeutralColorPalette>;\n","import { ValueOf } from './helpers';\n\nexport const AlignSelf = {\n auto: 'auto',\n normal: 'normal',\n start: 'start',\n end: 'end',\n center: 'center',\n 'flex-start': 'flex-start',\n 'flex-end': 'flex-end',\n 'self-start': 'self-start',\n 'self-end': 'self-end',\n baseline: 'baseline',\n stretch: 'stretch',\n} as const;\nexport type AlignSelf = ValueOf<typeof AlignSelf>;\n\nexport const JustifySelf = {\n auto: 'auto',\n normal: 'normal',\n start: 'start',\n end: 'end',\n center: 'center',\n 'flex-start': 'flex-start',\n 'flex-end': 'flex-end',\n 'self-start': 'self-start',\n 'self-end': 'self-end',\n left: 'left',\n right: 'right',\n stretch: 'stretch',\n} as const;\nexport type JustifySelf = ValueOf<typeof JustifySelf>;\n\nexport const AlignContent = {\n 'flex-start': 'flex-start',\n 'flex-end': 'flex-end',\n center: 'center',\n 'space-between': 'space-between',\n 'space-around': 'space-around',\n 'space-evenly': 'space-evenly',\n stretch: 'stretch',\n start: 'start',\n end: 'end',\n baseline: 'baseline',\n 'first baseline': 'first baseline',\n 'last baseline': 'last baseline',\n} as const;\nexport type AlignContent = ValueOf<typeof AlignContent>;\n\nexport const AlignItems = {\n stretch: 'stretch',\n 'flex-start': 'flex-start',\n 'flex-end': 'flex-end',\n center: 'center',\n baseline: 'baseline',\n 'first baseline': 'first baseline',\n 'last baseline': 'last baseline',\n start: 'start',\n end: 'end',\n 'self-start': 'self-start',\n 'self-end': 'self-end',\n} as const;\nexport type AlignItems = ValueOf<typeof AlignItems>;\n\nexport const FlexDirection = {\n row: 'row',\n 'row-reverse': 'row-reverse',\n column: 'column',\n 'column-reverse': 'column-reverse',\n} as const;\nexport type FlexDirection = ValueOf<typeof FlexDirection>;\n\nexport const FlexWrap = {\n nowrap: 'nowrap',\n wrap: 'wrap',\n 'wrap-reverse': 'wrap-reverse',\n} as const;\nexport type FlexWrap = ValueOf<typeof FlexWrap>;\n\nexport const JustifyContent = {\n 'flex-start': 'flex-start',\n 'flex-end': 'flex-end',\n center: 'center',\n 'space-between': 'space-between',\n 'space-around': 'space-around',\n 'space-evenly': 'space-evenly',\n start: 'start',\n end: 'end',\n left: 'left',\n right: 'right',\n baseline: 'baseline',\n 'first baseline': 'first baseline',\n 'last baseline': 'last baseline',\n stretch: 'stretch',\n} as const;\nexport type JustifyContent = ValueOf<typeof JustifyContent>;\n\nexport const JustifyItems = {\n start: 'start',\n end: 'end',\n center: 'center',\n stretch: 'stretch',\n} as const;\nexport type JustifyItems = ValueOf<typeof JustifyItems>;\n\nexport interface LayoutProps {\n /** When used in a flex layout, specifies how the element will grow or shrink to fit the space available. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/flex\">MDN</a>. */\n flex?: string;\n /** When used in a flex layout, specifies how the element will grow to fit the space available. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/flex-grow\">MDN</a>. */\n flexGrow?: number;\n /** When used in a flex layout, specifies how the element will shrink to fit the space available. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/flex-shrink\">MDN</a>. */\n flexShrink?: number;\n /** When used in a flex layout, specifies the initial main size of the element. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/flex_basis\">MDN</a>. */\n flexBasis?: string;\n /** Overrides the alignItems property of a flex or grid container. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/align-self\">MDN</a>. */\n alignSelf?: AlignSelf;\n /** Specifies how the element is justified inside a flex or grid container. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/justify-self\">MDN</a>. */\n justifySelf?: string;\n /** The layout order for the element within a flex or grid container. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/order\">MDN</a>. */\n order?: number;\n /** When used in a grid layout, specifies the named grid area that the element should be placed in within the grid. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/grid-area\">MDN</a>. */\n gridArea?: string;\n /** When used in a grid layout, specifies the column the element should be placed in within the grid. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/grid-column\">MDN</a>. */\n gridColumn?: string;\n /** When used in a grid layout, specifies the row the element should be placed in within the grid. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/grid-row\">MDN</a>. */\n gridRow?: string;\n /** When used in a grid layout, specifies the starting column to span within the grid. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/grid-column-start\">MDN</a>. */\n gridColumnStart?: string;\n /** When used in a grid layout, specifies the ending column to span within the grid. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/grid-column-end\">MDN</a>. */\n gridColumnEnd?: string;\n /** When used in a grid layout, specifies the starting row to span within the grid. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/grid-row-start\">MDN</a>. */\n gridRowStart?: string;\n /** When used in a grid layout, specifies the ending row to span within the grid. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/grid-row-end\">MDN</a>. */\n gridRowEnd?: string;\n}\n\nexport interface SpacingProps {\n /** The margin for all four sides of the element. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/margin\">MDN</a>. */\n margin?: string;\n /** The margin for the bottom side of the element. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/margin-bottom\">MDN</a>. */\n marginBottom?: string;\n /** The margin for the left side of the element. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/margin-left\">MDN</a>. */\n marginLeft?: string;\n /** The margin for the right side of the element. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/margin-right\">MDN</a>. */\n marginRight?: string;\n /** The margin for the top side of the element. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/margin-top\">MDN</a>. */\n marginTop?: string;\n}\n\nexport interface SizingProps {\n /** The height of the element. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/height\">MDN</a>. */\n height?: string | number;\n /** The maximum height of the element. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/max-height\">MDN</a>. */\n maxHeight?: string;\n /** The maximum width of the element. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/max-width\">MDN</a>. */\n maxWidth?: string;\n /** The minimum height of the element. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/min-height\">MDN</a>. */\n minHeight?: string;\n /** The minimum width of the element. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/min-width\">MDN</a>. */\n minWidth?: string;\n /** The width of the element. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/width\">MDN</a>. */\n width?: string | number;\n}\n\nexport interface PositioningProps {\n /** Specifies how the element is positioned. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/position\">MDN</a>. */\n position?: string;\n /** The top position for the element. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/top\">MDN</a>. */\n top?: string;\n /** The bottom position for the element. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/bottom\">MDN</a>. */\n bottom?: string;\n /** The left position for the element. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/left\">MDN</a>. Consider using start instead for RTL support. */\n left?: string;\n /** The right position for the element. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/right\">MDN</a>. Consider using start instead for RTL support. */\n right?: string;\n /** The stacking order for the element. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/z-index\">MDN</a>. */\n zIndex?: string;\n}\n\nexport interface FlexLayoutProps {\n /** The distribution of space around child items along the cross axis. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/align-content\">MDN</a>. */\n alignContent?: AlignContent;\n /** The alignment of children within their container. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/align-items\">MDN</a>. */\n alignItems?: AlignItems;\n /** The direction in which to layout children. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/flex-direction\">MDN</a>. */\n flexDirection?: FlexDirection;\n /** Whether to wrap items onto multiple lines. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/flex-wrap\">MDN</a>. */\n flexWrap?: FlexWrap;\n /** The space to display between both rows and columns. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/gap\">MDN</a>. */\n gap?: string;\n /** Whether the box is displayed inline or not. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/display\">MDN</a>. */\n inline?: boolean;\n /** The distribution of space around items along the main axis. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/justify-content\">MDN</a>. */\n justifyContent?: JustifyContent;\n}\n\nexport interface GridLayoutProps {\n /** The distribution of space around child items along the cross axis. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/align-content\">MDN</a>. */\n alignContent?: AlignContent;\n /** The alignment of children within their container. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/align-items\">MDN</a>. */\n alignItems?: AlignItems;\n /** The space to display between both rows and columns. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/gap\">MDN</a>. */\n gap?: string;\n /** Defines the size of implicitly generated columns. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/grid-auto-columns\">MDN</a>. */\n gridAutoColumns?: string;\n /** Defines the size of implicitly generated rows. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/grid-auto-rows\">MDN</a>. */\n gridAutoRows?: string;\n /** Defines named grid areas. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/grid-template-areas\">MDN</a>. */\n gridTemplateAreas?: string;\n /** Defines the sizes of each column in the grid. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/grid-template-columns\">MDN</a>. */\n gridTemplateColumns?: string;\n /** Defines the sizes of each row in the grid. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/grid-template-rows\">MDN</a>. */\n gridTemplateRows?: string;\n /** Whether the box is displayed inline or not. */\n inline?: boolean;\n /** The distribution of space around items along the main axis. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/justify-content\">MDN</a>. */\n justifyContent?: JustifyContent;\n /** Defines the default justifySelf for all items in the grid. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/justify-items\">MDN</a>. */\n justifyItems?: JustifyItems;\n}\n\nexport interface StylingProps\n extends LayoutProps,\n SpacingProps,\n SizingProps,\n PositioningProps {}\n\nexport interface ContainerProps\n extends StylingProps,\n Omit<FlexLayoutProps, 'inline'>,\n Omit<GridLayoutProps, 'inline'> {\n /** Sets whether an element is treated as a block or inline element and the layout used for its children, such as flow layout, grid or flex. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/display\">MDN</a>. */\n display?:\n | 'block'\n | 'inline'\n | 'inline-block'\n | 'flex'\n | 'inline-flex'\n | 'grid'\n | 'inline-grid'\n | 'inherit';\n}\n","import React, { ReactNode, ReactElement } from 'react';\nimport { Comp } from '~/types';\n\n/**\n * Create a predicate function that checks if a ReactNode is a react element from the given component.\n *\n * @param component React function component or the component name\n * @return predicate returning true if value is instance of the component\n */\nexport const isComponent =\n <C>(component: Comp<C, any> | string) =>\n (instance: ReactNode): instance is ReactElement => {\n const componentName =\n typeof component === 'string' ? component : component.displayName;\n\n return (\n React.isValidElement(instance) &&\n (instance.type as Comp<any>).displayName === componentName\n );\n };\n","import React, { ReactNode, ReactElement } from 'react';\nimport { Comp } from '~/types';\nimport { isComponent } from './isComponent';\n\n/**\n * Create an array containing only valid and specific components.\n *\n * @param component React function component or the component name\n * @return an array of components\n */\nexport const filterComponents =\n (component: Comp<any, any> | string | Comp<any, any>[] | string[]) =>\n (children: ReactNode): ReactElement[] => {\n const components = Array.isArray(component) ? component : [component];\n const childArray: ReactElement[] = [];\n\n React.Children.forEach(children, (child) => {\n components.forEach((comp) => {\n if (isComponent(comp)(child)) {\n childArray.push(child);\n }\n });\n });\n\n return childArray;\n };\n","/**\n * Return components based on list of predicates.\n *\n * @param components Array of components\n * @param predicates Array of predicates\n * @return an array of arrays of components based on the given array of predicates\n */\nexport function partitionComponents<T>(\n components: T[],\n predicates: Array<(t: T) => boolean>\n): T[][] {\n const elements: T[][] = [...predicates.map(() => []), []];\n components.forEach((component) => {\n let found = false;\n predicates.forEach((predicate, index) => {\n if (predicate(component)) {\n elements[index].push(component);\n found = true;\n }\n });\n if (!found) {\n elements[elements.length - 1].push(component);\n }\n });\n return elements;\n}\n","/**\n * Do not edit directly\n * Generated on Thu, 09 Feb 2023 16:05:01 GMT\n */\n\nexport const RedsiftColorDefaultPrimary = '#0079e1';\nexport const RedsiftColorDefaultSecondary = '#0063b9';\nexport const RedsiftColorDefaultHover = '#dce8f3';\nexport const RedsiftColorDefaultActive = '#c4dcf1';\nexport const RedsiftColorDefaultActiveHover = '#abcfef';\nexport const RedsiftColorDefaultPrimaryActive = '#004a8a';\nexport const RedsiftColorWebsitePrimary = '#0079e1';\nexport const RedsiftColorWebsiteSecondary = '#0063b9';\nexport const RedsiftColorWebsiteHover = '#dce8f3';\nexport const RedsiftColorWebsiteActive = '#c4dcf1';\nexport const RedsiftColorWebsiteActiveHover = '#abcfef';\nexport const RedsiftColorWebsitePrimaryActive = '#004a8a';\nexport const RedsiftColorOndmarcPrimary = '#02ac61';\nexport const RedsiftColorOndmarcSecondary = '#009252';\nexport const RedsiftColorOndmarcHover = '#dcede6';\nexport const RedsiftColorOndmarcActive = '#c4e6d7';\nexport const RedsiftColorOndmarcActiveHover = '#acdfc8';\nexport const RedsiftColorOndmarcPrimaryActive = '#00512e';\nexport const RedsiftColorOninboxPrimary = '#33b222';\nexport const RedsiftColorOninboxSecondary = '#268519';\nexport const RedsiftColorOninboxHover = '#e1eedf';\nexport const RedsiftColorOninboxActive = '#cee8cb';\nexport const RedsiftColorOninboxActiveHover = '#bae0b5';\nexport const RedsiftColorOninboxPrimaryActive = '#164e0e';\nexport const RedsiftColorOndomainPrimary = '#028062';\nexport const RedsiftColorOndomainSecondary = '#015944';\nexport const RedsiftColorOndomainHover = '#dce9e6';\nexport const RedsiftColorOndomainActive = '#c4ded8';\nexport const RedsiftColorOndomainActiveHover = '#acd1c8';\nexport const RedsiftColorOndomainPrimaryActive = '#003f30';\nexport const RedsiftColorHardenizePrimary = '#0f7ab3';\nexport const RedsiftColorHardenizeSecondary = '#3498db';\nexport const RedsiftColorHardenizeHover = '#dee8ee';\nexport const RedsiftColorHardenizeActive = '#c7dce8';\nexport const RedsiftColorHardenizeActiveHover = '#b0d0e1';\nexport const RedsiftColorHardenizePrimaryActive = '#0a5379';\nexport const RedsiftColorToolsPrimary = '#37bdfb';\nexport const RedsiftColorToolsSecondary = '#02a2ef';\nexport const RedsiftColorToolsHover = '#e2eff5';\nexport const RedsiftColorToolsActive = '#cfeaf6';\nexport const RedsiftColorToolsActiveHover = '#bce4f6';\nexport const RedsiftColorToolsPrimaryActive = '#237ea8';\nexport const RedsiftColorSuccessPrimary = '#02ac61';\nexport const RedsiftColorSuccessSecondary = '#009252';\nexport const RedsiftColorSuccessHover = '#dcede6';\nexport const RedsiftColorSuccessActive = '#c4e6d7';\nexport const RedsiftColorSuccessActiveHover = '#acdfc8';\nexport const RedsiftColorSuccessPrimaryActive = '#00512e';\nexport const RedsiftColorErrorPrimary = '#e11010';\nexport const RedsiftColorErrorSecondary = '#b41010';\nexport const RedsiftColorErrorHover = '#f3dede';\nexport const RedsiftColorErrorActive = '#f1c7c7';\nexport const RedsiftColorErrorActiveHover = '#efb0b0';\nexport const RedsiftColorErrorPrimaryActive = '#770a0a';\nexport const RedsiftColorWarningPrimary = '#fcbb54';\nexport const RedsiftColorWarningSecondary = '#c09300';\nexport const RedsiftColorWarningHover = '#f5efe4';\nexport const RedsiftColorWarningActive = '#f6e9d5';\nexport const RedsiftColorWarningActiveHover = '#f7e3c4';\nexport const RedsiftColorWarningPrimaryActive = '#ae833f';\nexport const RedsiftColorInfoPrimary = '#0079e1';\nexport const RedsiftColorInfoSecondary = '#0063b9';\nexport const RedsiftColorInfoHover = '#dce8f3';\nexport const RedsiftColorInfoActive = '#c4dcf1';\nexport const RedsiftColorInfoActiveHover = '#abcfef';\nexport const RedsiftColorInfoPrimaryActive = '#004a8a';\nexport const RedsiftColorQuestionPrimary = '#666666';\nexport const RedsiftColorQuestionSecondary = '#1c1c1c';\nexport const RedsiftColorQuestionHover = '#e6e6e6';\nexport const RedsiftColorQuestionActive = '#d8d8d8';\nexport const RedsiftColorQuestionActiveHover = '#cacaca';\nexport const RedsiftColorNoDataPrimary = '#bdbdbd';\nexport const RedsiftColorNoDataSecondary = '#666666';\nexport const RedsiftColorNoDataHover = '#efefef';\nexport const RedsiftColorNoDataActive = '#eaeaea';\nexport const RedsiftColorNoDataActiveHover = '#e4e4e4';\nexport const RedsiftColorNeutralBlack = '#1c1c1c';\nexport const RedsiftColorNeutralDarkgrey = '#666666';\nexport const RedsiftColorNeutralMidgrey = '#bdbdbd';\nexport const RedsiftColorNeutralLightgrey = '#ebebeb';\nexport const RedsiftColorNeutralXlightgrey = '#f5f5f5';\nexport const RedsiftColorNeutralWhite = '#ffffff';\nexport const RedsiftAppBarColorBackground = '#0079e1';\nexport const RedsiftAppBarColorText = '#FFFFFF';\nexport const RedsiftAppBarColorExpandIconResting = '#FFFFFF';\nexport const RedsiftAppBarColorExpandIconHover = '#FFFFFF';\nexport const RedsiftAppBarColorExpandIconBackgroundHover = '#0063b9';\nexport const RedsiftDataVizColorPurpleDefault = '#C1AAEA';\nexport const RedsiftDataVizColorPurpleDark = '#A78ADB';\nexport const RedsiftDataVizColorPurpleDarker = '#8D6CC9';\nexport const RedsiftDataVizColorPurpleLight = '#D9CAF5';\nexport const RedsiftDataVizColorPurpleLighter = '#F0E9FC';\nexport const RedsiftDataVizColorBlueDefault = '#B6DAEE';\nexport const RedsiftDataVizColorBlueDark = '#97C5DE';\nexport const RedsiftDataVizColorBlueDarker = '#73ADCC';\nexport const RedsiftDataVizColorBlueLight = '#D8EDF8';\nexport const RedsiftDataVizColorBlueLighter = '#F6FBFE';\nexport const RedsiftDataVizColorGreenDefault = '#B3E3C5';\nexport const RedsiftDataVizColorGreenDark = '#90D2A9';\nexport const RedsiftDataVizColorGreenDarker = '#6DBE8B';\nexport const RedsiftDataVizColorGreenLight = '#D3F0DE';\nexport const RedsiftDataVizColorGreenLighter = '#EDFAF1';\nexport const RedsiftDataVizColorRedDefault = '#EAADAC';\nexport const RedsiftDataVizColorRedDark = '#D18785';\nexport const RedsiftDataVizColorRedDarker = '#BA6361';\nexport const RedsiftDataVizColorRedLight = '#FFD3D2';\nexport const RedsiftDataVizColorRedLighter = '#FFE5E5';\nexport const RedsiftDataVizColorPinkDefault = '#E2A7D7';\nexport const RedsiftDataVizColorPinkDark = '#D185C3';\nexport const RedsiftDataVizColorPinkDarker = '#BD63AC';\nexport const RedsiftDataVizColorPinkLight = '#EFC8E8';\nexport const RedsiftDataVizColorPinkLighter = '#F9E6F6';\nexport const RedsiftDataVizColorCyanDefault = '#AFF5F3';\nexport const RedsiftDataVizColorCyanDark = '#8CEAE6';\nexport const RedsiftDataVizColorCyanDarker = '#6CDCD8';\nexport const RedsiftDataVizColorCyanLight = '#D4FCFA';\nexport const RedsiftDataVizColorCyanLighter = '#E1FFFF';\nexport const RedsiftDataVizColorOrangeDefault = '#F2D39E';\nexport const RedsiftDataVizColorOrangeDark = '#D8B475';\nexport const RedsiftDataVizColorOrangeDarker = '#BD954F';\nexport const RedsiftDataVizColorOrangeLight = '#FFE8C0';\nexport const RedsiftDataVizColorOrangeLighter = '#FFF0D7';\nexport const RedsiftDataVizColorYellowDefault = '#F6EFC7';\nexport const RedsiftDataVizColorYellowDark = '#DED4A0';\nexport const RedsiftDataVizColorYellowDarker = '#C6BB7A';\nexport const RedsiftDataVizColorYellowLight = '#FFFBE1';\nexport const RedsiftDataVizColorYellowLighter = '#FFFDF0';\nexport const RedsiftDataVizColorBrownDefault = '#E6C2A0';\nexport const RedsiftDataVizColorBrownDark = '#CDA279';\nexport const RedsiftDataVizColorBrownDarker = '#B58556';\nexport const RedsiftDataVizColorBrownLight = '#FFE3C9';\nexport const RedsiftDataVizColorBrownLighter = '#FFEEDE';\nexport const RedsiftDataVizColorGreyDefault = '#E5E5E5';\nexport const RedsiftDataVizColorGreyDark = '#BDBDBD';\nexport const RedsiftDataVizColorGreyDarker = '#666666';\nexport const RedsiftDataVizColorGreyLight = '#F5F5F5';\nexport const RedsiftDataVizColorGreyLighter = '#FFFFFF';\nexport const RedsiftSideNavigationColorBackground = '#2D2D34';\nexport const RedsiftSideNavigationColorMenuItemTextResting = '#FFFFFFB3';\nexport const RedsiftSideNavigationColorMenuItemTextDisabled = '#76767A';\nexport const RedsiftSideNavigationColorMenuItemTextHover = '#FFFFFF';\nexport const RedsiftSideNavigationColorMenuItemBackgroundHover = '#4C4C64';\nexport const RedsiftSideNavigationColorMenuItemBackgroundSecondary = '#333340';\nexport const RedsiftSideNavigationColorMenuItemBackgroundActive = '#39394C';\nexport const RedsiftSideNavigationColorMenuItemActive = '#02AC61';\nexport const RedsiftSideNavigationColorScrollbarResting = '#4C4C64';\nexport const RedsiftSideNavigationColorScrollbarHover = '#5d5d73';\nexport const RedsiftTypographyFontFamilyRaleway = \"'Raleway', sans-serif\";\nexport const RedsiftTypographyFontFamilyElectrolize =\n \"'electrolize', sans-serif\";\nexport const RedsiftTypographyFontFamilySourceCodePro =\n \"'Source Code Pro', sans-serif\";\nexport const RedsiftTypographyFontWeightRegular = '400';\nexport const RedsiftTypographyFontWeightMedium = '500';\nexport const RedsiftTypographyFontWeightSemiBold = '600';\nexport const RedsiftTypographyFontWeightBold = '700';\nexport const RedsiftTypographyH1FontFamily = \"'electrolize', sans-serif\";\nexport const RedsiftTypographyH1FontSize = '24px';\nexport const RedsiftTypographyH1FontWeight = '400';\nexport const RedsiftTypographyH1LineHeight = '28px';\nexport const RedsiftTypographyH1TextTransform = 'uppercase';\nexport const RedsiftTypographyH2FontFamily = \"'Raleway', sans-serif\";\nexport const RedsiftTypographyH2FontSize = '24px';\nexport const RedsiftTypographyH2FontWeight = '600';\nexport const RedsiftTypographyH2LineHeight = '28px';\nexport const RedsiftTypographyH2TextTransform = 'unset';\nexport const RedsiftTypographyH3FontFamily = \"'Raleway', sans-serif\";\nexport const RedsiftTypographyH3FontSize = '20px';\nexport const RedsiftTypographyH3FontWeight = '500';\nexport const RedsiftTypographyH3LineHeight = '24px';\nexport const RedsiftTypographyH3TextTransform = 'unset';\nexport const RedsiftTypographyH4FontFamily = \"'Raleway', sans-serif\";\nexport const RedsiftTypographyH4FontSize = '18px';\nexport const RedsiftTypographyH4FontWeight = '500';\nexport const RedsiftTypographyH4LineHeight = '22px';\nexport const RedsiftTypographyH4TextTransform = 'unset';\nexport const RedsiftTypographyH5FontFamily = \"'Raleway', sans-serif\";\nexport const RedsiftTypographyH5FontSize = '16px';\nexport const RedsiftTypographyH5FontWeight = '600';\nexport const RedsiftTypographyH5LineHeight = '20px';\nexport const RedsiftTypographyH5TextTransform = 'unset';\nexport const RedsiftTypographySubtitleFontFamily = \"'Raleway', sans-serif\";\nexport const RedsiftTypographySubtitleFontSize = '15px';\nexport const RedsiftTypographySubtitleFontWeight = '700';\nexport const RedsiftTypographySubtitleLineHeight = '26px';\nexport const RedsiftTypographySubtitleTextTransform = 'unset';\nexport const RedsiftTypographyBodyFontFamily = \"'Raleway', sans-serif\";\nexport const RedsiftTypographyBodyFontSize = '15px';\nexport const RedsiftTypographyBodyFontWeight = '400';\nexport const RedsiftTypographyBodyLineHeight = '26px';\nexport const RedsiftTypographyBodyTextTransform = 'unset';\nexport const RedsiftTypographyBody2FontFamily = \"'Raleway', sans-serif\";\nexport const RedsiftTypographyBody2FontSize = '14px';\nexport const RedsiftTypographyBody2FontWeight = '400';\nexport const RedsiftTypographyBody2LineHeight = '20px';\nexport const RedsiftTypographyLinkFontFamily = \"'Raleway', sans-serif\";\nexport const RedsiftTypographyLinkFontSize = '15px';\nexport const RedsiftTypographyLinkFontWeight = '400';\nexport const RedsiftTypographyLinkLineHeight = '26px';\nexport const RedsiftTypographyInputTextFontFamily =\n \"'Source Code Pro', sans-serif\";\nexport const RedsiftTypographyInputTextFontSize = '15px';\nexport const RedsiftTypographyInputTextFontWeight = '400';\nexport const RedsiftTypographyInputTextLineHeight = '26px';\nexport const RedsiftTypographyButtonFontFamily = \"'Raleway', sans-serif\";\nexport const RedsiftTypographyButtonFontSize = '15px';\nexport const RedsiftTypographyButtonFontWeight = '500';\nexport const RedsiftTypographyButtonLineHeight = '26px';\nexport const RedsiftTypographyButtonTextTransform = 'uppercase';\nexport const RedsiftTypographyCaptionFontFamily = \"'Raleway', sans-serif\";\nexport const RedsiftTypographyCaptionFontSize = '13px';\nexport const RedsiftTypographyCaptionFontWeight = '400';\nexport const RedsiftTypographyCaptionLineHeight = '23px';\nexport const RedsiftTypographyCaptionTextTransform = 'unset';\nexport const RedsiftTypographyHelperFontFamily = \"'Raleway', sans-serif\";\nexport const RedsiftTypographyHelperFontSize = '12px';\nexport const RedsiftTypographyHelperFontWeight = '400';\nexport const RedsiftTypographyHelperLineHeight = '16px';\nexport const RedsiftTypographyBadgeFontFamily = \"'Source Code Pro', sans-serif\";\nexport const RedsiftTypographyBadgeFontSize = '12px';\nexport const RedsiftTypographyBadgeFontWeight = '500';\nexport const RedsiftTypographyBadgeLineHeight = '20px';\nexport const RedsiftTypographyPillFontFamily = \"'Source Code Pro', sans-serif\";\nexport const RedsiftTypographyPillFontSize = '15px';\nexport const RedsiftTypographyPillFontWeight = '500';\nexport const RedsiftTypographyPillLineHeight = '28px';\nexport const RedsiftTypographyChipFontFamily = \"'Source Code Pro', sans-serif\";\nexport const RedsiftTypographyChipFontSize = '13px';\nexport const RedsiftTypographyChipFontWeight = '400';\nexport const RedsiftTypographyChipLineHeight = '18px';\n","import { ComponentProps } from 'react';\n\n/**\n * Display a warning if no label was found for screen readers and assistive technologies.\n *\n * @param props Component props containing the aria-label and aria-labelledby params to check for.\n * @param additionalKeysToCheck Additional props to check that can act as a label for screen readers (i.e. children).\n */\nexport const warnIfNoAccessibleLabelFound = (\n props: ComponentProps<keyof JSX.IntrinsicElements>,\n additionalKeysToCheck?: any[]\n): void => {\n const { 'aria-label': ariaLabel, 'aria-labelledby': ariaLabelledby } = props;\n\n const hasText =\n additionalKeysToCheck &&\n additionalKeysToCheck.filter((key) => !!key).length > 0;\n const hasAriaLabel = Boolean(ariaLabel || ariaLabelledby);\n\n if (!hasAriaLabel && !hasText) {\n console.warn('You must provide a label for accessibility');\n }\n};\n","import { useState, useEffect } from 'react';\n\ninterface WindowSize {\n height?: number;\n width?: number;\n size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';\n}\n\nexport const useWindowSize = () => {\n const [windowSize, setWindowSize] = useState<WindowSize>({\n width: undefined,\n height: undefined,\n size: undefined,\n });\n\n useEffect(() => {\n function handleResize() {\n setWindowSize((windowSize) => {\n if (\n window.innerWidth === windowSize.width &&\n window.innerHeight === windowSize.height\n ) {\n return windowSize;\n }\n\n let size: WindowSize['size'];\n if (window.innerWidth <= 480) {\n size = 'xs';\n } else if (window.innerWidth <= 768) {\n size = 'sm';\n } else if (window.innerWidth <= 1024) {\n size = 'md';\n } else if (window.innerWidth <= 1200) {\n size = 'lg';\n } else {\n size = 'xl';\n }\n return {\n width: window.innerWidth,\n height: window.innerHeight,\n size,\n };\n });\n }\n\n window.addEventListener('resize', handleResize);\n handleResize();\n\n return () => window.removeEventListener('resize', handleResize);\n }, []);\n return windowSize;\n};\n","import { ComponentProps } from 'react';\nimport { ValueOf, StylingProps } from '~/types';\n\n/**\n * Component variant.\n */\nexport const AlertVariant = {\n success: 'success',\n error: 'error',\n warning: 'warning',\n info: 'info',\n} as const;\nexport type AlertVariant = ValueOf<typeof AlertVariant>;\n\n/**\n * Component props.\n */\nexport interface AlertProps extends ComponentProps<'div'>, StylingProps {\n /** Whether the component can be closed or not. */\n isClosable?: boolean;\n /** Whether the component is closed or not. Used for controlled version. */\n isClosed?: boolean;\n /** Method to handle component change. */\n onClose?(isClosed: boolean): void;\n /** Title. */\n title?: string;\n /** Variant */\n variant?: AlertVariant;\n}\n\nexport type StyledAlertProps = Omit<AlertProps, 'variant'> & {\n $hasTitle: boolean;\n $isClosable: AlertProps['isClosable'];\n $isClosed: AlertProps['isClosed'];\n $variant: AlertProps['variant'];\n};\n","import enUS from './en-US.json';\nimport frFR from './fr-FR.json';\n\nexport default {\n 'en-US': enUS,\n 'fr-FR': frFR,\n};\n","import { ComponentProps } from 'react';\nimport { PressEvent } from '@react-types/shared';\nimport {\n ColorPalette,\n ProductColorPalette,\n StylingProps,\n ValueOf,\n} from '~/types';\n\n/**\n * Component variant.\n */\nexport const IconButtonVariant = {\n primary: 'primary',\n secondary: 'secondary',\n unstyled: 'unstyled',\n} as const;\nexport type IconButtonVariant = ValueOf<typeof IconButtonVariant>;\n\n/**\n * Component color.\n */\nexport type IconButtonColor = ColorPalette | ProductColorPalette;\n\n/**\n * Component props.\n */\nexport interface IconButtonProps\n extends ComponentProps<'button'>,\n StylingProps {\n /** Color variant. */\n color?: IconButtonColor;\n /**\n * Icon path data (`d` property of the `path` SVG element).<br />\n * See <a href=\"https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths\">https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths</a>.<br />\n * Recommended path data come from mdi/js.<br />\n * See <a href=\"https://www.npmjs.com/package/@mdi/js\">https://www.npmjs.com/package/@mdi/js</a>.\n */\n icon: string;\n /** Whether the component is active or not. */\n isActive?: boolean;\n /** Whether the component is disabled or not. */\n isDisabled?: boolean;\n /** Preferred method to handle click, press and touch. */\n onPress?: (e: PressEvent) => void;\n /** Button variant. */\n variant?: IconButtonVariant;\n}\n\nexport type StyledIconButtonProps = Omit<\n IconButtonProps,\n 'isActive' | 'isDisabled' | 'variant' | 'color' | 'icon'\n> & {\n $color: IconButtonProps['color'];\n $isActive: IconButtonProps['isActive'];\n $isDisabled: IconButtonProps['isDisabled'];\n $variant: IconButtonProps['variant'];\n};\n","import { ComponentProps, ReactElement } from 'react';\nimport {\n ColorPalette,\n ProductColorPalette,\n StylingProps,\n ValueOf,\n} from '~/types';\n\n/**\n * Component size.\n */\nexport const IconSize = {\n xsmall: 'xsmall',\n small: 'small',\n medium: 'medium',\n large: 'large',\n xlarge: 'xlarge',\n} as const;\nexport type IconSize = ValueOf<typeof IconSize>;\n\n/**\n * Component props.\n */\nexport interface IconProps\n extends ComponentProps<'span'>,\n Omit<StylingProps, 'width' | 'height'> {\n /** Indicates whether the element is exposed to an accessibility API. */\n 'aria-hidden'?: boolean | 'false' | 'true';\n /** A screen reader only label for the Icon. */\n 'aria-label'?: string;\n /** Color variant. Either from color palette or hex or rgb strings. */\n color?: ColorPalette | ProductColorPalette | string;\n /** Whether the icon has a badge attached to it. */\n badge?: ReactElement;\n /**\n * Icon path data (`d` property of the `path` SVG element).<br />\n * See <a href=\"https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths\">https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths</a>.<br />\n * Recommended path data come from mdi/js.<br />\n * See <a href=\"https://www.npmjs.com/package/@mdi/js\">https://www.npmjs.com/package/@mdi/js</a>.\n */\n icon: string;\n /** Icon size. */\n size?: IconSize;\n /** Additional properties to forward to the SVG tag. */\n svgProps?: ComponentProps<'svg'>;\n}\n\nexport type StyledIconProps = Omit<\n IconProps,\n 'color' | 'size' | 'icon' | 'svgProps'\n> & {\n $color: IconProps['color'];\n $size: IconProps['size'];\n};\n","import { css } from 'styled-components';\nimport {\n LayoutProps,\n SpacingProps,\n SizingProps,\n PositioningProps,\n FlexLayoutProps,\n GridLayoutProps,\n StylingProps,\n ContainerProps,\n} from '~/types';\n\nexport const baseLayout = css<LayoutProps>`\n ${({\n flex,\n flexGrow,\n flexShrink,\n flexBasis,\n alignSelf,\n justifySelf,\n order,\n gridArea,\n gridColumn,\n gridRow,\n gridColumnStart,\n gridColumnEnd,\n gridRowStart,\n gridRowEnd,\n }) =>\n css`\n ${flex ? `flex: ${flex};` : ''}\n ${flexGrow ? `flex-grow: ${flexGrow};` : ''}\n ${flexShrink ? `flex-shrink: ${flexShrink};` : ''}\n ${flexBasis ? `flex-basis: ${flexBasis};` : ''}\n ${alignSelf ? `align-self: ${alignSelf};` : ''}\n ${justifySelf ? `justify-self: ${justifySelf};` : ''}\n ${order ? `order: ${order};` : ''}\n ${gridArea ? `grid-area: ${gridArea};` : ''}\n ${gridColumn ? `grid-column: ${gridColumn};` : ''}\n ${gridRow ? `grid-row: ${gridRow};` : ''}\n ${gridColumnStart ? `grid-column-start: ${gridColumnStart};` : ''}\n ${gridColumnEnd ? `grid-column-end: ${gridColumnEnd};` : ''}\n ${gridRowStart ? `grid-row-start: ${gridRowStart};` : ''}\n ${gridRowEnd ? `grid-row-end: ${gridRowEnd};` : ''}\n `}\n`;\n\nexport const baseSpacing = css<SpacingProps>`\n ${({ margin, marginBottom, marginLeft, marginRight, marginTop }) =>\n css`\n ${margin ? `margin: ${margin};` : ''}\n ${marginBottom ? `margin-bottom: ${marginBottom};` : ''}\n ${marginLeft ? `margin-left: ${marginLeft};` : ''}\n ${marginRight ? `margin-right: ${marginRight};` : ''}\n ${marginTop ? `margin-top: ${marginTop};` : ''}\n `}\n`;\n\nexport const baseSizing = css<SizingProps>`\n ${({ height, maxHeight, maxWidth, minHeight, minWidth, width }) =>\n css`\n ${height\n ? `height: ${typeof height === 'number' ? `${height}px` : height};`\n : ''}\n ${maxHeight ? `max-height: ${maxHeight};` : ''}\n ${maxWidth ? `max-width: ${maxWidth};` : ''}\n ${minHeight ? `min-height: ${minHeight};` : ''}\n ${minWidth ? `min-width: ${minWidth};` : ''}\n ${width\n ? `width: ${typeof width === 'number' ? `${width}px` : width};`\n : ''}\n `}\n`;\n\nexport const basePositioning = css<PositioningProps>`\n ${({ position, top, bottom, left, right, zIndex }) =>\n css`\n ${position ? `position: ${position};` : ''}\n ${top ? `top: ${top};` : ''}\n ${bottom ? `bottom: ${bottom};` : ''}\n ${left ? `left: ${left};` : ''}\n ${right ? `right: ${right};` : ''}\n ${zIndex ? `z-index: ${zIndex};` : ''}\n `}\n`;\n\nexport const baseFlexbox = css<FlexLayoutProps>`\n ${({\n alignContent,\n alignItems,\n flexDirection,\n flexWrap,\n gap,\n justifyContent,\n }) =>\n css`\n ${alignContent ? `align-content: ${alignContent};` : ''}\n ${alignItems ? `align-items: ${alignItems};` : ''}\n ${flexDirection ? `flex-direction: ${flexDirection};` : ''}\n ${flexWrap ? `flex-wrap: ${flexWrap};` : ''}\n gap: ${gap};\n ${justifyContent ? `justify-content: ${justifyContent};` : ''}\n `}\n`;\n\nexport const baseGrid = css<GridLayoutProps>`\n ${({\n alignContent,\n alignItems,\n gap,\n gridAutoColumns,\n gridAutoRows,\n gridTemplateAreas,\n gridTemplateColumns,\n gridTemplateRows,\n justifyContent,\n justifyItems,\n }) =>\n css`\n ${alignContent ? `align-content: ${alignContent};` : ''}\n ${alignItems ? `align-items: ${alignItems};` : ''}\n ${gap ? `gap: ${gap};` : ''}\n ${gridAutoColumns ? `grid-auto-columns: ${gridAutoColumns};` : ''}\n ${gridAutoRows ? `grid-auto-rows: ${gridAutoRows};` : ''}\n ${gridTemplateAreas ? `grid-template-areas: ${gridTemplateAreas};` : ''}\n ${gridTemplateColumns\n ? `grid-template-columns: ${gridTemplateColumns};`\n : ''}\n ${gridTemplateRows ? `grid-template-rows: ${gridTemplateRows};` : ''}\n ${justifyContent ? `justify-content: ${justifyContent};` : ''}\n ${justifyItems ? `justify-items: ${justifyItems};` : ''}\n `}\n`;\n\nexport const baseStyling = css<StylingProps>`\n font-family: var(--redsift-typography-body-font-family);\n font-size: var(--redsift-typography-body-font-size);\n font-weight: var(--redsift-typography-body-font-weight);\n line-height: var(--redsift-typography-body-line-height);\n color: var(--redsift-color-neutral-black);\n\n ${baseLayout}\n ${baseSpacing}\n ${baseSizing}\n ${basePositioning}\n`;\n\nexport const baseContainer = css<ContainerProps>`\n ${({ display }) => (display ? `display: ${display};` : '')}\n\n ${baseStyling}\n ${baseFlexbox}\n ${baseGrid}\n`;\n","import styled, { css } from 'styled-components';\nimport { ColorPalette, ProductColorPalette } from '~/types';\nimport { baseStyling } from '~/components/shared';\nimport { StyledIconProps, IconSize } from './types';\n\n/**\n * Component style.\n */\nexport const StyledIcon = styled.span<StyledIconProps>`\n position: relative;\n ${baseStyling}\n\n font-style: normal;\n\n svg {\n vertical-align: -0.125em;\n }\n\n ${({ $color }) =>\n $color &&\n [...Object.keys(ColorPalette), ...Object.keys(ProductColorPalette)].indexOf(\n $color\n ) !== -1\n ? css`\n color: var(--redsift-color-${$color}-primary);\n `\n : css`\n color: ${$color || css`var(--redsift-color-neutral-darkgrey)`};\n `}\n\n ${({ $size }) => {\n switch ($size) {\n case IconSize.xlarge:\n return css`\n font-size: 40px;\n height: 40px;\n line-height: 40px;\n width: 40px;\n\n & .redsift-badge-standard {\n position: absolute;\n right: -24px;\n top: -2px;\n }\n\n & .redsift-badge-dot {\n position: absolute;\n right: -14px;\n top: 6px;\n }\n `;\n case IconSize.large:\n return css`\n font-size: 28px;\n height: 28px;\n line-height: 28px;\n width: 28px;\n\n & .redsift-badge-standard {\n position: absolute;\n right: -24px;\n top: -4px;\n }\n\n & .redsift-badge-dot {\n position: absolute;\n right: -14px;\n top: 2px;\n }\n `;\n case IconSize.small:\n return css`\n font-size: 20px;\n height: 20px;\n line-height: 20px;\n width: 20px;\n\n & .redsift-badge-standard {\n position: absolute;\n right: -24px;\n top: -8px;\n }\n\n & .redsift-badge-dot {\n position: absolute;\n right: -14px;\n top: 1px;\n }\n `;\n case IconSize.xsmall:\n return css`\n font-size: 16px;\n height: 16px;\n line-height: 16px;\n width: 16px;\n\n & .redsift-badge-standard {\n position: absolute;\n right: -24px;\n top: -12px;\n }\n\n & .redsift-badge-dot {\n position: absolute;\n right: -14px;\n top: -1px;\n }\n `;\n case IconSize.medium:\n default:\n return css`\n font-size: 24px;\n height: 24px;\n line-height: 24px;\n width: 24px;\n\n & .redsift-badge-standard {\n position: absolute;\n right: -24px;\n top: -5px;\n }\n\n & .redsift-badge-dot {\n position: absolute;\n right: -14px;\n top: 1px;\n }\n `;\n }\n }}\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\nimport { Comp } from '~/types';\nimport { StyledIcon } from './styles';\nimport { IconProps, IconSize } from './types';\n\nconst COMPONENT_NAME = 'Icon';\nconst CLASSNAME = 'redsift-icon';\nconst DEFAULT_PROPS: Partial<IconProps> = {\n size: IconSize.medium,\n};\n\n/**\n * The Icon component.\n */\nexport const Icon: Comp<IconProps, HTMLSpanElement> = forwardRef(\n (props, ref) => {\n const {\n 'aria-hidden': ariaHidden,\n 'aria-label': ariaLabel,\n badge,\n className,\n color,\n icon,\n size,\n svgProps,\n ...forwardedProps\n } = props;\n\n return (\n <StyledIcon\n {...forwardedProps}\n $color={color}\n $size={size}\n aria-hidden={ariaLabel ? (ariaHidden ? ariaHidden : undefined) : true}\n aria-label={ariaLabel}\n className={classNames(Icon.className, className)}\n ref={ref as RefObject<HTMLSpanElement>}\n >\n <svg\n {...svgProps}\n aria-hidden={ariaLabel ? (ariaHidden ? ariaHidden : undefined) : true}\n aria-label={ariaLabel}\n focusable=\"false\"\n height=\"1em\"\n preserveAspectRatio=\"xMidYMid meet\"\n role=\"img\"\n viewBox=\"0 0 24 24\"\n width=\"1em\"\n >\n <path d={icon} fill=\"currentColor\" />\n </svg>\n {badge ? badge : null}\n </StyledIcon>\n );\n }\n);\nIcon.className = CLASSNAME;\nIcon.defaultProps = DEFAULT_PROPS;\nIcon.displayName = COMPONENT_NAME;\n","import { ComponentProps } from 'react';\nimport { PressEvent } from '@react-types/shared';\nimport {\n ColorPalette,\n ProductColorPalette,\n StylingProps,\n ValueOf,\n} from '~/types';\n\n/**\n * Component variant.\n */\nexport const ButtonVariant = {\n primary: 'primary',\n secondary: 'secondary',\n unstyled: 'unstyled',\n} as const;\nexport type ButtonVariant = ValueOf<typeof ButtonVariant>;\n\n/**\n * Component color.\n */\nexport type ButtonColor = ColorPalette | ProductColorPalette;\n\n/**\n * Component props.\n */\nexport interface ButtonProps extends ComponentProps<'button'>, StylingProps {\n /** Color variant. The product colors are available but should only be used to display the Button in the color of another product. To display a Button with a color of the current product, use `default`. */\n color?: ButtonColor;\n /** Whether the component take the full width or not. */\n fullWidth?: boolean;\n /** Whether the component is active or not. */\n isActive?: boolean;\n /** Whether the component is disabled or not. */\n isDisabled?: boolean;\n /** Whether the component is in a loading state or not. */\n isLoading?: boolean;\n /**\n * Icon path data (`d` property of the `path` SVG element).<br />\n * See <a href=\"https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths\">https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths</a>.<br />\n * Recommended path data come from mdi/js.<br />\n * See <a href=\"https://www.npmjs.com/package/@mdi/js\">https://www.npmjs.com/package/@mdi/js</a>.\n */\n leftIcon?: string;\n /** Preferred method to handle click, press and touch. */\n onPress?: (e: PressEvent) => void;\n /**\n * Icon path data (`d` property of the `path` SVG element).<br />\n * See <a href=\"https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths\">https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths</a>.<br />\n * Recommended path data come from mdi/js.<br />\n * See <a href=\"https://www.npmjs.com/package/@mdi/js\">https://www.npmjs.com/package/@mdi/js</a>.\n */\n rightIcon?: string;\n /** Button variant. */\n variant?: ButtonVariant;\n}\n\nexport type StyledButtonProps = Omit<\n ButtonProps,\n 'isActive' | 'isDisabled' | 'variant' | 'color' | 'size' | 'fullWidth'\n> & {\n $color: ButtonProps['color'];\n $fullWidth?: ButtonProps['fullWidth'];\n $isActive: ButtonProps['isActive'];\n $isDisabled: ButtonProps['isDisabled'];\n $variant: ButtonProps['variant'];\n};\n","import styled, { css } from 'styled-components';\nimport { baseStyling } from '~/components/shared';\nimport { StyledButtonProps, ButtonVariant } from './types';\n\n/**\n * Component style.\n */\nexport const StyledButton = styled.button<StyledButtonProps>`\n ${baseStyling}\n\n align-items: center;\n background: none;\n border: none;\n display: flex;\n font-family: var(--redsift-typography-button-font-family);\n font-size: var(--redsift-typography-button-font-size);\n font-weight: var(--redsift-typography-button-font-weight);\n gap: 8px;\n justify-content: center;\n line-height: var(--redsift-typography-button-line-height);\n text-decoration: none;\n text-transform: var(--redsift-typography-button-text-transform);\n\n ${({ $variant, $color, $isActive, $isDisabled }) => css`\n padding: ${$variant === ButtonVariant.secondary ? '7px 15px' : '8px 16px'};\n\n ${$variant === ButtonVariant.secondary\n ? css`\n background-color: ${$isActive\n ? `var(--redsift-color-${$color}-active)`\n : $isDisabled\n ? 'var(--redsift-color-neutral-white)'\n : 'var(--redsift-color-neutral-white)'};\n &,\n .redsift-icon {\n color: ${$isDisabled\n ? 'var(--redsift-color-neutral-midgrey)'\n : `var(--redsift-color-${$color}-primary)`};\n }\n `\n : $variant === ButtonVariant.unstyled\n ? css`\n background-color: ${$isActive\n ? `var(--redsift-color-${$color}-active)`\n : $isDisabled\n ? 'none'\n : 'none'};\n &,\n .redsift-icon {\n color: ${$isDisabled\n ? 'var(--redsift-color-neutral-midgrey)'\n : `var(--redsift-color-${$color}-primary)`};\n }\n `\n : css`\n background-color: ${$isActive\n ? `var(--redsift-color-${$color}-primary-active)`\n : $isDisabled\n ? 'var(--redsift-color-neutral-lightgrey)'\n : `var(--redsift-color-${$color}-primary)`};\n &,\n .redsift-icon {\n color: ${$isDisabled\n ? 'var(--redsift-color-neutral-midgrey)'\n : 'var(--redsift-color-neutral-white)'};\n }\n `}\n\n ${$variant === ButtonVariant.secondary\n ? css`\n border: 1px solid\n ${$isDisabled\n ? 'var(--redsift-color-neutral-midgrey)'\n : `var(--redsift-color-${$color}-primary)`};\n `\n : ''}\n `};\n\n .redsift-icon.left {\n margin-right: 8px;\n }\n\n .redsift-icon.right {\n margin-left: 8px;\n }\n\n &:hover,\n &:focus-visible {\n outline: none;\n\n ${({ $variant, $color, $isActive, $isDisabled }) => css`\n cursor: ${$isDisabled ? 'default' : 'pointer'};\n\n ${$variant === ButtonVariant.secondary\n ? css`\n background-color: ${$isActive\n ? `var(--redsift-color-${$color}-active-hover)`\n : $isDisabled\n ? 'var(--redsift-color-neutral-white)'\n : `var(--redsift-color-${$color}-hover)`};\n &,\n .redsift-icon {\n color: ${$isDisabled\n ? 'var(--redsift-color-neutral-midgrey)'\n : `var(--redsift-color-${$color}-secondary)`};\n }\n `\n : $variant === ButtonVariant.unstyled\n ? css`\n background-color: ${$isActive\n ? `var(--redsift-color-${$color}-active-hover)`\n : $isDisabled\n ? 'none'\n : `var(--redsift-color-${$color}-hover)`};\n &,\n .redsift-icon {\n color: ${$isDisabled\n ? 'var(--redsift-color-neutral-midgrey)'\n : `var(--redsift-color-${$color}-secondary)`};\n }\n `\n : css`\n background-color: ${$isDisabled\n ? 'var(--redsift-color-neutral-lightgrey)'\n : `var(--redsift-color-${$color}-secondary)`};\n &,\n .redsift-icon {\n color: ${$isDisabled\n ? 'var(--redsift-color-neutral-midgrey)'\n : 'var(--redsift-color-neutral-white)'};\n }\n `}\n\n ${$variant === ButtonVariant.secondary\n ? css`\n border: 1px solid\n ${$isDisabled\n ? 'var(--redsift-color-neutral-midgrey)'\n : `var(--redsift-color-${$color}-primary)`};\n `\n : `\n border: none;\n `}\n `};\n }\n\n ${({ $fullWidth }) =>\n $fullWidth\n ? `\n width: 100%;\n flex-grow: 1;\n\n .redsift-icon.left {\n margin-right: unset;\n }\n\n .redsift-icon.right {\n margin-left: unset;\n }\n `\n : ''}\n`;\n","import enUS from './en-US.json';\nimport frFR from './fr-FR.json';\n\nexport default {\n 'en-US': enUS,\n 'fr-FR': frFR,\n};\n","import { ComponentProps } from 'react';\nimport {\n ColorPalette,\n ProductColorPalette,\n StylingProps,\n ValueOf,\n} from '~/types';\n\n/**\n * Component size.\n */\nexport const SpinnerSize = {\n xsmall: 'xsmall',\n small: 'small',\n medium: 'medium',\n large: 'large',\n} as const;\nexport type SpinnerSize = ValueOf<typeof SpinnerSize>;\n\n/**\n * Component color.\n */\nexport type SpinnerColor =\n | typeof ColorPalette.default\n | typeof ColorPalette.question\n | typeof ColorPalette['no-data']\n | ProductColorPalette;\n\n/**\n * Component props.\n */\nexport interface SpinnerProps\n extends ComponentProps<'img'>,\n Omit<StylingProps, 'height' | 'width'> {\n /** Indicates whether the element is exposed to an accessibility API. */\n 'aria-hidden'?: boolean | 'false' | 'true';\n /** A screen reader only label for the Spinner. */\n 'aria-label'?: string;\n /** Color variant. The product colors are available but should only be used to display the Spinner in the color of another product. To display a Spinner with a color of the current product, use `default`. */\n color?: SpinnerColor;\n /** Spinner size. */\n size?: SpinnerSize;\n}\n\nexport type StyledSpinnerProps = Omit<SpinnerProps, 'color'> & {\n $color?: SpinnerProps['color'];\n $size?: SpinnerProps['size'];\n};\n","import styled from 'styled-components';\nimport { baseStyling } from '~/components/shared';\nimport { StyledSpinnerProps } from './types';\n\nexport const StyledSpinner = styled.img<StyledSpinnerProps>`\n ${baseStyling}\n\n display: inline;\n line-height: 0px;\n vertical-align: -0.125em;\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\nimport { ColorPalette, Comp } from '~/types';\n\nimport { useLocalizedStringFormatter } from '@react-aria/i18n';\nimport intlMessages from './intl';\n\nimport { SpinnerProps, SpinnerSize } from './types';\nimport { StyledSpinner } from './styles';\n\nimport spinnerDefault from './images/spinner-default.svg';\nimport spinnerHardenize from './images/spinner-hardenize.svg';\nimport spinnerNoData from './images/spinner-no-data.svg';\nimport spinnerOndmarc from './images/spinner-ondmarc.svg';\nimport spinnerOndomain from './images/spinner-ondomain.svg';\nimport spinnerOninbox from './images/spinner-oninbox.svg';\nimport spinnerQuestion from './images/spinner-question.svg';\nimport spinnerTools from './images/spinner-tools.svg';\nimport spinnerWebsite from './images/spinner-website.svg';\n\nconst colorToFile = {\n default: spinnerDefault,\n hardenize: spinnerHardenize,\n 'no-data': spinnerNoData,\n ondmarc: spinnerOndmarc,\n ondomain: spinnerOndomain,\n oninbox: spinnerOninbox,\n question: spinnerQuestion,\n tools: spinnerTools,\n website: spinnerWebsite,\n};\n\nconst COMPONENT_NAME = 'Spinner';\nconst CLASSNAME = 'redsift-shield';\nconst DEFAULT_PROPS: Partial<SpinnerProps> = {\n color: ColorPalette.default,\n size: SpinnerSize.medium,\n};\n\nconst sizeToDimension = (\n size: SpinnerSize\n): { width: number; height: number } => {\n switch (size) {\n case SpinnerSize.xsmall:\n return { width: 15, height: 15 };\n case SpinnerSize.small:\n return { width: 24, height: 24 };\n case SpinnerSize.large:\n return { width: 56, height: 56 };\n case SpinnerSize.medium:\n default:\n return { width: 40, height: 40 };\n }\n};\n\n/**\n * The Spinner component.\n */\nexport const Spinner: Comp<SpinnerProps, HTMLImageElement> = forwardRef(\n (props, ref) => {\n const {\n 'aria-hidden': ariaHidden,\n 'aria-label': ariaLabel,\n className,\n color,\n size,\n ...forwardedProps\n } = props;\n\n const { width, height } = sizeToDimension(size!);\n\n const stringFormatter = useLocalizedStringFormatter(intlMessages);\n\n return (\n <StyledSpinner\n alt={stringFormatter.format('loading')}\n {...forwardedProps}\n aria-hidden={ariaLabel ? (ariaHidden ? ariaHidden : undefined) : true}\n aria-label={ariaLabel}\n className={classNames(Spinner.className, className)}\n height={height}\n ref={ref as RefObject<HTMLImageElement>}\n src={colorToFile[color!]}\n width={width}\n $color={color}\n $size={size}\n />\n );\n }\n);\nSpinner.className = CLASSNAME;\nSpinner.defaultProps = DEFAULT_PROPS;\nSpinner.displayName = COMPONENT_NAME;\n","import React, { forwardRef, RefObject, useRef } from 'react';\nimport classNames from 'classnames';\nimport { useButton } from '@react-aria/button';\nimport { AriaButtonProps } from '@react-types/button';\nimport { ColorPalette, Comp } from '~/types';\nimport { Icon } from '~/components/icon';\nimport { StyledButton } from './styles';\nimport { ButtonProps, ButtonVariant } from './types';\nimport { Spinner } from '~/components/spinner';\n\nconst COMPONENT_NAME = 'Button';\nconst CLASSNAME = 'redsift-button';\nconst DEFAULT_PROPS: Partial<ButtonProps> = {\n color: ColorPalette.default,\n variant: ButtonVariant.primary,\n};\n\n/**\n * The Button is a semantic button that looks like a button.\n *\n * For a semantic link that looks like a button, please use the ButtonLink component.\n * For a semantic link that looks like a link, please use the Link component.\n * For a semantic button that looks like a link, please use the LinkButton component.\n */\nexport const Button: Comp<ButtonProps, HTMLButtonElement> = forwardRef(\n (props, ref) => {\n const buttonRef = ref || useRef<HTMLButtonElement>();\n const { buttonProps } = useButton(\n {\n ...props,\n isDisabled: props.isLoading || props.isDisabled || props.disabled,\n preventFocusOnPress: true,\n } as AriaButtonProps<'button'>,\n buttonRef as RefObject<HTMLButtonElement>\n );\n\n const {\n children,\n className,\n color,\n disabled,\n fullWidth,\n isActive,\n isDisabled,\n isLoading,\n leftIcon,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n onPress,\n rightIcon,\n variant,\n ...forwardedProps\n } = props;\n\n return (\n <StyledButton\n {...forwardedProps}\n {...buttonProps}\n $color={color}\n $fullWidth={fullWidth}\n $isActive={isActive}\n $isDisabled={isLoading || isDisabled || disabled}\n $variant={variant}\n aria-disabled={isLoading || isDisabled || disabled}\n className={classNames(Button.className, className)}\n disabled={isLoading || isDisabled || disabled}\n ref={buttonRef as RefObject<HTMLButtonElement>}\n >\n {leftIcon ? (\n <Icon icon={leftIcon} aria-hidden=\"true\" className=\"left\" />\n ) : null}\n {isLoading ? <Spinner size=\"small\" color=\"no-data\" /> : null}\n {children}\n {rightIcon ? (\n <Icon icon={rightIcon} aria-hidden=\"true\" className=\"right\" />\n ) : null}\n </StyledButton>\n );\n }\n);\nButton.className = CLASSNAME;\nButton.defaultProps = DEFAULT_PROPS;\nButton.displayName = COMPONENT_NAME;\n","import styled, { css } from 'styled-components';\nimport { StyledButton } from '~/components/button';\nimport { IconButtonVariant, StyledIconButtonProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledIconButton = styled(StyledButton)<StyledIconButtonProps>`\n ${({ $variant }) => css`\n padding: ${$variant === IconButtonVariant.secondary ? '7px' : '8px'};\n `};\n`;\n","import React, { forwardRef, RefObject, useRef } from 'react';\nimport classNames from 'classnames';\nimport { useButton } from '@react-aria/button';\nimport { AriaButtonProps } from '@react-types/button';\nimport { ColorPalette, Comp } from '~/types';\nimport { Icon } from '~/components/icon';\nimport { warnIfNoAccessibleLabelFound } from '~/utils/warnIfNoAccessibleLabelFound';\nimport { StyledIconButton } from './styles';\nimport { IconButtonProps, IconButtonVariant } from './types';\n\nconst COMPONENT_NAME = 'IconButton';\nconst CLASSNAME = 'redsift-icon-button';\nconst DEFAULT_PROPS: Partial<IconButtonProps> = {\n color: ColorPalette.default,\n variant: IconButtonVariant.unstyled,\n};\n\n/**\n * The Icon Button is a component that contains only one icon as a child, without text.\n *\n * This component should use aria-label, aria-labelledby or aria-describedby to make this\n * component usable with a screen reader.\n */\nexport const IconButton: Comp<IconButtonProps, HTMLButtonElement> = forwardRef(\n (props, ref) => {\n const buttonRef = ref || useRef<HTMLButtonElement>();\n const { buttonProps } = useButton(\n {\n ...props,\n isDisabled: props.isDisabled || props.disabled,\n preventFocusOnPress: true,\n } as AriaButtonProps<'button'>,\n buttonRef as RefObject<HTMLButtonElement>\n );\n\n const {\n className,\n color,\n disabled,\n icon,\n isActive,\n isDisabled,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n onPress,\n variant,\n ...forwardedProps\n } = props;\n\n warnIfNoAccessibleLabelFound(props);\n\n return (\n <StyledIconButton\n {...forwardedProps}\n {...buttonProps}\n $color={isDisabled || disabled ? undefined : color}\n $isActive={isActive}\n $isDisabled={isDisabled || disabled}\n $variant={variant}\n aria-disabled={isDisabled || disabled}\n className={classNames(IconButton.className, className)}\n disabled={isDisabled || disabled}\n ref={buttonRef as RefObject<HTMLButtonElement>}\n >\n <Icon icon={icon} color={isDisabled || disabled ? undefined : color} />\n </StyledIconButton>\n );\n }\n);\nIconButton.className = CLASSNAME;\nIconButton.defaultProps = DEFAULT_PROPS;\nIconButton.displayName = COMPONENT_NAME;\n","import styled, { css } from 'styled-components';\nimport { baseStyling } from '~/components/shared';\nimport { StyledAlertProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledAlert = styled.div<StyledAlertProps>`\n ${baseStyling}\n\n padding: 16px;\n ${({ $hasTitle, $isClosable, $isClosed, $variant }) => css`\n display: ${!$isClosed ? 'block' : 'none'};\n background-color: var(--redsift-color-${$variant}-hover);\n\n .redsift-alert__header {\n h5 {\n line-height: 26px;\n }\n }\n\n .redsift-alert-header__icon-button {\n padding: 0px;\n .redsift-icon {\n color: var(--redsift-color-neutral-black);\n }\n\n &:hover,\n &:focus-visible {\n background-color: var(--redsift-color-${$variant}-active);\n }\n }\n\n .redsift-alert__content {\n margin-top: ${$hasTitle ? '8px' : '-24px'};\n margin-left: 38px;\n ${$isClosable\n ? css`\n margin-right: 24px;\n `\n : ''};\n }\n `}\n`;\n","import { ComponentProps } from 'react';\nimport { ValueOf } from '~/types';\nimport { StylingProps } from '~/types';\n\n/**\n * Component variant.\n */\nexport const HeadingVariant = {\n h1: 'h1',\n h2: 'h2',\n h3: 'h3',\n h4: 'h4',\n h5: 'h5',\n} as const;\nexport type HeadingVariant = ValueOf<typeof HeadingVariant>;\n\n/**\n * Component props.\n */\nexport interface HeadingProps extends ComponentProps<'span'>, StylingProps {\n /** Override component. */\n as: HeadingVariant;\n /** Whether the text will truncate with a text overflow ellipsis or wrap. */\n noWrap?: boolean;\n}\n\nexport type StyledHeadingProps = Omit<HeadingProps, 'color' | 'noWrap'> & {\n $noWrap: HeadingProps['noWrap'];\n};\n","import styled, { css } from 'styled-components';\nimport { baseStyling } from '~/components/shared';\nimport { StyledHeadingProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledHeading = styled.span<StyledHeadingProps>`\n margin: 0;\n padding: 0;\n border: 0;\n font-size: 100%;\n font: inherit;\n vertical-align: baseline;\n\n ${baseStyling}\n\n ${({ as }) =>\n as === 'h1'\n ? css`\n color: var(--redsift-color-neutral-black);\n font-family: var(--redsift-typography-h1-font-family);\n font-size: var(--redsift-typography-h1-font-size);\n font-weight: var(--redsift-typography-h1-font-weight);\n line-height: var(--redsift-typography-h1-line-height);\n text-transform: var(--redsift-typography-h1-text-transform);\n `\n : as === 'h2'\n ? css`\n color: var(--redsift-color-neutral-black);\n font-family: var(--redsift-typography-h2-font-family);\n font-size: var(--redsift-typography-h2-font-size);\n font-weight: var(--redsift-typography-h2-font-weight);\n line-height: var(--redsift-typography-h2-line-height);\n `\n : as === 'h3'\n ? css`\n color: var(--redsift-color-neutral-black);\n font-family: var(--redsift-typography-h3-font-family);\n font-size: var(--redsift-typography-h3-font-size);\n font-weight: var(--redsift-typography-h3-font-weight);\n line-height: var(--redsift-typography-h3-line-height);\n `\n : as === 'h4'\n ? css`\n color: var(--redsift-color-neutral-black);\n font-family: var(--redsift-typography-h4-font-family);\n font-size: var(--redsift-typography-h4-font-size);\n font-weight: var(--redsift-typography-h4-font-weight);\n line-height: var(--redsift-typography-h4-line-height);\n `\n : css`\n color: var(--redsift-color-neutral-black);\n font-family: var(--redsift-typography-h5-font-family);\n font-size: var(--redsift-typography-h5-font-size);\n font-weight: var(--redsift-typography-h5-font-weight);\n line-height: var(--redsift-typography-h5-line-height);\n `}\n\n ${({ $noWrap }) =>\n $noWrap\n ? css`\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n `\n : css`\n word-break: break-word;\n `}\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\nimport { Comp } from '~/types';\nimport { StyledHeading } from './styles';\nimport { HeadingProps } from './types';\n\nconst COMPONENT_NAME = 'Heading';\nconst CLASSNAME = 'redsift-heading';\nconst DEFAULT_PROPS: Partial<HeadingProps> = {};\n\n/**\n * The Heading component.\n */\nexport const Heading: Comp<HeadingProps, HTMLDivElement> = forwardRef(\n (props, ref) => {\n const { as, children, className, noWrap, ...forwardedProps } = props;\n\n return (\n <StyledHeading\n as={as}\n {...forwardedProps}\n className={classNames(Heading.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n $noWrap={noWrap}\n >\n {children}\n </StyledHeading>\n );\n }\n);\nHeading.className = CLASSNAME;\nHeading.defaultProps = DEFAULT_PROPS;\nHeading.displayName = COMPONENT_NAME;\n","import styled from 'styled-components';\nimport { baseFlexbox, baseStyling } from '~/components/shared';\nimport { StyledFlexboxProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledFlexbox = styled.div<StyledFlexboxProps>`\n display: ${({ inline }) => (inline ? 'inline-flex' : 'flex')};\n\n ${baseStyling}\n ${baseFlexbox}\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\nimport { Comp } from '~/types';\nimport { StyledFlexbox } from './styles';\nimport { FlexboxProps } from './types';\n\nconst COMPONENT_NAME = 'Flexbox';\nconst CLASSNAME = 'redsift-flex-box';\nconst DEFAULT_PROPS: Partial<FlexboxProps> = {\n gap: '16px',\n};\n\n/**\n * The Flexbox component.\n */\nexport const Flexbox: Comp<FlexboxProps, HTMLDivElement> = forwardRef(\n (props, ref) => {\n const { children, className, ...forwardedProps } = props;\n\n return (\n <StyledFlexbox\n {...forwardedProps}\n className={classNames(Flexbox.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n >\n {children}\n </StyledFlexbox>\n );\n }\n);\nFlexbox.className = CLASSNAME;\nFlexbox.defaultProps = DEFAULT_PROPS;\nFlexbox.displayName = COMPONENT_NAME;\n","import React, {\n forwardRef,\n RefObject,\n useCallback,\n useEffect,\n useState,\n} from 'react';\nimport classNames from 'classnames';\n\nimport { useLocalizedStringFormatter } from '@react-aria/i18n';\nimport intlMessages from './intl';\n\nimport {\n mdiAlert,\n mdiCheckCircle,\n mdiClose,\n mdiInformation,\n} from '@redsift/icons';\nimport { IconButton } from '~/components/icon-button';\nimport { ColorPalette, Comp } from '~/types';\nimport { StyledAlert } from './styles';\nimport { AlertProps, AlertVariant } from './types';\nimport { Icon } from '~/components/icon';\nimport { Heading } from '~/components/heading';\nimport { Flexbox } from '~/components/flexbox';\n\nconst COMPONENT_NAME = 'Alert';\nconst CLASSNAME = 'redsift-alert';\nconst DEFAULT_PROPS: Partial<AlertProps> = {\n variant: 'info',\n};\n\nconst getVariant = (variant: AlertVariant) => {\n switch (variant) {\n case AlertVariant.info:\n default:\n return {\n color: ColorPalette.info,\n icon: mdiInformation,\n };\n case AlertVariant.error:\n return {\n color: ColorPalette.error,\n icon: mdiInformation,\n };\n case AlertVariant.success:\n return {\n color: ColorPalette.success,\n icon: mdiCheckCircle,\n };\n case AlertVariant.warning:\n return {\n color: ColorPalette.warning,\n icon: mdiAlert,\n };\n }\n};\n\n/**\n * The Alert component.\n */\nexport const Alert: Comp<AlertProps, HTMLDivElement> = forwardRef(\n (props, ref) => {\n const {\n children,\n className,\n isClosable,\n isClosed: propsIsClosed,\n onClose,\n title,\n variant,\n ...forwardedProps\n } = props;\n\n const stringFormatter = useLocalizedStringFormatter(intlMessages);\n\n const { color, icon } = getVariant(variant!);\n const [isClosed, setIsClosed] = useState(propsIsClosed);\n\n useEffect(() => {\n setIsClosed(propsIsClosed);\n }, [propsIsClosed]);\n\n const handleClose = useCallback(() => {\n if (onClose) {\n onClose(true);\n }\n setIsClosed(true);\n }, [onClose]);\n\n return (\n <StyledAlert\n {...forwardedProps}\n className={classNames(Alert.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n $hasTitle={Boolean(title)}\n $isClosable={isClosable}\n $isClosed={isClosed}\n $variant={variant}\n >\n <Flexbox\n className={`${Alert.className}__header`}\n justifyContent=\"space-between\"\n >\n <Flexbox\n className={`${Alert.className}-header__title`}\n gap=\"14px\"\n alignItems=\"flex-start\"\n >\n <Icon icon={icon} color={color} />\n {title ? <Heading as=\"h5\">{title}</Heading> : null}\n </Flexbox>\n\n {isClosable ? (\n <IconButton\n aria-label={stringFormatter.format('close')}\n className={`${Alert.className}-header__icon-button`}\n icon={mdiClose}\n onPress={handleClose}\n />\n ) : null}\n </Flexbox>\n\n {children ? (\n <div className={`${Alert.className}__content`}>{children}</div>\n ) : null}\n </StyledAlert>\n );\n }\n);\nAlert.className = CLASSNAME;\nAlert.defaultProps = DEFAULT_PROPS;\nAlert.displayName = COMPONENT_NAME;\n","import enUS from './en-US.json';\nimport frFR from './fr-FR.json';\n\nexport default {\n 'en-US': enUS,\n 'fr-FR': frFR,\n};\n","import React from 'react';\nimport { AppContainerState } from './types';\n\nexport const AppContainerContext =\n React.createContext<AppContainerState | null>(null);\n","import { useState, useEffect } from 'react';\n\nexport const useIsLoaded = () => {\n const [isLoaded, setIsLoaded] = useState(false);\n\n useEffect(() => {\n setIsLoaded(true);\n });\n\n return {\n isLoaded,\n };\n};\n","import styled, { css } from 'styled-components';\nimport { StyledAppBarProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledAppBar = styled.header<StyledAppBarProps>`\n align-content: center;\n align-items: center;\n background-color: var(--redsift-color-default-primary);\n color: var(--redsift-color-neutral-white);\n display: flex;\n flex-direction: row;\n height: 72px;\n justify-content: space-between;\n left: 0;\n position: fixed;\n top: 0;\n z-index: 1;\n\n ${({ $isSidePanelCollapsed }) =>\n !$isSidePanelCollapsed\n ? css`\n transform: translate(240px);\n width: calc(100% - 240px);\n `\n : `\n transform: translate(0px);\n width: 100%;\n `}\n\n ${({ $isLoaded }) =>\n $isLoaded\n ? css`\n transition: transform 0.25s ease-out, width 0.25s ease-out;\n `\n : ''}\n\n h1 {\n margin: unset;\n padding: unset;\n color: var(--redsift-color-neutral-white);\n }\n\n .redsift-app-bar__left {\n align-content: center;\n align-items: center;\n display: inline-flex;\n flex-direction: row;\n gap: 8px;\n justify-content: center;\n margin-left: 24px;\n }\n\n .redsift-app-bar-left__expand-button,\n .redsift-app-bar-left__collapse-button {\n margin-left: -8px;\n }\n\n .redsift-app-bar__right {\n display: inline-flex;\n margin: 16px;\n }\n`;\n","import React, { forwardRef, RefObject, useContext } from 'react';\nimport classNames from 'classnames';\n\nimport { useLocalizedStringFormatter } from '@react-aria/i18n';\nimport intlMessages from './intl';\n\nimport { mdiMenu, mdiMenuOpen } from '@redsift/icons';\nimport { Comp } from '~/types';\nimport { IconButton, IconButtonVariant } from '~/components/icon-button';\nimport { AppContainerContext } from '~/components/app-container/context';\nimport { useIsLoaded } from '~/hooks/useIsLoaded';\nimport { StyledAppBar } from './styles';\nimport { AppBarProps } from './types';\nimport { Heading } from '~/components/heading';\n\nconst COMPONENT_NAME = 'AppBar';\nconst CLASSNAME = 'redsift-app-bar';\nconst DEFAULT_PROPS: Partial<AppBarProps> = {};\n\n/**\n * The AppBar component.\n */\nexport const AppBar: Comp<AppBarProps, HTMLHeadingElement> = forwardRef(\n (props, ref) => {\n const {\n children,\n className,\n collapseIconButtonProps,\n collapseIconButtonRef,\n expandIconButtonProps,\n expandIconButtonRef,\n fallbackTitle,\n title: propsTitle,\n ...forwardedProps\n } = props;\n\n const { isLoaded } = useIsLoaded();\n const appContainerState = useContext(AppContainerContext);\n\n const stringFormatter = useLocalizedStringFormatter(intlMessages);\n\n return (\n <StyledAppBar\n {...forwardedProps}\n $isLoaded={isLoaded}\n $isSidePanelCollapsed={\n appContainerState ? appContainerState.isSidePanelCollapsed : true\n }\n className={classNames(AppBar.className, className)}\n ref={ref as RefObject<HTMLHeadingElement>}\n >\n <div className={`${AppBar.className}__left`}>\n {appContainerState ? (\n <>\n {appContainerState.isSidePanelCollapsed ? (\n <IconButton\n className={`${AppBar.className}-left__expand-button`}\n {...expandIconButtonProps}\n aria-label={stringFormatter.format('expand')}\n icon={mdiMenu}\n onPress={appContainerState.expandSidePanel}\n ref={collapseIconButtonRef as RefObject<HTMLButtonElement>}\n variant={IconButtonVariant.primary}\n />\n ) : (\n <IconButton\n className={`${AppBar.className}-left__collapse-button`}\n {...collapseIconButtonProps}\n aria-label={stringFormatter.format('collapse')}\n icon={mdiMenuOpen}\n onPress={appContainerState.collapseSidePanel}\n ref={expandIconButtonRef as RefObject<HTMLButtonElement>}\n variant={IconButtonVariant.primary}\n />\n )}\n </>\n ) : null}\n {propsTitle && typeof propsTitle !== 'string' ? (\n <>{propsTitle}</>\n ) : typeof propsTitle === 'string' ? (\n <Heading as=\"h1\">{propsTitle}</Heading>\n ) : appContainerState && appContainerState.title ? (\n <Heading as=\"h1\">{appContainerState.title}</Heading>\n ) : fallbackTitle ? (\n <Heading as=\"h1\">{fallbackTitle}</Heading>\n ) : null}\n </div>\n <div className={`${AppBar.className}__right`}>{children}</div>\n </StyledAppBar>\n );\n }\n);\nAppBar.className = CLASSNAME;\nAppBar.defaultProps = DEFAULT_PROPS;\nAppBar.displayName = COMPONENT_NAME;\n","import styled, { css } from 'styled-components';\nimport { ProductColorPalette } from '~/types';\nimport { StyledAppContainerProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledAppContainer = styled.div<StyledAppContainerProps>`\n ${({ $productTheme }) =>\n $productTheme &&\n Object.keys(ProductColorPalette).indexOf($productTheme) !== -1\n ? css`\n --redsift-color-default-primary: var(\n --redsift-color-${$productTheme}-primary\n );\n --redsift-color-default-secondary: var(\n --redsift-color-${$productTheme}-secondary\n );\n --redsift-color-default-hover: var(\n --redsift-color-${$productTheme}-hover\n );\n --redsift-color-default-active: var(\n --redsift-color-${$productTheme}-active\n );\n --redsift-color-default-active-hover: var(\n --redsift-color-${$productTheme}-active-hover\n );\n --redsift-color-default-primary-active: var(\n --redsift-color-${$productTheme}-primary-active\n );\n `\n : ''}\n`;\n","import React, { forwardRef, RefObject, useMemo, useState } from 'react';\nimport { I18nProvider } from '@react-aria/i18n';\nimport classNames from 'classnames';\nimport { Comp } from '~/types';\nimport { AppContainerProps } from './types';\nimport { AppContainerContext } from './context';\nimport { StyledAppContainer } from './styles';\nimport { partitionComponents } from '~/utils/partitionComponents';\nimport { isComponent } from '~/utils/isComponent';\n\nconst COMPONENT_NAME = 'AppContainer';\nconst CLASSNAME = 'redsift-app-container';\nconst DEFAULT_PROPS: Partial<AppContainerProps> = {};\n\n/**\n * The AppContainer component.\n */\nexport const AppContainer: Comp<AppContainerProps, HTMLDivElement> = forwardRef(\n (props, ref) => {\n const { children, className, locale, productTheme, ...forwardedProps } =\n props;\n\n const { hasAppBar, hasAppSidePanel, hasAppContent } = useMemo(() => {\n const [[appBar], [appSidePanel], [appContent]] = partitionComponents(\n React.Children.toArray(children),\n [\n isComponent('AppBar'),\n isComponent('AppSidePanel'),\n isComponent('AppContent'),\n ]\n );\n\n return {\n hasAppBar: Boolean(appBar),\n hasAppSidePanel: Boolean(appSidePanel),\n hasAppContent: Boolean(appContent),\n };\n }, [children]);\n\n if (\n (hasAppBar || hasAppSidePanel || hasAppContent) &&\n !(hasAppBar && hasAppSidePanel && hasAppContent)\n ) {\n console.warn(\n 'Missing AppSidePanel, AppBar or AppContent inside AppContainer. These components are meant to work together.'\n );\n }\n\n const [isSidePanelCollapsed, setIsSidePanelCollapsed] =\n useState<boolean>(false);\n const [title, setTitle] = useState<string | undefined>();\n\n const state = {\n collapseSidePanel() {\n setIsSidePanelCollapsed(true);\n },\n expandSidePanel() {\n setIsSidePanelCollapsed(false);\n },\n hasAppBar,\n hasAppSidePanel,\n hasAppContent,\n setTitle(title: string) {\n setTitle(title);\n },\n isSidePanelCollapsed,\n title,\n };\n\n return (\n <StyledAppContainer\n {...forwardedProps}\n $productTheme={productTheme}\n className={classNames(AppContainer.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n >\n <AppContainerContext.Provider value={state}>\n <I18nProvider locale={locale}>{children}</I18nProvider>\n </AppContainerContext.Provider>\n </StyledAppContainer>\n );\n }\n);\nAppContainer.className = CLASSNAME;\nAppContainer.defaultProps = DEFAULT_PROPS;\nAppContainer.displayName = COMPONENT_NAME;\n","import styled, { css } from 'styled-components';\nimport { ProductColorPalette } from '~/types';\nimport { baseContainer } from '~/components/shared';\nimport { StyledAppContentProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledAppContent = styled.main<StyledAppContentProps>`\n ${baseContainer}\n\n box-sizing: border-box;\n margin-top: 72px;\n min-height: calc(100vh - 72px);\n padding: 16px 32px;\n\n @media screen and (max-width: 768px) {\n padding: 0px;\n }\n\n ${({ $isSidePanelCollapsed }) =>\n !$isSidePanelCollapsed\n ? css`\n transform: translate(240px);\n width: calc(100% - 240px);\n `\n : `\n transform: translate(0px);\n width: 100%;\n `}\n\n ${({ $isLoaded }) =>\n $isLoaded\n ? css`\n transition: transform 0.25s ease-out, width 0.25s ease-out;\n `\n : ''}\n\n ${({ $productTheme }) =>\n $productTheme &&\n Object.keys(ProductColorPalette).indexOf($productTheme) !== -1\n ? css`\n --redsift-color-default-primary: var(\n --redsift-color-${$productTheme}-primary\n );\n --redsift-color-default-secondary: var(\n --redsift-color-${$productTheme}-secondary\n );\n --redsift-color-default-hover: var(\n --redsift-color-${$productTheme}-hover\n );\n --redsift-color-default-active: var(\n --redsift-color-${$productTheme}-active\n );\n --redsift-color-default-active-hover: var(\n --redsift-color-${$productTheme}-active-hover\n );\n --redsift-color-default-primary-active: var(\n --redsift-color-${$productTheme}-primary-active\n );\n `\n : ''}\n`;\n","import React, { forwardRef, RefObject, useContext } from 'react';\nimport classNames from 'classnames';\nimport { Comp } from '~/types';\nimport { AppContainerContext } from '~/components/app-container/context';\nimport { useIsLoaded } from '~/hooks/useIsLoaded';\nimport { StyledAppContent } from './styles';\nimport { AppContentProps } from './types';\n\nconst COMPONENT_NAME = 'AppContent';\nconst CLASSNAME = 'redsift-app-content';\nconst DEFAULT_PROPS: Partial<AppContentProps> = {};\n\n/**\n * The AppContent component.\n */\nexport const AppContent: Comp<AppContentProps, HTMLElement> = forwardRef(\n (props, ref) => {\n const { children, className, productTheme, ...forwardedProps } = props;\n\n const { isLoaded } = useIsLoaded();\n const appContainerState = useContext(AppContainerContext);\n\n return (\n <StyledAppContent\n {...forwardedProps}\n $isLoaded={isLoaded}\n $isSidePanelCollapsed={\n appContainerState ? appContainerState.isSidePanelCollapsed : true\n }\n $productTheme={productTheme}\n className={classNames(AppContent.className, className)}\n ref={ref as RefObject<HTMLElement>}\n >\n {children}\n </StyledAppContent>\n );\n }\n);\nAppContent.className = CLASSNAME;\nAppContent.defaultProps = DEFAULT_PROPS;\nAppContent.displayName = COMPONENT_NAME;\n","import styled from 'styled-components';\nimport { StyledAppSidePanelProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledAppSidePanel = styled.div<StyledAppSidePanelProps>`\n align-items: center;\n background-color: var(--redsift-side-navigation-color-background);\n flex-direction: column;\n height: 100%;\n left: 0px;\n overflow: hidden;\n position: fixed;\n top: 0;\n transform: ${({ $isCollapsed }) =>\n !$isCollapsed ? 'translate(0px)' : 'translate(-240px)'};\n transition: transform 0.25s ease-out, visibility 0.25s ease-out;\n visibility: ${({ $isCollapsed }) => (!$isCollapsed ? 'visible' : 'hidden')};\n width: 240px;\n z-index: 1;\n\n .redsift-app-side-panel__header {\n align-items: center;\n box-sizing: border-box;\n display: flex;\n flex-direction: row;\n gap: 8px;\n justify-content: space-between;\n padding: 16px;\n width: 100%;\n height: 72px;\n }\n\n .redsift-app-side-panel__header > img {\n max-height: 36px;\n max-width: 160px;\n }\n\n .redsift-app-side-panel__featured {\n box-sizing: border-box;\n margin-bottom: 16px;\n padding: 0px 16px;\n width: 100%;\n }\n\n [dir='rtl'] & {\n left: unset;\n right: 0px;\n transform: unset;\n transition: unset;\n }\n`;\n","import React, { forwardRef, RefObject, useContext } from 'react';\nimport classNames from 'classnames';\nimport { Comp } from '~/types';\nimport { AppContainerContext } from '~/components/app-container/context';\nimport { StyledAppSidePanel } from './styles';\nimport { AppSidePanelProps } from './types';\n\nconst COMPONENT_NAME = 'AppSidePanel';\nconst CLASSNAME = 'redsift-app-side-panel';\nconst DEFAULT_PROPS: Partial<AppSidePanelProps> = {};\n\n/**\n * The AppSidePanel component.\n */\nexport const AppSidePanel: Comp<AppSidePanelProps, HTMLDivElement> = forwardRef(\n (props, ref) => {\n const {\n children,\n className,\n featuredElements,\n isCollapsed = false,\n logo,\n ...forwardedProps\n } = props;\n\n const appContainerState = useContext(AppContainerContext);\n\n return (\n <StyledAppSidePanel\n {...forwardedProps}\n $isCollapsed={\n !!(isCollapsed || appContainerState?.isSidePanelCollapsed)\n }\n className={classNames(AppSidePanel.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n >\n {logo || appContainerState?.hasAppBar ? (\n <div className={`${AppSidePanel.className}__header`}>\n {logo ? (\n React.isValidElement(logo) ? (\n logo\n ) : (\n <img src={logo.src} alt={logo.alt} />\n )\n ) : null}\n </div>\n ) : null}\n {featuredElements ? (\n <div className={`${AppSidePanel.className}__featured`}>\n {featuredElements}\n </div>\n ) : null}\n {children}\n </StyledAppSidePanel>\n );\n }\n);\nAppSidePanel.className = CLASSNAME;\nAppSidePanel.defaultProps = DEFAULT_PROPS;\nAppSidePanel.displayName = COMPONENT_NAME;\n","import { ComponentProps, MutableRefObject } from 'react';\nimport { IconProps } from '~/components/icon';\n\n/**\n * Context props.\n */\nexport type SideNavigationMenuContextProps = {\n menuItems: Set<HTMLAnchorElement | HTMLButtonElement>;\n};\n\n/**\n * Reducer props.\n */\nexport type SideNavigationMenuReducerState = {\n isExpanded: boolean;\n currentIndex: number;\n previousIndex: number;\n};\n\nexport enum SideNavigationMenuReducerActionType {\n Expand = 'expand',\n Collapse = 'collapse',\n Move = 'move',\n}\n\nexport type SideNavigationMenuReducerAction = {\n type: SideNavigationMenuReducerActionType;\n index?: number;\n};\n\n/**\n * Component props.\n */\nexport interface SideNavigationMenuProps extends ComponentProps<'div'> {\n /** Custom props to pass to the button. */\n buttonProps?: ComponentProps<'button'>;\n /** Custom ref to pass to the button. */\n buttonRef?: MutableRefObject<HTMLButtonElement>;\n /** Whether or not the menu contains children that have a badge. */\n hasBadge?: boolean;\n /**\n * Icon path data (`d` property of the `path` SVG element).<br />\n * See <a href=\"https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths\">https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths</a>.<br />\n * Recommended path data come from mdi/js.<br />\n * See <a href=\"https://www.npmjs.com/package/@mdi/js\">https://www.npmjs.com/package/@mdi/js</a>.\n */\n icon?: string;\n /** Custom props to pass to the Icon component. */\n iconProps?: Omit<IconProps, 'icon'>;\n /** Custom ref to pass to the Icon component. */\n iconRef?: MutableRefObject<HTMLElement>;\n /** Whether the component is disabled or not. */\n isDisabled?: boolean;\n /** Whether the menu is expanded or not. */\n isExpanded?: boolean;\n /** Custom props to pass to the menu. */\n menuProps?: ComponentProps<'ul'>;\n /** Custom ref to pass to the menu. */\n menuRef?: MutableRefObject<HTMLUListElement>;\n /** Whether the component should hide icons or not. */\n withoutIcons?: boolean;\n}\n\nexport type StyledSideNavigationMenuProps = Omit<\n SideNavigationMenuProps,\n 'isDisabled' | 'isExpanded' | 'withoutIcons'\n> & {\n $isDisabled: SideNavigationMenuProps['isDisabled'];\n $isExpanded: SideNavigationMenuProps['isExpanded'];\n $withoutIcons: SideNavigationMenuProps['withoutIcons'];\n};\n","import React from 'react';\nimport { SideNavigationMenuBarContextProps } from './types';\n\nexport const SideNavigationMenuBarContext =\n React.createContext<SideNavigationMenuBarContextProps>(null!);\n","import React from 'react';\nimport { SideNavigationMenuContextProps } from './types';\n\nexport const SideNavigationMenuContext =\n React.createContext<SideNavigationMenuContextProps>(null!);\n","import styled, { css } from 'styled-components';\nimport { StyledSideNavigationMenuItemProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledSideNavigationMenuItem = styled.a<StyledSideNavigationMenuItemProps>`\n /**\n * Common style\n */\n ${({ $isDisabled }) =>\n !$isDisabled\n ? css`\n color: var(--redsift-side-navigation-color-menu-item-text-resting);\n `\n : css`\n color: var(--redsift-side-navigation-color-menu-item-text-disabled);\n `}\n align-items: center;\n display: flex;\n font-family: var(--redsift-typography-body-font-family);\n font-size: var(--redsift-typography-body-font-size);\n font-weight: var(--redsift-typography-body-font-weight);\n line-height: var(--redsift-typography-body-line-height);\n text-decoration: none;\n\n &:hover,\n &:focus-visible {\n outline: none;\n\n ${({ $isDisabled }) =>\n !$isDisabled\n ? css`\n background-color: var(\n --redsift-side-navigation-color-menu-item-background-hover\n );\n color: var(--redsift-side-navigation-color-menu-item-text-hover);\n `\n : ''}\n }\n\n ${({ $isSecondLevel, $withoutIcons }) =>\n !$isSecondLevel\n ? css`\n /**\n * First-level items\n */\n\n background-color: var(--redsift-side-navigation-color-background);\n padding: 8px 16px;\n\n .redsift-icon.first {\n padding-right: 16px;\n box-sizing: unset;\n }\n\n span {\n padding-right: 12px;\n }\n\n [dir='rtl'] & {\n padding-right: unset;\n\n .redsift-icon.first {\n padding-left: 16px;\n padding-right: unset;\n }\n\n span {\n padding-left: 12px;\n padding-right: unset;\n }\n }\n `\n : `\n /**\n * Second-level items\n */\n\n background-color: var(--redsift-side-navigation-color-menu-item-background-secondary);\n padding-bottom: 8px;\n padding-left: ${!$withoutIcons ? '52px' : '16px'};\n padding-right: 8px;\n padding-top: 8px;\n\n span {\n padding-right: 12px;\n }\n\n [dir=\"rtl\"] & {\n padding-left: unset;\n padding-right: 16px;\n\n span {\n padding-left: 12px;\n padding-right: unset;\n }\n }\n `}\n\n ${({ $isCurrent, $isDisabled }) =>\n $isCurrent && !$isDisabled\n ? css`\n background-color: var(\n --redsift-side-navigation-color-menu-item-background-active\n );\n box-shadow: inset -4px 0px 0px var(--redsift-side-navigation-color-menu-item-active);\n `\n : ''}\n`;\n","import { ComponentProps } from 'react';\nimport {\n ColorPalette,\n ProductColorPalette,\n StylingProps,\n ValueOf,\n} from '~/types';\n\n/**\n * Component variant.\n */\nexport const BadgeVariant = {\n dot: 'dot',\n standard: 'standard',\n} as const;\nexport type BadgeVariant = ValueOf<typeof BadgeVariant>;\n\n/**\n * Component props.\n */\nexport interface BadgeProps\n extends ComponentProps<'div'>,\n Omit<StylingProps, 'width' | 'height'> {\n /** Whether the badge should automatically break content. */\n autoBreak?: boolean;\n /** Color variant. The product colors are available but should only be used to display the Badge in the color of another product. To display a Badge with a color of the current product, use `default`. */\n color?: ColorPalette | ProductColorPalette;\n /** Whether the Badge has its colors reversed or not. */\n isReversed?: boolean;\n /** Badge variant. */\n variant?: BadgeVariant;\n}\n\nexport type StyledBadgeProps = Omit<\n BadgeProps,\n 'color' | 'variant' | 'isReversed' | 'autoBreak'\n> & {\n $autoBreak: BadgeProps['autoBreak'];\n $color: BadgeProps['color'];\n $isReversed: BadgeProps['isReversed'];\n $variant: BadgeProps['variant'];\n};\n","import styled, { css } from 'styled-components';\nimport { baseStyling } from '~/components/shared';\nimport { BadgeVariant, StyledBadgeProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledBadge = styled.div<StyledBadgeProps>`\n ${baseStyling}\n\n ${({ $color, $isReversed }) => {\n if ($isReversed) {\n return css`\n background-color: var(--redsift-color-neutral-white);\n\n &,\n .redsift-icon {\n color: var(--redsift-color-${$color}-primary);\n }\n `;\n } else {\n return css`\n background-color: var(--redsift-color-${$color}-primary);\n\n &,\n .redsift-icon {\n color: var(--redsift-color-neutral-white);\n }\n `;\n }\n }}\n\n ${({ $variant, $autoBreak }) => {\n switch ($variant) {\n case BadgeVariant.dot:\n return css`\n border-radius: 50%;\n height: 8px;\n margin-bottom: 12px;\n margin-right: 12px;\n width: 8px;\n `;\n case BadgeVariant.standard:\n default:\n return css`\n border-radius: 64px;\n min-width: 8px;\n padding: 0 6px;\n text-align: center;\n width: fit-content;\n word-break: ${$autoBreak ? 'break-word' : 'normal'};\n\n &,\n .redsift-icon {\n font-family: var(--redsift-typography-badge-font-family);\n font-size: var(--redsift-typography-badge-font-size);\n font-weight: var(--redsift-typography-badge-font-weight);\n line-height: var(--redsift-typography-badge-line-height);\n }\n `;\n }\n }}\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\nimport { ColorPalette, Comp } from '~/types';\nimport { StyledBadge } from './styles';\nimport { BadgeProps, BadgeVariant } from './types';\n\nconst COMPONENT_NAME = 'Badge';\nconst CLASSNAME = 'redsift-badge';\nconst DEFAULT_PROPS: Partial<BadgeProps> = {\n color: ColorPalette.question,\n variant: BadgeVariant.dot,\n};\n\n/**\n * The Badge component.\n */\nexport const Badge: Comp<BadgeProps, HTMLDivElement> = forwardRef(\n (props, ref) => {\n const {\n autoBreak,\n children,\n className,\n color,\n isReversed,\n variant,\n ...forwardedProps\n } = props;\n\n return (\n <StyledBadge\n {...forwardedProps}\n $autoBreak={autoBreak}\n $color={color}\n $isReversed={isReversed}\n $variant={variant}\n className={classNames(\n Badge.className,\n `${Badge.className}-${variant}`,\n className\n )}\n ref={ref as RefObject<HTMLDivElement>}\n >\n {variant === BadgeVariant.standard ? children : null}\n </StyledBadge>\n );\n }\n);\nBadge.className = CLASSNAME;\nBadge.defaultProps = DEFAULT_PROPS;\nBadge.displayName = COMPONENT_NAME;\n","import React, {\n forwardRef,\n MutableRefObject,\n useContext,\n useEffect,\n useRef,\n useState,\n} from 'react';\nimport classNames from 'classnames';\nimport { Comp } from '~/types';\nimport { Icon, IconSize } from '~/components/icon';\nimport { warnIfNoAccessibleLabelFound } from '~/utils/warnIfNoAccessibleLabelFound';\nimport { SideNavigationMenuBarContext } from '~/components/side-navigation-menu-bar/context';\nimport { SideNavigationMenuContext } from '~/components/side-navigation-menu/context';\nimport { AppContainerContext } from '~/components/app-container/context';\nimport { StyledSideNavigationMenuItem } from './styles';\nimport { SideNavigationMenuItemProps } from './types';\nimport { Badge, BadgeVariant } from '~/components/badge';\n\nconst COMPONENT_NAME = 'SideNavigationMenuItem';\nconst CLASSNAME = 'redsift-side-navigation-menu-item';\nconst DEFAULT_PROPS: Partial<SideNavigationMenuItemProps> = {};\n\n/**\n * The SideNavigationMenuItem component.\n */\nexport const SideNavigationMenuItem: Comp<\n SideNavigationMenuItemProps,\n HTMLAnchorElement\n> = forwardRef((props, ref) => {\n const menuItemRef = ref || useRef<HTMLAnchorElement>();\n\n const {\n badge,\n badgeProps,\n children,\n className,\n href,\n icon,\n iconProps,\n iconRef = useRef<HTMLElement>(),\n isCurrent,\n isDisabled,\n isSecondLevel,\n onClick,\n onKeyDown,\n tabIndex,\n withoutIcons,\n ...forwardedProps\n } = props;\n\n warnIfNoAccessibleLabelFound(props, [children]);\n\n const appContainerState = useContext(AppContainerContext);\n useEffect(() => {\n if (appContainerState && isCurrent && typeof children === 'string') {\n appContainerState.setTitle(children);\n }\n\n return () => {\n if (appContainerState) {\n appContainerState.setTitle(undefined);\n }\n };\n }, [isCurrent]);\n\n const sideNavigationMenuBarContext = useContext(SideNavigationMenuBarContext);\n const sideNavigationMenuContext = useContext(SideNavigationMenuContext);\n const [isFirstChild, setIsFirstChild] = useState(false);\n const { menuItems } =\n sideNavigationMenuContext || sideNavigationMenuBarContext || {};\n\n useEffect(() => {\n if (!(sideNavigationMenuContext || sideNavigationMenuBarContext)) {\n setIsFirstChild(true);\n return;\n }\n\n const menuItemNode = (menuItemRef as MutableRefObject<HTMLAnchorElement>)\n .current;\n\n if (menuItemNode) {\n if (!menuItems.size) {\n setIsFirstChild(true);\n }\n\n menuItems.add(menuItemNode);\n }\n\n return () => {\n menuItems.delete(menuItemNode);\n };\n }, [menuItems]);\n\n return (\n <StyledSideNavigationMenuItem\n role=\"menuitem\"\n {...forwardedProps}\n $isCurrent={isCurrent}\n $isDisabled={isDisabled}\n $isSecondLevel={isSecondLevel}\n $withoutIcons={withoutIcons}\n aria-current={isCurrent ? 'page' : undefined}\n aria-disabled={isDisabled}\n className={classNames(SideNavigationMenuItem.className, className)}\n href={!isDisabled ? href : undefined}\n onClick={isDisabled ? undefined : onClick}\n onKeyDown={isDisabled ? undefined : onKeyDown}\n ref={menuItemRef as MutableRefObject<HTMLAnchorElement>}\n tabIndex={\n tabIndex !== undefined\n ? tabIndex\n : !sideNavigationMenuContext && isFirstChild\n ? 0\n : -1\n }\n >\n {icon ? (\n <Icon\n color=\"var(--redsift-side-navigation-color-menu-item-text-resting)\"\n {...iconProps}\n icon={icon}\n ref={iconRef as MutableRefObject<HTMLElement>}\n className=\"first\"\n size={IconSize.small}\n />\n ) : null}\n <span>{children}</span>\n {badge ? (\n <Badge variant={BadgeVariant.standard} color=\"error\" {...badgeProps}>\n {badge}\n </Badge>\n ) : null}\n </StyledSideNavigationMenuItem>\n );\n});\nSideNavigationMenuItem.className = CLASSNAME;\nSideNavigationMenuItem.defaultProps = DEFAULT_PROPS;\nSideNavigationMenuItem.displayName = COMPONENT_NAME;\n","import styled, { css } from 'styled-components';\nimport { StyledSideNavigationMenuProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledSideNavigationMenu = styled.div<StyledSideNavigationMenuProps>`\n > button {\n background-color: var(--redsift-side-navigation-color-background);\n border: none;\n ${({ $isDisabled }) =>\n !$isDisabled\n ? css`\n color: var(--redsift-side-navigation-color-menu-item-text-resting);\n `\n : css`\n color: var(--redsift-side-navigation-color-menu-item-text-disabled);\n `}\n align-items: center;\n display: flex;\n font-family: var(--redsift-typography-body-font-family);\n font-size: var(--redsift-typography-body-font-size);\n font-weight: var(--redsift-typography-body-font-weight);\n line-height: var(--redsift-typography-body-line-height);\n padding: 8px 16px;\n text-decoration: none;\n width: 100%;\n }\n\n ul {\n list-style: none;\n margin: unset;\n padding: unset;\n }\n\n .redsift-icon.first {\n padding-right: 16px;\n box-sizing: unset;\n }\n\n span {\n padding-right: 12px;\n }\n\n [dir='rtl'] & {\n .redsift-icon.first {\n padding-left: 16px;\n padding-right: unset;\n }\n\n span {\n padding-left: 12px;\n padding-right: unset;\n }\n }\n\n > button:hover,\n > button:focus-visible {\n outline: none;\n\n ${({ $isDisabled }) =>\n !$isDisabled\n ? css`\n background-color: var(\n --redsift-side-navigation-color-menu-item-background-hover\n );\n color: var(--redsift-side-navigation-color-menu-item-text-hover);\n cursor: pointer;\n\n .redsift-side-navigation-menu__expand-icon {\n color: var(--redsift-side-navigation-color-menu-item-text-hover);\n }\n `\n : ''}\n }\n\n .redsift-side-navigation-menu__expand-icon {\n ${({ $isDisabled }) =>\n !$isDisabled\n ? css`\n color: var(--redsift-side-navigation-color-menu-item-text-resting);\n `\n : css`\n color: var(--redsift-side-navigation-color-menu-item-text-disabled);\n `}\n margin-left: auto;\n }\n\n [dir='rtl'] & {\n .redsift-side-navigation-menu__expand-icon {\n margin-left: unset;\n margin-right: auto;\n }\n }\n\n /**\n * Display children or not\n */\n\n > ul {\n ${({ $isExpanded }) =>\n $isExpanded\n ? css`\n display: block;\n `\n : css`\n display: none;\n `}\n }\n`;\n","import {\n SideNavigationMenuReducerState,\n SideNavigationMenuReducerAction,\n SideNavigationMenuReducerActionType,\n} from './types';\n\nexport const SideNavigationMenuReducer = (\n state: SideNavigationMenuReducerState,\n action: SideNavigationMenuReducerAction\n): SideNavigationMenuReducerState => {\n switch (action.type) {\n case SideNavigationMenuReducerActionType.Expand:\n return { ...state, isExpanded: true };\n case SideNavigationMenuReducerActionType.Collapse:\n return {\n isExpanded: false,\n currentIndex: null!,\n previousIndex: null!,\n };\n case SideNavigationMenuReducerActionType.Move:\n return {\n ...state,\n isExpanded: true,\n currentIndex: action.index!,\n previousIndex: state.currentIndex,\n };\n }\n};\n","import React, {\n forwardRef,\n KeyboardEvent,\n MouseEvent,\n MutableRefObject,\n useCallback,\n useContext,\n useEffect,\n useMemo,\n useReducer,\n useRef,\n useState,\n} from 'react';\nimport classNames from 'classnames';\nimport { mdiChevronDown, mdiChevronRight } from '@redsift/icons';\nimport { Comp } from '~/types';\nimport { SideNavigationMenuItem } from '~/components/side-navigation-menu-item';\nimport { Icon, IconSize } from '~/components/icon';\nimport { Badge } from '~/components/badge';\nimport { StyledSideNavigationMenu } from './styles';\nimport {\n SideNavigationMenuContextProps,\n SideNavigationMenuProps,\n SideNavigationMenuReducerActionType,\n} from './types';\nimport { SideNavigationMenuContext } from './context';\nimport { SideNavigationMenuReducer } from './reducer';\nimport { SideNavigationMenuBarContext } from '~/components/side-navigation-menu-bar/context';\nimport { warnIfNoAccessibleLabelFound } from '~/utils/warnIfNoAccessibleLabelFound';\nimport { filterComponents } from '~/utils/filterComponents';\n\nconst COMPONENT_NAME = 'SideNavigationMenu';\nconst CLASSNAME = 'redsift-side-navigation-menu';\nconst DEFAULT_PROPS: Partial<SideNavigationMenuProps> = {};\n\n/**\n * The SideNavigationMenu component.\n */\nexport const SideNavigationMenu: Comp<SideNavigationMenuProps, HTMLDivElement> =\n forwardRef((props, ref) => {\n const {\n 'aria-label': ariaLabel,\n buttonProps = {},\n buttonRef = useRef<HTMLButtonElement>() as MutableRefObject<HTMLButtonElement>,\n children,\n className,\n hasBadge,\n icon,\n iconProps,\n iconRef = useRef<HTMLElement>(),\n isDisabled,\n isExpanded: propsIsExpanded,\n menuProps = {},\n menuRef = useRef<HTMLUListElement>(),\n tabIndex,\n withoutIcons,\n ...forwardedProps\n } = props;\n\n warnIfNoAccessibleLabelFound(props);\n\n const sideNavigationMenuBarContext = useContext(\n SideNavigationMenuBarContext\n );\n const [isFirstChild, setIsFirstChild] = useState(false);\n const { menuItems: menubarItems } = sideNavigationMenuBarContext || {};\n\n /**\n * Create an array containing only valid children which can only be SideNavigationMenuItem.\n * This prevent the navigation menubar to have more than two levels.\n */\n const childArray = filterComponents(SideNavigationMenuItem)(children);\n const renderedMenuItems = childArray.map((child, index) => {\n return (\n <li key={child.key ?? index} role=\"none\">\n {React.cloneElement(child, {\n icon: undefined, // Second-level item should not have icon\n isDisabled: child.props.isDisabled || isDisabled || undefined,\n isSecondLevel: true,\n key: child.key ?? index,\n withoutIcons,\n })}\n </li>\n );\n });\n\n const menuItems = useRef<Set<HTMLAnchorElement | HTMLButtonElement>>(\n new Set()\n ).current;\n const [state, dispatch] = useReducer(SideNavigationMenuReducer, {\n currentIndex: null!,\n isExpanded: Boolean(propsIsExpanded),\n previousIndex: null!,\n });\n const { isExpanded, currentIndex, previousIndex } = state;\n\n const first = useCallback(\n () =>\n dispatch({ type: SideNavigationMenuReducerActionType.Move, index: 0 }),\n []\n );\n\n const last = useCallback(\n () =>\n dispatch({\n type: SideNavigationMenuReducerActionType.Move,\n index: menuItems.size - 1,\n }),\n [menuItems.size]\n );\n\n const move = useCallback(\n (index: number) =>\n dispatch({ type: SideNavigationMenuReducerActionType.Move, index }),\n []\n );\n\n const open = useCallback(\n () => dispatch({ type: SideNavigationMenuReducerActionType.Expand }),\n []\n );\n\n const close = useCallback(\n (focusButton?: boolean) => {\n if (isExpanded) {\n if (focusButton) {\n buttonRef.current.focus();\n }\n\n dispatch({ type: SideNavigationMenuReducerActionType.Collapse });\n }\n },\n [isExpanded]\n );\n\n const previous = () => {\n const index = currentIndex === 0 ? menuItems.size - 1 : currentIndex - 1;\n move(index);\n };\n\n const next = () => {\n const index = currentIndex === menuItems.size - 1 ? 0 : currentIndex + 1;\n move(index);\n };\n\n const match = (e: React.KeyboardEvent<HTMLUListElement>) => {\n const items = Array.from(menuItems);\n\n // Reorder the array, starting with the currentNode\n const reorderedItems = [\n ...items.slice(currentIndex),\n ...items.slice(0, currentIndex),\n ];\n\n // Find all nodes that begin with the pressed letter\n const matches = reorderedItems.filter((menuItem) => {\n const { textContent } = menuItem;\n // istanbul ignore next\n const firstLetter = textContent?.toLowerCase().charAt(0);\n return e.key === firstLetter;\n });\n\n // Exit early if there are no matches\n if (!matches.length) {\n return;\n }\n\n // If the focused item is a match, focus the next match.\n // Otherwise, focus the first match\n const currentNode = items[currentIndex];\n const nextMatch = matches.includes(currentNode) ? matches[1] : matches[0];\n const index = items.findIndex((item) => {\n return item === nextMatch;\n });\n\n move(index);\n };\n\n const value = useMemo<SideNavigationMenuContextProps>(\n () => ({ menuItems }),\n [menuItems]\n );\n\n useEffect(() => {\n const items = Array.from(menuItems);\n\n if (currentIndex !== previousIndex) {\n const currentNode = items[currentIndex] as HTMLElement;\n currentNode?.focus();\n }\n }, [menuItems, currentIndex, previousIndex]);\n\n useEffect(() => {\n if (!sideNavigationMenuBarContext) {\n setIsFirstChild(true);\n return;\n }\n\n const menuItemNode = (buttonRef as MutableRefObject<HTMLButtonElement>)\n .current;\n\n if (menuItemNode) {\n menubarItems.add(menuItemNode);\n }\n\n return () => {\n menubarItems.delete(menuItemNode);\n };\n }, [menubarItems]);\n\n const keyDownOnButton = (e: KeyboardEvent<HTMLButtonElement>) => {\n if (isDisabled) {\n return;\n }\n const currentNode = e.target as HTMLUListElement;\n\n switch (e.code) {\n case 'Enter':\n case 'Space':\n e.stopPropagation();\n currentNode.click();\n first();\n break;\n case 'ArrowRight':\n e.stopPropagation();\n first();\n break;\n case 'ArrowLeft':\n last();\n break;\n default:\n break;\n }\n };\n\n const buttonEventHandler = {\n onClick: (event: MouseEvent<HTMLButtonElement>) => {\n if (isDisabled) {\n return;\n }\n\n buttonProps.onClick?.(event);\n event.stopPropagation();\n if (isExpanded) {\n close();\n } else {\n open();\n }\n },\n onKeyDown: (event: KeyboardEvent<HTMLButtonElement>) => {\n buttonProps.onKeyDown?.(event);\n keyDownOnButton(event);\n },\n };\n\n const keyDownOnMenuItemList = (e: KeyboardEvent<HTMLUListElement>) => {\n const currentNode = e.target as HTMLUListElement;\n\n switch (e.code) {\n case 'ArrowUp':\n e.stopPropagation();\n e.preventDefault();\n previous();\n break;\n case 'ArrowDown':\n e.stopPropagation();\n e.preventDefault();\n next();\n break;\n case 'ArrowLeft':\n e.preventDefault();\n e.stopPropagation();\n close(true);\n break;\n case 'ArrowRight':\n e.preventDefault();\n close(!sideNavigationMenuBarContext);\n break;\n case 'Home':\n e.stopPropagation();\n e.preventDefault();\n first();\n break;\n case 'End':\n e.stopPropagation();\n e.preventDefault();\n last();\n break;\n case 'Enter':\n case 'Space':\n e.preventDefault();\n currentNode.click();\n break;\n case 'Escape':\n e.stopPropagation();\n e.preventDefault();\n close(true);\n break;\n default:\n e.stopPropagation();\n match(e);\n break;\n }\n };\n\n const menuItemListEventHandler = {\n onKeyDown: (event: KeyboardEvent<HTMLUListElement>) => {\n menuProps.onKeyDown?.(event);\n keyDownOnMenuItemList(event);\n },\n onClick: (event: MouseEvent<HTMLUListElement>) => {\n if (isDisabled) {\n return;\n }\n menuProps.onClick?.(event);\n },\n };\n\n return (\n <StyledSideNavigationMenu\n {...forwardedProps}\n $isDisabled={isDisabled}\n $isExpanded={isExpanded}\n $withoutIcons={withoutIcons}\n className={classNames(SideNavigationMenu.className, className)}\n ref={ref as MutableRefObject<HTMLDivElement>}\n tabIndex={undefined}\n >\n <SideNavigationMenuContext.Provider value={value}>\n <button\n {...buttonProps}\n aria-disabled={isDisabled}\n aria-expanded={isExpanded ? 'true' : 'false'}\n aria-haspopup=\"true\"\n ref={buttonRef as MutableRefObject<HTMLButtonElement>}\n role=\"menuitem\"\n tabIndex={tabIndex !== undefined ? tabIndex : isFirstChild ? 0 : -1}\n type=\"button\"\n {...buttonEventHandler}\n >\n {icon ? (\n <Icon\n color=\"var(--redsift-side-navigation-color-menu-item-text-resting)\"\n {...iconProps}\n icon={icon}\n ref={iconRef as MutableRefObject<HTMLElement>}\n className={classNames(iconProps?.className, 'first')}\n size={IconSize.small}\n />\n ) : null}\n <span>{ariaLabel}</span>\n {hasBadge && !isExpanded ? <Badge color=\"error\" /> : null}\n {isExpanded ? (\n <Icon\n icon={mdiChevronDown}\n className={`${SideNavigationMenu.className}__expand-icon`}\n size={IconSize.small}\n />\n ) : (\n <Icon\n icon={mdiChevronRight}\n className={`${SideNavigationMenu.className}__expand-icon`}\n size={IconSize.small}\n />\n )}\n </button>\n <ul\n {...menuProps}\n aria-label={ariaLabel}\n aria-orientation=\"vertical\"\n hidden={!isExpanded}\n ref={menuRef as MutableRefObject<HTMLUListElement>}\n role=\"menu\"\n {...menuItemListEventHandler}\n >\n {renderedMenuItems}\n </ul>\n </SideNavigationMenuContext.Provider>\n </StyledSideNavigationMenu>\n );\n });\nSideNavigationMenu.className = CLASSNAME;\nSideNavigationMenu.defaultProps = DEFAULT_PROPS;\nSideNavigationMenu.displayName = COMPONENT_NAME;\n","import styled, { css } from 'styled-components';\nimport { StyledSideNavigationMenuBarProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledSideNavigationMenuBar = styled.nav<StyledSideNavigationMenuBarProps>`\n background-color: var(--redsift-side-navigation-color-background);\n overflow-y: auto;\n width: 240px;\n\n ${({ $marginTop = 0 }) =>\n $marginTop\n ? css`\n height: calc(100% - ${$marginTop}px);\n `\n : ''}\n\n ul {\n list-style: none;\n margin: unset;\n padding: unset;\n }\n\n scrollbar-color: var(--redsift-side-navigation-color-scrollbar-resting)\n transparent;\n scrollbar-width: thin;\n\n &::-webkit-scrollbar {\n block-size: 9px;\n inline-size: 9px;\n }\n\n &::-webkit-scrollbar-thumb {\n background-clip: padding-box;\n background-color: var(--redsift-side-navigation-color-scrollbar-resting);\n border-radius: 0px;\n border-left: 2px solid transparent;\n border-right: 2px solid transparent;\n }\n\n &::-webkit-scrollbar-track {\n background-color: transparent;\n }\n\n &::-webkit-scrollbar-thumb:horizontal,\n &::-webkit-scrollbar-thumb:vertical {\n &:hover {\n background-color: var(--redsift-side-navigation-color-scrollbar-hover);\n }\n }\n\n &::-webkit-scrollbar-corner {\n visibility: hidden;\n }\n`;\n","import { useState, useEffect, MutableRefObject } from 'react';\n\n/**\n * Get the bounding rect of a component.\n */\nexport const useBoundingClientRect = (\n ref: MutableRefObject<HTMLElement>,\n deps?: any[]\n) => {\n const [boundingRect, setBoundingRect] = useState<DOMRect>({} as DOMRect);\n\n useEffect(() => {\n if (ref.current) {\n setBoundingRect(ref.current.getBoundingClientRect());\n }\n }, deps);\n\n return boundingRect;\n};\n","import React, {\n forwardRef,\n KeyboardEvent,\n MutableRefObject,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport classNames from 'classnames';\nimport { Comp } from '~/types';\nimport { SideNavigationMenu } from '~/components/side-navigation-menu';\nimport { SideNavigationMenuItem } from '~/components/side-navigation-menu-item';\nimport { warnIfNoAccessibleLabelFound } from '~/utils/warnIfNoAccessibleLabelFound';\nimport { StyledSideNavigationMenuBar } from './styles';\nimport {\n SideNavigationMenuBarProps,\n SideNavigationMenuBarContextProps,\n} from './types';\nimport { SideNavigationMenuBarContext } from './context';\nimport { useBoundingClientRect } from '~/hooks/useBoundingRect';\nimport { filterComponents } from '~/utils/filterComponents';\n\nconst COMPONENT_NAME = 'SideNavigationMenuBar';\nconst CLASSNAME = 'redsift-side-navigation-menu-bar';\nconst DEFAULT_PROPS: Partial<SideNavigationMenuBarProps> = {};\n\n/**\n * Hook to store the previous index for further use\n */\nconst usePrevious = (value: number) => {\n const ref = useRef(0);\n\n useEffect(() => {\n ref.current = value;\n }, [value]);\n\n return ref.current;\n};\n\n/**\n * The SideNavigationMenuBar component.\n */\nexport const SideNavigationMenuBar: Comp<\n SideNavigationMenuBarProps,\n HTMLElement\n> = forwardRef((props, ref) => {\n const navRef = (ref ||\n useRef<HTMLElement>()) as MutableRefObject<HTMLElement>;\n\n const {\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledby,\n children,\n className,\n isDisabled,\n menubarProps = {},\n menubarRef = useRef<HTMLUListElement>(),\n withoutIcons,\n ...forwardedProps\n } = props;\n\n warnIfNoAccessibleLabelFound(props);\n const { top } = useBoundingClientRect(navRef, [children]);\n\n /**\n * Create an array containing only valid children being either SideNavigationMenu or SideNavigationMenuItem.\n */\n const childArray = filterComponents([\n SideNavigationMenu,\n SideNavigationMenuItem,\n ])(children);\n const navItems = childArray.map((child, index) => {\n return (\n <li key={child.key ?? index} role=\"none\">\n {React.cloneElement(child, {\n isDisabled: child.props.isDisabled || isDisabled || undefined,\n key: child.key ?? index,\n // First-level children should have icon, even empty one (except when withoutIcons is set to true)\n icon: withoutIcons ? undefined : child.props.icon || 'M 0,0',\n withoutIcons,\n tabIndex: index === 0 ? 0 : -1,\n })}\n </li>\n );\n });\n\n const menuItems = useRef<Set<HTMLAnchorElement | HTMLButtonElement>>(\n new Set()\n ).current;\n const [currentIndex, setCurrentIndex] = useState(0);\n const previousIndex = usePrevious(currentIndex);\n\n const first = () => setCurrentIndex(0);\n\n const last = () => setCurrentIndex(menuItems.size - 1);\n\n const next = () => {\n const index = currentIndex === menuItems.size - 1 ? 0 : currentIndex + 1;\n setCurrentIndex(index);\n };\n\n const previous = () => {\n const index = currentIndex === 0 ? menuItems.size - 1 : currentIndex - 1;\n setCurrentIndex(index);\n };\n\n const match = (event: React.KeyboardEvent<HTMLUListElement>) => {\n const items = Array.from(menuItems);\n\n // Reorder the array, starting with the currentNode\n const reorderedItems = [\n ...items.slice(currentIndex),\n ...items.slice(0, currentIndex),\n ];\n\n // Find all nodes that begin with the pressed letter\n const matches = reorderedItems.filter((menuItem) => {\n const { textContent } = menuItem;\n // istanbul ignore next\n const firstLetter = textContent?.toLowerCase().charAt(0);\n return event.key === firstLetter;\n });\n\n // Exit early if there are no matches\n if (!matches.length) {\n return;\n }\n\n // If the focused item is a match, focus the next match.\n // Otherwise, focus the first match\n const currentNode = items[currentIndex];\n const nextMatch = matches.includes(currentNode) ? matches[1] : matches[0];\n const index = items.findIndex((item) => {\n return item === nextMatch;\n });\n\n setCurrentIndex(index);\n };\n\n const keyDown = (e: KeyboardEvent<HTMLUListElement>) => {\n menubarProps.onKeyDown?.(e);\n e.stopPropagation();\n\n const currentNode = e.target as HTMLUListElement;\n // istanbul ignore next\n const parentMenu = currentNode?.parentNode?.parentNode as HTMLElement;\n const isFromSubmenu = parentMenu.getAttribute('role') === 'menu';\n\n switch (e.code) {\n case 'ArrowUp':\n e.preventDefault();\n previous();\n break;\n case 'ArrowDown':\n e.preventDefault();\n next();\n break;\n case 'ArrowRight':\n e.preventDefault();\n if (isFromSubmenu) {\n next();\n }\n break;\n case 'End':\n e.preventDefault();\n last();\n break;\n case 'Home':\n e.preventDefault();\n first();\n break;\n case 'Enter':\n case 'Space':\n e.preventDefault();\n currentNode.click();\n break;\n default:\n match(e);\n break;\n }\n };\n\n const value = useMemo<SideNavigationMenuBarContextProps>(\n () => ({ menuItems }),\n [menuItems]\n );\n\n useEffect(() => {\n if (currentIndex !== previousIndex) {\n const items = Array.from(menuItems);\n const currentNode = items[currentIndex] as HTMLElement;\n const previousNode = items[previousIndex] as HTMLElement;\n\n // istanbul ignore next\n previousNode?.setAttribute('tabindex', '-1');\n currentNode?.setAttribute('tabindex', '0');\n currentNode?.focus();\n }\n }, [currentIndex, previousIndex, menuItems]);\n\n return (\n <StyledSideNavigationMenuBar\n {...forwardedProps}\n $isDisabled={isDisabled}\n $marginTop={top}\n $withoutIcons={withoutIcons}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledby}\n className={classNames(SideNavigationMenuBar.className, className)}\n ref={navRef as MutableRefObject<HTMLElement>}\n >\n <SideNavigationMenuBarContext.Provider value={value}>\n <ul\n {...menubarProps}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledby}\n aria-orientation=\"vertical\"\n onKeyDown={keyDown}\n ref={menubarRef as MutableRefObject<HTMLUListElement>}\n role=\"menubar\"\n >\n {navItems}\n </ul>\n </SideNavigationMenuBarContext.Provider>\n </StyledSideNavigationMenuBar>\n );\n});\nSideNavigationMenuBar.className = CLASSNAME;\nSideNavigationMenuBar.defaultProps = DEFAULT_PROPS;\nSideNavigationMenuBar.displayName = COMPONENT_NAME;\n","import React, { MutableRefObject } from 'react';\nimport { SideNavigationMenu } from '~/components/side-navigation-menu';\nimport { SideNavigationMenuItem } from '~/components/side-navigation-menu-item';\nimport {\n MenuBarItems,\n MenuItem,\n Menu,\n SideNavigationMenuBarProps,\n} from './types';\n\nconst isMenu = (item: MenuItem | Menu): item is Menu => {\n return (item as Menu).children !== undefined;\n};\n\nexport interface UseSideNavigationMenuBarProps {\n items: MenuBarItems;\n isActive?: (href: string) => boolean;\n}\n\nexport const useSideNavigationMenuBar = ({\n items,\n isActive,\n}: UseSideNavigationMenuBarProps): Omit<SideNavigationMenuBarProps, 'ref'> => {\n const menuBarChildren: SideNavigationMenuBarProps['children'][] = [];\n\n items.map((item) => {\n if (!isMenu(item)) {\n const { title, href, ref, ...rest } = item;\n menuBarChildren.push(\n <SideNavigationMenuItem\n key={title}\n isCurrent={isActive ? isActive(href!) : undefined}\n {...rest}\n href={href}\n ref={ref as MutableRefObject<HTMLAnchorElement>}\n >\n {title}\n </SideNavigationMenuItem>\n );\n } else {\n const { title, children, ref, ...rest } = item;\n menuBarChildren.push(\n <SideNavigationMenu\n key={title}\n aria-label={title}\n isExpanded={\n isActive\n ? children.filter((child) => isActive(child.href!)).length > 0\n : undefined\n }\n hasBadge={children.filter((child) => child.badge).length > 0}\n {...rest}\n ref={ref as MutableRefObject<HTMLDivElement>}\n >\n {children.map((child) => {\n const { title, href, ref, ...rest } = child;\n return (\n <SideNavigationMenuItem\n key={title}\n href={href}\n isCurrent={isActive ? isActive(href!) : undefined}\n {...rest}\n ref={ref as MutableRefObject<HTMLAnchorElement>}\n >\n {title}\n </SideNavigationMenuItem>\n );\n })}\n </SideNavigationMenu>\n );\n }\n });\n\n return {\n children: menuBarChildren,\n };\n};\n","import React from 'react';\nimport {\n SideNavigationMenuBar,\n useSideNavigationMenuBar,\n UseSideNavigationMenuBarProps,\n} from '~/components/side-navigation-menu-bar';\nimport { AppSidePanelProps } from './types';\n\nexport const useAppSidePanel = ({\n items,\n isActive,\n}: UseSideNavigationMenuBarProps): Omit<AppSidePanelProps, 'ref'> => {\n const sideNavigationMenuBarProps = useSideNavigationMenuBar({\n items,\n isActive,\n });\n\n return {\n children: (\n <SideNavigationMenuBar\n {...sideNavigationMenuBarProps}\n aria-label=\"Navigation\"\n />\n ),\n };\n};\n","import styled, { css } from 'styled-components';\nimport { StyledBreadcrumbItemProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledBreadcrumbItem = styled.a<StyledBreadcrumbItemProps>`\n background: none;\n border: none;\n font-family: var(--redsift-typography-body-font-family);\n font-size: var(--redsift-typography-body-font-size);\n font-weight: var(--redsift-typography-body-font-weight);\n line-height: var(--redsift-typography-body-line-height);\n padding: 4px;\n text-decoration: none;\n\n ${({ $isDisabled, $isCurrent }) => css`\n ${$isDisabled\n ? `\n color: var(--redsift-color-neutral-midgrey);\n `\n : $isCurrent\n ? `\n color: var(--redsift-color-default-primary);\n `\n : `\n color: var(--redsift-color-neutral-darkgrey);\n `}\n\n ${!$isDisabled &&\n !$isCurrent &&\n css`\n &:hover,\n &:focus-visible {\n cursor: pointer;\n text-decoration: underline;\n text-underline-offset: 2px;\n }\n `}\n `}\n\n &:focus-visible {\n outline: 2px solid var(--redsift-color-neutral-darkgrey);\n }\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\nimport { Comp } from '~/types';\nimport { warnIfNoAccessibleLabelFound } from '~/utils/warnIfNoAccessibleLabelFound';\nimport { StyledBreadcrumbItem } from './styles';\nimport { BreadcrumbItemProps } from './types';\n\nconst COMPONENT_NAME = 'BreadcrumbItem';\nconst CLASSNAME = 'redsift-breadcrumb-item';\nconst DEFAULT_PROPS: Partial<BreadcrumbItemProps> = {};\n\n/**\n * The BreadcrumbItem components is a list of links to the parent pages of the current page in hierarchical order.\n */\nexport const BreadcrumbItem: Comp<BreadcrumbItemProps, HTMLAnchorElement> =\n forwardRef((props, ref) => {\n const {\n children,\n className,\n href,\n isCurrent,\n isDisabled,\n ...forwardedProps\n } = props;\n\n warnIfNoAccessibleLabelFound(props, [children]);\n\n return (\n <StyledBreadcrumbItem\n role=\"link\"\n tabIndex={!isDisabled && !isCurrent ? 0 : undefined}\n {...forwardedProps}\n $isCurrent={isCurrent}\n $isDisabled={isDisabled}\n aria-current={isCurrent ? 'page' : undefined}\n aria-disabled={isDisabled || isCurrent}\n className={classNames(BreadcrumbItem.className, className)}\n href={!isDisabled && !isCurrent ? href : undefined}\n ref={ref as RefObject<HTMLAnchorElement>}\n >\n {children}\n </StyledBreadcrumbItem>\n );\n });\nBreadcrumbItem.className = CLASSNAME;\nBreadcrumbItem.defaultProps = DEFAULT_PROPS;\nBreadcrumbItem.displayName = COMPONENT_NAME;\n","import styled, { css } from 'styled-components';\nimport { baseStyling } from '~/components/shared';\nimport { StyledBreadcrumbsProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledBreadcrumbs = styled.nav<StyledBreadcrumbsProps>`\n ${baseStyling}\n\n ol {\n display: inline-flex;\n list-style: none;\n padding: unset;\n }\n\n .redsift-breadcrumbs__separator {\n font-family: var(--redsift-typography-body-font-family);\n font-size: var(--redsift-typography-body-font-size);\n font-weight: var(--redsift-typography-body-font-weight);\n line-height: var(--redsift-typography-body-line-height);\n margin: 0px 4px;\n\n ${({ $isDisabled }) =>\n $isDisabled\n ? css`\n color: var(--redsift-color-neutral-midgrey);\n `\n : css`\n color: var(--redsift-color-neutral-black);\n `}\n }\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\nimport { Comp } from '~/types';\nimport { BreadcrumbItem } from '~/components/breadcrumb-item';\nimport { warnIfNoAccessibleLabelFound } from '~/utils/warnIfNoAccessibleLabelFound';\nimport { StyledBreadcrumbs } from './styles';\nimport { BreadcrumbsProps } from './types';\nimport { filterComponents } from '~/utils';\n\nconst COMPONENT_NAME = 'Breadcrumbs';\nconst CLASSNAME = 'redsift-breadcrumbs';\nconst DEFAULT_PROPS: Partial<BreadcrumbsProps> = {};\n\n/**\n * The Breadcrumbs components is a list of links to the parent pages of the current page in hierarchical order.\n */\nexport const BaseBreadcrumbs: Comp<BreadcrumbsProps, HTMLElement> = forwardRef(\n (props, ref) => {\n const { children, className, isDisabled, ...forwardedProps } = props;\n\n warnIfNoAccessibleLabelFound(props);\n\n const childArray = filterComponents([Breadcrumbs.Item])(children);\n const breadcrumbItems = childArray.map((child, index) => {\n const isCurrent = index === childArray.length - 1;\n\n return (\n <li key={index}>\n <Breadcrumbs.Item\n isDisabled={child.props.isDisabled || isDisabled || undefined}\n {...child.props}\n key={child.key ?? index}\n isCurrent={isCurrent}\n />\n {isCurrent === false ? (\n <span className={`${BaseBreadcrumbs.className}__separator`}>\n {'/'}\n </span>\n ) : null}\n </li>\n );\n });\n\n return (\n <StyledBreadcrumbs\n {...forwardedProps}\n $isDisabled={isDisabled}\n className={classNames(BaseBreadcrumbs.className, className)}\n ref={ref as RefObject<HTMLElement>}\n >\n <ol>{breadcrumbItems}</ol>\n </StyledBreadcrumbs>\n );\n }\n);\nBaseBreadcrumbs.className = CLASSNAME;\nBaseBreadcrumbs.defaultProps = DEFAULT_PROPS;\nBaseBreadcrumbs.displayName = COMPONENT_NAME;\n\nexport const Breadcrumbs = Object.assign(BaseBreadcrumbs, {\n Item: BreadcrumbItem,\n});\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\nimport { ColorPalette, Comp } from '~/types';\nimport { Icon } from '~/components/icon';\nimport { ButtonVariant, StyledButton } from '~/components/button';\nimport { ButtonLinkProps } from './types';\n\nconst COMPONENT_NAME = 'ButtonLink';\nconst CLASSNAME = 'redsift-button-link';\nconst DEFAULT_PROPS: Partial<ButtonLinkProps> = {\n color: ColorPalette.default,\n variant: ButtonVariant.primary,\n};\n\n/**\n * The ButtonLink is a semantic link that looks like a button.\n *\n * For a semantic button that looks like a button, please use the Button component.\n * For a semantic link that looks like a link, please use the Link component.\n * For a semantic button that looks like a link, please use the LinkButton component.\n */\nexport const ButtonLink: Comp<ButtonLinkProps, HTMLAnchorElement> = forwardRef(\n (props, ref) => {\n const {\n as,\n children,\n className,\n color,\n href,\n isActive,\n isDisabled,\n leftIcon,\n rightIcon,\n target,\n variant,\n ...forwardedProps\n } = props;\n\n return (\n <StyledButton\n as={as || 'a'}\n role=\"link\"\n tabIndex={!isDisabled ? 0 : undefined}\n {...forwardedProps}\n $color={color}\n $isActive={isActive}\n $isDisabled={isDisabled}\n $variant={variant}\n className={classNames(ButtonLink.className, className)}\n href={!isDisabled ? href : undefined}\n ref={ref as RefObject<HTMLAnchorElement>}\n target={target}\n >\n {leftIcon ? (\n <Icon icon={leftIcon} aria-hidden=\"true\" className=\"left\" />\n ) : null}\n {children}\n {rightIcon ? (\n <Icon icon={rightIcon} aria-hidden=\"true\" className=\"right\" />\n ) : null}\n </StyledButton>\n );\n }\n);\nButtonLink.className = CLASSNAME;\nButtonLink.defaultProps = DEFAULT_PROPS;\nButtonLink.displayName = COMPONENT_NAME;\n","import enUS from './en-US.json';\nimport frFR from './fr-FR.json';\n\nexport default {\n 'en-US': enUS,\n 'fr-FR': frFR,\n};\n","import styled from 'styled-components';\nimport { baseStyling } from '~/components/shared';\nimport { StyledCardProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledCard = styled.div<StyledCardProps>`\n ${baseStyling}\n\n background-color: var(--redsift-color-neutral-white);\n box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5);\n display: flex;\n flex-direction: column;\n padding: 16px;\n\n .redsift-card__header {\n align-items: flex-start;\n display: flex;\n justify-content: space-between;\n }\n\n .redsift-card-header__icon-button {\n margin: 12px 8px;\n }\n\n .redsift-card__content {\n visibility: ${({ $isCollapsed }) => (!$isCollapsed ? 'visible' : 'hidden')};\n overflow: ${({ $isCollapsed }) => (!$isCollapsed ? 'visible' : 'hidden')};\n height: ${({ $isCollapsed }) => (!$isCollapsed ? 'auto' : '0px')};\n }\n`;\n","import styled from 'styled-components';\nimport { StyledCardHeaderProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledCardHeader = styled.div<StyledCardHeaderProps>`\n color: var(--redsift-color-neutral-black);\n\n .redsift-card-header__header {\n align-items: center;\n display: flex;\n gap: 8px;\n padding: 10px 0px;\n margin: 0px;\n\n .redsift-icon {\n color: var(--redsift-color-neutral-black);\n padding-right: 8px;\n font-size: 30px;\n line-height: 30px;\n height: 30px;\n }\n }\n\n .redsift-card-header__subheader {\n font-family: var(--redsift-typography-body-font-family);\n font-size: var(--redsift-typography-body-font-size);\n font-weight: var(--redsift-typography-body-font-weight);\n line-height: var(--redsift-typography-body-line-height);\n }\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\n\nimport { Icon } from '~/components/icon';\nimport { Heading } from '~/components/heading';\nimport { Comp } from '~/types';\nimport { StyledCardHeader } from './styles';\nimport { CardHeaderProps } from './types';\n\nconst COMPONENT_NAME = 'CardHeader';\nconst CLASSNAME = 'redsift-card-header';\nconst DEFAULT_PROPS: Partial<CardHeaderProps> = {};\n\n/**\n * The CardHeader component.\n */\nexport const CardHeader: Comp<CardHeaderProps, HTMLDivElement> = forwardRef(\n (props, ref) => {\n const { children, className, header, icon, subheader, ...forwardedProps } =\n props;\n\n return (\n <StyledCardHeader\n {...forwardedProps}\n className={classNames(CardHeader.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n >\n {subheader ? (\n <div className={`${CardHeader.className}__subheader`}>\n {subheader}\n </div>\n ) : null}\n {header ? (\n <Heading\n as=\"h2\"\n color=\"black\"\n className={`${CardHeader.className}__header`}\n >\n {icon ? <Icon icon={icon} aria-hidden=\"true\" /> : null}\n {header}\n </Heading>\n ) : null}\n {children}\n </StyledCardHeader>\n );\n }\n);\nCardHeader.className = CLASSNAME;\nCardHeader.defaultProps = DEFAULT_PROPS;\nCardHeader.displayName = COMPONENT_NAME;\n","import styled from 'styled-components';\nimport { baseContainer } from '~/components/shared';\nimport { StyledCardBodyProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledCardBody = styled.div<StyledCardBodyProps>`\n ${baseContainer}\n\n color: var(--redsift-color-neutral-darkgrey);\n font-family: var(--redsift-typography-body2-font-family);\n font-size: var(--redsift-typography-body2-font-size);\n font-weight: var(--redsift-typography-body2-font-weight);\n line-height: var(--redsift-typography-body2-line-height);\n padding: 16px 0px;\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\n\nimport { Comp } from '~/types';\nimport { StyledCardBody } from './styles';\nimport { CardBodyProps } from './types';\n\nconst COMPONENT_NAME = 'CardBody';\nconst CLASSNAME = 'redsift-card-body';\nconst DEFAULT_PROPS: Partial<CardBodyProps> = {};\n\n/**\n * The CardBody component.\n */\nexport const CardBody: Comp<CardBodyProps, HTMLDivElement> = forwardRef(\n (props, ref) => {\n const { children, className, ...forwardedProps } = props;\n\n return (\n <StyledCardBody\n {...forwardedProps}\n className={classNames(CardBody.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n >\n {children}\n </StyledCardBody>\n );\n }\n);\nCardBody.className = CLASSNAME;\nCardBody.defaultProps = DEFAULT_PROPS;\nCardBody.displayName = COMPONENT_NAME;\n","import styled from 'styled-components';\nimport { baseContainer } from '~/components/shared';\nimport { StyledCardActionsProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledCardActions = styled.div<StyledCardActionsProps>`\n ${baseContainer}\n\n margin-top: 8px;\n margin-bottom: 8px;\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\n\nimport { Comp } from '~/types';\nimport { StyledCardActions } from './styles';\nimport { CardActionsProps } from './types';\n\nconst COMPONENT_NAME = 'CardActions';\nconst CLASSNAME = 'redsift-card-actions';\nconst DEFAULT_PROPS: Partial<CardActionsProps> = {\n display: 'flex',\n flexDirection: 'row',\n};\n\n/**\n * The CardActions component.\n */\nexport const CardActions: Comp<CardActionsProps, HTMLDivElement> = forwardRef(\n (props, ref) => {\n const { children, className, ...forwardedProps } = props;\n\n return (\n <StyledCardActions\n {...forwardedProps}\n className={classNames(CardActions.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n >\n {children}\n </StyledCardActions>\n );\n }\n);\nCardActions.className = CLASSNAME;\nCardActions.defaultProps = DEFAULT_PROPS;\nCardActions.displayName = COMPONENT_NAME;\n","import React, {\n forwardRef,\n RefObject,\n useCallback,\n useEffect,\n useState,\n} from 'react';\nimport classNames from 'classnames';\n\nimport { useLocalizedStringFormatter } from '@react-aria/i18n';\nimport intlMessages from './intl';\n\nimport { mdiChevronDown, mdiChevronUp } from '@redsift/icons';\nimport { IconButton } from '~/components/icon-button';\nimport { Comp } from '~/types';\nimport { StyledCard } from './styles';\nimport { CardProps } from './types';\nimport { partitionComponents } from '~/utils/partitionComponents';\nimport { isComponent } from '~/utils/isComponent';\nimport { CardHeader } from '../card-header';\nimport { CardBody } from '../card-body';\nimport { CardActions } from '../card-actions';\n\nconst COMPONENT_NAME = 'Card';\nconst CLASSNAME = 'redsift-card';\nconst DEFAULT_PROPS: Partial<CardProps> = {};\n\n/**\n * The Card component.\n */\nconst BaseCard: Comp<CardProps, HTMLDivElement> = forwardRef((props, ref) => {\n const {\n children,\n className,\n defaultCollapsed,\n isCollapsed: propsIsCollapsed,\n isCollapsible,\n onCollapse,\n ...forwardedProps\n } = props;\n\n const stringFormatter = useLocalizedStringFormatter(intlMessages);\n\n const [isCollapsed, setIsCollapsed] = useState(\n propsIsCollapsed ?? defaultCollapsed\n );\n\n useEffect(() => {\n setIsCollapsed(propsIsCollapsed ?? defaultCollapsed);\n }, [propsIsCollapsed, defaultCollapsed]);\n\n const handleCollapse = useCallback(\n (collapsed: boolean) => {\n if (onCollapse) {\n onCollapse(collapsed);\n }\n setIsCollapsed(collapsed);\n },\n [onCollapse]\n );\n\n const [[header], [body], [actions]] = partitionComponents(\n React.Children.toArray(children),\n [\n isComponent('CardHeader'),\n isComponent('CardBody'),\n isComponent('CardActions'),\n ]\n );\n\n return (\n <StyledCard\n {...forwardedProps}\n className={classNames(BaseCard.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n $isCollapsed={isCollapsed}\n >\n <div className={`${BaseCard.className}__header`}>\n {header}\n\n {isCollapsible ? (\n <IconButton\n aria-label={stringFormatter.format(\n isCollapsed ? 'expand' : 'collapse'\n )}\n className={`${BaseCard.className}-header__icon-button`}\n color=\"question\"\n icon={isCollapsed ? mdiChevronDown : mdiChevronUp}\n onPress={() => handleCollapse(!isCollapsed)}\n />\n ) : null}\n </div>\n\n {body || actions ? (\n <div className={`${BaseCard.className}__content`}>\n {body}\n {actions}\n </div>\n ) : null}\n </StyledCard>\n );\n});\nBaseCard.className = CLASSNAME;\nBaseCard.defaultProps = DEFAULT_PROPS;\nBaseCard.displayName = COMPONENT_NAME;\n\nexport const Card = Object.assign(BaseCard, {\n Header: CardHeader,\n Body: CardBody,\n Actions: CardActions,\n});\n","import { ComponentProps } from 'react';\nimport { ValueOf, StylingProps } from '~/types';\n\n/**\n * Context props.\n */\nexport type CheckboxGroupState = {\n /** Adds a value to the set of selected values. */\n addValue(value: string): void;\n /** Whether the checkbox group is disabled or not. */\n readonly isDisabled: boolean;\n /** Whether the checkbox group is read only or not. */\n readonly isReadOnly: boolean;\n /** Removes a value from the set of selected values. */\n removeValue(value: string): void;\n /** Sets the selected values. */\n setValue(value: string[]): void;\n /** Current selected values. */\n readonly value: readonly string[];\n};\n\n/**\n * Component orientation.\n */\nexport const CheckboxGroupOrientation = {\n horizontal: 'horizontal',\n vertical: 'vertical',\n} as const;\nexport type CheckboxGroupOrientation = ValueOf<typeof CheckboxGroupOrientation>;\n\n/**\n * Component props.\n */\nexport interface CheckboxGroupProps\n extends Omit<ComponentProps<'div'>, 'onChange'>,\n StylingProps {\n /**\n * Default selected values.\n * Used for uncontrolled version.\n */\n defaultValues?: string[];\n /** Description of the checkbox group. */\n description?: string;\n /** Whether the component is disabled or not. */\n isDisabled?: boolean;\n /** Whether the component is invalid or not. */\n isInvalid?: boolean;\n /** Whether the component is read only or not. */\n isReadOnly?: boolean;\n /** Whether the component is required or not. */\n isRequired?: boolean;\n /** Label of the checkbox group. */\n label?: string;\n /** Method to handle component change. */\n onChange?(values: string[]): void;\n /** Method to handle component change. */\n orientation?: CheckboxGroupOrientation;\n /** List of possible values. Useful to select all. */\n possibleValues?: string[];\n /**\n * Currently selected values.\n * Used for controlled version.\n */\n value?: string[];\n}\n\nexport type StyledCheckboxGroupProps = Omit<\n CheckboxGroupProps,\n 'isDisabled' | 'isInvalid' | 'isReadOnly' | 'orientation' | 'isRequired'\n> & {\n $isDisabled: CheckboxGroupProps['isDisabled'];\n $isInvalid: CheckboxGroupProps['isInvalid'];\n $isReadOnly: CheckboxGroupProps['isReadOnly'];\n $orientation: CheckboxGroupProps['orientation'];\n};\n","import React from 'react';\nimport { CheckboxGroupState } from './types';\n\nexport const CheckboxGroupContext =\n React.createContext<CheckboxGroupState | null>(null);\n","import styled from 'styled-components';\nimport { baseStyling } from '~/components/shared';\nimport { CheckboxGroupOrientation, StyledCheckboxGroupProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledCheckboxGroup = styled.div<StyledCheckboxGroupProps>`\n ${baseStyling}\n\n display: flex;\n flex-direction: column;\n\n ${({ $orientation }) =>\n $orientation === CheckboxGroupOrientation.vertical\n ? `\n div.redsift-checkbox-group-boxes {\n display: flex;\n flex-direction: column;\n }\n `\n : `\n div.redsift-checkbox-group-boxes {\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n }\n `}\n\n span.redsift-checkbox-group-label {\n font-family: var(--redsift-typography-body-font-family);\n font-weight: var(--redsift-typography-body-font-weight);\n font-size: var(--redsift-typography-body-font-size);\n line-height: var(--redsift-typography-body-line-height);\n\n color: var(--redsift-color-neutral-black);\n ${({ $isDisabled }) =>\n $isDisabled\n ? `\n color: var(--redsift-color-neutral-midgrey);\n `\n : ''}\n ${({ $isInvalid }) =>\n $isInvalid\n ? `\n color: var(--redsift-color-error-primary);\n `\n : ''}\n }\n\n span.redsift-checkbox-group-description {\n font-family: var(--redsift-typography-helper-font-family);\n font-weight: var(--redsift-typography-helper-font-weight);\n font-size: var(--redsift-typography-helper-font-size);\n line-height: var(--redsift-typography-helper-line-height);\n\n color: var(--redsift-color-neutral-darkgrey);\n ${({ $isDisabled }) =>\n $isDisabled\n ? `\n color: var(--redsift-color-neutral-midgrey);\n `\n : ''}\n ${({ $isInvalid }) =>\n $isInvalid\n ? `\n color: var(--redsift-color-error-primary);\n `\n : ''}\n }\n`;\n","import React, { forwardRef, RefObject, useEffect, useState } from 'react';\nimport classNames from 'classnames';\nimport { ColorPalette, Comp } from '~/types';\nimport { CheckboxGroupOrientation, CheckboxGroupProps } from './types';\nimport { CheckboxGroupContext } from './context';\nimport { StyledCheckboxGroup } from './styles';\n\nconst COMPONENT_NAME = 'CheckboxGroup';\nconst CLASSNAME = 'redsift-checkbox-group';\nconst DEFAULT_PROPS: Partial<CheckboxGroupProps> = {\n color: ColorPalette.default,\n orientation: CheckboxGroupOrientation.vertical,\n};\n\n/**\n * The CheckboxGroup component.\n * Can be used as controlled or uncontrolled.\n */\nexport const CheckboxGroup: Comp<CheckboxGroupProps, HTMLDivElement> =\n forwardRef((props, ref) => {\n const {\n children,\n className,\n defaultValues,\n description,\n isDisabled,\n isInvalid,\n isReadOnly,\n isRequired,\n label,\n onChange,\n orientation,\n possibleValues,\n value,\n ...forwardedProps\n } = props;\n\n const [selectedValues, setValue] = useState<string[]>(\n value || defaultValues || []\n );\n useEffect(() => {\n if (value) {\n state.setValue(value);\n }\n }, [value]);\n\n const state = {\n value: selectedValues,\n isDisabled: isDisabled || false,\n isReadOnly: isReadOnly || false,\n possibleValues: possibleValues,\n setValue(values: string[]) {\n if (isReadOnly || isDisabled) {\n return;\n }\n\n setValue(values);\n },\n addValue(value: string) {\n if (!selectedValues.includes(value)) {\n setValue(selectedValues.concat(value));\n if (onChange) {\n onChange(selectedValues.concat(value));\n }\n }\n },\n removeValue(value: string) {\n if (selectedValues.includes(value)) {\n setValue(\n selectedValues.filter((existingValue) => existingValue !== value)\n );\n if (onChange) {\n onChange(\n selectedValues.filter((existingValue) => existingValue !== value)\n );\n }\n }\n },\n };\n\n return (\n <StyledCheckboxGroup\n {...forwardedProps}\n $isDisabled={isDisabled}\n $isInvalid={isInvalid || (isRequired && selectedValues.length === 0)}\n $isReadOnly={isReadOnly}\n $orientation={orientation}\n aria-disabled={isDisabled}\n className={classNames(CheckboxGroup.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n role=\"group\"\n >\n <span className={`${CheckboxGroup.className}-label`}>\n {label}\n {isRequired ? ' *' : null}\n </span>\n <div className={`${CheckboxGroup.className}-boxes`}>\n <CheckboxGroupContext.Provider value={state}>\n {children}\n </CheckboxGroupContext.Provider>\n </div>\n <span className={`${CheckboxGroup.className}-description`}>\n {description}\n </span>\n </StyledCheckboxGroup>\n );\n });\nCheckboxGroup.className = CLASSNAME;\nCheckboxGroup.defaultProps = DEFAULT_PROPS;\nCheckboxGroup.displayName = COMPONENT_NAME;\n","import styled, { css } from 'styled-components';\nimport { baseStyling } from '~/components/shared';\nimport { StyledCheckboxProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledCheckbox = styled.label<StyledCheckboxProps>`\n position: relative;\n width: fit-content;\n ${baseStyling}\n\n align-items: baseline;\n background: none;\n border: none;\n display: inline-flex;\n\n input {\n height: 100%;\n margin: 0;\n opacity: 0;\n overflow: visible;\n padding: 0;\n position: absolute;\n width: 100%;\n }\n\n span.label {\n ${({ $isDisabled, $isInvalid }) =>\n $isDisabled\n ? css`\n color: var(--redsift-color-neutral-midgrey);\n `\n : $isInvalid\n ? css`\n color: var(--redsift-color-error-primary);\n `\n : css`\n color: var(--redsift-color-neutral-black);\n `}\n\n font-family: var(--redsift-typography-body-font-family);\n font-size: var(--redsift-typography-body-font-size);\n font-weight: var(--redsift-typography-body-font-weight);\n line-height: var(--redsift-typography-body-line-height);\n padding-left: 4px;\n padding-right: 16px;\n position: relative;\n top: -4px;\n\n [dir='rtl'] & {\n padding-left: 16px;\n padding-right: 4px;\n }\n }\n\n .redsift-icon {\n padding: 2px;\n width: 24px;\n\n ${({ $isColored, $isDisabled, $isInvalid, $isFocusVisible }) => css`\n ${$isDisabled\n ? css`\n color: var(--redsift-color-neutral-midgrey);\n `\n : $isInvalid\n ? css`\n color: var(--redsift-color-error-primary);\n `\n : css`\n color: var(\n --redsift-color-${$isColored ? 'default' : 'question'}-primary\n );\n `}\n\n ${$isFocusVisible\n ? css`\n background-color: var(\n --redsift-color-${$isColored ? 'default' : 'question'}-hover\n );\n border-radius: 21px;\n `\n : ''}\n `}\n }\n\n &:hover,\n &:focus-visible {\n outline: none;\n\n ${({ $isColored, $isDisabled }) =>\n !$isDisabled\n ? css`\n .redsift-icon {\n background-color: var(\n --redsift-color-${$isColored ? 'default' : 'question'}-hover\n );\n }\n `\n : ''}\n }\n\n ${({ $isColored, $isFocusVisible }) =>\n $isFocusVisible\n ? css`\n .redsift-icon {\n background-color: var(\n --redsift-color-${$isColored ? 'default' : 'question'}-hover\n );\n }\n `\n : ''}\n`;\n","import React, {\n ComponentProps,\n forwardRef,\n MutableRefObject,\n useCallback,\n useContext,\n useEffect,\n useState,\n} from 'react';\nimport classNames from 'classnames';\nimport { useFocusRing } from '@react-aria/focus';\nimport {\n mdiCheckboxBlankOutline,\n mdiMinusBox,\n mdiCheckboxMarked,\n} from '@redsift/icons';\nimport { Comp } from '~/types';\nimport { Icon } from '~/components/icon';\nimport { CheckboxGroupContext } from '~/components/checkbox-group/context';\nimport { warnIfNoAccessibleLabelFound } from '~/utils/warnIfNoAccessibleLabelFound';\nimport { CheckboxProps } from './types';\nimport { StyledCheckbox } from './styles';\n\nconst COMPONENT_NAME = 'Checkbox';\nconst CLASSNAME = 'redsift-checkbox';\nconst DEFAULT_PROPS: Partial<CheckboxProps> = {\n isColored: true,\n};\n\n/**\n * The Checkbox component.\n * Works both inside a CheckboxGroup or as standalone.\n * Can be used as controlled or uncontrolled.\n */\nexport const Checkbox: Comp<CheckboxProps, HTMLLabelElement> = forwardRef(\n (props, ref) => {\n const groupState = useContext(CheckboxGroupContext);\n\n let {\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledby,\n autoFocus,\n children,\n className,\n defaultSelected,\n inputProps,\n inputRef,\n isColored,\n isControlled,\n isDisabled,\n isIndeterminate,\n isInvalid,\n isReadOnly,\n isRequired,\n isSelected: propsIsSelected,\n name,\n onChange,\n value,\n ...forwardedProps\n } = props;\n\n const { isFocusVisible, focusProps } = useFocusRing({ autoFocus });\n isDisabled = isDisabled ?? groupState?.isDisabled;\n isReadOnly = isReadOnly ?? groupState?.isReadOnly;\n\n const [isSelected, setSelected] = useState(\n propsIsSelected ??\n defaultSelected ??\n groupState?.value.includes(value as string)\n );\n\n useEffect(() => {\n setSelected(propsIsSelected ?? defaultSelected);\n }, [propsIsSelected, defaultSelected]);\n\n useEffect(() => {\n if (groupState) {\n setSelected(groupState.value.includes(value as string));\n }\n }, [groupState?.value]);\n\n warnIfNoAccessibleLabelFound(props as ComponentProps<'label'>, [children]);\n\n if (groupState && !isControlled) {\n if (propsIsSelected != null) {\n console.warn(\n 'isSelected is unsupported on individual <Checkbox> elements within a <CheckboxGroup> unless the <Checkbox> is controlled. Please apply this prop to the group instead or pass isControlled to the component.'\n );\n }\n if (defaultSelected != null) {\n console.warn(\n 'defaultSelected is unsupported on individual <Checkbox> elements within a <CheckboxGroup> unless the <Checkbox> is controlled. Please apply this prop to the group instead or pass isControlled to the component.'\n );\n }\n if (props.value == null) {\n console.warn(\n 'A <Checkbox> element within a <CheckboxGroup> requires a `value` property unless the <Checkbox> is controlled.'\n );\n }\n }\n\n const handleChange = useCallback(\n (event: React.ChangeEvent<HTMLInputElement>) => {\n if (isDisabled || isReadOnly) {\n return;\n }\n\n if (groupState) {\n if (!groupState.value.includes(value as string)) {\n groupState.addValue(value as string);\n } else {\n groupState.removeValue(value as string);\n }\n }\n\n if (onChange) {\n onChange(!isSelected, value, name, event, groupState!);\n }\n setSelected(event.target.checked);\n },\n [onChange, groupState]\n );\n\n return (\n <StyledCheckbox\n {...forwardedProps}\n $isColored={isColored}\n $isDisabled={isDisabled}\n $isFocusVisible={isFocusVisible}\n $isInvalid={isInvalid || (isRequired && !isSelected)}\n $isRequired={isRequired}\n $isSelected={isSelected}\n className={classNames(Checkbox.className, className)}\n ref={ref as MutableRefObject<HTMLLabelElement>}\n >\n <input\n {...inputProps}\n {...focusProps}\n aria-checked={\n isSelected || (isControlled && propsIsSelected)\n ? 'true'\n : isIndeterminate\n ? 'mixed'\n : 'false'\n }\n aria-disabled={isDisabled}\n aria-invalid={isInvalid || (isRequired && !isSelected)}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledby}\n aria-readonly={isReadOnly}\n aria-required={isRequired}\n checked={isSelected ? true : false}\n disabled={isDisabled}\n name={name}\n onChange={handleChange}\n ref={inputRef as MutableRefObject<HTMLInputElement>}\n type=\"checkbox\"\n value={value}\n />\n {isSelected || (isControlled && propsIsSelected) ? (\n <Icon icon={mdiCheckboxMarked} />\n ) : isIndeterminate ? (\n <Icon icon={mdiMinusBox} />\n ) : (\n <Icon icon={mdiCheckboxBlankOutline} />\n )}\n {children ? <span className=\"label\">{children}</span> : null}\n </StyledCheckbox>\n );\n }\n);\nCheckbox.className = CLASSNAME;\nCheckbox.defaultProps = DEFAULT_PROPS;\nCheckbox.displayName = COMPONENT_NAME;\n","import React from 'react';\nimport { ConditionalWrapperProps } from './types';\n\nexport const ConditionalWrapper: React.FC<ConditionalWrapperProps> = ({\n children,\n condition,\n wrapper,\n}) => (condition ? wrapper(children) : <>{children}</>);\n","import enUS from './en-US.json';\nimport frFR from './fr-FR.json';\n\nexport default {\n 'en-US': enUS,\n 'fr-FR': frFR,\n};\n","import { ComponentProps } from 'react';\nimport {\n ColorPalette,\n ProductColorPalette,\n StylingProps,\n ValueOf,\n} from '~/types';\n\n/**\n * Component variant.\n */\nexport const ShieldVariant = {\n success: 'success',\n successLocked: 'successLocked',\n successUnlocked: 'successUnlocked',\n fail: 'fail',\n failLocked: 'failLocked',\n failUnlocked: 'failUnlocked',\n warning: 'warning',\n warningLocked: 'warningLocked',\n warningUnlocked: 'warningUnlocked',\n ignored: 'ignored',\n noData: 'noData',\n question: 'question',\n email: 'email',\n} as const;\nexport type ShieldVariant = ValueOf<typeof ShieldVariant>;\n\n/**\n * Component props.\n */\nexport interface ShieldProps extends ComponentProps<'div'>, StylingProps {\n /** Indicates whether the element is exposed to an accessibility API. */\n 'aria-hidden'?: boolean | 'false' | 'true';\n /** A screen reader only label for the Icon. */\n 'aria-label'?: string;\n /** Additional properties to forward to the SVG tag. */\n svgProps?: ComponentProps<'svg'>;\n /** Whether the shield has an outline or not. */\n isOutlined?: boolean;\n /** Whether the shield has its colors reversed or not. */\n isReversed?: boolean;\n /** Shield variant. */\n variant?: ShieldVariant;\n}\n\nexport type StyledShieldProps = Omit<ShieldProps, 'color'> & {\n $color?: ColorPalette | ProductColorPalette | string;\n $isOutlined: ShieldProps['isOutlined'];\n $isReversed: ShieldProps['isReversed'];\n $variant: ShieldProps['variant'];\n};\n","import styled, { css } from 'styled-components';\nimport { baseStyling } from '~/components/shared';\nimport { StyledShieldProps } from './types';\n\nexport const StyledShield = styled.div<StyledShieldProps>`\n height: 24px;\n width: 20px;\n ${baseStyling}\n\n box-sizing: content-box;\n\n ${({ $color, $isOutlined, $isReversed }) => {\n if ($isReversed && $isOutlined) {\n return css`\n & .shield {\n fill: var(--redsift-color-${$color}-primary);\n stroke: #ffffff;\n stroke-width: 2;\n }\n & .icon {\n fill-rule: evenodd;\n clip-rule: evenodd;\n fill: #ffffff;\n }\n `;\n } else if ($isOutlined) {\n return css`\n & .shield {\n fill: #ffffff;\n stroke: var(--redsift-color-${$color}-primary);\n stroke-width: 2;\n }\n & .icon {\n fill-rule: evenodd;\n clip-rule: evenodd;\n fill: var(--redsift-color-${$color}-primary);\n }\n `;\n } else if ($isReversed) {\n return css`\n & .shield {\n fill: #ffffff;\n }\n & .icon {\n fill-rule: evenodd;\n clip-rule: evenodd;\n fill: var(--redsift-color-${$color}-primary);\n }\n `;\n } else {\n return css`\n & .shield {\n fill: var(--redsift-color-${$color}-primary);\n }\n & .icon {\n fill-rule: evenodd;\n clip-rule: evenodd;\n fill: #ffffff;\n }\n `;\n }\n }}\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\nimport { ColorPalette, Comp } from '~/types';\n\nimport { ShieldProps, ShieldVariant } from './types';\nimport { StyledShield } from './styles';\n\nconst COMPONENT_NAME = 'Shield';\nconst CLASSNAME = 'redsift-shield';\nconst DEFAULT_PROPS: Partial<ShieldProps> = {\n variant: ShieldVariant.success,\n};\n\nconst getVariant = (variant: ShieldVariant) => {\n switch (variant) {\n case ShieldVariant.email:\n return {\n color: ColorPalette.info,\n icon: 'M14.7,6.3H5.3c-0.6,0-1.2,0.5-1.2,1.2l0,7c0,0.6,0.5,1.2,1.2,1.2h9.3c0.6,0,1.2-0.5,1.2-1.2v-7 C15.8,6.9,15.3,6.3,14.7,6.3z M14.7,14.5H5.3V8.7l4.7,2.9l4.7-2.9V14.5z M10,10.4L5.3,7.5h9.3L10,10.4z',\n };\n case ShieldVariant.fail:\n return {\n color: ColorPalette.error,\n icon: 'M9,15V5h2v10H9z M9,19v-2h2v2H9z',\n };\n case ShieldVariant.failLocked:\n return {\n color: ColorPalette.error,\n icon: 'M13.5,9.7h-0.6V8.5c0-1.6-1.3-2.9-2.9-2.9S7.1,6.9,7.1,8.5v1.2H6.5c-0.6,0-1.2,0.5-1.2,1.2v5.8 c0,0.6,0.5,1.2,1.2,1.2h7c0.6,0,1.2-0.5,1.2-1.2v-5.8C14.7,10.2,14.1,9.7,13.5,9.7z M10,14.9c-0.6,0-1.2-0.5-1.2-1.2 s0.5-1.2,1.2-1.2c0.6,0,1.2,0.5,1.2,1.2S10.6,14.9,10,14.9z M11.8,9.7H8.2V8.5c0-1,0.8-1.8,1.8-1.8s1.8,0.8,1.8,1.8V9.7z',\n };\n case ShieldVariant.failUnlocked:\n return {\n color: ColorPalette.error,\n icon: 'M10,14.9c0.6,0,1.2-0.5,1.2-1.2s-0.5-1.2-1.2-1.2c-0.6,0-1.2,0.5-1.2,1.2S9.4,14.9,10,14.9z M13.5,9.7h-0.6V8.5 c0-1.6-1.3-2.9-2.9-2.9S7.1,6.9,7.1,8.5h1.1c0-1,0.8-1.8,1.8-1.8s1.8,0.8,1.8,1.8v1.2H6.5c-0.6,0-1.2,0.5-1.2,1.2v5.8 c0,0.6,0.5,1.2,1.2,1.2h7c0.6,0,1.2-0.5,1.2-1.2v-5.8C14.7,10.2,14.1,9.7,13.5,9.7z M13.5,16.7h-7v-5.8h7V16.7z',\n };\n case ShieldVariant.ignored:\n return {\n color: ColorPalette['no-data'],\n icon: 'M10,6.2c-3.2,0-5.8,2.6-5.8,5.8c0,3.2,2.6,5.8,5.8,5.8s5.8-2.6,5.8-5.8C15.8,8.8,13.2,6.2,10,6.2z M5.3,12 c0-2.6,2.1-4.7,4.7-4.7c1.1,0,2.1,0.4,2.9,1l-6.5,6.5C5.7,14.1,5.3,13.1,5.3,12z M10,16.7c-1.1,0-2.1-0.4-2.9-1l6.5-6.5 c0.6,0.8,1,1.8,1,2.9C14.7,14.6,12.6,16.7,10,16.7z',\n };\n case ShieldVariant.noData:\n return {\n color: ColorPalette['no-data'],\n icon: 'M16,13H4v-2h12V13z',\n };\n case ShieldVariant.question:\n return {\n color: ColorPalette.question,\n icon: 'M9,17h2v-2H9V17z M10,5C7.8,5,6,6.8,6,9h2c0-1.1,0.9-2,2-2s2,0.9,2,2c0,2-3,1.8-3,5h2c0-2.2,3-2.5,3-5 C14,6.8,12.2,5,10,5z',\n };\n case ShieldVariant.success:\n return {\n color: ColorPalette.success,\n icon: 'M8,16.6l8.5-8.5l-1.4-1.4L8,13.7l-2.8-2.8l-1.4,1.4L8,16.6z',\n };\n case ShieldVariant.successLocked:\n return {\n color: ColorPalette.success,\n icon: 'M13.5,9.7h-0.6V8.5c0-1.6-1.3-2.9-2.9-2.9S7.1,6.9,7.1,8.5v1.2H6.5c-0.6,0-1.2,0.5-1.2,1.2v5.8 c0,0.6,0.5,1.2,1.2,1.2h7c0.6,0,1.2-0.5,1.2-1.2v-5.8C14.7,10.2,14.1,9.7,13.5,9.7z M10,14.9c-0.6,0-1.2-0.5-1.2-1.2 s0.5-1.2,1.2-1.2c0.6,0,1.2,0.5,1.2,1.2S10.6,14.9,10,14.9z M11.8,9.7H8.2V8.5c0-1,0.8-1.8,1.8-1.8s1.8,0.8,1.8,1.8V9.7z',\n };\n case ShieldVariant.successUnlocked:\n return {\n color: ColorPalette.success,\n icon: 'M10,14.9c0.6,0,1.2-0.5,1.2-1.2s-0.5-1.2-1.2-1.2c-0.6,0-1.2,0.5-1.2,1.2S9.4,14.9,10,14.9z M13.5,9.7h-0.6V8.5 c0-1.6-1.3-2.9-2.9-2.9S7.1,6.9,7.1,8.5h1.1c0-1,0.8-1.8,1.8-1.8s1.8,0.8,1.8,1.8v1.2H6.5c-0.6,0-1.2,0.5-1.2,1.2v5.8 c0,0.6,0.5,1.2,1.2,1.2h7c0.6,0,1.2-0.5,1.2-1.2v-5.8C14.7,10.2,14.1,9.7,13.5,9.7z M13.5,16.7h-7v-5.8h7V16.7z',\n };\n case ShieldVariant.warning:\n return {\n color: ColorPalette.warning,\n icon: 'M10,5c0.7,0,1.4,0.4,1.7,1l4,7c0.4,0.6,0.4,1.4,0,2c-0.4,0.6-1,1-1.7,1H6c-0.7,0-1.4-0.4-1.7-1 c-0.4-0.6-0.4-1.4,0-2l4-7C8.6,5.4,9.3,5,10,5z M10,7l-4,7h8L10,7z',\n };\n case ShieldVariant.warningLocked:\n return {\n color: ColorPalette.warning,\n icon: 'M13.5,9.7h-0.6V8.5c0-1.6-1.3-2.9-2.9-2.9S7.1,6.9,7.1,8.5v1.2H6.5c-0.6,0-1.2,0.5-1.2,1.2v5.8 c0,0.6,0.5,1.2,1.2,1.2h7c0.6,0,1.2-0.5,1.2-1.2v-5.8C14.7,10.2,14.1,9.7,13.5,9.7z M10,14.9c-0.6,0-1.2-0.5-1.2-1.2 s0.5-1.2,1.2-1.2c0.6,0,1.2,0.5,1.2,1.2S10.6,14.9,10,14.9z M11.8,9.7H8.2V8.5c0-1,0.8-1.8,1.8-1.8s1.8,0.8,1.8,1.8V9.7z',\n };\n case ShieldVariant.warningUnlocked:\n return {\n color: ColorPalette.warning,\n icon: 'M10,14.9c0.6,0,1.2-0.5,1.2-1.2s-0.5-1.2-1.2-1.2c-0.6,0-1.2,0.5-1.2,1.2S9.4,14.9,10,14.9z M13.5,9.7h-0.6V8.5 c0-1.6-1.3-2.9-2.9-2.9S7.1,6.9,7.1,8.5h1.1c0-1,0.8-1.8,1.8-1.8s1.8,0.8,1.8,1.8v1.2H6.5c-0.6,0-1.2,0.5-1.2,1.2v5.8 c0,0.6,0.5,1.2,1.2,1.2h7c0.6,0,1.2-0.5,1.2-1.2v-5.8C14.7,10.2,14.1,9.7,13.5,9.7z M13.5,16.7h-7v-5.8h7V16.7z',\n };\n }\n};\n\n/**\n * The Shield component.\n */\nexport const Shield: Comp<ShieldProps, HTMLDivElement> = forwardRef(\n (props, ref) => {\n const {\n 'aria-hidden': ariaHidden,\n 'aria-label': ariaLabel,\n className,\n svgProps,\n isOutlined,\n isReversed,\n variant,\n ...forwardedProps\n } = props;\n\n const { color, icon } = getVariant(variant!);\n\n return (\n <StyledShield\n {...forwardedProps}\n aria-hidden={ariaLabel ? (ariaHidden ? ariaHidden : undefined) : true}\n aria-label={ariaLabel}\n className={classNames(Shield.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n $color={color}\n $isOutlined={isOutlined}\n $isReversed={isReversed}\n $variant={variant}\n >\n <svg\n aria-hidden={ariaLabel ? (ariaHidden ? ariaHidden : undefined) : true}\n aria-label={ariaLabel}\n focusable=\"false\"\n preserveAspectRatio=\"xMidYMid meet\"\n role=\"img\"\n style={{ verticalAlign: '-0.125em' }}\n viewBox=\"0 0 20 24\"\n width=\"20\"\n height=\"24\"\n {...svgProps}\n >\n <path\n d={\n isOutlined\n ? 'M1,10.9V5l9-3.9L19,5v5.9c0,5.5-3.9,10.7-9,12.1C4.9,21.6,1,16.4,1,10.9z'\n : 'M10,0L0,4.4v6.5C0,17,4.3,22.6,10,24c5.7-1.4,10-7,10-13.1V4.4L10,0z'\n }\n className=\"shield\"\n />\n <path d={icon} className=\"icon\" />\n </svg>\n </StyledShield>\n );\n }\n);\nShield.className = CLASSNAME;\nShield.defaultProps = DEFAULT_PROPS;\nShield.displayName = COMPONENT_NAME;\n","import enUS from './en-US.json';\nimport frFR from './fr-FR.json';\n\nexport default {\n 'en-US': enUS,\n 'fr-FR': frFR,\n};\n","import styled from 'styled-components';\nimport { StyledDetailedCardCollapsibleSectionItemsProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledDetailedCardCollapsibleSectionItems = styled.div<StyledDetailedCardCollapsibleSectionItemsProps>`\n background-color: var(--redsift-color-neutral-xlightgrey);\n margin: 8px -16px;\n padding: 8px 16px;\n\n .redsift-detailed-card-collapsible-section-items__caption {\n color: var(--redsift-color-neutral-black);\n display: flex;\n font-family: var(--redsift-typography-font-family-raleway);\n font-size: 12px;\n font-weight: 300;\n justify-content: flex-end;\n line-height: 14px;\n margin: 8px 0px;\n }\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\n\nimport { Comp } from '~/types';\nimport { DetailedCardCollapsibleSectionItemsProps } from './types';\nimport { StyledDetailedCardCollapsibleSectionItems } from './styles';\n\nconst COMPONENT_NAME = 'DetailedCardCollapsibleSectionItems';\nconst CLASSNAME = 'redsift-detailed-card-collapsible-section-items';\nconst DEFAULT_PROPS: Partial<DetailedCardCollapsibleSectionItemsProps> = {};\n\n/**\n * The DetailedCardCollapsibleSectionItems Section component.\n */\nexport const DetailedCardCollapsibleSectionItems: Comp<\n DetailedCardCollapsibleSectionItemsProps,\n HTMLDivElement\n> = forwardRef((props, ref) => {\n const { caption, children, className, ...forwardedProps } = props;\n\n return (\n <StyledDetailedCardCollapsibleSectionItems\n {...forwardedProps}\n className={classNames(\n DetailedCardCollapsibleSectionItems.className,\n className\n )}\n ref={ref as RefObject<HTMLDivElement>}\n >\n {children}\n {caption ? (\n <div\n className={`${DetailedCardCollapsibleSectionItems.className}__caption`}\n >\n {caption}\n </div>\n ) : null}\n </StyledDetailedCardCollapsibleSectionItems>\n );\n});\nDetailedCardCollapsibleSectionItems.className = CLASSNAME;\nDetailedCardCollapsibleSectionItems.defaultProps = DEFAULT_PROPS;\nDetailedCardCollapsibleSectionItems.displayName = COMPONENT_NAME;\n","import styled from 'styled-components';\nimport { StyledDetailedCardSectionProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledDetailedCardSection = styled.div<StyledDetailedCardSectionProps>`\n margin: 8px 0;\n\n .redsift-detailed-card-section__header {\n border-bottom: 1px solid var(--redsift-color-neutral-midgrey);\n margin-bottom: 8px;\n }\n\n .redsift-detailed-card-section-header__title {\n color: var(--redsift-color-neutral-black);\n font-family: var(--redsift-typography-font-family-raleway);\n font-size: 18px;\n font-weight: 700;\n line-height: 22px;\n padding: 6px 0px;\n }\n\n .redsift-detailed-card-section-header__collapse-button {\n color: var(--redsift-color-neutral-black);\n }\n\n .redsift-detailed-card-collapsible-section-items {\n visibility: ${({ $isCollapsed }) => (!$isCollapsed ? 'visible' : 'hidden')};\n overflow: ${({ $isCollapsed }) => (!$isCollapsed ? 'visible' : 'hidden')};\n height: ${({ $isCollapsed }) => (!$isCollapsed ? 'auto' : '0px')};\n margin: ${({ $isCollapsed }) => (!$isCollapsed ? '8px -16px' : 'unset')};\n padding: ${({ $isCollapsed }) => (!$isCollapsed ? '8px 16px' : 'unset')};\n }\n`;\n","import React, { forwardRef, ReactNode, RefObject, useState } from 'react';\nimport classNames from 'classnames';\n\nimport { useLocalizedStringFormatter } from '@react-aria/i18n';\nimport intlMessages from './intl';\n\nimport { mdiChevronDown, mdiChevronUp } from '@redsift/icons';\nimport { Comp } from '~/types';\nimport { Flexbox } from '~/components/flexbox';\nimport { IconButton } from '~/components/icon-button';\nimport { DetailedCardSectionProps } from './types';\nimport { isComponent } from '~/utils/isComponent';\nimport { DetailedCardCollapsibleSectionItems } from '~/components/detailed-card-collapsible-section-items';\nimport { StyledDetailedCardSection } from './styles';\n\nconst COMPONENT_NAME = 'DetailedCardSection';\nconst CLASSNAME = 'redsift-detailed-card-section';\nconst DEFAULT_PROPS: Partial<DetailedCardSectionProps> = {\n isCollapsible: true,\n};\n\nconst hasCollapsibleChildren = (children: ReactNode): boolean => {\n let hasCollapsible = false;\n\n React.Children.map(children, (child) => {\n if (isComponent(DetailedCardCollapsibleSectionItems)(child)) {\n hasCollapsible = true;\n }\n });\n\n return hasCollapsible;\n};\n\n/**\n * The DetailedCardSection component.\n */\nexport const DetailedCardSection: Comp<\n DetailedCardSectionProps,\n HTMLDivElement\n> = forwardRef((props, ref) => {\n const {\n children,\n className,\n header,\n isCollapsed: propsIsCollapsed,\n isCollapsible: propsIsCollapsible,\n ...forwardedProps\n } = props;\n\n const stringFormatter = useLocalizedStringFormatter(intlMessages);\n\n const isCollapsible = propsIsCollapsible && hasCollapsibleChildren(children);\n\n const [isCollapsed, setIsCollapsed] = useState<boolean>(\n Boolean(propsIsCollapsed)\n );\n\n return (\n <StyledDetailedCardSection\n {...forwardedProps}\n className={classNames(DetailedCardSection.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n $isCollapsed={isCollapsed}\n >\n <Flexbox\n justifyContent=\"space-between\"\n className={`${DetailedCardSection.className}__header`}\n >\n {header ? (\n <div className={`${DetailedCardSection.className}-header__title`}>\n {header}\n </div>\n ) : null}\n {isCollapsible ? (\n <IconButton\n aria-label={stringFormatter.format(\n isCollapsed ? 'expand' : 'collapse'\n )}\n className={`${DetailedCardSection.className}-header__collapse-button`}\n color=\"question\"\n icon={isCollapsed ? mdiChevronDown : mdiChevronUp}\n onPress={() => {\n setIsCollapsed((isCollapsed) => !isCollapsed);\n }}\n />\n ) : null}\n </Flexbox>\n {children}\n </StyledDetailedCardSection>\n );\n});\nDetailedCardSection.className = CLASSNAME;\nDetailedCardSection.defaultProps = DEFAULT_PROPS;\nDetailedCardSection.displayName = COMPONENT_NAME;\n","import styled, { css } from 'styled-components';\nimport { baseStyling } from '~/components/shared';\nimport { StyledDetailedCardProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledDetailedCard = styled.div<StyledDetailedCardProps>`\n ${baseStyling}\n\n background-color: var(--redsift-color-neutral-white);\n box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5);\n padding: 16px;\n\n .redsift-detailed-card__banner {\n align-items: center;\n background-color: ${({ $color }) =>\n css`var(--redsift-color-${$color}-primary)`};\n display: flex;\n height: 80px;\n justify-content: center;\n margin: -16px -16px 16px -16px;\n width: calc(100% + 32px);\n }\n\n .redsift-detailed-card__collapse-buttons {\n width: 100%;\n }\n`;\n","import styled from 'styled-components';\nimport { StyledDetailedCardHeaderProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledDetailedCardHeader = styled.div<StyledDetailedCardHeaderProps>`\n margin: 8px 0;\n\n .redsift-detailed-card-header__header {\n font-family: var(--redsift-typography-font-family-raleway);\n font-size: 32px;\n font-weight: 500;\n line-height: 32px;\n margin-bottom: 16px;\n }\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\n\nimport { Comp } from '~/types';\nimport { Heading } from '~/components/heading';\nimport { StyledDetailedCardHeader } from './styles';\nimport { DetailedCardHeaderProps } from './types';\n\nconst COMPONENT_NAME = 'DetailedCardHeader';\nconst CLASSNAME = 'redsift-detailed-card-header';\nconst DEFAULT_PROPS: Partial<DetailedCardHeaderProps> = {};\n\n/**\n * The DetailedCardHeader component.\n */\nexport const DetailedCardHeader: Comp<DetailedCardHeaderProps, HTMLDivElement> =\n forwardRef((props, ref) => {\n const { children, className, header, ...forwardedProps } = props;\n\n return (\n <StyledDetailedCardHeader\n {...forwardedProps}\n className={classNames(DetailedCardHeader.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n >\n {header ? (\n <Heading\n as=\"h2\"\n className={`${DetailedCardHeader.className}__header`}\n >\n {header}\n </Heading>\n ) : null}\n\n {children}\n </StyledDetailedCardHeader>\n );\n });\nDetailedCardHeader.className = CLASSNAME;\nDetailedCardHeader.defaultProps = DEFAULT_PROPS;\nDetailedCardHeader.displayName = COMPONENT_NAME;\n","import styled, { css } from 'styled-components';\nimport { baseStyling } from '~/components/shared';\nimport { StyledPillProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledPill = styled.div<StyledPillProps>`\n width: fit-content;\n ${baseStyling}\n\n padding: 0 6.5px;\n text-align: center;\n word-break: ${({ $autoBreak }) => ($autoBreak ? 'break-word' : 'normal')};\n\n ${({ $color }) => css`\n ${$color === 'black'\n ? 'background-color: var(--redsift-color-neutral-black);'\n : $color === 'white'\n ? 'background-color: var(--redsift-color-neutral-white);'\n : $color === 'error'\n ? 'background-color: var(--redsift-data-viz-color-red-default);'\n : $color === 'warning'\n ? 'background-color: var(--redsift-data-viz-color-orange-default);'\n : $color === 'success'\n ? 'background-color: var(--redsift-data-viz-color-green-default);'\n : `background-color: var(--redsift-data-viz-color-${$color}-default);`}\n\n &,\n .redsift-icon {\n color: var(\n --redsift-color-neutral-${$color === 'black' ? 'white' : 'black'}\n );\n }\n `}}\n\n &,\n .redsift-icon {\n font-family: var(--redsift-typography-pill-font-family);\n font-size: var(--redsift-typography-pill-font-size);\n font-weight: var(--redsift-typography-pill-font-weight);\n line-height: var(--redsift-typography-pill-line-height);\n }\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\nimport { Comp, DataVizColorPalette } from '~/types';\nimport { StyledPill } from './styles';\nimport { PillProps } from './types';\n\nconst COMPONENT_NAME = 'Pill';\nconst CLASSNAME = 'redsift-badge';\nconst DEFAULT_PROPS: Partial<PillProps> = {\n color: DataVizColorPalette.blue,\n};\n\n/**\n * The Pill component.\n */\nexport const Pill: Comp<PillProps, HTMLDivElement> = forwardRef(\n (props, ref) => {\n const { autoBreak, children, className, color, ...forwardedProps } = props;\n\n return (\n <StyledPill\n {...forwardedProps}\n $autoBreak={autoBreak}\n $color={color}\n className={classNames(Pill.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n >\n {children}\n </StyledPill>\n );\n }\n);\nPill.className = CLASSNAME;\nPill.defaultProps = DEFAULT_PROPS;\nPill.displayName = COMPONENT_NAME;\n","import styled from 'styled-components';\nimport { StyledDetailedCardSectionItemProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledDetailedCardSectionItem = styled.div<StyledDetailedCardSectionItemProps>`\n padding: 8px 0;\n\n .redsift-detailed-card-section-item-header__shield {\n align-items: center;\n display: flex;\n height: 28px;\n justify-content: center;\n padding: 0 4px;\n }\n\n .redsift-detailed-card-section-item-header__icon {\n height: 28px;\n }\n\n .redsift-detailed-card-section-item-header__pill {\n display: inline-block;\n margin-right: 8px;\n }\n\n .redsift-detailed-card-section-item-header__description {\n line-height: 28px;\n }\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\n\nimport { Comp } from '~/types';\nimport { Flexbox } from '~/components/flexbox';\nimport { Shield } from '~/components/shield';\nimport { Icon } from '~/components/icon';\nimport { Pill } from '~/components/pill';\nimport { DetailedCardSectionItemProps } from './types';\nimport { StyledDetailedCardSectionItem } from './styles';\n\nconst COMPONENT_NAME = 'DetailedCardSectionItem';\nconst CLASSNAME = 'redsift-detailed-card-section-item';\nconst DEFAULT_PROPS: Partial<DetailedCardSectionItemProps> = {};\n\n/**\n * The DetailedCardSectionItems component.\n */\nexport const DetailedCardSectionItem: Comp<\n DetailedCardSectionItemProps,\n HTMLDivElement\n> = forwardRef((props, ref) => {\n const {\n children,\n className,\n description,\n icon,\n iconProps,\n pill,\n pillProps,\n shield,\n ...forwardedProps\n } = props;\n\n return (\n <StyledDetailedCardSectionItem\n {...forwardedProps}\n className={classNames(DetailedCardSectionItem.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n >\n <Flexbox\n alignItems=\"flex-start\"\n className={`${DetailedCardSectionItem.className}__header`}\n >\n {shield ? (\n <Shield\n variant={shield}\n className={`${DetailedCardSectionItem.className}-header__shield`}\n />\n ) : icon ? (\n <div className={`${DetailedCardSectionItem.className}-header__icon`}>\n <Icon icon={icon} {...iconProps} size=\"large\" />\n </div>\n ) : null}\n {description || pill ? (\n <div\n className={`${DetailedCardSectionItem.className}-header__description`}\n >\n {pill && (\n <Pill\n className={`${DetailedCardSectionItem.className}-header__pill`}\n {...pillProps}\n >\n {pill}\n </Pill>\n )}\n {description}\n </div>\n ) : null}\n </Flexbox>\n {children}\n </StyledDetailedCardSectionItem>\n );\n});\nDetailedCardSectionItem.className = CLASSNAME;\nDetailedCardSectionItem.defaultProps = DEFAULT_PROPS;\nDetailedCardSectionItem.displayName = COMPONENT_NAME;\n","import React, {\n forwardRef,\n ReactElement,\n ReactNode,\n RefObject,\n useCallback,\n useEffect,\n useState,\n} from 'react';\nimport classNames from 'classnames';\n\nimport { useLocalizedStringFormatter } from '@react-aria/i18n';\nimport intlMessages from './intl';\n\nimport { mdiKeyboardCaps, mdiPageLast } from '@redsift/icons';\nimport { Comp } from '~/types';\nimport { Icon } from '~/components/icon';\nimport { Flexbox } from '~/components/flexbox';\nimport { IconButton } from '~/components/icon-button';\nimport { Shield } from '~/components/shield';\nimport {\n DetailedCardSection,\n DetailedCardSectionProps,\n} from '~/components/detailed-card-section';\nimport { StyledDetailedCard } from './styles';\nimport { DetailedCardProps } from './types';\nimport { partitionComponents, isComponent } from '~/utils';\nimport { DetailedCardCollapsibleSectionItems } from '~/components/detailed-card-collapsible-section-items';\nimport { DetailedCardHeader } from '../detailed-card-header';\nimport { DetailedCardSectionItem } from '../detailed-card-section-item';\n\nconst COMPONENT_NAME = 'DetailedCard';\nconst CLASSNAME = 'redsift-detailed-card';\nconst DEFAULT_PROPS: Partial<DetailedCardProps> = {\n isCollapsible: true,\n width: '400px',\n};\n\nconst hasCollapsibleChildren = (children: ReactNode): boolean => {\n let hasCollapsible = false;\n\n React.Children.map(children, (child) => {\n if (isComponent(DetailedCardSection)(child)) {\n let hasCollapsibleItems = Boolean(\n (child as DetailedCardSectionProps).isCollapsible\n );\n React.Children.map(child.props.children, (sectionChild) => {\n if (isComponent(DetailedCardCollapsibleSectionItems)(sectionChild)) {\n hasCollapsibleItems = true;\n }\n });\n hasCollapsible = hasCollapsibleItems;\n } else if (isComponent(DetailedCardCollapsibleSectionItems)(child)) {\n hasCollapsible = true;\n }\n });\n\n return hasCollapsible;\n};\n\n/**\n * The DetailedCard component.\n */\nconst BaseDetailedCard: Comp<DetailedCardProps, HTMLDivElement> = forwardRef(\n (props, ref) => {\n const {\n areAllCollapsed: propsAreAllCollapsed,\n children,\n className,\n color,\n defaultAllCollapsed,\n icon,\n isCollapsible: propsIsCollapsible,\n onCollapseAll,\n shield,\n ...forwardedProps\n } = props;\n\n const stringFormatter = useLocalizedStringFormatter(intlMessages);\n\n const isCollapsible =\n propsIsCollapsible && hasCollapsibleChildren(children);\n\n const [allCollapsed, setAllCollapsed] = useState({\n state: propsAreAllCollapsed ?? defaultAllCollapsed,\n });\n\n useEffect(() => {\n setAllCollapsed({\n state: propsAreAllCollapsed ?? defaultAllCollapsed,\n });\n }, [propsAreAllCollapsed, defaultAllCollapsed]);\n\n const handleCollapse = useCallback(\n (allCollapsed: boolean) => {\n if (onCollapseAll) {\n onCollapseAll(allCollapsed);\n }\n setAllCollapsed({\n state: allCollapsed,\n });\n },\n [onCollapseAll]\n );\n\n const [[header], content] = partitionComponents(\n React.Children.toArray(children),\n [isComponent('DetailedCardHeader')]\n );\n\n return (\n <StyledDetailedCard\n {...forwardedProps}\n className={classNames(BaseDetailedCard.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n $color={color}\n >\n {color ? (\n <div className={`${BaseDetailedCard.className}__banner`}>\n {shield ? (\n <Shield\n variant={shield}\n isOutlined\n isReversed\n svgProps={{ width: '40px', height: '40px' }}\n style={{ width: '40px', height: '40px' }}\n />\n ) : icon ? (\n <Icon icon={icon} color=\"white\" size=\"xlarge\" />\n ) : null}\n </div>\n ) : null}\n {header ? (\n <div className={`${BaseDetailedCard.className}__header`}>\n {header}\n </div>\n ) : null}\n {isCollapsible ? (\n <Flexbox\n justifyContent=\"flex-end\"\n className={`${BaseDetailedCard.className}__collapse-buttons`}\n >\n <IconButton\n aria-label={stringFormatter.format('collapse-all')}\n icon={mdiPageLast}\n onPress={() => handleCollapse(true)}\n style={{ transform: 'rotate(-90deg)' }}\n color=\"question\"\n />\n <IconButton\n aria-label={stringFormatter.format('expand-all')}\n icon={mdiKeyboardCaps}\n onPress={() => handleCollapse(false)}\n style={{ transform: 'rotate(180deg)' }}\n color=\"question\"\n />\n </Flexbox>\n ) : null}\n\n {React.Children.map(content, (child) => {\n if (isComponent(DetailedCardSection)(child)) {\n return React.cloneElement(child as ReactElement, {\n isCollapsed: allCollapsed.state,\n key: Math.random(),\n });\n }\n return child;\n })}\n </StyledDetailedCard>\n );\n }\n);\nBaseDetailedCard.className = CLASSNAME;\nBaseDetailedCard.defaultProps = DEFAULT_PROPS;\nBaseDetailedCard.displayName = COMPONENT_NAME;\n\nexport const DetailedCard = Object.assign(BaseDetailedCard, {\n Header: DetailedCardHeader,\n Section: DetailedCardSection,\n CollapsibleSectionItems: DetailedCardCollapsibleSectionItems,\n SectionItem: DetailedCardSectionItem,\n});\n","import styled from 'styled-components';\nimport { baseGrid, baseStyling } from '~/components/shared';\nimport { StyledGridProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledGrid = styled.div<StyledGridProps>`\n display: ${({ inline }) => (inline ? 'inline-grid' : 'grid')};\n\n ${baseStyling}\n ${baseGrid}\n`;\n","import styled from 'styled-components';\nimport { baseStyling } from '~/components/shared';\nimport { StyledGridItemProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledGridItem = styled.div<StyledGridItemProps>`\n display: inherit;\n\n ${baseStyling}\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\nimport { Comp } from '~/types';\nimport { StyledGridItem } from './styles';\nimport { GridItemProps } from './types';\n\nconst COMPONENT_NAME = 'GridItem';\nconst CLASSNAME = 'redsift-grid-item';\nconst DEFAULT_PROPS: Partial<GridItemProps> = {};\n\n/**\n * The GridItem component.\n */\nexport const GridItem: Comp<GridItemProps, HTMLDivElement> = forwardRef(\n (props, ref) => {\n const { children, className, ...forwardedProps } = props;\n\n return (\n <StyledGridItem\n {...forwardedProps}\n className={classNames(GridItem.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n >\n {children}\n </StyledGridItem>\n );\n }\n);\nGridItem.className = CLASSNAME;\nGridItem.defaultProps = DEFAULT_PROPS;\nGridItem.displayName = COMPONENT_NAME;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\nimport { Comp } from '~/types';\nimport { StyledGrid } from './styles';\nimport { GridProps } from './types';\nimport { GridItem } from '../grid-item';\n\nconst COMPONENT_NAME = 'Grid';\nconst CLASSNAME = 'redsift-grid';\nconst DEFAULT_PROPS: Partial<GridProps> = {};\n\n/**\n * The Grid component.\n */\nexport const BaseGrid: Comp<GridProps, HTMLDivElement> = forwardRef(\n (props, ref) => {\n const { children, className, ...forwardedProps } = props;\n\n return (\n <StyledGrid\n {...forwardedProps}\n className={classNames(BaseGrid.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n >\n {children}\n </StyledGrid>\n );\n }\n);\nBaseGrid.className = CLASSNAME;\nBaseGrid.defaultProps = DEFAULT_PROPS;\nBaseGrid.displayName = COMPONENT_NAME;\n\nexport const Grid = Object.assign(BaseGrid, {\n Item: GridItem,\n});\n","import styled, { css } from 'styled-components';\nimport { baseStyling } from '~/components/shared';\nimport { StyledLinkProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledLink = styled.a<StyledLinkProps>`\n ${baseStyling}\n\n background: none;\n border: none;\n color: inherit;\n cursor: text !important;\n font-family: var(--redsift-typography-link-font-family);\n font-size: var(--redsift-typography-link-font-size);\n font-weight: var(--redsift-typography-link-font-weight);\n line-height: var(--redsift-typography-link-line-height);\n padding: unset;\n text-decoration: none;\n\n ${({ $isDisabled }) =>\n !$isDisabled\n ? css`\n color: var(--redsift-color-success-primary);\n text-decoration: underline;\n text-decoration-color: var(--redsift-color-success-secondary);\n text-underline-offset: 2px;\n\n &:hover,\n &:focus-visible {\n cursor: pointer !important;\n text-decoration-color: var(--redsift-color-success-primary);\n }\n `\n : ''}\n\n &:focus-visible {\n outline: 2px solid var(--redsift-color-success-primary);\n }\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\nimport { Comp } from '~/types';\nimport { StyledLink } from './styles';\nimport { LinkProps } from './types';\n\nconst COMPONENT_NAME = 'Link';\nconst CLASSNAME = 'redsift-link';\nconst DEFAULT_PROPS: Partial<LinkProps> = {};\n\n/**\n * The Link is a semantic link that looks like a link.\n * Shoud be used for internal and external navigation only.\n *\n * For a semantic link that looks like a button, please use the ButtonLink component.\n * For a semantic button that looks like a button, please use the Button component.\n * For a semantic button that looks like a link, please use the LinkButton component.\n */\nexport const Link: Comp<LinkProps, HTMLAnchorElement> = forwardRef(\n (props, ref) => {\n const { children, className, href, isDisabled, ...forwardedProps } = props;\n\n return (\n <StyledLink\n aria-disabled={isDisabled}\n role=\"link\"\n tabIndex={!isDisabled ? 0 : undefined}\n {...forwardedProps}\n $isDisabled={isDisabled}\n className={classNames(Link.className, className)}\n href={!isDisabled ? href : undefined}\n ref={ref as RefObject<HTMLAnchorElement>}\n >\n {children}\n </StyledLink>\n );\n }\n);\nLink.className = CLASSNAME;\nLink.defaultProps = DEFAULT_PROPS;\nLink.displayName = COMPONENT_NAME;\n","import React, { forwardRef, RefObject, useRef } from 'react';\nimport classNames from 'classnames';\nimport { useButton } from '@react-aria/button';\nimport { AriaButtonProps } from '@react-types/button';\nimport { Comp } from '~/types';\nimport { StyledLink } from '~/components/link';\nimport { LinkButtonProps } from './types';\n\nconst COMPONENT_NAME = 'LinkButton';\nconst CLASSNAME = 'redsift-link-button';\nconst DEFAULT_PROPS: Partial<LinkButtonProps> = {};\n\n/**\n * The LinkButton is a semantic button that looks like a link.\n *\n * For a semantic button that looks like a button, please use the Button component.\n * For a semantic link that looks like a link, please use the Link component.\n * For a semantic link that looks like a button, please use the ButtonLink component.\n */\nexport const LinkButton: Comp<LinkButtonProps, HTMLButtonElement> = forwardRef(\n (props, ref) => {\n const buttonRef = ref || useRef<HTMLButtonElement>();\n const { buttonProps } = useButton(\n {\n ...props,\n isDisabled: props.isDisabled || props.disabled,\n preventFocusOnPress: true,\n } as AriaButtonProps<'button'>,\n buttonRef as RefObject<HTMLButtonElement>\n );\n\n const {\n children,\n className,\n disabled,\n isDisabled,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n onPress,\n ...forwardedProps\n } = props;\n\n return (\n <StyledLink\n as=\"button\"\n {...forwardedProps}\n {...buttonProps}\n $isDisabled={isDisabled || disabled}\n aria-disabled={isDisabled || disabled}\n className={classNames(LinkButton.className, className)}\n disabled={isDisabled || disabled}\n // @ts-ignore\n ref={buttonRef as RefObject<HTMLButtonElement>}\n >\n {children}\n </StyledLink>\n );\n }\n);\nLinkButton.className = CLASSNAME;\nLinkButton.defaultProps = DEFAULT_PROPS;\nLinkButton.displayName = COMPONENT_NAME;\n","import { ComponentProps } from 'react';\nimport {\n ColorPalette,\n FontFamily,\n NeutralColorPalette,\n ProductColorPalette,\n StylingProps,\n ValueOf,\n} from '~/types';\n\n/**\n * Component variant.\n */\nexport const TextVariant = {\n body: 'body',\n button: 'button',\n caption: 'caption',\n inherit: 'inherit',\n subtitle1: 'subtitle1',\n} as const;\nexport type TextVariant = ValueOf<typeof TextVariant>;\n\nexport const TextComponent = {\n p: 'p',\n b: 'b',\n i: 'i',\n u: 'u',\n abbr: 'abbr',\n cite: 'cite',\n del: 'del',\n em: 'em',\n ins: 'ins',\n kbd: 'kbd',\n mark: 'mark',\n s: 's',\n samp: 'samp',\n sub: 'sub',\n sup: 'sup',\n} as const;\nexport type TextComponent = ValueOf<typeof TextComponent>;\n\n/**\n * Component props.\n */\nexport interface TextProps extends ComponentProps<'span'>, StylingProps {\n /** Override component. */\n as?: TextComponent;\n /** Color variant. Either from color palette or hex or rgb strings. */\n color?: ColorPalette | ProductColorPalette | NeutralColorPalette | string;\n /** Font family. */\n fontFamily?: FontFamily;\n /** Font size. */\n fontSize?: string;\n /** Whether the text will truncate with a text overflow ellipsis or wrap. */\n noWrap?: boolean;\n /** Variant. */\n variant?: TextVariant;\n}\n\nexport type StyledTextProps = Omit<\n TextProps,\n 'as' | 'color' | 'fontFamily' | 'fontSize' | 'noWrap' | 'variant'\n> & {\n $as: TextProps['as'];\n $color: TextProps['color'];\n $fontFamily?: TextProps['fontFamily'];\n $fontSize: TextProps['fontSize'];\n $noWrap: TextProps['noWrap'];\n $variant: TextProps['variant'];\n};\n","import styled, { css } from 'styled-components';\nimport {\n ColorPalette,\n NeutralColorPalette,\n ProductColorPalette,\n} from '~/types';\nimport { baseStyling } from '~/components/shared';\nimport { StyledTextProps, TextComponent, TextVariant } from './types';\n\n/**\n * Component style.\n */\nexport const StyledText = styled.span<StyledTextProps>`\n ${baseStyling}\n\n ${({ $color }) =>\n $color &&\n [...Object.keys(ColorPalette), ...Object.keys(ProductColorPalette)].indexOf(\n $color\n ) !== -1\n ? css`\n color: var(--redsift-color-${$color}-primary);\n `\n : Object.keys(NeutralColorPalette).indexOf($color!) !== -1\n ? css`\n color: var(--redsift-color-neutral-${$color});\n `\n : css`\n color: ${$color || css`inherit`};\n `}\n\n ${({ $as }) => css`\n ${$as === TextComponent.i ||\n $as === TextComponent.cite ||\n $as === TextComponent.em\n ? css`\n font-style: italic;\n `\n : $as === TextComponent.sub\n ? css`\n vertical-align: sub;\n `\n : $as === TextComponent.sup\n ? css`\n vertical-align: super;\n `\n : ''}\n `}\n\n ${({ $as, $fontFamily, $fontSize, $variant }) =>\n !$variant\n ? css`\n ${$fontFamily\n ? css`\n font-family: ${$fontFamily};\n `\n : ''}\n ${$fontSize\n ? css`\n font-size: ${$fontSize};\n `\n : ''}\n ${$as === TextComponent.b\n ? css`\n font-weight: bold;\n `\n : $as === TextComponent.sup || $as === TextComponent.sub\n ? css`\n font-size: ${$fontSize ? $fontSize : '12px'};\n `\n : ''}\n `\n : $variant === TextVariant.inherit\n ? css`\n font-family: ${$fontFamily ? $fontFamily : css`inherit`};\n font-size: ${$fontSize\n ? $fontSize\n : $as === TextComponent.sup || $as === TextComponent.sub\n ? '12px'\n : css`inherit`};\n font-weight: ${$as === TextComponent.b ? 'bold' : 'inherit'};\n line-height: inherit;\n text-transform: inherit;\n `\n : css`\n font-family: ${$fontFamily\n ? $fontFamily\n : css`var(--redsift-typography-${$variant}-font-family)`};\n font-size: ${$fontSize\n ? $fontSize\n : css`var(--redsift-typography-${$variant}-font-size)`};\n font-weight: var(--redsift-typography-${$variant}-font-weight);\n line-height: var(--redsift-typography-${$variant}-line-height);\n text-transform: var(--redsift-typography-${$variant}-text-transform);\n `}\n \n ${({ $noWrap }) =>\n $noWrap\n ? css`\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n `\n : css`\n word-break: break-word;\n `}\n`;\n","import styled from 'styled-components';\nimport { StyledText } from '~/components/text/styles';\nimport { StyledNumberProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledNumber = styled(StyledText)<StyledNumberProps>`\n font-family: var(--redsift-typography-font-family-source-code-pro);\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport { useNumberFormatter } from '@react-aria/i18n';\nimport classNames from 'classnames';\nimport { Comp } from '~/types';\nimport { StyledNumber } from './styles';\nimport { NumberProps } from './types';\n\nconst COMPONENT_NAME = 'Number';\nconst CLASSNAME = 'redsift-number';\nconst DEFAULT_PROPS: Partial<NumberProps> = {\n compactDisplay: 'short',\n currencyDisplay: 'symbol',\n currencySign: 'standard',\n localeMatcher: 'best fit',\n notation: 'standard',\n signDisplay: 'auto',\n type: 'decimal',\n unitDisplay: 'short',\n roundingMode: 'halfExpand',\n roundingPriority: 'auto',\n trailingZeroDisplay: 'auto',\n minimumIntegerDigits: 1,\n minimumFractionDigits: 0,\n minimumSignificantDigits: 1,\n maximumSignificantDigits: 21,\n};\n\n/**\n * The Number component.\n */\nexport const Number: Comp<NumberProps, HTMLDivElement> = forwardRef(\n (props, ref) => {\n const {\n as,\n className,\n color,\n compactDisplay,\n currency,\n currencyDisplay,\n currencySign,\n fontSize,\n localeMatcher,\n maximumFractionDigits,\n maximumSignificantDigits,\n minimumFractionDigits,\n minimumIntegerDigits,\n minimumSignificantDigits,\n notation,\n noWrap,\n numberingSystem,\n roundingIncrement,\n roundingMode,\n roundingPriority,\n signDisplay,\n trailingZeroDisplay,\n type,\n unit,\n unitDisplay,\n useGrouping,\n value,\n variant,\n ...forwardedProps\n } = props;\n const formatter = useNumberFormatter({\n compactDisplay,\n currency,\n currencyDisplay,\n currencySign,\n localeMatcher,\n maximumFractionDigits,\n maximumSignificantDigits,\n minimumFractionDigits,\n minimumIntegerDigits,\n minimumSignificantDigits,\n notation,\n numberingSystem,\n // @ts-ignore\n roundingIncrement,\n // @ts-ignore\n roundingMode,\n // @ts-ignore\n roundingPriority,\n signDisplay,\n style: type,\n // @ts-ignore\n trailingZeroDisplay,\n unit,\n unitDisplay,\n useGrouping,\n });\n\n return (\n <StyledNumber\n as={as}\n {...forwardedProps}\n $as={as}\n className={classNames(Number.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n $color={color}\n $fontSize={fontSize}\n $noWrap={noWrap}\n $variant={variant}\n >\n {formatter.format(value)}\n </StyledNumber>\n );\n }\n);\nNumber.className = CLASSNAME;\nNumber.defaultProps = DEFAULT_PROPS;\nNumber.displayName = COMPONENT_NAME;\n","import { ComponentProps } from 'react';\nimport { StylingProps, ValueOf } from '~/types';\n\n/**\n * Context props.\n */\nexport type RadioGroupState = {\n /** Whether the radio group is disabled or not. */\n readonly isDisabled: boolean;\n /** Whether the radio group is read only or not. */\n readonly isReadOnly: boolean;\n /** Sets the selected value. */\n setValue(value: string): void;\n /** Current selected value. */\n readonly value: string;\n};\n\n/**\n * Component orientation.\n */\nexport const RadioGroupOrientation = {\n horizontal: 'horizontal',\n vertical: 'vertical',\n} as const;\nexport type RadioGroupOrientation = ValueOf<typeof RadioGroupOrientation>;\n\n/**\n * Component props.\n */\nexport interface RadioGroupProps\n extends Omit<ComponentProps<'div'>, 'onChange'>,\n StylingProps {\n /**\n * Default selected value.\n * Used for uncontrolled version.\n */\n defaultValue?: string;\n /** Description of the radio group. */\n description?: string;\n /** Whether the component is disabled or not. */\n isDisabled?: boolean;\n /** Whether the component is invalid or not. */\n isInvalid?: boolean;\n /** Whether the component is read only or not. */\n isReadOnly?: boolean;\n /** Whether the component is required or not. */\n isRequired?: boolean;\n /** Label of the radio group. */\n label?: string;\n /** Method to handle component change. */\n onChange?(values: string): void;\n /** Method to handle component change. */\n orientation?: RadioGroupOrientation;\n /** List of possible values. Useful to select all. */\n possibleValues?: string[];\n /**\n * Currently selected value.\n * Used for controlled version.\n */\n value?: string;\n}\n\nexport type StyledRadioGroupProps = Omit<\n RadioGroupProps,\n 'isDisabled' | 'isInvalid' | 'isReadOnly' | 'orientation' | 'isRequired'\n> & {\n $isDisabled: RadioGroupProps['isDisabled'];\n $isInvalid: RadioGroupProps['isInvalid'];\n $isReadOnly: RadioGroupProps['isReadOnly'];\n $orientation: RadioGroupProps['orientation'];\n};\n","import React from 'react';\nimport { RadioGroupState } from './types';\n\nexport const RadioGroupContext =\n React.createContext<RadioGroupState | null>(null);\n","import styled from 'styled-components';\nimport { baseStyling } from '~/components/shared';\nimport { RadioGroupOrientation, StyledRadioGroupProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledRadioGroup = styled.div<StyledRadioGroupProps>`\n ${baseStyling}\n\n display: flex;\n flex-direction: column;\n\n ${({ $orientation }) =>\n $orientation === RadioGroupOrientation.vertical\n ? `\n div.redsift-radio-group-boxes {\n display: flex;\n flex-direction: column;\n }\n `\n : `\n div.redsift-radio-group-boxes {\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n }\n `}\n\n span.redsift-radio-group-label {\n font-family: var(--redsift-typography-body-font-family);\n font-weight: var(--redsift-typography-body-font-weight);\n font-size: var(--redsift-typography-body-font-size);\n line-height: var(--redsift-typography-body-line-height);\n\n color: var(--redsift-color-neutral-black);\n ${({ $isDisabled }) =>\n $isDisabled\n ? `\n color: var(--redsift-color-neutral-midgrey);\n `\n : ''}\n ${({ $isInvalid }) =>\n $isInvalid\n ? `\n color: var(--redsift-color-error-primary);\n `\n : ''}\n }\n\n span.redsift-radio-group-description {\n font-family: var(--redsift-typography-helper-font-family);\n font-weight: var(--redsift-typography-helper-font-weight);\n font-size: var(--redsift-typography-helper-font-size);\n line-height: var(--redsift-typography-helper-line-height);\n\n color: var(--redsift-color-neutral-darkgrey);\n ${({ $isDisabled }) =>\n $isDisabled\n ? `\n color: var(--redsift-color-neutral-midgrey);\n `\n : ''}\n ${({ $isInvalid }) =>\n $isInvalid\n ? `\n color: var(--redsift-color-error-primary);\n `\n : ''}\n }\n`;\n","import React, { forwardRef, RefObject, useEffect, useState } from 'react';\nimport classNames from 'classnames';\nimport { ColorPalette, Comp } from '~/types';\nimport { RadioGroupOrientation, RadioGroupProps } from './types';\nimport { RadioGroupContext } from './context';\nimport { StyledRadioGroup } from './styles';\n\nconst COMPONENT_NAME = 'RadioGroup';\nconst CLASSNAME = 'redsift-radio-group';\nconst DEFAULT_PROPS: Partial<RadioGroupProps> = {\n color: ColorPalette.default,\n orientation: RadioGroupOrientation.vertical,\n};\n\n/**\n * The RadioGroup component.\n * Can be used as controlled or uncontrolled.\n */\nexport const RadioGroup: Comp<RadioGroupProps, HTMLDivElement> = forwardRef(\n (props, ref) => {\n const {\n children,\n className,\n defaultValue,\n description,\n isDisabled,\n isInvalid,\n isReadOnly,\n isRequired,\n label,\n onChange,\n orientation,\n possibleValues,\n value,\n ...forwardedProps\n } = props;\n\n const [selectedValue, setValue] = useState<string>(\n value || defaultValue || ''\n );\n useEffect(() => {\n if (value) {\n state.setValue(value);\n }\n }, [value]);\n\n const state = {\n value: selectedValue,\n isDisabled: isDisabled || false,\n isReadOnly: isReadOnly || false,\n possibleValues: possibleValues,\n setValue(value: string) {\n if (isReadOnly || isDisabled) {\n return;\n }\n\n const previousValue = selectedValue;\n setValue(value);\n if (value !== previousValue && onChange) {\n onChange(value);\n }\n },\n };\n\n return (\n <StyledRadioGroup\n {...forwardedProps}\n $isDisabled={isDisabled}\n $isInvalid={isInvalid || (isRequired && selectedValue.length === 0)}\n $isReadOnly={isReadOnly}\n $orientation={orientation}\n aria-disabled={isDisabled}\n className={classNames(RadioGroup.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n role=\"radiogroup\"\n >\n <span className={`${RadioGroup.className}-label`}>\n {label}\n {isRequired ? ' *' : null}\n </span>\n <div className={`${RadioGroup.className}-boxes`}>\n <RadioGroupContext.Provider value={state}>\n {children}\n </RadioGroupContext.Provider>\n </div>\n <span className={`${RadioGroup.className}-description`}>\n {description}\n </span>\n </StyledRadioGroup>\n );\n }\n);\nRadioGroup.className = CLASSNAME;\nRadioGroup.defaultProps = DEFAULT_PROPS;\nRadioGroup.displayName = COMPONENT_NAME;\n","import styled, { css } from 'styled-components';\nimport { baseStyling } from '~/components/shared';\nimport { StyledRadioProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledRadio = styled.label<StyledRadioProps>`\n position: relative;\n width: fit-content;\n ${baseStyling}\n\n align-items: baseline;\n background: none;\n border: none;\n display: inline-flex;\n\n input {\n height: 100%;\n margin: 0;\n opacity: 0;\n overflow: visible;\n padding: 0;\n position: absolute;\n width: 100%;\n }\n\n span.label {\n ${({ $isDisabled, $isInvalid }) =>\n $isDisabled\n ? css`\n color: var(--redsift-color-neutral-midgrey);\n `\n : $isInvalid\n ? css`\n color: var(--redsift-color-error-primary);\n `\n : css`\n color: var(--redsift-color-neutral-black);\n `}\n\n font-family: var(--redsift-typography-body-font-family);\n font-size: var(--redsift-typography-body-font-size);\n font-weight: var(--redsift-typography-body-font-weight);\n line-height: var(--redsift-typography-body-line-height);\n padding-left: 4px;\n padding-right: 16px;\n position: relative;\n top: -4px;\n\n [dir='rtl'] & {\n padding-left: 16px;\n padding-right: 4px;\n }\n }\n\n .redsift-icon {\n padding: 2px;\n width: 24px;\n\n ${({ $isColored, $isDisabled, $isInvalid, $isFocusVisible }) => css`\n ${$isDisabled\n ? css`\n color: var(--redsift-color-neutral-midgrey);\n `\n : $isInvalid\n ? css`\n color: var(--redsift-color-error-primary);\n `\n : css`\n color: var(\n --redsift-color-${$isColored ? 'default' : 'question'}-primary\n );\n `}\n\n ${$isFocusVisible\n ? css`\n background-color: var(\n --redsift-color-${$isColored ? 'default' : 'question'}-hover\n );\n border-radius: 16px;\n `\n : ''}\n `}\n }\n\n &:hover,\n &:focus-visible {\n outline: none;\n\n ${({ $isColored, $isDisabled }) =>\n !$isDisabled\n ? css`\n .redsift-icon {\n background-color: var(\n --redsift-color-${$isColored ? 'default' : 'question'}-hover\n );\n border-radius: 16px;\n }\n `\n : ''}\n }\n\n ${({ $isColored, $isFocusVisible }) =>\n $isFocusVisible\n ? css`\n .redsift-icon {\n background-color: var(\n --redsift-color-${$isColored ? 'default' : 'question'}-hover\n );\n border-radius: 21px;\n }\n `\n : ''}\n`;\n","import React, {\n ComponentProps,\n forwardRef,\n MutableRefObject,\n useCallback,\n useContext,\n useEffect,\n useState,\n} from 'react';\nimport classNames from 'classnames';\nimport { useFocusRing } from '@react-aria/focus';\nimport { mdiRadioboxBlank, mdiRadioboxMarked } from '@redsift/icons';\nimport { Comp } from '~/types';\nimport { Icon } from '~/components/icon';\nimport { RadioGroupContext } from '~/components/radio-group/context';\nimport { warnIfNoAccessibleLabelFound } from '~/utils/warnIfNoAccessibleLabelFound';\nimport { RadioProps } from './types';\nimport { StyledRadio } from './styles';\n\nconst COMPONENT_NAME = 'Radio';\nconst CLASSNAME = 'redsift-radio';\nconst DEFAULT_PROPS: Partial<RadioProps> = {\n isColored: true,\n};\n\n/**\n * The Radio component.\n * Works both inside a RadioGroup or as standalone.\n * Can be used as controlled or uncontrolled.\n */\nexport const Radio: Comp<RadioProps, HTMLLabelElement> = forwardRef(\n (props, ref) => {\n const groupState = useContext(RadioGroupContext);\n\n let {\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledby,\n autoFocus,\n children,\n className,\n defaultSelected,\n inputProps,\n inputRef,\n isColored,\n isDisabled,\n isInvalid,\n isReadOnly,\n isRequired,\n isSelected: propsIsSelected,\n name,\n onChange,\n value,\n ...forwardedProps\n } = props;\n\n const { isFocusVisible, focusProps } = useFocusRing({ autoFocus });\n isDisabled = isDisabled ?? groupState?.isDisabled;\n isReadOnly = isReadOnly ?? groupState?.isReadOnly;\n\n const [isSelected, setSelected] = useState<boolean | undefined>(\n propsIsSelected ??\n defaultSelected ??\n Boolean(groupState?.value && groupState.value === value)\n );\n\n useEffect(() => {\n setSelected(propsIsSelected ?? defaultSelected);\n }, [propsIsSelected, defaultSelected]);\n\n useEffect(() => {\n if (groupState) {\n setSelected(groupState.value === value);\n }\n }, [groupState?.value]);\n\n warnIfNoAccessibleLabelFound(props as ComponentProps<'label'>, [children]);\n\n if (groupState) {\n if (propsIsSelected != null) {\n console.warn(\n 'isSelected is unsupported on individual <Radio> elements within a <RadioGroup> unless the <Radio> is controlled. Please apply this prop to the group instead or pass isControlled to the component.'\n );\n }\n if (defaultSelected != null) {\n console.warn(\n 'defaultSelected is unsupported on individual <Radio> elements within a <RadioGroup> unless the <Radio> is controlled. Please apply this prop to the group instead or pass isControlled to the component.'\n );\n }\n if (props.value == null) {\n console.warn(\n 'A <Radio> element within a <RadioGroup> requires a `value` property unless the <Radio> is controlled.'\n );\n }\n }\n\n const handleChange = useCallback(\n (event: React.ChangeEvent<HTMLInputElement>) => {\n if (isDisabled || isReadOnly) {\n return;\n }\n\n if (groupState) {\n groupState.setValue(value as string);\n }\n\n if (onChange) {\n onChange(!isSelected, value, name, event, groupState!);\n }\n setSelected(event.target.checked);\n },\n [onChange, groupState]\n );\n\n return (\n <StyledRadio\n {...forwardedProps}\n $isColored={isColored}\n $isDisabled={isDisabled}\n $isFocusVisible={isFocusVisible}\n $isInvalid={isInvalid || (isRequired && !isSelected)}\n $isRequired={isRequired}\n $isSelected={isSelected}\n className={classNames(Radio.className, className)}\n ref={ref as MutableRefObject<HTMLLabelElement>}\n >\n <input\n {...inputProps}\n {...focusProps}\n aria-checked={isSelected ? 'true' : 'false'}\n aria-disabled={isDisabled}\n aria-invalid={isInvalid || (isRequired && !isSelected)}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledby}\n aria-readonly={isReadOnly}\n aria-required={isRequired}\n checked={isSelected ? true : false}\n disabled={isDisabled}\n name={name}\n onChange={handleChange}\n ref={inputRef as MutableRefObject<HTMLInputElement>}\n type=\"radio\"\n value={value}\n />\n {isSelected ? (\n <Icon icon={mdiRadioboxMarked} />\n ) : (\n <Icon icon={mdiRadioboxBlank} />\n )}\n {children ? <span className=\"label\">{children}</span> : null}\n </StyledRadio>\n );\n }\n);\nRadio.className = CLASSNAME;\nRadio.defaultProps = DEFAULT_PROPS;\nRadio.displayName = COMPONENT_NAME;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\nimport { Comp, FontFamily } from '~/types';\nimport { StyledText } from './styles';\nimport { TextProps } from './types';\n\nconst COMPONENT_NAME = 'Text';\nconst CLASSNAME = 'redsift-text';\nconst DEFAULT_PROPS: Partial<TextProps> = {\n fontFamily: FontFamily.raleway,\n};\n\n/**\n * The Text component.\n */\nexport const Text: Comp<TextProps, HTMLDivElement> = forwardRef(\n (props, ref) => {\n const {\n as,\n children,\n className,\n color,\n fontFamily,\n fontSize,\n noWrap,\n variant,\n ...forwardedProps\n } = props;\n\n return (\n <StyledText\n as={as}\n {...forwardedProps}\n className={classNames(Text.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n $as={as}\n $color={color}\n $fontFamily={fontFamily}\n $fontSize={fontSize}\n $noWrap={noWrap}\n $variant={variant}\n >\n {children}\n </StyledText>\n );\n }\n);\nText.className = CLASSNAME;\nText.defaultProps = DEFAULT_PROPS;\nText.displayName = COMPONENT_NAME;\n"],"names":["FontFamily","raleway","electrolize","ColorPalette","default","success","error","warning","info","question","ProductColorPalette","website","ondmarc","oninbox","ondomain","hardenize","tools","DataVizColorPalette","purple","blue","green","red","pink","cyan","orange","yellow","brown","grey","NeutralColorPalette","black","darkgrey","midgrey","lightgrey","xlightgrey","white","AlignSelf","auto","normal","start","end","center","baseline","stretch","JustifySelf","left","right","AlignContent","AlignItems","FlexDirection","row","column","FlexWrap","nowrap","wrap","JustifyContent","JustifyItems","isComponent","component","instance","componentName","displayName","React","isValidElement","type","filterComponents","children","components","Array","isArray","childArray","Children","forEach","child","comp","push","partitionComponents","predicates","elements","map","found","predicate","index","length","RedsiftColorDefaultPrimary","RedsiftColorDefaultSecondary","RedsiftColorDefaultHover","RedsiftColorDefaultActive","RedsiftColorDefaultActiveHover","RedsiftColorDefaultPrimaryActive","RedsiftColorWebsitePrimary","RedsiftColorWebsiteSecondary","RedsiftColorWebsiteHover","RedsiftColorWebsiteActive","RedsiftColorWebsiteActiveHover","RedsiftColorWebsitePrimaryActive","RedsiftColorOndmarcPrimary","RedsiftColorOndmarcSecondary","RedsiftColorOndmarcHover","RedsiftColorOndmarcActive","RedsiftColorOndmarcActiveHover","RedsiftColorOndmarcPrimaryActive","RedsiftColorOninboxPrimary","RedsiftColorOninboxSecondary","RedsiftColorOninboxHover","RedsiftColorOninboxActive","RedsiftColorOninboxActiveHover","RedsiftColorOninboxPrimaryActive","RedsiftColorOndomainPrimary","RedsiftColorOndomainSecondary","RedsiftColorOndomainHover","RedsiftColorOndomainActive","RedsiftColorOndomainActiveHover","RedsiftColorOndomainPrimaryActive","RedsiftColorHardenizePrimary","RedsiftColorHardenizeSecondary","RedsiftColorHardenizeHover","RedsiftColorHardenizeActive","RedsiftColorHardenizeActiveHover","RedsiftColorHardenizePrimaryActive","RedsiftColorToolsPrimary","RedsiftColorToolsSecondary","RedsiftColorToolsHover","RedsiftColorToolsActive","RedsiftColorToolsActiveHover","RedsiftColorToolsPrimaryActive","RedsiftColorSuccessPrimary","RedsiftColorSuccessSecondary","RedsiftColorSuccessHover","RedsiftColorSuccessActive","RedsiftColorSuccessActiveHover","RedsiftColorSuccessPrimaryActive","RedsiftColorErrorPrimary","RedsiftColorErrorSecondary","RedsiftColorErrorHover","RedsiftColorErrorActive","RedsiftColorErrorActiveHover","RedsiftColorErrorPrimaryActive","RedsiftColorWarningPrimary","RedsiftColorWarningSecondary","RedsiftColorWarningHover","RedsiftColorWarningActive","RedsiftColorWarningActiveHover","RedsiftColorWarningPrimaryActive","RedsiftColorInfoPrimary","RedsiftColorInfoSecondary","RedsiftColorInfoHover","RedsiftColorInfoActive","RedsiftColorInfoActiveHover","RedsiftColorInfoPrimaryActive","RedsiftColorQuestionPrimary","RedsiftColorQuestionSecondary","RedsiftColorQuestionHover","RedsiftColorQuestionActive","RedsiftColorQuestionActiveHover","RedsiftColorNoDataPrimary","RedsiftColorNoDataSecondary","RedsiftColorNoDataHover","RedsiftColorNoDataActive","RedsiftColorNoDataActiveHover","RedsiftColorNeutralBlack","RedsiftColorNeutralDarkgrey","RedsiftColorNeutralMidgrey","RedsiftColorNeutralLightgrey","RedsiftColorNeutralXlightgrey","RedsiftColorNeutralWhite","RedsiftAppBarColorBackground","RedsiftAppBarColorText","RedsiftAppBarColorExpandIconResting","RedsiftAppBarColorExpandIconHover","RedsiftAppBarColorExpandIconBackgroundHover","RedsiftDataVizColorPurpleDefault","RedsiftDataVizColorPurpleDark","RedsiftDataVizColorPurpleDarker","RedsiftDataVizColorPurpleLight","RedsiftDataVizColorPurpleLighter","RedsiftDataVizColorBlueDefault","RedsiftDataVizColorBlueDark","RedsiftDataVizColorBlueDarker","RedsiftDataVizColorBlueLight","RedsiftDataVizColorBlueLighter","RedsiftDataVizColorGreenDefault","RedsiftDataVizColorGreenDark","RedsiftDataVizColorGreenDarker","RedsiftDataVizColorGreenLight","RedsiftDataVizColorGreenLighter","RedsiftDataVizColorRedDefault","RedsiftDataVizColorRedDark","RedsiftDataVizColorRedDarker","RedsiftDataVizColorRedLight","RedsiftDataVizColorRedLighter","RedsiftDataVizColorPinkDefault","RedsiftDataVizColorPinkDark","RedsiftDataVizColorPinkDarker","RedsiftDataVizColorPinkLight","RedsiftDataVizColorPinkLighter","RedsiftDataVizColorCyanDefault","RedsiftDataVizColorCyanDark","RedsiftDataVizColorCyanDarker","RedsiftDataVizColorCyanLight","RedsiftDataVizColorCyanLighter","RedsiftDataVizColorOrangeDefault","RedsiftDataVizColorOrangeDark","RedsiftDataVizColorOrangeDarker","RedsiftDataVizColorOrangeLight","RedsiftDataVizColorOrangeLighter","RedsiftDataVizColorYellowDefault","RedsiftDataVizColorYellowDark","RedsiftDataVizColorYellowDarker","RedsiftDataVizColorYellowLight","RedsiftDataVizColorYellowLighter","RedsiftDataVizColorBrownDefault","RedsiftDataVizColorBrownDark","RedsiftDataVizColorBrownDarker","RedsiftDataVizColorBrownLight","RedsiftDataVizColorBrownLighter","RedsiftDataVizColorGreyDefault","RedsiftDataVizColorGreyDark","RedsiftDataVizColorGreyDarker","RedsiftDataVizColorGreyLight","RedsiftDataVizColorGreyLighter","RedsiftSideNavigationColorBackground","RedsiftSideNavigationColorMenuItemTextResting","RedsiftSideNavigationColorMenuItemTextDisabled","RedsiftSideNavigationColorMenuItemTextHover","RedsiftSideNavigationColorMenuItemBackgroundHover","RedsiftSideNavigationColorMenuItemBackgroundSecondary","RedsiftSideNavigationColorMenuItemBackgroundActive","RedsiftSideNavigationColorMenuItemActive","RedsiftSideNavigationColorScrollbarResting","RedsiftSideNavigationColorScrollbarHover","RedsiftTypographyFontFamilyRaleway","RedsiftTypographyFontFamilyElectrolize","RedsiftTypographyFontFamilySourceCodePro","RedsiftTypographyFontWeightRegular","RedsiftTypographyFontWeightMedium","RedsiftTypographyFontWeightSemiBold","RedsiftTypographyFontWeightBold","RedsiftTypographyH1FontFamily","RedsiftTypographyH1FontSize","RedsiftTypographyH1FontWeight","RedsiftTypographyH1LineHeight","RedsiftTypographyH1TextTransform","RedsiftTypographyH2FontFamily","RedsiftTypographyH2FontSize","RedsiftTypographyH2FontWeight","RedsiftTypographyH2LineHeight","RedsiftTypographyH2TextTransform","RedsiftTypographyH3FontFamily","RedsiftTypographyH3FontSize","RedsiftTypographyH3FontWeight","RedsiftTypographyH3LineHeight","RedsiftTypographyH3TextTransform","RedsiftTypographyH4FontFamily","RedsiftTypographyH4FontSize","RedsiftTypographyH4FontWeight","RedsiftTypographyH4LineHeight","RedsiftTypographyH4TextTransform","RedsiftTypographyH5FontFamily","RedsiftTypographyH5FontSize","RedsiftTypographyH5FontWeight","RedsiftTypographyH5LineHeight","RedsiftTypographyH5TextTransform","RedsiftTypographySubtitleFontFamily","RedsiftTypographySubtitleFontSize","RedsiftTypographySubtitleFontWeight","RedsiftTypographySubtitleLineHeight","RedsiftTypographySubtitleTextTransform","RedsiftTypographyBodyFontFamily","RedsiftTypographyBodyFontSize","RedsiftTypographyBodyFontWeight","RedsiftTypographyBodyLineHeight","RedsiftTypographyBodyTextTransform","RedsiftTypographyBody2FontFamily","RedsiftTypographyBody2FontSize","RedsiftTypographyBody2FontWeight","RedsiftTypographyBody2LineHeight","RedsiftTypographyLinkFontFamily","RedsiftTypographyLinkFontSize","RedsiftTypographyLinkFontWeight","RedsiftTypographyLinkLineHeight","RedsiftTypographyInputTextFontFamily","RedsiftTypographyInputTextFontSize","RedsiftTypographyInputTextFontWeight","RedsiftTypographyInputTextLineHeight","RedsiftTypographyButtonFontFamily","RedsiftTypographyButtonFontSize","RedsiftTypographyButtonFontWeight","RedsiftTypographyButtonLineHeight","RedsiftTypographyButtonTextTransform","RedsiftTypographyCaptionFontFamily","RedsiftTypographyCaptionFontSize","RedsiftTypographyCaptionFontWeight","RedsiftTypographyCaptionLineHeight","RedsiftTypographyCaptionTextTransform","RedsiftTypographyHelperFontFamily","RedsiftTypographyHelperFontSize","RedsiftTypographyHelperFontWeight","RedsiftTypographyHelperLineHeight","RedsiftTypographyBadgeFontFamily","RedsiftTypographyBadgeFontSize","RedsiftTypographyBadgeFontWeight","RedsiftTypographyBadgeLineHeight","RedsiftTypographyPillFontFamily","RedsiftTypographyPillFontSize","RedsiftTypographyPillFontWeight","RedsiftTypographyPillLineHeight","RedsiftTypographyChipFontFamily","RedsiftTypographyChipFontSize","RedsiftTypographyChipFontWeight","RedsiftTypographyChipLineHeight","warnIfNoAccessibleLabelFound","props","additionalKeysToCheck","ariaLabel","ariaLabelledby","hasText","filter","key","hasAriaLabel","Boolean","console","warn","useWindowSize","windowSize","setWindowSize","useState","width","undefined","height","size","useEffect","handleResize","window","innerWidth","innerHeight","addEventListener","removeEventListener","AlertVariant","enUS","frFR","IconButtonVariant","primary","secondary","unstyled","IconSize","xsmall","small","medium","large","xlarge","baseLayout","css","flex","flexGrow","flexShrink","flexBasis","alignSelf","justifySelf","order","gridArea","gridColumn","gridRow","gridColumnStart","gridColumnEnd","gridRowStart","gridRowEnd","baseSpacing","margin","marginBottom","marginLeft","marginRight","marginTop","baseSizing","maxHeight","maxWidth","minHeight","minWidth","basePositioning","position","top","bottom","zIndex","baseFlexbox","alignContent","alignItems","flexDirection","flexWrap","gap","justifyContent","baseGrid","gridAutoColumns","gridAutoRows","gridTemplateAreas","gridTemplateColumns","gridTemplateRows","justifyItems","baseStyling","baseContainer","display","StyledIcon","styled","span","$color","Object","keys","indexOf","$size","COMPONENT_NAME","CLASSNAME","DEFAULT_PROPS","Icon","forwardRef","ref","ariaHidden","badge","className","color","icon","svgProps","forwardedProps","_excluded","classNames","defaultProps","ButtonVariant","StyledButton","button","$variant","$isActive","$isDisabled","$fullWidth","SpinnerSize","StyledSpinner","img","colorToFile","spinnerDefault","spinnerHardenize","spinnerNoData","spinnerOndmarc","spinnerOndomain","spinnerOninbox","spinnerQuestion","spinnerTools","spinnerWebsite","sizeToDimension","Spinner","stringFormatter","useLocalizedStringFormatter","intlMessages","format","variant","Button","buttonRef","useRef","buttonProps","useButton","_objectSpread","isDisabled","isLoading","disabled","preventFocusOnPress","fullWidth","isActive","leftIcon","onPress","rightIcon","StyledIconButton","IconButton","StyledAlert","div","$hasTitle","$isClosable","$isClosed","HeadingVariant","h1","h2","h3","h4","h5","StyledHeading","as","$noWrap","Heading","noWrap","StyledFlexbox","inline","Flexbox","getVariant","mdiInformation","mdiCheckCircle","mdiAlert","Alert","isClosable","isClosed","propsIsClosed","onClose","title","setIsClosed","handleClose","useCallback","mdiClose","AppContainerContext","createContext","useIsLoaded","isLoaded","setIsLoaded","StyledAppBar","header","$isSidePanelCollapsed","$isLoaded","AppBar","collapseIconButtonProps","collapseIconButtonRef","expandIconButtonProps","expandIconButtonRef","fallbackTitle","propsTitle","appContainerState","useContext","isSidePanelCollapsed","mdiMenu","expandSidePanel","mdiMenuOpen","collapseSidePanel","StyledAppContainer","$productTheme","AppContainer","locale","productTheme","hasAppBar","hasAppSidePanel","hasAppContent","useMemo","appBar","appSidePanel","appContent","toArray","setIsSidePanelCollapsed","setTitle","state","StyledAppContent","main","AppContent","StyledAppSidePanel","$isCollapsed","AppSidePanel","featuredElements","isCollapsed","logo","src","alt","SideNavigationMenuReducerActionType","SideNavigationMenuBarContext","SideNavigationMenuContext","StyledSideNavigationMenuItem","a","$isSecondLevel","$withoutIcons","$isCurrent","BadgeVariant","dot","standard","StyledBadge","$isReversed","$autoBreak","Badge","autoBreak","isReversed","SideNavigationMenuItem","menuItemRef","badgeProps","href","iconProps","iconRef","isCurrent","isSecondLevel","onClick","onKeyDown","tabIndex","withoutIcons","sideNavigationMenuBarContext","sideNavigationMenuContext","isFirstChild","setIsFirstChild","menuItems","menuItemNode","current","add","delete","StyledSideNavigationMenu","$isExpanded","SideNavigationMenuReducer","action","Expand","isExpanded","Collapse","currentIndex","previousIndex","Move","SideNavigationMenu","hasBadge","propsIsExpanded","menuProps","menuRef","menubarItems","renderedMenuItems","cloneElement","Set","dispatch","useReducer","first","last","move","open","close","focusButton","focus","previous","next","match","e","items","from","reorderedItems","slice","matches","menuItem","textContent","firstLetter","toLowerCase","charAt","currentNode","nextMatch","includes","findIndex","item","value","keyDownOnButton","target","code","stopPropagation","click","buttonEventHandler","event","keyDownOnMenuItemList","preventDefault","menuItemListEventHandler","mdiChevronDown","mdiChevronRight","StyledSideNavigationMenuBar","nav","$marginTop","useBoundingClientRect","deps","boundingRect","setBoundingRect","getBoundingClientRect","usePrevious","SideNavigationMenuBar","navRef","menubarProps","menubarRef","navItems","setCurrentIndex","keyDown","parentMenu","parentNode","isFromSubmenu","getAttribute","previousNode","setAttribute","isMenu","useSideNavigationMenuBar","menuBarChildren","rest","useAppSidePanel","sideNavigationMenuBarProps","StyledBreadcrumbItem","BreadcrumbItem","StyledBreadcrumbs","BaseBreadcrumbs","Breadcrumbs","Item","breadcrumbItems","assign","ButtonLink","StyledCard","StyledCardHeader","CardHeader","subheader","StyledCardBody","CardBody","StyledCardActions","CardActions","BaseCard","defaultCollapsed","propsIsCollapsed","isCollapsible","onCollapse","setIsCollapsed","handleCollapse","collapsed","body","actions","mdiChevronUp","Card","Header","Body","Actions","CheckboxGroupOrientation","horizontal","vertical","CheckboxGroupContext","StyledCheckboxGroup","$orientation","$isInvalid","orientation","CheckboxGroup","defaultValues","description","isInvalid","isReadOnly","isRequired","label","onChange","possibleValues","selectedValues","setValue","values","addValue","concat","removeValue","existingValue","StyledCheckbox","$isColored","$isFocusVisible","isColored","Checkbox","groupState","autoFocus","defaultSelected","inputProps","inputRef","isControlled","isIndeterminate","isSelected","propsIsSelected","name","isFocusVisible","focusProps","useFocusRing","setSelected","handleChange","checked","mdiCheckboxMarked","mdiMinusBox","mdiCheckboxBlankOutline","ConditionalWrapper","condition","wrapper","ShieldVariant","successLocked","successUnlocked","fail","failLocked","failUnlocked","warningLocked","warningUnlocked","ignored","noData","email","StyledShield","$isOutlined","Shield","isOutlined","verticalAlign","StyledDetailedCardCollapsibleSectionItems","DetailedCardCollapsibleSectionItems","caption","StyledDetailedCardSection","hasCollapsibleChildren","hasCollapsible","DetailedCardSection","propsIsCollapsible","StyledDetailedCard","StyledDetailedCardHeader","DetailedCardHeader","StyledPill","Pill","StyledDetailedCardSectionItem","DetailedCardSectionItem","pill","pillProps","shield","hasCollapsibleItems","sectionChild","BaseDetailedCard","areAllCollapsed","propsAreAllCollapsed","defaultAllCollapsed","onCollapseAll","allCollapsed","setAllCollapsed","content","mdiPageLast","transform","mdiKeyboardCaps","Math","random","DetailedCard","Section","CollapsibleSectionItems","SectionItem","StyledGrid","StyledGridItem","GridItem","BaseGrid","Grid","StyledLink","Link","LinkButton","TextVariant","inherit","subtitle1","TextComponent","p","b","i","u","abbr","cite","del","em","ins","kbd","mark","s","samp","sub","sup","StyledText","$as","$fontFamily","$fontSize","StyledNumber","compactDisplay","currencyDisplay","currencySign","localeMatcher","notation","signDisplay","unitDisplay","roundingMode","roundingPriority","trailingZeroDisplay","minimumIntegerDigits","minimumFractionDigits","minimumSignificantDigits","maximumSignificantDigits","Number","currency","fontSize","maximumFractionDigits","numberingSystem","roundingIncrement","unit","useGrouping","formatter","useNumberFormatter","style","RadioGroupOrientation","RadioGroupContext","StyledRadioGroup","RadioGroup","defaultValue","selectedValue","previousValue","StyledRadio","Radio","mdiRadioboxMarked","mdiRadioboxBlank","fontFamily","Text"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/types/fonts.ts","../src/types/colors.ts","../src/types/styles.ts","../src/utils/isComponent.ts","../src/utils/filterComponents.ts","../src/utils/partitionComponents.ts","../src/utils/redsift-design-tokens.ts","../src/utils/warnIfNoAccessibleLabelFound.ts","../src/hooks/useWindowSize.ts","../src/components/alert/types.ts","../src/components/alert/intl/index.ts","../src/components/icon-button/types.ts","../src/components/icon/types.ts","../src/components/shared/styles.ts","../src/components/icon/styles.ts","../src/components/icon/Icon.tsx","../src/components/button/types.ts","../src/components/button/styles.ts","../src/components/spinner/intl/index.ts","../src/components/spinner/types.ts","../src/components/spinner/styles.ts","../src/components/spinner/Spinner.tsx","../src/components/button/Button.tsx","../src/components/icon-button/styles.ts","../src/components/icon-button/IconButton.tsx","../src/components/alert/styles.ts","../src/components/heading/types.ts","../src/components/heading/styles.ts","../src/components/heading/Heading.tsx","../src/components/flexbox/styles.ts","../src/components/flexbox/Flexbox.tsx","../src/components/alert/Alert.tsx","../src/components/app-bar/intl/index.ts","../src/components/app-container/context.ts","../src/hooks/useIsLoaded.ts","../src/components/app-bar/styles.ts","../src/components/app-bar/AppBar.tsx","../src/components/app-container/styles.ts","../src/components/app-container/AppContainer.tsx","../src/components/app-content/styles.ts","../src/components/app-content/AppContent.tsx","../src/components/app-side-panel/styles.ts","../src/components/app-side-panel/AppSidePanel.tsx","../src/components/side-navigation-menu/types.ts","../src/components/side-navigation-menu-bar/context.ts","../src/components/side-navigation-menu/context.ts","../src/components/side-navigation-menu-item/styles.ts","../src/components/badge/types.ts","../src/components/badge/styles.ts","../src/components/badge/Badge.tsx","../src/components/side-navigation-menu-item/SideNavigationMenuItem.tsx","../src/components/side-navigation-menu/styles.ts","../src/components/side-navigation-menu/reducer.ts","../src/components/side-navigation-menu/SideNavigationMenu.tsx","../src/components/side-navigation-menu-bar/styles.ts","../src/hooks/useBoundingRect.ts","../src/components/side-navigation-menu-bar/SideNavigationMenuBar.tsx","../src/components/side-navigation-menu-bar/useSideNavigationMenuBar.tsx","../src/components/app-side-panel/useAppSidePanel.tsx","../src/components/breadcrumb-item/styles.ts","../src/components/breadcrumb-item/BreadcrumbItem.tsx","../src/components/breadcrumbs/styles.ts","../src/components/breadcrumbs/Breadcrumbs.tsx","../src/components/button-link/ButtonLink.tsx","../src/components/card/intl/index.ts","../src/components/card/styles.ts","../src/components/card-header/styles.ts","../src/components/card-header/CardHeader.tsx","../src/components/card-body/styles.ts","../src/components/card-body/CardBody.tsx","../src/components/card-actions/styles.ts","../src/components/card-actions/CardActions.tsx","../src/components/card/Card.tsx","../src/components/checkbox-group/types.ts","../src/components/checkbox-group/context.ts","../src/components/checkbox-group/styles.ts","../src/components/checkbox-group/CheckboxGroup.tsx","../src/components/checkbox/styles.ts","../src/components/checkbox/Checkbox.tsx","../src/components/conditional-wrapper/ConditionalWrapper.tsx","../src/components/detailed-card/intl/index.ts","../src/components/shield/types.ts","../src/components/shield/styles.ts","../src/components/shield/Shield.tsx","../src/components/detailed-card-section/intl/index.ts","../src/components/detailed-card-collapsible-section-items/styles.ts","../src/components/detailed-card-collapsible-section-items/DetailedCardCollapsibleSectionItems.tsx","../src/components/detailed-card-section/styles.ts","../src/components/detailed-card-section/DetailedCardSection.tsx","../src/components/detailed-card/styles.ts","../src/components/detailed-card-header/styles.ts","../src/components/detailed-card-header/DetailedCardHeader.tsx","../src/components/pill/styles.ts","../src/components/pill/Pill.tsx","../src/components/detailed-card-section-item/styles.ts","../src/components/detailed-card-section-item/DetailedCardSectionItem.tsx","../src/components/detailed-card/DetailedCard.tsx","../src/components/grid/styles.ts","../src/components/grid-item/styles.ts","../src/components/grid-item/GridItem.tsx","../src/components/grid/Grid.tsx","../src/components/link/styles.ts","../src/components/link/Link.tsx","../src/components/link-button/LinkButton.tsx","../src/components/text/types.ts","../src/components/text/styles.ts","../src/components/number/styles.ts","../src/components/number/Number.tsx","../src/components/radio-group/types.ts","../src/components/radio-group/context.ts","../src/components/radio-group/styles.ts","../src/components/radio-group/RadioGroup.tsx","../src/components/radio/styles.ts","../src/components/radio/Radio.tsx","../src/components/text/Text.tsx"],"sourcesContent":["import { ValueOf } from './helpers';\n\n/**\n * Font.\n */\nexport const FontFamily = {\n raleway: 'raleway',\n 'source-code-pro': 'source-code-pro',\n electrolize: 'electrolize',\n} as const;\nexport type FontFamily = ValueOf<typeof FontFamily>;\n","import { ValueOf } from './helpers';\n\n/**\n * Color palette.\n */\nexport const ColorPalette = {\n default: 'default',\n success: 'success',\n error: 'error',\n warning: 'warning',\n info: 'info',\n question: 'question',\n 'no-data': 'no-data',\n} as const;\nexport type ColorPalette = ValueOf<typeof ColorPalette>;\n\nexport const ProductColorPalette = {\n website: 'website',\n ondmarc: 'ondmarc',\n oninbox: 'oninbox',\n ondomain: 'ondomain',\n hardenize: 'hardenize',\n tools: 'tools',\n} as const;\nexport type ProductColorPalette = ValueOf<typeof ProductColorPalette>;\n\nexport const DataVizColorPalette = {\n purple: 'purple',\n blue: 'blue',\n green: 'green',\n red: 'red',\n pink: 'pink',\n cyan: 'cyan',\n orange: 'orange',\n yellow: 'yellow',\n brown: 'brown',\n grey: 'grey',\n} as const;\nexport type DataVizColorPalette = ValueOf<typeof DataVizColorPalette>;\n\nexport const NeutralColorPalette = {\n black: 'black',\n darkgrey: 'darkgrey',\n midgrey: 'midgrey',\n lightgrey: 'lightgrey',\n xlightgrey: 'xlightgrey',\n white: 'white',\n} as const;\nexport type NeutralColorPalette = ValueOf<typeof NeutralColorPalette>;\n","import { ValueOf } from './helpers';\n\nexport const AlignSelf = {\n auto: 'auto',\n normal: 'normal',\n start: 'start',\n end: 'end',\n center: 'center',\n 'flex-start': 'flex-start',\n 'flex-end': 'flex-end',\n 'self-start': 'self-start',\n 'self-end': 'self-end',\n baseline: 'baseline',\n stretch: 'stretch',\n} as const;\nexport type AlignSelf = ValueOf<typeof AlignSelf>;\n\nexport const JustifySelf = {\n auto: 'auto',\n normal: 'normal',\n start: 'start',\n end: 'end',\n center: 'center',\n 'flex-start': 'flex-start',\n 'flex-end': 'flex-end',\n 'self-start': 'self-start',\n 'self-end': 'self-end',\n left: 'left',\n right: 'right',\n stretch: 'stretch',\n} as const;\nexport type JustifySelf = ValueOf<typeof JustifySelf>;\n\nexport const AlignContent = {\n 'flex-start': 'flex-start',\n 'flex-end': 'flex-end',\n center: 'center',\n 'space-between': 'space-between',\n 'space-around': 'space-around',\n 'space-evenly': 'space-evenly',\n stretch: 'stretch',\n start: 'start',\n end: 'end',\n baseline: 'baseline',\n 'first baseline': 'first baseline',\n 'last baseline': 'last baseline',\n} as const;\nexport type AlignContent = ValueOf<typeof AlignContent>;\n\nexport const AlignItems = {\n stretch: 'stretch',\n 'flex-start': 'flex-start',\n 'flex-end': 'flex-end',\n center: 'center',\n baseline: 'baseline',\n 'first baseline': 'first baseline',\n 'last baseline': 'last baseline',\n start: 'start',\n end: 'end',\n 'self-start': 'self-start',\n 'self-end': 'self-end',\n} as const;\nexport type AlignItems = ValueOf<typeof AlignItems>;\n\nexport const FlexDirection = {\n row: 'row',\n 'row-reverse': 'row-reverse',\n column: 'column',\n 'column-reverse': 'column-reverse',\n} as const;\nexport type FlexDirection = ValueOf<typeof FlexDirection>;\n\nexport const FlexWrap = {\n nowrap: 'nowrap',\n wrap: 'wrap',\n 'wrap-reverse': 'wrap-reverse',\n} as const;\nexport type FlexWrap = ValueOf<typeof FlexWrap>;\n\nexport const JustifyContent = {\n 'flex-start': 'flex-start',\n 'flex-end': 'flex-end',\n center: 'center',\n 'space-between': 'space-between',\n 'space-around': 'space-around',\n 'space-evenly': 'space-evenly',\n start: 'start',\n end: 'end',\n left: 'left',\n right: 'right',\n baseline: 'baseline',\n 'first baseline': 'first baseline',\n 'last baseline': 'last baseline',\n stretch: 'stretch',\n} as const;\nexport type JustifyContent = ValueOf<typeof JustifyContent>;\n\nexport const JustifyItems = {\n start: 'start',\n end: 'end',\n center: 'center',\n stretch: 'stretch',\n} as const;\nexport type JustifyItems = ValueOf<typeof JustifyItems>;\n\nexport interface LayoutProps {\n /** When used in a flex layout, specifies how the element will grow or shrink to fit the space available. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/flex\">MDN</a>. */\n flex?: string;\n /** When used in a flex layout, specifies how the element will grow to fit the space available. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/flex-grow\">MDN</a>. */\n flexGrow?: number;\n /** When used in a flex layout, specifies how the element will shrink to fit the space available. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/flex-shrink\">MDN</a>. */\n flexShrink?: number;\n /** When used in a flex layout, specifies the initial main size of the element. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/flex_basis\">MDN</a>. */\n flexBasis?: string;\n /** Overrides the alignItems property of a flex or grid container. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/align-self\">MDN</a>. */\n alignSelf?: AlignSelf;\n /** Specifies how the element is justified inside a flex or grid container. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/justify-self\">MDN</a>. */\n justifySelf?: string;\n /** The layout order for the element within a flex or grid container. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/order\">MDN</a>. */\n order?: number;\n /** When used in a grid layout, specifies the named grid area that the element should be placed in within the grid. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/grid-area\">MDN</a>. */\n gridArea?: string;\n /** When used in a grid layout, specifies the column the element should be placed in within the grid. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/grid-column\">MDN</a>. */\n gridColumn?: string;\n /** When used in a grid layout, specifies the row the element should be placed in within the grid. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/grid-row\">MDN</a>. */\n gridRow?: string;\n /** When used in a grid layout, specifies the starting column to span within the grid. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/grid-column-start\">MDN</a>. */\n gridColumnStart?: string;\n /** When used in a grid layout, specifies the ending column to span within the grid. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/grid-column-end\">MDN</a>. */\n gridColumnEnd?: string;\n /** When used in a grid layout, specifies the starting row to span within the grid. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/grid-row-start\">MDN</a>. */\n gridRowStart?: string;\n /** When used in a grid layout, specifies the ending row to span within the grid. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/grid-row-end\">MDN</a>. */\n gridRowEnd?: string;\n}\n\nexport interface SpacingProps {\n /** The margin for all four sides of the element. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/margin\">MDN</a>. */\n margin?: string;\n /** The margin for the bottom side of the element. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/margin-bottom\">MDN</a>. */\n marginBottom?: string;\n /** The margin for the left side of the element. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/margin-left\">MDN</a>. */\n marginLeft?: string;\n /** The margin for the right side of the element. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/margin-right\">MDN</a>. */\n marginRight?: string;\n /** The margin for the top side of the element. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/margin-top\">MDN</a>. */\n marginTop?: string;\n}\n\nexport interface SizingProps {\n /** The height of the element. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/height\">MDN</a>. */\n height?: string | number;\n /** The maximum height of the element. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/max-height\">MDN</a>. */\n maxHeight?: string;\n /** The maximum width of the element. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/max-width\">MDN</a>. */\n maxWidth?: string;\n /** The minimum height of the element. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/min-height\">MDN</a>. */\n minHeight?: string;\n /** The minimum width of the element. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/min-width\">MDN</a>. */\n minWidth?: string;\n /** The width of the element. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/width\">MDN</a>. */\n width?: string | number;\n}\n\nexport interface PositioningProps {\n /** Specifies how the element is positioned. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/position\">MDN</a>. */\n position?: string;\n /** The top position for the element. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/top\">MDN</a>. */\n top?: string;\n /** The bottom position for the element. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/bottom\">MDN</a>. */\n bottom?: string;\n /** The left position for the element. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/left\">MDN</a>. Consider using start instead for RTL support. */\n left?: string;\n /** The right position for the element. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/right\">MDN</a>. Consider using start instead for RTL support. */\n right?: string;\n /** The stacking order for the element. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/z-index\">MDN</a>. */\n zIndex?: string;\n}\n\nexport interface FlexLayoutProps {\n /** The distribution of space around child items along the cross axis. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/align-content\">MDN</a>. */\n alignContent?: AlignContent;\n /** The alignment of children within their container. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/align-items\">MDN</a>. */\n alignItems?: AlignItems;\n /** The direction in which to layout children. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/flex-direction\">MDN</a>. */\n flexDirection?: FlexDirection;\n /** Whether to wrap items onto multiple lines. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/flex-wrap\">MDN</a>. */\n flexWrap?: FlexWrap;\n /** The space to display between both rows and columns. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/gap\">MDN</a>. */\n gap?: string;\n /** Whether the box is displayed inline or not. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/display\">MDN</a>. */\n inline?: boolean;\n /** The distribution of space around items along the main axis. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/justify-content\">MDN</a>. */\n justifyContent?: JustifyContent;\n}\n\nexport interface GridLayoutProps {\n /** The distribution of space around child items along the cross axis. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/align-content\">MDN</a>. */\n alignContent?: AlignContent;\n /** The alignment of children within their container. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/align-items\">MDN</a>. */\n alignItems?: AlignItems;\n /** The space to display between both rows and columns. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/gap\">MDN</a>. */\n gap?: string;\n /** Defines the size of implicitly generated columns. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/grid-auto-columns\">MDN</a>. */\n gridAutoColumns?: string;\n /** Defines the size of implicitly generated rows. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/grid-auto-rows\">MDN</a>. */\n gridAutoRows?: string;\n /** Defines named grid areas. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/grid-template-areas\">MDN</a>. */\n gridTemplateAreas?: string;\n /** Defines the sizes of each column in the grid. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/grid-template-columns\">MDN</a>. */\n gridTemplateColumns?: string;\n /** Defines the sizes of each row in the grid. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/grid-template-rows\">MDN</a>. */\n gridTemplateRows?: string;\n /** Whether the box is displayed inline or not. */\n inline?: boolean;\n /** The distribution of space around items along the main axis. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/justify-content\">MDN</a>. */\n justifyContent?: JustifyContent;\n /** Defines the default justifySelf for all items in the grid. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/justify-items\">MDN</a>. */\n justifyItems?: JustifyItems;\n}\n\nexport interface StylingProps\n extends LayoutProps,\n SpacingProps,\n SizingProps,\n PositioningProps {}\n\nexport interface ContainerProps\n extends StylingProps,\n Omit<FlexLayoutProps, 'inline'>,\n Omit<GridLayoutProps, 'inline'> {\n /** Sets whether an element is treated as a block or inline element and the layout used for its children, such as flow layout, grid or flex. See <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/display\">MDN</a>. */\n display?:\n | 'block'\n | 'inline'\n | 'inline-block'\n | 'flex'\n | 'inline-flex'\n | 'grid'\n | 'inline-grid'\n | 'inherit';\n}\n","import React, { ReactNode, ReactElement } from 'react';\nimport { Comp } from '~/types';\n\n/**\n * Create a predicate function that checks if a ReactNode is a react element from the given component.\n *\n * @param component React function component or the component name\n * @return predicate returning true if value is instance of the component\n */\nexport const isComponent =\n <C>(component: Comp<C, any> | string) =>\n (instance: ReactNode): instance is ReactElement => {\n const componentName =\n typeof component === 'string' ? component : component.displayName;\n\n return (\n React.isValidElement(instance) &&\n (instance.type as Comp<any>).displayName === componentName\n );\n };\n","import React, { ReactNode, ReactElement } from 'react';\nimport { Comp } from '~/types';\nimport { isComponent } from './isComponent';\n\n/**\n * Create an array containing only valid and specific components.\n *\n * @param component React function component or the component name\n * @return an array of components\n */\nexport const filterComponents =\n (component: Comp<any, any> | string | Comp<any, any>[] | string[]) =>\n (children: ReactNode): ReactElement[] => {\n const components = Array.isArray(component) ? component : [component];\n const childArray: ReactElement[] = [];\n\n React.Children.forEach(children, (child) => {\n components.forEach((comp) => {\n if (isComponent(comp)(child)) {\n childArray.push(child);\n }\n });\n });\n\n return childArray;\n };\n","/**\n * Return components based on list of predicates.\n *\n * @param components Array of components\n * @param predicates Array of predicates\n * @return an array of arrays of components based on the given array of predicates\n */\nexport function partitionComponents<T>(\n components: T[],\n predicates: Array<(t: T) => boolean>\n): T[][] {\n const elements: T[][] = [...predicates.map(() => []), []];\n components.forEach((component) => {\n let found = false;\n predicates.forEach((predicate, index) => {\n if (predicate(component)) {\n elements[index].push(component);\n found = true;\n }\n });\n if (!found) {\n elements[elements.length - 1].push(component);\n }\n });\n return elements;\n}\n","/**\n * Do not edit directly\n * Generated on Thu, 09 Feb 2023 16:05:01 GMT\n */\n\nexport const RedsiftColorDefaultPrimary = '#0079e1';\nexport const RedsiftColorDefaultSecondary = '#0063b9';\nexport const RedsiftColorDefaultHover = '#dce8f3';\nexport const RedsiftColorDefaultActive = '#c4dcf1';\nexport const RedsiftColorDefaultActiveHover = '#abcfef';\nexport const RedsiftColorDefaultPrimaryActive = '#004a8a';\nexport const RedsiftColorWebsitePrimary = '#0079e1';\nexport const RedsiftColorWebsiteSecondary = '#0063b9';\nexport const RedsiftColorWebsiteHover = '#dce8f3';\nexport const RedsiftColorWebsiteActive = '#c4dcf1';\nexport const RedsiftColorWebsiteActiveHover = '#abcfef';\nexport const RedsiftColorWebsitePrimaryActive = '#004a8a';\nexport const RedsiftColorOndmarcPrimary = '#02ac61';\nexport const RedsiftColorOndmarcSecondary = '#009252';\nexport const RedsiftColorOndmarcHover = '#dcede6';\nexport const RedsiftColorOndmarcActive = '#c4e6d7';\nexport const RedsiftColorOndmarcActiveHover = '#acdfc8';\nexport const RedsiftColorOndmarcPrimaryActive = '#00512e';\nexport const RedsiftColorOninboxPrimary = '#33b222';\nexport const RedsiftColorOninboxSecondary = '#268519';\nexport const RedsiftColorOninboxHover = '#e1eedf';\nexport const RedsiftColorOninboxActive = '#cee8cb';\nexport const RedsiftColorOninboxActiveHover = '#bae0b5';\nexport const RedsiftColorOninboxPrimaryActive = '#164e0e';\nexport const RedsiftColorOndomainPrimary = '#028062';\nexport const RedsiftColorOndomainSecondary = '#015944';\nexport const RedsiftColorOndomainHover = '#dce9e6';\nexport const RedsiftColorOndomainActive = '#c4ded8';\nexport const RedsiftColorOndomainActiveHover = '#acd1c8';\nexport const RedsiftColorOndomainPrimaryActive = '#003f30';\nexport const RedsiftColorHardenizePrimary = '#0f7ab3';\nexport const RedsiftColorHardenizeSecondary = '#3498db';\nexport const RedsiftColorHardenizeHover = '#dee8ee';\nexport const RedsiftColorHardenizeActive = '#c7dce8';\nexport const RedsiftColorHardenizeActiveHover = '#b0d0e1';\nexport const RedsiftColorHardenizePrimaryActive = '#0a5379';\nexport const RedsiftColorToolsPrimary = '#37bdfb';\nexport const RedsiftColorToolsSecondary = '#02a2ef';\nexport const RedsiftColorToolsHover = '#e2eff5';\nexport const RedsiftColorToolsActive = '#cfeaf6';\nexport const RedsiftColorToolsActiveHover = '#bce4f6';\nexport const RedsiftColorToolsPrimaryActive = '#237ea8';\nexport const RedsiftColorSuccessPrimary = '#02ac61';\nexport const RedsiftColorSuccessSecondary = '#009252';\nexport const RedsiftColorSuccessHover = '#dcede6';\nexport const RedsiftColorSuccessActive = '#c4e6d7';\nexport const RedsiftColorSuccessActiveHover = '#acdfc8';\nexport const RedsiftColorSuccessPrimaryActive = '#00512e';\nexport const RedsiftColorErrorPrimary = '#e11010';\nexport const RedsiftColorErrorSecondary = '#b41010';\nexport const RedsiftColorErrorHover = '#f3dede';\nexport const RedsiftColorErrorActive = '#f1c7c7';\nexport const RedsiftColorErrorActiveHover = '#efb0b0';\nexport const RedsiftColorErrorPrimaryActive = '#770a0a';\nexport const RedsiftColorWarningPrimary = '#fcbb54';\nexport const RedsiftColorWarningSecondary = '#c09300';\nexport const RedsiftColorWarningHover = '#f5efe4';\nexport const RedsiftColorWarningActive = '#f6e9d5';\nexport const RedsiftColorWarningActiveHover = '#f7e3c4';\nexport const RedsiftColorWarningPrimaryActive = '#ae833f';\nexport const RedsiftColorInfoPrimary = '#0079e1';\nexport const RedsiftColorInfoSecondary = '#0063b9';\nexport const RedsiftColorInfoHover = '#dce8f3';\nexport const RedsiftColorInfoActive = '#c4dcf1';\nexport const RedsiftColorInfoActiveHover = '#abcfef';\nexport const RedsiftColorInfoPrimaryActive = '#004a8a';\nexport const RedsiftColorQuestionPrimary = '#666666';\nexport const RedsiftColorQuestionSecondary = '#1c1c1c';\nexport const RedsiftColorQuestionHover = '#e6e6e6';\nexport const RedsiftColorQuestionActive = '#d8d8d8';\nexport const RedsiftColorQuestionActiveHover = '#cacaca';\nexport const RedsiftColorNoDataPrimary = '#bdbdbd';\nexport const RedsiftColorNoDataSecondary = '#666666';\nexport const RedsiftColorNoDataHover = '#efefef';\nexport const RedsiftColorNoDataActive = '#eaeaea';\nexport const RedsiftColorNoDataActiveHover = '#e4e4e4';\nexport const RedsiftColorNeutralBlack = '#1c1c1c';\nexport const RedsiftColorNeutralDarkgrey = '#666666';\nexport const RedsiftColorNeutralMidgrey = '#bdbdbd';\nexport const RedsiftColorNeutralLightgrey = '#ebebeb';\nexport const RedsiftColorNeutralXlightgrey = '#f5f5f5';\nexport const RedsiftColorNeutralWhite = '#ffffff';\nexport const RedsiftAppBarColorBackground = '#0079e1';\nexport const RedsiftAppBarColorText = '#FFFFFF';\nexport const RedsiftAppBarColorExpandIconResting = '#FFFFFF';\nexport const RedsiftAppBarColorExpandIconHover = '#FFFFFF';\nexport const RedsiftAppBarColorExpandIconBackgroundHover = '#0063b9';\nexport const RedsiftDataVizColorPurpleDefault = '#C1AAEA';\nexport const RedsiftDataVizColorPurpleDark = '#A78ADB';\nexport const RedsiftDataVizColorPurpleDarker = '#8D6CC9';\nexport const RedsiftDataVizColorPurpleLight = '#D9CAF5';\nexport const RedsiftDataVizColorPurpleLighter = '#F0E9FC';\nexport const RedsiftDataVizColorBlueDefault = '#B6DAEE';\nexport const RedsiftDataVizColorBlueDark = '#97C5DE';\nexport const RedsiftDataVizColorBlueDarker = '#73ADCC';\nexport const RedsiftDataVizColorBlueLight = '#D8EDF8';\nexport const RedsiftDataVizColorBlueLighter = '#F6FBFE';\nexport const RedsiftDataVizColorGreenDefault = '#B3E3C5';\nexport const RedsiftDataVizColorGreenDark = '#90D2A9';\nexport const RedsiftDataVizColorGreenDarker = '#6DBE8B';\nexport const RedsiftDataVizColorGreenLight = '#D3F0DE';\nexport const RedsiftDataVizColorGreenLighter = '#EDFAF1';\nexport const RedsiftDataVizColorRedDefault = '#EAADAC';\nexport const RedsiftDataVizColorRedDark = '#D18785';\nexport const RedsiftDataVizColorRedDarker = '#BA6361';\nexport const RedsiftDataVizColorRedLight = '#FFD3D2';\nexport const RedsiftDataVizColorRedLighter = '#FFE5E5';\nexport const RedsiftDataVizColorPinkDefault = '#E2A7D7';\nexport const RedsiftDataVizColorPinkDark = '#D185C3';\nexport const RedsiftDataVizColorPinkDarker = '#BD63AC';\nexport const RedsiftDataVizColorPinkLight = '#EFC8E8';\nexport const RedsiftDataVizColorPinkLighter = '#F9E6F6';\nexport const RedsiftDataVizColorCyanDefault = '#AFF5F3';\nexport const RedsiftDataVizColorCyanDark = '#8CEAE6';\nexport const RedsiftDataVizColorCyanDarker = '#6CDCD8';\nexport const RedsiftDataVizColorCyanLight = '#D4FCFA';\nexport const RedsiftDataVizColorCyanLighter = '#E1FFFF';\nexport const RedsiftDataVizColorOrangeDefault = '#F2D39E';\nexport const RedsiftDataVizColorOrangeDark = '#D8B475';\nexport const RedsiftDataVizColorOrangeDarker = '#BD954F';\nexport const RedsiftDataVizColorOrangeLight = '#FFE8C0';\nexport const RedsiftDataVizColorOrangeLighter = '#FFF0D7';\nexport const RedsiftDataVizColorYellowDefault = '#F6EFC7';\nexport const RedsiftDataVizColorYellowDark = '#DED4A0';\nexport const RedsiftDataVizColorYellowDarker = '#C6BB7A';\nexport const RedsiftDataVizColorYellowLight = '#FFFBE1';\nexport const RedsiftDataVizColorYellowLighter = '#FFFDF0';\nexport const RedsiftDataVizColorBrownDefault = '#E6C2A0';\nexport const RedsiftDataVizColorBrownDark = '#CDA279';\nexport const RedsiftDataVizColorBrownDarker = '#B58556';\nexport const RedsiftDataVizColorBrownLight = '#FFE3C9';\nexport const RedsiftDataVizColorBrownLighter = '#FFEEDE';\nexport const RedsiftDataVizColorGreyDefault = '#E5E5E5';\nexport const RedsiftDataVizColorGreyDark = '#BDBDBD';\nexport const RedsiftDataVizColorGreyDarker = '#666666';\nexport const RedsiftDataVizColorGreyLight = '#F5F5F5';\nexport const RedsiftDataVizColorGreyLighter = '#FFFFFF';\nexport const RedsiftSideNavigationColorBackground = '#2D2D34';\nexport const RedsiftSideNavigationColorMenuItemTextResting = '#FFFFFFB3';\nexport const RedsiftSideNavigationColorMenuItemTextDisabled = '#76767A';\nexport const RedsiftSideNavigationColorMenuItemTextHover = '#FFFFFF';\nexport const RedsiftSideNavigationColorMenuItemBackgroundHover = '#4C4C64';\nexport const RedsiftSideNavigationColorMenuItemBackgroundSecondary = '#333340';\nexport const RedsiftSideNavigationColorMenuItemBackgroundActive = '#39394C';\nexport const RedsiftSideNavigationColorMenuItemActive = '#02AC61';\nexport const RedsiftSideNavigationColorScrollbarResting = '#4C4C64';\nexport const RedsiftSideNavigationColorScrollbarHover = '#5d5d73';\nexport const RedsiftTypographyFontFamilyRaleway = \"'Raleway', sans-serif\";\nexport const RedsiftTypographyFontFamilyElectrolize =\n \"'electrolize', sans-serif\";\nexport const RedsiftTypographyFontFamilySourceCodePro =\n \"'Source Code Pro', sans-serif\";\nexport const RedsiftTypographyFontWeightRegular = '400';\nexport const RedsiftTypographyFontWeightMedium = '500';\nexport const RedsiftTypographyFontWeightSemiBold = '600';\nexport const RedsiftTypographyFontWeightBold = '700';\nexport const RedsiftTypographyH1FontFamily = \"'electrolize', sans-serif\";\nexport const RedsiftTypographyH1FontSize = '24px';\nexport const RedsiftTypographyH1FontWeight = '400';\nexport const RedsiftTypographyH1LineHeight = '28px';\nexport const RedsiftTypographyH1TextTransform = 'uppercase';\nexport const RedsiftTypographyH2FontFamily = \"'Raleway', sans-serif\";\nexport const RedsiftTypographyH2FontSize = '24px';\nexport const RedsiftTypographyH2FontWeight = '600';\nexport const RedsiftTypographyH2LineHeight = '28px';\nexport const RedsiftTypographyH2TextTransform = 'unset';\nexport const RedsiftTypographyH3FontFamily = \"'Raleway', sans-serif\";\nexport const RedsiftTypographyH3FontSize = '20px';\nexport const RedsiftTypographyH3FontWeight = '500';\nexport const RedsiftTypographyH3LineHeight = '24px';\nexport const RedsiftTypographyH3TextTransform = 'unset';\nexport const RedsiftTypographyH4FontFamily = \"'Raleway', sans-serif\";\nexport const RedsiftTypographyH4FontSize = '18px';\nexport const RedsiftTypographyH4FontWeight = '500';\nexport const RedsiftTypographyH4LineHeight = '22px';\nexport const RedsiftTypographyH4TextTransform = 'unset';\nexport const RedsiftTypographyH5FontFamily = \"'Raleway', sans-serif\";\nexport const RedsiftTypographyH5FontSize = '16px';\nexport const RedsiftTypographyH5FontWeight = '600';\nexport const RedsiftTypographyH5LineHeight = '20px';\nexport const RedsiftTypographyH5TextTransform = 'unset';\nexport const RedsiftTypographySubtitleFontFamily = \"'Raleway', sans-serif\";\nexport const RedsiftTypographySubtitleFontSize = '15px';\nexport const RedsiftTypographySubtitleFontWeight = '700';\nexport const RedsiftTypographySubtitleLineHeight = '26px';\nexport const RedsiftTypographySubtitleTextTransform = 'unset';\nexport const RedsiftTypographyBodyFontFamily = \"'Raleway', sans-serif\";\nexport const RedsiftTypographyBodyFontSize = '15px';\nexport const RedsiftTypographyBodyFontWeight = '400';\nexport const RedsiftTypographyBodyLineHeight = '26px';\nexport const RedsiftTypographyBodyTextTransform = 'unset';\nexport const RedsiftTypographyBody2FontFamily = \"'Raleway', sans-serif\";\nexport const RedsiftTypographyBody2FontSize = '14px';\nexport const RedsiftTypographyBody2FontWeight = '400';\nexport const RedsiftTypographyBody2LineHeight = '20px';\nexport const RedsiftTypographyLinkFontFamily = \"'Raleway', sans-serif\";\nexport const RedsiftTypographyLinkFontSize = '15px';\nexport const RedsiftTypographyLinkFontWeight = '400';\nexport const RedsiftTypographyLinkLineHeight = '26px';\nexport const RedsiftTypographyInputTextFontFamily =\n \"'Source Code Pro', sans-serif\";\nexport const RedsiftTypographyInputTextFontSize = '15px';\nexport const RedsiftTypographyInputTextFontWeight = '400';\nexport const RedsiftTypographyInputTextLineHeight = '26px';\nexport const RedsiftTypographyButtonFontFamily = \"'Raleway', sans-serif\";\nexport const RedsiftTypographyButtonFontSize = '15px';\nexport const RedsiftTypographyButtonFontWeight = '500';\nexport const RedsiftTypographyButtonLineHeight = '26px';\nexport const RedsiftTypographyButtonTextTransform = 'uppercase';\nexport const RedsiftTypographyCaptionFontFamily = \"'Raleway', sans-serif\";\nexport const RedsiftTypographyCaptionFontSize = '13px';\nexport const RedsiftTypographyCaptionFontWeight = '400';\nexport const RedsiftTypographyCaptionLineHeight = '23px';\nexport const RedsiftTypographyCaptionTextTransform = 'unset';\nexport const RedsiftTypographyHelperFontFamily = \"'Raleway', sans-serif\";\nexport const RedsiftTypographyHelperFontSize = '12px';\nexport const RedsiftTypographyHelperFontWeight = '400';\nexport const RedsiftTypographyHelperLineHeight = '16px';\nexport const RedsiftTypographyBadgeFontFamily = \"'Source Code Pro', sans-serif\";\nexport const RedsiftTypographyBadgeFontSize = '12px';\nexport const RedsiftTypographyBadgeFontWeight = '500';\nexport const RedsiftTypographyBadgeLineHeight = '20px';\nexport const RedsiftTypographyPillFontFamily = \"'Source Code Pro', sans-serif\";\nexport const RedsiftTypographyPillFontSize = '15px';\nexport const RedsiftTypographyPillFontWeight = '500';\nexport const RedsiftTypographyPillLineHeight = '28px';\nexport const RedsiftTypographyChipFontFamily = \"'Source Code Pro', sans-serif\";\nexport const RedsiftTypographyChipFontSize = '13px';\nexport const RedsiftTypographyChipFontWeight = '400';\nexport const RedsiftTypographyChipLineHeight = '18px';\n","import { ComponentProps } from 'react';\n\n/**\n * Display a warning if no label was found for screen readers and assistive technologies.\n *\n * @param props Component props containing the aria-label and aria-labelledby params to check for.\n * @param additionalKeysToCheck Additional props to check that can act as a label for screen readers (i.e. children).\n */\nexport const warnIfNoAccessibleLabelFound = (\n props: ComponentProps<keyof JSX.IntrinsicElements>,\n additionalKeysToCheck?: any[]\n): void => {\n const { 'aria-label': ariaLabel, 'aria-labelledby': ariaLabelledby } = props;\n\n const hasText =\n additionalKeysToCheck &&\n additionalKeysToCheck.filter((key) => !!key).length > 0;\n const hasAriaLabel = Boolean(ariaLabel || ariaLabelledby);\n\n if (!hasAriaLabel && !hasText) {\n console.warn('You must provide a label for accessibility');\n }\n};\n","import { useState, useEffect } from 'react';\n\ninterface WindowSize {\n height?: number;\n width?: number;\n size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';\n}\n\nexport const useWindowSize = () => {\n const [windowSize, setWindowSize] = useState<WindowSize>({\n width: undefined,\n height: undefined,\n size: undefined,\n });\n\n useEffect(() => {\n function handleResize() {\n setWindowSize((windowSize) => {\n if (\n window.innerWidth === windowSize.width &&\n window.innerHeight === windowSize.height\n ) {\n return windowSize;\n }\n\n let size: WindowSize['size'];\n if (window.innerWidth <= 480) {\n size = 'xs';\n } else if (window.innerWidth <= 768) {\n size = 'sm';\n } else if (window.innerWidth <= 1024) {\n size = 'md';\n } else if (window.innerWidth <= 1200) {\n size = 'lg';\n } else {\n size = 'xl';\n }\n return {\n width: window.innerWidth,\n height: window.innerHeight,\n size,\n };\n });\n }\n\n window.addEventListener('resize', handleResize);\n handleResize();\n\n return () => window.removeEventListener('resize', handleResize);\n }, []);\n return windowSize;\n};\n","import { ComponentProps } from 'react';\nimport { ValueOf, StylingProps } from '~/types';\n\n/**\n * Component variant.\n */\nexport const AlertVariant = {\n success: 'success',\n error: 'error',\n warning: 'warning',\n info: 'info',\n} as const;\nexport type AlertVariant = ValueOf<typeof AlertVariant>;\n\n/**\n * Component props.\n */\nexport interface AlertProps extends ComponentProps<'div'>, StylingProps {\n /** Whether the component can be closed or not. */\n isClosable?: boolean;\n /** Whether the component is closed or not. Used for controlled version. */\n isClosed?: boolean;\n /** Method to handle component change. */\n onClose?(isClosed: boolean): void;\n /** Title. */\n title?: string;\n /** Variant */\n variant?: AlertVariant;\n}\n\nexport type StyledAlertProps = Omit<AlertProps, 'variant'> & {\n $hasTitle: boolean;\n $isClosable: AlertProps['isClosable'];\n $isClosed: AlertProps['isClosed'];\n $variant: AlertProps['variant'];\n};\n","import enUS from './en-US.json';\nimport frFR from './fr-FR.json';\n\nexport default {\n 'en-US': enUS,\n 'fr-FR': frFR,\n};\n","import { ComponentProps } from 'react';\nimport { PressEvent } from '@react-types/shared';\nimport {\n ColorPalette,\n ProductColorPalette,\n StylingProps,\n ValueOf,\n} from '~/types';\n\n/**\n * Component variant.\n */\nexport const IconButtonVariant = {\n primary: 'primary',\n secondary: 'secondary',\n unstyled: 'unstyled',\n} as const;\nexport type IconButtonVariant = ValueOf<typeof IconButtonVariant>;\n\n/**\n * Component color.\n */\nexport type IconButtonColor = ColorPalette | ProductColorPalette;\n\n/**\n * Component props.\n */\nexport interface IconButtonProps\n extends ComponentProps<'button'>,\n StylingProps {\n /** Color variant. */\n color?: IconButtonColor;\n /**\n * Icon path data (`d` property of the `path` SVG element).<br />\n * See <a href=\"https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths\">https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths</a>.<br />\n * Recommended path data come from mdi/js.<br />\n * See <a href=\"https://www.npmjs.com/package/@mdi/js\">https://www.npmjs.com/package/@mdi/js</a>.\n */\n icon: string;\n /** Whether the component is active or not. */\n isActive?: boolean;\n /** Whether the component is disabled or not. */\n isDisabled?: boolean;\n /** Preferred method to handle click, press and touch. */\n onPress?: (e: PressEvent) => void;\n /** Button variant. */\n variant?: IconButtonVariant;\n}\n\nexport type StyledIconButtonProps = Omit<\n IconButtonProps,\n 'isActive' | 'isDisabled' | 'variant' | 'color' | 'icon'\n> & {\n $color: IconButtonProps['color'];\n $isActive: IconButtonProps['isActive'];\n $isDisabled: IconButtonProps['isDisabled'];\n $variant: IconButtonProps['variant'];\n};\n","import { ComponentProps, ReactElement } from 'react';\nimport {\n ColorPalette,\n ProductColorPalette,\n StylingProps,\n ValueOf,\n} from '~/types';\n\n/**\n * Component size.\n */\nexport const IconSize = {\n xsmall: 'xsmall',\n small: 'small',\n medium: 'medium',\n large: 'large',\n xlarge: 'xlarge',\n} as const;\nexport type IconSize = ValueOf<typeof IconSize>;\n\n/**\n * Component props.\n */\nexport interface IconProps\n extends ComponentProps<'span'>,\n Omit<StylingProps, 'width' | 'height'> {\n /** Indicates whether the element is exposed to an accessibility API. */\n 'aria-hidden'?: boolean | 'false' | 'true';\n /** A screen reader only label for the Icon. */\n 'aria-label'?: string;\n /** Color variant. Either from color palette or hex or rgb strings. */\n color?: ColorPalette | ProductColorPalette | string;\n /** Whether the icon has a badge attached to it. */\n badge?: ReactElement;\n /**\n * Icon path data (`d` property of the `path` SVG element).<br />\n * See <a href=\"https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths\">https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths</a>.<br />\n * Recommended path data come from mdi/js.<br />\n * See <a href=\"https://www.npmjs.com/package/@mdi/js\">https://www.npmjs.com/package/@mdi/js</a>.\n */\n icon: string;\n /** Icon size. */\n size?: IconSize;\n /** Additional properties to forward to the SVG tag. */\n svgProps?: ComponentProps<'svg'>;\n}\n\nexport type StyledIconProps = Omit<\n IconProps,\n 'color' | 'size' | 'icon' | 'svgProps'\n> & {\n $color: IconProps['color'];\n $size: IconProps['size'];\n};\n","import { css } from 'styled-components';\nimport {\n LayoutProps,\n SpacingProps,\n SizingProps,\n PositioningProps,\n FlexLayoutProps,\n GridLayoutProps,\n StylingProps,\n ContainerProps,\n} from '~/types';\n\nexport const baseLayout = css<LayoutProps>`\n ${({\n flex,\n flexGrow,\n flexShrink,\n flexBasis,\n alignSelf,\n justifySelf,\n order,\n gridArea,\n gridColumn,\n gridRow,\n gridColumnStart,\n gridColumnEnd,\n gridRowStart,\n gridRowEnd,\n }) =>\n css`\n ${flex ? `flex: ${flex};` : ''}\n ${flexGrow ? `flex-grow: ${flexGrow};` : ''}\n ${flexShrink ? `flex-shrink: ${flexShrink};` : ''}\n ${flexBasis ? `flex-basis: ${flexBasis};` : ''}\n ${alignSelf ? `align-self: ${alignSelf};` : ''}\n ${justifySelf ? `justify-self: ${justifySelf};` : ''}\n ${order ? `order: ${order};` : ''}\n ${gridArea ? `grid-area: ${gridArea};` : ''}\n ${gridColumn ? `grid-column: ${gridColumn};` : ''}\n ${gridRow ? `grid-row: ${gridRow};` : ''}\n ${gridColumnStart ? `grid-column-start: ${gridColumnStart};` : ''}\n ${gridColumnEnd ? `grid-column-end: ${gridColumnEnd};` : ''}\n ${gridRowStart ? `grid-row-start: ${gridRowStart};` : ''}\n ${gridRowEnd ? `grid-row-end: ${gridRowEnd};` : ''}\n `}\n`;\n\nexport const baseSpacing = css<SpacingProps>`\n ${({ margin, marginBottom, marginLeft, marginRight, marginTop }) =>\n css`\n ${margin ? `margin: ${margin};` : ''}\n ${marginBottom ? `margin-bottom: ${marginBottom};` : ''}\n ${marginLeft ? `margin-left: ${marginLeft};` : ''}\n ${marginRight ? `margin-right: ${marginRight};` : ''}\n ${marginTop ? `margin-top: ${marginTop};` : ''}\n `}\n`;\n\nexport const baseSizing = css<SizingProps>`\n ${({ height, maxHeight, maxWidth, minHeight, minWidth, width }) =>\n css`\n ${height\n ? `height: ${typeof height === 'number' ? `${height}px` : height};`\n : ''}\n ${maxHeight ? `max-height: ${maxHeight};` : ''}\n ${maxWidth ? `max-width: ${maxWidth};` : ''}\n ${minHeight ? `min-height: ${minHeight};` : ''}\n ${minWidth ? `min-width: ${minWidth};` : ''}\n ${width\n ? `width: ${typeof width === 'number' ? `${width}px` : width};`\n : ''}\n `}\n`;\n\nexport const basePositioning = css<PositioningProps>`\n ${({ position, top, bottom, left, right, zIndex }) =>\n css`\n ${position ? `position: ${position};` : ''}\n ${top ? `top: ${top};` : ''}\n ${bottom ? `bottom: ${bottom};` : ''}\n ${left ? `left: ${left};` : ''}\n ${right ? `right: ${right};` : ''}\n ${zIndex ? `z-index: ${zIndex};` : ''}\n `}\n`;\n\nexport const baseFlexbox = css<FlexLayoutProps>`\n ${({\n alignContent,\n alignItems,\n flexDirection,\n flexWrap,\n gap,\n justifyContent,\n }) =>\n css`\n ${alignContent ? `align-content: ${alignContent};` : ''}\n ${alignItems ? `align-items: ${alignItems};` : ''}\n ${flexDirection ? `flex-direction: ${flexDirection};` : ''}\n ${flexWrap ? `flex-wrap: ${flexWrap};` : ''}\n gap: ${gap};\n ${justifyContent ? `justify-content: ${justifyContent};` : ''}\n `}\n`;\n\nexport const baseGrid = css<GridLayoutProps>`\n ${({\n alignContent,\n alignItems,\n gap,\n gridAutoColumns,\n gridAutoRows,\n gridTemplateAreas,\n gridTemplateColumns,\n gridTemplateRows,\n justifyContent,\n justifyItems,\n }) =>\n css`\n ${alignContent ? `align-content: ${alignContent};` : ''}\n ${alignItems ? `align-items: ${alignItems};` : ''}\n ${gap ? `gap: ${gap};` : ''}\n ${gridAutoColumns ? `grid-auto-columns: ${gridAutoColumns};` : ''}\n ${gridAutoRows ? `grid-auto-rows: ${gridAutoRows};` : ''}\n ${gridTemplateAreas ? `grid-template-areas: ${gridTemplateAreas};` : ''}\n ${gridTemplateColumns\n ? `grid-template-columns: ${gridTemplateColumns};`\n : ''}\n ${gridTemplateRows ? `grid-template-rows: ${gridTemplateRows};` : ''}\n ${justifyContent ? `justify-content: ${justifyContent};` : ''}\n ${justifyItems ? `justify-items: ${justifyItems};` : ''}\n `}\n`;\n\nexport const baseStyling = css<StylingProps>`\n font-family: var(--redsift-typography-body-font-family);\n font-size: var(--redsift-typography-body-font-size);\n font-weight: var(--redsift-typography-body-font-weight);\n line-height: var(--redsift-typography-body-line-height);\n color: var(--redsift-color-neutral-black);\n\n ${baseLayout}\n ${baseSpacing}\n ${baseSizing}\n ${basePositioning}\n`;\n\nexport const baseContainer = css<ContainerProps>`\n ${({ display }) => (display ? `display: ${display};` : '')}\n\n ${baseStyling}\n ${baseFlexbox}\n ${baseGrid}\n`;\n","import styled, { css } from 'styled-components';\nimport { ColorPalette, ProductColorPalette } from '~/types';\nimport { baseStyling } from '~/components/shared';\nimport { StyledIconProps, IconSize } from './types';\n\n/**\n * Component style.\n */\nexport const StyledIcon = styled.span<StyledIconProps>`\n position: relative;\n ${baseStyling}\n\n font-style: normal;\n\n svg {\n vertical-align: -0.125em;\n }\n\n ${({ $color }) =>\n $color &&\n [...Object.keys(ColorPalette), ...Object.keys(ProductColorPalette)].indexOf(\n $color\n ) !== -1\n ? css`\n color: var(--redsift-color-${$color}-primary);\n `\n : css`\n color: ${$color || css`var(--redsift-color-neutral-darkgrey)`};\n `}\n\n ${({ $size }) => {\n switch ($size) {\n case IconSize.xlarge:\n return css`\n font-size: 40px;\n height: 40px;\n line-height: 40px;\n width: 40px;\n\n & .redsift-badge-standard {\n position: absolute;\n right: -24px;\n top: -2px;\n }\n\n & .redsift-badge-dot {\n position: absolute;\n right: -14px;\n top: 6px;\n }\n `;\n case IconSize.large:\n return css`\n font-size: 28px;\n height: 28px;\n line-height: 28px;\n width: 28px;\n\n & .redsift-badge-standard {\n position: absolute;\n right: -24px;\n top: -4px;\n }\n\n & .redsift-badge-dot {\n position: absolute;\n right: -14px;\n top: 2px;\n }\n `;\n case IconSize.small:\n return css`\n font-size: 20px;\n height: 20px;\n line-height: 20px;\n width: 20px;\n\n & .redsift-badge-standard {\n position: absolute;\n right: -24px;\n top: -8px;\n }\n\n & .redsift-badge-dot {\n position: absolute;\n right: -14px;\n top: 1px;\n }\n `;\n case IconSize.xsmall:\n return css`\n font-size: 16px;\n height: 16px;\n line-height: 16px;\n width: 16px;\n\n & .redsift-badge-standard {\n position: absolute;\n right: -24px;\n top: -12px;\n }\n\n & .redsift-badge-dot {\n position: absolute;\n right: -14px;\n top: -1px;\n }\n `;\n case IconSize.medium:\n default:\n return css`\n font-size: 24px;\n height: 24px;\n line-height: 24px;\n width: 24px;\n\n & .redsift-badge-standard {\n position: absolute;\n right: -24px;\n top: -5px;\n }\n\n & .redsift-badge-dot {\n position: absolute;\n right: -14px;\n top: 1px;\n }\n `;\n }\n }}\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\nimport { Comp } from '~/types';\nimport { StyledIcon } from './styles';\nimport { IconProps, IconSize } from './types';\n\nconst COMPONENT_NAME = 'Icon';\nconst CLASSNAME = 'redsift-icon';\nconst DEFAULT_PROPS: Partial<IconProps> = {\n size: IconSize.medium,\n};\n\n/**\n * The Icon component.\n */\nexport const Icon: Comp<IconProps, HTMLSpanElement> = forwardRef(\n (props, ref) => {\n const {\n 'aria-hidden': ariaHidden,\n 'aria-label': ariaLabel,\n badge,\n className,\n color,\n icon,\n size,\n svgProps,\n ...forwardedProps\n } = props;\n\n return (\n <StyledIcon\n {...forwardedProps}\n $color={color}\n $size={size}\n aria-hidden={ariaLabel ? (ariaHidden ? ariaHidden : undefined) : true}\n aria-label={ariaLabel}\n className={classNames(Icon.className, className)}\n ref={ref as RefObject<HTMLSpanElement>}\n >\n <svg\n {...svgProps}\n aria-hidden={ariaLabel ? (ariaHidden ? ariaHidden : undefined) : true}\n aria-label={ariaLabel}\n focusable=\"false\"\n height=\"1em\"\n preserveAspectRatio=\"xMidYMid meet\"\n role=\"img\"\n viewBox=\"0 0 24 24\"\n width=\"1em\"\n >\n <path d={icon} fill=\"currentColor\" />\n </svg>\n {badge ? badge : null}\n </StyledIcon>\n );\n }\n);\nIcon.className = CLASSNAME;\nIcon.defaultProps = DEFAULT_PROPS;\nIcon.displayName = COMPONENT_NAME;\n","import { ComponentProps } from 'react';\nimport { PressEvent } from '@react-types/shared';\nimport {\n ColorPalette,\n ProductColorPalette,\n StylingProps,\n ValueOf,\n} from '~/types';\n\n/**\n * Component variant.\n */\nexport const ButtonVariant = {\n primary: 'primary',\n secondary: 'secondary',\n unstyled: 'unstyled',\n} as const;\nexport type ButtonVariant = ValueOf<typeof ButtonVariant>;\n\n/**\n * Component color.\n */\nexport type ButtonColor = ColorPalette | ProductColorPalette;\n\n/**\n * Component props.\n */\nexport interface ButtonProps extends ComponentProps<'button'>, StylingProps {\n /** Color variant. The product colors are available but should only be used to display the Button in the color of another product. To display a Button with a color of the current product, use `default`. */\n color?: ButtonColor;\n /** Whether the component take the full width or not. */\n fullWidth?: boolean;\n /** Whether the component is active or not. */\n isActive?: boolean;\n /** Whether the component is disabled or not. */\n isDisabled?: boolean;\n /** Whether the component is in a loading state or not. */\n isLoading?: boolean;\n /**\n * Icon path data (`d` property of the `path` SVG element).<br />\n * See <a href=\"https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths\">https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths</a>.<br />\n * Recommended path data come from mdi/js.<br />\n * See <a href=\"https://www.npmjs.com/package/@mdi/js\">https://www.npmjs.com/package/@mdi/js</a>.\n */\n leftIcon?: string;\n /** Preferred method to handle click, press and touch. */\n onPress?: (e: PressEvent) => void;\n /**\n * Icon path data (`d` property of the `path` SVG element).<br />\n * See <a href=\"https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths\">https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths</a>.<br />\n * Recommended path data come from mdi/js.<br />\n * See <a href=\"https://www.npmjs.com/package/@mdi/js\">https://www.npmjs.com/package/@mdi/js</a>.\n */\n rightIcon?: string;\n /** Button variant. */\n variant?: ButtonVariant;\n}\n\nexport type StyledButtonProps = Omit<\n ButtonProps,\n 'isActive' | 'isDisabled' | 'variant' | 'color' | 'size' | 'fullWidth'\n> & {\n $color: ButtonProps['color'];\n $fullWidth?: ButtonProps['fullWidth'];\n $isActive: ButtonProps['isActive'];\n $isDisabled: ButtonProps['isDisabled'];\n $variant: ButtonProps['variant'];\n};\n","import styled, { css } from 'styled-components';\nimport { baseStyling } from '~/components/shared';\nimport { StyledButtonProps, ButtonVariant } from './types';\n\n/**\n * Component style.\n */\nexport const StyledButton = styled.button<StyledButtonProps>`\n ${baseStyling}\n\n align-items: center;\n background: none;\n border: none;\n display: flex;\n font-family: var(--redsift-typography-button-font-family);\n font-size: var(--redsift-typography-button-font-size);\n font-weight: var(--redsift-typography-button-font-weight);\n gap: 8px;\n justify-content: center;\n line-height: var(--redsift-typography-button-line-height);\n text-decoration: none;\n text-transform: var(--redsift-typography-button-text-transform);\n\n ${({ $variant, $color, $isActive, $isDisabled }) => css`\n padding: ${$variant === ButtonVariant.secondary ? '7px 15px' : '8px 16px'};\n\n ${$variant === ButtonVariant.secondary\n ? css`\n background-color: ${$isActive\n ? `var(--redsift-color-${$color}-active)`\n : $isDisabled\n ? 'var(--redsift-color-neutral-white)'\n : 'var(--redsift-color-neutral-white)'};\n &,\n .redsift-icon {\n color: ${$isDisabled\n ? 'var(--redsift-color-neutral-midgrey)'\n : `var(--redsift-color-${$color}-primary)`};\n }\n `\n : $variant === ButtonVariant.unstyled\n ? css`\n background-color: ${$isActive\n ? `var(--redsift-color-${$color}-active)`\n : $isDisabled\n ? 'none'\n : 'none'};\n &,\n .redsift-icon {\n color: ${$isDisabled\n ? 'var(--redsift-color-neutral-midgrey)'\n : `var(--redsift-color-${$color}-primary)`};\n }\n `\n : css`\n background-color: ${$isActive\n ? `var(--redsift-color-${$color}-primary-active)`\n : $isDisabled\n ? 'var(--redsift-color-neutral-lightgrey)'\n : `var(--redsift-color-${$color}-primary)`};\n &,\n .redsift-icon {\n color: ${$isDisabled\n ? 'var(--redsift-color-neutral-midgrey)'\n : 'var(--redsift-color-neutral-white)'};\n }\n `}\n\n ${$variant === ButtonVariant.secondary\n ? css`\n border: 1px solid\n ${$isDisabled\n ? 'var(--redsift-color-neutral-midgrey)'\n : `var(--redsift-color-${$color}-primary)`};\n `\n : ''}\n `};\n\n .redsift-icon.left {\n margin-right: 8px;\n }\n\n .redsift-icon.right {\n margin-left: 8px;\n }\n\n &:hover,\n &:focus-visible {\n outline: none;\n\n ${({ $variant, $color, $isActive, $isDisabled }) => css`\n cursor: ${$isDisabled ? 'default' : 'pointer'};\n\n ${$variant === ButtonVariant.secondary\n ? css`\n background-color: ${$isActive\n ? `var(--redsift-color-${$color}-active-hover)`\n : $isDisabled\n ? 'var(--redsift-color-neutral-white)'\n : `var(--redsift-color-${$color}-hover)`};\n &,\n .redsift-icon {\n color: ${$isDisabled\n ? 'var(--redsift-color-neutral-midgrey)'\n : `var(--redsift-color-${$color}-secondary)`};\n }\n `\n : $variant === ButtonVariant.unstyled\n ? css`\n background-color: ${$isActive\n ? `var(--redsift-color-${$color}-active-hover)`\n : $isDisabled\n ? 'none'\n : `var(--redsift-color-${$color}-hover)`};\n &,\n .redsift-icon {\n color: ${$isDisabled\n ? 'var(--redsift-color-neutral-midgrey)'\n : `var(--redsift-color-${$color}-secondary)`};\n }\n `\n : css`\n background-color: ${$isDisabled\n ? 'var(--redsift-color-neutral-lightgrey)'\n : `var(--redsift-color-${$color}-secondary)`};\n &,\n .redsift-icon {\n color: ${$isDisabled\n ? 'var(--redsift-color-neutral-midgrey)'\n : 'var(--redsift-color-neutral-white)'};\n }\n `}\n\n ${$variant === ButtonVariant.secondary\n ? css`\n border: 1px solid\n ${$isDisabled\n ? 'var(--redsift-color-neutral-midgrey)'\n : `var(--redsift-color-${$color}-primary)`};\n `\n : `\n border: none;\n `}\n `};\n }\n\n ${({ $fullWidth }) =>\n $fullWidth\n ? `\n width: 100%;\n flex-grow: 1;\n\n .redsift-icon.left {\n margin-right: unset;\n }\n\n .redsift-icon.right {\n margin-left: unset;\n }\n `\n : ''}\n`;\n","import enUS from './en-US.json';\nimport frFR from './fr-FR.json';\n\nexport default {\n 'en-US': enUS,\n 'fr-FR': frFR,\n};\n","import { ComponentProps } from 'react';\nimport {\n ColorPalette,\n ProductColorPalette,\n StylingProps,\n ValueOf,\n} from '~/types';\n\n/**\n * Component size.\n */\nexport const SpinnerSize = {\n xsmall: 'xsmall',\n small: 'small',\n medium: 'medium',\n large: 'large',\n} as const;\nexport type SpinnerSize = ValueOf<typeof SpinnerSize>;\n\n/**\n * Component color.\n */\nexport type SpinnerColor =\n | typeof ColorPalette.default\n | typeof ColorPalette.question\n | typeof ColorPalette['no-data']\n | ProductColorPalette;\n\n/**\n * Component props.\n */\nexport interface SpinnerProps\n extends ComponentProps<'img'>,\n Omit<StylingProps, 'height' | 'width'> {\n /** Indicates whether the element is exposed to an accessibility API. */\n 'aria-hidden'?: boolean | 'false' | 'true';\n /** A screen reader only label for the Spinner. */\n 'aria-label'?: string;\n /** Color variant. The product colors are available but should only be used to display the Spinner in the color of another product. To display a Spinner with a color of the current product, use `default`. */\n color?: SpinnerColor;\n /** Spinner size. */\n size?: SpinnerSize;\n}\n\nexport type StyledSpinnerProps = Omit<SpinnerProps, 'color'> & {\n $color?: SpinnerProps['color'];\n $size?: SpinnerProps['size'];\n};\n","import styled from 'styled-components';\nimport { baseStyling } from '~/components/shared';\nimport { StyledSpinnerProps } from './types';\n\nexport const StyledSpinner = styled.img<StyledSpinnerProps>`\n ${baseStyling}\n\n display: inline;\n line-height: 0px;\n vertical-align: -0.125em;\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\nimport { ColorPalette, Comp } from '~/types';\n\nimport { useLocalizedStringFormatter } from '@react-aria/i18n';\nimport intlMessages from './intl';\n\nimport { SpinnerProps, SpinnerSize } from './types';\nimport { StyledSpinner } from './styles';\n\nimport spinnerDefault from './images/spinner-default.svg';\nimport spinnerHardenize from './images/spinner-hardenize.svg';\nimport spinnerNoData from './images/spinner-no-data.svg';\nimport spinnerOndmarc from './images/spinner-ondmarc.svg';\nimport spinnerOndomain from './images/spinner-ondomain.svg';\nimport spinnerOninbox from './images/spinner-oninbox.svg';\nimport spinnerQuestion from './images/spinner-question.svg';\nimport spinnerTools from './images/spinner-tools.svg';\nimport spinnerWebsite from './images/spinner-website.svg';\n\nconst colorToFile = {\n default: spinnerDefault,\n hardenize: spinnerHardenize,\n 'no-data': spinnerNoData,\n ondmarc: spinnerOndmarc,\n ondomain: spinnerOndomain,\n oninbox: spinnerOninbox,\n question: spinnerQuestion,\n tools: spinnerTools,\n website: spinnerWebsite,\n};\n\nconst COMPONENT_NAME = 'Spinner';\nconst CLASSNAME = 'redsift-shield';\nconst DEFAULT_PROPS: Partial<SpinnerProps> = {\n color: ColorPalette.default,\n size: SpinnerSize.medium,\n};\n\nconst sizeToDimension = (\n size: SpinnerSize\n): { width: number; height: number } => {\n switch (size) {\n case SpinnerSize.xsmall:\n return { width: 15, height: 15 };\n case SpinnerSize.small:\n return { width: 24, height: 24 };\n case SpinnerSize.large:\n return { width: 56, height: 56 };\n case SpinnerSize.medium:\n default:\n return { width: 40, height: 40 };\n }\n};\n\n/**\n * The Spinner component.\n */\nexport const Spinner: Comp<SpinnerProps, HTMLImageElement> = forwardRef(\n (props, ref) => {\n const {\n 'aria-hidden': ariaHidden,\n 'aria-label': ariaLabel,\n className,\n color,\n size,\n ...forwardedProps\n } = props;\n\n const { width, height } = sizeToDimension(size!);\n\n const stringFormatter = useLocalizedStringFormatter(intlMessages);\n\n return (\n <StyledSpinner\n alt={stringFormatter.format('loading')}\n {...forwardedProps}\n aria-hidden={ariaLabel ? (ariaHidden ? ariaHidden : undefined) : true}\n aria-label={ariaLabel}\n className={classNames(Spinner.className, className)}\n height={height}\n ref={ref as RefObject<HTMLImageElement>}\n src={colorToFile[color!]}\n width={width}\n $color={color}\n $size={size}\n />\n );\n }\n);\nSpinner.className = CLASSNAME;\nSpinner.defaultProps = DEFAULT_PROPS;\nSpinner.displayName = COMPONENT_NAME;\n","import React, { forwardRef, RefObject, useRef } from 'react';\nimport classNames from 'classnames';\nimport { useButton } from '@react-aria/button';\nimport { AriaButtonProps } from '@react-types/button';\nimport { ColorPalette, Comp } from '~/types';\nimport { Icon } from '~/components/icon';\nimport { StyledButton } from './styles';\nimport { ButtonProps, ButtonVariant } from './types';\nimport { Spinner } from '~/components/spinner';\n\nconst COMPONENT_NAME = 'Button';\nconst CLASSNAME = 'redsift-button';\nconst DEFAULT_PROPS: Partial<ButtonProps> = {\n color: ColorPalette.default,\n variant: ButtonVariant.primary,\n};\n\n/**\n * The Button is a semantic button that looks like a button.\n *\n * For a semantic link that looks like a button, please use the ButtonLink component.\n * For a semantic link that looks like a link, please use the Link component.\n * For a semantic button that looks like a link, please use the LinkButton component.\n */\nexport const Button: Comp<ButtonProps, HTMLButtonElement> = forwardRef(\n (props, ref) => {\n const buttonRef = ref || useRef<HTMLButtonElement>();\n const { buttonProps } = useButton(\n {\n ...props,\n isDisabled: props.isLoading || props.isDisabled || props.disabled,\n preventFocusOnPress: true,\n } as AriaButtonProps<'button'>,\n buttonRef as RefObject<HTMLButtonElement>\n );\n\n const {\n children,\n className,\n color,\n disabled,\n fullWidth,\n isActive,\n isDisabled,\n isLoading,\n leftIcon,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n onPress,\n rightIcon,\n variant,\n ...forwardedProps\n } = props;\n\n return (\n <StyledButton\n {...forwardedProps}\n {...buttonProps}\n $color={color}\n $fullWidth={fullWidth}\n $isActive={isActive}\n $isDisabled={isLoading || isDisabled || disabled}\n $variant={variant}\n aria-disabled={isLoading || isDisabled || disabled}\n className={classNames(Button.className, className)}\n disabled={isLoading || isDisabled || disabled}\n ref={buttonRef as RefObject<HTMLButtonElement>}\n >\n {leftIcon ? (\n <Icon icon={leftIcon} aria-hidden=\"true\" className=\"left\" />\n ) : null}\n {isLoading ? <Spinner size=\"small\" color=\"no-data\" /> : null}\n {children}\n {rightIcon ? (\n <Icon icon={rightIcon} aria-hidden=\"true\" className=\"right\" />\n ) : null}\n </StyledButton>\n );\n }\n);\nButton.className = CLASSNAME;\nButton.defaultProps = DEFAULT_PROPS;\nButton.displayName = COMPONENT_NAME;\n","import styled, { css } from 'styled-components';\nimport { StyledButton } from '~/components/button';\nimport { IconButtonVariant, StyledIconButtonProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledIconButton = styled(StyledButton)<StyledIconButtonProps>`\n ${({ $variant }) => css`\n padding: ${$variant === IconButtonVariant.secondary ? '7px' : '8px'};\n `};\n`;\n","import React, { forwardRef, RefObject, useRef } from 'react';\nimport classNames from 'classnames';\nimport { useButton } from '@react-aria/button';\nimport { AriaButtonProps } from '@react-types/button';\nimport { ColorPalette, Comp } from '~/types';\nimport { Icon } from '~/components/icon';\nimport { warnIfNoAccessibleLabelFound } from '~/utils/warnIfNoAccessibleLabelFound';\nimport { StyledIconButton } from './styles';\nimport { IconButtonProps, IconButtonVariant } from './types';\n\nconst COMPONENT_NAME = 'IconButton';\nconst CLASSNAME = 'redsift-icon-button';\nconst DEFAULT_PROPS: Partial<IconButtonProps> = {\n color: ColorPalette.default,\n variant: IconButtonVariant.unstyled,\n};\n\n/**\n * The Icon Button is a component that contains only one icon as a child, without text.\n *\n * This component should use aria-label, aria-labelledby or aria-describedby to make this\n * component usable with a screen reader.\n */\nexport const IconButton: Comp<IconButtonProps, HTMLButtonElement> = forwardRef(\n (props, ref) => {\n const buttonRef = ref || useRef<HTMLButtonElement>();\n const { buttonProps } = useButton(\n {\n ...props,\n isDisabled: props.isDisabled || props.disabled,\n preventFocusOnPress: true,\n } as AriaButtonProps<'button'>,\n buttonRef as RefObject<HTMLButtonElement>\n );\n\n const {\n className,\n color,\n disabled,\n icon,\n isActive,\n isDisabled,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n onPress,\n variant,\n ...forwardedProps\n } = props;\n\n warnIfNoAccessibleLabelFound(props);\n\n return (\n <StyledIconButton\n {...forwardedProps}\n {...buttonProps}\n $color={isDisabled || disabled ? undefined : color}\n $isActive={isActive}\n $isDisabled={isDisabled || disabled}\n $variant={variant}\n aria-disabled={isDisabled || disabled}\n className={classNames(IconButton.className, className)}\n disabled={isDisabled || disabled}\n ref={buttonRef as RefObject<HTMLButtonElement>}\n >\n <Icon icon={icon} color={isDisabled || disabled ? undefined : color} />\n </StyledIconButton>\n );\n }\n);\nIconButton.className = CLASSNAME;\nIconButton.defaultProps = DEFAULT_PROPS;\nIconButton.displayName = COMPONENT_NAME;\n","import styled, { css } from 'styled-components';\nimport { baseStyling } from '~/components/shared';\nimport { StyledAlertProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledAlert = styled.div<StyledAlertProps>`\n ${baseStyling}\n\n padding: 16px;\n ${({ $hasTitle, $isClosable, $isClosed, $variant }) => css`\n display: ${!$isClosed ? 'block' : 'none'};\n background-color: var(--redsift-color-${$variant}-hover);\n\n .redsift-alert__header {\n h5 {\n line-height: 26px;\n }\n }\n\n .redsift-alert-header__icon-button {\n padding: 0px;\n .redsift-icon {\n color: var(--redsift-color-neutral-black);\n }\n\n &:hover,\n &:focus-visible {\n background-color: var(--redsift-color-${$variant}-active);\n }\n }\n\n .redsift-alert__content {\n margin-top: ${$hasTitle ? '8px' : '-24px'};\n margin-left: 38px;\n ${$isClosable\n ? css`\n margin-right: 24px;\n `\n : ''};\n }\n `}\n`;\n","import { ComponentProps } from 'react';\nimport { ValueOf } from '~/types';\nimport { StylingProps } from '~/types';\n\n/**\n * Component variant.\n */\nexport const HeadingVariant = {\n h1: 'h1',\n h2: 'h2',\n h3: 'h3',\n h4: 'h4',\n h5: 'h5',\n} as const;\nexport type HeadingVariant = ValueOf<typeof HeadingVariant>;\n\n/**\n * Component props.\n */\nexport interface HeadingProps extends ComponentProps<'span'>, StylingProps {\n /** Override component. */\n as: HeadingVariant;\n /** Whether the text will truncate with a text overflow ellipsis or wrap. */\n noWrap?: boolean;\n}\n\nexport type StyledHeadingProps = Omit<HeadingProps, 'color' | 'noWrap'> & {\n $noWrap: HeadingProps['noWrap'];\n};\n","import styled, { css } from 'styled-components';\nimport { baseStyling } from '~/components/shared';\nimport { StyledHeadingProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledHeading = styled.span<StyledHeadingProps>`\n margin: 0;\n padding: 0;\n border: 0;\n font-size: 100%;\n font: inherit;\n vertical-align: baseline;\n\n ${baseStyling}\n\n ${({ as }) =>\n as === 'h1'\n ? css`\n color: var(--redsift-color-neutral-black);\n font-family: var(--redsift-typography-h1-font-family);\n font-size: var(--redsift-typography-h1-font-size);\n font-weight: var(--redsift-typography-h1-font-weight);\n line-height: var(--redsift-typography-h1-line-height);\n text-transform: var(--redsift-typography-h1-text-transform);\n `\n : as === 'h2'\n ? css`\n color: var(--redsift-color-neutral-black);\n font-family: var(--redsift-typography-h2-font-family);\n font-size: var(--redsift-typography-h2-font-size);\n font-weight: var(--redsift-typography-h2-font-weight);\n line-height: var(--redsift-typography-h2-line-height);\n `\n : as === 'h3'\n ? css`\n color: var(--redsift-color-neutral-black);\n font-family: var(--redsift-typography-h3-font-family);\n font-size: var(--redsift-typography-h3-font-size);\n font-weight: var(--redsift-typography-h3-font-weight);\n line-height: var(--redsift-typography-h3-line-height);\n `\n : as === 'h4'\n ? css`\n color: var(--redsift-color-neutral-black);\n font-family: var(--redsift-typography-h4-font-family);\n font-size: var(--redsift-typography-h4-font-size);\n font-weight: var(--redsift-typography-h4-font-weight);\n line-height: var(--redsift-typography-h4-line-height);\n `\n : css`\n color: var(--redsift-color-neutral-black);\n font-family: var(--redsift-typography-h5-font-family);\n font-size: var(--redsift-typography-h5-font-size);\n font-weight: var(--redsift-typography-h5-font-weight);\n line-height: var(--redsift-typography-h5-line-height);\n `}\n\n ${({ $noWrap }) =>\n $noWrap\n ? css`\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n `\n : css`\n word-break: break-word;\n `}\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\nimport { Comp } from '~/types';\nimport { StyledHeading } from './styles';\nimport { HeadingProps } from './types';\n\nconst COMPONENT_NAME = 'Heading';\nconst CLASSNAME = 'redsift-heading';\nconst DEFAULT_PROPS: Partial<HeadingProps> = {};\n\n/**\n * The Heading component.\n */\nexport const Heading: Comp<HeadingProps, HTMLDivElement> = forwardRef(\n (props, ref) => {\n const { as, children, className, noWrap, ...forwardedProps } = props;\n\n return (\n <StyledHeading\n as={as}\n {...forwardedProps}\n className={classNames(Heading.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n $noWrap={noWrap}\n >\n {children}\n </StyledHeading>\n );\n }\n);\nHeading.className = CLASSNAME;\nHeading.defaultProps = DEFAULT_PROPS;\nHeading.displayName = COMPONENT_NAME;\n","import styled from 'styled-components';\nimport { baseFlexbox, baseStyling } from '~/components/shared';\nimport { StyledFlexboxProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledFlexbox = styled.div<StyledFlexboxProps>`\n display: ${({ inline }) => (inline ? 'inline-flex' : 'flex')};\n\n ${baseStyling}\n ${baseFlexbox}\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\nimport { Comp } from '~/types';\nimport { StyledFlexbox } from './styles';\nimport { FlexboxProps } from './types';\n\nconst COMPONENT_NAME = 'Flexbox';\nconst CLASSNAME = 'redsift-flex-box';\nconst DEFAULT_PROPS: Partial<FlexboxProps> = {\n gap: '16px',\n};\n\n/**\n * The Flexbox component.\n */\nexport const Flexbox: Comp<FlexboxProps, HTMLDivElement> = forwardRef(\n (props, ref) => {\n const { children, className, ...forwardedProps } = props;\n\n return (\n <StyledFlexbox\n {...forwardedProps}\n className={classNames(Flexbox.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n >\n {children}\n </StyledFlexbox>\n );\n }\n);\nFlexbox.className = CLASSNAME;\nFlexbox.defaultProps = DEFAULT_PROPS;\nFlexbox.displayName = COMPONENT_NAME;\n","import React, {\n forwardRef,\n RefObject,\n useCallback,\n useEffect,\n useState,\n} from 'react';\nimport classNames from 'classnames';\n\nimport { useLocalizedStringFormatter } from '@react-aria/i18n';\nimport intlMessages from './intl';\n\nimport {\n mdiAlert,\n mdiCheckCircle,\n mdiClose,\n mdiInformation,\n} from '@redsift/icons';\nimport { IconButton } from '~/components/icon-button';\nimport { ColorPalette, Comp } from '~/types';\nimport { StyledAlert } from './styles';\nimport { AlertProps, AlertVariant } from './types';\nimport { Icon } from '~/components/icon';\nimport { Heading } from '~/components/heading';\nimport { Flexbox } from '~/components/flexbox';\n\nconst COMPONENT_NAME = 'Alert';\nconst CLASSNAME = 'redsift-alert';\nconst DEFAULT_PROPS: Partial<AlertProps> = {\n variant: 'info',\n};\n\nconst getVariant = (variant: AlertVariant) => {\n switch (variant) {\n case AlertVariant.info:\n default:\n return {\n color: ColorPalette.info,\n icon: mdiInformation,\n };\n case AlertVariant.error:\n return {\n color: ColorPalette.error,\n icon: mdiInformation,\n };\n case AlertVariant.success:\n return {\n color: ColorPalette.success,\n icon: mdiCheckCircle,\n };\n case AlertVariant.warning:\n return {\n color: ColorPalette.warning,\n icon: mdiAlert,\n };\n }\n};\n\n/**\n * The Alert component.\n */\nexport const Alert: Comp<AlertProps, HTMLDivElement> = forwardRef(\n (props, ref) => {\n const {\n children,\n className,\n isClosable,\n isClosed: propsIsClosed,\n onClose,\n title,\n variant,\n ...forwardedProps\n } = props;\n\n const stringFormatter = useLocalizedStringFormatter(intlMessages);\n\n const { color, icon } = getVariant(variant!);\n const [isClosed, setIsClosed] = useState(propsIsClosed);\n\n useEffect(() => {\n setIsClosed(propsIsClosed);\n }, [propsIsClosed]);\n\n const handleClose = useCallback(() => {\n if (onClose) {\n onClose(true);\n }\n setIsClosed(true);\n }, [onClose]);\n\n return (\n <StyledAlert\n {...forwardedProps}\n className={classNames(Alert.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n $hasTitle={Boolean(title)}\n $isClosable={isClosable}\n $isClosed={isClosed}\n $variant={variant}\n >\n <Flexbox\n className={`${Alert.className}__header`}\n justifyContent=\"space-between\"\n >\n <Flexbox\n className={`${Alert.className}-header__title`}\n gap=\"14px\"\n alignItems=\"flex-start\"\n >\n <Icon icon={icon} color={color} />\n {title ? <Heading as=\"h5\">{title}</Heading> : null}\n </Flexbox>\n\n {isClosable ? (\n <IconButton\n aria-label={stringFormatter.format('close')}\n className={`${Alert.className}-header__icon-button`}\n icon={mdiClose}\n onPress={handleClose}\n />\n ) : null}\n </Flexbox>\n\n {children ? (\n <div className={`${Alert.className}__content`}>{children}</div>\n ) : null}\n </StyledAlert>\n );\n }\n);\nAlert.className = CLASSNAME;\nAlert.defaultProps = DEFAULT_PROPS;\nAlert.displayName = COMPONENT_NAME;\n","import enUS from './en-US.json';\nimport frFR from './fr-FR.json';\n\nexport default {\n 'en-US': enUS,\n 'fr-FR': frFR,\n};\n","import React from 'react';\nimport { AppContainerState } from './types';\n\nexport const AppContainerContext =\n React.createContext<AppContainerState | null>(null);\n","import { useState, useEffect } from 'react';\n\nexport const useIsLoaded = () => {\n const [isLoaded, setIsLoaded] = useState(false);\n\n useEffect(() => {\n setIsLoaded(true);\n });\n\n return {\n isLoaded,\n };\n};\n","import styled, { css } from 'styled-components';\nimport { StyledAppBarProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledAppBar = styled.header<StyledAppBarProps>`\n align-content: center;\n align-items: center;\n background-color: var(--redsift-color-default-primary);\n color: var(--redsift-color-neutral-white);\n display: flex;\n flex-direction: row;\n height: 72px;\n justify-content: space-between;\n left: 0;\n position: fixed;\n top: 0;\n z-index: 1;\n\n ${({ $isSidePanelCollapsed }) =>\n !$isSidePanelCollapsed\n ? css`\n transform: translate(240px);\n width: calc(100% - 240px);\n `\n : `\n transform: translate(0px);\n width: 100%;\n `}\n\n ${({ $isLoaded }) =>\n $isLoaded\n ? css`\n transition: transform 0.25s ease-out, width 0.25s ease-out;\n `\n : ''}\n\n h1 {\n margin: unset;\n padding: unset;\n color: var(--redsift-color-neutral-white);\n }\n\n .redsift-app-bar__left {\n align-content: center;\n align-items: center;\n display: inline-flex;\n flex-direction: row;\n gap: 8px;\n justify-content: center;\n margin-left: 24px;\n }\n\n .redsift-app-bar-left__expand-button,\n .redsift-app-bar-left__collapse-button {\n margin-left: -8px;\n }\n\n .redsift-app-bar__right {\n display: inline-flex;\n margin: 16px;\n }\n`;\n","import React, { forwardRef, RefObject, useContext } from 'react';\nimport classNames from 'classnames';\n\nimport { useLocalizedStringFormatter } from '@react-aria/i18n';\nimport intlMessages from './intl';\n\nimport { mdiMenu, mdiMenuOpen } from '@redsift/icons';\nimport { Comp } from '~/types';\nimport { IconButton, IconButtonVariant } from '~/components/icon-button';\nimport { AppContainerContext } from '~/components/app-container/context';\nimport { useIsLoaded } from '~/hooks/useIsLoaded';\nimport { StyledAppBar } from './styles';\nimport { AppBarProps } from './types';\nimport { Heading } from '~/components/heading';\n\nconst COMPONENT_NAME = 'AppBar';\nconst CLASSNAME = 'redsift-app-bar';\nconst DEFAULT_PROPS: Partial<AppBarProps> = {};\n\n/**\n * The AppBar component.\n */\nexport const AppBar: Comp<AppBarProps, HTMLHeadingElement> = forwardRef(\n (props, ref) => {\n const {\n children,\n className,\n collapseIconButtonProps,\n collapseIconButtonRef,\n expandIconButtonProps,\n expandIconButtonRef,\n fallbackTitle,\n title: propsTitle,\n ...forwardedProps\n } = props;\n\n const { isLoaded } = useIsLoaded();\n const appContainerState = useContext(AppContainerContext);\n\n const stringFormatter = useLocalizedStringFormatter(intlMessages);\n\n return (\n <StyledAppBar\n {...forwardedProps}\n $isLoaded={isLoaded}\n $isSidePanelCollapsed={\n appContainerState ? appContainerState.isSidePanelCollapsed : true\n }\n className={classNames(AppBar.className, className)}\n ref={ref as RefObject<HTMLHeadingElement>}\n >\n <div className={`${AppBar.className}__left`}>\n {appContainerState ? (\n <>\n {appContainerState.isSidePanelCollapsed ? (\n <IconButton\n className={`${AppBar.className}-left__expand-button`}\n {...expandIconButtonProps}\n aria-label={stringFormatter.format('expand')}\n icon={mdiMenu}\n onPress={appContainerState.expandSidePanel}\n ref={collapseIconButtonRef as RefObject<HTMLButtonElement>}\n variant={IconButtonVariant.primary}\n />\n ) : (\n <IconButton\n className={`${AppBar.className}-left__collapse-button`}\n {...collapseIconButtonProps}\n aria-label={stringFormatter.format('collapse')}\n icon={mdiMenuOpen}\n onPress={appContainerState.collapseSidePanel}\n ref={expandIconButtonRef as RefObject<HTMLButtonElement>}\n variant={IconButtonVariant.primary}\n />\n )}\n </>\n ) : null}\n {propsTitle && typeof propsTitle !== 'string' ? (\n <>{propsTitle}</>\n ) : typeof propsTitle === 'string' ? (\n <Heading as=\"h1\">{propsTitle}</Heading>\n ) : appContainerState && appContainerState.title ? (\n <Heading as=\"h1\">{appContainerState.title}</Heading>\n ) : fallbackTitle ? (\n <Heading as=\"h1\">{fallbackTitle}</Heading>\n ) : null}\n </div>\n <div className={`${AppBar.className}__right`}>{children}</div>\n </StyledAppBar>\n );\n }\n);\nAppBar.className = CLASSNAME;\nAppBar.defaultProps = DEFAULT_PROPS;\nAppBar.displayName = COMPONENT_NAME;\n","import styled, { css } from 'styled-components';\nimport { ProductColorPalette } from '~/types';\nimport { StyledAppContainerProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledAppContainer = styled.div<StyledAppContainerProps>`\n ${({ $productTheme }) =>\n $productTheme &&\n Object.keys(ProductColorPalette).indexOf($productTheme) !== -1\n ? css`\n --redsift-color-default-primary: var(\n --redsift-color-${$productTheme}-primary\n );\n --redsift-color-default-secondary: var(\n --redsift-color-${$productTheme}-secondary\n );\n --redsift-color-default-hover: var(\n --redsift-color-${$productTheme}-hover\n );\n --redsift-color-default-active: var(\n --redsift-color-${$productTheme}-active\n );\n --redsift-color-default-active-hover: var(\n --redsift-color-${$productTheme}-active-hover\n );\n --redsift-color-default-primary-active: var(\n --redsift-color-${$productTheme}-primary-active\n );\n `\n : ''}\n`;\n","import React, { forwardRef, RefObject, useMemo, useState } from 'react';\nimport { I18nProvider } from '@react-aria/i18n';\nimport classNames from 'classnames';\nimport { Comp } from '~/types';\nimport { AppContainerProps } from './types';\nimport { AppContainerContext } from './context';\nimport { StyledAppContainer } from './styles';\nimport { partitionComponents } from '~/utils/partitionComponents';\nimport { isComponent } from '~/utils/isComponent';\n\nconst COMPONENT_NAME = 'AppContainer';\nconst CLASSNAME = 'redsift-app-container';\nconst DEFAULT_PROPS: Partial<AppContainerProps> = {};\n\n/**\n * The AppContainer component.\n */\nexport const AppContainer: Comp<AppContainerProps, HTMLDivElement> = forwardRef(\n (props, ref) => {\n const { children, className, locale, productTheme, ...forwardedProps } =\n props;\n\n const { hasAppBar, hasAppSidePanel, hasAppContent } = useMemo(() => {\n const [[appBar], [appSidePanel], [appContent]] = partitionComponents(\n React.Children.toArray(children),\n [\n isComponent('AppBar'),\n isComponent('AppSidePanel'),\n isComponent('AppContent'),\n ]\n );\n\n return {\n hasAppBar: Boolean(appBar),\n hasAppSidePanel: Boolean(appSidePanel),\n hasAppContent: Boolean(appContent),\n };\n }, [children]);\n\n if (\n (hasAppBar || hasAppSidePanel || hasAppContent) &&\n !(hasAppBar && hasAppSidePanel && hasAppContent)\n ) {\n console.warn(\n 'Missing AppSidePanel, AppBar or AppContent inside AppContainer. These components are meant to work together.'\n );\n }\n\n const [isSidePanelCollapsed, setIsSidePanelCollapsed] =\n useState<boolean>(false);\n const [title, setTitle] = useState<string | undefined>();\n\n const state = {\n collapseSidePanel() {\n setIsSidePanelCollapsed(true);\n },\n expandSidePanel() {\n setIsSidePanelCollapsed(false);\n },\n hasAppBar,\n hasAppSidePanel,\n hasAppContent,\n setTitle(title: string) {\n setTitle(title);\n },\n isSidePanelCollapsed,\n title,\n };\n\n return (\n <StyledAppContainer\n {...forwardedProps}\n $productTheme={productTheme}\n className={classNames(AppContainer.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n >\n <AppContainerContext.Provider value={state}>\n <I18nProvider locale={locale}>{children}</I18nProvider>\n </AppContainerContext.Provider>\n </StyledAppContainer>\n );\n }\n);\nAppContainer.className = CLASSNAME;\nAppContainer.defaultProps = DEFAULT_PROPS;\nAppContainer.displayName = COMPONENT_NAME;\n","import styled, { css } from 'styled-components';\nimport { ProductColorPalette } from '~/types';\nimport { baseContainer } from '~/components/shared';\nimport { StyledAppContentProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledAppContent = styled.main<StyledAppContentProps>`\n ${baseContainer}\n\n box-sizing: border-box;\n margin-top: 72px;\n min-height: calc(100vh - 72px);\n padding: 16px 32px;\n\n @media screen and (max-width: 768px) {\n padding: 0px;\n }\n\n ${({ $isSidePanelCollapsed }) =>\n !$isSidePanelCollapsed\n ? css`\n transform: translate(240px);\n width: calc(100% - 240px);\n `\n : `\n transform: translate(0px);\n width: 100%;\n `}\n\n ${({ $isLoaded }) =>\n $isLoaded\n ? css`\n transition: transform 0.25s ease-out, width 0.25s ease-out;\n `\n : ''}\n\n ${({ $productTheme }) =>\n $productTheme &&\n Object.keys(ProductColorPalette).indexOf($productTheme) !== -1\n ? css`\n --redsift-color-default-primary: var(\n --redsift-color-${$productTheme}-primary\n );\n --redsift-color-default-secondary: var(\n --redsift-color-${$productTheme}-secondary\n );\n --redsift-color-default-hover: var(\n --redsift-color-${$productTheme}-hover\n );\n --redsift-color-default-active: var(\n --redsift-color-${$productTheme}-active\n );\n --redsift-color-default-active-hover: var(\n --redsift-color-${$productTheme}-active-hover\n );\n --redsift-color-default-primary-active: var(\n --redsift-color-${$productTheme}-primary-active\n );\n `\n : ''}\n`;\n","import React, { forwardRef, RefObject, useContext } from 'react';\nimport classNames from 'classnames';\nimport { Comp } from '~/types';\nimport { AppContainerContext } from '~/components/app-container/context';\nimport { useIsLoaded } from '~/hooks/useIsLoaded';\nimport { StyledAppContent } from './styles';\nimport { AppContentProps } from './types';\n\nconst COMPONENT_NAME = 'AppContent';\nconst CLASSNAME = 'redsift-app-content';\nconst DEFAULT_PROPS: Partial<AppContentProps> = {};\n\n/**\n * The AppContent component.\n */\nexport const AppContent: Comp<AppContentProps, HTMLElement> = forwardRef(\n (props, ref) => {\n const { children, className, productTheme, ...forwardedProps } = props;\n\n const { isLoaded } = useIsLoaded();\n const appContainerState = useContext(AppContainerContext);\n\n return (\n <StyledAppContent\n {...forwardedProps}\n $isLoaded={isLoaded}\n $isSidePanelCollapsed={\n appContainerState ? appContainerState.isSidePanelCollapsed : true\n }\n $productTheme={productTheme}\n className={classNames(AppContent.className, className)}\n ref={ref as RefObject<HTMLElement>}\n >\n {children}\n </StyledAppContent>\n );\n }\n);\nAppContent.className = CLASSNAME;\nAppContent.defaultProps = DEFAULT_PROPS;\nAppContent.displayName = COMPONENT_NAME;\n","import styled from 'styled-components';\nimport { StyledAppSidePanelProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledAppSidePanel = styled.div<StyledAppSidePanelProps>`\n align-items: center;\n background-color: var(--redsift-side-navigation-color-background);\n flex-direction: column;\n height: 100%;\n left: 0px;\n overflow: hidden;\n position: fixed;\n top: 0;\n transform: ${({ $isCollapsed }) =>\n !$isCollapsed ? 'translate(0px)' : 'translate(-240px)'};\n transition: transform 0.25s ease-out, visibility 0.25s ease-out;\n visibility: ${({ $isCollapsed }) => (!$isCollapsed ? 'visible' : 'hidden')};\n width: 240px;\n z-index: 1;\n\n .redsift-app-side-panel__header {\n align-items: center;\n box-sizing: border-box;\n display: flex;\n flex-direction: row;\n gap: 8px;\n justify-content: space-between;\n padding: 16px;\n width: 100%;\n height: 72px;\n }\n\n .redsift-app-side-panel__header > img {\n max-height: 36px;\n max-width: 160px;\n }\n\n .redsift-app-side-panel__featured {\n box-sizing: border-box;\n margin-bottom: 16px;\n padding: 0px 16px;\n width: 100%;\n }\n\n [dir='rtl'] & {\n left: unset;\n right: 0px;\n transform: unset;\n transition: unset;\n }\n`;\n","import React, { forwardRef, RefObject, useContext } from 'react';\nimport classNames from 'classnames';\nimport { Comp } from '~/types';\nimport { AppContainerContext } from '~/components/app-container/context';\nimport { StyledAppSidePanel } from './styles';\nimport { AppSidePanelProps } from './types';\n\nconst COMPONENT_NAME = 'AppSidePanel';\nconst CLASSNAME = 'redsift-app-side-panel';\nconst DEFAULT_PROPS: Partial<AppSidePanelProps> = {};\n\n/**\n * The AppSidePanel component.\n */\nexport const AppSidePanel: Comp<AppSidePanelProps, HTMLDivElement> = forwardRef(\n (props, ref) => {\n const {\n children,\n className,\n featuredElements,\n isCollapsed = false,\n logo,\n ...forwardedProps\n } = props;\n\n const appContainerState = useContext(AppContainerContext);\n\n return (\n <StyledAppSidePanel\n {...forwardedProps}\n $isCollapsed={\n !!(isCollapsed || appContainerState?.isSidePanelCollapsed)\n }\n className={classNames(AppSidePanel.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n >\n {logo || appContainerState?.hasAppBar ? (\n <div className={`${AppSidePanel.className}__header`}>\n {logo ? (\n React.isValidElement(logo) ? (\n logo\n ) : (\n <img src={logo.src} alt={logo.alt} />\n )\n ) : null}\n </div>\n ) : null}\n {featuredElements ? (\n <div className={`${AppSidePanel.className}__featured`}>\n {featuredElements}\n </div>\n ) : null}\n {children}\n </StyledAppSidePanel>\n );\n }\n);\nAppSidePanel.className = CLASSNAME;\nAppSidePanel.defaultProps = DEFAULT_PROPS;\nAppSidePanel.displayName = COMPONENT_NAME;\n","import { ComponentProps, MutableRefObject } from 'react';\nimport { IconProps } from '~/components/icon';\n\n/**\n * Context props.\n */\nexport type SideNavigationMenuContextProps = {\n menuItems: Set<HTMLAnchorElement | HTMLButtonElement>;\n};\n\n/**\n * Reducer props.\n */\nexport type SideNavigationMenuReducerState = {\n isExpanded: boolean;\n currentIndex: number;\n previousIndex: number;\n};\n\nexport enum SideNavigationMenuReducerActionType {\n Expand = 'expand',\n Collapse = 'collapse',\n Move = 'move',\n}\n\nexport type SideNavigationMenuReducerAction = {\n type: SideNavigationMenuReducerActionType;\n index?: number;\n};\n\n/**\n * Component props.\n */\nexport interface SideNavigationMenuProps extends ComponentProps<'div'> {\n /** Custom props to pass to the button. */\n buttonProps?: ComponentProps<'button'>;\n /** Custom ref to pass to the button. */\n buttonRef?: MutableRefObject<HTMLButtonElement>;\n /** Whether or not the menu contains children that have a badge. */\n hasBadge?: boolean;\n /**\n * Icon path data (`d` property of the `path` SVG element).<br />\n * See <a href=\"https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths\">https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths</a>.<br />\n * Recommended path data come from mdi/js.<br />\n * See <a href=\"https://www.npmjs.com/package/@mdi/js\">https://www.npmjs.com/package/@mdi/js</a>.\n */\n icon?: string;\n /** Custom props to pass to the Icon component. */\n iconProps?: Omit<IconProps, 'icon'>;\n /** Custom ref to pass to the Icon component. */\n iconRef?: MutableRefObject<HTMLElement>;\n /** Whether the component is disabled or not. */\n isDisabled?: boolean;\n /** Whether the menu is expanded or not. */\n isExpanded?: boolean;\n /** Custom props to pass to the menu. */\n menuProps?: ComponentProps<'ul'>;\n /** Custom ref to pass to the menu. */\n menuRef?: MutableRefObject<HTMLUListElement>;\n /** Whether the component should hide icons or not. */\n withoutIcons?: boolean;\n}\n\nexport type StyledSideNavigationMenuProps = Omit<\n SideNavigationMenuProps,\n 'isDisabled' | 'isExpanded' | 'withoutIcons'\n> & {\n $isDisabled: SideNavigationMenuProps['isDisabled'];\n $isExpanded: SideNavigationMenuProps['isExpanded'];\n $withoutIcons: SideNavigationMenuProps['withoutIcons'];\n};\n","import React from 'react';\nimport { SideNavigationMenuBarContextProps } from './types';\n\nexport const SideNavigationMenuBarContext =\n React.createContext<SideNavigationMenuBarContextProps>(null!);\n","import React from 'react';\nimport { SideNavigationMenuContextProps } from './types';\n\nexport const SideNavigationMenuContext =\n React.createContext<SideNavigationMenuContextProps>(null!);\n","import styled, { css } from 'styled-components';\nimport { StyledSideNavigationMenuItemProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledSideNavigationMenuItem = styled.a<StyledSideNavigationMenuItemProps>`\n /**\n * Common style\n */\n ${({ $isDisabled }) =>\n !$isDisabled\n ? css`\n color: var(--redsift-side-navigation-color-menu-item-text-resting);\n `\n : css`\n color: var(--redsift-side-navigation-color-menu-item-text-disabled);\n `}\n align-items: center;\n display: flex;\n font-family: var(--redsift-typography-body-font-family);\n font-size: var(--redsift-typography-body-font-size);\n font-weight: var(--redsift-typography-body-font-weight);\n line-height: var(--redsift-typography-body-line-height);\n text-decoration: none;\n\n &:hover,\n &:focus-visible {\n outline: none;\n\n ${({ $isDisabled }) =>\n !$isDisabled\n ? css`\n background-color: var(\n --redsift-side-navigation-color-menu-item-background-hover\n );\n color: var(--redsift-side-navigation-color-menu-item-text-hover);\n `\n : ''}\n }\n\n ${({ $isSecondLevel, $withoutIcons }) =>\n !$isSecondLevel\n ? css`\n /**\n * First-level items\n */\n\n background-color: var(--redsift-side-navigation-color-background);\n padding: 8px 16px;\n\n .redsift-icon.first {\n padding-right: 16px;\n box-sizing: unset;\n }\n\n span {\n padding-right: 12px;\n }\n\n [dir='rtl'] & {\n padding-right: unset;\n\n .redsift-icon.first {\n padding-left: 16px;\n padding-right: unset;\n }\n\n span {\n padding-left: 12px;\n padding-right: unset;\n }\n }\n `\n : `\n /**\n * Second-level items\n */\n\n background-color: var(--redsift-side-navigation-color-menu-item-background-secondary);\n padding-bottom: 8px;\n padding-left: ${!$withoutIcons ? '52px' : '16px'};\n padding-right: 8px;\n padding-top: 8px;\n\n span {\n padding-right: 12px;\n }\n\n [dir=\"rtl\"] & {\n padding-left: unset;\n padding-right: 16px;\n\n span {\n padding-left: 12px;\n padding-right: unset;\n }\n }\n `}\n\n ${({ $isCurrent, $isDisabled }) =>\n $isCurrent && !$isDisabled\n ? css`\n background-color: var(\n --redsift-side-navigation-color-menu-item-background-active\n );\n box-shadow: inset -4px 0px 0px var(--redsift-side-navigation-color-menu-item-active);\n `\n : ''}\n`;\n","import { ComponentProps } from 'react';\nimport {\n ColorPalette,\n ProductColorPalette,\n StylingProps,\n ValueOf,\n} from '~/types';\n\n/**\n * Component variant.\n */\nexport const BadgeVariant = {\n dot: 'dot',\n standard: 'standard',\n} as const;\nexport type BadgeVariant = ValueOf<typeof BadgeVariant>;\n\n/**\n * Component props.\n */\nexport interface BadgeProps\n extends ComponentProps<'div'>,\n Omit<StylingProps, 'width' | 'height'> {\n /** Whether the badge should automatically break content. */\n autoBreak?: boolean;\n /** Color variant. The product colors are available but should only be used to display the Badge in the color of another product. To display a Badge with a color of the current product, use `default`. */\n color?: ColorPalette | ProductColorPalette;\n /** Whether the Badge has its colors reversed or not. */\n isReversed?: boolean;\n /** Badge variant. */\n variant?: BadgeVariant;\n}\n\nexport type StyledBadgeProps = Omit<\n BadgeProps,\n 'color' | 'variant' | 'isReversed' | 'autoBreak'\n> & {\n $autoBreak: BadgeProps['autoBreak'];\n $color: BadgeProps['color'];\n $isReversed: BadgeProps['isReversed'];\n $variant: BadgeProps['variant'];\n};\n","import styled, { css } from 'styled-components';\nimport { baseStyling } from '~/components/shared';\nimport { BadgeVariant, StyledBadgeProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledBadge = styled.div<StyledBadgeProps>`\n ${baseStyling}\n\n ${({ $color, $isReversed }) => {\n if ($isReversed) {\n return css`\n background-color: var(--redsift-color-neutral-white);\n\n &,\n .redsift-icon {\n color: var(--redsift-color-${$color}-primary);\n }\n `;\n } else {\n return css`\n background-color: var(--redsift-color-${$color}-primary);\n\n &,\n .redsift-icon {\n color: var(--redsift-color-neutral-white);\n }\n `;\n }\n }}\n\n ${({ $variant, $autoBreak }) => {\n switch ($variant) {\n case BadgeVariant.dot:\n return css`\n border-radius: 50%;\n height: 8px;\n margin-bottom: 12px;\n margin-right: 12px;\n width: 8px;\n `;\n case BadgeVariant.standard:\n default:\n return css`\n border-radius: 64px;\n min-width: 8px;\n padding: 0 6px;\n text-align: center;\n width: fit-content;\n word-break: ${$autoBreak ? 'break-word' : 'normal'};\n\n &,\n .redsift-icon {\n font-family: var(--redsift-typography-badge-font-family);\n font-size: var(--redsift-typography-badge-font-size);\n font-weight: var(--redsift-typography-badge-font-weight);\n line-height: var(--redsift-typography-badge-line-height);\n }\n `;\n }\n }}\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\nimport { ColorPalette, Comp } from '~/types';\nimport { StyledBadge } from './styles';\nimport { BadgeProps, BadgeVariant } from './types';\n\nconst COMPONENT_NAME = 'Badge';\nconst CLASSNAME = 'redsift-badge';\nconst DEFAULT_PROPS: Partial<BadgeProps> = {\n color: ColorPalette.question,\n variant: BadgeVariant.dot,\n};\n\n/**\n * The Badge component.\n */\nexport const Badge: Comp<BadgeProps, HTMLDivElement> = forwardRef(\n (props, ref) => {\n const {\n autoBreak,\n children,\n className,\n color,\n isReversed,\n variant,\n ...forwardedProps\n } = props;\n\n return (\n <StyledBadge\n {...forwardedProps}\n $autoBreak={autoBreak}\n $color={color}\n $isReversed={isReversed}\n $variant={variant}\n className={classNames(\n Badge.className,\n `${Badge.className}-${variant}`,\n className\n )}\n ref={ref as RefObject<HTMLDivElement>}\n >\n {variant === BadgeVariant.standard ? children : null}\n </StyledBadge>\n );\n }\n);\nBadge.className = CLASSNAME;\nBadge.defaultProps = DEFAULT_PROPS;\nBadge.displayName = COMPONENT_NAME;\n","import React, {\n forwardRef,\n MutableRefObject,\n useContext,\n useEffect,\n useRef,\n useState,\n} from 'react';\nimport classNames from 'classnames';\nimport { Comp } from '~/types';\nimport { Icon, IconSize } from '~/components/icon';\nimport { warnIfNoAccessibleLabelFound } from '~/utils/warnIfNoAccessibleLabelFound';\nimport { SideNavigationMenuBarContext } from '~/components/side-navigation-menu-bar/context';\nimport { SideNavigationMenuContext } from '~/components/side-navigation-menu/context';\nimport { AppContainerContext } from '~/components/app-container/context';\nimport { StyledSideNavigationMenuItem } from './styles';\nimport { SideNavigationMenuItemProps } from './types';\nimport { Badge, BadgeVariant } from '~/components/badge';\n\nconst COMPONENT_NAME = 'SideNavigationMenuItem';\nconst CLASSNAME = 'redsift-side-navigation-menu-item';\nconst DEFAULT_PROPS: Partial<SideNavigationMenuItemProps> = {};\n\n/**\n * The SideNavigationMenuItem component.\n */\nexport const SideNavigationMenuItem: Comp<\n SideNavigationMenuItemProps,\n HTMLAnchorElement\n> = forwardRef((props, ref) => {\n const menuItemRef = ref || useRef<HTMLAnchorElement>();\n\n const {\n badge,\n badgeProps,\n children,\n className,\n href,\n icon,\n iconProps,\n iconRef = useRef<HTMLElement>(),\n isCurrent,\n isDisabled,\n isSecondLevel,\n onClick,\n onKeyDown,\n tabIndex,\n withoutIcons,\n ...forwardedProps\n } = props;\n\n warnIfNoAccessibleLabelFound(props, [children]);\n\n const appContainerState = useContext(AppContainerContext);\n useEffect(() => {\n if (appContainerState && isCurrent && typeof children === 'string') {\n appContainerState.setTitle(children);\n }\n\n return () => {\n if (appContainerState) {\n appContainerState.setTitle(undefined);\n }\n };\n }, [isCurrent]);\n\n const sideNavigationMenuBarContext = useContext(SideNavigationMenuBarContext);\n const sideNavigationMenuContext = useContext(SideNavigationMenuContext);\n const [isFirstChild, setIsFirstChild] = useState(false);\n const { menuItems } =\n sideNavigationMenuContext || sideNavigationMenuBarContext || {};\n\n useEffect(() => {\n if (!(sideNavigationMenuContext || sideNavigationMenuBarContext)) {\n setIsFirstChild(true);\n return;\n }\n\n const menuItemNode = (menuItemRef as MutableRefObject<HTMLAnchorElement>)\n .current;\n\n if (menuItemNode) {\n if (!menuItems.size) {\n setIsFirstChild(true);\n }\n\n menuItems.add(menuItemNode);\n }\n\n return () => {\n menuItems.delete(menuItemNode);\n };\n }, [menuItems]);\n\n return (\n <StyledSideNavigationMenuItem\n role=\"menuitem\"\n {...forwardedProps}\n $isCurrent={isCurrent}\n $isDisabled={isDisabled}\n $isSecondLevel={isSecondLevel}\n $withoutIcons={withoutIcons}\n aria-current={isCurrent ? 'page' : undefined}\n aria-disabled={isDisabled}\n className={classNames(SideNavigationMenuItem.className, className)}\n href={!isDisabled ? href : undefined}\n onClick={isDisabled ? undefined : onClick}\n onKeyDown={isDisabled ? undefined : onKeyDown}\n ref={menuItemRef as MutableRefObject<HTMLAnchorElement>}\n tabIndex={\n tabIndex !== undefined\n ? tabIndex\n : !sideNavigationMenuContext && isFirstChild\n ? 0\n : -1\n }\n >\n {icon ? (\n <Icon\n color=\"var(--redsift-side-navigation-color-menu-item-text-resting)\"\n {...iconProps}\n icon={icon}\n ref={iconRef as MutableRefObject<HTMLElement>}\n className=\"first\"\n size={IconSize.small}\n />\n ) : null}\n <span>{children}</span>\n {badge ? (\n <Badge variant={BadgeVariant.standard} color=\"error\" {...badgeProps}>\n {badge}\n </Badge>\n ) : null}\n </StyledSideNavigationMenuItem>\n );\n});\nSideNavigationMenuItem.className = CLASSNAME;\nSideNavigationMenuItem.defaultProps = DEFAULT_PROPS;\nSideNavigationMenuItem.displayName = COMPONENT_NAME;\n","import styled, { css } from 'styled-components';\nimport { StyledSideNavigationMenuProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledSideNavigationMenu = styled.div<StyledSideNavigationMenuProps>`\n > button {\n background-color: var(--redsift-side-navigation-color-background);\n border: none;\n ${({ $isDisabled }) =>\n !$isDisabled\n ? css`\n color: var(--redsift-side-navigation-color-menu-item-text-resting);\n `\n : css`\n color: var(--redsift-side-navigation-color-menu-item-text-disabled);\n `}\n align-items: center;\n display: flex;\n font-family: var(--redsift-typography-body-font-family);\n font-size: var(--redsift-typography-body-font-size);\n font-weight: var(--redsift-typography-body-font-weight);\n line-height: var(--redsift-typography-body-line-height);\n padding: 8px 16px;\n text-decoration: none;\n width: 100%;\n }\n\n ul {\n list-style: none;\n margin: unset;\n padding: unset;\n }\n\n .redsift-icon.first {\n padding-right: 16px;\n box-sizing: unset;\n }\n\n span {\n padding-right: 12px;\n }\n\n [dir='rtl'] & {\n .redsift-icon.first {\n padding-left: 16px;\n padding-right: unset;\n }\n\n span {\n padding-left: 12px;\n padding-right: unset;\n }\n }\n\n > button:hover,\n > button:focus-visible {\n outline: none;\n\n ${({ $isDisabled }) =>\n !$isDisabled\n ? css`\n background-color: var(\n --redsift-side-navigation-color-menu-item-background-hover\n );\n color: var(--redsift-side-navigation-color-menu-item-text-hover);\n cursor: pointer;\n\n .redsift-side-navigation-menu__expand-icon {\n color: var(--redsift-side-navigation-color-menu-item-text-hover);\n }\n `\n : ''}\n }\n\n .redsift-side-navigation-menu__expand-icon {\n ${({ $isDisabled }) =>\n !$isDisabled\n ? css`\n color: var(--redsift-side-navigation-color-menu-item-text-resting);\n `\n : css`\n color: var(--redsift-side-navigation-color-menu-item-text-disabled);\n `}\n margin-left: auto;\n }\n\n [dir='rtl'] & {\n .redsift-side-navigation-menu__expand-icon {\n margin-left: unset;\n margin-right: auto;\n }\n }\n\n /**\n * Display children or not\n */\n\n > ul {\n ${({ $isExpanded }) =>\n $isExpanded\n ? css`\n display: block;\n `\n : css`\n display: none;\n `}\n }\n`;\n","import {\n SideNavigationMenuReducerState,\n SideNavigationMenuReducerAction,\n SideNavigationMenuReducerActionType,\n} from './types';\n\nexport const SideNavigationMenuReducer = (\n state: SideNavigationMenuReducerState,\n action: SideNavigationMenuReducerAction\n): SideNavigationMenuReducerState => {\n switch (action.type) {\n case SideNavigationMenuReducerActionType.Expand:\n return { ...state, isExpanded: true };\n case SideNavigationMenuReducerActionType.Collapse:\n return {\n isExpanded: false,\n currentIndex: null!,\n previousIndex: null!,\n };\n case SideNavigationMenuReducerActionType.Move:\n return {\n ...state,\n isExpanded: true,\n currentIndex: action.index!,\n previousIndex: state.currentIndex,\n };\n }\n};\n","import React, {\n forwardRef,\n KeyboardEvent,\n MouseEvent,\n MutableRefObject,\n useCallback,\n useContext,\n useEffect,\n useMemo,\n useReducer,\n useRef,\n useState,\n} from 'react';\nimport classNames from 'classnames';\nimport { mdiChevronDown, mdiChevronRight } from '@redsift/icons';\nimport { Comp } from '~/types';\nimport { SideNavigationMenuItem } from '~/components/side-navigation-menu-item';\nimport { Icon, IconSize } from '~/components/icon';\nimport { Badge } from '~/components/badge';\nimport { StyledSideNavigationMenu } from './styles';\nimport {\n SideNavigationMenuContextProps,\n SideNavigationMenuProps,\n SideNavigationMenuReducerActionType,\n} from './types';\nimport { SideNavigationMenuContext } from './context';\nimport { SideNavigationMenuReducer } from './reducer';\nimport { SideNavigationMenuBarContext } from '~/components/side-navigation-menu-bar/context';\nimport { warnIfNoAccessibleLabelFound } from '~/utils/warnIfNoAccessibleLabelFound';\nimport { filterComponents } from '~/utils/filterComponents';\n\nconst COMPONENT_NAME = 'SideNavigationMenu';\nconst CLASSNAME = 'redsift-side-navigation-menu';\nconst DEFAULT_PROPS: Partial<SideNavigationMenuProps> = {};\n\n/**\n * The SideNavigationMenu component.\n */\nexport const SideNavigationMenu: Comp<SideNavigationMenuProps, HTMLDivElement> =\n forwardRef((props, ref) => {\n const {\n 'aria-label': ariaLabel,\n buttonProps = {},\n buttonRef = useRef<HTMLButtonElement>() as MutableRefObject<HTMLButtonElement>,\n children,\n className,\n hasBadge,\n icon,\n iconProps,\n iconRef = useRef<HTMLElement>(),\n isDisabled,\n isExpanded: propsIsExpanded,\n menuProps = {},\n menuRef = useRef<HTMLUListElement>(),\n tabIndex,\n withoutIcons,\n ...forwardedProps\n } = props;\n\n warnIfNoAccessibleLabelFound(props);\n\n const sideNavigationMenuBarContext = useContext(\n SideNavigationMenuBarContext\n );\n const [isFirstChild, setIsFirstChild] = useState(false);\n const { menuItems: menubarItems } = sideNavigationMenuBarContext || {};\n\n /**\n * Create an array containing only valid children which can only be SideNavigationMenuItem.\n * This prevent the navigation menubar to have more than two levels.\n */\n const childArray = filterComponents(SideNavigationMenuItem)(children);\n const renderedMenuItems = childArray.map((child, index) => {\n return (\n <li key={child.key ?? index} role=\"none\">\n {React.cloneElement(child, {\n icon: undefined, // Second-level item should not have icon\n isDisabled: child.props.isDisabled || isDisabled || undefined,\n isSecondLevel: true,\n key: child.key ?? index,\n withoutIcons,\n })}\n </li>\n );\n });\n\n const menuItems = useRef<Set<HTMLAnchorElement | HTMLButtonElement>>(\n new Set()\n ).current;\n const [state, dispatch] = useReducer(SideNavigationMenuReducer, {\n currentIndex: null!,\n isExpanded: Boolean(propsIsExpanded),\n previousIndex: null!,\n });\n const { isExpanded, currentIndex, previousIndex } = state;\n\n const first = useCallback(\n () =>\n dispatch({ type: SideNavigationMenuReducerActionType.Move, index: 0 }),\n []\n );\n\n const last = useCallback(\n () =>\n dispatch({\n type: SideNavigationMenuReducerActionType.Move,\n index: menuItems.size - 1,\n }),\n [menuItems.size]\n );\n\n const move = useCallback(\n (index: number) =>\n dispatch({ type: SideNavigationMenuReducerActionType.Move, index }),\n []\n );\n\n const open = useCallback(\n () => dispatch({ type: SideNavigationMenuReducerActionType.Expand }),\n []\n );\n\n const close = useCallback(\n (focusButton?: boolean) => {\n if (isExpanded) {\n if (focusButton) {\n buttonRef.current.focus();\n }\n\n dispatch({ type: SideNavigationMenuReducerActionType.Collapse });\n }\n },\n [isExpanded]\n );\n\n const previous = () => {\n const index = currentIndex === 0 ? menuItems.size - 1 : currentIndex - 1;\n move(index);\n };\n\n const next = () => {\n const index = currentIndex === menuItems.size - 1 ? 0 : currentIndex + 1;\n move(index);\n };\n\n const match = (e: React.KeyboardEvent<HTMLUListElement>) => {\n const items = Array.from(menuItems);\n\n // Reorder the array, starting with the currentNode\n const reorderedItems = [\n ...items.slice(currentIndex),\n ...items.slice(0, currentIndex),\n ];\n\n // Find all nodes that begin with the pressed letter\n const matches = reorderedItems.filter((menuItem) => {\n const { textContent } = menuItem;\n // istanbul ignore next\n const firstLetter = textContent?.toLowerCase().charAt(0);\n return e.key === firstLetter;\n });\n\n // Exit early if there are no matches\n if (!matches.length) {\n return;\n }\n\n // If the focused item is a match, focus the next match.\n // Otherwise, focus the first match\n const currentNode = items[currentIndex];\n const nextMatch = matches.includes(currentNode) ? matches[1] : matches[0];\n const index = items.findIndex((item) => {\n return item === nextMatch;\n });\n\n move(index);\n };\n\n const value = useMemo<SideNavigationMenuContextProps>(\n () => ({ menuItems }),\n [menuItems]\n );\n\n useEffect(() => {\n const items = Array.from(menuItems);\n\n if (currentIndex !== previousIndex) {\n const currentNode = items[currentIndex] as HTMLElement;\n currentNode?.focus();\n }\n }, [menuItems, currentIndex, previousIndex]);\n\n useEffect(() => {\n if (!sideNavigationMenuBarContext) {\n setIsFirstChild(true);\n return;\n }\n\n const menuItemNode = (buttonRef as MutableRefObject<HTMLButtonElement>)\n .current;\n\n if (menuItemNode) {\n menubarItems.add(menuItemNode);\n }\n\n return () => {\n menubarItems.delete(menuItemNode);\n };\n }, [menubarItems]);\n\n const keyDownOnButton = (e: KeyboardEvent<HTMLButtonElement>) => {\n if (isDisabled) {\n return;\n }\n const currentNode = e.target as HTMLUListElement;\n\n switch (e.code) {\n case 'Enter':\n case 'Space':\n e.stopPropagation();\n currentNode.click();\n first();\n break;\n case 'ArrowRight':\n e.stopPropagation();\n first();\n break;\n case 'ArrowLeft':\n last();\n break;\n default:\n break;\n }\n };\n\n const buttonEventHandler = {\n onClick: (event: MouseEvent<HTMLButtonElement>) => {\n if (isDisabled) {\n return;\n }\n\n buttonProps.onClick?.(event);\n event.stopPropagation();\n if (isExpanded) {\n close();\n } else {\n open();\n }\n },\n onKeyDown: (event: KeyboardEvent<HTMLButtonElement>) => {\n buttonProps.onKeyDown?.(event);\n keyDownOnButton(event);\n },\n };\n\n const keyDownOnMenuItemList = (e: KeyboardEvent<HTMLUListElement>) => {\n const currentNode = e.target as HTMLUListElement;\n\n switch (e.code) {\n case 'ArrowUp':\n e.stopPropagation();\n e.preventDefault();\n previous();\n break;\n case 'ArrowDown':\n e.stopPropagation();\n e.preventDefault();\n next();\n break;\n case 'ArrowLeft':\n e.preventDefault();\n e.stopPropagation();\n close(true);\n break;\n case 'ArrowRight':\n e.preventDefault();\n close(!sideNavigationMenuBarContext);\n break;\n case 'Home':\n e.stopPropagation();\n e.preventDefault();\n first();\n break;\n case 'End':\n e.stopPropagation();\n e.preventDefault();\n last();\n break;\n case 'Enter':\n case 'Space':\n e.preventDefault();\n currentNode.click();\n break;\n case 'Escape':\n e.stopPropagation();\n e.preventDefault();\n close(true);\n break;\n default:\n e.stopPropagation();\n match(e);\n break;\n }\n };\n\n const menuItemListEventHandler = {\n onKeyDown: (event: KeyboardEvent<HTMLUListElement>) => {\n menuProps.onKeyDown?.(event);\n keyDownOnMenuItemList(event);\n },\n onClick: (event: MouseEvent<HTMLUListElement>) => {\n if (isDisabled) {\n return;\n }\n menuProps.onClick?.(event);\n },\n };\n\n return (\n <StyledSideNavigationMenu\n {...forwardedProps}\n $isDisabled={isDisabled}\n $isExpanded={isExpanded}\n $withoutIcons={withoutIcons}\n className={classNames(SideNavigationMenu.className, className)}\n ref={ref as MutableRefObject<HTMLDivElement>}\n tabIndex={undefined}\n >\n <SideNavigationMenuContext.Provider value={value}>\n <button\n {...buttonProps}\n aria-disabled={isDisabled}\n aria-expanded={isExpanded ? 'true' : 'false'}\n aria-haspopup=\"true\"\n ref={buttonRef as MutableRefObject<HTMLButtonElement>}\n role=\"menuitem\"\n tabIndex={tabIndex !== undefined ? tabIndex : isFirstChild ? 0 : -1}\n type=\"button\"\n {...buttonEventHandler}\n >\n {icon ? (\n <Icon\n color=\"var(--redsift-side-navigation-color-menu-item-text-resting)\"\n {...iconProps}\n icon={icon}\n ref={iconRef as MutableRefObject<HTMLElement>}\n className={classNames(iconProps?.className, 'first')}\n size={IconSize.small}\n />\n ) : null}\n <span>{ariaLabel}</span>\n {hasBadge && !isExpanded ? <Badge color=\"error\" /> : null}\n {isExpanded ? (\n <Icon\n icon={mdiChevronDown}\n className={`${SideNavigationMenu.className}__expand-icon`}\n size={IconSize.small}\n />\n ) : (\n <Icon\n icon={mdiChevronRight}\n className={`${SideNavigationMenu.className}__expand-icon`}\n size={IconSize.small}\n />\n )}\n </button>\n <ul\n {...menuProps}\n aria-label={ariaLabel}\n aria-orientation=\"vertical\"\n hidden={!isExpanded}\n ref={menuRef as MutableRefObject<HTMLUListElement>}\n role=\"menu\"\n {...menuItemListEventHandler}\n >\n {renderedMenuItems}\n </ul>\n </SideNavigationMenuContext.Provider>\n </StyledSideNavigationMenu>\n );\n });\nSideNavigationMenu.className = CLASSNAME;\nSideNavigationMenu.defaultProps = DEFAULT_PROPS;\nSideNavigationMenu.displayName = COMPONENT_NAME;\n","import styled, { css } from 'styled-components';\nimport { StyledSideNavigationMenuBarProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledSideNavigationMenuBar = styled.nav<StyledSideNavigationMenuBarProps>`\n background-color: var(--redsift-side-navigation-color-background);\n overflow-y: auto;\n width: 240px;\n\n ${({ $marginTop = 0 }) =>\n $marginTop\n ? css`\n height: calc(100% - ${$marginTop}px);\n `\n : ''}\n\n ul {\n list-style: none;\n margin: unset;\n padding: unset;\n }\n\n scrollbar-color: var(--redsift-side-navigation-color-scrollbar-resting)\n transparent;\n scrollbar-width: thin;\n\n &::-webkit-scrollbar {\n block-size: 9px;\n inline-size: 9px;\n }\n\n &::-webkit-scrollbar-thumb {\n background-clip: padding-box;\n background-color: var(--redsift-side-navigation-color-scrollbar-resting);\n border-radius: 0px;\n border-left: 2px solid transparent;\n border-right: 2px solid transparent;\n }\n\n &::-webkit-scrollbar-track {\n background-color: transparent;\n }\n\n &::-webkit-scrollbar-thumb:horizontal,\n &::-webkit-scrollbar-thumb:vertical {\n &:hover {\n background-color: var(--redsift-side-navigation-color-scrollbar-hover);\n }\n }\n\n &::-webkit-scrollbar-corner {\n visibility: hidden;\n }\n`;\n","import { useState, useEffect, MutableRefObject } from 'react';\n\n/**\n * Get the bounding rect of a component.\n */\nexport const useBoundingClientRect = (\n ref: MutableRefObject<HTMLElement>,\n deps?: any[]\n) => {\n const [boundingRect, setBoundingRect] = useState<DOMRect>({} as DOMRect);\n\n useEffect(() => {\n if (ref.current) {\n setBoundingRect(ref.current.getBoundingClientRect());\n }\n }, deps);\n\n return boundingRect;\n};\n","import React, {\n forwardRef,\n KeyboardEvent,\n MutableRefObject,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport classNames from 'classnames';\nimport { Comp } from '~/types';\nimport { SideNavigationMenu } from '~/components/side-navigation-menu';\nimport { SideNavigationMenuItem } from '~/components/side-navigation-menu-item';\nimport { warnIfNoAccessibleLabelFound } from '~/utils/warnIfNoAccessibleLabelFound';\nimport { StyledSideNavigationMenuBar } from './styles';\nimport {\n SideNavigationMenuBarProps,\n SideNavigationMenuBarContextProps,\n} from './types';\nimport { SideNavigationMenuBarContext } from './context';\nimport { useBoundingClientRect } from '~/hooks/useBoundingRect';\nimport { filterComponents } from '~/utils/filterComponents';\n\nconst COMPONENT_NAME = 'SideNavigationMenuBar';\nconst CLASSNAME = 'redsift-side-navigation-menu-bar';\nconst DEFAULT_PROPS: Partial<SideNavigationMenuBarProps> = {};\n\n/**\n * Hook to store the previous index for further use\n */\nconst usePrevious = (value: number) => {\n const ref = useRef(0);\n\n useEffect(() => {\n ref.current = value;\n }, [value]);\n\n return ref.current;\n};\n\n/**\n * The SideNavigationMenuBar component.\n */\nexport const SideNavigationMenuBar: Comp<\n SideNavigationMenuBarProps,\n HTMLElement\n> = forwardRef((props, ref) => {\n const navRef = (ref ||\n useRef<HTMLElement>()) as MutableRefObject<HTMLElement>;\n\n const {\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledby,\n children,\n className,\n isDisabled,\n menubarProps = {},\n menubarRef = useRef<HTMLUListElement>(),\n withoutIcons,\n ...forwardedProps\n } = props;\n\n warnIfNoAccessibleLabelFound(props);\n const { top } = useBoundingClientRect(navRef, [children]);\n\n /**\n * Create an array containing only valid children being either SideNavigationMenu or SideNavigationMenuItem.\n */\n const childArray = filterComponents([\n SideNavigationMenu,\n SideNavigationMenuItem,\n ])(children);\n const navItems = childArray.map((child, index) => {\n return (\n <li key={child.key ?? index} role=\"none\">\n {React.cloneElement(child, {\n isDisabled: child.props.isDisabled || isDisabled || undefined,\n key: child.key ?? index,\n // First-level children should have icon, even empty one (except when withoutIcons is set to true)\n icon: withoutIcons ? undefined : child.props.icon || 'M 0,0',\n withoutIcons,\n tabIndex: index === 0 ? 0 : -1,\n })}\n </li>\n );\n });\n\n const menuItems = useRef<Set<HTMLAnchorElement | HTMLButtonElement>>(\n new Set()\n ).current;\n const [currentIndex, setCurrentIndex] = useState(0);\n const previousIndex = usePrevious(currentIndex);\n\n const first = () => setCurrentIndex(0);\n\n const last = () => setCurrentIndex(menuItems.size - 1);\n\n const next = () => {\n const index = currentIndex === menuItems.size - 1 ? 0 : currentIndex + 1;\n setCurrentIndex(index);\n };\n\n const previous = () => {\n const index = currentIndex === 0 ? menuItems.size - 1 : currentIndex - 1;\n setCurrentIndex(index);\n };\n\n const match = (event: React.KeyboardEvent<HTMLUListElement>) => {\n const items = Array.from(menuItems);\n\n // Reorder the array, starting with the currentNode\n const reorderedItems = [\n ...items.slice(currentIndex),\n ...items.slice(0, currentIndex),\n ];\n\n // Find all nodes that begin with the pressed letter\n const matches = reorderedItems.filter((menuItem) => {\n const { textContent } = menuItem;\n // istanbul ignore next\n const firstLetter = textContent?.toLowerCase().charAt(0);\n return event.key === firstLetter;\n });\n\n // Exit early if there are no matches\n if (!matches.length) {\n return;\n }\n\n // If the focused item is a match, focus the next match.\n // Otherwise, focus the first match\n const currentNode = items[currentIndex];\n const nextMatch = matches.includes(currentNode) ? matches[1] : matches[0];\n const index = items.findIndex((item) => {\n return item === nextMatch;\n });\n\n setCurrentIndex(index);\n };\n\n const keyDown = (e: KeyboardEvent<HTMLUListElement>) => {\n menubarProps.onKeyDown?.(e);\n e.stopPropagation();\n\n const currentNode = e.target as HTMLUListElement;\n // istanbul ignore next\n const parentMenu = currentNode?.parentNode?.parentNode as HTMLElement;\n const isFromSubmenu = parentMenu.getAttribute('role') === 'menu';\n\n switch (e.code) {\n case 'ArrowUp':\n e.preventDefault();\n previous();\n break;\n case 'ArrowDown':\n e.preventDefault();\n next();\n break;\n case 'ArrowRight':\n e.preventDefault();\n if (isFromSubmenu) {\n next();\n }\n break;\n case 'End':\n e.preventDefault();\n last();\n break;\n case 'Home':\n e.preventDefault();\n first();\n break;\n case 'Enter':\n case 'Space':\n e.preventDefault();\n currentNode.click();\n break;\n default:\n match(e);\n break;\n }\n };\n\n const value = useMemo<SideNavigationMenuBarContextProps>(\n () => ({ menuItems }),\n [menuItems]\n );\n\n useEffect(() => {\n if (currentIndex !== previousIndex) {\n const items = Array.from(menuItems);\n const currentNode = items[currentIndex] as HTMLElement;\n const previousNode = items[previousIndex] as HTMLElement;\n\n // istanbul ignore next\n previousNode?.setAttribute('tabindex', '-1');\n currentNode?.setAttribute('tabindex', '0');\n currentNode?.focus();\n }\n }, [currentIndex, previousIndex, menuItems]);\n\n return (\n <StyledSideNavigationMenuBar\n {...forwardedProps}\n $isDisabled={isDisabled}\n $marginTop={top}\n $withoutIcons={withoutIcons}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledby}\n className={classNames(SideNavigationMenuBar.className, className)}\n ref={navRef as MutableRefObject<HTMLElement>}\n >\n <SideNavigationMenuBarContext.Provider value={value}>\n <ul\n {...menubarProps}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledby}\n aria-orientation=\"vertical\"\n onKeyDown={keyDown}\n ref={menubarRef as MutableRefObject<HTMLUListElement>}\n role=\"menubar\"\n >\n {navItems}\n </ul>\n </SideNavigationMenuBarContext.Provider>\n </StyledSideNavigationMenuBar>\n );\n});\nSideNavigationMenuBar.className = CLASSNAME;\nSideNavigationMenuBar.defaultProps = DEFAULT_PROPS;\nSideNavigationMenuBar.displayName = COMPONENT_NAME;\n","import React, { MutableRefObject } from 'react';\nimport { SideNavigationMenu } from '~/components/side-navigation-menu';\nimport { SideNavigationMenuItem } from '~/components/side-navigation-menu-item';\nimport {\n MenuBarItems,\n MenuItem,\n Menu,\n SideNavigationMenuBarProps,\n} from './types';\n\nconst isMenu = (item: MenuItem | Menu): item is Menu => {\n return (item as Menu).children !== undefined;\n};\n\nexport interface UseSideNavigationMenuBarProps {\n items: MenuBarItems;\n isActive?: (href: string) => boolean;\n}\n\nexport const useSideNavigationMenuBar = ({\n items,\n isActive,\n}: UseSideNavigationMenuBarProps): Omit<SideNavigationMenuBarProps, 'ref'> => {\n const menuBarChildren: SideNavigationMenuBarProps['children'][] = [];\n\n items.map((item) => {\n if (!isMenu(item)) {\n const { title, href, ref, ...rest } = item;\n menuBarChildren.push(\n <SideNavigationMenuItem\n key={title}\n isCurrent={isActive ? isActive(href!) : undefined}\n {...rest}\n href={href}\n ref={ref as MutableRefObject<HTMLAnchorElement>}\n >\n {title}\n </SideNavigationMenuItem>\n );\n } else {\n const { title, children, ref, ...rest } = item;\n menuBarChildren.push(\n <SideNavigationMenu\n key={title}\n aria-label={title}\n isExpanded={\n isActive\n ? children.filter((child) => isActive(child.href!)).length > 0\n : undefined\n }\n hasBadge={children.filter((child) => child.badge).length > 0}\n {...rest}\n ref={ref as MutableRefObject<HTMLDivElement>}\n >\n {children.map((child) => {\n const { title, href, ref, ...rest } = child;\n return (\n <SideNavigationMenuItem\n key={title}\n href={href}\n isCurrent={isActive ? isActive(href!) : undefined}\n {...rest}\n ref={ref as MutableRefObject<HTMLAnchorElement>}\n >\n {title}\n </SideNavigationMenuItem>\n );\n })}\n </SideNavigationMenu>\n );\n }\n });\n\n return {\n children: menuBarChildren,\n };\n};\n","import React from 'react';\nimport {\n SideNavigationMenuBar,\n useSideNavigationMenuBar,\n UseSideNavigationMenuBarProps,\n} from '~/components/side-navigation-menu-bar';\nimport { AppSidePanelProps } from './types';\n\nexport const useAppSidePanel = ({\n items,\n isActive,\n}: UseSideNavigationMenuBarProps): Omit<AppSidePanelProps, 'ref'> => {\n const sideNavigationMenuBarProps = useSideNavigationMenuBar({\n items,\n isActive,\n });\n\n return {\n children: (\n <SideNavigationMenuBar\n {...sideNavigationMenuBarProps}\n aria-label=\"Navigation\"\n />\n ),\n };\n};\n","import styled, { css } from 'styled-components';\nimport { StyledBreadcrumbItemProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledBreadcrumbItem = styled.a<StyledBreadcrumbItemProps>`\n background: none;\n border: none;\n font-family: var(--redsift-typography-body-font-family);\n font-size: var(--redsift-typography-body-font-size);\n font-weight: var(--redsift-typography-body-font-weight);\n line-height: var(--redsift-typography-body-line-height);\n padding: 4px;\n text-decoration: none;\n\n ${({ $isDisabled, $isCurrent }) => css`\n ${$isDisabled\n ? `\n color: var(--redsift-color-neutral-midgrey);\n `\n : $isCurrent\n ? `\n color: var(--redsift-color-default-primary);\n `\n : `\n color: var(--redsift-color-neutral-darkgrey);\n `}\n\n ${!$isDisabled &&\n !$isCurrent &&\n css`\n &:hover,\n &:focus-visible {\n cursor: pointer;\n text-decoration: underline;\n text-underline-offset: 2px;\n }\n `}\n `}\n\n &:focus-visible {\n outline: 2px solid var(--redsift-color-neutral-darkgrey);\n }\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\nimport { Comp } from '~/types';\nimport { warnIfNoAccessibleLabelFound } from '~/utils/warnIfNoAccessibleLabelFound';\nimport { StyledBreadcrumbItem } from './styles';\nimport { BreadcrumbItemProps } from './types';\n\nconst COMPONENT_NAME = 'BreadcrumbItem';\nconst CLASSNAME = 'redsift-breadcrumb-item';\nconst DEFAULT_PROPS: Partial<BreadcrumbItemProps> = {};\n\n/**\n * The BreadcrumbItem components is a list of links to the parent pages of the current page in hierarchical order.\n */\nexport const BreadcrumbItem: Comp<BreadcrumbItemProps, HTMLAnchorElement> =\n forwardRef((props, ref) => {\n const {\n children,\n className,\n href,\n isCurrent,\n isDisabled,\n ...forwardedProps\n } = props;\n\n warnIfNoAccessibleLabelFound(props, [children]);\n\n return (\n <StyledBreadcrumbItem\n role=\"link\"\n tabIndex={!isDisabled && !isCurrent ? 0 : undefined}\n {...forwardedProps}\n $isCurrent={isCurrent}\n $isDisabled={isDisabled}\n aria-current={isCurrent ? 'page' : undefined}\n aria-disabled={isDisabled || isCurrent}\n className={classNames(BreadcrumbItem.className, className)}\n href={!isDisabled && !isCurrent ? href : undefined}\n ref={ref as RefObject<HTMLAnchorElement>}\n >\n {children}\n </StyledBreadcrumbItem>\n );\n });\nBreadcrumbItem.className = CLASSNAME;\nBreadcrumbItem.defaultProps = DEFAULT_PROPS;\nBreadcrumbItem.displayName = COMPONENT_NAME;\n","import styled, { css } from 'styled-components';\nimport { baseStyling } from '~/components/shared';\nimport { StyledBreadcrumbsProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledBreadcrumbs = styled.nav<StyledBreadcrumbsProps>`\n ${baseStyling}\n\n ol {\n display: inline-flex;\n list-style: none;\n padding: unset;\n }\n\n .redsift-breadcrumbs__separator {\n font-family: var(--redsift-typography-body-font-family);\n font-size: var(--redsift-typography-body-font-size);\n font-weight: var(--redsift-typography-body-font-weight);\n line-height: var(--redsift-typography-body-line-height);\n margin: 0px 4px;\n\n ${({ $isDisabled }) =>\n $isDisabled\n ? css`\n color: var(--redsift-color-neutral-midgrey);\n `\n : css`\n color: var(--redsift-color-neutral-black);\n `}\n }\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\nimport { Comp } from '~/types';\nimport { BreadcrumbItem } from '~/components/breadcrumb-item';\nimport { warnIfNoAccessibleLabelFound } from '~/utils/warnIfNoAccessibleLabelFound';\nimport { StyledBreadcrumbs } from './styles';\nimport { BreadcrumbsProps } from './types';\nimport { filterComponents } from '~/utils';\n\nconst COMPONENT_NAME = 'Breadcrumbs';\nconst CLASSNAME = 'redsift-breadcrumbs';\nconst DEFAULT_PROPS: Partial<BreadcrumbsProps> = {};\n\n/**\n * The Breadcrumbs components is a list of links to the parent pages of the current page in hierarchical order.\n */\nexport const BaseBreadcrumbs: Comp<BreadcrumbsProps, HTMLElement> = forwardRef(\n (props, ref) => {\n const { children, className, isDisabled, ...forwardedProps } = props;\n\n warnIfNoAccessibleLabelFound(props);\n\n const childArray = filterComponents([Breadcrumbs.Item])(children);\n const breadcrumbItems = childArray.map((child, index) => {\n const isCurrent = index === childArray.length - 1;\n\n return (\n <li key={index}>\n <Breadcrumbs.Item\n isDisabled={child.props.isDisabled || isDisabled || undefined}\n {...child.props}\n key={child.key ?? index}\n isCurrent={isCurrent}\n />\n {isCurrent === false ? (\n <span className={`${BaseBreadcrumbs.className}__separator`}>\n {'/'}\n </span>\n ) : null}\n </li>\n );\n });\n\n return (\n <StyledBreadcrumbs\n {...forwardedProps}\n $isDisabled={isDisabled}\n className={classNames(BaseBreadcrumbs.className, className)}\n ref={ref as RefObject<HTMLElement>}\n >\n <ol>{breadcrumbItems}</ol>\n </StyledBreadcrumbs>\n );\n }\n);\nBaseBreadcrumbs.className = CLASSNAME;\nBaseBreadcrumbs.defaultProps = DEFAULT_PROPS;\nBaseBreadcrumbs.displayName = COMPONENT_NAME;\n\nexport const Breadcrumbs = Object.assign(BaseBreadcrumbs, {\n Item: BreadcrumbItem,\n});\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\nimport { ColorPalette, Comp } from '~/types';\nimport { Icon } from '~/components/icon';\nimport { ButtonVariant, StyledButton } from '~/components/button';\nimport { ButtonLinkProps } from './types';\n\nconst COMPONENT_NAME = 'ButtonLink';\nconst CLASSNAME = 'redsift-button-link';\nconst DEFAULT_PROPS: Partial<ButtonLinkProps> = {\n color: ColorPalette.default,\n variant: ButtonVariant.primary,\n};\n\n/**\n * The ButtonLink is a semantic link that looks like a button.\n *\n * For a semantic button that looks like a button, please use the Button component.\n * For a semantic link that looks like a link, please use the Link component.\n * For a semantic button that looks like a link, please use the LinkButton component.\n */\nexport const ButtonLink: Comp<ButtonLinkProps, HTMLAnchorElement> = forwardRef(\n (props, ref) => {\n const {\n as,\n children,\n className,\n color,\n href,\n isActive,\n isDisabled,\n leftIcon,\n rightIcon,\n target,\n variant,\n ...forwardedProps\n } = props;\n\n return (\n <StyledButton\n as={as || 'a'}\n role=\"link\"\n tabIndex={!isDisabled ? 0 : undefined}\n {...forwardedProps}\n $color={color}\n $isActive={isActive}\n $isDisabled={isDisabled}\n $variant={variant}\n className={classNames(ButtonLink.className, className)}\n href={!isDisabled ? href : undefined}\n ref={ref as RefObject<HTMLAnchorElement>}\n target={target}\n >\n {leftIcon ? (\n <Icon icon={leftIcon} aria-hidden=\"true\" className=\"left\" />\n ) : null}\n {children}\n {rightIcon ? (\n <Icon icon={rightIcon} aria-hidden=\"true\" className=\"right\" />\n ) : null}\n </StyledButton>\n );\n }\n);\nButtonLink.className = CLASSNAME;\nButtonLink.defaultProps = DEFAULT_PROPS;\nButtonLink.displayName = COMPONENT_NAME;\n","import enUS from './en-US.json';\nimport frFR from './fr-FR.json';\n\nexport default {\n 'en-US': enUS,\n 'fr-FR': frFR,\n};\n","import styled from 'styled-components';\nimport { baseStyling } from '~/components/shared';\nimport { StyledCardProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledCard = styled.div<StyledCardProps>`\n ${baseStyling}\n\n background-color: var(--redsift-color-neutral-white);\n box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5);\n display: flex;\n flex-direction: column;\n padding: 16px;\n\n .redsift-card__header {\n align-items: flex-start;\n display: flex;\n justify-content: space-between;\n }\n\n .redsift-card-header__icon-button {\n margin: 12px 8px;\n }\n\n .redsift-card__content {\n visibility: ${({ $isCollapsed }) => (!$isCollapsed ? 'visible' : 'hidden')};\n overflow: ${({ $isCollapsed }) => (!$isCollapsed ? 'visible' : 'hidden')};\n height: ${({ $isCollapsed }) => (!$isCollapsed ? 'auto' : '0px')};\n }\n`;\n","import styled from 'styled-components';\nimport { StyledCardHeaderProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledCardHeader = styled.div<StyledCardHeaderProps>`\n color: var(--redsift-color-neutral-black);\n\n .redsift-card-header__header {\n align-items: center;\n display: flex;\n gap: 8px;\n padding: 10px 0px;\n margin: 0px;\n\n .redsift-icon {\n color: var(--redsift-color-neutral-black);\n padding-right: 8px;\n font-size: 30px;\n line-height: 30px;\n height: 30px;\n }\n }\n\n .redsift-card-header__subheader {\n font-family: var(--redsift-typography-body-font-family);\n font-size: var(--redsift-typography-body-font-size);\n font-weight: var(--redsift-typography-body-font-weight);\n line-height: var(--redsift-typography-body-line-height);\n }\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\n\nimport { Icon } from '~/components/icon';\nimport { Heading } from '~/components/heading';\nimport { Comp } from '~/types';\nimport { StyledCardHeader } from './styles';\nimport { CardHeaderProps } from './types';\n\nconst COMPONENT_NAME = 'CardHeader';\nconst CLASSNAME = 'redsift-card-header';\nconst DEFAULT_PROPS: Partial<CardHeaderProps> = {};\n\n/**\n * The CardHeader component.\n */\nexport const CardHeader: Comp<CardHeaderProps, HTMLDivElement> = forwardRef(\n (props, ref) => {\n const { children, className, header, icon, subheader, ...forwardedProps } =\n props;\n\n return (\n <StyledCardHeader\n {...forwardedProps}\n className={classNames(CardHeader.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n >\n {subheader ? (\n <div className={`${CardHeader.className}__subheader`}>\n {subheader}\n </div>\n ) : null}\n {header ? (\n <Heading\n as=\"h2\"\n color=\"black\"\n className={`${CardHeader.className}__header`}\n >\n {icon ? <Icon icon={icon} aria-hidden=\"true\" /> : null}\n {header}\n </Heading>\n ) : null}\n {children}\n </StyledCardHeader>\n );\n }\n);\nCardHeader.className = CLASSNAME;\nCardHeader.defaultProps = DEFAULT_PROPS;\nCardHeader.displayName = COMPONENT_NAME;\n","import styled from 'styled-components';\nimport { baseContainer } from '~/components/shared';\nimport { StyledCardBodyProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledCardBody = styled.div<StyledCardBodyProps>`\n ${baseContainer}\n\n color: var(--redsift-color-neutral-darkgrey);\n font-family: var(--redsift-typography-body2-font-family);\n font-size: var(--redsift-typography-body2-font-size);\n font-weight: var(--redsift-typography-body2-font-weight);\n line-height: var(--redsift-typography-body2-line-height);\n padding: 16px 0px;\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\n\nimport { Comp } from '~/types';\nimport { StyledCardBody } from './styles';\nimport { CardBodyProps } from './types';\n\nconst COMPONENT_NAME = 'CardBody';\nconst CLASSNAME = 'redsift-card-body';\nconst DEFAULT_PROPS: Partial<CardBodyProps> = {};\n\n/**\n * The CardBody component.\n */\nexport const CardBody: Comp<CardBodyProps, HTMLDivElement> = forwardRef(\n (props, ref) => {\n const { children, className, ...forwardedProps } = props;\n\n return (\n <StyledCardBody\n {...forwardedProps}\n className={classNames(CardBody.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n >\n {children}\n </StyledCardBody>\n );\n }\n);\nCardBody.className = CLASSNAME;\nCardBody.defaultProps = DEFAULT_PROPS;\nCardBody.displayName = COMPONENT_NAME;\n","import styled from 'styled-components';\nimport { baseContainer } from '~/components/shared';\nimport { StyledCardActionsProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledCardActions = styled.div<StyledCardActionsProps>`\n ${baseContainer}\n\n margin-top: 8px;\n margin-bottom: 8px;\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\n\nimport { Comp } from '~/types';\nimport { StyledCardActions } from './styles';\nimport { CardActionsProps } from './types';\n\nconst COMPONENT_NAME = 'CardActions';\nconst CLASSNAME = 'redsift-card-actions';\nconst DEFAULT_PROPS: Partial<CardActionsProps> = {\n display: 'flex',\n flexDirection: 'row',\n};\n\n/**\n * The CardActions component.\n */\nexport const CardActions: Comp<CardActionsProps, HTMLDivElement> = forwardRef(\n (props, ref) => {\n const { children, className, ...forwardedProps } = props;\n\n return (\n <StyledCardActions\n {...forwardedProps}\n className={classNames(CardActions.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n >\n {children}\n </StyledCardActions>\n );\n }\n);\nCardActions.className = CLASSNAME;\nCardActions.defaultProps = DEFAULT_PROPS;\nCardActions.displayName = COMPONENT_NAME;\n","import React, {\n forwardRef,\n RefObject,\n useCallback,\n useEffect,\n useState,\n} from 'react';\nimport classNames from 'classnames';\n\nimport { useLocalizedStringFormatter } from '@react-aria/i18n';\nimport intlMessages from './intl';\n\nimport { mdiChevronDown, mdiChevronUp } from '@redsift/icons';\nimport { IconButton } from '~/components/icon-button';\nimport { Comp } from '~/types';\nimport { StyledCard } from './styles';\nimport { CardProps } from './types';\nimport { partitionComponents } from '~/utils/partitionComponents';\nimport { isComponent } from '~/utils/isComponent';\nimport { CardHeader } from '../card-header';\nimport { CardBody } from '../card-body';\nimport { CardActions } from '../card-actions';\n\nconst COMPONENT_NAME = 'Card';\nconst CLASSNAME = 'redsift-card';\nconst DEFAULT_PROPS: Partial<CardProps> = {};\n\n/**\n * The Card component.\n */\nconst BaseCard: Comp<CardProps, HTMLDivElement> = forwardRef((props, ref) => {\n const {\n children,\n className,\n defaultCollapsed,\n isCollapsed: propsIsCollapsed,\n isCollapsible,\n onCollapse,\n ...forwardedProps\n } = props;\n\n const stringFormatter = useLocalizedStringFormatter(intlMessages);\n\n const [isCollapsed, setIsCollapsed] = useState(\n propsIsCollapsed ?? defaultCollapsed\n );\n\n useEffect(() => {\n setIsCollapsed(propsIsCollapsed ?? defaultCollapsed);\n }, [propsIsCollapsed, defaultCollapsed]);\n\n const handleCollapse = useCallback(\n (collapsed: boolean) => {\n if (onCollapse) {\n onCollapse(collapsed);\n }\n setIsCollapsed(collapsed);\n },\n [onCollapse]\n );\n\n const [[header], [body], [actions]] = partitionComponents(\n React.Children.toArray(children),\n [\n isComponent('CardHeader'),\n isComponent('CardBody'),\n isComponent('CardActions'),\n ]\n );\n\n return (\n <StyledCard\n {...forwardedProps}\n className={classNames(BaseCard.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n $isCollapsed={isCollapsed}\n >\n <div className={`${BaseCard.className}__header`}>\n {header}\n\n {isCollapsible ? (\n <IconButton\n aria-label={stringFormatter.format(\n isCollapsed ? 'expand' : 'collapse'\n )}\n className={`${BaseCard.className}-header__icon-button`}\n color=\"question\"\n icon={isCollapsed ? mdiChevronDown : mdiChevronUp}\n onPress={() => handleCollapse(!isCollapsed)}\n />\n ) : null}\n </div>\n\n {body || actions ? (\n <div className={`${BaseCard.className}__content`}>\n {body}\n {actions}\n </div>\n ) : null}\n </StyledCard>\n );\n});\nBaseCard.className = CLASSNAME;\nBaseCard.defaultProps = DEFAULT_PROPS;\nBaseCard.displayName = COMPONENT_NAME;\n\nexport const Card = Object.assign(BaseCard, {\n Header: CardHeader,\n Body: CardBody,\n Actions: CardActions,\n});\n","import { ComponentProps } from 'react';\nimport { ValueOf, StylingProps } from '~/types';\n\n/**\n * Context props.\n */\nexport type CheckboxGroupState = {\n /** Adds a value to the set of selected values. */\n addValue(value: string): void;\n /** Whether the checkbox group is disabled or not. */\n readonly isDisabled: boolean;\n /** Whether the checkbox group is read only or not. */\n readonly isReadOnly: boolean;\n /** Removes a value from the set of selected values. */\n removeValue(value: string): void;\n /** Sets the selected values. */\n setValue(value: string[]): void;\n /** Current selected values. */\n readonly value: readonly string[];\n};\n\n/**\n * Component orientation.\n */\nexport const CheckboxGroupOrientation = {\n horizontal: 'horizontal',\n vertical: 'vertical',\n} as const;\nexport type CheckboxGroupOrientation = ValueOf<typeof CheckboxGroupOrientation>;\n\n/**\n * Component props.\n */\nexport interface CheckboxGroupProps\n extends Omit<ComponentProps<'div'>, 'onChange'>,\n StylingProps {\n /**\n * Default selected values.\n * Used for uncontrolled version.\n */\n defaultValues?: string[];\n /** Description of the checkbox group. */\n description?: string;\n /** Whether the component is disabled or not. */\n isDisabled?: boolean;\n /** Whether the component is invalid or not. */\n isInvalid?: boolean;\n /** Whether the component is read only or not. */\n isReadOnly?: boolean;\n /** Whether the component is required or not. */\n isRequired?: boolean;\n /** Label of the checkbox group. */\n label?: string;\n /** Method to handle component change. */\n onChange?(values: string[]): void;\n /** Method to handle component change. */\n orientation?: CheckboxGroupOrientation;\n /** List of possible values. Useful to select all. */\n possibleValues?: string[];\n /**\n * Currently selected values.\n * Used for controlled version.\n */\n value?: string[];\n}\n\nexport type StyledCheckboxGroupProps = Omit<\n CheckboxGroupProps,\n 'isDisabled' | 'isInvalid' | 'isReadOnly' | 'orientation' | 'isRequired'\n> & {\n $isDisabled: CheckboxGroupProps['isDisabled'];\n $isInvalid: CheckboxGroupProps['isInvalid'];\n $isReadOnly: CheckboxGroupProps['isReadOnly'];\n $orientation: CheckboxGroupProps['orientation'];\n};\n","import React from 'react';\nimport { CheckboxGroupState } from './types';\n\nexport const CheckboxGroupContext =\n React.createContext<CheckboxGroupState | null>(null);\n","import styled from 'styled-components';\nimport { baseStyling } from '~/components/shared';\nimport { CheckboxGroupOrientation, StyledCheckboxGroupProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledCheckboxGroup = styled.div<StyledCheckboxGroupProps>`\n ${baseStyling}\n\n display: flex;\n flex-direction: column;\n\n ${({ $orientation }) =>\n $orientation === CheckboxGroupOrientation.vertical\n ? `\n div.redsift-checkbox-group-boxes {\n display: flex;\n flex-direction: column;\n }\n `\n : `\n div.redsift-checkbox-group-boxes {\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n }\n `}\n\n span.redsift-checkbox-group-label {\n font-family: var(--redsift-typography-body-font-family);\n font-weight: var(--redsift-typography-body-font-weight);\n font-size: var(--redsift-typography-body-font-size);\n line-height: var(--redsift-typography-body-line-height);\n\n color: var(--redsift-color-neutral-black);\n ${({ $isDisabled }) =>\n $isDisabled\n ? `\n color: var(--redsift-color-neutral-midgrey);\n `\n : ''}\n ${({ $isInvalid }) =>\n $isInvalid\n ? `\n color: var(--redsift-color-error-primary);\n `\n : ''}\n }\n\n span.redsift-checkbox-group-description {\n font-family: var(--redsift-typography-helper-font-family);\n font-weight: var(--redsift-typography-helper-font-weight);\n font-size: var(--redsift-typography-helper-font-size);\n line-height: var(--redsift-typography-helper-line-height);\n\n color: var(--redsift-color-neutral-darkgrey);\n ${({ $isDisabled }) =>\n $isDisabled\n ? `\n color: var(--redsift-color-neutral-midgrey);\n `\n : ''}\n ${({ $isInvalid }) =>\n $isInvalid\n ? `\n color: var(--redsift-color-error-primary);\n `\n : ''}\n }\n`;\n","import React, { forwardRef, RefObject, useEffect, useState } from 'react';\nimport classNames from 'classnames';\nimport { ColorPalette, Comp } from '~/types';\nimport { CheckboxGroupOrientation, CheckboxGroupProps } from './types';\nimport { CheckboxGroupContext } from './context';\nimport { StyledCheckboxGroup } from './styles';\n\nconst COMPONENT_NAME = 'CheckboxGroup';\nconst CLASSNAME = 'redsift-checkbox-group';\nconst DEFAULT_PROPS: Partial<CheckboxGroupProps> = {\n color: ColorPalette.default,\n orientation: CheckboxGroupOrientation.vertical,\n};\n\n/**\n * The CheckboxGroup component.\n * Can be used as controlled or uncontrolled.\n */\nexport const CheckboxGroup: Comp<CheckboxGroupProps, HTMLDivElement> =\n forwardRef((props, ref) => {\n const {\n children,\n className,\n defaultValues,\n description,\n isDisabled,\n isInvalid,\n isReadOnly,\n isRequired,\n label,\n onChange,\n orientation,\n possibleValues,\n value,\n ...forwardedProps\n } = props;\n\n const [selectedValues, setValue] = useState<string[]>(\n value || defaultValues || []\n );\n useEffect(() => {\n if (value) {\n state.setValue(value);\n }\n }, [value]);\n\n const state = {\n value: selectedValues,\n isDisabled: isDisabled || false,\n isReadOnly: isReadOnly || false,\n possibleValues: possibleValues,\n setValue(values: string[]) {\n if (isReadOnly || isDisabled) {\n return;\n }\n\n setValue(values);\n },\n addValue(value: string) {\n if (!selectedValues.includes(value)) {\n setValue(selectedValues.concat(value));\n if (onChange) {\n onChange(selectedValues.concat(value));\n }\n }\n },\n removeValue(value: string) {\n if (selectedValues.includes(value)) {\n setValue(\n selectedValues.filter((existingValue) => existingValue !== value)\n );\n if (onChange) {\n onChange(\n selectedValues.filter((existingValue) => existingValue !== value)\n );\n }\n }\n },\n };\n\n return (\n <StyledCheckboxGroup\n {...forwardedProps}\n $isDisabled={isDisabled}\n $isInvalid={isInvalid || (isRequired && selectedValues.length === 0)}\n $isReadOnly={isReadOnly}\n $orientation={orientation}\n aria-disabled={isDisabled}\n className={classNames(CheckboxGroup.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n role=\"group\"\n >\n <span className={`${CheckboxGroup.className}-label`}>\n {label}\n {isRequired ? ' *' : null}\n </span>\n <div className={`${CheckboxGroup.className}-boxes`}>\n <CheckboxGroupContext.Provider value={state}>\n {children}\n </CheckboxGroupContext.Provider>\n </div>\n <span className={`${CheckboxGroup.className}-description`}>\n {description}\n </span>\n </StyledCheckboxGroup>\n );\n });\nCheckboxGroup.className = CLASSNAME;\nCheckboxGroup.defaultProps = DEFAULT_PROPS;\nCheckboxGroup.displayName = COMPONENT_NAME;\n","import styled, { css } from 'styled-components';\nimport { baseStyling } from '~/components/shared';\nimport { StyledCheckboxProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledCheckbox = styled.label<StyledCheckboxProps>`\n position: relative;\n width: fit-content;\n ${baseStyling}\n\n align-items: baseline;\n background: none;\n border: none;\n display: inline-flex;\n\n input {\n height: 100%;\n margin: 0;\n opacity: 0;\n overflow: visible;\n padding: 0;\n position: absolute;\n width: 100%;\n }\n\n span.label {\n ${({ $isDisabled, $isInvalid }) =>\n $isDisabled\n ? css`\n color: var(--redsift-color-neutral-midgrey);\n `\n : $isInvalid\n ? css`\n color: var(--redsift-color-error-primary);\n `\n : css`\n color: var(--redsift-color-neutral-black);\n `}\n\n font-family: var(--redsift-typography-body-font-family);\n font-size: var(--redsift-typography-body-font-size);\n font-weight: var(--redsift-typography-body-font-weight);\n line-height: var(--redsift-typography-body-line-height);\n padding-left: 4px;\n padding-right: 16px;\n position: relative;\n top: -4px;\n\n [dir='rtl'] & {\n padding-left: 16px;\n padding-right: 4px;\n }\n }\n\n .redsift-icon {\n padding: 2px;\n width: 24px;\n\n ${({ $isColored, $isDisabled, $isInvalid, $isFocusVisible }) => css`\n ${$isDisabled\n ? css`\n color: var(--redsift-color-neutral-midgrey);\n `\n : $isInvalid\n ? css`\n color: var(--redsift-color-error-primary);\n `\n : css`\n color: var(\n --redsift-color-${$isColored ? 'default' : 'question'}-primary\n );\n `}\n\n ${$isFocusVisible\n ? css`\n background-color: var(\n --redsift-color-${$isColored ? 'default' : 'question'}-hover\n );\n border-radius: 21px;\n `\n : ''}\n `}\n }\n\n &:hover,\n &:focus-visible {\n outline: none;\n\n ${({ $isColored, $isDisabled }) =>\n !$isDisabled\n ? css`\n .redsift-icon {\n background-color: var(\n --redsift-color-${$isColored ? 'default' : 'question'}-hover\n );\n }\n `\n : ''}\n }\n\n ${({ $isColored, $isFocusVisible }) =>\n $isFocusVisible\n ? css`\n .redsift-icon {\n background-color: var(\n --redsift-color-${$isColored ? 'default' : 'question'}-hover\n );\n }\n `\n : ''}\n`;\n","import React, {\n ComponentProps,\n forwardRef,\n MutableRefObject,\n useCallback,\n useContext,\n useEffect,\n useState,\n} from 'react';\nimport classNames from 'classnames';\nimport { useFocusRing } from '@react-aria/focus';\nimport {\n mdiCheckboxBlankOutline,\n mdiMinusBox,\n mdiCheckboxMarked,\n} from '@redsift/icons';\nimport { Comp } from '~/types';\nimport { Icon } from '~/components/icon';\nimport { CheckboxGroupContext } from '~/components/checkbox-group/context';\nimport { warnIfNoAccessibleLabelFound } from '~/utils/warnIfNoAccessibleLabelFound';\nimport { CheckboxProps } from './types';\nimport { StyledCheckbox } from './styles';\n\nconst COMPONENT_NAME = 'Checkbox';\nconst CLASSNAME = 'redsift-checkbox';\nconst DEFAULT_PROPS: Partial<CheckboxProps> = {\n isColored: true,\n};\n\n/**\n * The Checkbox component.\n * Works both inside a CheckboxGroup or as standalone.\n * Can be used as controlled or uncontrolled.\n */\nexport const Checkbox: Comp<CheckboxProps, HTMLLabelElement> = forwardRef(\n (props, ref) => {\n const groupState = useContext(CheckboxGroupContext);\n\n let {\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledby,\n autoFocus,\n children,\n className,\n defaultSelected,\n inputProps,\n inputRef,\n isColored,\n isControlled,\n isDisabled,\n isIndeterminate,\n isInvalid,\n isReadOnly,\n isRequired,\n isSelected: propsIsSelected,\n name,\n onChange,\n value,\n ...forwardedProps\n } = props;\n\n const { isFocusVisible, focusProps } = useFocusRing({ autoFocus });\n isDisabled = isDisabled ?? groupState?.isDisabled;\n isReadOnly = isReadOnly ?? groupState?.isReadOnly;\n\n const [isSelected, setSelected] = useState(\n propsIsSelected ??\n defaultSelected ??\n groupState?.value.includes(value as string)\n );\n\n useEffect(() => {\n setSelected(propsIsSelected ?? defaultSelected);\n }, [propsIsSelected, defaultSelected]);\n\n useEffect(() => {\n if (groupState) {\n setSelected(groupState.value.includes(value as string));\n }\n }, [groupState?.value]);\n\n warnIfNoAccessibleLabelFound(props as ComponentProps<'label'>, [children]);\n\n if (groupState && !isControlled) {\n if (propsIsSelected != null) {\n console.warn(\n 'isSelected is unsupported on individual <Checkbox> elements within a <CheckboxGroup> unless the <Checkbox> is controlled. Please apply this prop to the group instead or pass isControlled to the component.'\n );\n }\n if (defaultSelected != null) {\n console.warn(\n 'defaultSelected is unsupported on individual <Checkbox> elements within a <CheckboxGroup> unless the <Checkbox> is controlled. Please apply this prop to the group instead or pass isControlled to the component.'\n );\n }\n if (props.value == null) {\n console.warn(\n 'A <Checkbox> element within a <CheckboxGroup> requires a `value` property unless the <Checkbox> is controlled.'\n );\n }\n }\n\n const handleChange = useCallback(\n (event: React.ChangeEvent<HTMLInputElement>) => {\n if (isDisabled || isReadOnly) {\n return;\n }\n\n if (groupState) {\n if (!groupState.value.includes(value as string)) {\n groupState.addValue(value as string);\n } else {\n groupState.removeValue(value as string);\n }\n }\n\n if (onChange) {\n onChange(!isSelected, value, name, event, groupState!);\n }\n setSelected(event.target.checked);\n },\n [onChange, groupState]\n );\n\n return (\n <StyledCheckbox\n {...forwardedProps}\n $isColored={isColored}\n $isDisabled={isDisabled}\n $isFocusVisible={isFocusVisible}\n $isInvalid={isInvalid || (isRequired && !isSelected)}\n $isRequired={isRequired}\n $isSelected={isSelected}\n className={classNames(Checkbox.className, className)}\n ref={ref as MutableRefObject<HTMLLabelElement>}\n >\n <input\n {...inputProps}\n {...focusProps}\n aria-checked={\n isSelected || (isControlled && propsIsSelected)\n ? 'true'\n : isIndeterminate\n ? 'mixed'\n : 'false'\n }\n aria-disabled={isDisabled}\n aria-invalid={isInvalid || (isRequired && !isSelected)}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledby}\n aria-readonly={isReadOnly}\n aria-required={isRequired}\n checked={isSelected ? true : false}\n disabled={isDisabled}\n name={name}\n onChange={handleChange}\n ref={inputRef as MutableRefObject<HTMLInputElement>}\n type=\"checkbox\"\n value={value}\n />\n {isSelected || (isControlled && propsIsSelected) ? (\n <Icon icon={mdiCheckboxMarked} />\n ) : isIndeterminate ? (\n <Icon icon={mdiMinusBox} />\n ) : (\n <Icon icon={mdiCheckboxBlankOutline} />\n )}\n {children ? <span className=\"label\">{children}</span> : null}\n </StyledCheckbox>\n );\n }\n);\nCheckbox.className = CLASSNAME;\nCheckbox.defaultProps = DEFAULT_PROPS;\nCheckbox.displayName = COMPONENT_NAME;\n","import React from 'react';\nimport { ConditionalWrapperProps } from './types';\n\nexport const ConditionalWrapper: React.FC<ConditionalWrapperProps> = ({\n children,\n condition,\n wrapper,\n}) => (condition ? wrapper(children) : <>{children}</>);\n","import enUS from './en-US.json';\nimport frFR from './fr-FR.json';\n\nexport default {\n 'en-US': enUS,\n 'fr-FR': frFR,\n};\n","import { ComponentProps } from 'react';\nimport {\n ColorPalette,\n ProductColorPalette,\n StylingProps,\n ValueOf,\n} from '~/types';\n\n/**\n * Component variant.\n */\nexport const ShieldVariant = {\n success: 'success',\n successLocked: 'successLocked',\n successUnlocked: 'successUnlocked',\n fail: 'fail',\n failLocked: 'failLocked',\n failUnlocked: 'failUnlocked',\n warning: 'warning',\n warningLocked: 'warningLocked',\n warningUnlocked: 'warningUnlocked',\n ignored: 'ignored',\n noData: 'noData',\n question: 'question',\n email: 'email',\n} as const;\nexport type ShieldVariant = ValueOf<typeof ShieldVariant>;\n\n/**\n * Component props.\n */\nexport interface ShieldProps extends ComponentProps<'div'>, StylingProps {\n /** Indicates whether the element is exposed to an accessibility API. */\n 'aria-hidden'?: boolean | 'false' | 'true';\n /** A screen reader only label for the Icon. */\n 'aria-label'?: string;\n /** Additional properties to forward to the SVG tag. */\n svgProps?: ComponentProps<'svg'>;\n /** Whether the shield has an outline or not. */\n isOutlined?: boolean;\n /** Whether the shield has its colors reversed or not. */\n isReversed?: boolean;\n /** Shield variant. */\n variant?: ShieldVariant;\n}\n\nexport type StyledShieldProps = Omit<ShieldProps, 'color'> & {\n $color?: ColorPalette | ProductColorPalette | string;\n $isOutlined: ShieldProps['isOutlined'];\n $isReversed: ShieldProps['isReversed'];\n $variant: ShieldProps['variant'];\n};\n","import styled, { css } from 'styled-components';\nimport { baseStyling } from '~/components/shared';\nimport { StyledShieldProps } from './types';\n\nexport const StyledShield = styled.div<StyledShieldProps>`\n height: 24px;\n width: 20px;\n ${baseStyling}\n\n box-sizing: content-box;\n\n ${({ $color, $isOutlined, $isReversed }) => {\n if ($isReversed && $isOutlined) {\n return css`\n & .shield {\n fill: var(--redsift-color-${$color}-primary);\n stroke: #ffffff;\n stroke-width: 2;\n }\n & .icon {\n fill-rule: evenodd;\n clip-rule: evenodd;\n fill: #ffffff;\n }\n `;\n } else if ($isOutlined) {\n return css`\n & .shield {\n fill: #ffffff;\n stroke: var(--redsift-color-${$color}-primary);\n stroke-width: 2;\n }\n & .icon {\n fill-rule: evenodd;\n clip-rule: evenodd;\n fill: var(--redsift-color-${$color}-primary);\n }\n `;\n } else if ($isReversed) {\n return css`\n & .shield {\n fill: #ffffff;\n }\n & .icon {\n fill-rule: evenodd;\n clip-rule: evenodd;\n fill: var(--redsift-color-${$color}-primary);\n }\n `;\n } else {\n return css`\n & .shield {\n fill: var(--redsift-color-${$color}-primary);\n }\n & .icon {\n fill-rule: evenodd;\n clip-rule: evenodd;\n fill: #ffffff;\n }\n `;\n }\n }}\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\nimport { ColorPalette, Comp } from '~/types';\n\nimport { ShieldProps, ShieldVariant } from './types';\nimport { StyledShield } from './styles';\n\nconst COMPONENT_NAME = 'Shield';\nconst CLASSNAME = 'redsift-shield';\nconst DEFAULT_PROPS: Partial<ShieldProps> = {\n variant: ShieldVariant.success,\n};\n\nconst getVariant = (variant: ShieldVariant) => {\n switch (variant) {\n case ShieldVariant.email:\n return {\n color: ColorPalette.info,\n icon: 'M14.7,6.3H5.3c-0.6,0-1.2,0.5-1.2,1.2l0,7c0,0.6,0.5,1.2,1.2,1.2h9.3c0.6,0,1.2-0.5,1.2-1.2v-7 C15.8,6.9,15.3,6.3,14.7,6.3z M14.7,14.5H5.3V8.7l4.7,2.9l4.7-2.9V14.5z M10,10.4L5.3,7.5h9.3L10,10.4z',\n };\n case ShieldVariant.fail:\n return {\n color: ColorPalette.error,\n icon: 'M9,15V5h2v10H9z M9,19v-2h2v2H9z',\n };\n case ShieldVariant.failLocked:\n return {\n color: ColorPalette.error,\n icon: 'M13.5,9.7h-0.6V8.5c0-1.6-1.3-2.9-2.9-2.9S7.1,6.9,7.1,8.5v1.2H6.5c-0.6,0-1.2,0.5-1.2,1.2v5.8 c0,0.6,0.5,1.2,1.2,1.2h7c0.6,0,1.2-0.5,1.2-1.2v-5.8C14.7,10.2,14.1,9.7,13.5,9.7z M10,14.9c-0.6,0-1.2-0.5-1.2-1.2 s0.5-1.2,1.2-1.2c0.6,0,1.2,0.5,1.2,1.2S10.6,14.9,10,14.9z M11.8,9.7H8.2V8.5c0-1,0.8-1.8,1.8-1.8s1.8,0.8,1.8,1.8V9.7z',\n };\n case ShieldVariant.failUnlocked:\n return {\n color: ColorPalette.error,\n icon: 'M10,14.9c0.6,0,1.2-0.5,1.2-1.2s-0.5-1.2-1.2-1.2c-0.6,0-1.2,0.5-1.2,1.2S9.4,14.9,10,14.9z M13.5,9.7h-0.6V8.5 c0-1.6-1.3-2.9-2.9-2.9S7.1,6.9,7.1,8.5h1.1c0-1,0.8-1.8,1.8-1.8s1.8,0.8,1.8,1.8v1.2H6.5c-0.6,0-1.2,0.5-1.2,1.2v5.8 c0,0.6,0.5,1.2,1.2,1.2h7c0.6,0,1.2-0.5,1.2-1.2v-5.8C14.7,10.2,14.1,9.7,13.5,9.7z M13.5,16.7h-7v-5.8h7V16.7z',\n };\n case ShieldVariant.ignored:\n return {\n color: ColorPalette['no-data'],\n icon: 'M10,6.2c-3.2,0-5.8,2.6-5.8,5.8c0,3.2,2.6,5.8,5.8,5.8s5.8-2.6,5.8-5.8C15.8,8.8,13.2,6.2,10,6.2z M5.3,12 c0-2.6,2.1-4.7,4.7-4.7c1.1,0,2.1,0.4,2.9,1l-6.5,6.5C5.7,14.1,5.3,13.1,5.3,12z M10,16.7c-1.1,0-2.1-0.4-2.9-1l6.5-6.5 c0.6,0.8,1,1.8,1,2.9C14.7,14.6,12.6,16.7,10,16.7z',\n };\n case ShieldVariant.noData:\n return {\n color: ColorPalette['no-data'],\n icon: 'M16,13H4v-2h12V13z',\n };\n case ShieldVariant.question:\n return {\n color: ColorPalette.question,\n icon: 'M9,17h2v-2H9V17z M10,5C7.8,5,6,6.8,6,9h2c0-1.1,0.9-2,2-2s2,0.9,2,2c0,2-3,1.8-3,5h2c0-2.2,3-2.5,3-5 C14,6.8,12.2,5,10,5z',\n };\n case ShieldVariant.success:\n return {\n color: ColorPalette.success,\n icon: 'M8,16.6l8.5-8.5l-1.4-1.4L8,13.7l-2.8-2.8l-1.4,1.4L8,16.6z',\n };\n case ShieldVariant.successLocked:\n return {\n color: ColorPalette.success,\n icon: 'M13.5,9.7h-0.6V8.5c0-1.6-1.3-2.9-2.9-2.9S7.1,6.9,7.1,8.5v1.2H6.5c-0.6,0-1.2,0.5-1.2,1.2v5.8 c0,0.6,0.5,1.2,1.2,1.2h7c0.6,0,1.2-0.5,1.2-1.2v-5.8C14.7,10.2,14.1,9.7,13.5,9.7z M10,14.9c-0.6,0-1.2-0.5-1.2-1.2 s0.5-1.2,1.2-1.2c0.6,0,1.2,0.5,1.2,1.2S10.6,14.9,10,14.9z M11.8,9.7H8.2V8.5c0-1,0.8-1.8,1.8-1.8s1.8,0.8,1.8,1.8V9.7z',\n };\n case ShieldVariant.successUnlocked:\n return {\n color: ColorPalette.success,\n icon: 'M10,14.9c0.6,0,1.2-0.5,1.2-1.2s-0.5-1.2-1.2-1.2c-0.6,0-1.2,0.5-1.2,1.2S9.4,14.9,10,14.9z M13.5,9.7h-0.6V8.5 c0-1.6-1.3-2.9-2.9-2.9S7.1,6.9,7.1,8.5h1.1c0-1,0.8-1.8,1.8-1.8s1.8,0.8,1.8,1.8v1.2H6.5c-0.6,0-1.2,0.5-1.2,1.2v5.8 c0,0.6,0.5,1.2,1.2,1.2h7c0.6,0,1.2-0.5,1.2-1.2v-5.8C14.7,10.2,14.1,9.7,13.5,9.7z M13.5,16.7h-7v-5.8h7V16.7z',\n };\n case ShieldVariant.warning:\n return {\n color: ColorPalette.warning,\n icon: 'M10,5c0.7,0,1.4,0.4,1.7,1l4,7c0.4,0.6,0.4,1.4,0,2c-0.4,0.6-1,1-1.7,1H6c-0.7,0-1.4-0.4-1.7-1 c-0.4-0.6-0.4-1.4,0-2l4-7C8.6,5.4,9.3,5,10,5z M10,7l-4,7h8L10,7z',\n };\n case ShieldVariant.warningLocked:\n return {\n color: ColorPalette.warning,\n icon: 'M13.5,9.7h-0.6V8.5c0-1.6-1.3-2.9-2.9-2.9S7.1,6.9,7.1,8.5v1.2H6.5c-0.6,0-1.2,0.5-1.2,1.2v5.8 c0,0.6,0.5,1.2,1.2,1.2h7c0.6,0,1.2-0.5,1.2-1.2v-5.8C14.7,10.2,14.1,9.7,13.5,9.7z M10,14.9c-0.6,0-1.2-0.5-1.2-1.2 s0.5-1.2,1.2-1.2c0.6,0,1.2,0.5,1.2,1.2S10.6,14.9,10,14.9z M11.8,9.7H8.2V8.5c0-1,0.8-1.8,1.8-1.8s1.8,0.8,1.8,1.8V9.7z',\n };\n case ShieldVariant.warningUnlocked:\n return {\n color: ColorPalette.warning,\n icon: 'M10,14.9c0.6,0,1.2-0.5,1.2-1.2s-0.5-1.2-1.2-1.2c-0.6,0-1.2,0.5-1.2,1.2S9.4,14.9,10,14.9z M13.5,9.7h-0.6V8.5 c0-1.6-1.3-2.9-2.9-2.9S7.1,6.9,7.1,8.5h1.1c0-1,0.8-1.8,1.8-1.8s1.8,0.8,1.8,1.8v1.2H6.5c-0.6,0-1.2,0.5-1.2,1.2v5.8 c0,0.6,0.5,1.2,1.2,1.2h7c0.6,0,1.2-0.5,1.2-1.2v-5.8C14.7,10.2,14.1,9.7,13.5,9.7z M13.5,16.7h-7v-5.8h7V16.7z',\n };\n }\n};\n\n/**\n * The Shield component.\n */\nexport const Shield: Comp<ShieldProps, HTMLDivElement> = forwardRef(\n (props, ref) => {\n const {\n 'aria-hidden': ariaHidden,\n 'aria-label': ariaLabel,\n className,\n svgProps,\n isOutlined,\n isReversed,\n variant,\n ...forwardedProps\n } = props;\n\n const { color, icon } = getVariant(variant!);\n\n return (\n <StyledShield\n {...forwardedProps}\n aria-hidden={ariaLabel ? (ariaHidden ? ariaHidden : undefined) : true}\n aria-label={ariaLabel}\n className={classNames(Shield.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n $color={color}\n $isOutlined={isOutlined}\n $isReversed={isReversed}\n $variant={variant}\n >\n <svg\n aria-hidden={ariaLabel ? (ariaHidden ? ariaHidden : undefined) : true}\n aria-label={ariaLabel}\n focusable=\"false\"\n preserveAspectRatio=\"xMidYMid meet\"\n role=\"img\"\n style={{ verticalAlign: '-0.125em' }}\n viewBox=\"0 0 20 24\"\n width=\"20\"\n height=\"24\"\n {...svgProps}\n >\n <path\n d={\n isOutlined\n ? 'M1,10.9V5l9-3.9L19,5v5.9c0,5.5-3.9,10.7-9,12.1C4.9,21.6,1,16.4,1,10.9z'\n : 'M10,0L0,4.4v6.5C0,17,4.3,22.6,10,24c5.7-1.4,10-7,10-13.1V4.4L10,0z'\n }\n className=\"shield\"\n />\n <path d={icon} className=\"icon\" />\n </svg>\n </StyledShield>\n );\n }\n);\nShield.className = CLASSNAME;\nShield.defaultProps = DEFAULT_PROPS;\nShield.displayName = COMPONENT_NAME;\n","import enUS from './en-US.json';\nimport frFR from './fr-FR.json';\n\nexport default {\n 'en-US': enUS,\n 'fr-FR': frFR,\n};\n","import styled from 'styled-components';\nimport { StyledDetailedCardCollapsibleSectionItemsProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledDetailedCardCollapsibleSectionItems = styled.div<StyledDetailedCardCollapsibleSectionItemsProps>`\n background-color: var(--redsift-color-neutral-xlightgrey);\n margin: 8px -16px;\n padding: 8px 16px;\n\n .redsift-detailed-card-collapsible-section-items__caption {\n color: var(--redsift-color-neutral-black);\n display: flex;\n font-family: var(--redsift-typography-font-family-raleway);\n font-size: 12px;\n font-weight: 300;\n justify-content: flex-end;\n line-height: 14px;\n margin: 8px 0px;\n }\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\n\nimport { Comp } from '~/types';\nimport { DetailedCardCollapsibleSectionItemsProps } from './types';\nimport { StyledDetailedCardCollapsibleSectionItems } from './styles';\n\nconst COMPONENT_NAME = 'DetailedCardCollapsibleSectionItems';\nconst CLASSNAME = 'redsift-detailed-card-collapsible-section-items';\nconst DEFAULT_PROPS: Partial<DetailedCardCollapsibleSectionItemsProps> = {};\n\n/**\n * The DetailedCardCollapsibleSectionItems Section component.\n */\nexport const DetailedCardCollapsibleSectionItems: Comp<\n DetailedCardCollapsibleSectionItemsProps,\n HTMLDivElement\n> = forwardRef((props, ref) => {\n const { caption, children, className, ...forwardedProps } = props;\n\n return (\n <StyledDetailedCardCollapsibleSectionItems\n {...forwardedProps}\n className={classNames(\n DetailedCardCollapsibleSectionItems.className,\n className\n )}\n ref={ref as RefObject<HTMLDivElement>}\n >\n {children}\n {caption ? (\n <div\n className={`${DetailedCardCollapsibleSectionItems.className}__caption`}\n >\n {caption}\n </div>\n ) : null}\n </StyledDetailedCardCollapsibleSectionItems>\n );\n});\nDetailedCardCollapsibleSectionItems.className = CLASSNAME;\nDetailedCardCollapsibleSectionItems.defaultProps = DEFAULT_PROPS;\nDetailedCardCollapsibleSectionItems.displayName = COMPONENT_NAME;\n","import styled from 'styled-components';\nimport { StyledDetailedCardSectionProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledDetailedCardSection = styled.div<StyledDetailedCardSectionProps>`\n margin: 8px 0;\n\n .redsift-detailed-card-section__header {\n border-bottom: 1px solid var(--redsift-color-neutral-midgrey);\n margin-bottom: 8px;\n }\n\n .redsift-detailed-card-section-header__title {\n color: var(--redsift-color-neutral-black);\n font-family: var(--redsift-typography-font-family-raleway);\n font-size: 18px;\n font-weight: 700;\n line-height: 22px;\n padding: 6px 0px;\n }\n\n .redsift-detailed-card-section-header__collapse-button {\n color: var(--redsift-color-neutral-black);\n }\n\n .redsift-detailed-card-collapsible-section-items {\n visibility: ${({ $isCollapsed }) => (!$isCollapsed ? 'visible' : 'hidden')};\n overflow: ${({ $isCollapsed }) => (!$isCollapsed ? 'visible' : 'hidden')};\n height: ${({ $isCollapsed }) => (!$isCollapsed ? 'auto' : '0px')};\n margin: ${({ $isCollapsed }) => (!$isCollapsed ? '8px -16px' : 'unset')};\n padding: ${({ $isCollapsed }) => (!$isCollapsed ? '8px 16px' : 'unset')};\n }\n`;\n","import React, { forwardRef, ReactNode, RefObject, useState } from 'react';\nimport classNames from 'classnames';\n\nimport { useLocalizedStringFormatter } from '@react-aria/i18n';\nimport intlMessages from './intl';\n\nimport { mdiChevronDown, mdiChevronUp } from '@redsift/icons';\nimport { Comp } from '~/types';\nimport { Flexbox } from '~/components/flexbox';\nimport { IconButton } from '~/components/icon-button';\nimport { DetailedCardSectionProps } from './types';\nimport { isComponent } from '~/utils/isComponent';\nimport { DetailedCardCollapsibleSectionItems } from '~/components/detailed-card-collapsible-section-items';\nimport { StyledDetailedCardSection } from './styles';\n\nconst COMPONENT_NAME = 'DetailedCardSection';\nconst CLASSNAME = 'redsift-detailed-card-section';\nconst DEFAULT_PROPS: Partial<DetailedCardSectionProps> = {\n isCollapsible: true,\n};\n\nconst hasCollapsibleChildren = (children: ReactNode): boolean => {\n let hasCollapsible = false;\n\n React.Children.map(children, (child) => {\n if (isComponent(DetailedCardCollapsibleSectionItems)(child)) {\n hasCollapsible = true;\n }\n });\n\n return hasCollapsible;\n};\n\n/**\n * The DetailedCardSection component.\n */\nexport const DetailedCardSection: Comp<\n DetailedCardSectionProps,\n HTMLDivElement\n> = forwardRef((props, ref) => {\n const {\n children,\n className,\n header,\n isCollapsed: propsIsCollapsed,\n isCollapsible: propsIsCollapsible,\n ...forwardedProps\n } = props;\n\n const stringFormatter = useLocalizedStringFormatter(intlMessages);\n\n const isCollapsible = propsIsCollapsible && hasCollapsibleChildren(children);\n\n const [isCollapsed, setIsCollapsed] = useState<boolean>(\n Boolean(propsIsCollapsed)\n );\n\n return (\n <StyledDetailedCardSection\n {...forwardedProps}\n className={classNames(DetailedCardSection.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n $isCollapsed={isCollapsed}\n >\n <Flexbox\n justifyContent=\"space-between\"\n className={`${DetailedCardSection.className}__header`}\n >\n {header ? (\n <div className={`${DetailedCardSection.className}-header__title`}>\n {header}\n </div>\n ) : null}\n {isCollapsible ? (\n <IconButton\n aria-label={stringFormatter.format(\n isCollapsed ? 'expand' : 'collapse'\n )}\n className={`${DetailedCardSection.className}-header__collapse-button`}\n color=\"question\"\n icon={isCollapsed ? mdiChevronDown : mdiChevronUp}\n onPress={() => {\n setIsCollapsed((isCollapsed) => !isCollapsed);\n }}\n />\n ) : null}\n </Flexbox>\n {children}\n </StyledDetailedCardSection>\n );\n});\nDetailedCardSection.className = CLASSNAME;\nDetailedCardSection.defaultProps = DEFAULT_PROPS;\nDetailedCardSection.displayName = COMPONENT_NAME;\n","import styled, { css } from 'styled-components';\nimport { baseStyling } from '~/components/shared';\nimport { StyledDetailedCardProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledDetailedCard = styled.div<StyledDetailedCardProps>`\n ${baseStyling}\n\n background-color: var(--redsift-color-neutral-white);\n box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.5);\n padding: 16px;\n\n .redsift-detailed-card__banner {\n align-items: center;\n background-color: ${({ $color }) =>\n css`var(--redsift-color-${$color}-primary)`};\n display: flex;\n height: 80px;\n justify-content: center;\n margin: -16px -16px 16px -16px;\n width: calc(100% + 32px);\n }\n\n .redsift-detailed-card__collapse-buttons {\n width: 100%;\n }\n`;\n","import styled from 'styled-components';\nimport { StyledDetailedCardHeaderProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledDetailedCardHeader = styled.div<StyledDetailedCardHeaderProps>`\n margin: 8px 0;\n\n .redsift-detailed-card-header__header {\n font-family: var(--redsift-typography-font-family-raleway);\n font-size: 32px;\n font-weight: 500;\n line-height: 32px;\n margin-bottom: 16px;\n }\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\n\nimport { Comp } from '~/types';\nimport { Heading } from '~/components/heading';\nimport { StyledDetailedCardHeader } from './styles';\nimport { DetailedCardHeaderProps } from './types';\n\nconst COMPONENT_NAME = 'DetailedCardHeader';\nconst CLASSNAME = 'redsift-detailed-card-header';\nconst DEFAULT_PROPS: Partial<DetailedCardHeaderProps> = {};\n\n/**\n * The DetailedCardHeader component.\n */\nexport const DetailedCardHeader: Comp<DetailedCardHeaderProps, HTMLDivElement> =\n forwardRef((props, ref) => {\n const { children, className, header, ...forwardedProps } = props;\n\n return (\n <StyledDetailedCardHeader\n {...forwardedProps}\n className={classNames(DetailedCardHeader.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n >\n {header ? (\n <Heading\n as=\"h2\"\n className={`${DetailedCardHeader.className}__header`}\n >\n {header}\n </Heading>\n ) : null}\n\n {children}\n </StyledDetailedCardHeader>\n );\n });\nDetailedCardHeader.className = CLASSNAME;\nDetailedCardHeader.defaultProps = DEFAULT_PROPS;\nDetailedCardHeader.displayName = COMPONENT_NAME;\n","import styled, { css } from 'styled-components';\nimport { baseStyling } from '~/components/shared';\nimport { StyledPillProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledPill = styled.div<StyledPillProps>`\n width: fit-content;\n ${baseStyling}\n\n padding: 0 6.5px;\n text-align: center;\n word-break: ${({ $autoBreak }) => ($autoBreak ? 'break-word' : 'normal')};\n\n ${({ $color }) => css`\n ${$color === 'black'\n ? 'background-color: var(--redsift-color-neutral-black);'\n : $color === 'white'\n ? 'background-color: var(--redsift-color-neutral-white);'\n : $color === 'error'\n ? 'background-color: var(--redsift-data-viz-color-red-default);'\n : $color === 'warning'\n ? 'background-color: var(--redsift-data-viz-color-orange-default);'\n : $color === 'success'\n ? 'background-color: var(--redsift-data-viz-color-green-default);'\n : `background-color: var(--redsift-data-viz-color-${$color}-default);`}\n\n &,\n .redsift-icon {\n color: var(\n --redsift-color-neutral-${$color === 'black' ? 'white' : 'black'}\n );\n }\n `}}\n\n &,\n .redsift-icon {\n font-family: var(--redsift-typography-pill-font-family);\n font-size: var(--redsift-typography-pill-font-size);\n font-weight: var(--redsift-typography-pill-font-weight);\n line-height: var(--redsift-typography-pill-line-height);\n }\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\nimport { Comp, DataVizColorPalette } from '~/types';\nimport { StyledPill } from './styles';\nimport { PillProps } from './types';\n\nconst COMPONENT_NAME = 'Pill';\nconst CLASSNAME = 'redsift-badge';\nconst DEFAULT_PROPS: Partial<PillProps> = {\n color: DataVizColorPalette.blue,\n};\n\n/**\n * The Pill component.\n */\nexport const Pill: Comp<PillProps, HTMLDivElement> = forwardRef(\n (props, ref) => {\n const { autoBreak, children, className, color, ...forwardedProps } = props;\n\n return (\n <StyledPill\n {...forwardedProps}\n $autoBreak={autoBreak}\n $color={color}\n className={classNames(Pill.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n >\n {children}\n </StyledPill>\n );\n }\n);\nPill.className = CLASSNAME;\nPill.defaultProps = DEFAULT_PROPS;\nPill.displayName = COMPONENT_NAME;\n","import styled from 'styled-components';\nimport { StyledDetailedCardSectionItemProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledDetailedCardSectionItem = styled.div<StyledDetailedCardSectionItemProps>`\n padding: 8px 0;\n\n .redsift-detailed-card-section-item-header__shield {\n align-items: center;\n display: flex;\n height: 28px;\n justify-content: center;\n padding: 0 4px;\n }\n\n .redsift-detailed-card-section-item-header__icon {\n height: 28px;\n }\n\n .redsift-detailed-card-section-item-header__pill {\n display: inline-block;\n margin-right: 8px;\n }\n\n .redsift-detailed-card-section-item-header__description {\n line-height: 28px;\n }\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\n\nimport { Comp } from '~/types';\nimport { Flexbox } from '~/components/flexbox';\nimport { Shield } from '~/components/shield';\nimport { Icon } from '~/components/icon';\nimport { Pill } from '~/components/pill';\nimport { DetailedCardSectionItemProps } from './types';\nimport { StyledDetailedCardSectionItem } from './styles';\n\nconst COMPONENT_NAME = 'DetailedCardSectionItem';\nconst CLASSNAME = 'redsift-detailed-card-section-item';\nconst DEFAULT_PROPS: Partial<DetailedCardSectionItemProps> = {};\n\n/**\n * The DetailedCardSectionItems component.\n */\nexport const DetailedCardSectionItem: Comp<\n DetailedCardSectionItemProps,\n HTMLDivElement\n> = forwardRef((props, ref) => {\n const {\n children,\n className,\n description,\n icon,\n iconProps,\n pill,\n pillProps,\n shield,\n ...forwardedProps\n } = props;\n\n return (\n <StyledDetailedCardSectionItem\n {...forwardedProps}\n className={classNames(DetailedCardSectionItem.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n >\n <Flexbox\n alignItems=\"flex-start\"\n className={`${DetailedCardSectionItem.className}__header`}\n >\n {shield ? (\n <Shield\n variant={shield}\n className={`${DetailedCardSectionItem.className}-header__shield`}\n />\n ) : icon ? (\n <div className={`${DetailedCardSectionItem.className}-header__icon`}>\n <Icon icon={icon} {...iconProps} size=\"large\" />\n </div>\n ) : null}\n {description || pill ? (\n <div\n className={`${DetailedCardSectionItem.className}-header__description`}\n >\n {pill && (\n <Pill\n className={`${DetailedCardSectionItem.className}-header__pill`}\n {...pillProps}\n >\n {pill}\n </Pill>\n )}\n {description}\n </div>\n ) : null}\n </Flexbox>\n {children}\n </StyledDetailedCardSectionItem>\n );\n});\nDetailedCardSectionItem.className = CLASSNAME;\nDetailedCardSectionItem.defaultProps = DEFAULT_PROPS;\nDetailedCardSectionItem.displayName = COMPONENT_NAME;\n","import React, {\n forwardRef,\n ReactElement,\n ReactNode,\n RefObject,\n useCallback,\n useEffect,\n useState,\n} from 'react';\nimport classNames from 'classnames';\n\nimport { useLocalizedStringFormatter } from '@react-aria/i18n';\nimport intlMessages from './intl';\n\nimport { mdiKeyboardCaps, mdiPageLast } from '@redsift/icons';\nimport { Comp } from '~/types';\nimport { Icon } from '~/components/icon';\nimport { Flexbox } from '~/components/flexbox';\nimport { IconButton } from '~/components/icon-button';\nimport { Shield } from '~/components/shield';\nimport {\n DetailedCardSection,\n DetailedCardSectionProps,\n} from '~/components/detailed-card-section';\nimport { StyledDetailedCard } from './styles';\nimport { DetailedCardProps } from './types';\nimport { partitionComponents, isComponent } from '~/utils';\nimport { DetailedCardCollapsibleSectionItems } from '~/components/detailed-card-collapsible-section-items';\nimport { DetailedCardHeader } from '../detailed-card-header';\nimport { DetailedCardSectionItem } from '../detailed-card-section-item';\n\nconst COMPONENT_NAME = 'DetailedCard';\nconst CLASSNAME = 'redsift-detailed-card';\nconst DEFAULT_PROPS: Partial<DetailedCardProps> = {\n isCollapsible: true,\n width: '400px',\n};\n\nconst hasCollapsibleChildren = (children: ReactNode): boolean => {\n let hasCollapsible = false;\n\n const childrenArray = React.Children.toArray(children);\n for (const child of childrenArray) {\n if (isComponent(DetailedCardSection)(child)) {\n let hasCollapsibleItems = Boolean(\n (child as DetailedCardSectionProps).isCollapsible\n );\n React.Children.forEach(child.props.children, (sectionChild) => {\n if (isComponent(DetailedCardCollapsibleSectionItems)(sectionChild)) {\n hasCollapsibleItems = true;\n }\n });\n hasCollapsible = hasCollapsibleItems;\n } else if (isComponent(DetailedCardCollapsibleSectionItems)(child)) {\n hasCollapsible = true;\n }\n\n if (hasCollapsible) {\n break;\n }\n }\n\n return hasCollapsible;\n};\n\n/**\n * The DetailedCard component.\n */\nconst BaseDetailedCard: Comp<DetailedCardProps, HTMLDivElement> = forwardRef(\n (props, ref) => {\n const {\n areAllCollapsed: propsAreAllCollapsed,\n children,\n className,\n color,\n defaultAllCollapsed,\n icon,\n isCollapsible: propsIsCollapsible,\n onCollapseAll,\n shield,\n ...forwardedProps\n } = props;\n\n const stringFormatter = useLocalizedStringFormatter(intlMessages);\n\n const isCollapsible =\n propsIsCollapsible && hasCollapsibleChildren(children);\n\n const [allCollapsed, setAllCollapsed] = useState({\n state: propsAreAllCollapsed ?? defaultAllCollapsed,\n });\n\n useEffect(() => {\n setAllCollapsed({\n state: propsAreAllCollapsed ?? defaultAllCollapsed,\n });\n }, [propsAreAllCollapsed, defaultAllCollapsed]);\n\n const handleCollapse = useCallback(\n (allCollapsed: boolean) => {\n if (onCollapseAll) {\n onCollapseAll(allCollapsed);\n }\n setAllCollapsed({\n state: allCollapsed,\n });\n },\n [onCollapseAll]\n );\n\n const [[header], content] = partitionComponents(\n React.Children.toArray(children),\n [isComponent('DetailedCardHeader')]\n );\n\n return (\n <StyledDetailedCard\n {...forwardedProps}\n className={classNames(BaseDetailedCard.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n $color={color}\n >\n {color ? (\n <div className={`${BaseDetailedCard.className}__banner`}>\n {shield ? (\n <Shield\n variant={shield}\n isOutlined\n isReversed\n svgProps={{ width: '40px', height: '40px' }}\n style={{ width: '40px', height: '40px' }}\n />\n ) : icon ? (\n <Icon icon={icon} color=\"white\" size=\"xlarge\" />\n ) : null}\n </div>\n ) : null}\n {header ? (\n <div className={`${BaseDetailedCard.className}__header`}>\n {header}\n </div>\n ) : null}\n {isCollapsible ? (\n <Flexbox\n justifyContent=\"flex-end\"\n className={`${BaseDetailedCard.className}__collapse-buttons`}\n >\n <IconButton\n aria-label={stringFormatter.format('collapse-all')}\n icon={mdiPageLast}\n onPress={() => handleCollapse(true)}\n style={{ transform: 'rotate(-90deg)' }}\n color=\"question\"\n />\n <IconButton\n aria-label={stringFormatter.format('expand-all')}\n icon={mdiKeyboardCaps}\n onPress={() => handleCollapse(false)}\n style={{ transform: 'rotate(180deg)' }}\n color=\"question\"\n />\n </Flexbox>\n ) : null}\n\n {React.Children.map(content, (child) => {\n if (isComponent(DetailedCardSection)(child)) {\n return React.cloneElement(child as ReactElement, {\n isCollapsed: allCollapsed.state,\n key: Math.random(),\n });\n }\n return child;\n })}\n </StyledDetailedCard>\n );\n }\n);\nBaseDetailedCard.className = CLASSNAME;\nBaseDetailedCard.defaultProps = DEFAULT_PROPS;\nBaseDetailedCard.displayName = COMPONENT_NAME;\n\nexport const DetailedCard = Object.assign(BaseDetailedCard, {\n Header: DetailedCardHeader,\n Section: DetailedCardSection,\n CollapsibleSectionItems: DetailedCardCollapsibleSectionItems,\n SectionItem: DetailedCardSectionItem,\n});\n","import styled from 'styled-components';\nimport { baseGrid, baseStyling } from '~/components/shared';\nimport { StyledGridProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledGrid = styled.div<StyledGridProps>`\n display: ${({ inline }) => (inline ? 'inline-grid' : 'grid')};\n\n ${baseStyling}\n ${baseGrid}\n`;\n","import styled from 'styled-components';\nimport { baseStyling } from '~/components/shared';\nimport { StyledGridItemProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledGridItem = styled.div<StyledGridItemProps>`\n display: inherit;\n\n ${baseStyling}\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\nimport { Comp } from '~/types';\nimport { StyledGridItem } from './styles';\nimport { GridItemProps } from './types';\n\nconst COMPONENT_NAME = 'GridItem';\nconst CLASSNAME = 'redsift-grid-item';\nconst DEFAULT_PROPS: Partial<GridItemProps> = {};\n\n/**\n * The GridItem component.\n */\nexport const GridItem: Comp<GridItemProps, HTMLDivElement> = forwardRef(\n (props, ref) => {\n const { children, className, ...forwardedProps } = props;\n\n return (\n <StyledGridItem\n {...forwardedProps}\n className={classNames(GridItem.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n >\n {children}\n </StyledGridItem>\n );\n }\n);\nGridItem.className = CLASSNAME;\nGridItem.defaultProps = DEFAULT_PROPS;\nGridItem.displayName = COMPONENT_NAME;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\nimport { Comp } from '~/types';\nimport { StyledGrid } from './styles';\nimport { GridProps } from './types';\nimport { GridItem } from '../grid-item';\n\nconst COMPONENT_NAME = 'Grid';\nconst CLASSNAME = 'redsift-grid';\nconst DEFAULT_PROPS: Partial<GridProps> = {};\n\n/**\n * The Grid component.\n */\nexport const BaseGrid: Comp<GridProps, HTMLDivElement> = forwardRef(\n (props, ref) => {\n const { children, className, ...forwardedProps } = props;\n\n return (\n <StyledGrid\n {...forwardedProps}\n className={classNames(BaseGrid.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n >\n {children}\n </StyledGrid>\n );\n }\n);\nBaseGrid.className = CLASSNAME;\nBaseGrid.defaultProps = DEFAULT_PROPS;\nBaseGrid.displayName = COMPONENT_NAME;\n\nexport const Grid = Object.assign(BaseGrid, {\n Item: GridItem,\n});\n","import styled, { css } from 'styled-components';\nimport { baseStyling } from '~/components/shared';\nimport { StyledLinkProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledLink = styled.a<StyledLinkProps>`\n ${baseStyling}\n\n background: none;\n border: none;\n color: inherit;\n cursor: text !important;\n font-family: var(--redsift-typography-link-font-family);\n font-size: var(--redsift-typography-link-font-size);\n font-weight: var(--redsift-typography-link-font-weight);\n line-height: var(--redsift-typography-link-line-height);\n padding: unset;\n text-decoration: none;\n\n ${({ $isDisabled }) =>\n !$isDisabled\n ? css`\n color: var(--redsift-color-success-primary);\n text-decoration: underline;\n text-decoration-color: var(--redsift-color-success-secondary);\n text-underline-offset: 2px;\n\n &:hover,\n &:focus-visible {\n cursor: pointer !important;\n text-decoration-color: var(--redsift-color-success-primary);\n }\n `\n : ''}\n\n &:focus-visible {\n outline: 2px solid var(--redsift-color-success-primary);\n }\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\nimport { Comp } from '~/types';\nimport { StyledLink } from './styles';\nimport { LinkProps } from './types';\n\nconst COMPONENT_NAME = 'Link';\nconst CLASSNAME = 'redsift-link';\nconst DEFAULT_PROPS: Partial<LinkProps> = {};\n\n/**\n * The Link is a semantic link that looks like a link.\n * Shoud be used for internal and external navigation only.\n *\n * For a semantic link that looks like a button, please use the ButtonLink component.\n * For a semantic button that looks like a button, please use the Button component.\n * For a semantic button that looks like a link, please use the LinkButton component.\n */\nexport const Link: Comp<LinkProps, HTMLAnchorElement> = forwardRef(\n (props, ref) => {\n const { children, className, href, isDisabled, ...forwardedProps } = props;\n\n return (\n <StyledLink\n aria-disabled={isDisabled}\n role=\"link\"\n tabIndex={!isDisabled ? 0 : undefined}\n {...forwardedProps}\n $isDisabled={isDisabled}\n className={classNames(Link.className, className)}\n href={!isDisabled ? href : undefined}\n ref={ref as RefObject<HTMLAnchorElement>}\n >\n {children}\n </StyledLink>\n );\n }\n);\nLink.className = CLASSNAME;\nLink.defaultProps = DEFAULT_PROPS;\nLink.displayName = COMPONENT_NAME;\n","import React, { forwardRef, RefObject, useRef } from 'react';\nimport classNames from 'classnames';\nimport { useButton } from '@react-aria/button';\nimport { AriaButtonProps } from '@react-types/button';\nimport { Comp } from '~/types';\nimport { StyledLink } from '~/components/link';\nimport { LinkButtonProps } from './types';\n\nconst COMPONENT_NAME = 'LinkButton';\nconst CLASSNAME = 'redsift-link-button';\nconst DEFAULT_PROPS: Partial<LinkButtonProps> = {};\n\n/**\n * The LinkButton is a semantic button that looks like a link.\n *\n * For a semantic button that looks like a button, please use the Button component.\n * For a semantic link that looks like a link, please use the Link component.\n * For a semantic link that looks like a button, please use the ButtonLink component.\n */\nexport const LinkButton: Comp<LinkButtonProps, HTMLButtonElement> = forwardRef(\n (props, ref) => {\n const buttonRef = ref || useRef<HTMLButtonElement>();\n const { buttonProps } = useButton(\n {\n ...props,\n isDisabled: props.isDisabled || props.disabled,\n preventFocusOnPress: true,\n } as AriaButtonProps<'button'>,\n buttonRef as RefObject<HTMLButtonElement>\n );\n\n const {\n children,\n className,\n disabled,\n isDisabled,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n onPress,\n ...forwardedProps\n } = props;\n\n return (\n <StyledLink\n as=\"button\"\n {...forwardedProps}\n {...buttonProps}\n $isDisabled={isDisabled || disabled}\n aria-disabled={isDisabled || disabled}\n className={classNames(LinkButton.className, className)}\n disabled={isDisabled || disabled}\n // @ts-ignore\n ref={buttonRef as RefObject<HTMLButtonElement>}\n >\n {children}\n </StyledLink>\n );\n }\n);\nLinkButton.className = CLASSNAME;\nLinkButton.defaultProps = DEFAULT_PROPS;\nLinkButton.displayName = COMPONENT_NAME;\n","import { ComponentProps } from 'react';\nimport {\n ColorPalette,\n FontFamily,\n NeutralColorPalette,\n ProductColorPalette,\n StylingProps,\n ValueOf,\n} from '~/types';\n\n/**\n * Component variant.\n */\nexport const TextVariant = {\n body: 'body',\n button: 'button',\n caption: 'caption',\n inherit: 'inherit',\n subtitle1: 'subtitle1',\n} as const;\nexport type TextVariant = ValueOf<typeof TextVariant>;\n\nexport const TextComponent = {\n p: 'p',\n b: 'b',\n i: 'i',\n u: 'u',\n abbr: 'abbr',\n cite: 'cite',\n del: 'del',\n em: 'em',\n ins: 'ins',\n kbd: 'kbd',\n mark: 'mark',\n s: 's',\n samp: 'samp',\n sub: 'sub',\n sup: 'sup',\n} as const;\nexport type TextComponent = ValueOf<typeof TextComponent>;\n\n/**\n * Component props.\n */\nexport interface TextProps extends ComponentProps<'span'>, StylingProps {\n /** Override component. */\n as?: TextComponent;\n /** Color variant. Either from color palette or hex or rgb strings. */\n color?: ColorPalette | ProductColorPalette | NeutralColorPalette | string;\n /** Font family. */\n fontFamily?: FontFamily;\n /** Font size. */\n fontSize?: string;\n /** Whether the text will truncate with a text overflow ellipsis or wrap. */\n noWrap?: boolean;\n /** Variant. */\n variant?: TextVariant;\n}\n\nexport type StyledTextProps = Omit<\n TextProps,\n 'as' | 'color' | 'fontFamily' | 'fontSize' | 'noWrap' | 'variant'\n> & {\n $as: TextProps['as'];\n $color: TextProps['color'];\n $fontFamily?: TextProps['fontFamily'];\n $fontSize: TextProps['fontSize'];\n $noWrap: TextProps['noWrap'];\n $variant: TextProps['variant'];\n};\n","import styled, { css } from 'styled-components';\nimport {\n ColorPalette,\n NeutralColorPalette,\n ProductColorPalette,\n} from '~/types';\nimport { baseStyling } from '~/components/shared';\nimport { StyledTextProps, TextComponent, TextVariant } from './types';\n\n/**\n * Component style.\n */\nexport const StyledText = styled.span<StyledTextProps>`\n ${baseStyling}\n\n ${({ $color }) =>\n $color &&\n [...Object.keys(ColorPalette), ...Object.keys(ProductColorPalette)].indexOf(\n $color\n ) !== -1\n ? css`\n color: var(--redsift-color-${$color}-primary);\n `\n : Object.keys(NeutralColorPalette).indexOf($color!) !== -1\n ? css`\n color: var(--redsift-color-neutral-${$color});\n `\n : css`\n color: ${$color || css`inherit`};\n `}\n\n ${({ $as }) => css`\n ${$as === TextComponent.i ||\n $as === TextComponent.cite ||\n $as === TextComponent.em\n ? css`\n font-style: italic;\n `\n : $as === TextComponent.sub\n ? css`\n vertical-align: sub;\n `\n : $as === TextComponent.sup\n ? css`\n vertical-align: super;\n `\n : ''}\n `}\n\n ${({ $as, $fontFamily, $fontSize, $variant }) =>\n !$variant\n ? css`\n ${$fontFamily\n ? css`\n font-family: ${$fontFamily};\n `\n : ''}\n ${$fontSize\n ? css`\n font-size: ${$fontSize};\n `\n : ''}\n ${$as === TextComponent.b\n ? css`\n font-weight: bold;\n `\n : $as === TextComponent.sup || $as === TextComponent.sub\n ? css`\n font-size: ${$fontSize ? $fontSize : '12px'};\n `\n : ''}\n `\n : $variant === TextVariant.inherit\n ? css`\n font-family: ${$fontFamily ? $fontFamily : css`inherit`};\n font-size: ${$fontSize\n ? $fontSize\n : $as === TextComponent.sup || $as === TextComponent.sub\n ? '12px'\n : css`inherit`};\n font-weight: ${$as === TextComponent.b ? 'bold' : 'inherit'};\n line-height: inherit;\n text-transform: inherit;\n `\n : css`\n font-family: ${$fontFamily\n ? $fontFamily\n : css`var(--redsift-typography-${$variant}-font-family)`};\n font-size: ${$fontSize\n ? $fontSize\n : css`var(--redsift-typography-${$variant}-font-size)`};\n font-weight: var(--redsift-typography-${$variant}-font-weight);\n line-height: var(--redsift-typography-${$variant}-line-height);\n text-transform: var(--redsift-typography-${$variant}-text-transform);\n `}\n \n ${({ $noWrap }) =>\n $noWrap\n ? css`\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n `\n : css`\n word-break: break-word;\n `}\n`;\n","import styled from 'styled-components';\nimport { StyledText } from '~/components/text/styles';\nimport { StyledNumberProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledNumber = styled(StyledText)<StyledNumberProps>`\n font-family: var(--redsift-typography-font-family-source-code-pro);\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport { useNumberFormatter } from '@react-aria/i18n';\nimport classNames from 'classnames';\nimport { Comp } from '~/types';\nimport { StyledNumber } from './styles';\nimport { NumberProps } from './types';\n\nconst COMPONENT_NAME = 'Number';\nconst CLASSNAME = 'redsift-number';\nconst DEFAULT_PROPS: Partial<NumberProps> = {\n compactDisplay: 'short',\n currencyDisplay: 'symbol',\n currencySign: 'standard',\n localeMatcher: 'best fit',\n notation: 'standard',\n signDisplay: 'auto',\n type: 'decimal',\n unitDisplay: 'short',\n roundingMode: 'halfExpand',\n roundingPriority: 'auto',\n trailingZeroDisplay: 'auto',\n minimumIntegerDigits: 1,\n minimumFractionDigits: 0,\n minimumSignificantDigits: 1,\n maximumSignificantDigits: 21,\n};\n\n/**\n * The Number component.\n */\nexport const Number: Comp<NumberProps, HTMLDivElement> = forwardRef(\n (props, ref) => {\n const {\n as,\n className,\n color,\n compactDisplay,\n currency,\n currencyDisplay,\n currencySign,\n fontSize,\n localeMatcher,\n maximumFractionDigits,\n maximumSignificantDigits,\n minimumFractionDigits,\n minimumIntegerDigits,\n minimumSignificantDigits,\n notation,\n noWrap,\n numberingSystem,\n roundingIncrement,\n roundingMode,\n roundingPriority,\n signDisplay,\n trailingZeroDisplay,\n type,\n unit,\n unitDisplay,\n useGrouping,\n value,\n variant,\n ...forwardedProps\n } = props;\n const formatter = useNumberFormatter({\n compactDisplay,\n currency,\n currencyDisplay,\n currencySign,\n localeMatcher,\n maximumFractionDigits,\n maximumSignificantDigits,\n minimumFractionDigits,\n minimumIntegerDigits,\n minimumSignificantDigits,\n notation,\n numberingSystem,\n // @ts-ignore\n roundingIncrement,\n // @ts-ignore\n roundingMode,\n // @ts-ignore\n roundingPriority,\n signDisplay,\n style: type,\n // @ts-ignore\n trailingZeroDisplay,\n unit,\n unitDisplay,\n useGrouping,\n });\n\n return (\n <StyledNumber\n as={as}\n {...forwardedProps}\n $as={as}\n className={classNames(Number.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n $color={color}\n $fontSize={fontSize}\n $noWrap={noWrap}\n $variant={variant}\n >\n {formatter.format(value)}\n </StyledNumber>\n );\n }\n);\nNumber.className = CLASSNAME;\nNumber.defaultProps = DEFAULT_PROPS;\nNumber.displayName = COMPONENT_NAME;\n","import { ComponentProps } from 'react';\nimport { StylingProps, ValueOf } from '~/types';\n\n/**\n * Context props.\n */\nexport type RadioGroupState = {\n /** Whether the radio group is disabled or not. */\n readonly isDisabled: boolean;\n /** Whether the radio group is read only or not. */\n readonly isReadOnly: boolean;\n /** Sets the selected value. */\n setValue(value: string): void;\n /** Current selected value. */\n readonly value: string;\n};\n\n/**\n * Component orientation.\n */\nexport const RadioGroupOrientation = {\n horizontal: 'horizontal',\n vertical: 'vertical',\n} as const;\nexport type RadioGroupOrientation = ValueOf<typeof RadioGroupOrientation>;\n\n/**\n * Component props.\n */\nexport interface RadioGroupProps\n extends Omit<ComponentProps<'div'>, 'onChange'>,\n StylingProps {\n /**\n * Default selected value.\n * Used for uncontrolled version.\n */\n defaultValue?: string;\n /** Description of the radio group. */\n description?: string;\n /** Whether the component is disabled or not. */\n isDisabled?: boolean;\n /** Whether the component is invalid or not. */\n isInvalid?: boolean;\n /** Whether the component is read only or not. */\n isReadOnly?: boolean;\n /** Whether the component is required or not. */\n isRequired?: boolean;\n /** Label of the radio group. */\n label?: string;\n /** Method to handle component change. */\n onChange?(values: string): void;\n /** Method to handle component change. */\n orientation?: RadioGroupOrientation;\n /** List of possible values. Useful to select all. */\n possibleValues?: string[];\n /**\n * Currently selected value.\n * Used for controlled version.\n */\n value?: string;\n}\n\nexport type StyledRadioGroupProps = Omit<\n RadioGroupProps,\n 'isDisabled' | 'isInvalid' | 'isReadOnly' | 'orientation' | 'isRequired'\n> & {\n $isDisabled: RadioGroupProps['isDisabled'];\n $isInvalid: RadioGroupProps['isInvalid'];\n $isReadOnly: RadioGroupProps['isReadOnly'];\n $orientation: RadioGroupProps['orientation'];\n};\n","import React from 'react';\nimport { RadioGroupState } from './types';\n\nexport const RadioGroupContext =\n React.createContext<RadioGroupState | null>(null);\n","import styled from 'styled-components';\nimport { baseStyling } from '~/components/shared';\nimport { RadioGroupOrientation, StyledRadioGroupProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledRadioGroup = styled.div<StyledRadioGroupProps>`\n ${baseStyling}\n\n display: flex;\n flex-direction: column;\n\n ${({ $orientation }) =>\n $orientation === RadioGroupOrientation.vertical\n ? `\n div.redsift-radio-group-boxes {\n display: flex;\n flex-direction: column;\n }\n `\n : `\n div.redsift-radio-group-boxes {\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n }\n `}\n\n span.redsift-radio-group-label {\n font-family: var(--redsift-typography-body-font-family);\n font-weight: var(--redsift-typography-body-font-weight);\n font-size: var(--redsift-typography-body-font-size);\n line-height: var(--redsift-typography-body-line-height);\n\n color: var(--redsift-color-neutral-black);\n ${({ $isDisabled }) =>\n $isDisabled\n ? `\n color: var(--redsift-color-neutral-midgrey);\n `\n : ''}\n ${({ $isInvalid }) =>\n $isInvalid\n ? `\n color: var(--redsift-color-error-primary);\n `\n : ''}\n }\n\n span.redsift-radio-group-description {\n font-family: var(--redsift-typography-helper-font-family);\n font-weight: var(--redsift-typography-helper-font-weight);\n font-size: var(--redsift-typography-helper-font-size);\n line-height: var(--redsift-typography-helper-line-height);\n\n color: var(--redsift-color-neutral-darkgrey);\n ${({ $isDisabled }) =>\n $isDisabled\n ? `\n color: var(--redsift-color-neutral-midgrey);\n `\n : ''}\n ${({ $isInvalid }) =>\n $isInvalid\n ? `\n color: var(--redsift-color-error-primary);\n `\n : ''}\n }\n`;\n","import React, { forwardRef, RefObject, useEffect, useState } from 'react';\nimport classNames from 'classnames';\nimport { ColorPalette, Comp } from '~/types';\nimport { RadioGroupOrientation, RadioGroupProps } from './types';\nimport { RadioGroupContext } from './context';\nimport { StyledRadioGroup } from './styles';\n\nconst COMPONENT_NAME = 'RadioGroup';\nconst CLASSNAME = 'redsift-radio-group';\nconst DEFAULT_PROPS: Partial<RadioGroupProps> = {\n color: ColorPalette.default,\n orientation: RadioGroupOrientation.vertical,\n};\n\n/**\n * The RadioGroup component.\n * Can be used as controlled or uncontrolled.\n */\nexport const RadioGroup: Comp<RadioGroupProps, HTMLDivElement> = forwardRef(\n (props, ref) => {\n const {\n children,\n className,\n defaultValue,\n description,\n isDisabled,\n isInvalid,\n isReadOnly,\n isRequired,\n label,\n onChange,\n orientation,\n possibleValues,\n value,\n ...forwardedProps\n } = props;\n\n const [selectedValue, setValue] = useState<string>(\n value || defaultValue || ''\n );\n useEffect(() => {\n if (value) {\n state.setValue(value);\n }\n }, [value]);\n\n const state = {\n value: selectedValue,\n isDisabled: isDisabled || false,\n isReadOnly: isReadOnly || false,\n possibleValues: possibleValues,\n setValue(value: string) {\n if (isReadOnly || isDisabled) {\n return;\n }\n\n const previousValue = selectedValue;\n setValue(value);\n if (value !== previousValue && onChange) {\n onChange(value);\n }\n },\n };\n\n return (\n <StyledRadioGroup\n {...forwardedProps}\n $isDisabled={isDisabled}\n $isInvalid={isInvalid || (isRequired && selectedValue.length === 0)}\n $isReadOnly={isReadOnly}\n $orientation={orientation}\n aria-disabled={isDisabled}\n className={classNames(RadioGroup.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n role=\"radiogroup\"\n >\n <span className={`${RadioGroup.className}-label`}>\n {label}\n {isRequired ? ' *' : null}\n </span>\n <div className={`${RadioGroup.className}-boxes`}>\n <RadioGroupContext.Provider value={state}>\n {children}\n </RadioGroupContext.Provider>\n </div>\n <span className={`${RadioGroup.className}-description`}>\n {description}\n </span>\n </StyledRadioGroup>\n );\n }\n);\nRadioGroup.className = CLASSNAME;\nRadioGroup.defaultProps = DEFAULT_PROPS;\nRadioGroup.displayName = COMPONENT_NAME;\n","import styled, { css } from 'styled-components';\nimport { baseStyling } from '~/components/shared';\nimport { StyledRadioProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledRadio = styled.label<StyledRadioProps>`\n position: relative;\n width: fit-content;\n ${baseStyling}\n\n align-items: baseline;\n background: none;\n border: none;\n display: inline-flex;\n\n input {\n height: 100%;\n margin: 0;\n opacity: 0;\n overflow: visible;\n padding: 0;\n position: absolute;\n width: 100%;\n }\n\n span.label {\n ${({ $isDisabled, $isInvalid }) =>\n $isDisabled\n ? css`\n color: var(--redsift-color-neutral-midgrey);\n `\n : $isInvalid\n ? css`\n color: var(--redsift-color-error-primary);\n `\n : css`\n color: var(--redsift-color-neutral-black);\n `}\n\n font-family: var(--redsift-typography-body-font-family);\n font-size: var(--redsift-typography-body-font-size);\n font-weight: var(--redsift-typography-body-font-weight);\n line-height: var(--redsift-typography-body-line-height);\n padding-left: 4px;\n padding-right: 16px;\n position: relative;\n top: -4px;\n\n [dir='rtl'] & {\n padding-left: 16px;\n padding-right: 4px;\n }\n }\n\n .redsift-icon {\n padding: 2px;\n width: 24px;\n\n ${({ $isColored, $isDisabled, $isInvalid, $isFocusVisible }) => css`\n ${$isDisabled\n ? css`\n color: var(--redsift-color-neutral-midgrey);\n `\n : $isInvalid\n ? css`\n color: var(--redsift-color-error-primary);\n `\n : css`\n color: var(\n --redsift-color-${$isColored ? 'default' : 'question'}-primary\n );\n `}\n\n ${$isFocusVisible\n ? css`\n background-color: var(\n --redsift-color-${$isColored ? 'default' : 'question'}-hover\n );\n border-radius: 16px;\n `\n : ''}\n `}\n }\n\n &:hover,\n &:focus-visible {\n outline: none;\n\n ${({ $isColored, $isDisabled }) =>\n !$isDisabled\n ? css`\n .redsift-icon {\n background-color: var(\n --redsift-color-${$isColored ? 'default' : 'question'}-hover\n );\n border-radius: 16px;\n }\n `\n : ''}\n }\n\n ${({ $isColored, $isFocusVisible }) =>\n $isFocusVisible\n ? css`\n .redsift-icon {\n background-color: var(\n --redsift-color-${$isColored ? 'default' : 'question'}-hover\n );\n border-radius: 21px;\n }\n `\n : ''}\n`;\n","import React, {\n ComponentProps,\n forwardRef,\n MutableRefObject,\n useCallback,\n useContext,\n useEffect,\n useState,\n} from 'react';\nimport classNames from 'classnames';\nimport { useFocusRing } from '@react-aria/focus';\nimport { mdiRadioboxBlank, mdiRadioboxMarked } from '@redsift/icons';\nimport { Comp } from '~/types';\nimport { Icon } from '~/components/icon';\nimport { RadioGroupContext } from '~/components/radio-group/context';\nimport { warnIfNoAccessibleLabelFound } from '~/utils/warnIfNoAccessibleLabelFound';\nimport { RadioProps } from './types';\nimport { StyledRadio } from './styles';\n\nconst COMPONENT_NAME = 'Radio';\nconst CLASSNAME = 'redsift-radio';\nconst DEFAULT_PROPS: Partial<RadioProps> = {\n isColored: true,\n};\n\n/**\n * The Radio component.\n * Works both inside a RadioGroup or as standalone.\n * Can be used as controlled or uncontrolled.\n */\nexport const Radio: Comp<RadioProps, HTMLLabelElement> = forwardRef(\n (props, ref) => {\n const groupState = useContext(RadioGroupContext);\n\n let {\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledby,\n autoFocus,\n children,\n className,\n defaultSelected,\n inputProps,\n inputRef,\n isColored,\n isDisabled,\n isInvalid,\n isReadOnly,\n isRequired,\n isSelected: propsIsSelected,\n name,\n onChange,\n value,\n ...forwardedProps\n } = props;\n\n const { isFocusVisible, focusProps } = useFocusRing({ autoFocus });\n isDisabled = isDisabled ?? groupState?.isDisabled;\n isReadOnly = isReadOnly ?? groupState?.isReadOnly;\n\n const [isSelected, setSelected] = useState<boolean | undefined>(\n propsIsSelected ??\n defaultSelected ??\n Boolean(groupState?.value && groupState.value === value)\n );\n\n useEffect(() => {\n setSelected(propsIsSelected ?? defaultSelected);\n }, [propsIsSelected, defaultSelected]);\n\n useEffect(() => {\n if (groupState) {\n setSelected(groupState.value === value);\n }\n }, [groupState?.value]);\n\n warnIfNoAccessibleLabelFound(props as ComponentProps<'label'>, [children]);\n\n if (groupState) {\n if (propsIsSelected != null) {\n console.warn(\n 'isSelected is unsupported on individual <Radio> elements within a <RadioGroup> unless the <Radio> is controlled. Please apply this prop to the group instead or pass isControlled to the component.'\n );\n }\n if (defaultSelected != null) {\n console.warn(\n 'defaultSelected is unsupported on individual <Radio> elements within a <RadioGroup> unless the <Radio> is controlled. Please apply this prop to the group instead or pass isControlled to the component.'\n );\n }\n if (props.value == null) {\n console.warn(\n 'A <Radio> element within a <RadioGroup> requires a `value` property unless the <Radio> is controlled.'\n );\n }\n }\n\n const handleChange = useCallback(\n (event: React.ChangeEvent<HTMLInputElement>) => {\n if (isDisabled || isReadOnly) {\n return;\n }\n\n if (groupState) {\n groupState.setValue(value as string);\n }\n\n if (onChange) {\n onChange(!isSelected, value, name, event, groupState!);\n }\n setSelected(event.target.checked);\n },\n [onChange, groupState]\n );\n\n return (\n <StyledRadio\n {...forwardedProps}\n $isColored={isColored}\n $isDisabled={isDisabled}\n $isFocusVisible={isFocusVisible}\n $isInvalid={isInvalid || (isRequired && !isSelected)}\n $isRequired={isRequired}\n $isSelected={isSelected}\n className={classNames(Radio.className, className)}\n ref={ref as MutableRefObject<HTMLLabelElement>}\n >\n <input\n {...inputProps}\n {...focusProps}\n aria-checked={isSelected ? 'true' : 'false'}\n aria-disabled={isDisabled}\n aria-invalid={isInvalid || (isRequired && !isSelected)}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledby}\n aria-readonly={isReadOnly}\n aria-required={isRequired}\n checked={isSelected ? true : false}\n disabled={isDisabled}\n name={name}\n onChange={handleChange}\n ref={inputRef as MutableRefObject<HTMLInputElement>}\n type=\"radio\"\n value={value}\n />\n {isSelected ? (\n <Icon icon={mdiRadioboxMarked} />\n ) : (\n <Icon icon={mdiRadioboxBlank} />\n )}\n {children ? <span className=\"label\">{children}</span> : null}\n </StyledRadio>\n );\n }\n);\nRadio.className = CLASSNAME;\nRadio.defaultProps = DEFAULT_PROPS;\nRadio.displayName = COMPONENT_NAME;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\nimport { Comp, FontFamily } from '~/types';\nimport { StyledText } from './styles';\nimport { TextProps } from './types';\n\nconst COMPONENT_NAME = 'Text';\nconst CLASSNAME = 'redsift-text';\nconst DEFAULT_PROPS: Partial<TextProps> = {\n fontFamily: FontFamily.raleway,\n};\n\n/**\n * The Text component.\n */\nexport const Text: Comp<TextProps, HTMLDivElement> = forwardRef(\n (props, ref) => {\n const {\n as,\n children,\n className,\n color,\n fontFamily,\n fontSize,\n noWrap,\n variant,\n ...forwardedProps\n } = props;\n\n return (\n <StyledText\n as={as}\n {...forwardedProps}\n className={classNames(Text.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n $as={as}\n $color={color}\n $fontFamily={fontFamily}\n $fontSize={fontSize}\n $noWrap={noWrap}\n $variant={variant}\n >\n {children}\n </StyledText>\n );\n }\n);\nText.className = CLASSNAME;\nText.defaultProps = DEFAULT_PROPS;\nText.displayName = COMPONENT_NAME;\n"],"names":["FontFamily","raleway","electrolize","ColorPalette","default","success","error","warning","info","question","ProductColorPalette","website","ondmarc","oninbox","ondomain","hardenize","tools","DataVizColorPalette","purple","blue","green","red","pink","cyan","orange","yellow","brown","grey","NeutralColorPalette","black","darkgrey","midgrey","lightgrey","xlightgrey","white","AlignSelf","auto","normal","start","end","center","baseline","stretch","JustifySelf","left","right","AlignContent","AlignItems","FlexDirection","row","column","FlexWrap","nowrap","wrap","JustifyContent","JustifyItems","isComponent","component","instance","componentName","displayName","React","isValidElement","type","filterComponents","children","components","Array","isArray","childArray","Children","forEach","child","comp","push","partitionComponents","predicates","elements","map","found","predicate","index","length","RedsiftColorDefaultPrimary","RedsiftColorDefaultSecondary","RedsiftColorDefaultHover","RedsiftColorDefaultActive","RedsiftColorDefaultActiveHover","RedsiftColorDefaultPrimaryActive","RedsiftColorWebsitePrimary","RedsiftColorWebsiteSecondary","RedsiftColorWebsiteHover","RedsiftColorWebsiteActive","RedsiftColorWebsiteActiveHover","RedsiftColorWebsitePrimaryActive","RedsiftColorOndmarcPrimary","RedsiftColorOndmarcSecondary","RedsiftColorOndmarcHover","RedsiftColorOndmarcActive","RedsiftColorOndmarcActiveHover","RedsiftColorOndmarcPrimaryActive","RedsiftColorOninboxPrimary","RedsiftColorOninboxSecondary","RedsiftColorOninboxHover","RedsiftColorOninboxActive","RedsiftColorOninboxActiveHover","RedsiftColorOninboxPrimaryActive","RedsiftColorOndomainPrimary","RedsiftColorOndomainSecondary","RedsiftColorOndomainHover","RedsiftColorOndomainActive","RedsiftColorOndomainActiveHover","RedsiftColorOndomainPrimaryActive","RedsiftColorHardenizePrimary","RedsiftColorHardenizeSecondary","RedsiftColorHardenizeHover","RedsiftColorHardenizeActive","RedsiftColorHardenizeActiveHover","RedsiftColorHardenizePrimaryActive","RedsiftColorToolsPrimary","RedsiftColorToolsSecondary","RedsiftColorToolsHover","RedsiftColorToolsActive","RedsiftColorToolsActiveHover","RedsiftColorToolsPrimaryActive","RedsiftColorSuccessPrimary","RedsiftColorSuccessSecondary","RedsiftColorSuccessHover","RedsiftColorSuccessActive","RedsiftColorSuccessActiveHover","RedsiftColorSuccessPrimaryActive","RedsiftColorErrorPrimary","RedsiftColorErrorSecondary","RedsiftColorErrorHover","RedsiftColorErrorActive","RedsiftColorErrorActiveHover","RedsiftColorErrorPrimaryActive","RedsiftColorWarningPrimary","RedsiftColorWarningSecondary","RedsiftColorWarningHover","RedsiftColorWarningActive","RedsiftColorWarningActiveHover","RedsiftColorWarningPrimaryActive","RedsiftColorInfoPrimary","RedsiftColorInfoSecondary","RedsiftColorInfoHover","RedsiftColorInfoActive","RedsiftColorInfoActiveHover","RedsiftColorInfoPrimaryActive","RedsiftColorQuestionPrimary","RedsiftColorQuestionSecondary","RedsiftColorQuestionHover","RedsiftColorQuestionActive","RedsiftColorQuestionActiveHover","RedsiftColorNoDataPrimary","RedsiftColorNoDataSecondary","RedsiftColorNoDataHover","RedsiftColorNoDataActive","RedsiftColorNoDataActiveHover","RedsiftColorNeutralBlack","RedsiftColorNeutralDarkgrey","RedsiftColorNeutralMidgrey","RedsiftColorNeutralLightgrey","RedsiftColorNeutralXlightgrey","RedsiftColorNeutralWhite","RedsiftAppBarColorBackground","RedsiftAppBarColorText","RedsiftAppBarColorExpandIconResting","RedsiftAppBarColorExpandIconHover","RedsiftAppBarColorExpandIconBackgroundHover","RedsiftDataVizColorPurpleDefault","RedsiftDataVizColorPurpleDark","RedsiftDataVizColorPurpleDarker","RedsiftDataVizColorPurpleLight","RedsiftDataVizColorPurpleLighter","RedsiftDataVizColorBlueDefault","RedsiftDataVizColorBlueDark","RedsiftDataVizColorBlueDarker","RedsiftDataVizColorBlueLight","RedsiftDataVizColorBlueLighter","RedsiftDataVizColorGreenDefault","RedsiftDataVizColorGreenDark","RedsiftDataVizColorGreenDarker","RedsiftDataVizColorGreenLight","RedsiftDataVizColorGreenLighter","RedsiftDataVizColorRedDefault","RedsiftDataVizColorRedDark","RedsiftDataVizColorRedDarker","RedsiftDataVizColorRedLight","RedsiftDataVizColorRedLighter","RedsiftDataVizColorPinkDefault","RedsiftDataVizColorPinkDark","RedsiftDataVizColorPinkDarker","RedsiftDataVizColorPinkLight","RedsiftDataVizColorPinkLighter","RedsiftDataVizColorCyanDefault","RedsiftDataVizColorCyanDark","RedsiftDataVizColorCyanDarker","RedsiftDataVizColorCyanLight","RedsiftDataVizColorCyanLighter","RedsiftDataVizColorOrangeDefault","RedsiftDataVizColorOrangeDark","RedsiftDataVizColorOrangeDarker","RedsiftDataVizColorOrangeLight","RedsiftDataVizColorOrangeLighter","RedsiftDataVizColorYellowDefault","RedsiftDataVizColorYellowDark","RedsiftDataVizColorYellowDarker","RedsiftDataVizColorYellowLight","RedsiftDataVizColorYellowLighter","RedsiftDataVizColorBrownDefault","RedsiftDataVizColorBrownDark","RedsiftDataVizColorBrownDarker","RedsiftDataVizColorBrownLight","RedsiftDataVizColorBrownLighter","RedsiftDataVizColorGreyDefault","RedsiftDataVizColorGreyDark","RedsiftDataVizColorGreyDarker","RedsiftDataVizColorGreyLight","RedsiftDataVizColorGreyLighter","RedsiftSideNavigationColorBackground","RedsiftSideNavigationColorMenuItemTextResting","RedsiftSideNavigationColorMenuItemTextDisabled","RedsiftSideNavigationColorMenuItemTextHover","RedsiftSideNavigationColorMenuItemBackgroundHover","RedsiftSideNavigationColorMenuItemBackgroundSecondary","RedsiftSideNavigationColorMenuItemBackgroundActive","RedsiftSideNavigationColorMenuItemActive","RedsiftSideNavigationColorScrollbarResting","RedsiftSideNavigationColorScrollbarHover","RedsiftTypographyFontFamilyRaleway","RedsiftTypographyFontFamilyElectrolize","RedsiftTypographyFontFamilySourceCodePro","RedsiftTypographyFontWeightRegular","RedsiftTypographyFontWeightMedium","RedsiftTypographyFontWeightSemiBold","RedsiftTypographyFontWeightBold","RedsiftTypographyH1FontFamily","RedsiftTypographyH1FontSize","RedsiftTypographyH1FontWeight","RedsiftTypographyH1LineHeight","RedsiftTypographyH1TextTransform","RedsiftTypographyH2FontFamily","RedsiftTypographyH2FontSize","RedsiftTypographyH2FontWeight","RedsiftTypographyH2LineHeight","RedsiftTypographyH2TextTransform","RedsiftTypographyH3FontFamily","RedsiftTypographyH3FontSize","RedsiftTypographyH3FontWeight","RedsiftTypographyH3LineHeight","RedsiftTypographyH3TextTransform","RedsiftTypographyH4FontFamily","RedsiftTypographyH4FontSize","RedsiftTypographyH4FontWeight","RedsiftTypographyH4LineHeight","RedsiftTypographyH4TextTransform","RedsiftTypographyH5FontFamily","RedsiftTypographyH5FontSize","RedsiftTypographyH5FontWeight","RedsiftTypographyH5LineHeight","RedsiftTypographyH5TextTransform","RedsiftTypographySubtitleFontFamily","RedsiftTypographySubtitleFontSize","RedsiftTypographySubtitleFontWeight","RedsiftTypographySubtitleLineHeight","RedsiftTypographySubtitleTextTransform","RedsiftTypographyBodyFontFamily","RedsiftTypographyBodyFontSize","RedsiftTypographyBodyFontWeight","RedsiftTypographyBodyLineHeight","RedsiftTypographyBodyTextTransform","RedsiftTypographyBody2FontFamily","RedsiftTypographyBody2FontSize","RedsiftTypographyBody2FontWeight","RedsiftTypographyBody2LineHeight","RedsiftTypographyLinkFontFamily","RedsiftTypographyLinkFontSize","RedsiftTypographyLinkFontWeight","RedsiftTypographyLinkLineHeight","RedsiftTypographyInputTextFontFamily","RedsiftTypographyInputTextFontSize","RedsiftTypographyInputTextFontWeight","RedsiftTypographyInputTextLineHeight","RedsiftTypographyButtonFontFamily","RedsiftTypographyButtonFontSize","RedsiftTypographyButtonFontWeight","RedsiftTypographyButtonLineHeight","RedsiftTypographyButtonTextTransform","RedsiftTypographyCaptionFontFamily","RedsiftTypographyCaptionFontSize","RedsiftTypographyCaptionFontWeight","RedsiftTypographyCaptionLineHeight","RedsiftTypographyCaptionTextTransform","RedsiftTypographyHelperFontFamily","RedsiftTypographyHelperFontSize","RedsiftTypographyHelperFontWeight","RedsiftTypographyHelperLineHeight","RedsiftTypographyBadgeFontFamily","RedsiftTypographyBadgeFontSize","RedsiftTypographyBadgeFontWeight","RedsiftTypographyBadgeLineHeight","RedsiftTypographyPillFontFamily","RedsiftTypographyPillFontSize","RedsiftTypographyPillFontWeight","RedsiftTypographyPillLineHeight","RedsiftTypographyChipFontFamily","RedsiftTypographyChipFontSize","RedsiftTypographyChipFontWeight","RedsiftTypographyChipLineHeight","warnIfNoAccessibleLabelFound","props","additionalKeysToCheck","ariaLabel","ariaLabelledby","hasText","filter","key","hasAriaLabel","Boolean","console","warn","useWindowSize","windowSize","setWindowSize","useState","width","undefined","height","size","useEffect","handleResize","window","innerWidth","innerHeight","addEventListener","removeEventListener","AlertVariant","enUS","frFR","IconButtonVariant","primary","secondary","unstyled","IconSize","xsmall","small","medium","large","xlarge","baseLayout","css","flex","flexGrow","flexShrink","flexBasis","alignSelf","justifySelf","order","gridArea","gridColumn","gridRow","gridColumnStart","gridColumnEnd","gridRowStart","gridRowEnd","baseSpacing","margin","marginBottom","marginLeft","marginRight","marginTop","baseSizing","maxHeight","maxWidth","minHeight","minWidth","basePositioning","position","top","bottom","zIndex","baseFlexbox","alignContent","alignItems","flexDirection","flexWrap","gap","justifyContent","baseGrid","gridAutoColumns","gridAutoRows","gridTemplateAreas","gridTemplateColumns","gridTemplateRows","justifyItems","baseStyling","baseContainer","display","StyledIcon","styled","span","$color","Object","keys","indexOf","$size","COMPONENT_NAME","CLASSNAME","DEFAULT_PROPS","Icon","forwardRef","ref","ariaHidden","badge","className","color","icon","svgProps","forwardedProps","_excluded","classNames","defaultProps","ButtonVariant","StyledButton","button","$variant","$isActive","$isDisabled","$fullWidth","SpinnerSize","StyledSpinner","img","colorToFile","spinnerDefault","spinnerHardenize","spinnerNoData","spinnerOndmarc","spinnerOndomain","spinnerOninbox","spinnerQuestion","spinnerTools","spinnerWebsite","sizeToDimension","Spinner","stringFormatter","useLocalizedStringFormatter","intlMessages","format","variant","Button","buttonRef","useRef","buttonProps","useButton","_objectSpread","isDisabled","isLoading","disabled","preventFocusOnPress","fullWidth","isActive","leftIcon","onPress","rightIcon","StyledIconButton","IconButton","StyledAlert","div","$hasTitle","$isClosable","$isClosed","HeadingVariant","h1","h2","h3","h4","h5","StyledHeading","as","$noWrap","Heading","noWrap","StyledFlexbox","inline","Flexbox","getVariant","mdiInformation","mdiCheckCircle","mdiAlert","Alert","isClosable","isClosed","propsIsClosed","onClose","title","setIsClosed","handleClose","useCallback","mdiClose","AppContainerContext","createContext","useIsLoaded","isLoaded","setIsLoaded","StyledAppBar","header","$isSidePanelCollapsed","$isLoaded","AppBar","collapseIconButtonProps","collapseIconButtonRef","expandIconButtonProps","expandIconButtonRef","fallbackTitle","propsTitle","appContainerState","useContext","isSidePanelCollapsed","mdiMenu","expandSidePanel","mdiMenuOpen","collapseSidePanel","StyledAppContainer","$productTheme","AppContainer","locale","productTheme","hasAppBar","hasAppSidePanel","hasAppContent","useMemo","appBar","appSidePanel","appContent","toArray","setIsSidePanelCollapsed","setTitle","state","StyledAppContent","main","AppContent","StyledAppSidePanel","$isCollapsed","AppSidePanel","featuredElements","isCollapsed","logo","src","alt","SideNavigationMenuReducerActionType","SideNavigationMenuBarContext","SideNavigationMenuContext","StyledSideNavigationMenuItem","a","$isSecondLevel","$withoutIcons","$isCurrent","BadgeVariant","dot","standard","StyledBadge","$isReversed","$autoBreak","Badge","autoBreak","isReversed","SideNavigationMenuItem","menuItemRef","badgeProps","href","iconProps","iconRef","isCurrent","isSecondLevel","onClick","onKeyDown","tabIndex","withoutIcons","sideNavigationMenuBarContext","sideNavigationMenuContext","isFirstChild","setIsFirstChild","menuItems","menuItemNode","current","add","delete","StyledSideNavigationMenu","$isExpanded","SideNavigationMenuReducer","action","Expand","isExpanded","Collapse","currentIndex","previousIndex","Move","SideNavigationMenu","hasBadge","propsIsExpanded","menuProps","menuRef","menubarItems","renderedMenuItems","cloneElement","Set","dispatch","useReducer","first","last","move","open","close","focusButton","focus","previous","next","match","e","items","from","reorderedItems","slice","matches","menuItem","textContent","firstLetter","toLowerCase","charAt","currentNode","nextMatch","includes","findIndex","item","value","keyDownOnButton","target","code","stopPropagation","click","buttonEventHandler","event","keyDownOnMenuItemList","preventDefault","menuItemListEventHandler","mdiChevronDown","mdiChevronRight","StyledSideNavigationMenuBar","nav","$marginTop","useBoundingClientRect","deps","boundingRect","setBoundingRect","getBoundingClientRect","usePrevious","SideNavigationMenuBar","navRef","menubarProps","menubarRef","navItems","setCurrentIndex","keyDown","parentMenu","parentNode","isFromSubmenu","getAttribute","previousNode","setAttribute","isMenu","useSideNavigationMenuBar","menuBarChildren","rest","useAppSidePanel","sideNavigationMenuBarProps","StyledBreadcrumbItem","BreadcrumbItem","StyledBreadcrumbs","BaseBreadcrumbs","Breadcrumbs","Item","breadcrumbItems","assign","ButtonLink","StyledCard","StyledCardHeader","CardHeader","subheader","StyledCardBody","CardBody","StyledCardActions","CardActions","BaseCard","defaultCollapsed","propsIsCollapsed","isCollapsible","onCollapse","setIsCollapsed","handleCollapse","collapsed","body","actions","mdiChevronUp","Card","Header","Body","Actions","CheckboxGroupOrientation","horizontal","vertical","CheckboxGroupContext","StyledCheckboxGroup","$orientation","$isInvalid","orientation","CheckboxGroup","defaultValues","description","isInvalid","isReadOnly","isRequired","label","onChange","possibleValues","selectedValues","setValue","values","addValue","concat","removeValue","existingValue","StyledCheckbox","$isColored","$isFocusVisible","isColored","Checkbox","groupState","autoFocus","defaultSelected","inputProps","inputRef","isControlled","isIndeterminate","isSelected","propsIsSelected","name","isFocusVisible","focusProps","useFocusRing","setSelected","handleChange","checked","mdiCheckboxMarked","mdiMinusBox","mdiCheckboxBlankOutline","ConditionalWrapper","condition","wrapper","ShieldVariant","successLocked","successUnlocked","fail","failLocked","failUnlocked","warningLocked","warningUnlocked","ignored","noData","email","StyledShield","$isOutlined","Shield","isOutlined","verticalAlign","StyledDetailedCardCollapsibleSectionItems","DetailedCardCollapsibleSectionItems","caption","StyledDetailedCardSection","hasCollapsibleChildren","hasCollapsible","DetailedCardSection","propsIsCollapsible","StyledDetailedCard","StyledDetailedCardHeader","DetailedCardHeader","StyledPill","Pill","StyledDetailedCardSectionItem","DetailedCardSectionItem","pill","pillProps","shield","childrenArray","hasCollapsibleItems","sectionChild","BaseDetailedCard","areAllCollapsed","propsAreAllCollapsed","defaultAllCollapsed","onCollapseAll","allCollapsed","setAllCollapsed","content","mdiPageLast","transform","mdiKeyboardCaps","Math","random","DetailedCard","Section","CollapsibleSectionItems","SectionItem","StyledGrid","StyledGridItem","GridItem","BaseGrid","Grid","StyledLink","Link","LinkButton","TextVariant","inherit","subtitle1","TextComponent","p","b","i","u","abbr","cite","del","em","ins","kbd","mark","s","samp","sub","sup","StyledText","$as","$fontFamily","$fontSize","StyledNumber","compactDisplay","currencyDisplay","currencySign","localeMatcher","notation","signDisplay","unitDisplay","roundingMode","roundingPriority","trailingZeroDisplay","minimumIntegerDigits","minimumFractionDigits","minimumSignificantDigits","maximumSignificantDigits","Number","currency","fontSize","maximumFractionDigits","numberingSystem","roundingIncrement","unit","useGrouping","formatter","useNumberFormatter","style","RadioGroupOrientation","RadioGroupContext","StyledRadioGroup","RadioGroup","defaultValue","selectedValue","previousValue","StyledRadio","Radio","mdiRadioboxMarked","mdiRadioboxBlank","fontFamily","Text"],"mappings":"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"}
|