@fairgarden/design 0.1.0-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/Readme.md +86 -0
- package/components/Accordion/Accordion.d.ts +68 -0
- package/components/Accordion/Accordion.d.ts.map +1 -0
- package/components/Accordion/Accordion.js +95 -0
- package/components/Accordion/Accordion.js.map +1 -0
- package/components/Accordion/accordion.module.css +248 -0
- package/components/Accordion/index.d.ts +2 -0
- package/components/Accordion/index.d.ts.map +1 -0
- package/components/Accordion/index.js +2 -0
- package/components/Accordion/index.js.map +1 -0
- package/components/Alert/Alert.d.ts +38 -0
- package/components/Alert/Alert.d.ts.map +1 -0
- package/components/Alert/Alert.js +79 -0
- package/components/Alert/Alert.js.map +1 -0
- package/components/Alert/alert.module.css +99 -0
- package/components/Alert/index.d.ts +2 -0
- package/components/Alert/index.d.ts.map +1 -0
- package/components/Alert/index.js +2 -0
- package/components/Alert/index.js.map +1 -0
- package/components/AlertDialog/AlertDialog.d.ts +71 -0
- package/components/AlertDialog/AlertDialog.d.ts.map +1 -0
- package/components/AlertDialog/AlertDialog.js +94 -0
- package/components/AlertDialog/AlertDialog.js.map +1 -0
- package/components/AlertDialog/alert-dialog.module.css +53 -0
- package/components/AlertDialog/index.d.ts +2 -0
- package/components/AlertDialog/index.d.ts.map +1 -0
- package/components/AlertDialog/index.js +2 -0
- package/components/AlertDialog/index.js.map +1 -0
- package/components/AnnouncementBar/AnnouncementBar.d.ts +116 -0
- package/components/AnnouncementBar/AnnouncementBar.d.ts.map +1 -0
- package/components/AnnouncementBar/AnnouncementBar.js +215 -0
- package/components/AnnouncementBar/AnnouncementBar.js.map +1 -0
- package/components/AnnouncementBar/announcement-bar.module.css +271 -0
- package/components/AnnouncementBar/index.d.ts +2 -0
- package/components/AnnouncementBar/index.d.ts.map +1 -0
- package/components/AnnouncementBar/index.js +2 -0
- package/components/AnnouncementBar/index.js.map +1 -0
- package/components/Autocomplete/Autocomplete.d.ts +67 -0
- package/components/Autocomplete/Autocomplete.d.ts.map +1 -0
- package/components/Autocomplete/Autocomplete.js +116 -0
- package/components/Autocomplete/Autocomplete.js.map +1 -0
- package/components/Autocomplete/autocomplete.module.css +428 -0
- package/components/Autocomplete/index.d.ts +2 -0
- package/components/Autocomplete/index.d.ts.map +1 -0
- package/components/Autocomplete/index.js +2 -0
- package/components/Autocomplete/index.js.map +1 -0
- package/components/Avatar/Avatar.d.ts +97 -0
- package/components/Avatar/Avatar.d.ts.map +1 -0
- package/components/Avatar/Avatar.js +154 -0
- package/components/Avatar/Avatar.js.map +1 -0
- package/components/Avatar/avatar-group.module.css +72 -0
- package/components/Avatar/avatar.module.css +180 -0
- package/components/Avatar/index.d.ts +2 -0
- package/components/Avatar/index.d.ts.map +1 -0
- package/components/Avatar/index.js +2 -0
- package/components/Avatar/index.js.map +1 -0
- package/components/Badge/Badge.d.ts +67 -0
- package/components/Badge/Badge.d.ts.map +1 -0
- package/components/Badge/Badge.js +118 -0
- package/components/Badge/Badge.js.map +1 -0
- package/components/Badge/badge.module.css +134 -0
- package/components/Badge/index.d.ts +2 -0
- package/components/Badge/index.d.ts.map +1 -0
- package/components/Badge/index.js +2 -0
- package/components/Badge/index.js.map +1 -0
- package/components/Breadcrumb/Breadcrumb.d.ts +83 -0
- package/components/Breadcrumb/Breadcrumb.d.ts.map +1 -0
- package/components/Breadcrumb/Breadcrumb.js +183 -0
- package/components/Breadcrumb/Breadcrumb.js.map +1 -0
- package/components/Breadcrumb/breadcrumb.module.css +413 -0
- package/components/Breadcrumb/index.d.ts +2 -0
- package/components/Breadcrumb/index.d.ts.map +1 -0
- package/components/Breadcrumb/index.js +2 -0
- package/components/Breadcrumb/index.js.map +1 -0
- package/components/Button/Button.d.ts +97 -0
- package/components/Button/Button.d.ts.map +1 -0
- package/components/Button/Button.js +127 -0
- package/components/Button/Button.js.map +1 -0
- package/components/Button/button.module.css +390 -0
- package/components/Button/index.d.ts +2 -0
- package/components/Button/index.d.ts.map +1 -0
- package/components/Button/index.js +2 -0
- package/components/Button/index.js.map +1 -0
- package/components/CTABlock/CTABlock.d.ts +117 -0
- package/components/CTABlock/CTABlock.d.ts.map +1 -0
- package/components/CTABlock/CTABlock.js +125 -0
- package/components/CTABlock/CTABlock.js.map +1 -0
- package/components/CTABlock/cta-block.module.css +358 -0
- package/components/CTABlock/index.d.ts +2 -0
- package/components/CTABlock/index.d.ts.map +1 -0
- package/components/CTABlock/index.js +2 -0
- package/components/CTABlock/index.js.map +1 -0
- package/components/Card/Card.d.ts +137 -0
- package/components/Card/Card.d.ts.map +1 -0
- package/components/Card/Card.js +239 -0
- package/components/Card/Card.js.map +1 -0
- package/components/Card/card.module.css +479 -0
- package/components/Card/index.d.ts +2 -0
- package/components/Card/index.d.ts.map +1 -0
- package/components/Card/index.js +2 -0
- package/components/Card/index.js.map +1 -0
- package/components/CardGrid/CardGrid.d.ts +99 -0
- package/components/CardGrid/CardGrid.d.ts.map +1 -0
- package/components/CardGrid/CardGrid.js +176 -0
- package/components/CardGrid/CardGrid.js.map +1 -0
- package/components/CardGrid/card-grid.module.css +187 -0
- package/components/CardGrid/index.d.ts +2 -0
- package/components/CardGrid/index.d.ts.map +1 -0
- package/components/CardGrid/index.js +2 -0
- package/components/CardGrid/index.js.map +1 -0
- package/components/Carousel/Carousel.d.ts +98 -0
- package/components/Carousel/Carousel.d.ts.map +1 -0
- package/components/Carousel/Carousel.js +316 -0
- package/components/Carousel/Carousel.js.map +1 -0
- package/components/Carousel/carousel.module.css +236 -0
- package/components/Carousel/index.d.ts +2 -0
- package/components/Carousel/index.d.ts.map +1 -0
- package/components/Carousel/index.js +2 -0
- package/components/Carousel/index.js.map +1 -0
- package/components/Chart/Chart.d.ts +135 -0
- package/components/Chart/Chart.d.ts.map +1 -0
- package/components/Chart/Chart.js +453 -0
- package/components/Chart/Chart.js.map +1 -0
- package/components/Chart/chart.module.css +376 -0
- package/components/Chart/index.d.ts +2 -0
- package/components/Chart/index.d.ts.map +1 -0
- package/components/Chart/index.js +2 -0
- package/components/Chart/index.js.map +1 -0
- package/components/Checkbox/Checkbox.d.ts +66 -0
- package/components/Checkbox/Checkbox.d.ts.map +1 -0
- package/components/Checkbox/Checkbox.js +91 -0
- package/components/Checkbox/Checkbox.js.map +1 -0
- package/components/Checkbox/checkbox.module.css +388 -0
- package/components/Checkbox/index.d.ts +2 -0
- package/components/Checkbox/index.d.ts.map +1 -0
- package/components/Checkbox/index.js +2 -0
- package/components/Checkbox/index.js.map +1 -0
- package/components/CheckboxGroup/CheckboxGroup.d.ts +39 -0
- package/components/CheckboxGroup/CheckboxGroup.d.ts.map +1 -0
- package/components/CheckboxGroup/CheckboxGroup.js +63 -0
- package/components/CheckboxGroup/CheckboxGroup.js.map +1 -0
- package/components/CheckboxGroup/checkbox-group.module.css +52 -0
- package/components/CheckboxGroup/index.d.ts +2 -0
- package/components/CheckboxGroup/index.d.ts.map +1 -0
- package/components/CheckboxGroup/index.js +2 -0
- package/components/CheckboxGroup/index.js.map +1 -0
- package/components/Chip/Chip.d.ts +58 -0
- package/components/Chip/Chip.d.ts.map +1 -0
- package/components/Chip/Chip.js +94 -0
- package/components/Chip/Chip.js.map +1 -0
- package/components/Chip/chip.module.css +171 -0
- package/components/Chip/index.d.ts +2 -0
- package/components/Chip/index.d.ts.map +1 -0
- package/components/Chip/index.js +2 -0
- package/components/Chip/index.js.map +1 -0
- package/components/Collapsible/Collapsible.d.ts +80 -0
- package/components/Collapsible/Collapsible.d.ts.map +1 -0
- package/components/Collapsible/Collapsible.js +112 -0
- package/components/Collapsible/Collapsible.js.map +1 -0
- package/components/Collapsible/collapsible.module.css +214 -0
- package/components/Collapsible/index.d.ts +2 -0
- package/components/Collapsible/index.d.ts.map +1 -0
- package/components/Collapsible/index.js +2 -0
- package/components/Collapsible/index.js.map +1 -0
- package/components/Combobox/Combobox.d.ts +86 -0
- package/components/Combobox/Combobox.d.ts.map +1 -0
- package/components/Combobox/Combobox.js +168 -0
- package/components/Combobox/Combobox.js.map +1 -0
- package/components/Combobox/combobox.module.css +501 -0
- package/components/Combobox/index.d.ts +2 -0
- package/components/Combobox/index.d.ts.map +1 -0
- package/components/Combobox/index.js +2 -0
- package/components/Combobox/index.js.map +1 -0
- package/components/ContextMenu/ContextMenu.d.ts +47 -0
- package/components/ContextMenu/ContextMenu.d.ts.map +1 -0
- package/components/ContextMenu/ContextMenu.js +50 -0
- package/components/ContextMenu/ContextMenu.js.map +1 -0
- package/components/ContextMenu/index.d.ts +2 -0
- package/components/ContextMenu/index.d.ts.map +1 -0
- package/components/ContextMenu/index.js +2 -0
- package/components/ContextMenu/index.js.map +1 -0
- package/components/Dialog/Dialog.d.ts +122 -0
- package/components/Dialog/Dialog.d.ts.map +1 -0
- package/components/Dialog/Dialog.js +240 -0
- package/components/Dialog/Dialog.js.map +1 -0
- package/components/Dialog/dialog.module.css +257 -0
- package/components/Dialog/index.d.ts +2 -0
- package/components/Dialog/index.d.ts.map +1 -0
- package/components/Dialog/index.js +2 -0
- package/components/Dialog/index.js.map +1 -0
- package/components/EmptyState/EmptyState.d.ts +88 -0
- package/components/EmptyState/EmptyState.d.ts.map +1 -0
- package/components/EmptyState/EmptyState.js +161 -0
- package/components/EmptyState/EmptyState.js.map +1 -0
- package/components/EmptyState/empty-state.module.css +244 -0
- package/components/EmptyState/index.d.ts +2 -0
- package/components/EmptyState/index.d.ts.map +1 -0
- package/components/EmptyState/index.js +2 -0
- package/components/EmptyState/index.js.map +1 -0
- package/components/FAQ/FAQ.d.ts +90 -0
- package/components/FAQ/FAQ.d.ts.map +1 -0
- package/components/FAQ/FAQ.js +146 -0
- package/components/FAQ/FAQ.js.map +1 -0
- package/components/FAQ/faq.module.css +277 -0
- package/components/FAQ/index.d.ts +2 -0
- package/components/FAQ/index.d.ts.map +1 -0
- package/components/FAQ/index.js +2 -0
- package/components/FAQ/index.js.map +1 -0
- package/components/FeatureGrid/FeatureGrid.d.ts +108 -0
- package/components/FeatureGrid/FeatureGrid.d.ts.map +1 -0
- package/components/FeatureGrid/FeatureGrid.js +218 -0
- package/components/FeatureGrid/FeatureGrid.js.map +1 -0
- package/components/FeatureGrid/feature-grid.module.css +358 -0
- package/components/FeatureGrid/index.d.ts +2 -0
- package/components/FeatureGrid/index.d.ts.map +1 -0
- package/components/FeatureGrid/index.js +2 -0
- package/components/FeatureGrid/index.js.map +1 -0
- package/components/Field/Field.d.ts +70 -0
- package/components/Field/Field.d.ts.map +1 -0
- package/components/Field/Field.js +103 -0
- package/components/Field/Field.js.map +1 -0
- package/components/Field/field.module.css +114 -0
- package/components/Field/index.d.ts +2 -0
- package/components/Field/index.d.ts.map +1 -0
- package/components/Field/index.js +2 -0
- package/components/Field/index.js.map +1 -0
- package/components/Fieldset/Fieldset.d.ts +48 -0
- package/components/Fieldset/Fieldset.d.ts.map +1 -0
- package/components/Fieldset/Fieldset.js +80 -0
- package/components/Fieldset/Fieldset.js.map +1 -0
- package/components/Fieldset/fieldset.module.css +167 -0
- package/components/Fieldset/index.d.ts +2 -0
- package/components/Fieldset/index.d.ts.map +1 -0
- package/components/Fieldset/index.js +2 -0
- package/components/Fieldset/index.js.map +1 -0
- package/components/Figure/Figure.d.ts +72 -0
- package/components/Figure/Figure.d.ts.map +1 -0
- package/components/Figure/Figure.js +122 -0
- package/components/Figure/Figure.js.map +1 -0
- package/components/Figure/figure.module.css +162 -0
- package/components/Figure/index.d.ts +2 -0
- package/components/Figure/index.d.ts.map +1 -0
- package/components/Figure/index.js +2 -0
- package/components/Figure/index.js.map +1 -0
- package/components/Footer/Footer.d.ts +154 -0
- package/components/Footer/Footer.d.ts.map +1 -0
- package/components/Footer/Footer.js +253 -0
- package/components/Footer/Footer.js.map +1 -0
- package/components/Footer/footer.module.css +683 -0
- package/components/Footer/index.d.ts +2 -0
- package/components/Footer/index.d.ts.map +1 -0
- package/components/Footer/index.js +2 -0
- package/components/Footer/index.js.map +1 -0
- package/components/Form/Form.d.ts +69 -0
- package/components/Form/Form.d.ts.map +1 -0
- package/components/Form/Form.js +90 -0
- package/components/Form/Form.js.map +1 -0
- package/components/Form/form.module.css +123 -0
- package/components/Form/index.d.ts +2 -0
- package/components/Form/index.d.ts.map +1 -0
- package/components/Form/index.js +2 -0
- package/components/Form/index.js.map +1 -0
- package/components/Ground/Ground.d.ts +105 -0
- package/components/Ground/Ground.d.ts.map +1 -0
- package/components/Ground/Ground.js +98 -0
- package/components/Ground/Ground.js.map +1 -0
- package/components/Ground/ground.module.css +84 -0
- package/components/Ground/index.d.ts +2 -0
- package/components/Ground/index.d.ts.map +1 -0
- package/components/Ground/index.js +2 -0
- package/components/Ground/index.js.map +1 -0
- package/components/Hero/Hero.d.ts +214 -0
- package/components/Hero/Hero.d.ts.map +1 -0
- package/components/Hero/Hero.js +216 -0
- package/components/Hero/Hero.js.map +1 -0
- package/components/Hero/hero.module.css +766 -0
- package/components/Hero/index.d.ts +2 -0
- package/components/Hero/index.d.ts.map +1 -0
- package/components/Hero/index.js +2 -0
- package/components/Hero/index.js.map +1 -0
- package/components/Icon/Icon.d.ts +49 -0
- package/components/Icon/Icon.d.ts.map +1 -0
- package/components/Icon/Icon.js +54 -0
- package/components/Icon/Icon.js.map +1 -0
- package/components/Icon/icon.module.css +69 -0
- package/components/Icon/iconHost.d.ts +9 -0
- package/components/Icon/iconHost.d.ts.map +1 -0
- package/components/Icon/iconHost.js +10 -0
- package/components/Icon/iconHost.js.map +1 -0
- package/components/Icon/index.d.ts +3 -0
- package/components/Icon/index.d.ts.map +1 -0
- package/components/Icon/index.js +3 -0
- package/components/Icon/index.js.map +1 -0
- package/components/IndexRows/IndexRows.d.ts +134 -0
- package/components/IndexRows/IndexRows.d.ts.map +1 -0
- package/components/IndexRows/IndexRows.js +229 -0
- package/components/IndexRows/IndexRows.js.map +1 -0
- package/components/IndexRows/index-rows.module.css +460 -0
- package/components/IndexRows/index.d.ts +2 -0
- package/components/IndexRows/index.d.ts.map +1 -0
- package/components/IndexRows/index.js +2 -0
- package/components/IndexRows/index.js.map +1 -0
- package/components/Input/Input.d.ts +154 -0
- package/components/Input/Input.d.ts.map +1 -0
- package/components/Input/Input.js +186 -0
- package/components/Input/Input.js.map +1 -0
- package/components/Input/index.d.ts +2 -0
- package/components/Input/index.d.ts.map +1 -0
- package/components/Input/index.js +2 -0
- package/components/Input/index.js.map +1 -0
- package/components/Input/input.module.css +394 -0
- package/components/Link/Link.d.ts +86 -0
- package/components/Link/Link.d.ts.map +1 -0
- package/components/Link/Link.js +140 -0
- package/components/Link/Link.js.map +1 -0
- package/components/Link/index.d.ts +2 -0
- package/components/Link/index.d.ts.map +1 -0
- package/components/Link/index.js +2 -0
- package/components/Link/index.js.map +1 -0
- package/components/Link/link.module.css +330 -0
- package/components/Map/Map.d.ts +192 -0
- package/components/Map/Map.d.ts.map +1 -0
- package/components/Map/Map.js +500 -0
- package/components/Map/Map.js.map +1 -0
- package/components/Map/MapCanvas.d.ts +29 -0
- package/components/Map/MapCanvas.d.ts.map +1 -0
- package/components/Map/MapCanvas.js +295 -0
- package/components/Map/MapCanvas.js.map +1 -0
- package/components/Map/index.d.ts +2 -0
- package/components/Map/index.d.ts.map +1 -0
- package/components/Map/index.js +2 -0
- package/components/Map/index.js.map +1 -0
- package/components/Map/map.module.css +501 -0
- package/components/Map/mapStyle.d.ts +72 -0
- package/components/Map/mapStyle.d.ts.map +1 -0
- package/components/Map/mapStyle.js +441 -0
- package/components/Map/mapStyle.js.map +1 -0
- package/components/Map/types.d.ts +59 -0
- package/components/Map/types.d.ts.map +1 -0
- package/components/Map/types.js +2 -0
- package/components/Map/types.js.map +1 -0
- package/components/Marquee/Marquee.d.ts +65 -0
- package/components/Marquee/Marquee.d.ts.map +1 -0
- package/components/Marquee/Marquee.js +87 -0
- package/components/Marquee/Marquee.js.map +1 -0
- package/components/Marquee/index.d.ts +2 -0
- package/components/Marquee/index.d.ts.map +1 -0
- package/components/Marquee/index.js +2 -0
- package/components/Marquee/index.js.map +1 -0
- package/components/Marquee/marquee.module.css +151 -0
- package/components/Menu/Menu.d.ts +113 -0
- package/components/Menu/Menu.d.ts.map +1 -0
- package/components/Menu/Menu.js +161 -0
- package/components/Menu/Menu.js.map +1 -0
- package/components/Menu/index.d.ts +2 -0
- package/components/Menu/index.d.ts.map +1 -0
- package/components/Menu/index.js +2 -0
- package/components/Menu/index.js.map +1 -0
- package/components/Menu/menu.module.css +244 -0
- package/components/Menu/popup.d.ts +44 -0
- package/components/Menu/popup.d.ts.map +1 -0
- package/components/Menu/popup.js +39 -0
- package/components/Menu/popup.js.map +1 -0
- package/components/Menubar/Menubar.d.ts +53 -0
- package/components/Menubar/Menubar.d.ts.map +1 -0
- package/components/Menubar/Menubar.js +81 -0
- package/components/Menubar/Menubar.js.map +1 -0
- package/components/Menubar/index.d.ts +2 -0
- package/components/Menubar/index.d.ts.map +1 -0
- package/components/Menubar/index.js +2 -0
- package/components/Menubar/index.js.map +1 -0
- package/components/Menubar/menubar.module.css +124 -0
- package/components/Meter/Meter.d.ts +67 -0
- package/components/Meter/Meter.d.ts.map +1 -0
- package/components/Meter/Meter.js +145 -0
- package/components/Meter/Meter.js.map +1 -0
- package/components/Meter/index.d.ts +2 -0
- package/components/Meter/index.d.ts.map +1 -0
- package/components/Meter/index.js +2 -0
- package/components/Meter/index.js.map +1 -0
- package/components/Meter/meter.module.css +384 -0
- package/components/NavDrawer/NavDrawer.d.ts +113 -0
- package/components/NavDrawer/NavDrawer.d.ts.map +1 -0
- package/components/NavDrawer/NavDrawer.js +215 -0
- package/components/NavDrawer/NavDrawer.js.map +1 -0
- package/components/NavDrawer/index.d.ts +2 -0
- package/components/NavDrawer/index.d.ts.map +1 -0
- package/components/NavDrawer/index.js +2 -0
- package/components/NavDrawer/index.js.map +1 -0
- package/components/NavDrawer/nav-drawer.module.css +446 -0
- package/components/NavigationBar/NavigationBar.d.ts +129 -0
- package/components/NavigationBar/NavigationBar.d.ts.map +1 -0
- package/components/NavigationBar/NavigationBar.js +224 -0
- package/components/NavigationBar/NavigationBar.js.map +1 -0
- package/components/NavigationBar/index.d.ts +2 -0
- package/components/NavigationBar/index.d.ts.map +1 -0
- package/components/NavigationBar/index.js +2 -0
- package/components/NavigationBar/index.js.map +1 -0
- package/components/NavigationBar/navigation-bar.module.css +413 -0
- package/components/NavigationMenu/NavigationMenu.d.ts +243 -0
- package/components/NavigationMenu/NavigationMenu.d.ts.map +1 -0
- package/components/NavigationMenu/NavigationMenu.js +512 -0
- package/components/NavigationMenu/NavigationMenu.js.map +1 -0
- package/components/NavigationMenu/index.d.ts +2 -0
- package/components/NavigationMenu/index.d.ts.map +1 -0
- package/components/NavigationMenu/index.js +2 -0
- package/components/NavigationMenu/index.js.map +1 -0
- package/components/NavigationMenu/navigation-menu.module.css +636 -0
- package/components/Newsletter/Newsletter.d.ts +146 -0
- package/components/Newsletter/Newsletter.d.ts.map +1 -0
- package/components/Newsletter/Newsletter.js +241 -0
- package/components/Newsletter/Newsletter.js.map +1 -0
- package/components/Newsletter/index.d.ts +2 -0
- package/components/Newsletter/index.d.ts.map +1 -0
- package/components/Newsletter/index.js +2 -0
- package/components/Newsletter/index.js.map +1 -0
- package/components/Newsletter/newsletter.module.css +552 -0
- package/components/NumberField/NumberField.d.ts +67 -0
- package/components/NumberField/NumberField.d.ts.map +1 -0
- package/components/NumberField/NumberField.js +105 -0
- package/components/NumberField/NumberField.js.map +1 -0
- package/components/NumberField/index.d.ts +2 -0
- package/components/NumberField/index.d.ts.map +1 -0
- package/components/NumberField/index.js +2 -0
- package/components/NumberField/index.js.map +1 -0
- package/components/NumberField/number-field.module.css +429 -0
- package/components/Pagination/Pagination.d.ts +112 -0
- package/components/Pagination/Pagination.d.ts.map +1 -0
- package/components/Pagination/Pagination.js +202 -0
- package/components/Pagination/Pagination.js.map +1 -0
- package/components/Pagination/index.d.ts +2 -0
- package/components/Pagination/index.d.ts.map +1 -0
- package/components/Pagination/index.js +2 -0
- package/components/Pagination/index.js.map +1 -0
- package/components/Pagination/pagination.module.css +400 -0
- package/components/Popover/Popover.d.ts +96 -0
- package/components/Popover/Popover.d.ts.map +1 -0
- package/components/Popover/Popover.js +131 -0
- package/components/Popover/Popover.js.map +1 -0
- package/components/Popover/index.d.ts +2 -0
- package/components/Popover/index.d.ts.map +1 -0
- package/components/Popover/index.js +2 -0
- package/components/Popover/index.js.map +1 -0
- package/components/Popover/popover.module.css +194 -0
- package/components/PreviewCard/PreviewCard.d.ts +83 -0
- package/components/PreviewCard/PreviewCard.d.ts.map +1 -0
- package/components/PreviewCard/PreviewCard.js +123 -0
- package/components/PreviewCard/PreviewCard.js.map +1 -0
- package/components/PreviewCard/index.d.ts +2 -0
- package/components/PreviewCard/index.d.ts.map +1 -0
- package/components/PreviewCard/index.js +2 -0
- package/components/PreviewCard/index.js.map +1 -0
- package/components/PreviewCard/preview-card.module.css +177 -0
- package/components/Pricing/Pricing.d.ts +190 -0
- package/components/Pricing/Pricing.d.ts.map +1 -0
- package/components/Pricing/Pricing.js +350 -0
- package/components/Pricing/Pricing.js.map +1 -0
- package/components/Pricing/index.d.ts +2 -0
- package/components/Pricing/index.d.ts.map +1 -0
- package/components/Pricing/index.js +2 -0
- package/components/Pricing/index.js.map +1 -0
- package/components/Pricing/pricing.module.css +485 -0
- package/components/Profile/Profile.d.ts +120 -0
- package/components/Profile/Profile.d.ts.map +1 -0
- package/components/Profile/Profile.js +230 -0
- package/components/Profile/Profile.js.map +1 -0
- package/components/Profile/index.d.ts +2 -0
- package/components/Profile/index.d.ts.map +1 -0
- package/components/Profile/index.js +2 -0
- package/components/Profile/index.js.map +1 -0
- package/components/Profile/profile.module.css +272 -0
- package/components/Progress/Progress.d.ts +63 -0
- package/components/Progress/Progress.d.ts.map +1 -0
- package/components/Progress/Progress.js +129 -0
- package/components/Progress/Progress.js.map +1 -0
- package/components/Progress/index.d.ts +2 -0
- package/components/Progress/index.d.ts.map +1 -0
- package/components/Progress/index.js +2 -0
- package/components/Progress/index.js.map +1 -0
- package/components/Progress/progress.module.css +280 -0
- package/components/Quote/Quote.d.ts +99 -0
- package/components/Quote/Quote.d.ts.map +1 -0
- package/components/Quote/Quote.js +168 -0
- package/components/Quote/Quote.js.map +1 -0
- package/components/Quote/index.d.ts +2 -0
- package/components/Quote/index.d.ts.map +1 -0
- package/components/Quote/index.js +2 -0
- package/components/Quote/index.js.map +1 -0
- package/components/Quote/quote.module.css +184 -0
- package/components/Radio/Radio.d.ts +81 -0
- package/components/Radio/Radio.d.ts.map +1 -0
- package/components/Radio/Radio.js +119 -0
- package/components/Radio/Radio.js.map +1 -0
- package/components/Radio/index.d.ts +2 -0
- package/components/Radio/index.d.ts.map +1 -0
- package/components/Radio/index.js +2 -0
- package/components/Radio/index.js.map +1 -0
- package/components/Radio/radio.module.css +449 -0
- package/components/RadioGroup/RadioGroup.d.ts +35 -0
- package/components/RadioGroup/RadioGroup.d.ts.map +1 -0
- package/components/RadioGroup/RadioGroup.js +61 -0
- package/components/RadioGroup/RadioGroup.js.map +1 -0
- package/components/RadioGroup/index.d.ts +2 -0
- package/components/RadioGroup/index.d.ts.map +1 -0
- package/components/RadioGroup/index.js +2 -0
- package/components/RadioGroup/index.js.map +1 -0
- package/components/RadioGroup/radio-group.module.css +57 -0
- package/components/ScrollArea/ScrollArea.d.ts +67 -0
- package/components/ScrollArea/ScrollArea.d.ts.map +1 -0
- package/components/ScrollArea/ScrollArea.js +87 -0
- package/components/ScrollArea/ScrollArea.js.map +1 -0
- package/components/ScrollArea/index.d.ts +2 -0
- package/components/ScrollArea/index.d.ts.map +1 -0
- package/components/ScrollArea/index.js +2 -0
- package/components/ScrollArea/index.js.map +1 -0
- package/components/ScrollArea/scroll-area.module.css +247 -0
- package/components/Search/Search.d.ts +119 -0
- package/components/Search/Search.d.ts.map +1 -0
- package/components/Search/Search.js +127 -0
- package/components/Search/Search.js.map +1 -0
- package/components/Search/index.d.ts +2 -0
- package/components/Search/index.d.ts.map +1 -0
- package/components/Search/index.js +2 -0
- package/components/Search/index.js.map +1 -0
- package/components/Search/search.module.css +326 -0
- package/components/SectionBar/SectionBar.d.ts +131 -0
- package/components/SectionBar/SectionBar.d.ts.map +1 -0
- package/components/SectionBar/SectionBar.js +292 -0
- package/components/SectionBar/SectionBar.js.map +1 -0
- package/components/SectionBar/index.d.ts +2 -0
- package/components/SectionBar/index.d.ts.map +1 -0
- package/components/SectionBar/index.js +2 -0
- package/components/SectionBar/index.js.map +1 -0
- package/components/SectionBar/section-bar.module.css +598 -0
- package/components/SectionDivider/SectionDivider.d.ts +80 -0
- package/components/SectionDivider/SectionDivider.d.ts.map +1 -0
- package/components/SectionDivider/SectionDivider.js +158 -0
- package/components/SectionDivider/SectionDivider.js.map +1 -0
- package/components/SectionDivider/index.d.ts +2 -0
- package/components/SectionDivider/index.d.ts.map +1 -0
- package/components/SectionDivider/index.js +2 -0
- package/components/SectionDivider/index.js.map +1 -0
- package/components/SectionDivider/section-divider.module.css +275 -0
- package/components/SectionHeader/SectionHeader.d.ts +121 -0
- package/components/SectionHeader/SectionHeader.d.ts.map +1 -0
- package/components/SectionHeader/SectionHeader.js +141 -0
- package/components/SectionHeader/SectionHeader.js.map +1 -0
- package/components/SectionHeader/index.d.ts +2 -0
- package/components/SectionHeader/index.d.ts.map +1 -0
- package/components/SectionHeader/index.js +2 -0
- package/components/SectionHeader/index.js.map +1 -0
- package/components/SectionHeader/section-header.module.css +319 -0
- package/components/Select/Select.d.ts +104 -0
- package/components/Select/Select.d.ts.map +1 -0
- package/components/Select/Select.js +154 -0
- package/components/Select/Select.js.map +1 -0
- package/components/Select/index.d.ts +2 -0
- package/components/Select/index.d.ts.map +1 -0
- package/components/Select/index.js +2 -0
- package/components/Select/index.js.map +1 -0
- package/components/Select/select.module.css +398 -0
- package/components/Separator/Separator.d.ts +47 -0
- package/components/Separator/Separator.d.ts.map +1 -0
- package/components/Separator/Separator.js +62 -0
- package/components/Separator/Separator.js.map +1 -0
- package/components/Separator/index.d.ts +2 -0
- package/components/Separator/index.d.ts.map +1 -0
- package/components/Separator/index.js +2 -0
- package/components/Separator/index.js.map +1 -0
- package/components/Separator/separator.module.css +174 -0
- package/components/Slider/Slider.d.ts +54 -0
- package/components/Slider/Slider.d.ts.map +1 -0
- package/components/Slider/Slider.js +118 -0
- package/components/Slider/Slider.js.map +1 -0
- package/components/Slider/index.d.ts +2 -0
- package/components/Slider/index.d.ts.map +1 -0
- package/components/Slider/index.js +2 -0
- package/components/Slider/index.js.map +1 -0
- package/components/Slider/slider.module.css +371 -0
- package/components/SpecGrid/SpecGrid.d.ts +49 -0
- package/components/SpecGrid/SpecGrid.d.ts.map +1 -0
- package/components/SpecGrid/SpecGrid.js +75 -0
- package/components/SpecGrid/SpecGrid.js.map +1 -0
- package/components/SpecGrid/index.d.ts +2 -0
- package/components/SpecGrid/index.d.ts.map +1 -0
- package/components/SpecGrid/index.js +2 -0
- package/components/SpecGrid/index.js.map +1 -0
- package/components/SpecGrid/spec-grid.module.css +142 -0
- package/components/SpecList/SpecList.d.ts +32 -0
- package/components/SpecList/SpecList.d.ts.map +1 -0
- package/components/SpecList/SpecList.js +51 -0
- package/components/SpecList/SpecList.js.map +1 -0
- package/components/SpecList/index.d.ts +2 -0
- package/components/SpecList/index.d.ts.map +1 -0
- package/components/SpecList/index.js +2 -0
- package/components/SpecList/index.js.map +1 -0
- package/components/SpecList/spec-list.module.css +95 -0
- package/components/SpecSheet/SpecSheet.d.ts +112 -0
- package/components/SpecSheet/SpecSheet.d.ts.map +1 -0
- package/components/SpecSheet/SpecSheet.js +128 -0
- package/components/SpecSheet/SpecSheet.js.map +1 -0
- package/components/SpecSheet/index.d.ts +2 -0
- package/components/SpecSheet/index.d.ts.map +1 -0
- package/components/SpecSheet/index.js +2 -0
- package/components/SpecSheet/index.js.map +1 -0
- package/components/SpecSheet/spec-sheet.module.css +278 -0
- package/components/Stat/Stat.d.ts +74 -0
- package/components/Stat/Stat.d.ts.map +1 -0
- package/components/Stat/Stat.js +159 -0
- package/components/Stat/Stat.js.map +1 -0
- package/components/Stat/index.d.ts +2 -0
- package/components/Stat/index.d.ts.map +1 -0
- package/components/Stat/index.js +2 -0
- package/components/Stat/index.js.map +1 -0
- package/components/Stat/stat.module.css +299 -0
- package/components/Sticker/Sticker.d.ts +71 -0
- package/components/Sticker/Sticker.d.ts.map +1 -0
- package/components/Sticker/Sticker.js +104 -0
- package/components/Sticker/Sticker.js.map +1 -0
- package/components/Sticker/index.d.ts +2 -0
- package/components/Sticker/index.d.ts.map +1 -0
- package/components/Sticker/index.js +2 -0
- package/components/Sticker/index.js.map +1 -0
- package/components/Sticker/sticker.module.css +87 -0
- package/components/Switch/Switch.d.ts +57 -0
- package/components/Switch/Switch.d.ts.map +1 -0
- package/components/Switch/Switch.js +82 -0
- package/components/Switch/Switch.js.map +1 -0
- package/components/Switch/index.d.ts +2 -0
- package/components/Switch/index.d.ts.map +1 -0
- package/components/Switch/index.js +2 -0
- package/components/Switch/index.js.map +1 -0
- package/components/Switch/switch.module.css +285 -0
- package/components/Table/Table.d.ts +164 -0
- package/components/Table/Table.d.ts.map +1 -0
- package/components/Table/Table.js +255 -0
- package/components/Table/Table.js.map +1 -0
- package/components/Table/index.d.ts +2 -0
- package/components/Table/index.d.ts.map +1 -0
- package/components/Table/index.js +2 -0
- package/components/Table/index.js.map +1 -0
- package/components/Table/table.module.css +751 -0
- package/components/Tabs/Tabs.d.ts +93 -0
- package/components/Tabs/Tabs.d.ts.map +1 -0
- package/components/Tabs/Tabs.js +175 -0
- package/components/Tabs/Tabs.js.map +1 -0
- package/components/Tabs/index.d.ts +2 -0
- package/components/Tabs/index.d.ts.map +1 -0
- package/components/Tabs/index.js +2 -0
- package/components/Tabs/index.js.map +1 -0
- package/components/Tabs/tabs.module.css +339 -0
- package/components/Tag/Tag.d.ts +40 -0
- package/components/Tag/Tag.d.ts.map +1 -0
- package/components/Tag/Tag.js +56 -0
- package/components/Tag/Tag.js.map +1 -0
- package/components/Tag/index.d.ts +2 -0
- package/components/Tag/index.d.ts.map +1 -0
- package/components/Tag/index.js +2 -0
- package/components/Tag/index.js.map +1 -0
- package/components/Tag/tag.module.css +99 -0
- package/components/Timeline/Timeline.d.ts +164 -0
- package/components/Timeline/Timeline.d.ts.map +1 -0
- package/components/Timeline/Timeline.js +314 -0
- package/components/Timeline/Timeline.js.map +1 -0
- package/components/Timeline/index.d.ts +2 -0
- package/components/Timeline/index.d.ts.map +1 -0
- package/components/Timeline/index.js +2 -0
- package/components/Timeline/index.js.map +1 -0
- package/components/Timeline/timeline.module.css +428 -0
- package/components/Toast/Toast.d.ts +89 -0
- package/components/Toast/Toast.d.ts.map +1 -0
- package/components/Toast/Toast.js +171 -0
- package/components/Toast/Toast.js.map +1 -0
- package/components/Toast/index.d.ts +2 -0
- package/components/Toast/index.d.ts.map +1 -0
- package/components/Toast/index.js +2 -0
- package/components/Toast/index.js.map +1 -0
- package/components/Toast/toast.module.css +270 -0
- package/components/Toggle/Toggle.d.ts +78 -0
- package/components/Toggle/Toggle.d.ts.map +1 -0
- package/components/Toggle/Toggle.js +101 -0
- package/components/Toggle/Toggle.js.map +1 -0
- package/components/Toggle/index.d.ts +2 -0
- package/components/Toggle/index.d.ts.map +1 -0
- package/components/Toggle/index.js +2 -0
- package/components/Toggle/index.js.map +1 -0
- package/components/Toggle/toggle.module.css +281 -0
- package/components/ToggleGroup/ToggleGroup.d.ts +43 -0
- package/components/ToggleGroup/ToggleGroup.d.ts.map +1 -0
- package/components/ToggleGroup/ToggleGroup.js +85 -0
- package/components/ToggleGroup/ToggleGroup.js.map +1 -0
- package/components/ToggleGroup/index.d.ts +2 -0
- package/components/ToggleGroup/index.d.ts.map +1 -0
- package/components/ToggleGroup/index.js +2 -0
- package/components/ToggleGroup/index.js.map +1 -0
- package/components/ToggleGroup/toggle-group.module.css +139 -0
- package/components/Toolbar/Toolbar.d.ts +125 -0
- package/components/Toolbar/Toolbar.d.ts.map +1 -0
- package/components/Toolbar/Toolbar.js +174 -0
- package/components/Toolbar/Toolbar.js.map +1 -0
- package/components/Toolbar/index.d.ts +2 -0
- package/components/Toolbar/index.d.ts.map +1 -0
- package/components/Toolbar/index.js +2 -0
- package/components/Toolbar/index.js.map +1 -0
- package/components/Toolbar/toolbar.module.css +273 -0
- package/components/Tooltip/Tooltip.d.ts +72 -0
- package/components/Tooltip/Tooltip.d.ts.map +1 -0
- package/components/Tooltip/Tooltip.js +108 -0
- package/components/Tooltip/Tooltip.js.map +1 -0
- package/components/Tooltip/index.d.ts +2 -0
- package/components/Tooltip/index.d.ts.map +1 -0
- package/components/Tooltip/index.js +2 -0
- package/components/Tooltip/index.js.map +1 -0
- package/components/Tooltip/tooltip.module.css +120 -0
- package/icons/paths.d.ts +35 -0
- package/icons/paths.d.ts.map +1 -0
- package/icons/paths.js +150 -0
- package/icons/paths.js.map +1 -0
- package/package.json +112 -0
- package/utils/ClientProvider.d.ts +18 -0
- package/utils/ClientProvider.d.ts.map +1 -0
- package/utils/ClientProvider.js +55 -0
- package/utils/ClientProvider.js.map +1 -0
- package/utils/Ornament.d.ts +93 -0
- package/utils/Ornament.d.ts.map +1 -0
- package/utils/Ornament.js +160 -0
- package/utils/Ornament.js.map +1 -0
- package/utils/StatusGlyph.d.ts +24 -0
- package/utils/StatusGlyph.d.ts.map +1 -0
- package/utils/StatusGlyph.js +39 -0
- package/utils/StatusGlyph.js.map +1 -0
- package/utils/assignRef.d.ts +7 -0
- package/utils/assignRef.d.ts.map +1 -0
- package/utils/assignRef.js +11 -0
- package/utils/assignRef.js.map +1 -0
- package/utils/className.d.ts +10 -0
- package/utils/className.d.ts.map +1 -0
- package/utils/className.js +21 -0
- package/utils/className.js.map +1 -0
- package/utils/colors/amber.css +101 -0
- package/utils/colors/amberDarkDefault.css +101 -0
- package/utils/colors/amberLightDefault.css +67 -0
- package/utils/colors/blue.css +101 -0
- package/utils/colors/blueDarkDefault.css +101 -0
- package/utils/colors/blueLightDefault.css +67 -0
- package/utils/colors/bronze.css +101 -0
- package/utils/colors/bronzeDarkDefault.css +101 -0
- package/utils/colors/bronzeLightDefault.css +67 -0
- package/utils/colors/brown.css +101 -0
- package/utils/colors/brownDarkDefault.css +101 -0
- package/utils/colors/brownLightDefault.css +67 -0
- package/utils/colors/crimson.css +101 -0
- package/utils/colors/crimsonDarkDefault.css +101 -0
- package/utils/colors/crimsonLightDefault.css +67 -0
- package/utils/colors/cyan.css +101 -0
- package/utils/colors/cyanDarkDefault.css +101 -0
- package/utils/colors/cyanLightDefault.css +67 -0
- package/utils/colors/gold.css +101 -0
- package/utils/colors/goldDarkDefault.css +101 -0
- package/utils/colors/goldLightDefault.css +67 -0
- package/utils/colors/grass.css +101 -0
- package/utils/colors/grassDarkDefault.css +101 -0
- package/utils/colors/grassLightDefault.css +67 -0
- package/utils/colors/gray.css +101 -0
- package/utils/colors/grayDarkDefault.css +101 -0
- package/utils/colors/grayLightDefault.css +67 -0
- package/utils/colors/green.css +101 -0
- package/utils/colors/greenDarkDefault.css +101 -0
- package/utils/colors/greenLightDefault.css +67 -0
- package/utils/colors/indigo.css +101 -0
- package/utils/colors/indigoDarkDefault.css +101 -0
- package/utils/colors/indigoLightDefault.css +67 -0
- package/utils/colors/iris.css +101 -0
- package/utils/colors/irisDarkDefault.css +101 -0
- package/utils/colors/irisLightDefault.css +67 -0
- package/utils/colors/jade.css +101 -0
- package/utils/colors/jadeDarkDefault.css +101 -0
- package/utils/colors/jadeLightDefault.css +67 -0
- package/utils/colors/lime.css +101 -0
- package/utils/colors/limeDarkDefault.css +101 -0
- package/utils/colors/limeLightDefault.css +67 -0
- package/utils/colors/mauve.css +101 -0
- package/utils/colors/mauveDarkDefault.css +101 -0
- package/utils/colors/mauveLightDefault.css +67 -0
- package/utils/colors/mint.css +101 -0
- package/utils/colors/mintDarkDefault.css +101 -0
- package/utils/colors/mintLightDefault.css +67 -0
- package/utils/colors/olive.css +101 -0
- package/utils/colors/oliveDarkDefault.css +101 -0
- package/utils/colors/oliveLightDefault.css +67 -0
- package/utils/colors/orange.css +101 -0
- package/utils/colors/orangeDarkDefault.css +101 -0
- package/utils/colors/orangeLightDefault.css +67 -0
- package/utils/colors/pink.css +101 -0
- package/utils/colors/pinkDarkDefault.css +101 -0
- package/utils/colors/pinkLightDefault.css +67 -0
- package/utils/colors/plum.css +101 -0
- package/utils/colors/plumDarkDefault.css +101 -0
- package/utils/colors/plumLightDefault.css +67 -0
- package/utils/colors/purple.css +101 -0
- package/utils/colors/purpleDarkDefault.css +101 -0
- package/utils/colors/purpleLightDefault.css +67 -0
- package/utils/colors/red.css +101 -0
- package/utils/colors/redDarkDefault.css +101 -0
- package/utils/colors/redLightDefault.css +67 -0
- package/utils/colors/ruby.css +101 -0
- package/utils/colors/rubyDarkDefault.css +101 -0
- package/utils/colors/rubyLightDefault.css +67 -0
- package/utils/colors/sage.css +101 -0
- package/utils/colors/sageDarkDefault.css +101 -0
- package/utils/colors/sageLightDefault.css +67 -0
- package/utils/colors/sand.css +101 -0
- package/utils/colors/sandDarkDefault.css +101 -0
- package/utils/colors/sandLightDefault.css +67 -0
- package/utils/colors/sky.css +101 -0
- package/utils/colors/skyDarkDefault.css +101 -0
- package/utils/colors/skyLightDefault.css +67 -0
- package/utils/colors/slate.css +101 -0
- package/utils/colors/slateDarkDefault.css +101 -0
- package/utils/colors/slateLightDefault.css +67 -0
- package/utils/colors/teal.css +101 -0
- package/utils/colors/tealDarkDefault.css +101 -0
- package/utils/colors/tealLightDefault.css +67 -0
- package/utils/colors/tomato.css +101 -0
- package/utils/colors/tomatoDarkDefault.css +101 -0
- package/utils/colors/tomatoLightDefault.css +67 -0
- package/utils/colors/violet.css +101 -0
- package/utils/colors/violetDarkDefault.css +101 -0
- package/utils/colors/violetLightDefault.css +67 -0
- package/utils/colors/yellow.css +101 -0
- package/utils/colors/yellowDarkDefault.css +101 -0
- package/utils/colors/yellowLightDefault.css +67 -0
- package/utils/colors.css +2441 -0
- package/utils/colorsDarkDefault.css +2441 -0
- package/utils/colorsLightDefault.css +1627 -0
- package/utils/fonts.d.ts +11 -0
- package/utils/fonts.d.ts.map +1 -0
- package/utils/fonts.js +12 -0
- package/utils/fonts.js.map +1 -0
- package/utils/global.css +3747 -0
- package/utils/highlightMatch.d.ts +7 -0
- package/utils/highlightMatch.d.ts.map +1 -0
- package/utils/highlightMatch.js +25 -0
- package/utils/highlightMatch.js.map +1 -0
- package/utils/layers.css +3 -0
- package/utils/line.module.css +101 -0
- package/utils/media.css +11 -0
- package/utils/navigation.d.ts +100 -0
- package/utils/navigation.d.ts.map +1 -0
- package/utils/navigation.js +65 -0
- package/utils/navigation.js.map +1 -0
- package/utils/ornament.module.css +224 -0
- package/utils/overlay.d.ts +49 -0
- package/utils/overlay.d.ts.map +1 -0
- package/utils/overlay.js +73 -0
- package/utils/overlay.js.map +1 -0
- package/utils/pattern.module.css +386 -0
- package/utils/print.css +125 -0
- package/utils/printUrl.d.ts +13 -0
- package/utils/printUrl.d.ts.map +1 -0
- package/utils/printUrl.js +43 -0
- package/utils/printUrl.js.map +1 -0
- package/utils/reset.css +129 -0
- package/utils/roles.css +689 -0
- package/utils/scales.d.ts +20 -0
- package/utils/scales.d.ts.map +1 -0
- package/utils/scales.js +156 -0
- package/utils/scales.js.map +1 -0
- package/utils/scales.module.css +1590 -0
- package/utils/scope.d.ts +119 -0
- package/utils/scope.d.ts.map +1 -0
- package/utils/scope.js +145 -0
- package/utils/scope.js.map +1 -0
- package/utils/seriesPatterns.d.ts +75 -0
- package/utils/seriesPatterns.d.ts.map +1 -0
- package/utils/seriesPatterns.js +118 -0
- package/utils/seriesPatterns.js.map +1 -0
- package/utils/theme.css +28 -0
- package/utils/tokens.css +317 -0
- package/utils/tokens.d.ts +36 -0
- package/utils/tokens.d.ts.map +1 -0
- package/utils/tokens.js +38 -0
- package/utils/tokens.js.map +1 -0
- package/utils/type.module.css +342 -0
- package/utils/useColorScheme.d.ts +12 -0
- package/utils/useColorScheme.d.ts.map +1 -0
- package/utils/useColorScheme.js +43 -0
- package/utils/useColorScheme.js.map +1 -0
- package/utils/useMediaQuery.d.ts +8 -0
- package/utils/useMediaQuery.d.ts.map +1 -0
- package/utils/useMediaQuery.js +17 -0
- package/utils/useMediaQuery.js.map +1 -0
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { Toast as BaseToast } from '@base-ui/react/toast';
|
|
4
|
+
import { Button as BaseButton } from '@base-ui/react/button';
|
|
5
|
+
import { cva } from 'class-variance-authority';
|
|
6
|
+
import { Button } from '../Button';
|
|
7
|
+
import { StatusGlyph, statusLabels, statusScales } from '../../utils/StatusGlyph';
|
|
8
|
+
import { cx } from '../../utils/className';
|
|
9
|
+
import { OverlayScope, overlayActionClassName, overlayAttributes, overlayScales, } from '../../utils/overlay';
|
|
10
|
+
import { primaryScaleVariants, secondaryScaleVariants, } from '../../utils/scales';
|
|
11
|
+
import styles from './toast.module.css';
|
|
12
|
+
/*
|
|
13
|
+
* Toast (§10.17): a brief confirmation or a non-blocking notice, docked as
|
|
14
|
+
* a full-width bar, never a floating card [D25].
|
|
15
|
+
*
|
|
16
|
+
* Implementation (CSS Modules + CVA)
|
|
17
|
+
* - Module: toast.module.css; CVA function `toast` (one toast in the bar).
|
|
18
|
+
* - Axes: `status` → info | success | warning | danger (selects the glyph
|
|
19
|
+
* and its scale; it carries no class; omitted for the neutral toast);
|
|
20
|
+
* `primary`, `secondary` → scales module classes on the bar's scope
|
|
21
|
+
* (ToastProvider).
|
|
22
|
+
* - Compound variants: none. Defaults: no `status`; color axes: none.
|
|
23
|
+
* - Color fallback: the glyph takes the status scale [D129]; the bar takes
|
|
24
|
+
* the `white` preset's defaults.
|
|
25
|
+
* - States: Root data-starting-style / data-ending-style → the clip reveal
|
|
26
|
+
* from the bottom edge, instant under --motionNotOK [D91]; data-limited →
|
|
27
|
+
* hidden beyond the one visible toast (the queue count shows); Base UI's
|
|
28
|
+
* data-type is not styled. Action :hover → label --role-link-hover, as
|
|
29
|
+
* the §9.2 `text` Button (underlined where that is --primary12) [D181],
|
|
30
|
+
* :focus-visible → ring inside the cell, :active → the inverse pair,
|
|
31
|
+
* aria-busy → "Undoing…" at rest width. Close is an icon-only Button.
|
|
32
|
+
* - Parts: viewport (the docked bar's host), base (a toast, the bar), glyph,
|
|
33
|
+
* message, title, description, queue, actions, action, close.
|
|
34
|
+
* - Scope: the viewport renders in its Base UI Portal and declares a nested
|
|
35
|
+
* `white` scope (`page` scheme, no data-theme); its rule is the
|
|
36
|
+
* --border-size-2 --primary12 overlay frame on the content side only
|
|
37
|
+
* [D23, D89, D139, D156].
|
|
38
|
+
* - Container: none; the bar is page frame and uses the viewport media.
|
|
39
|
+
*
|
|
40
|
+
* Timing: auto-dismissing toasts stay at least --ds-duration-toast (6 s)
|
|
41
|
+
* and pause on hover, on focus and while the tab is hidden; warning,
|
|
42
|
+
* danger and action toasts persist until acted on or dismissed.
|
|
43
|
+
*/
|
|
44
|
+
export const toast = cva(styles.base);
|
|
45
|
+
/** --ds-duration-toast, restated in ms for Base UI's timers. */
|
|
46
|
+
const TOAST_DURATION = 6000;
|
|
47
|
+
function isStatus(type) {
|
|
48
|
+
return type === 'info' || type === 'success' || type === 'warning' || type === 'danger';
|
|
49
|
+
}
|
|
50
|
+
/** Base UI's promise toasts report `error`; the system calls it danger. */
|
|
51
|
+
function toStatus(type) {
|
|
52
|
+
if (type === 'error')
|
|
53
|
+
return 'danger';
|
|
54
|
+
return isStatus(type) ? type : undefined;
|
|
55
|
+
}
|
|
56
|
+
/** At least --ds-duration-toast; 0 persists; undefined keeps the provider's. */
|
|
57
|
+
function clampTimeout(timeout) {
|
|
58
|
+
if (timeout === undefined)
|
|
59
|
+
return undefined;
|
|
60
|
+
return timeout <= 0 ? 0 : Math.max(timeout, TOAST_DURATION);
|
|
61
|
+
}
|
|
62
|
+
/** Applies the §10.17 rules: persistence, the minimum time and assertive danger. */
|
|
63
|
+
function toBaseOptions(options, previous) {
|
|
64
|
+
const { status: statusOption, actions: actionsOption, timeout: timeoutOption, ...rest } = options;
|
|
65
|
+
const status = 'status' in options ? statusOption : toStatus(previous?.type);
|
|
66
|
+
const actions = 'actions' in options ? actionsOption : previous?.data?.actions;
|
|
67
|
+
const persists = status === 'warning' || status === 'danger' || (actions?.length ?? 0) > 0;
|
|
68
|
+
const timeout = persists
|
|
69
|
+
? 0
|
|
70
|
+
: clampTimeout('timeout' in options ? timeoutOption : previous?.timeout);
|
|
71
|
+
return {
|
|
72
|
+
...rest,
|
|
73
|
+
type: status,
|
|
74
|
+
timeout,
|
|
75
|
+
priority: status === 'danger' ? 'high' : 'low',
|
|
76
|
+
data: { ...previous?.data, actions },
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Adds, updates and closes toasts from inside a ToastProvider, with the
|
|
81
|
+
* §10.17 rules applied: warning, danger and action toasts persist, the
|
|
82
|
+
* rest stay at least 6 s, and danger is announced assertively.
|
|
83
|
+
*/
|
|
84
|
+
export function useToastManager() {
|
|
85
|
+
const manager = BaseToast.useToastManager();
|
|
86
|
+
const { toasts, add, update, close } = manager;
|
|
87
|
+
return React.useMemo(() => ({
|
|
88
|
+
toasts,
|
|
89
|
+
add: ({ id, ...options }) => add({ id, ...toBaseOptions(options) }),
|
|
90
|
+
update: (id, options) => update(id, (previous) => toBaseOptions(options, previous)),
|
|
91
|
+
close,
|
|
92
|
+
}), [toasts, add, update, close]);
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Provides toasts to its children and renders the docked bar: full width
|
|
96
|
+
* at the bottom viewport edge on --layer-5, a `white` scope with a
|
|
97
|
+
* --border-size-2 --primary12 top rule, content aligned to
|
|
98
|
+
* --ds-container-content. One toast shows at a time; a queue count
|
|
99
|
+
* ("1 of 3") shows while more wait. The page reserves no space for it.
|
|
100
|
+
*/
|
|
101
|
+
export function ToastProvider(props) {
|
|
102
|
+
const { children, timeout, toastManager, primary, secondary, label, container } = props;
|
|
103
|
+
return (React.createElement(BaseToast.Provider, { timeout: clampTimeout(timeout) ?? TOAST_DURATION, limit: 1, toastManager: toastManager },
|
|
104
|
+
children,
|
|
105
|
+
React.createElement(ToastViewport, { primary: primary, secondary: secondary, label: label, container: container })));
|
|
106
|
+
}
|
|
107
|
+
function ToastViewport(props) {
|
|
108
|
+
const { primary, secondary, label, container } = props;
|
|
109
|
+
const { toasts } = BaseToast.useToastManager();
|
|
110
|
+
const scales = overlayScales(primary, secondary);
|
|
111
|
+
const hasToasts = toasts.length > 0;
|
|
112
|
+
// A hidden tab pauses the timers. Base UI pauses on window blur, which
|
|
113
|
+
// switching tabs fires, but a page loaded or updated in a background tab
|
|
114
|
+
// never received one; send it while hidden. This effect runs after the
|
|
115
|
+
// viewport's own, which attach the listeners once a toast exists.
|
|
116
|
+
React.useEffect(() => {
|
|
117
|
+
if (!hasToasts)
|
|
118
|
+
return undefined;
|
|
119
|
+
const pauseWhileHidden = () => {
|
|
120
|
+
if (document.visibilityState === 'hidden') {
|
|
121
|
+
window.dispatchEvent(new FocusEvent('blur'));
|
|
122
|
+
}
|
|
123
|
+
};
|
|
124
|
+
pauseWhileHidden();
|
|
125
|
+
document.addEventListener('visibilitychange', pauseWhileHidden);
|
|
126
|
+
return () => document.removeEventListener('visibilitychange', pauseWhileHidden);
|
|
127
|
+
}, [hasToasts]);
|
|
128
|
+
const queued = toasts.filter((item) => item.transitionStatus !== 'ending');
|
|
129
|
+
return (React.createElement(BaseToast.Portal, { container: container },
|
|
130
|
+
React.createElement(BaseToast.Viewport, { ...overlayAttributes, "aria-label": label, className: cx(styles.viewport, primaryScaleVariants[scales.primary], secondaryScaleVariants[scales.secondary], overlayActionClassName) },
|
|
131
|
+
React.createElement(OverlayScope, null, toasts.map((item) => (React.createElement(ToastItem, { key: item.id, toast: item, position: queued.indexOf(item) + 1, total: queued.length })))))));
|
|
132
|
+
}
|
|
133
|
+
function ToastItem(props) {
|
|
134
|
+
const { toast: item, position, total } = props;
|
|
135
|
+
const status = toStatus(item.type);
|
|
136
|
+
const actions = item.data?.actions ?? [];
|
|
137
|
+
return (React.createElement(BaseToast.Root, { toast: item, className: toast() },
|
|
138
|
+
status ? (React.createElement(StatusGlyph, { ...overlayAttributes, status: status, label: statusLabels[status], className: cx(styles.glyph, secondaryScaleVariants[statusScales[status]]) })) : null,
|
|
139
|
+
React.createElement("div", { className: styles.message },
|
|
140
|
+
React.createElement(BaseToast.Title, { className: styles.title }),
|
|
141
|
+
React.createElement(BaseToast.Description, { className: styles.description })),
|
|
142
|
+
total > 1 && position > 0 ? (React.createElement("span", { className: styles.queue },
|
|
143
|
+
position,
|
|
144
|
+
" of ",
|
|
145
|
+
total)) : null,
|
|
146
|
+
actions.length > 0 ? (React.createElement("div", { className: styles.actions }, actions.map((action, index) => (React.createElement(ToastActionCell, { key: index, ...action }))))) : null,
|
|
147
|
+
React.createElement(BaseToast.Close, { className: styles.close, render: React.createElement(Button, { variant: "outline", iconOnly: true, icon: "close" }, "Close") })));
|
|
148
|
+
}
|
|
149
|
+
/** An action cell: holds its rest width while busy and ignores presses then [D84]. */
|
|
150
|
+
function ToastActionCell(props) {
|
|
151
|
+
const { onClick, disabled, ...rest } = props;
|
|
152
|
+
const busy = rest['aria-busy'] === true || rest['aria-busy'] === 'true';
|
|
153
|
+
const element = React.useRef(null);
|
|
154
|
+
const restWidth = React.useRef(null);
|
|
155
|
+
React.useLayoutEffect(() => {
|
|
156
|
+
if (!busy && element.current) {
|
|
157
|
+
restWidth.current = element.current.getBoundingClientRect().width;
|
|
158
|
+
}
|
|
159
|
+
});
|
|
160
|
+
React.useLayoutEffect(() => {
|
|
161
|
+
const node = element.current;
|
|
162
|
+
if (!busy || !node || restWidth.current === null)
|
|
163
|
+
return undefined;
|
|
164
|
+
node.style.setProperty('--toast-action-rest-width', `${restWidth.current}px`);
|
|
165
|
+
return () => {
|
|
166
|
+
node.style.removeProperty('--toast-action-rest-width');
|
|
167
|
+
};
|
|
168
|
+
}, [busy]);
|
|
169
|
+
return (React.createElement(BaseButton, { ...rest, ref: element, disabled: disabled, className: styles.action, onClick: busy ? undefined : onClick }));
|
|
170
|
+
}
|
|
171
|
+
//# sourceMappingURL=Toast.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Toast.js","sourceRoot":"","sources":["../../src/components/Toast/Toast.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/Toast/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components/Toast/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAA"}
|
|
@@ -0,0 +1,270 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Toast (§10.17). CVA function `toast` in Toast.tsx.
|
|
3
|
+
* Parts: viewport (the docked bar's host: the `white` scope), base (a toast:
|
|
4
|
+
* the bar itself), glyph, message, title, description, queue, actions,
|
|
5
|
+
* action, close.
|
|
6
|
+
*
|
|
7
|
+
* A full-width bar docked to the bottom viewport edge on --layer-5, never a
|
|
8
|
+
* floating card [D25]: the `white` scope's --primary1 face and a
|
|
9
|
+
* --border-size-2 --primary12 rule on its content side only [D23, D89],
|
|
10
|
+
* content aligned to --ds-container-content. Action cells are full-height
|
|
11
|
+
* `type-button` text cells divided by --border-size-1 --role-rule. One
|
|
12
|
+
* toast shows at a time. Motion is instant or a clip reveal from the bottom
|
|
13
|
+
* edge, never a fade [D91]. Colors are role variables only; local custom
|
|
14
|
+
* properties carry dimensions only.
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
/* Composition sits in top-level rules, outside the layers: Lightning CSS
|
|
18
|
+
* (Next.js with Turbopack) rejects `composes` inside @layer or any nesting.
|
|
19
|
+
* The composed classes keep their own layers. */
|
|
20
|
+
.base {
|
|
21
|
+
composes: typeBodyUi from '../../utils/type.module.css';
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
.title {
|
|
25
|
+
composes: typeBodyUi from '../../utils/type.module.css';
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
.description {
|
|
29
|
+
composes: typeBodyUi from '../../utils/type.module.css';
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
.queue {
|
|
33
|
+
composes: typeData from '../../utils/type.module.css';
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
.action {
|
|
37
|
+
composes: typeButton from '../../utils/type.module.css';
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
@layer base {
|
|
41
|
+
/* The host: docked, full width, no paint of its own (the toast is the bar). */
|
|
42
|
+
.viewport {
|
|
43
|
+
position: fixed;
|
|
44
|
+
inset-inline: 0;
|
|
45
|
+
inset-block-end: 0;
|
|
46
|
+
z-index: var(--layer-5);
|
|
47
|
+
margin: 0;
|
|
48
|
+
padding: 0;
|
|
49
|
+
color: var(--primary12);
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
/*
|
|
53
|
+
* The bar at base: glyph, message, queue count and close in one row; the
|
|
54
|
+
* action cells drop to a second row of equal cells under a rule.
|
|
55
|
+
*/
|
|
56
|
+
.base {
|
|
57
|
+
--toast-clip-from: inset(100% 0 0 0);
|
|
58
|
+
|
|
59
|
+
position: relative;
|
|
60
|
+
display: grid;
|
|
61
|
+
grid-template-columns: auto minmax(0, 1fr) auto auto;
|
|
62
|
+
grid-template-areas:
|
|
63
|
+
'glyph message queue close'
|
|
64
|
+
'actions actions actions actions';
|
|
65
|
+
align-items: center;
|
|
66
|
+
column-gap: var(--ds-space-12);
|
|
67
|
+
box-sizing: border-box;
|
|
68
|
+
min-block-size: var(--ds-size-control-xl);
|
|
69
|
+
padding-inline: max(
|
|
70
|
+
var(--ds-space-margin),
|
|
71
|
+
calc((100% - var(--ds-container-content)) / 2)
|
|
72
|
+
);
|
|
73
|
+
border-block-start: var(--border-size-2) solid var(--primary12);
|
|
74
|
+
background-color: var(--primary1);
|
|
75
|
+
color: var(--primary12);
|
|
76
|
+
clip-path: inset(0);
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
.glyph {
|
|
80
|
+
grid-area: glyph;
|
|
81
|
+
display: block;
|
|
82
|
+
inline-size: var(--size-px-4);
|
|
83
|
+
block-size: var(--size-px-4);
|
|
84
|
+
overflow: visible;
|
|
85
|
+
color: var(--role-status);
|
|
86
|
+
fill: var(--role-status-fill);
|
|
87
|
+
stroke: var(--role-status-fill);
|
|
88
|
+
stroke-width: var(--ds-stroke-1-5);
|
|
89
|
+
stroke-linecap: round;
|
|
90
|
+
stroke-linejoin: round;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
.message {
|
|
94
|
+
grid-area: message;
|
|
95
|
+
min-inline-size: 0;
|
|
96
|
+
padding-block: var(--ds-space-12);
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
.title,
|
|
100
|
+
.description {
|
|
101
|
+
color: var(--primary12);
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
.queue {
|
|
105
|
+
grid-area: queue;
|
|
106
|
+
color: var(--role-muted);
|
|
107
|
+
white-space: nowrap;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
.actions {
|
|
111
|
+
grid-area: actions;
|
|
112
|
+
display: flex;
|
|
113
|
+
border-block-start: var(--border-size-1) solid var(--role-rule);
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
/* A full-height text cell; the rules between cells are its inline-start edges. */
|
|
117
|
+
.action {
|
|
118
|
+
flex: 1 1 0;
|
|
119
|
+
display: inline-flex;
|
|
120
|
+
align-items: center;
|
|
121
|
+
justify-content: center;
|
|
122
|
+
min-block-size: var(--ds-size-hit);
|
|
123
|
+
margin: 0;
|
|
124
|
+
padding-block: 0;
|
|
125
|
+
padding-inline: var(--size-px-5);
|
|
126
|
+
border: 0;
|
|
127
|
+
border-inline-start: var(--border-size-1) solid var(--role-rule);
|
|
128
|
+
background: none;
|
|
129
|
+
color: var(--primary12);
|
|
130
|
+
white-space: nowrap;
|
|
131
|
+
text-decoration-thickness: var(--ds-stroke-1-5);
|
|
132
|
+
text-underline-offset: 0.15em;
|
|
133
|
+
appearance: none;
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
.action:first-child {
|
|
137
|
+
border-inline-start-width: 0;
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
.close {
|
|
141
|
+
grid-area: close;
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
/* One row from --md-n-above: the cells sit between the message and the close X, full height. */
|
|
145
|
+
@media (min-width: 768px) {
|
|
146
|
+
.base {
|
|
147
|
+
grid-template-columns: auto minmax(0, 1fr) auto auto auto;
|
|
148
|
+
grid-template-areas: 'glyph message queue actions close';
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
.actions {
|
|
152
|
+
align-self: stretch;
|
|
153
|
+
border-block-start-width: 0;
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
.action {
|
|
157
|
+
flex: none;
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
.action:first-child {
|
|
161
|
+
border-inline-start-width: var(--border-size-1);
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
@media (prefers-reduced-motion: no-preference) {
|
|
166
|
+
.base {
|
|
167
|
+
transition-property: clip-path;
|
|
168
|
+
transition-duration: var(--ds-duration-disclosure);
|
|
169
|
+
transition-timing-function: var(--ease-out-3);
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
/* Hover and press transitions [D181]: --ds-duration-quick, --ease-out-3. */
|
|
173
|
+
.action {
|
|
174
|
+
transition-property: color, background-color, text-decoration-color;
|
|
175
|
+
transition-duration: var(--ds-duration-quick);
|
|
176
|
+
transition-timing-function: var(--ease-out-3);
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
@media (forced-colors: active) {
|
|
181
|
+
.glyph {
|
|
182
|
+
forced-color-adjust: none;
|
|
183
|
+
color: CanvasText;
|
|
184
|
+
fill: Canvas;
|
|
185
|
+
stroke: Canvas;
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
@layer variants {
|
|
191
|
+
/* The message's lead: `type-body-ui` at --font-weight-6. */
|
|
192
|
+
.title {
|
|
193
|
+
--type-weight: var(--font-weight-6);
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
@layer states {
|
|
198
|
+
/* Enter and exit: a clip reveal from the bottom edge [D91]. */
|
|
199
|
+
.base[data-starting-style],
|
|
200
|
+
.base[data-ending-style] {
|
|
201
|
+
clip-path: var(--toast-clip-from);
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
/* A closing toast lies over its successor, so the bar never grows while it wipes out. */
|
|
205
|
+
.base[data-ending-style] {
|
|
206
|
+
position: absolute;
|
|
207
|
+
inset-inline: 0;
|
|
208
|
+
inset-block-end: 0;
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
/* One visible at a time; the queue count reports the rest. */
|
|
212
|
+
.base[data-limited] {
|
|
213
|
+
display: none;
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
.base:focus-visible,
|
|
217
|
+
.viewport:focus-visible {
|
|
218
|
+
outline: var(--ds-focus-width) solid var(--primary12);
|
|
219
|
+
outline-offset: calc(-2 * var(--ds-focus-width));
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
/*
|
|
223
|
+
* Action cell hover (not disabled, not busy): the §9.2 `text` Button
|
|
224
|
+
* hover [D181]. The label takes --role-link-hover, underlined in
|
|
225
|
+
* --role-accent only where that ink is --primary12 (--ds-link-hover-line);
|
|
226
|
+
* forced colors add the underline.
|
|
227
|
+
*/
|
|
228
|
+
.action:not([data-disabled], [aria-busy='true']):hover {
|
|
229
|
+
color: var(--role-link-hover);
|
|
230
|
+
text-decoration-line: var(--ds-link-hover-line);
|
|
231
|
+
text-decoration-color: var(--role-accent);
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
@media (forced-colors: active) {
|
|
235
|
+
.action:not([data-disabled], [aria-busy='true']):hover {
|
|
236
|
+
text-decoration-line: underline;
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
|
|
240
|
+
/* Pressed: the inverse pair [D84]. */
|
|
241
|
+
.action:not([data-disabled], [aria-busy='true']):active {
|
|
242
|
+
background-color: var(--primary12);
|
|
243
|
+
color: var(--role-inverse);
|
|
244
|
+
}
|
|
245
|
+
|
|
246
|
+
/* Focus: the ring inside the cell. */
|
|
247
|
+
.action:focus-visible {
|
|
248
|
+
outline: var(--ds-focus-width) solid var(--primary12);
|
|
249
|
+
outline-offset: calc(-2 * var(--ds-focus-width));
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
/* Busy: rest roles kept, width held, "Undoing…" [D84]. */
|
|
253
|
+
.action[aria-busy='true'] {
|
|
254
|
+
min-inline-size: var(--toast-action-rest-width, auto);
|
|
255
|
+
cursor: progress;
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
.action[data-disabled] {
|
|
259
|
+
color: var(--role-muted);
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
|
|
263
|
+
@layer print {
|
|
264
|
+
@media print {
|
|
265
|
+
/* Hidden: nothing only a toast says may be needed on paper. */
|
|
266
|
+
.viewport {
|
|
267
|
+
display: none;
|
|
268
|
+
}
|
|
269
|
+
}
|
|
270
|
+
}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { Toggle as BaseToggle } from '@base-ui/react/toggle';
|
|
3
|
+
import { type VariantProps } from 'class-variance-authority';
|
|
4
|
+
import { type IconName } from '../Icon';
|
|
5
|
+
export declare const toggle: (props?: ({
|
|
6
|
+
variant?: "outline" | "segment" | "chip" | null | undefined;
|
|
7
|
+
size?: "sm" | "md" | null | undefined;
|
|
8
|
+
iconOnly?: boolean | null | undefined;
|
|
9
|
+
primary?: "ruby" | "brown" | "crimson" | "gold" | "gray" | "indigo" | "olive" | "pink" | "plum" | "purple" | "red" | "tomato" | "violet" | "bronze" | "iris" | "mauve" | "sage" | "sand" | "slate" | null | undefined;
|
|
10
|
+
secondary?: "ruby" | "blue" | "brown" | "crimson" | "cyan" | "gold" | "gray" | "green" | "indigo" | "lime" | "olive" | "orange" | "pink" | "plum" | "purple" | "red" | "teal" | "tomato" | "violet" | "yellow" | "amber" | "bronze" | "grass" | "iris" | "jade" | "mauve" | "mint" | "sage" | "sand" | "sky" | "slate" | null | undefined;
|
|
11
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
12
|
+
type ToggleVariants = VariantProps<typeof toggle>;
|
|
13
|
+
/** A Toggle's look (§9.4). */
|
|
14
|
+
export type ToggleVariant = NonNullable<ToggleVariants['variant']>;
|
|
15
|
+
/** What a ToggleGroup tells the toggles inside it. */
|
|
16
|
+
export interface ToggleItemContextValue {
|
|
17
|
+
/** The item look the group's variant implies. */
|
|
18
|
+
variant: ToggleVariant;
|
|
19
|
+
/** Whether the group allows several pressed items: ✓ rather than ●. */
|
|
20
|
+
multiple: boolean;
|
|
21
|
+
}
|
|
22
|
+
/** Provided by ToggleGroup; a standalone Toggle reads `undefined`. */
|
|
23
|
+
export declare const ToggleItemContext: React.Context<ToggleItemContextValue | undefined>;
|
|
24
|
+
type ToggleCommonProps = Omit<BaseToggle.Props<string>, 'children'> & {
|
|
25
|
+
/**
|
|
26
|
+
* `outline` (default): a pill like the outline Button, selected by the
|
|
27
|
+
* inverse pair. `segment`: a joined cell of a segmented group. `chip`: a
|
|
28
|
+
* filter chip, selected by --role-select. Inside a ToggleGroup the group
|
|
29
|
+
* sets it.
|
|
30
|
+
*/
|
|
31
|
+
variant?: ToggleVariants['variant'];
|
|
32
|
+
/** Primary Radix scale: edges, label, the inverse pair and the ring. Never defaulted [D133]. */
|
|
33
|
+
primary?: ToggleVariants['primary'];
|
|
34
|
+
/** Secondary Radix scale: drives only the selected chip (--role-select). Never defaulted. */
|
|
35
|
+
secondary?: ToggleVariants['secondary'];
|
|
36
|
+
};
|
|
37
|
+
type LabelledToggleProps = {
|
|
38
|
+
/** `true` shows only the icon; see the icon toggle. Default `false`. */
|
|
39
|
+
iconOnly?: false | null;
|
|
40
|
+
/**
|
|
41
|
+
* Height: `sm` 32 px (chips, toolbars; hit area extended to 44) or `md`
|
|
42
|
+
* 40 px (segments, standalone; default, chips default to `sm`).
|
|
43
|
+
*/
|
|
44
|
+
size?: ToggleVariants['size'];
|
|
45
|
+
/** One optional leading glyph (§6.10), inline tier, FILL 0. */
|
|
46
|
+
icon?: IconName;
|
|
47
|
+
/** Not used on a labelled toggle: it shows ✓ or ● when pressed. */
|
|
48
|
+
pressedIcon?: never;
|
|
49
|
+
/** The label, authored in title case ("Grid View") [D160]. */
|
|
50
|
+
children?: React.ReactNode;
|
|
51
|
+
};
|
|
52
|
+
type IconOnlyToggleProps = {
|
|
53
|
+
/** The icon toggle: a circle whose icon swaps when pressed (▷ ↔ ‖). */
|
|
54
|
+
iconOnly: true;
|
|
55
|
+
/** `sm` or `md` (default). */
|
|
56
|
+
size?: ToggleVariants['size'];
|
|
57
|
+
/** The glyph while not pressed (§6.10). */
|
|
58
|
+
icon: IconName;
|
|
59
|
+
/** The glyph while pressed: a different icon, never only its FILL 1 twin [D166]. */
|
|
60
|
+
pressedIcon: IconName;
|
|
61
|
+
/** The accessible name, visually hidden. Pair the toggle with a Tooltip. */
|
|
62
|
+
children: React.ReactNode;
|
|
63
|
+
};
|
|
64
|
+
/**
|
|
65
|
+
* Props for Toggle: Base UI Toggle props plus the variant, size and color
|
|
66
|
+
* axes. With `iconOnly`, `icon`, `pressedIcon` and an accessible-name
|
|
67
|
+
* `children` are required.
|
|
68
|
+
*/
|
|
69
|
+
export type ToggleProps = ToggleCommonProps & (LabelledToggleProps | IconOnlyToggleProps);
|
|
70
|
+
/**
|
|
71
|
+
* A Base UI Toggle: an on/off button for immediate, reversible changes to
|
|
72
|
+
* how content is shown (view, units, formatting, filters). Selection is a
|
|
73
|
+
* heavier inside edge, a glyph and a weight change; fill is extra [D15].
|
|
74
|
+
* Values a form submits use Radio or Checkbox Group; panels use Tabs.
|
|
75
|
+
*/
|
|
76
|
+
export declare function Toggle(props: ToggleProps): React.JSX.Element;
|
|
77
|
+
export {};
|
|
78
|
+
//# sourceMappingURL=Toggle.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Toggle.d.ts","sourceRoot":"","sources":["../../src/components/Toggle/Toggle.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAEjE,OAAO,EAAkB,KAAK,QAAQ,EAAE,MAAM,SAAS,CAAA;AAwCvD,eAAO,MAAM,MAAM;;;;;;8EAuBjB,CAAA;AAEF,KAAK,cAAc,GAAG,YAAY,CAAC,OAAO,MAAM,CAAC,CAAA;AAEjD,8BAA8B;AAC9B,MAAM,MAAM,aAAa,GAAG,WAAW,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,CAAA;AAElE,sDAAsD;AACtD,MAAM,WAAW,sBAAsB;IACrC,iDAAiD;IACjD,OAAO,EAAE,aAAa,CAAA;IACtB,uEAAuE;IACvE,QAAQ,EAAE,OAAO,CAAA;CAClB;AAED,sEAAsE;AACtE,eAAO,MAAM,iBAAiB,mDAE7B,CAAA;AAGD,KAAK,iBAAiB,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC,GAAG;IACpE;;;;;OAKG;IACH,OAAO,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAA;IACnC,gGAAgG;IAChG,OAAO,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAA;IACnC,6FAA6F;IAC7F,SAAS,CAAC,EAAE,cAAc,CAAC,WAAW,CAAC,CAAA;CACxC,CAAA;AAED,KAAK,mBAAmB,GAAG;IACzB,wEAAwE;IACxE,QAAQ,CAAC,EAAE,KAAK,GAAG,IAAI,CAAA;IACvB;;;OAGG;IACH,IAAI,CAAC,EAAE,cAAc,CAAC,MAAM,CAAC,CAAA;IAC7B,+DAA+D;IAC/D,IAAI,CAAC,EAAE,QAAQ,CAAA;IACf,mEAAmE;IACnE,WAAW,CAAC,EAAE,KAAK,CAAA;IACnB,8DAA8D;IAC9D,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CAC3B,CAAA;AAED,KAAK,mBAAmB,GAAG;IACzB,uEAAuE;IACvE,QAAQ,EAAE,IAAI,CAAA;IACd,8BAA8B;IAC9B,IAAI,CAAC,EAAE,cAAc,CAAC,MAAM,CAAC,CAAA;IAC7B,2CAA2C;IAC3C,IAAI,EAAE,QAAQ,CAAA;IACd,oFAAoF;IACpF,WAAW,EAAE,QAAQ,CAAA;IACrB,4EAA4E;IAC5E,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAC1B,CAAA;AAED;;;;GAIG;AACH,MAAM,MAAM,WAAW,GAAG,iBAAiB,GAAG,CAAC,mBAAmB,GAAG,mBAAmB,CAAC,CAAA;AAUzF;;;;;GAKG;AACH,wBAAgB,MAAM,CAAC,KAAK,EAAE,WAAW,qBA4CxC"}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { Toggle as BaseToggle } from '@base-ui/react/toggle';
|
|
4
|
+
import { cva } from 'class-variance-authority';
|
|
5
|
+
import { Icon, iconHost } from '../Icon';
|
|
6
|
+
import { cx, resolveClassName } from '../../utils/className';
|
|
7
|
+
import { primaryScaleVariants, secondaryScaleVariants, } from '../../utils/scales';
|
|
8
|
+
import { useScopeAttributes } from '../../utils/scope';
|
|
9
|
+
import styles from './toggle.module.css';
|
|
10
|
+
/*
|
|
11
|
+
* Toggle (§9.4). §9.4 owns the filter chip and the segment.
|
|
12
|
+
*
|
|
13
|
+
* Implementation (CSS Modules + CVA)
|
|
14
|
+
* - Module: toggle.module.css; CVA function `toggle`.
|
|
15
|
+
* - Axes: `variant` → outline | segment | chip (the text toggle pill; a
|
|
16
|
+
* joined cell with no edge of its own; a pill that selects by
|
|
17
|
+
* --role-select over a quiet rest edge); `size` → sm | md; `iconOnly` →
|
|
18
|
+
* `iconOnly` (the icon toggle's circle); `primary`, `secondary` → scales
|
|
19
|
+
* module classes.
|
|
20
|
+
* - Compound variants: none.
|
|
21
|
+
* - Defaults: variant outline, size md (sm for chips, whose height is
|
|
22
|
+
* --size-px-7), iconOnly false; color axes none [D133]. Inside a
|
|
23
|
+
* ToggleGroup the group passes `segment` or `chip` through context.
|
|
24
|
+
* - Color fallback: inherits the scope.
|
|
25
|
+
* - States: data-pressed → selected: --ds-stroke-3 inside edge, ✓ / ● or
|
|
26
|
+
* the icon swap, --font-weight-7, and the inverse pair (outline, segment)
|
|
27
|
+
* or --role-select (chip); :active → the momentary inverse pair; :hover
|
|
28
|
+
* (not disabled) [D181] → off outline and segment: a --role-soft-hover
|
|
29
|
+
* fill (--primary3; the bare-text label underline where soft fills
|
|
30
|
+
* drop); off chip: edge --role-rule → --primary12 at the same weight
|
|
31
|
+
* [D140] plus the soft fill; icon toggle: the glyph at the next tier's
|
|
32
|
+
* weight; on: fill --primary11 (chip: --role-select-hover), label, mark
|
|
33
|
+
* and edge unchanged; :focus-visible → the ring above neighbours;
|
|
34
|
+
* data-disabled → dotted edge, fill removed, --role-muted label.
|
|
35
|
+
* - Parts: base, label, icon, glyph (✓, ● or the swapped icon), and edge /
|
|
36
|
+
* edgeLine (the disabled dotted edge).
|
|
37
|
+
* - Scope: none.
|
|
38
|
+
* - Container: none; inherits its context.
|
|
39
|
+
*/
|
|
40
|
+
export const toggle = cva(styles.base, {
|
|
41
|
+
variants: {
|
|
42
|
+
variant: {
|
|
43
|
+
outline: styles.outline,
|
|
44
|
+
segment: styles.segment,
|
|
45
|
+
chip: styles.chip,
|
|
46
|
+
},
|
|
47
|
+
size: {
|
|
48
|
+
sm: styles.sm,
|
|
49
|
+
md: styles.md,
|
|
50
|
+
},
|
|
51
|
+
iconOnly: {
|
|
52
|
+
true: styles.iconOnly,
|
|
53
|
+
},
|
|
54
|
+
// Color axes: never defaulted, so an omitted prop inherits the scope [D133].
|
|
55
|
+
primary: primaryScaleVariants,
|
|
56
|
+
secondary: secondaryScaleVariants,
|
|
57
|
+
},
|
|
58
|
+
defaultVariants: {
|
|
59
|
+
variant: 'outline',
|
|
60
|
+
size: 'md',
|
|
61
|
+
iconOnly: false,
|
|
62
|
+
},
|
|
63
|
+
});
|
|
64
|
+
/** Provided by ToggleGroup; a standalone Toggle reads `undefined`. */
|
|
65
|
+
export const ToggleItemContext = React.createContext(undefined);
|
|
66
|
+
ToggleItemContext.displayName = 'ToggleItemContext';
|
|
67
|
+
function DisabledEdge() {
|
|
68
|
+
return (React.createElement("svg", { className: styles.edge, "aria-hidden": "true", focusable: "false" },
|
|
69
|
+
React.createElement("rect", { className: styles.edgeLine, width: "100%", height: "100%" })));
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* A Base UI Toggle: an on/off button for immediate, reversible changes to
|
|
73
|
+
* how content is shown (view, units, formatting, filters). Selection is a
|
|
74
|
+
* heavier inside edge, a glyph and a weight change; fill is extra [D15].
|
|
75
|
+
* Values a form submits use Radio or Checkbox Group; panels use Tabs.
|
|
76
|
+
*/
|
|
77
|
+
export function Toggle(props) {
|
|
78
|
+
const { variant, size, iconOnly, primary, secondary, icon, pressedIcon, className, children, ...rest } = props;
|
|
79
|
+
const scope = useScopeAttributes();
|
|
80
|
+
const item = React.useContext(ToggleItemContext);
|
|
81
|
+
const resolvedVariant = variant ?? item?.variant ?? 'outline';
|
|
82
|
+
const resolvedSize = size ?? (resolvedVariant === 'chip' ? 'sm' : 'md');
|
|
83
|
+
const variants = {
|
|
84
|
+
variant: resolvedVariant,
|
|
85
|
+
size: resolvedSize,
|
|
86
|
+
iconOnly,
|
|
87
|
+
primary,
|
|
88
|
+
secondary,
|
|
89
|
+
};
|
|
90
|
+
// An icon toggle hosts its glyph's hover and press weight (§10.1 icon states) [D181].
|
|
91
|
+
const host = iconOnly ? iconHost : undefined;
|
|
92
|
+
const resolvedClassName = resolveClassName(className, (extra) => toggle({ ...variants, className: cx(host, extra) }));
|
|
93
|
+
const glyph = iconOnly && pressedIcon ? pressedIcon : item && !item.multiple ? 'circle' : 'check';
|
|
94
|
+
const weight = iconOnly ? 'interactive' : 'rest';
|
|
95
|
+
return (React.createElement(BaseToggle, { ...rest, ...scope, className: resolvedClassName },
|
|
96
|
+
React.createElement(Icon, { name: glyph, weight: weight, className: styles.glyph }),
|
|
97
|
+
icon ? React.createElement(Icon, { name: icon, weight: weight, className: styles.icon }) : null,
|
|
98
|
+
children == null ? null : React.createElement("span", { className: styles.label }, children),
|
|
99
|
+
resolvedVariant === 'segment' ? null : React.createElement(DisabledEdge, null)));
|
|
100
|
+
}
|
|
101
|
+
//# sourceMappingURL=Toggle.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Toggle.js","sourceRoot":"","sources":["../../src/components/Toggle/Toggle.tsx"],"names":[],"mappings":"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"}
|