@redsift/design-system 11.5.0 → 11.6.0-muiv5-alpha.0
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/_virtual/_rollupPluginBabelHelpers.js +133 -0
- package/_virtual/_rollupPluginBabelHelpers.js.map +1 -0
- package/_virtual/jsx-runtime.js +4 -0
- package/_virtual/jsx-runtime.js.map +1 -0
- package/_virtual/react-jsx-runtime.development.js +4 -0
- package/_virtual/react-jsx-runtime.development.js.map +1 -0
- package/_virtual/react-jsx-runtime.production.min.js +4 -0
- package/_virtual/react-jsx-runtime.production.min.js.map +1 -0
- package/components/alert/Alert.d.ts +9 -0
- package/components/alert/Alert.js +117 -0
- package/components/alert/Alert.js.map +1 -0
- package/components/alert/intl/en-US.json.js +7 -0
- package/components/alert/intl/en-US.json.js.map +1 -0
- package/components/alert/intl/fr-FR.json.js +7 -0
- package/components/alert/intl/fr-FR.json.js.map +1 -0
- package/components/alert/intl/index.js +10 -0
- package/components/alert/intl/index.js.map +1 -0
- package/components/alert/styles.js +54 -0
- package/components/alert/styles.js.map +1 -0
- package/components/alert/types.d.ts +49 -0
- package/components/alert/types.js +20 -0
- package/components/alert/types.js.map +1 -0
- package/components/app-bar/AppBar.d.ts +9 -0
- package/components/app-bar/AppBar.js +95 -0
- package/components/app-bar/AppBar.js.map +1 -0
- package/components/app-bar/intl/en-US.json.js +9 -0
- package/components/app-bar/intl/en-US.json.js.map +1 -0
- package/components/app-bar/intl/fr-FR.json.js +9 -0
- package/components/app-bar/intl/fr-FR.json.js.map +1 -0
- package/components/app-bar/intl/index.js +10 -0
- package/components/app-bar/intl/index.js.map +1 -0
- package/components/app-bar/styles.js +139 -0
- package/components/app-bar/styles.js.map +1 -0
- package/components/app-bar/types.d.ts +31 -0
- package/components/app-container/AppContainer.d.ts +11 -0
- package/components/app-container/AppContainer.js +117 -0
- package/components/app-container/AppContainer.js.map +1 -0
- package/components/app-container/context.d.ts +6 -0
- package/components/app-container/context.js +6 -0
- package/components/app-container/context.js.map +1 -0
- package/components/app-container/styles.js +30 -0
- package/components/app-container/styles.js.map +1 -0
- package/components/app-container/types.d.ts +51 -0
- package/components/app-content/AppContent.d.ts +9 -0
- package/components/app-content/AppContent.js +42 -0
- package/components/app-content/AppContent.js.map +1 -0
- package/components/app-content/styles.js +54 -0
- package/components/app-content/styles.js.map +1 -0
- package/components/app-content/types.d.ts +19 -0
- package/components/app-side-panel/AppSidePanel.d.ts +9 -0
- package/components/app-side-panel/AppSidePanel.js +86 -0
- package/components/app-side-panel/AppSidePanel.js.map +1 -0
- package/components/app-side-panel/intl/en-US.json.js +9 -0
- package/components/app-side-panel/intl/en-US.json.js.map +1 -0
- package/components/app-side-panel/intl/fr-FR.json.js +9 -0
- package/components/app-side-panel/intl/fr-FR.json.js.map +1 -0
- package/components/app-side-panel/intl/index.js +10 -0
- package/components/app-side-panel/intl/index.js.map +1 -0
- package/components/app-side-panel/styles.js +183 -0
- package/components/app-side-panel/styles.js.map +1 -0
- package/components/app-side-panel/types.d.ts +39 -0
- package/components/app-side-panel/types.js +15 -0
- package/components/app-side-panel/types.js.map +1 -0
- package/components/app-side-panel/useAppSidePanel.d.ts +6 -0
- package/components/app-side-panel/useAppSidePanel.js +23 -0
- package/components/app-side-panel/useAppSidePanel.js.map +1 -0
- package/components/badge/Badge.d.ts +9 -0
- package/components/badge/Badge.js +44 -0
- package/components/badge/Badge.js.map +1 -0
- package/components/badge/styles.js +93 -0
- package/components/badge/styles.js.map +1 -0
- package/components/badge/types.d.ts +37 -0
- package/components/badge/types.js +14 -0
- package/components/badge/types.js.map +1 -0
- package/components/breadcrumb-item/BreadcrumbItem.d.ts +9 -0
- package/components/breadcrumb-item/BreadcrumbItem.js +47 -0
- package/components/breadcrumb-item/BreadcrumbItem.js.map +1 -0
- package/components/breadcrumb-item/styles.js +48 -0
- package/components/breadcrumb-item/styles.js.map +1 -0
- package/components/breadcrumb-item/types.d.ts +23 -0
- package/components/breadcrumbs/Breadcrumbs.d.ts +13 -0
- package/components/breadcrumbs/Breadcrumbs.js +61 -0
- package/components/breadcrumbs/Breadcrumbs.js.map +1 -0
- package/components/breadcrumbs/styles.js +38 -0
- package/components/breadcrumbs/styles.js.map +1 -0
- package/components/breadcrumbs/types.d.ts +19 -0
- package/components/button/Button.d.ts +13 -0
- package/components/button/Button.js +92 -0
- package/components/button/Button.js.map +1 -0
- package/components/button/styles.d.ts +20 -0
- package/components/button/styles.js +219 -0
- package/components/button/styles.js.map +1 -0
- package/components/button/types.d.ts +67 -0
- package/components/button/types.js +19 -0
- package/components/button/types.js.map +1 -0
- package/components/button-group/ButtonGroup.d.ts +9 -0
- package/components/button-group/ButtonGroup.js +67 -0
- package/components/button-group/ButtonGroup.js.map +1 -0
- package/components/button-group/styles.js +103 -0
- package/components/button-group/styles.js.map +1 -0
- package/components/button-group/types.d.ts +36 -0
- package/components/button-group/types.js +19 -0
- package/components/button-group/types.js.map +1 -0
- package/components/button-link/ButtonLink.d.ts +13 -0
- package/components/button-link/ButtonLink.js +85 -0
- package/components/button-link/ButtonLink.js.map +1 -0
- package/components/button-link/types.d.ts +18 -0
- package/components/card/Card.d.ts +13 -0
- package/components/card/Card.js +81 -0
- package/components/card/Card.js.map +1 -0
- package/components/card/intl/en-US.json.js +9 -0
- package/components/card/intl/en-US.json.js.map +1 -0
- package/components/card/intl/fr-FR.json.js +9 -0
- package/components/card/intl/fr-FR.json.js.map +1 -0
- package/components/card/intl/index.js +10 -0
- package/components/card/intl/index.js.map +1 -0
- package/components/card/styles.js +63 -0
- package/components/card/styles.js.map +1 -0
- package/components/card/types.d.ts +25 -0
- package/components/card-actions/CardActions.d.ts +9 -0
- package/components/card-actions/CardActions.js +33 -0
- package/components/card-actions/CardActions.js.map +1 -0
- package/components/card-actions/styles.js +15 -0
- package/components/card-actions/styles.js.map +1 -0
- package/components/card-actions/types.d.ts +11 -0
- package/components/card-body/CardBody.d.ts +9 -0
- package/components/card-body/CardBody.js +28 -0
- package/components/card-body/CardBody.js.map +1 -0
- package/components/card-body/styles.js +18 -0
- package/components/card-body/styles.js.map +1 -0
- package/components/card-body/types.d.ts +11 -0
- package/components/card-header/CardHeader.d.ts +9 -0
- package/components/card-header/CardHeader.js +56 -0
- package/components/card-header/CardHeader.js.map +1 -0
- package/components/card-header/styles.js +31 -0
- package/components/card-header/styles.js.map +1 -0
- package/components/card-header/types.d.ts +28 -0
- package/components/checkbox/Checkbox.d.ts +11 -0
- package/components/checkbox/Checkbox.js +135 -0
- package/components/checkbox/Checkbox.js.map +1 -0
- package/components/checkbox/styles.js +113 -0
- package/components/checkbox/styles.js.map +1 -0
- package/components/checkbox/types.d.ts +60 -0
- package/components/checkbox-group/CheckboxGroup.d.ts +10 -0
- package/components/checkbox-group/CheckboxGroup.js +101 -0
- package/components/checkbox-group/CheckboxGroup.js.map +1 -0
- package/components/checkbox-group/context.js +6 -0
- package/components/checkbox-group/context.js.map +1 -0
- package/components/checkbox-group/styles.js +78 -0
- package/components/checkbox-group/styles.js.map +1 -0
- package/components/checkbox-group/types.d.ts +72 -0
- package/components/checkbox-group/types.js +18 -0
- package/components/checkbox-group/types.js.map +1 -0
- package/components/conditional-wrapper/ConditionalWrapper.d.ts +6 -0
- package/components/conditional-wrapper/ConditionalWrapper.js +13 -0
- package/components/conditional-wrapper/ConditionalWrapper.js.map +1 -0
- package/components/conditional-wrapper/types.d.ts +10 -0
- package/components/detailed-card/DetailedCard.d.ts +15 -0
- package/components/detailed-card/DetailedCard.js +170 -0
- package/components/detailed-card/DetailedCard.js.map +1 -0
- package/components/detailed-card/intl/en-US.json.js +7 -0
- package/components/detailed-card/intl/en-US.json.js.map +1 -0
- package/components/detailed-card/intl/fr-FR.json.js +7 -0
- package/components/detailed-card/intl/fr-FR.json.js.map +1 -0
- package/components/detailed-card/intl/index.js +10 -0
- package/components/detailed-card/intl/index.js.map +1 -0
- package/components/detailed-card/styles.js +49 -0
- package/components/detailed-card/styles.js.map +1 -0
- package/components/detailed-card/types.d.ts +40 -0
- package/components/detailed-card-collapsible-section-items/DetailedCardCollapsibleSectionItems.d.ts +9 -0
- package/components/detailed-card-collapsible-section-items/DetailedCardCollapsibleSectionItems.js +33 -0
- package/components/detailed-card-collapsible-section-items/DetailedCardCollapsibleSectionItems.js.map +1 -0
- package/components/detailed-card-collapsible-section-items/styles.js +35 -0
- package/components/detailed-card-collapsible-section-items/styles.js.map +1 -0
- package/components/detailed-card-collapsible-section-items/types.d.ts +16 -0
- package/components/detailed-card-header/DetailedCardHeader.d.ts +9 -0
- package/components/detailed-card-header/DetailedCardHeader.js +45 -0
- package/components/detailed-card-header/DetailedCardHeader.js.map +1 -0
- package/components/detailed-card-header/styles.js +26 -0
- package/components/detailed-card-header/styles.js.map +1 -0
- package/components/detailed-card-header/types.d.ts +20 -0
- package/components/detailed-card-section/DetailedCardSection.d.ts +9 -0
- package/components/detailed-card-section/DetailedCardSection.js +90 -0
- package/components/detailed-card-section/DetailedCardSection.js.map +1 -0
- package/components/detailed-card-section/intl/en-US.json.js +9 -0
- package/components/detailed-card-section/intl/en-US.json.js.map +1 -0
- package/components/detailed-card-section/intl/fr-FR.json.js +9 -0
- package/components/detailed-card-section/intl/fr-FR.json.js.map +1 -0
- package/components/detailed-card-section/intl/index.js +10 -0
- package/components/detailed-card-section/intl/index.js.map +1 -0
- package/components/detailed-card-section/styles.js +69 -0
- package/components/detailed-card-section/styles.js.map +1 -0
- package/components/detailed-card-section/types.d.ts +27 -0
- package/components/detailed-card-section-item/DetailedCardSectionItem.d.ts +9 -0
- package/components/detailed-card-section-item/DetailedCardSectionItem.js +64 -0
- package/components/detailed-card-section-item/DetailedCardSectionItem.js.map +1 -0
- package/components/detailed-card-section-item/styles.js +34 -0
- package/components/detailed-card-section-item/styles.js.map +1 -0
- package/components/detailed-card-section-item/types.d.ts +35 -0
- package/components/flexbox/Flexbox.d.ts +9 -0
- package/components/flexbox/Flexbox.js +44 -0
- package/components/flexbox/Flexbox.js.map +1 -0
- package/components/flexbox/styles.js +54 -0
- package/components/flexbox/styles.js.map +1 -0
- package/components/flexbox/types.d.ts +24 -0
- package/components/focus-within-group/FocusWithinGroup.d.ts +41 -0
- package/components/focus-within-group/FocusWithinGroup.js +91 -0
- package/components/focus-within-group/FocusWithinGroup.js.map +1 -0
- package/components/focus-within-group/context.d.ts +7 -0
- package/components/focus-within-group/context.js +21 -0
- package/components/focus-within-group/context.js.map +1 -0
- package/components/focus-within-group/reducer.d.ts +5 -0
- package/components/focus-within-group/reducer.js +419 -0
- package/components/focus-within-group/reducer.js.map +1 -0
- package/components/focus-within-group/types.d.ts +143 -0
- package/components/focus-within-group/types.js +42 -0
- package/components/focus-within-group/types.js.map +1 -0
- package/components/focus-within-group/useFocusOnList.d.ts +5 -0
- package/components/focus-within-group/useFocusOnList.js +44 -0
- package/components/focus-within-group/useFocusOnList.js.map +1 -0
- package/components/focus-within-group/useFocusOnListItem.d.ts +39 -0
- package/components/focus-within-group/useFocusOnListItem.js +148 -0
- package/components/focus-within-group/useFocusOnListItem.js.map +1 -0
- package/components/gradient-border/index.d.ts +14 -0
- package/components/gradient-border/index.js +38 -0
- package/components/gradient-border/index.js.map +1 -0
- package/components/grid/Grid.d.ts +13 -0
- package/components/grid/Grid.js +45 -0
- package/components/grid/Grid.js.map +1 -0
- package/components/grid/styles.js +55 -0
- package/components/grid/styles.js.map +1 -0
- package/components/grid/types.d.ts +22 -0
- package/components/grid-item/GridItem.d.ts +9 -0
- package/components/grid-item/GridItem.js +28 -0
- package/components/grid-item/GridItem.js.map +1 -0
- package/components/grid-item/styles.js +16 -0
- package/components/grid-item/styles.js.map +1 -0
- package/components/grid-item/types.d.ts +11 -0
- package/components/heading/Heading.d.ts +9 -0
- package/components/heading/Heading.js +50 -0
- package/components/heading/Heading.js.map +1 -0
- package/components/heading/styles.js +67 -0
- package/components/heading/styles.js.map +1 -0
- package/components/heading/types.d.ts +62 -0
- package/components/heading/types.js +26 -0
- package/components/heading/types.js.map +1 -0
- package/components/icon/Icon.d.ts +10 -0
- package/components/icon/Icon.js +116 -0
- package/components/icon/Icon.js.map +1 -0
- package/components/icon/styles.js +84 -0
- package/components/icon/styles.js.map +1 -0
- package/components/icon/types.d.ts +57 -0
- package/components/icon/types.js +18 -0
- package/components/icon/types.js.map +1 -0
- package/components/icon-button/IconButton.d.ts +12 -0
- package/components/icon-button/IconButton.js +81 -0
- package/components/icon-button/IconButton.js.map +1 -0
- package/components/icon-button/styles.js +31 -0
- package/components/icon-button/styles.js.map +1 -0
- package/components/icon-button/types.d.ts +56 -0
- package/components/icon-button/types.js +19 -0
- package/components/icon-button/types.js.map +1 -0
- package/components/icon-button-link/IconButtonLink.d.ts +13 -0
- package/components/icon-button-link/IconButtonLink.js +76 -0
- package/components/icon-button-link/IconButtonLink.js.map +1 -0
- package/components/icon-button-link/types.d.ts +18 -0
- package/components/item/Item.d.ts +10 -0
- package/components/item/Item.js +225 -0
- package/components/item/Item.js.map +1 -0
- package/components/item/styles.d.ts +20 -0
- package/components/item/styles.js +129 -0
- package/components/item/styles.js.map +1 -0
- package/components/item/types.d.ts +59 -0
- package/components/item/useMenuItem.js +55 -0
- package/components/item/useMenuItem.js.map +1 -0
- package/components/link/Link.d.ts +14 -0
- package/components/link/Link.js +67 -0
- package/components/link/Link.js.map +1 -0
- package/components/link/styles.d.ts +15 -0
- package/components/link/styles.js +145 -0
- package/components/link/styles.js.map +1 -0
- package/components/link/types.d.ts +40 -0
- package/components/link-button/LinkButton.d.ts +13 -0
- package/components/link-button/LinkButton.js +66 -0
- package/components/link-button/LinkButton.js.map +1 -0
- package/components/link-button/types.d.ts +13 -0
- package/components/listbox/ActiveDescendantListbox.d.ts +8 -0
- package/components/listbox/ActiveDescendantListbox.js +74 -0
- package/components/listbox/ActiveDescendantListbox.js.map +1 -0
- package/components/listbox/Listbox.d.ts +10 -0
- package/components/listbox/Listbox.js +110 -0
- package/components/listbox/Listbox.js.map +1 -0
- package/components/listbox/RovingTabindexListbox.d.ts +8 -0
- package/components/listbox/RovingTabindexListbox.js +30 -0
- package/components/listbox/RovingTabindexListbox.js.map +1 -0
- package/components/listbox/context.d.ts +7 -0
- package/components/listbox/context.js +15 -0
- package/components/listbox/context.js.map +1 -0
- package/components/listbox/reducer.d.ts +5 -0
- package/components/listbox/reducer.js +45 -0
- package/components/listbox/reducer.js.map +1 -0
- package/components/listbox/styles.js +44 -0
- package/components/listbox/styles.js.map +1 -0
- package/components/listbox/types.d.ts +101 -0
- package/components/listbox/types.js +32 -0
- package/components/listbox/types.js.map +1 -0
- package/components/listbox/useListboxItem.d.ts +12 -0
- package/components/listbox/useListboxItem.js +90 -0
- package/components/listbox/useListboxItem.js.map +1 -0
- package/components/number/Number.d.ts +9 -0
- package/components/number/Number.js +105 -0
- package/components/number/Number.js.map +1 -0
- package/components/number/styles.js +10 -0
- package/components/number/styles.js.map +1 -0
- package/components/number/types.d.ts +63 -0
- package/components/number-field/NumberField.d.ts +10 -0
- package/components/number-field/NumberField.js +216 -0
- package/components/number-field/NumberField.js.map +1 -0
- package/components/number-field/styles.js +240 -0
- package/components/number-field/styles.js.map +1 -0
- package/components/number-field/types.d.ts +74 -0
- package/components/number-field/types.js +14 -0
- package/components/number-field/types.js.map +1 -0
- package/components/pill/Pill.d.ts +9 -0
- package/components/pill/Pill.js +93 -0
- package/components/pill/Pill.js.map +1 -0
- package/components/pill/styles.js +305 -0
- package/components/pill/styles.js.map +1 -0
- package/components/pill/types.d.ts +47 -0
- package/components/pill/types.js +15 -0
- package/components/pill/types.js.map +1 -0
- package/components/progress-bar/ProgressBar.d.ts +9 -0
- package/components/progress-bar/ProgressBar.js +35 -0
- package/components/progress-bar/ProgressBar.js.map +1 -0
- package/components/progress-bar/styles.js +38 -0
- package/components/progress-bar/styles.js.map +1 -0
- package/components/progress-bar/types.d.ts +20 -0
- package/components/radio/Radio.d.ts +11 -0
- package/components/radio/Radio.js +128 -0
- package/components/radio/Radio.js.map +1 -0
- package/components/radio/styles.js +113 -0
- package/components/radio/styles.js.map +1 -0
- package/components/radio/types.d.ts +58 -0
- package/components/radio-group/RadioGroup.d.ts +10 -0
- package/components/radio-group/RadioGroup.js +89 -0
- package/components/radio-group/RadioGroup.js.map +1 -0
- package/components/radio-group/context.js +6 -0
- package/components/radio-group/context.js.map +1 -0
- package/components/radio-group/styles.js +78 -0
- package/components/radio-group/styles.js.map +1 -0
- package/components/radio-group/types.d.ts +68 -0
- package/components/radio-group/types.js +18 -0
- package/components/radio-group/types.js.map +1 -0
- package/components/shared/styles.d.ts +17 -0
- package/components/shared/styles.js +250 -0
- package/components/shared/styles.js.map +1 -0
- package/components/shield/Shield.d.ts +9 -0
- package/components/shield/Shield.js +136 -0
- package/components/shield/Shield.js.map +1 -0
- package/components/shield/styles.js +71 -0
- package/components/shield/styles.js.map +1 -0
- package/components/shield/types.d.ts +52 -0
- package/components/shield/types.js +25 -0
- package/components/shield/types.js.map +1 -0
- package/components/side-navigation-menu/SideNavigationMenu.d.ts +9 -0
- package/components/side-navigation-menu/SideNavigationMenu.js +367 -0
- package/components/side-navigation-menu/SideNavigationMenu.js.map +1 -0
- package/components/side-navigation-menu/context.js +6 -0
- package/components/side-navigation-menu/context.js.map +1 -0
- package/components/side-navigation-menu/reducer.js +26 -0
- package/components/side-navigation-menu/reducer.js.map +1 -0
- package/components/side-navigation-menu/styles.js +196 -0
- package/components/side-navigation-menu/styles.js.map +1 -0
- package/components/side-navigation-menu/types.d.ts +72 -0
- package/components/side-navigation-menu/types.js +21 -0
- package/components/side-navigation-menu/types.js.map +1 -0
- package/components/side-navigation-menu-bar/SideNavigationMenuBar.d.ts +9 -0
- package/components/side-navigation-menu-bar/SideNavigationMenuBar.js +217 -0
- package/components/side-navigation-menu-bar/SideNavigationMenuBar.js.map +1 -0
- package/components/side-navigation-menu-bar/context.js +6 -0
- package/components/side-navigation-menu-bar/context.js.map +1 -0
- package/components/side-navigation-menu-bar/styles.js +89 -0
- package/components/side-navigation-menu-bar/styles.js.map +1 -0
- package/components/side-navigation-menu-bar/types.d.ts +65 -0
- package/components/side-navigation-menu-bar/types.js +22 -0
- package/components/side-navigation-menu-bar/types.js.map +1 -0
- package/components/side-navigation-menu-bar/useSideNavigationMenuBar.d.ts +9 -0
- package/components/side-navigation-menu-bar/useSideNavigationMenuBar.js +70 -0
- package/components/side-navigation-menu-bar/useSideNavigationMenuBar.js.map +1 -0
- package/components/side-navigation-menu-item/SideNavigationMenuItem.d.ts +9 -0
- package/components/side-navigation-menu-item/SideNavigationMenuItem.js +115 -0
- package/components/side-navigation-menu-item/SideNavigationMenuItem.js.map +1 -0
- package/components/side-navigation-menu-item/styles.js +174 -0
- package/components/side-navigation-menu-item/styles.js.map +1 -0
- package/components/side-navigation-menu-item/types.d.ts +51 -0
- package/components/skeleton/Skeleton.d.ts +15 -0
- package/components/skeleton/Skeleton.js +42 -0
- package/components/skeleton/Skeleton.js.map +1 -0
- package/components/skeleton/styles.js +84 -0
- package/components/skeleton/styles.js.map +1 -0
- package/components/skeleton/types.d.ts +18 -0
- package/components/skeleton-circle/SkeletonCircle.d.ts +9 -0
- package/components/skeleton-circle/SkeletonCircle.js +36 -0
- package/components/skeleton-circle/SkeletonCircle.js.map +1 -0
- package/components/skeleton-circle/styles.js +26 -0
- package/components/skeleton-circle/styles.js.map +1 -0
- package/components/skeleton-circle/types.d.ts +12 -0
- package/components/skeleton-text/SkeletonText.d.ts +9 -0
- package/components/skeleton-text/SkeletonText.js +42 -0
- package/components/skeleton-text/SkeletonText.js.map +1 -0
- package/components/skeleton-text/styles.js +39 -0
- package/components/skeleton-text/styles.js.map +1 -0
- package/components/skeleton-text/types.d.ts +36 -0
- package/components/skeleton-text/types.js +20 -0
- package/components/skeleton-text/types.js.map +1 -0
- package/components/spinner/Spinner.d.ts +9 -0
- package/components/spinner/Spinner.js +82 -0
- package/components/spinner/Spinner.js.map +1 -0
- package/components/spinner/images/spinner-grey-l1.svg.js +4 -0
- package/components/spinner/images/spinner-grey-l1.svg.js.map +1 -0
- package/components/spinner/images/spinner-grey-l2.svg.js +4 -0
- package/components/spinner/images/spinner-grey-l2.svg.js.map +1 -0
- package/components/spinner/images/spinner-grey-l3.svg.js +4 -0
- package/components/spinner/images/spinner-grey-l3.svg.js.map +1 -0
- package/components/spinner/images/spinner-primary-n.svg.js +4 -0
- package/components/spinner/images/spinner-primary-n.svg.js.map +1 -0
- package/components/spinner/intl/en-US.json.js +7 -0
- package/components/spinner/intl/en-US.json.js.map +1 -0
- package/components/spinner/intl/fr-FR.json.js +7 -0
- package/components/spinner/intl/fr-FR.json.js.map +1 -0
- package/components/spinner/intl/index.js +10 -0
- package/components/spinner/intl/index.js.map +1 -0
- package/components/spinner/styles.js +13 -0
- package/components/spinner/styles.js.map +1 -0
- package/components/spinner/types.d.ts +38 -0
- package/components/spinner/types.js +16 -0
- package/components/spinner/types.js.map +1 -0
- package/components/switch/Switch.d.ts +11 -0
- package/components/switch/Switch.js +137 -0
- package/components/switch/Switch.js.map +1 -0
- package/components/switch/styles.js +187 -0
- package/components/switch/styles.js.map +1 -0
- package/components/switch/types.d.ts +58 -0
- package/components/switch-group/SwitchGroup.d.ts +10 -0
- package/components/switch-group/SwitchGroup.js +101 -0
- package/components/switch-group/SwitchGroup.js.map +1 -0
- package/components/switch-group/context.js +6 -0
- package/components/switch-group/context.js.map +1 -0
- package/components/switch-group/styles.js +78 -0
- package/components/switch-group/styles.js.map +1 -0
- package/components/switch-group/types.d.ts +72 -0
- package/components/switch-group/types.js +18 -0
- package/components/switch-group/types.js.map +1 -0
- package/components/text/Text.d.ts +9 -0
- package/components/text/Text.js +51 -0
- package/components/text/Text.js.map +1 -0
- package/components/text/styles.js +112 -0
- package/components/text/styles.js.map +1 -0
- package/components/text/types.d.ts +73 -0
- package/components/text/types.js +34 -0
- package/components/text/types.js.map +1 -0
- package/components/text-area/TextArea.d.ts +10 -0
- package/components/text-area/TextArea.js +165 -0
- package/components/text-area/TextArea.js.map +1 -0
- package/components/text-area/styles.js +240 -0
- package/components/text-area/styles.js.map +1 -0
- package/components/text-area/types.d.ts +28 -0
- package/components/text-area/types.js +14 -0
- package/components/text-area/types.js.map +1 -0
- package/components/text-field/TextField.d.ts +10 -0
- package/components/text-field/TextField.js +197 -0
- package/components/text-field/TextField.js.map +1 -0
- package/components/text-field/intl/en-US.json.js +8 -0
- package/components/text-field/intl/en-US.json.js.map +1 -0
- package/components/text-field/intl/fr-FR.json.js +8 -0
- package/components/text-field/intl/fr-FR.json.js.map +1 -0
- package/components/text-field/intl/index.js +10 -0
- package/components/text-field/intl/index.js.map +1 -0
- package/components/text-field/styles.d.ts +22 -0
- package/components/text-field/styles.js +252 -0
- package/components/text-field/styles.js.map +1 -0
- package/components/text-field/types.d.ts +99 -0
- package/components/text-field/types.js +18 -0
- package/components/text-field/types.js.map +1 -0
- package/components/theme/context.d.ts +11 -0
- package/components/theme/context.js +7 -0
- package/components/theme/context.js.map +1 -0
- package/components/theme/useTheme.d.ts +5 -0
- package/components/theme/useTheme.js +13 -0
- package/components/theme/useTheme.js.map +1 -0
- package/hooks/useBoundingRect.d.ts +8 -0
- package/hooks/useBoundingRect.js +17 -0
- package/hooks/useBoundingRect.js.map +1 -0
- package/hooks/useComputeNumberOfRows.d.ts +15 -0
- package/hooks/useComputeNumberOfRows.js +40 -0
- package/hooks/useComputeNumberOfRows.js.map +1 -0
- package/hooks/useIsLoaded.d.ts +5 -0
- package/hooks/useIsLoaded.js +14 -0
- package/hooks/useIsLoaded.js.map +1 -0
- package/hooks/useWindowSize.d.ts +8 -0
- package/hooks/useWindowSize.js +42 -0
- package/hooks/useWindowSize.js.map +1 -0
- package/index.d.ts +157 -4667
- package/index.js +121 -24514
- package/index.js.map +1 -1
- package/package.json +11 -3
- package/packages/popovers/src/components/tooltip/Tooltip.js +62 -0
- package/packages/popovers/src/components/tooltip/Tooltip.js.map +1 -0
- package/packages/popovers/src/components/tooltip/context.js +6 -0
- package/packages/popovers/src/components/tooltip/context.js.map +1 -0
- package/packages/popovers/src/components/tooltip/types.js +28 -0
- package/packages/popovers/src/components/tooltip/types.js.map +1 -0
- package/packages/popovers/src/components/tooltip/useTooltip.js +78 -0
- package/packages/popovers/src/components/tooltip/useTooltip.js.map +1 -0
- package/packages/popovers/src/components/tooltip/useTooltipContext.js +13 -0
- package/packages/popovers/src/components/tooltip/useTooltipContext.js.map +1 -0
- package/packages/popovers/src/components/tooltip-content/TooltipContent.js +80 -0
- package/packages/popovers/src/components/tooltip-content/TooltipContent.js.map +1 -0
- package/packages/popovers/src/components/tooltip-content/styles.js +128 -0
- package/packages/popovers/src/components/tooltip-content/styles.js.map +1 -0
- package/packages/popovers/src/components/tooltip-trigger/TooltipTrigger.js +47 -0
- package/packages/popovers/src/components/tooltip-trigger/TooltipTrigger.js.map +1 -0
- package/react-aria/internationalized/date/DateFormatter.d.ts +25 -0
- package/react-aria/internationalized/date/DateFormatter.js +187 -0
- package/react-aria/internationalized/date/DateFormatter.js.map +1 -0
- package/react-aria/internationalized/message/MessageDictionary.d.ts +7 -0
- package/react-aria/internationalized/message/MessageDictionary.js +82 -0
- package/react-aria/internationalized/message/MessageDictionary.js.map +1 -0
- package/react-aria/internationalized/message/MessageFormatter.js +38 -0
- package/react-aria/internationalized/message/MessageFormatter.js.map +1 -0
- package/react-aria/internationalized/number/NumberFormatter.d.ts +6 -0
- package/react-aria/internationalized/number/NumberFormatter.js +222 -0
- package/react-aria/internationalized/number/NumberFormatter.js.map +1 -0
- package/react-aria/internationalized/number/NumberParser.js +288 -0
- package/react-aria/internationalized/number/NumberParser.js.map +1 -0
- package/react-aria/internationalized/string/LocalizedStringDictionary.d.ts +21 -0
- package/react-aria/internationalized/string/LocalizedStringDictionary.js +118 -0
- package/react-aria/internationalized/string/LocalizedStringDictionary.js.map +1 -0
- package/react-aria/internationalized/string/LocalizedStringFormatter.d.ts +21 -0
- package/react-aria/internationalized/string/LocalizedStringFormatter.js +70 -0
- package/react-aria/internationalized/string/LocalizedStringFormatter.js.map +1 -0
- package/react-aria/react-aria/button/useButton.js +95 -0
- package/react-aria/react-aria/button/useButton.js.map +1 -0
- package/react-aria/react-aria/focus/focusSafely.js +33 -0
- package/react-aria/react-aria/focus/focusSafely.js.map +1 -0
- package/react-aria/react-aria/focus/useFocusRing.js +57 -0
- package/react-aria/react-aria/focus/useFocusRing.js.map +1 -0
- package/react-aria/react-aria/focus/useFocusable.js +47 -0
- package/react-aria/react-aria/focus/useFocusable.js.map +1 -0
- package/react-aria/react-aria/form/useFormValidation.js +112 -0
- package/react-aria/react-aria/form/useFormValidation.js.map +1 -0
- package/react-aria/react-aria/i18n/context.d.ts +19 -0
- package/react-aria/react-aria/i18n/context.js +41 -0
- package/react-aria/react-aria/i18n/context.js.map +1 -0
- package/react-aria/react-aria/i18n/useCollator.d.ts +8 -0
- package/react-aria/react-aria/i18n/useCollator.js +25 -0
- package/react-aria/react-aria/i18n/useCollator.js.map +1 -0
- package/react-aria/react-aria/i18n/useDateFormatter.d.ts +13 -0
- package/react-aria/react-aria/i18n/useDateFormatter.js +39 -0
- package/react-aria/react-aria/i18n/useDateFormatter.js.map +1 -0
- package/react-aria/react-aria/i18n/useDefaultLocale.d.ts +10 -0
- package/react-aria/react-aria/i18n/useDefaultLocale.js +67 -0
- package/react-aria/react-aria/i18n/useDefaultLocale.js.map +1 -0
- package/react-aria/react-aria/i18n/useFilter.d.ts +15 -0
- package/react-aria/react-aria/i18n/useFilter.js +58 -0
- package/react-aria/react-aria/i18n/useFilter.js.map +1 -0
- package/react-aria/react-aria/i18n/useListFormatter.d.ts +8 -0
- package/react-aria/react-aria/i18n/useListFormatter.js +20 -0
- package/react-aria/react-aria/i18n/useListFormatter.js.map +1 -0
- package/react-aria/react-aria/i18n/useLocalizedStringFormatter.d.ts +15 -0
- package/react-aria/react-aria/i18n/useLocalizedStringFormatter.js +38 -0
- package/react-aria/react-aria/i18n/useLocalizedStringFormatter.js.map +1 -0
- package/react-aria/react-aria/i18n/useMessageFormatter.d.ts +13 -0
- package/react-aria/react-aria/i18n/useMessageFormatter.js +32 -0
- package/react-aria/react-aria/i18n/useMessageFormatter.js.map +1 -0
- package/react-aria/react-aria/i18n/useNumberFormatter.d.ts +10 -0
- package/react-aria/react-aria/i18n/useNumberFormatter.js +21 -0
- package/react-aria/react-aria/i18n/useNumberFormatter.js.map +1 -0
- package/react-aria/react-aria/i18n/utils.js +49 -0
- package/react-aria/react-aria/i18n/utils.js.map +1 -0
- package/react-aria/react-aria/interactions/context.js +20 -0
- package/react-aria/react-aria/interactions/context.js.map +1 -0
- package/react-aria/react-aria/interactions/createEventHandler.js +48 -0
- package/react-aria/react-aria/interactions/createEventHandler.js.map +1 -0
- package/react-aria/react-aria/interactions/textSelection.js +85 -0
- package/react-aria/react-aria/interactions/textSelection.js.map +1 -0
- package/react-aria/react-aria/interactions/useFocus.js +53 -0
- package/react-aria/react-aria/interactions/useFocus.js.map +1 -0
- package/react-aria/react-aria/interactions/useFocusVisible.js +236 -0
- package/react-aria/react-aria/interactions/useFocusVisible.js.map +1 -0
- package/react-aria/react-aria/interactions/useFocusWithin.js +65 -0
- package/react-aria/react-aria/interactions/useFocusWithin.js.map +1 -0
- package/react-aria/react-aria/interactions/useKeyboard.js +27 -0
- package/react-aria/react-aria/interactions/useKeyboard.js.map +1 -0
- package/react-aria/react-aria/interactions/usePress.js +769 -0
- package/react-aria/react-aria/interactions/usePress.js.map +1 -0
- package/react-aria/react-aria/interactions/useScrollWheel.js +31 -0
- package/react-aria/react-aria/interactions/useScrollWheel.js.map +1 -0
- package/react-aria/react-aria/interactions/utils.js +116 -0
- package/react-aria/react-aria/interactions/utils.js.map +1 -0
- package/react-aria/react-aria/label/useField.js +42 -0
- package/react-aria/react-aria/label/useField.js.map +1 -0
- package/react-aria/react-aria/label/useLabel.js +42 -0
- package/react-aria/react-aria/label/useLabel.js.map +1 -0
- package/react-aria/react-aria/live-announcer/LiveAnnouncer.js +121 -0
- package/react-aria/react-aria/live-announcer/LiveAnnouncer.js.map +1 -0
- package/react-aria/react-aria/numberfield/intl/en-US.json.js +11 -0
- package/react-aria/react-aria/numberfield/intl/en-US.json.js.map +1 -0
- package/react-aria/react-aria/numberfield/intl/fr-FR.json.js +11 -0
- package/react-aria/react-aria/numberfield/intl/fr-FR.json.js.map +1 -0
- package/react-aria/react-aria/numberfield/intl/index.js +10 -0
- package/react-aria/react-aria/numberfield/intl/index.js.map +1 -0
- package/react-aria/react-aria/numberfield/useNumberField.js +294 -0
- package/react-aria/react-aria/numberfield/useNumberField.js.map +1 -0
- package/react-aria/react-aria/spinbutton/intl/en-US.json.js +7 -0
- package/react-aria/react-aria/spinbutton/intl/en-US.json.js.map +1 -0
- package/react-aria/react-aria/spinbutton/intl/fr-FR.json.js +7 -0
- package/react-aria/react-aria/spinbutton/intl/fr-FR.json.js.map +1 -0
- package/react-aria/react-aria/spinbutton/intl/index.js +10 -0
- package/react-aria/react-aria/spinbutton/intl/index.js.map +1 -0
- package/react-aria/react-aria/spinbutton/useSpinButton.js +168 -0
- package/react-aria/react-aria/spinbutton/useSpinButton.js.map +1 -0
- package/react-aria/react-aria/ssr/SSRProvider.d.ts +22 -0
- package/react-aria/react-aria/ssr/SSRProvider.js +157 -0
- package/react-aria/react-aria/ssr/SSRProvider.js.map +1 -0
- package/react-aria/react-aria/textfield/useFormattedTextField.js +142 -0
- package/react-aria/react-aria/textfield/useFormattedTextField.js.map +1 -0
- package/react-aria/react-aria/textfield/useTextField.js +156 -0
- package/react-aria/react-aria/textfield/useTextField.js.map +1 -0
- package/react-aria/react-aria/utils/chain.js +33 -0
- package/react-aria/react-aria/utils/chain.js.map +1 -0
- package/react-aria/react-aria/utils/domHelpers.js +14 -0
- package/react-aria/react-aria/utils/domHelpers.js.map +1 -0
- package/react-aria/react-aria/utils/filterDOMProps.js +45 -0
- package/react-aria/react-aria/utils/filterDOMProps.js.map +1 -0
- package/react-aria/react-aria/utils/focusWithoutScrolling.js +88 -0
- package/react-aria/react-aria/utils/focusWithoutScrolling.js.map +1 -0
- package/react-aria/react-aria/utils/isVirtualEvent.js +51 -0
- package/react-aria/react-aria/utils/isVirtualEvent.js.map +1 -0
- package/react-aria/react-aria/utils/mergeProps.js +48 -0
- package/react-aria/react-aria/utils/mergeProps.js.map +1 -0
- package/react-aria/react-aria/utils/openLink.js +55 -0
- package/react-aria/react-aria/utils/openLink.js.map +1 -0
- package/react-aria/react-aria/utils/platform.js +69 -0
- package/react-aria/react-aria/utils/platform.js.map +1 -0
- package/react-aria/react-aria/utils/runAfterTransition.js +100 -0
- package/react-aria/react-aria/utils/runAfterTransition.js.map +1 -0
- package/react-aria/react-aria/utils/useDeepMemo.js +16 -0
- package/react-aria/react-aria/utils/useDeepMemo.js.map +1 -0
- package/react-aria/react-aria/utils/useEffectEvent.js +31 -0
- package/react-aria/react-aria/utils/useEffectEvent.js.map +1 -0
- package/react-aria/react-aria/utils/useEvent.js +21 -0
- package/react-aria/react-aria/utils/useEvent.js.map +1 -0
- package/react-aria/react-aria/utils/useFormReset.js +23 -0
- package/react-aria/react-aria/utils/useFormReset.js.map +1 -0
- package/react-aria/react-aria/utils/useGlobalListeners.js +44 -0
- package/react-aria/react-aria/utils/useGlobalListeners.js.map +1 -0
- package/react-aria/react-aria/utils/useId.js +86 -0
- package/react-aria/react-aria/utils/useId.js.map +1 -0
- package/react-aria/react-aria/utils/useLabels.js +39 -0
- package/react-aria/react-aria/utils/useLabels.js.map +1 -0
- package/react-aria/react-aria/utils/useLayoutEffect.js +21 -0
- package/react-aria/react-aria/utils/useLayoutEffect.js.map +1 -0
- package/react-aria/react-aria/utils/useSyncRef.js +29 -0
- package/react-aria/react-aria/utils/useSyncRef.js.map +1 -0
- package/react-aria/react-aria/utils/useValueEffect.js +52 -0
- package/react-aria/react-aria/utils/useValueEffect.js.map +1 -0
- package/react-aria/react-stately/form/useFormValidationState.js +191 -0
- package/react-aria/react-stately/form/useFormValidationState.js.map +1 -0
- package/react-aria/react-stately/numberfield/useNumberFieldState.js +196 -0
- package/react-aria/react-stately/numberfield/useNumberFieldState.js.map +1 -0
- package/react-aria/react-stately/utils/number.js +56 -0
- package/react-aria/react-stately/utils/number.js.map +1 -0
- package/react-aria/react-stately/utils/useControlledState.js +68 -0
- package/react-aria/react-stately/utils/useControlledState.js.map +1 -0
- package/react-aria/react-types/shared/locale.d.ts +3 -0
- package/types/colors.d.ts +102 -0
- package/types/colors.js +64 -0
- package/types/colors.js.map +1 -0
- package/types/fonts.d.ts +12 -0
- package/types/fonts.js +10 -0
- package/types/fonts.js.map +1 -0
- package/types/helpers.d.ts +23 -0
- package/types/products.d.ts +40 -0
- package/types/products.js +38 -0
- package/types/products.js.map +1 -0
- package/types/styles.d.ts +283 -0
- package/types/styles.js +161 -0
- package/types/styles.js.map +1 -0
- package/utils/filterComponents.d.ts +12 -0
- package/utils/filterComponents.js +24 -0
- package/utils/filterComponents.js.map +1 -0
- package/utils/getTextWidth.d.ts +6 -0
- package/utils/getTextWidth.js +32 -0
- package/utils/getTextWidth.js.map +1 -0
- package/utils/isComponent.d.ts +12 -0
- package/utils/isComponent.js +15 -0
- package/utils/isComponent.js.map +1 -0
- package/utils/partitionComponents.d.ts +10 -0
- package/utils/partitionComponents.js +26 -0
- package/utils/partitionComponents.js.map +1 -0
- package/utils/redsift-design-tokens.d.ts +1389 -0
- package/utils/redsift-design-tokens.js +1391 -0
- package/utils/redsift-design-tokens.js.map +1 -0
- package/utils/useId.d.ts +6 -0
- package/utils/useId.js +42 -0
- package/utils/useId.js.map +1 -0
- package/utils/warnIfNoAccessibleLabelFound.d.ts +11 -0
- package/utils/warnIfNoAccessibleLabelFound.js +20 -0
- package/utils/warnIfNoAccessibleLabelFound.js.map +1 -0
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { objectWithoutProperties as _objectWithoutProperties, extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
|
+
import React__default from 'react';
|
|
3
|
+
import { SideNavigationMenuItem } from '../side-navigation-menu-item/SideNavigationMenuItem.js';
|
|
4
|
+
import { SideNavigationMenu } from '../side-navigation-menu/SideNavigationMenu.js';
|
|
5
|
+
|
|
6
|
+
const _excluded = ["title", "href", "ref"],
|
|
7
|
+
_excluded2 = ["title", "children", "ref"],
|
|
8
|
+
_excluded3 = ["title", "href", "ref"];
|
|
9
|
+
const isMenu = item => {
|
|
10
|
+
return item.children !== undefined;
|
|
11
|
+
};
|
|
12
|
+
const useSideNavigationMenuBar = _ref => {
|
|
13
|
+
let {
|
|
14
|
+
items,
|
|
15
|
+
isActive
|
|
16
|
+
} = _ref;
|
|
17
|
+
const menuBarChildren = [];
|
|
18
|
+
items.map(item => {
|
|
19
|
+
if (!isMenu(item)) {
|
|
20
|
+
const {
|
|
21
|
+
title,
|
|
22
|
+
href,
|
|
23
|
+
ref
|
|
24
|
+
} = item,
|
|
25
|
+
rest = _objectWithoutProperties(item, _excluded);
|
|
26
|
+
menuBarChildren.push( /*#__PURE__*/React__default.createElement(SideNavigationMenuItem, _extends({
|
|
27
|
+
key: title,
|
|
28
|
+
isCurrent: isActive ? isActive(href) : undefined
|
|
29
|
+
}, rest, {
|
|
30
|
+
href: href,
|
|
31
|
+
ref: ref
|
|
32
|
+
}), title));
|
|
33
|
+
} else {
|
|
34
|
+
const {
|
|
35
|
+
title,
|
|
36
|
+
children,
|
|
37
|
+
ref
|
|
38
|
+
} = item,
|
|
39
|
+
rest = _objectWithoutProperties(item, _excluded2);
|
|
40
|
+
menuBarChildren.push( /*#__PURE__*/React__default.createElement(SideNavigationMenu, _extends({
|
|
41
|
+
key: title,
|
|
42
|
+
"aria-label": title,
|
|
43
|
+
isExpanded: isActive ? children.filter(child => isActive(child.href)).length > 0 : undefined,
|
|
44
|
+
hasBadge: children.filter(child => child.badge).length > 0
|
|
45
|
+
}, rest, {
|
|
46
|
+
ref: ref
|
|
47
|
+
}), children.map(child => {
|
|
48
|
+
const {
|
|
49
|
+
title,
|
|
50
|
+
href,
|
|
51
|
+
ref
|
|
52
|
+
} = child,
|
|
53
|
+
rest = _objectWithoutProperties(child, _excluded3);
|
|
54
|
+
return /*#__PURE__*/React__default.createElement(SideNavigationMenuItem, _extends({
|
|
55
|
+
key: title,
|
|
56
|
+
href: href,
|
|
57
|
+
isCurrent: isActive ? isActive(href) : undefined
|
|
58
|
+
}, rest, {
|
|
59
|
+
ref: ref
|
|
60
|
+
}), title);
|
|
61
|
+
})));
|
|
62
|
+
}
|
|
63
|
+
});
|
|
64
|
+
return {
|
|
65
|
+
children: menuBarChildren
|
|
66
|
+
};
|
|
67
|
+
};
|
|
68
|
+
|
|
69
|
+
export { useSideNavigationMenuBar };
|
|
70
|
+
//# sourceMappingURL=useSideNavigationMenuBar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useSideNavigationMenuBar.js","sources":["../../../src/components/side-navigation-menu-bar/useSideNavigationMenuBar.tsx"],"sourcesContent":["import React, { MutableRefObject } from 'react';\nimport { SideNavigationMenu } from '../side-navigation-menu';\nimport { SideNavigationMenuItem } from '../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"],"names":["isMenu","item","children","undefined","useSideNavigationMenuBar","_ref","items","isActive","menuBarChildren","map","title","href","ref","rest","_objectWithoutProperties","_excluded","push","React","createElement","SideNavigationMenuItem","_extends","key","isCurrent","_excluded2","SideNavigationMenu","isExpanded","filter","child","length","hasBadge","badge","_excluded3"],"mappings":";;;;;;;;AAUA,MAAMA,MAAM,GAAIC,IAAqB,IAAmB;AACtD,EAAA,OAAQA,IAAI,CAAUC,QAAQ,KAAKC,SAAS,CAAA;AAC9C,CAAC,CAAA;AAOYC,MAAAA,wBAAwB,GAAGC,IAAA,IAGsC;EAAA,IAHrC;IACvCC,KAAK;AACLC,IAAAA,QAAAA;AAC6B,GAAC,GAAAF,IAAA,CAAA;EAC9B,MAAMG,eAAyD,GAAG,EAAE,CAAA;AAEpEF,EAAAA,KAAK,CAACG,GAAG,CAAER,IAAI,IAAK;AAClB,IAAA,IAAI,CAACD,MAAM,CAACC,IAAI,CAAC,EAAE;MACjB,MAAM;UAAES,KAAK;UAAEC,IAAI;AAAEC,UAAAA,GAAAA;AAAa,SAAC,GAAGX,IAAI;AAAbY,QAAAA,IAAI,GAAAC,wBAAA,CAAKb,IAAI,EAAAc,SAAA,CAAA,CAAA;MAC1CP,eAAe,CAACQ,IAAI,eAClBC,cAAA,CAAAC,aAAA,CAACC,sBAAsB,EAAAC,QAAA,CAAA;AACrBC,QAAAA,GAAG,EAAEX,KAAM;AACXY,QAAAA,SAAS,EAAEf,QAAQ,GAAGA,QAAQ,CAACI,IAAK,CAAC,GAAGR,SAAAA;AAAU,OAAA,EAC9CU,IAAI,EAAA;AACRF,QAAAA,IAAI,EAAEA,IAAK;AACXC,QAAAA,GAAG,EAAEA,GAAAA;OAEJF,CAAAA,EAAAA,KACqB,CAC1B,CAAC,CAAA;AACH,KAAC,MAAM;MACL,MAAM;UAAEA,KAAK;UAAER,QAAQ;AAAEU,UAAAA,GAAAA;AAAa,SAAC,GAAGX,IAAI;AAAbY,QAAAA,IAAI,GAAAC,wBAAA,CAAKb,IAAI,EAAAsB,UAAA,CAAA,CAAA;MAC9Cf,eAAe,CAACQ,IAAI,eAClBC,cAAA,CAAAC,aAAA,CAACM,kBAAkB,EAAAJ,QAAA,CAAA;AACjBC,QAAAA,GAAG,EAAEX,KAAM;AACX,QAAA,YAAA,EAAYA,KAAM;QAClBe,UAAU,EACRlB,QAAQ,GACJL,QAAQ,CAACwB,MAAM,CAAEC,KAAK,IAAKpB,QAAQ,CAACoB,KAAK,CAAChB,IAAK,CAAC,CAAC,CAACiB,MAAM,GAAG,CAAC,GAC5DzB,SACL;AACD0B,QAAAA,QAAQ,EAAE3B,QAAQ,CAACwB,MAAM,CAAEC,KAAK,IAAKA,KAAK,CAACG,KAAK,CAAC,CAACF,MAAM,GAAG,CAAA;AAAE,OAAA,EACzDf,IAAI,EAAA;AACRD,QAAAA,GAAG,EAAEA,GAAAA;AAAwC,OAAA,CAAA,EAE5CV,QAAQ,CAACO,GAAG,CAAEkB,KAAK,IAAK;QACvB,MAAM;YAAEjB,KAAK;YAAEC,IAAI;AAAEC,YAAAA,GAAAA;AAAa,WAAC,GAAGe,KAAK;AAAdd,UAAAA,IAAI,GAAAC,wBAAA,CAAKa,KAAK,EAAAI,UAAA,CAAA,CAAA;AAC3C,QAAA,oBACEd,cAAA,CAAAC,aAAA,CAACC,sBAAsB,EAAAC,QAAA,CAAA;AACrBC,UAAAA,GAAG,EAAEX,KAAM;AACXC,UAAAA,IAAI,EAAEA,IAAK;AACXW,UAAAA,SAAS,EAAEf,QAAQ,GAAGA,QAAQ,CAACI,IAAK,CAAC,GAAGR,SAAAA;AAAU,SAAA,EAC9CU,IAAI,EAAA;AACRD,UAAAA,GAAG,EAAEA,GAAAA;AAA2C,SAAA,CAAA,EAE/CF,KACqB,CAAC,CAAA;OAE5B,CACiB,CACtB,CAAC,CAAA;AACH,KAAA;AACF,GAAC,CAAC,CAAA;EAEF,OAAO;AACLR,IAAAA,QAAQ,EAAEM,eAAAA;GACX,CAAA;AACH;;;;"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { SideNavigationMenuItemProps } from './types.js';
|
|
2
|
+
import { Comp } from '../../types/helpers.js';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* The SideNavigationMenuItem component.
|
|
6
|
+
*/
|
|
7
|
+
declare const SideNavigationMenuItem: Comp<SideNavigationMenuItemProps, HTMLAnchorElement>;
|
|
8
|
+
|
|
9
|
+
export { SideNavigationMenuItem };
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import { objectWithoutProperties as _objectWithoutProperties, extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
|
+
import React__default, { forwardRef, useRef, useContext, useState, useEffect } from 'react';
|
|
3
|
+
import classNames from 'classnames';
|
|
4
|
+
import { warnIfNoAccessibleLabelFound } from '../../utils/warnIfNoAccessibleLabelFound.js';
|
|
5
|
+
import { SideNavigationMenuBarContext } from '../side-navigation-menu-bar/context.js';
|
|
6
|
+
import { SideNavigationMenuContext } from '../side-navigation-menu/context.js';
|
|
7
|
+
import { StyledSideNavigationMenuItemIndicatorContainer, StyledSideNavigationMenuItemIndicator, StyledSideNavigationMenuItem, StyledSideNavigationMenuItemBorder } from './styles.js';
|
|
8
|
+
import { IconSize } from '../icon/types.js';
|
|
9
|
+
import { Badge } from '../badge/Badge.js';
|
|
10
|
+
import { BadgeVariant } from '../badge/types.js';
|
|
11
|
+
import { useTheme } from '../theme/useTheme.js';
|
|
12
|
+
import { Flexbox } from '../flexbox/Flexbox.js';
|
|
13
|
+
import { Icon } from '../icon/Icon.js';
|
|
14
|
+
|
|
15
|
+
const _excluded = ["as", "badge", "badgeProps", "children", "className", "color", "hasBorder", "href", "icon", "iconProps", "iconRef", "isCurrent", "isDisabled", "isSecondLevel", "onClick", "onKeyDown", "tabIndex", "theme"];
|
|
16
|
+
const COMPONENT_NAME = 'SideNavigationMenuItem';
|
|
17
|
+
const CLASSNAME = 'redsift-side-navigation-menu-item';
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* The SideNavigationMenuItem component.
|
|
21
|
+
*/
|
|
22
|
+
const SideNavigationMenuItem = /*#__PURE__*/forwardRef((props, ref) => {
|
|
23
|
+
const menuItemRef = ref || useRef();
|
|
24
|
+
const {
|
|
25
|
+
as,
|
|
26
|
+
badge,
|
|
27
|
+
badgeProps,
|
|
28
|
+
children,
|
|
29
|
+
className,
|
|
30
|
+
color,
|
|
31
|
+
hasBorder,
|
|
32
|
+
href,
|
|
33
|
+
icon,
|
|
34
|
+
iconProps,
|
|
35
|
+
iconRef = useRef(),
|
|
36
|
+
isCurrent,
|
|
37
|
+
isDisabled,
|
|
38
|
+
isSecondLevel,
|
|
39
|
+
onClick,
|
|
40
|
+
onKeyDown,
|
|
41
|
+
tabIndex,
|
|
42
|
+
theme: propsTheme
|
|
43
|
+
} = props,
|
|
44
|
+
forwardedProps = _objectWithoutProperties(props, _excluded);
|
|
45
|
+
warnIfNoAccessibleLabelFound(props, [children], 'SideNavigationMenuItem');
|
|
46
|
+
const sideNavigationMenuBarContext = useContext(SideNavigationMenuBarContext);
|
|
47
|
+
const sideNavigationMenuContext = useContext(SideNavigationMenuContext);
|
|
48
|
+
const theme = useTheme(propsTheme);
|
|
49
|
+
const [isFirstChild, setIsFirstChild] = useState(false);
|
|
50
|
+
const {
|
|
51
|
+
menuItems
|
|
52
|
+
} = sideNavigationMenuContext || sideNavigationMenuBarContext || {};
|
|
53
|
+
useEffect(() => {
|
|
54
|
+
if (!(sideNavigationMenuContext || sideNavigationMenuBarContext)) {
|
|
55
|
+
setIsFirstChild(true);
|
|
56
|
+
return;
|
|
57
|
+
}
|
|
58
|
+
const menuItemNode = menuItemRef.current;
|
|
59
|
+
if (menuItemNode) {
|
|
60
|
+
if (!menuItems.size) {
|
|
61
|
+
setIsFirstChild(true);
|
|
62
|
+
}
|
|
63
|
+
menuItems.add(menuItemNode);
|
|
64
|
+
}
|
|
65
|
+
return () => {
|
|
66
|
+
menuItems.delete(menuItemNode);
|
|
67
|
+
};
|
|
68
|
+
}, [menuItems]);
|
|
69
|
+
const sideNavigationVariant = sideNavigationMenuBarContext === null || sideNavigationMenuBarContext === void 0 ? void 0 : sideNavigationMenuBarContext.sideNavigationMenuBarVariant;
|
|
70
|
+
return /*#__PURE__*/React__default.createElement(Flexbox, {
|
|
71
|
+
flexDirection: "column",
|
|
72
|
+
gap: "0px"
|
|
73
|
+
}, /*#__PURE__*/React__default.createElement(Flexbox, {
|
|
74
|
+
flexDirection: "row",
|
|
75
|
+
gap: "0px"
|
|
76
|
+
}, !isSecondLevel ? /*#__PURE__*/React__default.createElement(StyledSideNavigationMenuItemIndicatorContainer, null, isCurrent ? /*#__PURE__*/React__default.createElement(StyledSideNavigationMenuItemIndicator, {
|
|
77
|
+
$theme: theme
|
|
78
|
+
}) : null) : null, /*#__PURE__*/React__default.createElement(StyledSideNavigationMenuItem, _extends({
|
|
79
|
+
as: as,
|
|
80
|
+
role: "menuitem"
|
|
81
|
+
}, forwardedProps, {
|
|
82
|
+
$color: color,
|
|
83
|
+
$hasIcon: icon !== undefined,
|
|
84
|
+
$isCurrent: isCurrent,
|
|
85
|
+
$isDisabled: isDisabled,
|
|
86
|
+
$isSecondLevel: isSecondLevel,
|
|
87
|
+
$theme: theme,
|
|
88
|
+
$variant: sideNavigationVariant,
|
|
89
|
+
"aria-current": isCurrent ? 'page' : undefined,
|
|
90
|
+
"aria-disabled": isDisabled,
|
|
91
|
+
className: classNames(SideNavigationMenuItem.className, className),
|
|
92
|
+
href: !isDisabled ? href : undefined,
|
|
93
|
+
onClick: isDisabled ? undefined : onClick,
|
|
94
|
+
onKeyDown: isDisabled ? undefined : onKeyDown,
|
|
95
|
+
ref: menuItemRef,
|
|
96
|
+
tabIndex: tabIndex !== undefined ? tabIndex : !sideNavigationMenuContext && isFirstChild ? 0 : -1
|
|
97
|
+
}), !isSecondLevel || icon ? /*#__PURE__*/React__default.createElement(Icon, _extends({
|
|
98
|
+
color: `var(--redsift-side-navigation-color-menu-item-text-${isSecondLevel || isDisabled ? 'disabled' : 'resting'})`
|
|
99
|
+
}, iconProps, {
|
|
100
|
+
icon: icon,
|
|
101
|
+
ref: iconRef,
|
|
102
|
+
className: "first",
|
|
103
|
+
size: isSecondLevel ? IconSize.small : IconSize.medium
|
|
104
|
+
})) : null, /*#__PURE__*/React__default.createElement("span", {
|
|
105
|
+
className: "content"
|
|
106
|
+
}, children), badge ? /*#__PURE__*/React__default.createElement(Badge, _extends({
|
|
107
|
+
variant: BadgeVariant.standard,
|
|
108
|
+
color: "error"
|
|
109
|
+
}, badgeProps), badge) : null)), isSecondLevel && hasBorder ? /*#__PURE__*/React__default.createElement(StyledSideNavigationMenuItemBorder, null) : null);
|
|
110
|
+
});
|
|
111
|
+
SideNavigationMenuItem.className = CLASSNAME;
|
|
112
|
+
SideNavigationMenuItem.displayName = COMPONENT_NAME;
|
|
113
|
+
|
|
114
|
+
export { SideNavigationMenuItem };
|
|
115
|
+
//# sourceMappingURL=SideNavigationMenuItem.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SideNavigationMenuItem.js","sources":["../../../src/components/side-navigation-menu-item/SideNavigationMenuItem.tsx"],"sourcesContent":["import React, { forwardRef, MutableRefObject, useContext, useEffect, useRef, useState } from 'react';\nimport classNames from 'classnames';\nimport { Comp } from '../../types';\nimport { Icon, IconSize } from '../icon';\nimport { warnIfNoAccessibleLabelFound } from '../../utils/warnIfNoAccessibleLabelFound';\nimport { SideNavigationMenuBarContext } from '../side-navigation-menu-bar/context';\nimport { SideNavigationMenuContext } from '../side-navigation-menu/context';\nimport {\n StyledSideNavigationMenuItem,\n StyledSideNavigationMenuItemBorder,\n StyledSideNavigationMenuItemIndicator,\n StyledSideNavigationMenuItemIndicatorContainer,\n} from './styles';\nimport { SideNavigationMenuItemProps } from './types';\nimport { Badge, BadgeVariant } from '../badge';\nimport { Flexbox } from '../flexbox';\nimport { useTheme } from '../theme';\n\nconst COMPONENT_NAME = 'SideNavigationMenuItem';\nconst CLASSNAME = 'redsift-side-navigation-menu-item';\n\n/**\n * The SideNavigationMenuItem component.\n */\nexport const SideNavigationMenuItem: Comp<SideNavigationMenuItemProps, HTMLAnchorElement> = forwardRef((props, ref) => {\n const menuItemRef = ref || useRef<HTMLAnchorElement>();\n\n const {\n as,\n badge,\n badgeProps,\n children,\n className,\n color,\n hasBorder,\n href,\n icon,\n iconProps,\n iconRef = useRef<HTMLElement>(),\n isCurrent,\n isDisabled,\n isSecondLevel,\n onClick,\n onKeyDown,\n tabIndex,\n theme: propsTheme,\n ...forwardedProps\n } = props;\n\n warnIfNoAccessibleLabelFound(props, [children], 'SideNavigationMenuItem');\n\n const sideNavigationMenuBarContext = useContext(SideNavigationMenuBarContext);\n const sideNavigationMenuContext = useContext(SideNavigationMenuContext);\n const theme = useTheme(propsTheme);\n\n const [isFirstChild, setIsFirstChild] = useState(false);\n const { menuItems } = sideNavigationMenuContext || sideNavigationMenuBarContext || {};\n\n useEffect(() => {\n if (!(sideNavigationMenuContext || sideNavigationMenuBarContext)) {\n setIsFirstChild(true);\n return;\n }\n\n const menuItemNode = (menuItemRef as MutableRefObject<HTMLAnchorElement>).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 const sideNavigationVariant = sideNavigationMenuBarContext?.sideNavigationMenuBarVariant;\n\n return (\n <Flexbox flexDirection=\"column\" gap=\"0px\">\n <Flexbox flexDirection=\"row\" gap=\"0px\">\n {!isSecondLevel ? (\n <StyledSideNavigationMenuItemIndicatorContainer>\n {isCurrent ? <StyledSideNavigationMenuItemIndicator $theme={theme} /> : null}\n </StyledSideNavigationMenuItemIndicatorContainer>\n ) : null}\n <StyledSideNavigationMenuItem\n as={as as any}\n role=\"menuitem\"\n {...forwardedProps}\n $color={color}\n $hasIcon={icon !== undefined}\n $isCurrent={isCurrent}\n $isDisabled={isDisabled}\n $isSecondLevel={isSecondLevel}\n $theme={theme}\n $variant={sideNavigationVariant}\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={tabIndex !== undefined ? tabIndex : !sideNavigationMenuContext && isFirstChild ? 0 : -1}\n >\n {!isSecondLevel || icon ? (\n <Icon\n color={`var(--redsift-side-navigation-color-menu-item-text-${\n isSecondLevel || isDisabled ? 'disabled' : 'resting'\n })`}\n {...iconProps}\n icon={icon!}\n ref={iconRef as MutableRefObject<HTMLElement>}\n className=\"first\"\n size={isSecondLevel ? IconSize.small : IconSize.medium}\n />\n ) : null}\n <span className=\"content\">{children}</span>\n {badge ? (\n <Badge variant={BadgeVariant.standard} color=\"error\" {...badgeProps}>\n {badge}\n </Badge>\n ) : null}\n </StyledSideNavigationMenuItem>\n </Flexbox>\n {isSecondLevel && hasBorder ? <StyledSideNavigationMenuItemBorder /> : null}\n </Flexbox>\n );\n});\nSideNavigationMenuItem.className = CLASSNAME;\nSideNavigationMenuItem.displayName = COMPONENT_NAME;\n"],"names":["COMPONENT_NAME","CLASSNAME","SideNavigationMenuItem","forwardRef","props","ref","menuItemRef","useRef","as","badge","badgeProps","children","className","color","hasBorder","href","icon","iconProps","iconRef","isCurrent","isDisabled","isSecondLevel","onClick","onKeyDown","tabIndex","theme","propsTheme","forwardedProps","_objectWithoutProperties","_excluded","warnIfNoAccessibleLabelFound","sideNavigationMenuBarContext","useContext","SideNavigationMenuBarContext","sideNavigationMenuContext","SideNavigationMenuContext","useTheme","isFirstChild","setIsFirstChild","useState","menuItems","useEffect","menuItemNode","current","size","add","delete","sideNavigationVariant","sideNavigationMenuBarVariant","React","createElement","Flexbox","flexDirection","gap","StyledSideNavigationMenuItemIndicatorContainer","StyledSideNavigationMenuItemIndicator","$theme","StyledSideNavigationMenuItem","_extends","role","$color","$hasIcon","undefined","$isCurrent","$isDisabled","$isSecondLevel","$variant","classNames","Icon","IconSize","small","medium","Badge","variant","BadgeVariant","standard","StyledSideNavigationMenuItemBorder","displayName"],"mappings":"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"}
|
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
import styled, { css } from 'styled-components';
|
|
2
|
+
import { SideNavigationMenuBarVariant } from '../side-navigation-menu-bar/types.js';
|
|
3
|
+
|
|
4
|
+
const StyledSideNavigationMenuItemIndicatorContainer = styled.div`
|
|
5
|
+
min-width: 4px;
|
|
6
|
+
`;
|
|
7
|
+
const StyledSideNavigationMenuItemIndicator = styled.div`
|
|
8
|
+
position: relative;
|
|
9
|
+
width: 4px;
|
|
10
|
+
height: 40px;
|
|
11
|
+
border-radius: 0px 4px 4px 0px;
|
|
12
|
+
background-color: ${_ref => {
|
|
13
|
+
let {
|
|
14
|
+
$theme
|
|
15
|
+
} = _ref;
|
|
16
|
+
return `var(--redsift-color-${$theme}-components-side-navigation-current-marker)`;
|
|
17
|
+
}};
|
|
18
|
+
`;
|
|
19
|
+
const StyledSideNavigationMenuItemBorder = styled.div`
|
|
20
|
+
position: relative;
|
|
21
|
+
width: 100%;
|
|
22
|
+
height: 1px;
|
|
23
|
+
background-color: var(--redsift-color-neutral-light-grey);
|
|
24
|
+
margin-left: 62px;
|
|
25
|
+
margin-top: -1px;
|
|
26
|
+
`;
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* Component style.
|
|
30
|
+
*/
|
|
31
|
+
const StyledSideNavigationMenuItem = styled.a`
|
|
32
|
+
/**
|
|
33
|
+
* Common style
|
|
34
|
+
*/
|
|
35
|
+
${_ref2 => {
|
|
36
|
+
let {
|
|
37
|
+
$isDisabled,
|
|
38
|
+
$theme,
|
|
39
|
+
$color
|
|
40
|
+
} = _ref2;
|
|
41
|
+
return !$isDisabled ? css`
|
|
42
|
+
& {
|
|
43
|
+
color: ${$color ? $color : `var(--redsift-color-${$theme}-components-side-navigation-menu-item-text-resting)`};
|
|
44
|
+
}
|
|
45
|
+
` : css`
|
|
46
|
+
& {
|
|
47
|
+
color: var(--redsift-color-${$theme}-components-side-navigation-menu-item-text-disabled);
|
|
48
|
+
}
|
|
49
|
+
`;
|
|
50
|
+
}}
|
|
51
|
+
align-items: center;
|
|
52
|
+
border-radius: 0 4px 4px 0;
|
|
53
|
+
display: flex;
|
|
54
|
+
font-family: var(--redsift-typography-body-font-family);
|
|
55
|
+
font-size: 14px;
|
|
56
|
+
font-weight: var(--redsift-typography-body-font-weight);
|
|
57
|
+
gap: 8px;
|
|
58
|
+
line-height: var(--redsift-typography-body-line-height);
|
|
59
|
+
overflow: hidden;
|
|
60
|
+
text-decoration: none;
|
|
61
|
+
text-transform: uppercase;
|
|
62
|
+
width: 100%;
|
|
63
|
+
|
|
64
|
+
&:hover,
|
|
65
|
+
&:focus-visible {
|
|
66
|
+
outline: none;
|
|
67
|
+
|
|
68
|
+
${_ref3 => {
|
|
69
|
+
let {
|
|
70
|
+
$isDisabled,
|
|
71
|
+
$theme,
|
|
72
|
+
$color
|
|
73
|
+
} = _ref3;
|
|
74
|
+
return !$isDisabled ? css`
|
|
75
|
+
background-color: var(--redsift-color-${$theme}-components-side-navigation-menu-item-background-hover);
|
|
76
|
+
& {
|
|
77
|
+
color: ${$color ? $color : `var(--redsift-color-${$theme}-components-side-navigation-menu-item-text-hover)`};
|
|
78
|
+
}
|
|
79
|
+
` : '';
|
|
80
|
+
}}
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
:active {
|
|
84
|
+
${_ref4 => {
|
|
85
|
+
let {
|
|
86
|
+
$isDisabled,
|
|
87
|
+
$theme
|
|
88
|
+
} = _ref4;
|
|
89
|
+
return !$isDisabled ? css`
|
|
90
|
+
background-color: var(--redsift-color-${$theme}-components-side-navigation-menu-item-background-active);
|
|
91
|
+
` : '';
|
|
92
|
+
}}
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
${_ref5 => {
|
|
96
|
+
let {
|
|
97
|
+
$variant
|
|
98
|
+
} = _ref5;
|
|
99
|
+
return css`
|
|
100
|
+
@media (prefers-reduced-motion: no-preference) {
|
|
101
|
+
:focus-visible {
|
|
102
|
+
> span${$variant === SideNavigationMenuBarVariant.shrinked ? '.first' : '.content'} {
|
|
103
|
+
outline: 2px solid var(--redsift-color-primary-n);
|
|
104
|
+
transition: outline-offset 75ms ease-out;
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
:not(:active):focus-visible {
|
|
108
|
+
> span${$variant === SideNavigationMenuBarVariant.shrinked ? '.first' : '.content'} {
|
|
109
|
+
transition-duration: 0.25s;
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
:not(:active):focus-visible {
|
|
115
|
+
> span${$variant === SideNavigationMenuBarVariant.shrinked ? '.first' : '.content'} {
|
|
116
|
+
outline-offset: 0.25rem;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
.content {
|
|
122
|
+
transition: opacity 300ms ease-out;
|
|
123
|
+
opacity: ${$variant === SideNavigationMenuBarVariant.shrinked ? '0' : '1'};
|
|
124
|
+
overflow: hidden;
|
|
125
|
+
white-space: nowrap;
|
|
126
|
+
}
|
|
127
|
+
`;
|
|
128
|
+
}}
|
|
129
|
+
|
|
130
|
+
${_ref6 => {
|
|
131
|
+
let {
|
|
132
|
+
$hasIcon,
|
|
133
|
+
$isSecondLevel,
|
|
134
|
+
$variant,
|
|
135
|
+
$theme
|
|
136
|
+
} = _ref6;
|
|
137
|
+
return !$isSecondLevel ? css`
|
|
138
|
+
/**
|
|
139
|
+
* First-level items
|
|
140
|
+
*/
|
|
141
|
+
|
|
142
|
+
background-color: var(--redsift-color-${$theme}-components-side-navigation-background);
|
|
143
|
+
height: 40px;
|
|
144
|
+
margin-bottom: 4px;
|
|
145
|
+
margin-left: -4px;
|
|
146
|
+
transition: padding 300ms ease-out;
|
|
147
|
+
padding: 0 16px 0 ${$variant === SideNavigationMenuBarVariant.shrinked ? '16px' : '16px'};
|
|
148
|
+
|
|
149
|
+
.redsift-icon.first {
|
|
150
|
+
box-sizing: unset;
|
|
151
|
+
}
|
|
152
|
+
` : `
|
|
153
|
+
/**
|
|
154
|
+
* Second-level items
|
|
155
|
+
*/
|
|
156
|
+
|
|
157
|
+
background-color: var(--redsift-color-${$theme}-components-side-navigation-menu-item-background-secondary);
|
|
158
|
+
font-size: var(--redsift-typography-caption-font-size);
|
|
159
|
+
padding-bottom: 4px;
|
|
160
|
+
padding-left: ${$hasIcon ? '18px' : '54px'};
|
|
161
|
+
padding-right: 0;
|
|
162
|
+
padding-top: 4px;
|
|
163
|
+
border-radius: 0;
|
|
164
|
+
|
|
165
|
+
.redsift-icon.first {
|
|
166
|
+
box-sizing: unset;
|
|
167
|
+
margin-right: 8px;
|
|
168
|
+
}
|
|
169
|
+
`;
|
|
170
|
+
}}
|
|
171
|
+
`;
|
|
172
|
+
|
|
173
|
+
export { StyledSideNavigationMenuItem, StyledSideNavigationMenuItemBorder, StyledSideNavigationMenuItemIndicator, StyledSideNavigationMenuItemIndicatorContainer };
|
|
174
|
+
//# sourceMappingURL=styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"styles.js","sources":["../../../src/components/side-navigation-menu-item/styles.ts"],"sourcesContent":["import styled, { css } from 'styled-components';\nimport { StyledSideNavigationMenuItemProps } from './types';\nimport { SideNavigationMenuBarVariant } from '../side-navigation-menu-bar';\nimport { Theme } from '../../types';\n\nexport const StyledSideNavigationMenuItemIndicatorContainer = styled.div`\n min-width: 4px;\n`;\n\nexport const StyledSideNavigationMenuItemIndicator = styled.div<{ $theme: Theme }>`\n position: relative;\n width: 4px;\n height: 40px;\n border-radius: 0px 4px 4px 0px;\n background-color: ${({ $theme }) => `var(--redsift-color-${$theme}-components-side-navigation-current-marker)`};\n`;\n\nexport const StyledSideNavigationMenuItemBorder = styled.div`\n position: relative;\n width: 100%;\n height: 1px;\n background-color: var(--redsift-color-neutral-light-grey);\n margin-left: 62px;\n margin-top: -1px;\n`;\n\n/**\n * Component style.\n */\nexport const StyledSideNavigationMenuItem = styled.a<StyledSideNavigationMenuItemProps>`\n /**\n * Common style\n */\n ${({ $isDisabled, $theme, $color }) =>\n !$isDisabled\n ? css`\n & {\n color: ${$color\n ? $color\n : `var(--redsift-color-${$theme}-components-side-navigation-menu-item-text-resting)`};\n }\n `\n : css`\n & {\n color: var(--redsift-color-${$theme}-components-side-navigation-menu-item-text-disabled);\n }\n `}\n align-items: center;\n border-radius: 0 4px 4px 0;\n display: flex;\n font-family: var(--redsift-typography-body-font-family);\n font-size: 14px;\n font-weight: var(--redsift-typography-body-font-weight);\n gap: 8px;\n line-height: var(--redsift-typography-body-line-height);\n overflow: hidden;\n text-decoration: none;\n text-transform: uppercase;\n width: 100%;\n\n &:hover,\n &:focus-visible {\n outline: none;\n\n ${({ $isDisabled, $theme, $color }) =>\n !$isDisabled\n ? css`\n background-color: var(--redsift-color-${$theme}-components-side-navigation-menu-item-background-hover);\n & {\n color: ${$color\n ? $color\n : `var(--redsift-color-${$theme}-components-side-navigation-menu-item-text-hover)`};\n }\n `\n : ''}\n }\n\n :active {\n ${({ $isDisabled, $theme }) =>\n !$isDisabled\n ? css`\n background-color: var(--redsift-color-${$theme}-components-side-navigation-menu-item-background-active);\n `\n : ''}\n }\n\n ${({ $variant }) => css`\n @media (prefers-reduced-motion: no-preference) {\n :focus-visible {\n > span${$variant === SideNavigationMenuBarVariant.shrinked ? '.first' : '.content'} {\n outline: 2px solid var(--redsift-color-primary-n);\n transition: outline-offset 75ms ease-out;\n }\n\n :not(:active):focus-visible {\n > span${$variant === SideNavigationMenuBarVariant.shrinked ? '.first' : '.content'} {\n transition-duration: 0.25s;\n }\n }\n }\n\n :not(:active):focus-visible {\n > span${$variant === SideNavigationMenuBarVariant.shrinked ? '.first' : '.content'} {\n outline-offset: 0.25rem;\n }\n }\n }\n\n .content {\n transition: opacity 300ms ease-out;\n opacity: ${$variant === SideNavigationMenuBarVariant.shrinked ? '0' : '1'};\n overflow: hidden;\n white-space: nowrap;\n }\n `}\n\n ${({ $hasIcon, $isSecondLevel, $variant, $theme }) =>\n !$isSecondLevel\n ? css`\n /**\n * First-level items\n */\n\n background-color: var(--redsift-color-${$theme}-components-side-navigation-background);\n height: 40px;\n margin-bottom: 4px;\n margin-left: -4px;\n transition: padding 300ms ease-out;\n padding: 0 16px 0 ${$variant === SideNavigationMenuBarVariant.shrinked ? '16px' : '16px'};\n\n .redsift-icon.first {\n box-sizing: unset;\n }\n `\n : `\n /**\n * Second-level items\n */\n\n background-color: var(--redsift-color-${$theme}-components-side-navigation-menu-item-background-secondary);\n font-size: var(--redsift-typography-caption-font-size);\n padding-bottom: 4px;\n padding-left: ${$hasIcon ? '18px' : '54px'};\n padding-right: 0;\n padding-top: 4px;\n border-radius: 0;\n\n .redsift-icon.first {\n box-sizing: unset;\n margin-right: 8px;\n }\n `}\n`;\n"],"names":["StyledSideNavigationMenuItemIndicatorContainer","styled","div","StyledSideNavigationMenuItemIndicator","_ref","$theme","StyledSideNavigationMenuItemBorder","StyledSideNavigationMenuItem","a","_ref2","$isDisabled","$color","css","_ref3","_ref4","_ref5","$variant","SideNavigationMenuBarVariant","shrinked","_ref6","$hasIcon","$isSecondLevel"],"mappings":"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"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { ComponentProps, ElementType, RefObject } from 'react';
|
|
2
|
+
import { BadgeProps } from '../badge/types.js';
|
|
3
|
+
import { IconProps } from '../icon/types.js';
|
|
4
|
+
import { Theme } from '../../types/colors.js';
|
|
5
|
+
import { SideNavigationMenuBarVariant } from '../side-navigation-menu-bar/types.js';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Component props.
|
|
9
|
+
*/
|
|
10
|
+
interface SideNavigationMenuItemProps extends ComponentProps<'a'> {
|
|
11
|
+
/** Prop to pass a custom react component instead of a simple HTML anchor (useful for Nextjs or React Router Link component). */
|
|
12
|
+
as?: 'a' | ElementType;
|
|
13
|
+
/** Text or number that should be displayed inside a badge next to the menu item text. */
|
|
14
|
+
badge?: number | string;
|
|
15
|
+
/** Custom props to pass to the Badge component, if any. */
|
|
16
|
+
badgeProps?: Omit<BadgeProps, 'ref'>;
|
|
17
|
+
/** Color variant. */
|
|
18
|
+
color?: string;
|
|
19
|
+
/** Whether the menu item has a border or not. */
|
|
20
|
+
hasBorder?: boolean;
|
|
21
|
+
/** Href is required for this component. */
|
|
22
|
+
href: ComponentProps<'a'>['href'];
|
|
23
|
+
/**
|
|
24
|
+
* Can be a string or an array of strings containing `d` property of the `path` SVG element.<br />
|
|
25
|
+
* Can also be a ReactElement.
|
|
26
|
+
*/
|
|
27
|
+
icon?: IconProps['icon'];
|
|
28
|
+
/** Custom props to pass to the Icon component. */
|
|
29
|
+
iconProps?: Omit<IconProps, 'ref' | 'icon'>;
|
|
30
|
+
/** Custom ref to pass to the Icon component. */
|
|
31
|
+
iconRef?: RefObject<HTMLElement>;
|
|
32
|
+
/** Whether the component is active or not. */
|
|
33
|
+
isCurrent?: boolean;
|
|
34
|
+
/** Whether the component is disabled or not. */
|
|
35
|
+
isDisabled?: boolean;
|
|
36
|
+
/** Whether the component is a second-level menu item. */
|
|
37
|
+
isSecondLevel?: boolean;
|
|
38
|
+
/** Theme. */
|
|
39
|
+
theme?: Theme;
|
|
40
|
+
}
|
|
41
|
+
type StyledSideNavigationMenuItemProps = Omit<SideNavigationMenuItemProps, 'isCurrent' | 'isDisabled' | 'isSecondLevel' | 'hasBorder'> & {
|
|
42
|
+
$color: SideNavigationMenuItemProps['color'];
|
|
43
|
+
$hasIcon: boolean;
|
|
44
|
+
$isCurrent: SideNavigationMenuItemProps['isCurrent'];
|
|
45
|
+
$isDisabled: SideNavigationMenuItemProps['isDisabled'];
|
|
46
|
+
$isSecondLevel: SideNavigationMenuItemProps['isSecondLevel'];
|
|
47
|
+
$variant: SideNavigationMenuBarVariant;
|
|
48
|
+
$theme: SideNavigationMenuItemProps['theme'];
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
export { SideNavigationMenuItemProps, StyledSideNavigationMenuItemProps };
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { SkeletonProps } from './types.js';
|
|
2
|
+
import { Comp } from '../../types/helpers.js';
|
|
3
|
+
import { SkeletonCircleProps } from '../skeleton-circle/types.js';
|
|
4
|
+
import { SkeletonTextProps } from '../skeleton-text/types.js';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* The Skeleton component.
|
|
8
|
+
*/
|
|
9
|
+
declare const BaseSkeleton: Comp<SkeletonProps, HTMLDivElement>;
|
|
10
|
+
declare const Skeleton: Comp<SkeletonProps, HTMLDivElement> & {
|
|
11
|
+
Circle: Comp<SkeletonCircleProps, HTMLDivElement>;
|
|
12
|
+
Text: Comp<SkeletonTextProps, HTMLDivElement>;
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
export { BaseSkeleton, Skeleton };
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { objectWithoutProperties as _objectWithoutProperties, extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
|
+
import React__default, { forwardRef } from 'react';
|
|
3
|
+
import classNames from 'classnames';
|
|
4
|
+
import { StyledSkeleton } from './styles.js';
|
|
5
|
+
import { SkeletonCircle } from '../skeleton-circle/SkeletonCircle.js';
|
|
6
|
+
import { SkeletonText } from '../skeleton-text/SkeletonText.js';
|
|
7
|
+
import { useTheme } from '../theme/useTheme.js';
|
|
8
|
+
|
|
9
|
+
const _excluded = ["children", "className", "isLoaded", "theme"];
|
|
10
|
+
const COMPONENT_NAME = 'Skeleton';
|
|
11
|
+
const CLASSNAME = 'redsift-skeleton';
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* The Skeleton component.
|
|
15
|
+
*/
|
|
16
|
+
const BaseSkeleton = /*#__PURE__*/forwardRef((props, ref) => {
|
|
17
|
+
const {
|
|
18
|
+
children,
|
|
19
|
+
className,
|
|
20
|
+
isLoaded,
|
|
21
|
+
theme: propsTheme
|
|
22
|
+
} = props,
|
|
23
|
+
forwardedProps = _objectWithoutProperties(props, _excluded);
|
|
24
|
+
const theme = useTheme(propsTheme);
|
|
25
|
+
if (isLoaded) {
|
|
26
|
+
return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, children);
|
|
27
|
+
}
|
|
28
|
+
return /*#__PURE__*/React__default.createElement(StyledSkeleton, _extends({}, forwardedProps, {
|
|
29
|
+
$theme: theme,
|
|
30
|
+
className: classNames(BaseSkeleton.className, className),
|
|
31
|
+
ref: ref
|
|
32
|
+
}), typeof children === 'string' ? /*#__PURE__*/React__default.createElement("span", null, children) : children);
|
|
33
|
+
});
|
|
34
|
+
BaseSkeleton.className = CLASSNAME;
|
|
35
|
+
BaseSkeleton.displayName = COMPONENT_NAME;
|
|
36
|
+
const Skeleton = Object.assign(BaseSkeleton, {
|
|
37
|
+
Circle: SkeletonCircle,
|
|
38
|
+
Text: SkeletonText
|
|
39
|
+
});
|
|
40
|
+
|
|
41
|
+
export { BaseSkeleton, Skeleton };
|
|
42
|
+
//# sourceMappingURL=Skeleton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Skeleton.js","sources":["../../../src/components/skeleton/Skeleton.tsx"],"sourcesContent":["import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\n\nimport { Comp } from '../../types';\nimport { StyledSkeleton } from './styles';\nimport { SkeletonProps } from './types';\nimport { SkeletonCircle } from '../skeleton-circle';\nimport { SkeletonText } from '../skeleton-text';\nimport { useTheme } from '../theme';\n\nconst COMPONENT_NAME = 'Skeleton';\nconst CLASSNAME = 'redsift-skeleton';\n\n/**\n * The Skeleton component.\n */\nexport const BaseSkeleton: Comp<SkeletonProps, HTMLDivElement> = forwardRef((props, ref) => {\n const { children, className, isLoaded, theme: propsTheme, ...forwardedProps } = props;\n\n const theme = useTheme(propsTheme);\n\n if (isLoaded) {\n return <>{children}</>;\n }\n\n return (\n <StyledSkeleton\n {...forwardedProps}\n $theme={theme}\n className={classNames(BaseSkeleton.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n >\n {typeof children === 'string' ? <span>{children}</span> : children}\n </StyledSkeleton>\n );\n});\nBaseSkeleton.className = CLASSNAME;\nBaseSkeleton.displayName = COMPONENT_NAME;\n\nexport const Skeleton = Object.assign(BaseSkeleton, {\n Circle: SkeletonCircle,\n Text: SkeletonText,\n});\n"],"names":["COMPONENT_NAME","CLASSNAME","BaseSkeleton","forwardRef","props","ref","children","className","isLoaded","theme","propsTheme","forwardedProps","_objectWithoutProperties","_excluded","useTheme","React","createElement","Fragment","StyledSkeleton","_extends","$theme","classNames","displayName","Skeleton","Object","assign","Circle","SkeletonCircle","Text","SkeletonText"],"mappings":";;;;;;;;;AAUA,MAAMA,cAAc,GAAG,UAAU,CAAA;AACjC,MAAMC,SAAS,GAAG,kBAAkB,CAAA;;AAEpC;AACA;AACA;AACO,MAAMC,YAAiD,gBAAGC,UAAU,CAAC,CAACC,KAAK,EAAEC,GAAG,KAAK;EAC1F,MAAM;MAAEC,QAAQ;MAAEC,SAAS;MAAEC,QAAQ;AAAEC,MAAAA,KAAK,EAAEC,UAAAA;AAA8B,KAAC,GAAGN,KAAK;AAAxBO,IAAAA,cAAc,GAAAC,wBAAA,CAAKR,KAAK,EAAAS,SAAA,CAAA,CAAA;AAErF,EAAA,MAAMJ,KAAK,GAAGK,QAAQ,CAACJ,UAAU,CAAC,CAAA;AAElC,EAAA,IAAIF,QAAQ,EAAE;IACZ,oBAAOO,cAAA,CAAAC,aAAA,CAAAD,cAAA,CAAAE,QAAA,EAAGX,IAAAA,EAAAA,QAAW,CAAC,CAAA;AACxB,GAAA;EAEA,oBACES,cAAA,CAAAC,aAAA,CAACE,cAAc,EAAAC,QAAA,KACTR,cAAc,EAAA;AAClBS,IAAAA,MAAM,EAAEX,KAAM;IACdF,SAAS,EAAEc,UAAU,CAACnB,YAAY,CAACK,SAAS,EAAEA,SAAS,CAAE;AACzDF,IAAAA,GAAG,EAAEA,GAAAA;AAAiC,GAAA,CAAA,EAErC,OAAOC,QAAQ,KAAK,QAAQ,gBAAGS,cAAA,CAAAC,aAAA,CAAOV,MAAAA,EAAAA,IAAAA,EAAAA,QAAe,CAAC,GAAGA,QAC5C,CAAC,CAAA;AAErB,CAAC,EAAC;AACFJ,YAAY,CAACK,SAAS,GAAGN,SAAS,CAAA;AAClCC,YAAY,CAACoB,WAAW,GAAGtB,cAAc,CAAA;AAElC,MAAMuB,QAAQ,GAAGC,MAAM,CAACC,MAAM,CAACvB,YAAY,EAAE;AAClDwB,EAAAA,MAAM,EAAEC,cAAc;AACtBC,EAAAA,IAAI,EAAEC,YAAAA;AACR,CAAC;;;;"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import styled, { keyframes, css } from 'styled-components';
|
|
2
|
+
import { baseStyling, baseInternalSpacing } from '../shared/styles.js';
|
|
3
|
+
import { Theme } from '../../types/colors.js';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Component style.
|
|
7
|
+
*/
|
|
8
|
+
const wave = keyframes`
|
|
9
|
+
0% {
|
|
10
|
+
-webkit-transform: translateX(-100%);
|
|
11
|
+
-moz-transform: translateX(-100%);
|
|
12
|
+
-ms-transform: translateX(-100%);
|
|
13
|
+
transform: translateX(-100%);
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
50% {
|
|
17
|
+
-webkit-transform: translateX(100%);
|
|
18
|
+
-moz-transform: translateX(100%);
|
|
19
|
+
-ms-transform: translateX(100%);
|
|
20
|
+
transform: translateX(100%);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
100% {
|
|
24
|
+
-webkit-transform: translateX(100%);
|
|
25
|
+
-moz-transform: translateX(100%);
|
|
26
|
+
-ms-transform: translateX(100%);
|
|
27
|
+
transform: translateX(100%);
|
|
28
|
+
}
|
|
29
|
+
`;
|
|
30
|
+
const StyledSkeleton = styled.div`
|
|
31
|
+
height: fit-content;
|
|
32
|
+
width: fit-content;
|
|
33
|
+
|
|
34
|
+
* {
|
|
35
|
+
visibility: hidden;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
flex: 0 0 auto;
|
|
39
|
+
|
|
40
|
+
${baseStyling}
|
|
41
|
+
${baseInternalSpacing}
|
|
42
|
+
|
|
43
|
+
display: block;
|
|
44
|
+
background-color: ${_ref => {
|
|
45
|
+
let {
|
|
46
|
+
$theme
|
|
47
|
+
} = _ref;
|
|
48
|
+
return $theme === Theme.light ? css`rgba(0, 0, 0, 0.16)` : css`rgba(255, 255, 255, 0.16)`;
|
|
49
|
+
}};
|
|
50
|
+
border-radius: 4px;
|
|
51
|
+
position: relative;
|
|
52
|
+
overflow: hidden;
|
|
53
|
+
-webkit-mask-image: -webkit-radial-gradient(white, black);
|
|
54
|
+
|
|
55
|
+
&::after {
|
|
56
|
+
-webkit-animation: ${wave} 1.6s linear 0.5s infinite;
|
|
57
|
+
animation: ${wave} 1.6s linear 0.5s infinite;
|
|
58
|
+
background: linear-gradient(
|
|
59
|
+
90deg,
|
|
60
|
+
transparent,
|
|
61
|
+
${_ref2 => {
|
|
62
|
+
let {
|
|
63
|
+
$theme
|
|
64
|
+
} = _ref2;
|
|
65
|
+
return $theme === Theme.light ? css`rgba(0, 0, 0, 0.04)` : css`rgba(255, 255, 255, 0.04)`;
|
|
66
|
+
}},
|
|
67
|
+
transparent
|
|
68
|
+
);
|
|
69
|
+
background-clip: content-box;
|
|
70
|
+
content: '';
|
|
71
|
+
position: absolute;
|
|
72
|
+
-webkit-transform: translateX(-100%);
|
|
73
|
+
-moz-transform: translateX(-100%);
|
|
74
|
+
-ms-transform: translateX(-100%);
|
|
75
|
+
transform: translateX(-100%);
|
|
76
|
+
bottom: 0;
|
|
77
|
+
left: 0;
|
|
78
|
+
right: 0;
|
|
79
|
+
top: 0;
|
|
80
|
+
}
|
|
81
|
+
`;
|
|
82
|
+
|
|
83
|
+
export { StyledSkeleton };
|
|
84
|
+
//# sourceMappingURL=styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"styles.js","sources":["../../../src/components/skeleton/styles.ts"],"sourcesContent":["import styled, { css, keyframes } from 'styled-components';\nimport { baseInternalSpacing, baseStyling } from '../shared';\nimport { StyledSkeletonProps } from './types';\nimport { Theme } from '../../types';\n\n/**\n * Component style.\n */\nconst wave = keyframes`\n 0% {\n -webkit-transform: translateX(-100%);\n -moz-transform: translateX(-100%);\n -ms-transform: translateX(-100%);\n transform: translateX(-100%);\n }\n\n 50% {\n -webkit-transform: translateX(100%);\n -moz-transform: translateX(100%);\n -ms-transform: translateX(100%);\n transform: translateX(100%);\n }\n\n 100% {\n -webkit-transform: translateX(100%);\n -moz-transform: translateX(100%);\n -ms-transform: translateX(100%);\n transform: translateX(100%);\n }\n`;\n\nexport const StyledSkeleton = styled.div<StyledSkeletonProps>`\n height: fit-content;\n width: fit-content;\n\n * {\n visibility: hidden;\n }\n\n flex: 0 0 auto;\n\n ${baseStyling}\n ${baseInternalSpacing}\n\n display: block;\n background-color: ${({ $theme }) =>\n $theme === Theme.light ? css`rgba(0, 0, 0, 0.16)` : css`rgba(255, 255, 255, 0.16)`};\n border-radius: 4px;\n position: relative;\n overflow: hidden;\n -webkit-mask-image: -webkit-radial-gradient(white, black);\n\n &::after {\n -webkit-animation: ${wave} 1.6s linear 0.5s infinite;\n animation: ${wave} 1.6s linear 0.5s infinite;\n background: linear-gradient(\n 90deg,\n transparent,\n ${({ $theme }) => ($theme === Theme.light ? css`rgba(0, 0, 0, 0.04)` : css`rgba(255, 255, 255, 0.04)`)},\n transparent\n );\n background-clip: content-box;\n content: '';\n position: absolute;\n -webkit-transform: translateX(-100%);\n -moz-transform: translateX(-100%);\n -ms-transform: translateX(-100%);\n transform: translateX(-100%);\n bottom: 0;\n left: 0;\n right: 0;\n top: 0;\n }\n`;\n"],"names":["wave","keyframes","StyledSkeleton","styled","div","baseStyling","baseInternalSpacing","_ref","$theme","Theme","light","css","_ref2"],"mappings":";;;;AAKA;AACA;AACA;AACA,MAAMA,IAAI,GAAGC,SAAU,CAAA;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,CAAA;AAEYC,MAAAA,cAAc,GAAGC,MAAM,CAACC,GAAyB,CAAA;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAA,EAAIC,WAAY,CAAA;AAChB,EAAA,EAAIC,mBAAoB,CAAA;AACxB;AACA;AACA,oBAAA,EAAsBC,IAAA,IAAA;EAAA,IAAC;AAAEC,IAAAA,MAAAA;AAAO,GAAC,GAAAD,IAAA,CAAA;EAAA,OAC7BC,MAAM,KAAKC,KAAK,CAACC,KAAK,GAAGC,GAAI,CAAA,mBAAA,CAAoB,GAAGA,GAAI,CAA0B,yBAAA,CAAA,CAAA;AAAA,CAAC,CAAA;AACvF;AACA;AACA;AACA;AACA;AACA;AACA,uBAAA,EAAyBX,IAAK,CAAA;AAC9B,eAAA,EAAiBA,IAAK,CAAA;AACtB;AACA;AACA;AACA,MAAA,EAAQY,KAAA,IAAA;EAAA,IAAC;AAAEJ,IAAAA,MAAAA;AAAO,GAAC,GAAAI,KAAA,CAAA;EAAA,OAAMJ,MAAM,KAAKC,KAAK,CAACC,KAAK,GAAGC,GAAI,CAAA,mBAAA,CAAoB,GAAGA,GAAI,CAA0B,yBAAA,CAAA,CAAA;AAAA,CAAE,CAAA;AAC7G;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { ComponentProps } from 'react';
|
|
2
|
+
import { StylingProps, InternalSpacingProps } from '../../types/styles.js';
|
|
3
|
+
import { Theme } from '../../types/colors.js';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Component props.
|
|
7
|
+
*/
|
|
8
|
+
interface SkeletonProps extends ComponentProps<'div'>, StylingProps, InternalSpacingProps {
|
|
9
|
+
/** Whether the content is loaded and should be displayed instead of the skeleton. */
|
|
10
|
+
isLoaded?: boolean;
|
|
11
|
+
/** Theme. */
|
|
12
|
+
theme?: Theme;
|
|
13
|
+
}
|
|
14
|
+
type StyledSkeletonProps = SkeletonProps & {
|
|
15
|
+
$theme: SkeletonProps['theme'];
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
export { SkeletonProps, StyledSkeletonProps };
|