@fairgarden/design 0.1.0-alpha.1 → 0.1.0-alpha.2
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/LICENSE +21 -0
- package/Readme.md +51 -27
- package/actions/button/Button.d.ts.map +1 -1
- package/actions/button/Button.js +13 -1
- package/actions/button/Button.js.map +1 -1
- package/actions/button/button.module.css +85 -25
- package/actions/chip/Chip.d.ts +2 -2
- package/actions/chip/Chip.js +2 -2
- package/actions/chip/chip.module.css +12 -18
- package/actions/link/Link.d.ts +1 -1
- package/actions/link/link.module.css +22 -19
- package/actions/toggle/Toggle.js +1 -1
- package/actions/toggle/toggle.module.css +27 -23
- package/content/card/card.module.css +27 -27
- package/content/card-grid/CardGrid.js +1 -1
- package/content/card-grid/card-grid.module.css +3 -3
- package/content/carousel/Carousel.d.ts.map +1 -1
- package/content/carousel/Carousel.js +1 -4
- package/content/carousel/Carousel.js.map +1 -1
- package/content/carousel/carousel.module.css +19 -9
- package/content/code-block/CodeActionsMenu.d.ts +34 -0
- package/content/code-block/CodeActionsMenu.d.ts.map +1 -0
- package/content/code-block/CodeActionsMenu.js +102 -0
- package/content/code-block/CodeActionsMenu.js.map +1 -0
- package/content/code-block/CodeBlock.d.ts +37 -0
- package/content/code-block/CodeBlock.d.ts.map +1 -0
- package/content/code-block/CodeBlock.js +30 -0
- package/content/code-block/CodeBlock.js.map +1 -0
- package/content/code-block/CodeBlockFrame.d.ts +54 -0
- package/content/code-block/CodeBlockFrame.d.ts.map +1 -0
- package/content/code-block/CodeBlockFrame.js +80 -0
- package/content/code-block/CodeBlockFrame.js.map +1 -0
- package/content/code-block/CodeBlockHeader.d.ts +26 -0
- package/content/code-block/CodeBlockHeader.d.ts.map +1 -0
- package/content/code-block/CodeBlockHeader.js +16 -0
- package/content/code-block/CodeBlockHeader.js.map +1 -0
- package/content/code-block/CodeBlockLazy.d.ts +11 -0
- package/content/code-block/CodeBlockLazy.d.ts.map +1 -0
- package/content/code-block/CodeBlockLazy.js +14 -0
- package/content/code-block/CodeBlockLazy.js.map +1 -0
- package/content/code-block/CodeBlockLoading.d.ts +31 -0
- package/content/code-block/CodeBlockLoading.d.ts.map +1 -0
- package/content/code-block/CodeBlockLoading.js +90 -0
- package/content/code-block/CodeBlockLoading.js.map +1 -0
- package/content/code-block/CodeBlockSection.d.ts +40 -0
- package/content/code-block/CodeBlockSection.d.ts.map +1 -0
- package/content/code-block/CodeBlockSection.js +105 -0
- package/content/code-block/CodeBlockSection.js.map +1 -0
- package/content/code-block/CodeBlockToasts.d.ts +26 -0
- package/content/code-block/CodeBlockToasts.d.ts.map +1 -0
- package/content/code-block/CodeBlockToasts.js +88 -0
- package/content/code-block/CodeBlockToasts.js.map +1 -0
- package/content/code-block/code-block.module.css +949 -0
- package/content/code-block/index.d.ts +4 -0
- package/content/code-block/index.d.ts.map +1 -0
- package/content/code-block/index.js +4 -0
- package/content/code-block/index.js.map +1 -0
- package/content/demo/DemoContent.d.ts +32 -0
- package/content/demo/DemoContent.d.ts.map +1 -0
- package/content/demo/DemoContent.js +87 -0
- package/content/demo/DemoContent.js.map +1 -0
- package/content/demo/DemoFrame.d.ts +6 -0
- package/content/demo/DemoFrame.d.ts.map +1 -0
- package/content/demo/DemoFrame.js +17 -0
- package/content/demo/DemoFrame.js.map +1 -0
- package/content/demo/DemoLazy.d.ts +11 -0
- package/content/demo/DemoLazy.d.ts.map +1 -0
- package/content/demo/DemoLazy.js +14 -0
- package/content/demo/DemoLazy.js.map +1 -0
- package/content/demo/DemoLoading.d.ts +23 -0
- package/content/demo/DemoLoading.d.ts.map +1 -0
- package/content/demo/DemoLoading.js +26 -0
- package/content/demo/DemoLoading.js.map +1 -0
- package/content/demo/demo.module.css +163 -0
- package/content/demo/index.d.ts +4 -0
- package/content/demo/index.d.ts.map +1 -0
- package/content/demo/index.js +4 -0
- package/content/demo/index.js.map +1 -0
- package/content/empty-state/EmptyState.d.ts +1 -1
- package/content/empty-state/EmptyState.js +1 -1
- package/content/empty-state/empty-state.module.css +11 -11
- package/content/feature-grid/feature-grid.module.css +22 -22
- package/content/index-rows/IndexRows.d.ts +2 -2
- package/content/index-rows/IndexRows.d.ts.map +1 -1
- package/content/index-rows/IndexRows.js +1 -1
- package/content/index-rows/index-rows.module.css +29 -29
- package/content/pricing/Pricing.d.ts +4 -4
- package/content/pricing/Pricing.d.ts.map +1 -1
- package/content/pricing/Pricing.js +4 -4
- package/content/pricing/Pricing.js.map +1 -1
- package/content/pricing/pricing.module.css +22 -22
- package/content/profile/Profile.d.ts +1 -1
- package/content/profile/Profile.js +2 -2
- package/content/profile/profile.module.css +13 -13
- package/content/quote/Quote.d.ts +1 -1
- package/content/quote/quote.module.css +9 -9
- package/content/timeline/Timeline.d.ts +1 -1
- package/content/timeline/Timeline.d.ts.map +1 -1
- package/content/timeline/Timeline.js +5 -5
- package/content/timeline/Timeline.js.map +1 -1
- package/content/timeline/timeline.module.css +12 -12
- package/content/types-table/TypePre.d.ts +11 -0
- package/content/types-table/TypePre.d.ts.map +1 -0
- package/content/types-table/TypePre.js +13 -0
- package/content/types-table/TypePre.js.map +1 -0
- package/content/types-table/TypesTable.d.ts +22 -0
- package/content/types-table/TypesTable.d.ts.map +1 -0
- package/content/types-table/TypesTable.js +124 -0
- package/content/types-table/TypesTable.js.map +1 -0
- package/content/types-table/index.d.ts +3 -0
- package/content/types-table/index.d.ts.map +1 -0
- package/content/types-table/index.js +3 -0
- package/content/types-table/index.js.map +1 -0
- package/content/types-table/types-table.module.css +160 -0
- package/data/chart/Chart.d.ts +8 -1
- package/data/chart/Chart.d.ts.map +1 -1
- package/data/chart/Chart.js +28 -15
- package/data/chart/Chart.js.map +1 -1
- package/data/chart/chart.module.css +20 -6
- package/data/figure/Figure.d.ts +1 -1
- package/data/figure/Figure.js +1 -1
- package/data/figure/figure.module.css +7 -7
- package/data/map/Map.d.ts +3 -3
- package/data/map/Map.d.ts.map +1 -1
- package/data/map/Map.js +10 -8
- package/data/map/Map.js.map +1 -1
- package/data/map/MapCanvas.d.ts.map +1 -1
- package/data/map/MapCanvas.js +5 -9
- package/data/map/MapCanvas.js.map +1 -1
- package/data/map/map.module.css +39 -14
- package/data/map/mapStyle.d.ts +2 -2
- package/data/map/mapStyle.d.ts.map +1 -1
- package/data/map/mapStyle.js +5 -5
- package/data/map/mapStyle.js.map +1 -1
- package/data/scroll-area/ScrollArea.d.ts.map +1 -1
- package/data/scroll-area/ScrollArea.js +8 -4
- package/data/scroll-area/ScrollArea.js.map +1 -1
- package/data/scroll-area/scroll-area.module.css +28 -9
- package/data/spec-grid/spec-grid.module.css +8 -8
- package/data/spec-list/spec-list.module.css +3 -3
- package/data/spec-sheet/SpecSheet.d.ts +2 -2
- package/data/spec-sheet/SpecSheet.js +1 -1
- package/data/spec-sheet/spec-sheet.module.css +9 -9
- package/data/stat/Stat.d.ts +1 -1
- package/data/stat/Stat.d.ts.map +1 -1
- package/data/stat/stat.module.css +4 -4
- package/data/table/Table.d.ts +6 -5
- package/data/table/Table.d.ts.map +1 -1
- package/data/table/Table.js.map +1 -1
- package/data/table/table.module.css +43 -46
- package/disclosure/accordion/Accordion.d.ts +1 -1
- package/disclosure/accordion/Accordion.js +1 -1
- package/disclosure/accordion/accordion.module.css +12 -12
- package/disclosure/collapsible/Collapsible.d.ts +4 -4
- package/disclosure/collapsible/Collapsible.js +4 -4
- package/disclosure/collapsible/collapsible.module.css +10 -10
- package/disclosure/faq/FAQ.d.ts +3 -3
- package/disclosure/faq/FAQ.d.ts.map +1 -1
- package/disclosure/faq/FAQ.js +3 -3
- package/disclosure/faq/FAQ.js.map +1 -1
- package/disclosure/faq/faq.module.css +20 -20
- package/feedback/alert/alert.module.css +4 -4
- package/feedback/avatar/avatar-group.module.css +2 -2
- package/feedback/avatar/avatar.module.css +9 -9
- package/feedback/badge/Badge.d.ts +1 -1
- package/feedback/badge/badge.module.css +7 -7
- package/feedback/meter/Meter.d.ts +2 -2
- package/feedback/meter/meter.module.css +14 -14
- package/feedback/progress/Progress.d.ts +1 -1
- package/feedback/progress/progress.module.css +7 -7
- package/feedback/tag/tag.module.css +7 -7
- package/feedback/toast/Toast.d.ts +3 -3
- package/feedback/toast/Toast.d.ts.map +1 -1
- package/feedback/toast/Toast.js +17 -7
- package/feedback/toast/Toast.js.map +1 -1
- package/feedback/toast/toast.module.css +31 -20
- package/forms/autocomplete/Autocomplete.d.ts +11 -0
- package/forms/autocomplete/Autocomplete.d.ts.map +1 -1
- package/forms/autocomplete/Autocomplete.js +27 -6
- package/forms/autocomplete/Autocomplete.js.map +1 -1
- package/forms/autocomplete/autocomplete.module.css +35 -41
- package/forms/checkbox/Checkbox.js +1 -1
- package/forms/checkbox/checkbox.module.css +29 -25
- package/forms/checkbox-group/checkbox-group.module.css +4 -4
- package/forms/combobox/Combobox.d.ts +10 -0
- package/forms/combobox/Combobox.d.ts.map +1 -1
- package/forms/combobox/Combobox.js +28 -7
- package/forms/combobox/Combobox.js.map +1 -1
- package/forms/combobox/combobox.module.css +34 -41
- package/forms/field/field.module.css +1 -1
- package/forms/fieldset/Fieldset.d.ts +1 -1
- package/forms/fieldset/Fieldset.js +2 -2
- package/forms/fieldset/fieldset.module.css +14 -14
- package/forms/form/form.module.css +2 -2
- package/forms/input/Input.d.ts +10 -3
- package/forms/input/Input.d.ts.map +1 -1
- package/forms/input/Input.js +10 -4
- package/forms/input/Input.js.map +1 -1
- package/forms/input/input.module.css +38 -21
- package/forms/number-field/number-field.module.css +24 -23
- package/forms/radio/Radio.d.ts +1 -1
- package/forms/radio/Radio.d.ts.map +1 -1
- package/forms/radio/Radio.js +5 -3
- package/forms/radio/Radio.js.map +1 -1
- package/forms/radio/radio.module.css +38 -30
- package/forms/radio-group/RadioGroup.d.ts +1 -1
- package/forms/radio-group/radio-group.module.css +3 -3
- package/forms/search/Search.d.ts +10 -0
- package/forms/search/Search.d.ts.map +1 -1
- package/forms/search/Search.js +25 -6
- package/forms/search/Search.js.map +1 -1
- package/forms/search/search.module.css +25 -33
- package/forms/select/Select.d.ts +10 -2
- package/forms/select/Select.d.ts.map +1 -1
- package/forms/select/Select.js +27 -12
- package/forms/select/Select.js.map +1 -1
- package/forms/select/select.module.css +42 -48
- package/forms/slider/Slider.js +2 -2
- package/forms/slider/slider.module.css +23 -23
- package/forms/switch/Switch.js +1 -1
- package/forms/switch/switch.module.css +23 -19
- package/foundations/expanding-box/ExpandingBox.d.ts +86 -0
- package/foundations/expanding-box/ExpandingBox.d.ts.map +1 -0
- package/foundations/expanding-box/ExpandingBox.js +179 -0
- package/foundations/expanding-box/ExpandingBox.js.map +1 -0
- package/foundations/expanding-box/expanding-box.module.css +415 -0
- package/foundations/expanding-box/index.d.ts +3 -0
- package/foundations/expanding-box/index.d.ts.map +1 -0
- package/foundations/expanding-box/index.js +3 -0
- package/foundations/expanding-box/index.js.map +1 -0
- package/foundations/expanding-box/startExpandingTransition.d.ts +33 -0
- package/foundations/expanding-box/startExpandingTransition.d.ts.map +1 -0
- package/foundations/expanding-box/startExpandingTransition.js +82 -0
- package/foundations/expanding-box/startExpandingTransition.js.map +1 -0
- package/foundations/ground/Ground.d.ts +1 -1
- package/foundations/ground/ground.module.css +4 -4
- package/foundations/icon/Icon.d.ts +1 -1
- package/foundations/icon/Icon.js +1 -1
- package/foundations/icon/icon.module.css +1 -1
- package/foundations/outline-morph/OutlineMorph.d.ts +112 -0
- package/foundations/outline-morph/OutlineMorph.d.ts.map +1 -0
- package/foundations/outline-morph/OutlineMorph.js +83 -0
- package/foundations/outline-morph/OutlineMorph.js.map +1 -0
- package/foundations/outline-morph/index.d.ts +3 -0
- package/foundations/outline-morph/index.d.ts.map +1 -0
- package/foundations/outline-morph/index.js +3 -0
- package/foundations/outline-morph/index.js.map +1 -0
- package/foundations/outline-morph/morphEngine.d.ts +219 -0
- package/foundations/outline-morph/morphEngine.d.ts.map +1 -0
- package/foundations/outline-morph/morphEngine.js +1331 -0
- package/foundations/outline-morph/morphEngine.js.map +1 -0
- package/foundations/outline-morph/outline-morph.module.css +113 -0
- package/foundations/outline-morph/useOutlineMorphRoot.d.ts +50 -0
- package/foundations/outline-morph/useOutlineMorphRoot.d.ts.map +1 -0
- package/foundations/outline-morph/useOutlineMorphRoot.js +55 -0
- package/foundations/outline-morph/useOutlineMorphRoot.js.map +1 -0
- package/foundations/separator/separator.module.css +10 -10
- package/foundations/sticker/Sticker.d.ts +4 -4
- package/foundations/sticker/Sticker.d.ts.map +1 -1
- package/foundations/sticker/Sticker.js +3 -3
- package/foundations/sticker/sticker.module.css +10 -10
- package/icons/paths.d.ts +1 -1
- package/icons/paths.d.ts.map +1 -1
- package/icons/paths.js +50 -0
- package/icons/paths.js.map +1 -1
- package/navigation/breadcrumb/Breadcrumb.d.ts +7 -1
- package/navigation/breadcrumb/Breadcrumb.d.ts.map +1 -1
- package/navigation/breadcrumb/Breadcrumb.js +8 -8
- package/navigation/breadcrumb/Breadcrumb.js.map +1 -1
- package/navigation/breadcrumb/breadcrumb.module.css +14 -14
- package/navigation/file-tabs/FileTabs.d.ts +169 -0
- package/navigation/file-tabs/FileTabs.d.ts.map +1 -0
- package/navigation/file-tabs/FileTabs.js +253 -0
- package/navigation/file-tabs/FileTabs.js.map +1 -0
- package/navigation/file-tabs/file-tabs.module.css +868 -0
- package/navigation/file-tabs/index.d.ts +2 -0
- package/navigation/file-tabs/index.d.ts.map +1 -0
- package/navigation/file-tabs/index.js +2 -0
- package/navigation/file-tabs/index.js.map +1 -0
- package/navigation/nav-drawer/NavDrawer.d.ts +32 -6
- package/navigation/nav-drawer/NavDrawer.d.ts.map +1 -1
- package/navigation/nav-drawer/NavDrawer.js +94 -28
- package/navigation/nav-drawer/NavDrawer.js.map +1 -1
- package/navigation/nav-drawer/nav-drawer.module.css +78 -55
- package/navigation/navigation-bar/NavigationBar.d.ts +31 -11
- package/navigation/navigation-bar/NavigationBar.d.ts.map +1 -1
- package/navigation/navigation-bar/NavigationBar.js +40 -17
- package/navigation/navigation-bar/NavigationBar.js.map +1 -1
- package/navigation/navigation-bar/navigation-bar.module.css +58 -27
- package/navigation/navigation-menu/NavigationMenu.d.ts +9 -9
- package/navigation/navigation-menu/NavigationMenu.d.ts.map +1 -1
- package/navigation/navigation-menu/NavigationMenu.js +15 -15
- package/navigation/navigation-menu/navigation-menu.module.css +39 -53
- package/navigation/pagination/Pagination.js +1 -1
- package/navigation/pagination/pagination.module.css +24 -24
- package/navigation/sidebar-nav/SidebarNav.d.ts +71 -0
- package/navigation/sidebar-nav/SidebarNav.d.ts.map +1 -0
- package/navigation/sidebar-nav/SidebarNav.js +169 -0
- package/navigation/sidebar-nav/SidebarNav.js.map +1 -0
- package/navigation/sidebar-nav/index.d.ts +2 -0
- package/navigation/sidebar-nav/index.d.ts.map +1 -0
- package/navigation/sidebar-nav/index.js +2 -0
- package/navigation/sidebar-nav/index.js.map +1 -0
- package/navigation/sidebar-nav/sidebar-nav.module.css +270 -0
- package/navigation/table-of-contents/TableOfContents.d.ts +92 -0
- package/navigation/table-of-contents/TableOfContents.d.ts.map +1 -0
- package/navigation/table-of-contents/TableOfContents.js +211 -0
- package/navigation/table-of-contents/TableOfContents.js.map +1 -0
- package/navigation/table-of-contents/index.d.ts +3 -0
- package/navigation/table-of-contents/index.d.ts.map +1 -0
- package/navigation/table-of-contents/index.js +3 -0
- package/navigation/table-of-contents/index.js.map +1 -0
- package/navigation/table-of-contents/table-of-contents.module.css +322 -0
- package/navigation/table-of-contents/useActiveHeading.d.ts +37 -0
- package/navigation/table-of-contents/useActiveHeading.d.ts.map +1 -0
- package/navigation/table-of-contents/useActiveHeading.js +111 -0
- package/navigation/table-of-contents/useActiveHeading.js.map +1 -0
- package/navigation/tabs/Tabs.d.ts +2 -2
- package/navigation/tabs/Tabs.js +3 -3
- package/navigation/tabs/tabs.module.css +22 -19
- package/navigation/toolbar/Toolbar.d.ts +7 -1
- package/navigation/toolbar/Toolbar.d.ts.map +1 -1
- package/navigation/toolbar/Toolbar.js +3 -3
- package/navigation/toolbar/Toolbar.js.map +1 -1
- package/navigation/toolbar/toolbar.module.css +6 -6
- package/overlays/alert-dialog/AlertDialog.d.ts +14 -4
- package/overlays/alert-dialog/AlertDialog.d.ts.map +1 -1
- package/overlays/alert-dialog/AlertDialog.js +15 -5
- package/overlays/alert-dialog/AlertDialog.js.map +1 -1
- package/overlays/alert-dialog/alert-dialog.module.css +4 -4
- package/overlays/context-menu/ContextMenu.d.ts +1 -1
- package/overlays/context-menu/ContextMenu.js +1 -1
- package/overlays/dialog/Dialog.d.ts +26 -11
- package/overlays/dialog/Dialog.d.ts.map +1 -1
- package/overlays/dialog/Dialog.js +36 -17
- package/overlays/dialog/Dialog.js.map +1 -1
- package/overlays/dialog/dialog.module.css +32 -31
- package/overlays/dialog/morph.d.ts +17 -0
- package/overlays/dialog/morph.d.ts.map +1 -0
- package/overlays/dialog/morph.js +44 -0
- package/overlays/dialog/morph.js.map +1 -0
- package/overlays/menu/Menu.d.ts +18 -7
- package/overlays/menu/Menu.d.ts.map +1 -1
- package/overlays/menu/Menu.js +35 -12
- package/overlays/menu/Menu.js.map +1 -1
- package/overlays/menu/menu.module.css +26 -50
- package/overlays/menu/morph.d.ts +16 -0
- package/overlays/menu/morph.d.ts.map +1 -0
- package/overlays/menu/morph.js +36 -0
- package/overlays/menu/morph.js.map +1 -0
- package/overlays/menu/popup.d.ts +2 -0
- package/overlays/menu/popup.d.ts.map +1 -1
- package/overlays/menu/popup.js +11 -3
- package/overlays/menu/popup.js.map +1 -1
- package/overlays/menubar/Menubar.d.ts +10 -1
- package/overlays/menubar/Menubar.d.ts.map +1 -1
- package/overlays/menubar/Menubar.js +22 -12
- package/overlays/menubar/Menubar.js.map +1 -1
- package/overlays/menubar/menubar.module.css +13 -13
- package/overlays/popover/Popover.d.ts +22 -8
- package/overlays/popover/Popover.d.ts.map +1 -1
- package/overlays/popover/Popover.js +51 -16
- package/overlays/popover/Popover.js.map +1 -1
- package/overlays/popover/popover.module.css +73 -47
- package/overlays/preview-card/PreviewCard.d.ts +3 -3
- package/overlays/preview-card/PreviewCard.d.ts.map +1 -1
- package/overlays/preview-card/PreviewCard.js +5 -6
- package/overlays/preview-card/PreviewCard.js.map +1 -1
- package/overlays/preview-card/preview-card.module.css +19 -54
- package/overlays/search-dialog/SearchDialog.d.ts +89 -0
- package/overlays/search-dialog/SearchDialog.d.ts.map +1 -0
- package/overlays/search-dialog/SearchDialog.js +220 -0
- package/overlays/search-dialog/SearchDialog.js.map +1 -0
- package/overlays/search-dialog/SearchDialogPopup.d.ts +39 -0
- package/overlays/search-dialog/SearchDialogPopup.d.ts.map +1 -0
- package/overlays/search-dialog/SearchDialogPopup.js +80 -0
- package/overlays/search-dialog/SearchDialogPopup.js.map +1 -0
- package/overlays/search-dialog/SearchDialogTrigger.d.ts +24 -0
- package/overlays/search-dialog/SearchDialogTrigger.d.ts.map +1 -0
- package/overlays/search-dialog/SearchDialogTrigger.js +32 -0
- package/overlays/search-dialog/SearchDialogTrigger.js.map +1 -0
- package/overlays/search-dialog/index.d.ts +3 -0
- package/overlays/search-dialog/index.d.ts.map +1 -0
- package/overlays/search-dialog/index.js +3 -0
- package/overlays/search-dialog/index.js.map +1 -0
- package/overlays/search-dialog/search-dialog.module.css +492 -0
- package/overlays/search-dialog/useShortcutLabel.d.ts +13 -0
- package/overlays/search-dialog/useShortcutLabel.d.ts.map +1 -0
- package/overlays/search-dialog/useShortcutLabel.js +19 -0
- package/overlays/search-dialog/useShortcutLabel.js.map +1 -0
- package/overlays/search-dialog/variants.d.ts +25 -0
- package/overlays/search-dialog/variants.d.ts.map +1 -0
- package/overlays/search-dialog/variants.js +31 -0
- package/overlays/search-dialog/variants.js.map +1 -0
- package/overlays/tooltip/Tooltip.d.ts +3 -3
- package/overlays/tooltip/Tooltip.d.ts.map +1 -1
- package/overlays/tooltip/Tooltip.js +3 -3
- package/overlays/tooltip/Tooltip.js.map +1 -1
- package/overlays/tooltip/tooltip.module.css +2 -2
- package/package.json +27 -19
- package/page/announcement-bar/AnnouncementBar.d.ts +1 -1
- package/page/announcement-bar/AnnouncementBar.js +4 -4
- package/page/announcement-bar/AnnouncementBar.js.map +1 -1
- package/page/announcement-bar/announcement-bar.module.css +11 -17
- package/page/cta-block/CTABlock.d.ts +5 -5
- package/page/cta-block/CTABlock.d.ts.map +1 -1
- package/page/cta-block/CTABlock.js +2 -2
- package/page/cta-block/cta-block.module.css +26 -26
- package/page/docs-layout/DocsLayout.d.ts +83 -0
- package/page/docs-layout/DocsLayout.d.ts.map +1 -0
- package/page/docs-layout/DocsLayout.js +108 -0
- package/page/docs-layout/DocsLayout.js.map +1 -0
- package/page/docs-layout/docs-layout.module.css +266 -0
- package/page/docs-layout/index.d.ts +2 -0
- package/page/docs-layout/index.d.ts.map +1 -0
- package/page/docs-layout/index.js +2 -0
- package/page/docs-layout/index.js.map +1 -0
- package/page/footer/Footer.d.ts +1 -1
- package/page/footer/Footer.js +1 -1
- package/page/footer/footer.module.css +31 -31
- package/page/hero/Hero.d.ts +3 -3
- package/page/hero/Hero.d.ts.map +1 -1
- package/page/hero/Hero.js +1 -1
- package/page/hero/hero.module.css +36 -36
- package/page/marquee/Marquee.d.ts +2 -2
- package/page/marquee/Marquee.js +1 -1
- package/page/marquee/marquee.module.css +11 -11
- package/page/newsletter/Newsletter.d.ts.map +1 -1
- package/page/newsletter/Newsletter.js +4 -59
- package/page/newsletter/Newsletter.js.map +1 -1
- package/page/newsletter/newsletter.module.css +44 -22
- package/page/section-bar/SectionBar.d.ts +10 -3
- package/page/section-bar/SectionBar.d.ts.map +1 -1
- package/page/section-bar/SectionBar.js +21 -11
- package/page/section-bar/SectionBar.js.map +1 -1
- package/page/section-bar/section-bar.module.css +43 -46
- package/page/section-divider/SectionDivider.d.ts +2 -2
- package/page/section-divider/SectionDivider.js +4 -4
- package/page/section-divider/SectionDivider.js.map +1 -1
- package/page/section-divider/section-divider.module.css +18 -18
- package/page/section-header/SectionHeader.d.ts +7 -7
- package/page/section-header/SectionHeader.d.ts.map +1 -1
- package/page/section-header/SectionHeader.js +3 -3
- package/page/section-header/SectionHeader.js.map +1 -1
- package/page/section-header/section-header.module.css +16 -16
- package/utils/Ornament.d.ts +1 -1
- package/utils/Ornament.js +2 -2
- package/utils/assignRef.d.ts +7 -1
- package/utils/assignRef.d.ts.map +1 -1
- package/utils/assignRef.js +18 -0
- package/utils/assignRef.js.map +1 -1
- package/utils/docs/DemoTitle.d.ts +12 -0
- package/utils/docs/DemoTitle.d.ts.map +1 -0
- package/utils/docs/DemoTitle.js +11 -0
- package/utils/docs/DemoTitle.js.map +1 -0
- package/utils/docs/Pre.d.ts +39 -0
- package/utils/docs/Pre.d.ts.map +1 -0
- package/utils/docs/Pre.js +26 -0
- package/utils/docs/Pre.js.map +1 -0
- package/utils/docs/createDemo.d.ts +89 -0
- package/utils/docs/createDemo.d.ts.map +1 -0
- package/utils/docs/createDemo.js +51 -0
- package/utils/docs/createDemo.js.map +1 -0
- package/utils/docs/createMdxComponents.d.ts +52 -0
- package/utils/docs/createMdxComponents.d.ts.map +1 -0
- package/utils/docs/createMdxComponents.js +59 -0
- package/utils/docs/createMdxComponents.js.map +1 -0
- package/utils/docs/createTypes.d.ts +23 -0
- package/utils/docs/createTypes.d.ts.map +1 -0
- package/utils/docs/createTypes.js +27 -0
- package/utils/docs/createTypes.js.map +1 -0
- package/utils/docs/index.d.ts +8 -0
- package/utils/docs/index.d.ts.map +1 -0
- package/utils/docs/index.js +16 -0
- package/utils/docs/index.js.map +1 -0
- package/utils/docs/mdx.module.css +201 -0
- package/utils/docs/serverSourceEnhancers.d.ts +26 -0
- package/utils/docs/serverSourceEnhancers.d.ts.map +1 -0
- package/utils/docs/serverSourceEnhancers.js +32 -0
- package/utils/docs/serverSourceEnhancers.js.map +1 -0
- package/utils/docs/toSidebarItems.d.ts +23 -0
- package/utils/docs/toSidebarItems.d.ts.map +1 -0
- package/utils/docs/toSidebarItems.js +36 -0
- package/utils/docs/toSidebarItems.js.map +1 -0
- package/utils/font-fallbacks.css +176 -0
- package/utils/fonts.d.ts +1 -0
- package/utils/fonts.d.ts.map +1 -1
- package/utils/fonts.js +12 -0
- package/utils/fonts.js.map +1 -1
- package/utils/frame.d.ts +4 -0
- package/utils/frame.d.ts.map +1 -0
- package/utils/frame.js +11 -0
- package/utils/frame.js.map +1 -0
- package/utils/global.css +480 -266
- package/utils/line.module.css +17 -17
- package/utils/media.css +1 -1
- package/utils/ornament.module.css +19 -19
- package/utils/overlay.d.ts +4 -4
- package/utils/overlay.js +4 -4
- package/utils/pattern.module.css +45 -45
- package/utils/print.css +48 -34
- package/utils/reset.css +9 -2
- package/utils/roles.css +29 -29
- package/utils/seriesPatterns.js +3 -3
- package/utils/syntax.module.css +92 -0
- package/utils/theme.css +6 -6
- package/utils/tokens.css +262 -192
- package/utils/tokens.d.ts +51 -8
- package/utils/tokens.d.ts.map +1 -1
- package/utils/tokens.js +46 -9
- package/utils/tokens.js.map +1 -1
- package/utils/type.module.css +87 -87
- package/utils/useReleaseMark.d.ts +13 -0
- package/utils/useReleaseMark.d.ts.map +1 -0
- package/utils/useReleaseMark.js +44 -0
- package/utils/useReleaseMark.js.map +1 -0
- package/utils/view-transitions.css +122 -0
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
'label value'
|
|
45
45
|
'control control';
|
|
46
46
|
align-items: baseline;
|
|
47
|
-
column-gap: var(--
|
|
47
|
+
column-gap: var(--size-px-2-5);
|
|
48
48
|
min-inline-size: 0;
|
|
49
49
|
color: var(--primary12);
|
|
50
50
|
}
|
|
@@ -65,13 +65,13 @@
|
|
|
65
65
|
--type-weight: var(--font-weight-6);
|
|
66
66
|
}
|
|
67
67
|
|
|
68
|
-
/* The control is the --
|
|
68
|
+
/* The control is the --fgd-size-hit tall press target; the track sits centered in it. */
|
|
69
69
|
.control {
|
|
70
70
|
grid-area: control;
|
|
71
71
|
display: flex;
|
|
72
72
|
align-items: center;
|
|
73
73
|
box-sizing: border-box;
|
|
74
|
-
block-size: var(--
|
|
74
|
+
block-size: var(--fgd-size-hit);
|
|
75
75
|
touch-action: none;
|
|
76
76
|
user-select: none;
|
|
77
77
|
}
|
|
@@ -109,14 +109,14 @@
|
|
|
109
109
|
background-color: var(--role-halo);
|
|
110
110
|
}
|
|
111
111
|
|
|
112
|
-
/* Every thumb reaches --
|
|
112
|
+
/* Every thumb reaches --fgd-size-hit; the hit area extends invisibly [D43]. */
|
|
113
113
|
.thumb::after {
|
|
114
114
|
content: '';
|
|
115
115
|
position: absolute;
|
|
116
116
|
inset-block-start: 50%;
|
|
117
117
|
inset-inline-start: 50%;
|
|
118
|
-
inline-size: var(--
|
|
119
|
-
block-size: var(--
|
|
118
|
+
inline-size: var(--fgd-size-hit);
|
|
119
|
+
block-size: var(--fgd-size-hit);
|
|
120
120
|
translate: -50% -50%;
|
|
121
121
|
}
|
|
122
122
|
|
|
@@ -141,10 +141,10 @@
|
|
|
141
141
|
.edge {
|
|
142
142
|
display: none;
|
|
143
143
|
position: absolute;
|
|
144
|
-
inset-block-start: calc(var(--
|
|
145
|
-
inset-inline-start: calc(var(--
|
|
146
|
-
inline-size: calc(100% - var(--
|
|
147
|
-
block-size: calc(100% - var(--
|
|
144
|
+
inset-block-start: calc(var(--fgd-dot-fine) / 2);
|
|
145
|
+
inset-inline-start: calc(var(--fgd-dot-fine) / 2);
|
|
146
|
+
inline-size: calc(100% - var(--fgd-dot-fine));
|
|
147
|
+
block-size: calc(100% - var(--fgd-dot-fine));
|
|
148
148
|
overflow: visible;
|
|
149
149
|
pointer-events: none;
|
|
150
150
|
}
|
|
@@ -152,7 +152,7 @@
|
|
|
152
152
|
.edgeLine {
|
|
153
153
|
fill: none;
|
|
154
154
|
stroke: var(--role-disabled-edge);
|
|
155
|
-
rx: calc(var(--slider-edge-radius) - var(--
|
|
155
|
+
rx: calc(var(--slider-edge-radius) - var(--fgd-dot-fine) / 2);
|
|
156
156
|
}
|
|
157
157
|
|
|
158
158
|
/*
|
|
@@ -163,8 +163,8 @@
|
|
|
163
163
|
.ticks {
|
|
164
164
|
grid-area: ticks;
|
|
165
165
|
position: relative;
|
|
166
|
-
min-block-size: calc(var(--
|
|
167
|
-
margin-block-start: calc(var(--size-px-2) - (var(--
|
|
166
|
+
min-block-size: calc(var(--size-px-2-5) + var(--size-px-1) + 1lh);
|
|
167
|
+
margin-block-start: calc(var(--size-px-2) - (var(--fgd-size-hit) - var(--size-px-2)) / 2);
|
|
168
168
|
margin-inline: var(--border-size-1);
|
|
169
169
|
}
|
|
170
170
|
|
|
@@ -178,17 +178,17 @@
|
|
|
178
178
|
inline-size: 0;
|
|
179
179
|
}
|
|
180
180
|
|
|
181
|
-
/* Minor ticks are half the --
|
|
181
|
+
/* Minor ticks are half the --size-px-2-5 major tick (2:1); both --border-size-1 in --primary12. */
|
|
182
182
|
.tick::before {
|
|
183
183
|
content: '';
|
|
184
184
|
display: block;
|
|
185
185
|
inline-size: 0;
|
|
186
|
-
block-size: var(--
|
|
186
|
+
block-size: var(--fgd-size-tick-minor);
|
|
187
187
|
border-inline-start: var(--border-size-1) solid var(--primary12);
|
|
188
188
|
}
|
|
189
189
|
|
|
190
190
|
.tickMajor::before {
|
|
191
|
-
block-size: var(--
|
|
191
|
+
block-size: var(--size-px-2-5);
|
|
192
192
|
}
|
|
193
193
|
|
|
194
194
|
.tickStart {
|
|
@@ -236,11 +236,11 @@
|
|
|
236
236
|
}
|
|
237
237
|
}
|
|
238
238
|
|
|
239
|
-
/* Hover and drag transitions [D181]: --
|
|
239
|
+
/* Hover and drag transitions [D181]: --fgd-duration-quick, --ease-out-3. */
|
|
240
240
|
@media (prefers-reduced-motion: no-preference) {
|
|
241
241
|
.thumb {
|
|
242
242
|
transition-property: border-color, background-color;
|
|
243
|
-
transition-duration: var(--
|
|
243
|
+
transition-duration: var(--fgd-duration-quick);
|
|
244
244
|
transition-timing-function: var(--ease-out-3);
|
|
245
245
|
}
|
|
246
246
|
}
|
|
@@ -260,7 +260,7 @@
|
|
|
260
260
|
.control[data-orientation='vertical'] {
|
|
261
261
|
flex-direction: column;
|
|
262
262
|
justify-content: center;
|
|
263
|
-
inline-size: var(--
|
|
263
|
+
inline-size: var(--fgd-size-hit);
|
|
264
264
|
block-size: 100%;
|
|
265
265
|
min-block-size: var(--size-px-13);
|
|
266
266
|
}
|
|
@@ -285,14 +285,14 @@
|
|
|
285
285
|
* --primary3 fill where soft fills apply and its rest --role-halo where
|
|
286
286
|
* they drop (--role-soft-hover-face, never the ground color), edge
|
|
287
287
|
* unchanged (§10.10; derived, flagged) [D181]. Dragging: the edge steps
|
|
288
|
-
* to --
|
|
288
|
+
* to --border-size-2-25, an active state, and the face returns to rest.
|
|
289
289
|
*/
|
|
290
290
|
.thumb:not([data-disabled]):hover {
|
|
291
291
|
background-color: var(--role-soft-hover-face);
|
|
292
292
|
}
|
|
293
293
|
|
|
294
294
|
.thumb[data-dragging]:not([data-disabled]) {
|
|
295
|
-
--slider-thumb-edge: var(--
|
|
295
|
+
--slider-thumb-edge: var(--border-size-2-25);
|
|
296
296
|
|
|
297
297
|
background-color: var(--role-halo);
|
|
298
298
|
}
|
|
@@ -311,8 +311,8 @@
|
|
|
311
311
|
|
|
312
312
|
/* Focus: the ring sits on the thumb when its range input has keyboard focus [D45]. */
|
|
313
313
|
.thumb:has(:focus-visible) {
|
|
314
|
-
outline: var(--
|
|
315
|
-
outline-offset: var(--
|
|
314
|
+
outline: var(--fgd-focus-width) solid var(--primary12);
|
|
315
|
+
outline-offset: var(--fgd-focus-offset);
|
|
316
316
|
}
|
|
317
317
|
|
|
318
318
|
/*
|
package/forms/switch/Switch.js
CHANGED
|
@@ -18,7 +18,7 @@ import styles from './switch.module.css';
|
|
|
18
18
|
* - Defaults: kind row; color axes none [D133].
|
|
19
19
|
* - Color fallback: inherits the scope; its secondary drives the on state
|
|
20
20
|
* through the --role-select aliases.
|
|
21
|
-
* - States: data-checked → track fill --role-select, edge --
|
|
21
|
+
* - States: data-checked → track fill --role-select, edge --border-size-2-25
|
|
22
22
|
* --role-select-edge, thumb a --role-select-mark disc at the end;
|
|
23
23
|
* :hover (not disabled, read-only or busy) [D181] → off track fill
|
|
24
24
|
* --role-soft-hover (--primary3 where soft fills apply), on track fill
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
align-items: start;
|
|
42
42
|
align-content: center;
|
|
43
43
|
box-sizing: border-box;
|
|
44
|
-
min-block-size: var(--
|
|
44
|
+
min-block-size: var(--fgd-size-hit);
|
|
45
45
|
min-inline-size: 0;
|
|
46
46
|
color: var(--primary12);
|
|
47
47
|
}
|
|
@@ -67,18 +67,18 @@
|
|
|
67
67
|
white-space: nowrap;
|
|
68
68
|
}
|
|
69
69
|
|
|
70
|
-
/* The track: --
|
|
70
|
+
/* The track: --fgd-size-hit × --size-px-5, --radius-round, a --border-size-2 --primary12 edge. */
|
|
71
71
|
.track {
|
|
72
72
|
--switch-edge: var(--border-size-2);
|
|
73
73
|
--switch-edge-radius: calc(var(--size-px-5) / 2);
|
|
74
|
-
--switch-travel: calc(var(--
|
|
74
|
+
--switch-travel: calc(var(--fgd-size-hit) - var(--size-px-3) - 2 * var(--size-px-1));
|
|
75
75
|
|
|
76
76
|
grid-area: track;
|
|
77
77
|
align-self: center;
|
|
78
78
|
position: relative;
|
|
79
79
|
display: block;
|
|
80
80
|
box-sizing: border-box;
|
|
81
|
-
inline-size: var(--
|
|
81
|
+
inline-size: var(--fgd-size-hit);
|
|
82
82
|
block-size: var(--size-px-5);
|
|
83
83
|
border: var(--switch-edge) solid var(--primary12);
|
|
84
84
|
border-radius: var(--radius-round);
|
|
@@ -107,10 +107,10 @@
|
|
|
107
107
|
.edge {
|
|
108
108
|
display: none;
|
|
109
109
|
position: absolute;
|
|
110
|
-
inset-block-start: calc(var(--
|
|
111
|
-
inset-inline-start: calc(var(--
|
|
112
|
-
inline-size: calc(100% - var(--
|
|
113
|
-
block-size: calc(100% - var(--
|
|
110
|
+
inset-block-start: calc(var(--fgd-dot-fine) / 2);
|
|
111
|
+
inset-inline-start: calc(var(--fgd-dot-fine) / 2);
|
|
112
|
+
inline-size: calc(100% - var(--fgd-dot-fine));
|
|
113
|
+
block-size: calc(100% - var(--fgd-dot-fine));
|
|
114
114
|
overflow: visible;
|
|
115
115
|
pointer-events: none;
|
|
116
116
|
}
|
|
@@ -118,7 +118,7 @@
|
|
|
118
118
|
.edgeLine {
|
|
119
119
|
fill: none;
|
|
120
120
|
stroke: var(--role-disabled-edge);
|
|
121
|
-
rx: calc(var(--switch-edge-radius) - var(--
|
|
121
|
+
rx: calc(var(--switch-edge-radius) - var(--fgd-dot-fine) / 2);
|
|
122
122
|
}
|
|
123
123
|
|
|
124
124
|
@media (forced-colors: active) {
|
|
@@ -127,18 +127,22 @@
|
|
|
127
127
|
}
|
|
128
128
|
}
|
|
129
129
|
|
|
130
|
-
/*
|
|
130
|
+
/*
|
|
131
|
+
* Travel and hover at --fgd-duration-quick with --ease-out-3; instant under
|
|
132
|
+
* reduced motion [D181]. The thumb travels and edges fade; the track's and
|
|
133
|
+
* thumb's fills rest at none, so they step at once [D205].
|
|
134
|
+
*/
|
|
131
135
|
@media (prefers-reduced-motion: no-preference) {
|
|
132
136
|
.track,
|
|
133
137
|
.thumb {
|
|
134
|
-
transition-property: inset-inline-start, border-color
|
|
135
|
-
transition-duration: var(--
|
|
138
|
+
transition-property: inset-inline-start, border-color;
|
|
139
|
+
transition-duration: var(--fgd-duration-quick);
|
|
136
140
|
transition-timing-function: var(--ease-out-3);
|
|
137
141
|
}
|
|
138
142
|
|
|
139
143
|
.label {
|
|
140
144
|
transition-property: text-decoration-color;
|
|
141
|
-
transition-duration: var(--
|
|
145
|
+
transition-duration: var(--fgd-duration-quick);
|
|
142
146
|
transition-timing-function: var(--ease-out-3);
|
|
143
147
|
}
|
|
144
148
|
}
|
|
@@ -157,7 +161,7 @@
|
|
|
157
161
|
}
|
|
158
162
|
|
|
159
163
|
.row .state {
|
|
160
|
-
margin-inline: var(--
|
|
164
|
+
margin-inline: var(--size-px-2-5) var(--size-px-2);
|
|
161
165
|
}
|
|
162
166
|
|
|
163
167
|
/* Inline: switch, state word (--size-px-2 from the track), then label. */
|
|
@@ -170,14 +174,14 @@
|
|
|
170
174
|
}
|
|
171
175
|
|
|
172
176
|
.inline .state {
|
|
173
|
-
margin-inline: var(--size-px-2) var(--
|
|
177
|
+
margin-inline: var(--size-px-2) var(--size-px-2-5);
|
|
174
178
|
}
|
|
175
179
|
}
|
|
176
180
|
|
|
177
181
|
@layer states {
|
|
178
|
-
/* On: --role-select fill, a --
|
|
182
|
+
/* On: --role-select fill, a --border-size-2-25 --role-select-edge, a solid --role-select-mark disc at the end (§10.1). */
|
|
179
183
|
.track[data-checked] {
|
|
180
|
-
--switch-edge: var(--
|
|
184
|
+
--switch-edge: var(--border-size-2-25);
|
|
181
185
|
|
|
182
186
|
border-color: var(--role-select-edge);
|
|
183
187
|
background-color: var(--role-select);
|
|
@@ -210,8 +214,8 @@
|
|
|
210
214
|
|
|
211
215
|
/* Focus: 2 px --primary12 ring at a 2 px offset outside the track, keyboard only [D45]. */
|
|
212
216
|
.track:focus-visible {
|
|
213
|
-
outline: var(--
|
|
214
|
-
outline-offset: var(--
|
|
217
|
+
outline: var(--fgd-focus-width) solid var(--primary12);
|
|
218
|
+
outline-offset: var(--fgd-focus-offset);
|
|
215
219
|
}
|
|
216
220
|
|
|
217
221
|
/* Disabled: dotted track in --role-rule (--primary12 on one-ink grounds [D85]), --role-muted ring. Never dimmed [D16]. */
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { type VariantProps } from 'class-variance-authority';
|
|
3
|
+
export declare const expandingBox: (props?: ({
|
|
4
|
+
collapsed?: boolean | null | undefined;
|
|
5
|
+
primary?: "ruby" | "brown" | "crimson" | "gold" | "gray" | "indigo" | "olive" | "pink" | "plum" | "purple" | "red" | "tomato" | "violet" | "bronze" | "iris" | "mauve" | "sage" | "sand" | "slate" | null | undefined;
|
|
6
|
+
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;
|
|
7
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
8
|
+
type ExpandingBoxVariants = VariantProps<typeof expandingBox>;
|
|
9
|
+
/** Class names for the owner's elements. */
|
|
10
|
+
export declare const expandingBoxParts: {
|
|
11
|
+
/**
|
|
12
|
+
* On the owner's element that hosts the rows (the trigger button, the
|
|
13
|
+
* dialog popup): positions the box and hands its focus ring to the box.
|
|
14
|
+
*/
|
|
15
|
+
readonly host: string;
|
|
16
|
+
/**
|
|
17
|
+
* On one element inside `ExpandingBoxMain` that rides the right edge (the
|
|
18
|
+
* shortcut hint, the esc or close button). At most one displayed per box.
|
|
19
|
+
*/
|
|
20
|
+
readonly end: string;
|
|
21
|
+
};
|
|
22
|
+
/** Props for ExpandingBox. */
|
|
23
|
+
export type ExpandingBoxProps = {
|
|
24
|
+
/**
|
|
25
|
+
* The pair's name base, shared by the two boxes that morph into each other
|
|
26
|
+
* (trigger and dialog). Get it once in the owner with `useExpandingBoxName()`,
|
|
27
|
+
* so two pairs never collide.
|
|
28
|
+
*/
|
|
29
|
+
name: string;
|
|
30
|
+
/** This box holds the transition names now. Exactly one box of a pair is active at a time. Default `false`. */
|
|
31
|
+
active?: boolean;
|
|
32
|
+
/** Trigger-sized state: the field edge color (`--role-rule`), hover edge step, focus-ring hand-off. Default `false`. */
|
|
33
|
+
collapsed?: boolean;
|
|
34
|
+
/**
|
|
35
|
+
* The expanded box is the dialog's sheet below `--md-n-above`. The box keeps
|
|
36
|
+
* its radius and frame; the owner insets the host by the page margin (and
|
|
37
|
+
* the safe areas). Marks the rows `data-sheet`. Default `false`.
|
|
38
|
+
*/
|
|
39
|
+
sheet?: boolean;
|
|
40
|
+
/** `span` inside phrasing-only hosts such as a `<button>`. Default `'div'`. */
|
|
41
|
+
as?: 'div' | 'span';
|
|
42
|
+
/** On the content wrapper. */
|
|
43
|
+
className?: string;
|
|
44
|
+
/** `ExpandingBoxMain`, then an optional `ExpandingBoxExtra`, then anything else (unnamed, such as a stats row). */
|
|
45
|
+
children: React.ReactNode;
|
|
46
|
+
/**
|
|
47
|
+
* Primary Radix scale: edges (hover and expanded `--primary12`), face
|
|
48
|
+
* (`--primary1`), focus ring. Never defaulted; omitted, it inherits the
|
|
49
|
+
* scope [D133].
|
|
50
|
+
*/
|
|
51
|
+
primary?: ExpandingBoxVariants['primary'];
|
|
52
|
+
/** Secondary Radix scale, accepted for the shared color contract; no part draws in it today. Never defaulted. */
|
|
53
|
+
secondary?: ExpandingBoxVariants['secondary'];
|
|
54
|
+
};
|
|
55
|
+
/** Props for ExpandingBoxMain and ExpandingBoxExtra: HTML attributes and a ref. */
|
|
56
|
+
export type ExpandingBoxPartProps = React.HTMLAttributes<HTMLElement> & {
|
|
57
|
+
ref?: React.Ref<HTMLElement>;
|
|
58
|
+
};
|
|
59
|
+
/**
|
|
60
|
+
* A 9-slice frame in three rows (head, content, foot), rendered as direct
|
|
61
|
+
* children of the host (give that element `expandingBoxParts.host`). Each
|
|
62
|
+
* row carries the scope attributes and the scale classes. While `active`,
|
|
63
|
+
* its pieces carry View Transition names, so the owner's
|
|
64
|
+
* `startExpandingTransition` morphs this box into the pair's other box:
|
|
65
|
+
* corners translate, edges stretch, main rides the left edge, `end` the
|
|
66
|
+
* right, and the extra grows.
|
|
67
|
+
*/
|
|
68
|
+
export declare function ExpandingBox(props: ExpandingBoxProps): React.JSX.Element;
|
|
69
|
+
/**
|
|
70
|
+
* The main piece (trigger: icon, label and shortcut hint; dialog: the input
|
|
71
|
+
* row). Rides the left edge. Renders the box's `as`.
|
|
72
|
+
*/
|
|
73
|
+
export declare function ExpandingBoxMain(props: ExpandingBoxPartProps): React.JSX.Element;
|
|
74
|
+
/**
|
|
75
|
+
* The extra piece (dialog: the results). If omitted, the box renders an
|
|
76
|
+
* empty one, so the trigger's empty extra grows into the dialog's.
|
|
77
|
+
*/
|
|
78
|
+
export declare function ExpandingBoxExtra(props: ExpandingBoxPartProps): React.JSX.Element;
|
|
79
|
+
/**
|
|
80
|
+
* A pair name from `useId()`, sanitized to a custom-ident: `fgd-xb-<id>` with
|
|
81
|
+
* `[^A-Za-z0-9_-]` replaced by `-`. Call it once in the owner and pass it to
|
|
82
|
+
* both boxes of the pair.
|
|
83
|
+
*/
|
|
84
|
+
export declare function useExpandingBoxName(): string;
|
|
85
|
+
export {};
|
|
86
|
+
//# sourceMappingURL=ExpandingBox.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ExpandingBox.d.ts","sourceRoot":"","sources":["../../src/foundations/expanding-box/ExpandingBox.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAqCjE,eAAO,MAAM,YAAY;;;;8EAYvB,CAAA;AAEF,KAAK,oBAAoB,GAAG,YAAY,CAAC,OAAO,YAAY,CAAC,CAAA;AAE7D,4CAA4C;AAC5C,eAAO,MAAM,iBAAiB;IAC5B;;;OAGG;;IAEH;;;OAGG;;CAEK,CAAA;AAEV,8BAA8B;AAC9B,MAAM,MAAM,iBAAiB,GAAG;IAC9B;;;;OAIG;IACH,IAAI,EAAE,MAAM,CAAA;IACZ,+GAA+G;IAC/G,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,wHAAwH;IACxH,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB;;;;OAIG;IACH,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,+EAA+E;IAC/E,EAAE,CAAC,EAAE,KAAK,GAAG,MAAM,CAAA;IACnB,8BAA8B;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,mHAAmH;IACnH,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB;;;;OAIG;IACH,OAAO,CAAC,EAAE,oBAAoB,CAAC,SAAS,CAAC,CAAA;IACzC,iHAAiH;IACjH,SAAS,CAAC,EAAE,oBAAoB,CAAC,WAAW,CAAC,CAAA;CAC9C,CAAA;AAED,mFAAmF;AACnF,MAAM,MAAM,qBAAqB,GAAG,KAAK,CAAC,cAAc,CAAC,WAAW,CAAC,GAAG;IACtE,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;CAC7B,CAAA;AAUD;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,iBAAiB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAsGxE;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAIhF;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,qBAAqB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAIjF;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,CAG5C"}
|
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { cva } from 'class-variance-authority';
|
|
4
|
+
import { cx } from '../../utils/className';
|
|
5
|
+
import { primaryScaleVariants, secondaryScaleVariants } from '../../utils/scales';
|
|
6
|
+
import { useScopeAttributes } from '../../utils/scope';
|
|
7
|
+
import styles from './expanding-box.module.css';
|
|
8
|
+
/*
|
|
9
|
+
* Expanding box: the frame the search trigger morphs out of and into its
|
|
10
|
+
* dialog (§9.10 [D194]). Behavior-free: it only names its pieces for View
|
|
11
|
+
* Transitions while `active`; the owner runs the morph with
|
|
12
|
+
* startExpandingTransition.
|
|
13
|
+
*
|
|
14
|
+
* Implementation (CSS Modules + CVA)
|
|
15
|
+
* - Module: expanding-box.module.css; CVA function `expandingBox`, applied
|
|
16
|
+
* to each of the three rows (head, content, foot), which render as direct
|
|
17
|
+
* children of the owner's host element.
|
|
18
|
+
* - Axes: `collapsed` → `collapsed` (the field edge color, the hover edge
|
|
19
|
+
* step and the focus-ring piece); `primary`, `secondary` → scales module
|
|
20
|
+
* classes. Radius and edge weight are the same in both states.
|
|
21
|
+
* - Compound variants: none. Defaults: `collapsed: false`; color axes: none
|
|
22
|
+
* [D133].
|
|
23
|
+
* - `sheet` draws nothing of its own: the frame is the same in every
|
|
24
|
+
* layout. It marks the rows `data-sheet` for the owner, which insets its
|
|
25
|
+
* host by the page margin below --md-n-above.
|
|
26
|
+
* - Transition names: `${name}-${piece}` for piece ∈ content, face, l, r,
|
|
27
|
+
* main, end, extra, tl, t, tr, bl, b, br, set per instance as inline custom
|
|
28
|
+
* properties on the rows (`none` while not active); `${name}-focus` while
|
|
29
|
+
* `collapsed`. The global rules live in utils/view-transitions.css.
|
|
30
|
+
* - Parts: host and end (exported in `expandingBoxParts`), ExpandingBoxMain,
|
|
31
|
+
* ExpandingBoxExtra.
|
|
32
|
+
* - States: host :hover (collapsed) → the edge step --role-rule →
|
|
33
|
+
* --primary12 [D140]; host :focus-visible (collapsed) → the ring on the
|
|
34
|
+
* box; <html data-fgd-expanding="close"> → the `closing` class; a
|
|
35
|
+
* collapsed box made active during a close → `landing` (its frame stays
|
|
36
|
+
* --primary12 until the morph finishes, then eases to --role-rule).
|
|
37
|
+
*/
|
|
38
|
+
export const expandingBox = cva(styles.row, {
|
|
39
|
+
variants: {
|
|
40
|
+
collapsed: {
|
|
41
|
+
true: styles.collapsed,
|
|
42
|
+
},
|
|
43
|
+
// Color axes: never defaulted [D133].
|
|
44
|
+
primary: primaryScaleVariants,
|
|
45
|
+
secondary: secondaryScaleVariants,
|
|
46
|
+
},
|
|
47
|
+
defaultVariants: {
|
|
48
|
+
collapsed: false,
|
|
49
|
+
},
|
|
50
|
+
});
|
|
51
|
+
/** Class names for the owner's elements. */
|
|
52
|
+
export const expandingBoxParts = {
|
|
53
|
+
/**
|
|
54
|
+
* On the owner's element that hosts the rows (the trigger button, the
|
|
55
|
+
* dialog popup): positions the box and hands its focus ring to the box.
|
|
56
|
+
*/
|
|
57
|
+
host: styles.host,
|
|
58
|
+
/**
|
|
59
|
+
* On one element inside `ExpandingBoxMain` that rides the right edge (the
|
|
60
|
+
* shortcut hint, the esc or close button). At most one displayed per box.
|
|
61
|
+
*/
|
|
62
|
+
end: styles.end,
|
|
63
|
+
};
|
|
64
|
+
const BoxContext = React.createContext({ as: 'div' });
|
|
65
|
+
BoxContext.displayName = 'ExpandingBoxContext';
|
|
66
|
+
/**
|
|
67
|
+
* A 9-slice frame in three rows (head, content, foot), rendered as direct
|
|
68
|
+
* children of the host (give that element `expandingBoxParts.host`). Each
|
|
69
|
+
* row carries the scope attributes and the scale classes. While `active`,
|
|
70
|
+
* its pieces carry View Transition names, so the owner's
|
|
71
|
+
* `startExpandingTransition` morphs this box into the pair's other box:
|
|
72
|
+
* corners translate, edges stretch, main rides the left edge, `end` the
|
|
73
|
+
* right, and the extra grows.
|
|
74
|
+
*/
|
|
75
|
+
export function ExpandingBox(props) {
|
|
76
|
+
const { name, active = false, collapsed = false, sheet = false, as = 'div', className, children, primary, secondary, } = props;
|
|
77
|
+
const scope = useScopeAttributes();
|
|
78
|
+
const context = React.useMemo(() => ({ as }), [as]);
|
|
79
|
+
const Element = as;
|
|
80
|
+
// The landing trigger: a collapsed box made active while a close morph runs.
|
|
81
|
+
// It keeps the expanded color in the new snapshot and until the morph ends.
|
|
82
|
+
const [landing, setLanding] = React.useState(false);
|
|
83
|
+
const wasActive = React.useRef(active);
|
|
84
|
+
React.useLayoutEffect(() => {
|
|
85
|
+
const was = wasActive.current;
|
|
86
|
+
wasActive.current = active;
|
|
87
|
+
if (collapsed && active && !was && document.documentElement.dataset.fgdExpanding === 'close') {
|
|
88
|
+
setLanding(true);
|
|
89
|
+
}
|
|
90
|
+
else if (!active) {
|
|
91
|
+
setLanding(false);
|
|
92
|
+
}
|
|
93
|
+
}, [active, collapsed]);
|
|
94
|
+
React.useEffect(() => {
|
|
95
|
+
if (!landing)
|
|
96
|
+
return undefined;
|
|
97
|
+
const root = document.documentElement;
|
|
98
|
+
const settle = () => {
|
|
99
|
+
if (root.dataset.fgdExpanding == null)
|
|
100
|
+
setLanding(false);
|
|
101
|
+
};
|
|
102
|
+
const observer = new MutationObserver(settle);
|
|
103
|
+
observer.observe(root, { attributes: true, attributeFilter: ['data-fgd-expanding'] });
|
|
104
|
+
settle();
|
|
105
|
+
return () => observer.disconnect();
|
|
106
|
+
}, [landing]);
|
|
107
|
+
const piece = (kind) => (active ? `${name}-${kind}` : 'none');
|
|
108
|
+
const rowClassName = cx(expandingBox({ collapsed, primary, secondary }), landing && styles.landing);
|
|
109
|
+
const state = {
|
|
110
|
+
'data-active': active ? '' : undefined,
|
|
111
|
+
'data-collapsed': collapsed ? '' : undefined,
|
|
112
|
+
'data-sheet': sheet ? '' : undefined,
|
|
113
|
+
};
|
|
114
|
+
const headNames = {
|
|
115
|
+
'--xb-tl': piece('tl'),
|
|
116
|
+
'--xb-t': piece('t'),
|
|
117
|
+
'--xb-tr': piece('tr'),
|
|
118
|
+
};
|
|
119
|
+
const footNames = {
|
|
120
|
+
'--xb-bl': piece('bl'),
|
|
121
|
+
'--xb-b': piece('b'),
|
|
122
|
+
'--xb-br': piece('br'),
|
|
123
|
+
};
|
|
124
|
+
const contentNames = {
|
|
125
|
+
'--xb-content': piece('content'),
|
|
126
|
+
'--xb-face': piece('face'),
|
|
127
|
+
'--xb-l': piece('l'),
|
|
128
|
+
'--xb-r': piece('r'),
|
|
129
|
+
'--xb-main': piece('main'),
|
|
130
|
+
'--xb-end': piece('end'),
|
|
131
|
+
'--xb-extra': piece('extra'),
|
|
132
|
+
// The ring's piece lives on the collapsed box whether or not it is active.
|
|
133
|
+
'--xb-focus': collapsed ? `${name}-focus` : 'none',
|
|
134
|
+
};
|
|
135
|
+
return (React.createElement(BoxContext.Provider, { value: context },
|
|
136
|
+
React.createElement(Element, { ...scope, ...state, className: cx(rowClassName, styles.head), style: headNames },
|
|
137
|
+
React.createElement(Element, { className: cx(styles.corner, styles.tl) }),
|
|
138
|
+
React.createElement(Element, { className: cx(styles.edge, styles.t) }),
|
|
139
|
+
React.createElement(Element, { className: cx(styles.corner, styles.tr) })),
|
|
140
|
+
React.createElement(Element, { ...scope, ...state, className: cx(rowClassName, styles.content), style: contentNames },
|
|
141
|
+
React.createElement(Element, { className: styles.face }),
|
|
142
|
+
React.createElement(Element, { className: styles.left }),
|
|
143
|
+
React.createElement(Element, { className: styles.right }),
|
|
144
|
+
React.createElement(Element, { className: cx(styles.inner, className) },
|
|
145
|
+
children,
|
|
146
|
+
React.createElement(Element, { className: styles.extraFallback }))),
|
|
147
|
+
React.createElement(Element, { ...scope, ...state, className: cx(rowClassName, styles.foot), style: footNames },
|
|
148
|
+
React.createElement(Element, { className: cx(styles.corner, styles.bl) }),
|
|
149
|
+
React.createElement(Element, { className: cx(styles.edge, styles.b) }),
|
|
150
|
+
React.createElement(Element, { className: cx(styles.corner, styles.br) }))));
|
|
151
|
+
}
|
|
152
|
+
/**
|
|
153
|
+
* The main piece (trigger: icon, label and shortcut hint; dialog: the input
|
|
154
|
+
* row). Rides the left edge. Renders the box's `as`.
|
|
155
|
+
*/
|
|
156
|
+
export function ExpandingBoxMain(props) {
|
|
157
|
+
const { className, ...rest } = props;
|
|
158
|
+
const Element = React.useContext(BoxContext).as;
|
|
159
|
+
return React.createElement(Element, { ...rest, className: cx(styles.main, className) });
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* The extra piece (dialog: the results). If omitted, the box renders an
|
|
163
|
+
* empty one, so the trigger's empty extra grows into the dialog's.
|
|
164
|
+
*/
|
|
165
|
+
export function ExpandingBoxExtra(props) {
|
|
166
|
+
const { className, ...rest } = props;
|
|
167
|
+
const Element = React.useContext(BoxContext).as;
|
|
168
|
+
return React.createElement(Element, { ...rest, className: cx(styles.extra, className) });
|
|
169
|
+
}
|
|
170
|
+
/**
|
|
171
|
+
* A pair name from `useId()`, sanitized to a custom-ident: `fgd-xb-<id>` with
|
|
172
|
+
* `[^A-Za-z0-9_-]` replaced by `-`. Call it once in the owner and pass it to
|
|
173
|
+
* both boxes of the pair.
|
|
174
|
+
*/
|
|
175
|
+
export function useExpandingBoxName() {
|
|
176
|
+
const id = React.useId();
|
|
177
|
+
return `fgd-xb-${id.replace(/[^A-Za-z0-9_-]/g, '-')}`;
|
|
178
|
+
}
|
|
179
|
+
//# sourceMappingURL=ExpandingBox.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ExpandingBox.js","sourceRoot":"","sources":["../../src/foundations/expanding-box/ExpandingBox.tsx"],"names":[],"mappings":"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"}
|