@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
|
@@ -86,7 +86,7 @@
|
|
|
86
86
|
box-sizing: content-box;
|
|
87
87
|
block-size: calc(var(--size-px-2) - 2 * var(--border-size-1));
|
|
88
88
|
border: var(--border-size-1) solid var(--primary12);
|
|
89
|
-
border-radius: var(--
|
|
89
|
+
border-radius: var(--radius-0);
|
|
90
90
|
}
|
|
91
91
|
|
|
92
92
|
/* Solid --primary12; its height is Base UI's inline `inherit`. Only the value edge prints as a line. */
|
|
@@ -98,24 +98,24 @@
|
|
|
98
98
|
background-color: var(--primary12);
|
|
99
99
|
}
|
|
100
100
|
|
|
101
|
-
/* Threshold: a --
|
|
101
|
+
/* Threshold: a --size-px-2-5 tick at --border-size-2 across the track (a border, so it prints). */
|
|
102
102
|
.threshold {
|
|
103
103
|
position: absolute;
|
|
104
104
|
inset-block-start: 50%;
|
|
105
105
|
inset-inline-start: var(--meter-threshold);
|
|
106
106
|
inline-size: 0;
|
|
107
|
-
block-size: var(--
|
|
108
|
-
margin-block-start: calc(var(--
|
|
107
|
+
block-size: var(--size-px-2-5);
|
|
108
|
+
margin-block-start: calc(var(--size-px-2-5) / -2);
|
|
109
109
|
margin-inline-start: calc(var(--border-size-2) / -2);
|
|
110
110
|
border-inline-start: var(--border-size-2) solid var(--primary12);
|
|
111
111
|
}
|
|
112
112
|
|
|
113
|
-
/* Segmented: outlined --
|
|
113
|
+
/* Segmented: outlined --size-px-2-5 cells, --border-size-1, 2 px apart; filled cells solid. */
|
|
114
114
|
.cell {
|
|
115
115
|
flex: none;
|
|
116
116
|
box-sizing: border-box;
|
|
117
|
-
inline-size: var(--
|
|
118
|
-
block-size: var(--
|
|
117
|
+
inline-size: var(--size-px-2-5);
|
|
118
|
+
block-size: var(--size-px-2-5);
|
|
119
119
|
border: var(--border-size-1) solid var(--primary12);
|
|
120
120
|
}
|
|
121
121
|
|
|
@@ -126,7 +126,7 @@
|
|
|
126
126
|
/* Ordinal: a --border-size-1 track with stop ticks, caps labels under the stops. */
|
|
127
127
|
.stop {
|
|
128
128
|
position: absolute;
|
|
129
|
-
inset-block-start: var(--
|
|
129
|
+
inset-block-start: var(--size-px-2-5);
|
|
130
130
|
inset-inline-start: calc((var(--meter-stop-index) + 0.5) / var(--meter-stops) * 100%);
|
|
131
131
|
block-size: var(--size-px-2);
|
|
132
132
|
margin-inline-start: calc(var(--border-size-1) / -2);
|
|
@@ -144,13 +144,13 @@
|
|
|
144
144
|
position: absolute;
|
|
145
145
|
inset-block-start: 0;
|
|
146
146
|
inset-inline-start: calc((var(--meter-stop-index) + 0.5) / var(--meter-stops) * 100%);
|
|
147
|
-
inline-size: var(--
|
|
147
|
+
inline-size: var(--size-px-2-5);
|
|
148
148
|
block-size: var(--size-px-2);
|
|
149
|
-
margin-inline-start: calc(var(--
|
|
149
|
+
margin-inline-start: calc(var(--size-px-2-5) / -2);
|
|
150
150
|
overflow: visible;
|
|
151
151
|
fill: none;
|
|
152
152
|
stroke: var(--primary12);
|
|
153
|
-
stroke-width: var(--
|
|
153
|
+
stroke-width: var(--border-size-1-25);
|
|
154
154
|
stroke-linejoin: round;
|
|
155
155
|
}
|
|
156
156
|
|
|
@@ -175,7 +175,7 @@
|
|
|
175
175
|
--type-weight: var(--font-weight-7);
|
|
176
176
|
|
|
177
177
|
font-weight: var(--type-weight);
|
|
178
|
-
font-size: var(--
|
|
178
|
+
font-size: var(--fgd-font-size-caption);
|
|
179
179
|
}
|
|
180
180
|
|
|
181
181
|
/* Ring: a --border-size-2 --primary12 arc over a --role-hairline track, always with its value. */
|
|
@@ -223,7 +223,7 @@
|
|
|
223
223
|
color: var(--role-status);
|
|
224
224
|
fill: var(--role-status-fill);
|
|
225
225
|
stroke: var(--role-status-fill);
|
|
226
|
-
stroke-width: var(--
|
|
226
|
+
stroke-width: var(--border-size-1-5);
|
|
227
227
|
stroke-linecap: round;
|
|
228
228
|
stroke-linejoin: round;
|
|
229
229
|
}
|
|
@@ -289,7 +289,7 @@
|
|
|
289
289
|
.ordinal .track::before {
|
|
290
290
|
content: '';
|
|
291
291
|
position: absolute;
|
|
292
|
-
inset-block-start: calc(var(--
|
|
292
|
+
inset-block-start: calc(var(--size-px-2-5) + var(--size-px-1));
|
|
293
293
|
inset-inline: calc(50% / var(--meter-stops));
|
|
294
294
|
border-block-start: var(--border-size-1) solid var(--primary12);
|
|
295
295
|
}
|
|
@@ -2,7 +2,7 @@ import * as React from 'react';
|
|
|
2
2
|
import { Progress as BaseProgress } from '@base-ui/react/progress';
|
|
3
3
|
import { type VariantProps } from 'class-variance-authority';
|
|
4
4
|
export declare const progress: (props?: ({
|
|
5
|
-
kind?: "bar" | "rail" | "
|
|
5
|
+
kind?: "bar" | "rail" | "ring" | "steps" | null | undefined;
|
|
6
6
|
primary?: "ruby" | "brown" | "crimson" | "gold" | "gray" | "indigo" | "olive" | "pink" | "plum" | "purple" | "red" | "tomato" | "violet" | "bronze" | "iris" | "mauve" | "sage" | "sand" | "slate" | null | undefined;
|
|
7
7
|
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;
|
|
8
8
|
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
|
|
28
28
|
@keyframes dashAdvance {
|
|
29
29
|
to {
|
|
30
|
-
stroke-dashoffset: calc(-1 * (var(--
|
|
30
|
+
stroke-dashoffset: calc(-1 * (var(--fgd-dash) + var(--fgd-dash-gap)));
|
|
31
31
|
}
|
|
32
32
|
}
|
|
33
33
|
|
|
@@ -73,7 +73,7 @@
|
|
|
73
73
|
box-sizing: content-box;
|
|
74
74
|
block-size: calc(var(--size-px-2) - 2 * var(--border-size-1));
|
|
75
75
|
border: var(--border-size-1) solid var(--primary12);
|
|
76
|
-
border-radius: var(--
|
|
76
|
+
border-radius: var(--radius-0);
|
|
77
77
|
}
|
|
78
78
|
|
|
79
79
|
/* The indicator's height is Base UI's inline `inherit`: the track's content height. */
|
|
@@ -92,12 +92,12 @@
|
|
|
92
92
|
stroke: var(--primary12);
|
|
93
93
|
}
|
|
94
94
|
|
|
95
|
-
/* Segmented: outlined --
|
|
95
|
+
/* Segmented: outlined --size-px-2-5 cells, --border-size-1, 2 px apart; filled cells solid. */
|
|
96
96
|
.cell {
|
|
97
97
|
flex: none;
|
|
98
98
|
box-sizing: border-box;
|
|
99
|
-
inline-size: var(--
|
|
100
|
-
block-size: var(--
|
|
99
|
+
inline-size: var(--size-px-2-5);
|
|
100
|
+
block-size: var(--size-px-2-5);
|
|
101
101
|
border: var(--border-size-1) solid var(--primary12);
|
|
102
102
|
}
|
|
103
103
|
|
|
@@ -150,7 +150,7 @@
|
|
|
150
150
|
color: var(--role-status);
|
|
151
151
|
fill: var(--role-status-fill);
|
|
152
152
|
stroke: var(--role-status-fill);
|
|
153
|
-
stroke-width: var(--
|
|
153
|
+
stroke-width: var(--border-size-1-5);
|
|
154
154
|
stroke-linecap: round;
|
|
155
155
|
stroke-linejoin: round;
|
|
156
156
|
}
|
|
@@ -262,7 +262,7 @@
|
|
|
262
262
|
/* The dashes advance slowly, and only under --motionOK; never shimmer, pulse or opacity (§10.20). */
|
|
263
263
|
@media (prefers-reduced-motion: no-preference) {
|
|
264
264
|
.base[data-indeterminate] .dashLine {
|
|
265
|
-
animation: dashAdvance calc(var(--
|
|
265
|
+
animation: dashAdvance calc(var(--fgd-duration-disclosure) * 6) linear infinite;
|
|
266
266
|
}
|
|
267
267
|
}
|
|
268
268
|
}
|
|
@@ -12,11 +12,11 @@
|
|
|
12
12
|
}
|
|
13
13
|
|
|
14
14
|
@layer base {
|
|
15
|
-
/* No container: icon, --
|
|
15
|
+
/* No container: icon, --size-px-2-5, label. */
|
|
16
16
|
.base {
|
|
17
17
|
display: inline-flex;
|
|
18
18
|
align-items: center;
|
|
19
|
-
gap: var(--
|
|
19
|
+
gap: var(--size-px-2-5);
|
|
20
20
|
max-inline-size: 100%;
|
|
21
21
|
color: var(--primary12);
|
|
22
22
|
text-decoration-line: none;
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
text-underline-offset: var(--size-px-1);
|
|
49
49
|
}
|
|
50
50
|
|
|
51
|
-
/* A linked tag's target reaches --
|
|
51
|
+
/* A linked tag's target reaches --fgd-size-hit, extended invisibly (§9.1) [D43]. */
|
|
52
52
|
.base[href] {
|
|
53
53
|
position: relative;
|
|
54
54
|
}
|
|
@@ -59,8 +59,8 @@
|
|
|
59
59
|
top: 50%;
|
|
60
60
|
left: 50%;
|
|
61
61
|
inline-size: 100%;
|
|
62
|
-
block-size: var(--
|
|
63
|
-
min-inline-size: var(--
|
|
62
|
+
block-size: var(--fgd-size-hit);
|
|
63
|
+
min-inline-size: var(--fgd-size-hit);
|
|
64
64
|
translate: -50% -50%;
|
|
65
65
|
}
|
|
66
66
|
|
|
@@ -70,11 +70,11 @@
|
|
|
70
70
|
}
|
|
71
71
|
}
|
|
72
72
|
|
|
73
|
-
/* Hover transition [D181]: --
|
|
73
|
+
/* Hover transition [D181]: --fgd-duration-quick, --ease-out-3. */
|
|
74
74
|
@media (prefers-reduced-motion: no-preference) {
|
|
75
75
|
.label {
|
|
76
76
|
transition-property: text-decoration-color;
|
|
77
|
-
transition-duration: var(--
|
|
77
|
+
transition-duration: var(--fgd-duration-quick);
|
|
78
78
|
transition-timing-function: var(--ease-out-3);
|
|
79
79
|
}
|
|
80
80
|
}
|
|
@@ -39,7 +39,7 @@ export interface ToastOptions {
|
|
|
39
39
|
actions?: ToastAction[];
|
|
40
40
|
/**
|
|
41
41
|
* Auto-dismiss time in ms for a neutral, info or success toast without
|
|
42
|
-
* actions: at least 6000 (--
|
|
42
|
+
* actions: at least 6000 (--fgd-duration-toast); `0` persists.
|
|
43
43
|
*/
|
|
44
44
|
timeout?: number;
|
|
45
45
|
/** Called when the toast starts closing. */
|
|
@@ -69,7 +69,7 @@ export declare function useToastManager(): ToastManager;
|
|
|
69
69
|
export interface ToastProviderProps {
|
|
70
70
|
children?: React.ReactNode;
|
|
71
71
|
/**
|
|
72
|
-
* Default auto-dismiss time in ms, at least 6000 (--
|
|
72
|
+
* Default auto-dismiss time in ms, at least 6000 (--fgd-duration-toast).
|
|
73
73
|
* Timers pause on hover, on focus and while the tab is hidden.
|
|
74
74
|
*/
|
|
75
75
|
timeout?: number;
|
|
@@ -88,7 +88,7 @@ export interface ToastProviderProps {
|
|
|
88
88
|
* Provides toasts to its children and renders the docked bar: full width
|
|
89
89
|
* at the bottom viewport edge on --layer-5, a `white` scope with a
|
|
90
90
|
* --border-size-2 --primary12 top rule, content aligned to
|
|
91
|
-
* --
|
|
91
|
+
* --fgd-container-content. One toast shows at a time; a queue count
|
|
92
92
|
* ("1 of 3") shows while more wait. The page reserves no space for it.
|
|
93
93
|
*/
|
|
94
94
|
export declare function ToastProvider(props: ToastProviderProps): React.JSX.Element;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Toast.d.ts","sourceRoot":"","sources":["../../src/feedback/toast/Toast.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAKzD,OAAO,EAA2C,KAAK,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAQ9F,OAAO,EAGL,KAAK,YAAY,EACjB,KAAK,UAAU,EAChB,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"Toast.d.ts","sourceRoot":"","sources":["../../src/feedback/toast/Toast.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAKzD,OAAO,EAA2C,KAAK,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAQ9F,OAAO,EAGL,KAAK,YAAY,EACjB,KAAK,UAAU,EAChB,MAAM,oBAAoB,CAAA;AAsC3B,eAAO,MAAM,KAAK,oFAAmB,CAAA;AAErC,MAAM,MAAM,WAAW,GAAG,MAAM,CAAA;AAKhC,kGAAkG;AAClG,MAAM,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,wBAAwB,CAAC,QAAQ,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,GAAG;IAChG;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB,CAAA;AAED,oDAAoD;AACpD,MAAM,WAAW,SAAS;IACxB,OAAO,CAAC,EAAE,WAAW,EAAE,CAAA;CACxB;AAED,2BAA2B;AAC3B,MAAM,WAAW,YAAY;IAC3B,8CAA8C;IAC9C,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,oFAAoF;IACpF,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACvB,yEAAyE;IACzE,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC7B;;;;OAIG;IACH,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,WAAW,EAAE,CAAA;IACvB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,4CAA4C;IAC5C,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;CACtB;AAED,KAAK,eAAe,GAAG,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAA;AAqC5D,uDAAuD;AACvD,MAAM,WAAW,YAAY;IAC3B,gCAAgC;IAChC,MAAM,EAAE,eAAe,EAAE,CAAA;IACzB,kFAAkF;IAClF,GAAG,EAAE,CAAC,OAAO,EAAE,YAAY,KAAK,MAAM,CAAA;IACtC,kFAAkF;IAClF,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,IAAI,CAAC,KAAK,IAAI,CAAA;IACxE,sDAAsD;IACtD,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;CAC7B;AAED;;;;GAIG;AACH,wBAAgB,eAAe,IAAI,YAAY,CAa9C;AAED,+BAA+B;AAC/B,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC1B;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,uGAAuG;IACvG,YAAY,CAAC,EAAE,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,CAAA;IACvD,sGAAsG;IACtG,OAAO,CAAC,EAAE,YAAY,CAAA;IACtB,iFAAiF;IACjF,SAAS,CAAC,EAAE,UAAU,CAAA;IACtB,iEAAiE;IACjE,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,2EAA2E;IAC3E,SAAS,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;CAChD;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,kBAAkB,qBAYtD"}
|
package/feedback/toast/Toast.js
CHANGED
|
@@ -8,6 +8,7 @@ import { StatusGlyph, statusLabels, statusScales } from '../../utils/StatusGlyph
|
|
|
8
8
|
import { cx } from '../../utils/className';
|
|
9
9
|
import { OverlayScope, overlayActionClassName, overlayAttributes, overlayScales, } from '../../utils/overlay';
|
|
10
10
|
import { primaryScaleVariants, secondaryScaleVariants, } from '../../utils/scales';
|
|
11
|
+
import { useReleaseMark } from '../../utils/useReleaseMark';
|
|
11
12
|
import styles from './toast.module.css';
|
|
12
13
|
/*
|
|
13
14
|
* Toast (§10.17): a brief confirmation or a non-blocking notice, docked as
|
|
@@ -39,12 +40,12 @@ import styles from './toast.module.css';
|
|
|
39
40
|
* [D23, D89, D139, D156].
|
|
40
41
|
* - Container: none; the bar is page frame and uses the viewport media.
|
|
41
42
|
*
|
|
42
|
-
* Timing: auto-dismissing toasts stay at least --
|
|
43
|
+
* Timing: auto-dismissing toasts stay at least --fgd-duration-toast (6 s)
|
|
43
44
|
* and pause on hover, on focus and while the tab is hidden; warning,
|
|
44
45
|
* danger and action toasts persist until acted on or dismissed.
|
|
45
46
|
*/
|
|
46
47
|
export const toast = cva(styles.base);
|
|
47
|
-
/** --
|
|
48
|
+
/** --fgd-duration-toast, restated in ms for Base UI's timers. */
|
|
48
49
|
const TOAST_DURATION = 6000;
|
|
49
50
|
function isStatus(type) {
|
|
50
51
|
return type === 'info' || type === 'success' || type === 'warning' || type === 'danger';
|
|
@@ -55,7 +56,7 @@ function toStatus(type) {
|
|
|
55
56
|
return 'danger';
|
|
56
57
|
return isStatus(type) ? type : undefined;
|
|
57
58
|
}
|
|
58
|
-
/** At least --
|
|
59
|
+
/** At least --fgd-duration-toast; 0 persists; undefined keeps the provider's. */
|
|
59
60
|
function clampTimeout(timeout) {
|
|
60
61
|
if (timeout === undefined)
|
|
61
62
|
return undefined;
|
|
@@ -97,7 +98,7 @@ export function useToastManager() {
|
|
|
97
98
|
* Provides toasts to its children and renders the docked bar: full width
|
|
98
99
|
* at the bottom viewport edge on --layer-5, a `white` scope with a
|
|
99
100
|
* --border-size-2 --primary12 top rule, content aligned to
|
|
100
|
-
* --
|
|
101
|
+
* --fgd-container-content. One toast shows at a time; a queue count
|
|
101
102
|
* ("1 of 3") shows while more wait. The page reserves no space for it.
|
|
102
103
|
*/
|
|
103
104
|
export function ToastProvider(props) {
|
|
@@ -129,7 +130,7 @@ function ToastViewport(props) {
|
|
|
129
130
|
}, [hasToasts]);
|
|
130
131
|
const queued = toasts.filter((item) => item.transitionStatus !== 'ending');
|
|
131
132
|
return (React.createElement(BaseToast.Portal, { container: container },
|
|
132
|
-
React.createElement(BaseToast.Viewport, { ...overlayAttributes, "aria-label": label, className: cx(styles.viewport, primaryScaleVariants[scales.primary], secondaryScaleVariants[scales.secondary], overlayActionClassName) },
|
|
133
|
+
React.createElement(BaseToast.Viewport, { ...overlayAttributes, "aria-label": label ?? 'Notifications', className: cx(styles.viewport, primaryScaleVariants[scales.primary], secondaryScaleVariants[scales.secondary], overlayActionClassName) },
|
|
133
134
|
React.createElement(OverlayScope, null, toasts.map((item) => (React.createElement(ToastItem, { key: item.id, toast: item, position: queued.indexOf(item) + 1, total: queued.length })))))));
|
|
134
135
|
}
|
|
135
136
|
function ToastItem(props) {
|
|
@@ -150,7 +151,7 @@ function ToastItem(props) {
|
|
|
150
151
|
}
|
|
151
152
|
/** An action cell: holds its rest width while busy and ignores presses then [D84]. */
|
|
152
153
|
function ToastActionCell(props) {
|
|
153
|
-
const { onClick, disabled, destructive, ...rest } = props;
|
|
154
|
+
const { onClick, onPointerDown, onKeyUp, disabled, destructive, ...rest } = props;
|
|
154
155
|
const busy = rest['aria-busy'] === true || rest['aria-busy'] === 'true';
|
|
155
156
|
const element = React.useRef(null);
|
|
156
157
|
const restWidth = React.useRef(null);
|
|
@@ -168,6 +169,15 @@ function ToastActionCell(props) {
|
|
|
168
169
|
node.style.removeProperty('--toast-action-rest-width');
|
|
169
170
|
};
|
|
170
171
|
}, [busy]);
|
|
171
|
-
|
|
172
|
+
// The press swaps fill and ink as the inverse pair; the release mark lets
|
|
173
|
+
// the module step the release too, never fading the ink over the fill [D205].
|
|
174
|
+
const releaseMark = useReleaseMark(element);
|
|
175
|
+
return (React.createElement(BaseButton, { ...rest, ref: element, disabled: disabled, className: cx(styles.action, destructive ? styles.actionDestructive : undefined), onClick: busy ? undefined : onClick, onPointerDown: (event) => {
|
|
176
|
+
releaseMark.onPointerDown();
|
|
177
|
+
onPointerDown?.(event);
|
|
178
|
+
}, onKeyUp: (event) => {
|
|
179
|
+
releaseMark.onKeyUp(event);
|
|
180
|
+
onKeyUp?.(event);
|
|
181
|
+
} }));
|
|
172
182
|
}
|
|
173
183
|
//# sourceMappingURL=Toast.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Toast.js","sourceRoot":"","sources":["../../src/feedback/toast/Toast.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,sBAAsB,CAAA;AACzD,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,EAAE,GAAG,EAAE,MAAM,0BAA0B,CAAA;AAE9C,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAC7C,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAe,MAAM,yBAAyB,CAAA;AAC9F,OAAO,EAAE,EAAE,EAAE,MAAM,uBAAuB,CAAA;AAC1C,OAAO,EACL,YAAY,EACZ,sBAAsB,EACtB,iBAAiB,EACjB,aAAa,GACd,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EACL,oBAAoB,EACpB,sBAAsB,GAGvB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,MAAM,MAAM,oBAAoB,CAAA;AAEvC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;AAIrC,
|
|
1
|
+
{"version":3,"file":"Toast.js","sourceRoot":"","sources":["../../src/feedback/toast/Toast.tsx"],"names":[],"mappings":"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"}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* A full-width bar docked to the bottom viewport edge on --layer-5, never a
|
|
8
8
|
* floating card [D25]: the `white` scope's --primary1 face and a
|
|
9
9
|
* --border-size-2 --primary12 rule on its content side only [D23, D89],
|
|
10
|
-
* content aligned to --
|
|
10
|
+
* content aligned to --fgd-container-content. Action cells are full-height
|
|
11
11
|
* `type-button` text cells divided by --border-size-1 --role-rule. One
|
|
12
12
|
* toast shows at a time. Motion is instant or a clip reveal from the bottom
|
|
13
13
|
* edge, never a fade [D91]. Colors are role variables only; local custom
|
|
@@ -63,12 +63,12 @@
|
|
|
63
63
|
'glyph message queue close'
|
|
64
64
|
'actions actions actions actions';
|
|
65
65
|
align-items: center;
|
|
66
|
-
column-gap: var(--
|
|
66
|
+
column-gap: var(--size-px-2-5);
|
|
67
67
|
box-sizing: border-box;
|
|
68
|
-
min-block-size: var(--
|
|
68
|
+
min-block-size: var(--fgd-size-control-xl);
|
|
69
69
|
padding-inline: max(
|
|
70
|
-
var(--
|
|
71
|
-
calc((100% - var(--
|
|
70
|
+
var(--fgd-space-margin),
|
|
71
|
+
calc((100% - var(--fgd-container-content)) / 2)
|
|
72
72
|
);
|
|
73
73
|
border-block-start: var(--border-size-2) solid var(--primary12);
|
|
74
74
|
background-color: var(--primary1);
|
|
@@ -85,7 +85,7 @@
|
|
|
85
85
|
color: var(--role-status);
|
|
86
86
|
fill: var(--role-status-fill);
|
|
87
87
|
stroke: var(--role-status-fill);
|
|
88
|
-
stroke-width: var(--
|
|
88
|
+
stroke-width: var(--border-size-1-5);
|
|
89
89
|
stroke-linecap: round;
|
|
90
90
|
stroke-linejoin: round;
|
|
91
91
|
}
|
|
@@ -93,7 +93,7 @@
|
|
|
93
93
|
.message {
|
|
94
94
|
grid-area: message;
|
|
95
95
|
min-inline-size: 0;
|
|
96
|
-
padding-block: var(--
|
|
96
|
+
padding-block: var(--size-px-2-5);
|
|
97
97
|
}
|
|
98
98
|
|
|
99
99
|
.title,
|
|
@@ -119,7 +119,7 @@
|
|
|
119
119
|
display: inline-flex;
|
|
120
120
|
align-items: center;
|
|
121
121
|
justify-content: center;
|
|
122
|
-
min-block-size: var(--
|
|
122
|
+
min-block-size: var(--fgd-size-hit);
|
|
123
123
|
margin: 0;
|
|
124
124
|
padding-block: 0;
|
|
125
125
|
padding-inline: var(--size-px-5);
|
|
@@ -128,7 +128,7 @@
|
|
|
128
128
|
background: none;
|
|
129
129
|
color: var(--primary12);
|
|
130
130
|
white-space: nowrap;
|
|
131
|
-
text-decoration-thickness: var(--
|
|
131
|
+
text-decoration-thickness: var(--border-size-1-5);
|
|
132
132
|
text-underline-offset: 0.15em;
|
|
133
133
|
appearance: none;
|
|
134
134
|
}
|
|
@@ -165,14 +165,14 @@
|
|
|
165
165
|
@media (prefers-reduced-motion: no-preference) {
|
|
166
166
|
.base {
|
|
167
167
|
transition-property: clip-path;
|
|
168
|
-
transition-duration: var(--
|
|
168
|
+
transition-duration: var(--fgd-duration-disclosure);
|
|
169
169
|
transition-timing-function: var(--ease-out-3);
|
|
170
170
|
}
|
|
171
171
|
|
|
172
|
-
/* Hover
|
|
172
|
+
/* Hover transitions [D181]: --fgd-duration-quick, --ease-out-3, for the ink and underline. */
|
|
173
173
|
.action {
|
|
174
|
-
transition-property: color,
|
|
175
|
-
transition-duration: var(--
|
|
174
|
+
transition-property: color, text-decoration-color;
|
|
175
|
+
transition-duration: var(--fgd-duration-quick);
|
|
176
176
|
transition-timing-function: var(--ease-out-3);
|
|
177
177
|
}
|
|
178
178
|
}
|
|
@@ -224,19 +224,19 @@
|
|
|
224
224
|
|
|
225
225
|
.base:focus-visible,
|
|
226
226
|
.viewport:focus-visible {
|
|
227
|
-
outline: var(--
|
|
228
|
-
outline-offset: calc(-2 * var(--
|
|
227
|
+
outline: var(--fgd-focus-width) solid var(--primary12);
|
|
228
|
+
outline-offset: calc(-2 * var(--fgd-focus-width));
|
|
229
229
|
}
|
|
230
230
|
|
|
231
231
|
/*
|
|
232
232
|
* Action cell hover (not disabled, not busy): the §9.2 `text` Button
|
|
233
233
|
* hover [D181]. The label takes --role-link-hover, underlined in
|
|
234
|
-
* --role-accent only where that ink is --primary12 (--
|
|
234
|
+
* --role-accent only where that ink is --primary12 (--fgd-link-hover-line);
|
|
235
235
|
* forced colors add the underline.
|
|
236
236
|
*/
|
|
237
237
|
.action:not([data-disabled], [aria-busy='true']):hover {
|
|
238
238
|
color: var(--role-link-hover);
|
|
239
|
-
text-decoration-line: var(--
|
|
239
|
+
text-decoration-line: var(--fgd-link-hover-line);
|
|
240
240
|
text-decoration-color: var(--role-accent);
|
|
241
241
|
}
|
|
242
242
|
|
|
@@ -253,7 +253,18 @@
|
|
|
253
253
|
}
|
|
254
254
|
}
|
|
255
255
|
|
|
256
|
-
/*
|
|
256
|
+
/*
|
|
257
|
+
* Pressed: the inverse pair [D84]. Its fill rests at none, so fill and
|
|
258
|
+
* ink swap together at once, and so does the release (marked
|
|
259
|
+
* `data-released` for two frames, since a release and a hover-in both end
|
|
260
|
+
* on :hover): the ink never fades over a fill of its own tone. Only the
|
|
261
|
+
* underline keeps its fade; the hover's ink change still fades [D205].
|
|
262
|
+
*/
|
|
263
|
+
.action:not([data-disabled], [aria-busy='true']):active,
|
|
264
|
+
.action[data-released] {
|
|
265
|
+
transition-property: text-decoration-color;
|
|
266
|
+
}
|
|
267
|
+
|
|
257
268
|
.action:not([data-disabled], [aria-busy='true']):active {
|
|
258
269
|
background-color: var(--primary12);
|
|
259
270
|
color: var(--role-inverse);
|
|
@@ -261,8 +272,8 @@
|
|
|
261
272
|
|
|
262
273
|
/* Focus: the ring inside the cell. */
|
|
263
274
|
.action:focus-visible {
|
|
264
|
-
outline: var(--
|
|
265
|
-
outline-offset: calc(-2 * var(--
|
|
275
|
+
outline: var(--fgd-focus-width) solid var(--primary12);
|
|
276
|
+
outline-offset: calc(-2 * var(--fgd-focus-width));
|
|
266
277
|
}
|
|
267
278
|
|
|
268
279
|
/* Busy: rest roles kept, width held, "Undoing…" [D84]. */
|
|
@@ -56,6 +56,17 @@ export type AutocompleteProps = RootProps & {
|
|
|
56
56
|
primary?: AutocompleteVariants['primary'];
|
|
57
57
|
/** Secondary Radix scale. Unused at rest; the danger scale while invalid. */
|
|
58
58
|
secondary?: AutocompleteVariants['secondary'];
|
|
59
|
+
/**
|
|
60
|
+
* The outline morph: the box's focus ring grows into the popup's frame as
|
|
61
|
+
* it opens and shrinks back onto the ring as it closes. Opens you ask for
|
|
62
|
+
* (the chevron with `showTrigger`, the arrow keys) and the first open
|
|
63
|
+
* after focus arrives morph; later opens and closes caused by typing are
|
|
64
|
+
* instant.
|
|
65
|
+
* Instant under reduced motion; off in forced colors and print, and
|
|
66
|
+
* wherever `--fgd-outline-morph: none` applies. Default `true`; `false`
|
|
67
|
+
* opens and closes the popup at once.
|
|
68
|
+
*/
|
|
69
|
+
morph?: boolean;
|
|
59
70
|
};
|
|
60
71
|
/**
|
|
61
72
|
* A Base UI Autocomplete inside a `Field`. The input keeps any text: a
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Autocomplete.d.ts","sourceRoot":"","sources":["../../src/forms/autocomplete/Autocomplete.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,YAAY,IAAI,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAC9E,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAIjE,OAAO,EAAkB,KAAK,QAAQ,EAAE,MAAM,wBAAwB,CAAA;
|
|
1
|
+
{"version":3,"file":"Autocomplete.d.ts","sourceRoot":"","sources":["../../src/forms/autocomplete/Autocomplete.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,YAAY,IAAI,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAC9E,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAIjE,OAAO,EAAkB,KAAK,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AA6CtE,eAAO,MAAM,YAAY;;;;8EAYvB,CAAA;AAEF,KAAK,oBAAoB,GAAG,YAAY,CAAC,OAAO,YAAY,CAAC,CAAA;AAE7D,iFAAiF;AACjF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,wCAAwC;IACxC,KAAK,EAAE,MAAM,CAAA;IACb,qDAAqD;IACrD,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,CAAA;AAED,qCAAqC;AACrC,MAAM,MAAM,uBAAuB,GAAG;IACpC,6CAA6C;IAC7C,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,SAAS,kBAAkB,EAAE,CAAA;CACrC,CAAA;AAED,KAAK,iBAAiB,GAAG,SAAS,kBAAkB,EAAE,GAAG,SAAS,uBAAuB,EAAE,CAAA;AAM3F,KAAK,SAAS,GAAG,IAAI,CACnB,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,EAC/C,OAAO,GAAG,UAAU,GAAG,mBAAmB,CAC3C,CAAA;AAED,yGAAyG;AACzG,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG;IAC1C,4FAA4F;IAC5F,KAAK,CAAC,EAAE,iBAAiB,CAAA;IACzB,+DAA+D;IAC/D,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,iEAAiE;IACjE,IAAI,CAAC,EAAE,QAAQ,CAAA;IACf,mEAAmE;IACnE,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,mFAAmF;IACnF,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,KAAK,CAAC,SAAS,CAAA;IAC9C,mEAAmE;IACnE,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,qDAAqD;IACrD,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC7B,gFAAgF;IAChF,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACvB,sDAAsD;IACtD,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,iEAAiE;IACjE,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,2EAA2E;IAC3E,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,6DAA6D;IAC7D,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,mFAAmF;IACnF,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,sFAAsF;IACtF,OAAO,CAAC,EAAE,oBAAoB,CAAC,SAAS,CAAC,CAAA;IACzC,6EAA6E;IAC7E,SAAS,CAAC,EAAE,oBAAoB,CAAC,WAAW,CAAC,CAAA;IAC7C;;;;;;;;;OASG;IACH,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB,CAAA;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,iBAAiB,qBA+KpD"}
|
|
@@ -5,6 +5,8 @@ import { cva } from 'class-variance-authority';
|
|
|
5
5
|
import { dangerScale, useFieldInvalid } from '../field';
|
|
6
6
|
import { Ground } from '../../foundations/ground';
|
|
7
7
|
import { Icon, iconHost } from '../../foundations/icon';
|
|
8
|
+
import { OutlineMorphFrame } from '../../foundations/outline-morph';
|
|
9
|
+
import { useOutlineMorphRoot, useTypingMorphPolicy, } from '../../foundations/outline-morph/useOutlineMorphRoot';
|
|
8
10
|
import { highlightMatch } from '../../utils/highlightMatch';
|
|
9
11
|
import { StatusGlyph } from '../../utils/StatusGlyph';
|
|
10
12
|
import { OverlayScope, overlayAttributes, overlayScaleClassName } from '../../utils/overlay';
|
|
@@ -27,13 +29,21 @@ import styles from './autocomplete.module.css';
|
|
|
27
29
|
* `data-popup-open` → edge --primary12, chevron rotated. Item
|
|
28
30
|
* `data-highlighted` → --primary4 plus the start bar [D145];
|
|
29
31
|
* `data-disabled` → --role-muted. No ✓: nothing stays selected. Popup
|
|
30
|
-
*
|
|
32
|
+
* the outline morph or nothing: it opens and closes at once [D205].
|
|
31
33
|
* - Parts: base (the box), input, icon, clear, trigger, popup, list, item,
|
|
32
34
|
* group, groupLabel, empty, status; plus match.
|
|
33
35
|
* - Scope: `popup` renders in its Base UI Portal and declares a nested
|
|
34
36
|
* `white` page scope, writes no `data-theme`, and takes the [D92] frame
|
|
35
37
|
* [D139, D156]. `plate` → the box is a nested `white` Ground.
|
|
36
38
|
* - Container: none; inherits its context.
|
|
39
|
+
* - Outline morph [D204]: on by default (`morph={false}` opts out). The
|
|
40
|
+
* box's ring (drawn on any focus) grows into the popup's frame and back
|
|
41
|
+
* onto it (foundations/outline-morph, ring `focus-within`); the frame
|
|
42
|
+
* renders beside the popup in its Positioner, and the popup answers
|
|
43
|
+
* `data-outline-morph`. Typing policy: explicit opens and the first open
|
|
44
|
+
* of a focus session morph; later opens and closes caused by typing are
|
|
45
|
+
* instant, as every open without the morph is [D205]. Filtering
|
|
46
|
+
* resizes the open popup its own way. No box style changes.
|
|
37
47
|
*/
|
|
38
48
|
export const autocomplete = cva(styles.base, {
|
|
39
49
|
variants: {
|
|
@@ -57,10 +67,20 @@ function isGroups(items) {
|
|
|
57
67
|
* highlighted until the arrow keys move.
|
|
58
68
|
*/
|
|
59
69
|
export function Autocomplete(props) {
|
|
60
|
-
const { items, value, defaultValue, onValueChange, placeholder, icon, showTrigger = false, emptyText = (query) => `No matches for '${query}'`, loading = false, loadingText = 'Searching…', error, clearLabel = 'Clear', triggerLabel = 'Show suggestions', 'aria-label': ariaLabel, className, plate, primary, secondary, ...rootProps } = props;
|
|
70
|
+
const { items, value, defaultValue, onValueChange, placeholder, icon, showTrigger = false, emptyText = (query) => `No matches for '${query}'`, loading = false, loadingText = 'Searching…', error, clearLabel = 'Clear', triggerLabel = 'Show suggestions', 'aria-label': ariaLabel, className, plate, primary, secondary, morph = true, onOpenChange, ...rootProps } = props;
|
|
61
71
|
const scope = useScopeAttributes();
|
|
62
72
|
const invalid = useFieldInvalid();
|
|
63
73
|
const resolvedSecondary = invalid ? dangerScale : secondary;
|
|
74
|
+
// The outline morph follows the root's open state, with the typing policy [D204].
|
|
75
|
+
const typing = useTypingMorphPolicy();
|
|
76
|
+
const outline = useOutlineMorphRoot({
|
|
77
|
+
open: rootProps.open,
|
|
78
|
+
defaultOpen: rootProps.defaultOpen,
|
|
79
|
+
onOpenChange,
|
|
80
|
+
morph,
|
|
81
|
+
ring: 'focus-within',
|
|
82
|
+
instant: typing.instant,
|
|
83
|
+
});
|
|
64
84
|
// The typed text, for match marking.
|
|
65
85
|
const [innerQuery, setInnerQuery] = React.useState(String(defaultValue ?? ''));
|
|
66
86
|
const query = value !== undefined ? String(value) : innerQuery;
|
|
@@ -85,13 +105,13 @@ export function Autocomplete(props) {
|
|
|
85
105
|
React.createElement(Icon, { name: "expand_more", weight: "interactive", className: styles.chevron }))) : null));
|
|
86
106
|
const renderOption = (option) => (React.createElement(BaseAutocomplete.Item, { key: option.value, value: option, disabled: option.disabled, className: styles.item },
|
|
87
107
|
React.createElement("span", { className: styles.itemText }, highlightMatch(option.label ?? option.value, query, styles.match))));
|
|
88
|
-
return (React.createElement(BaseAutocomplete.Root, { ...rootProps,
|
|
108
|
+
return (React.createElement(BaseAutocomplete.Root, { ...rootProps, onOpenChange: outline.onOpenChange,
|
|
89
109
|
// Groups are accepted at runtime; the flat overload types the value.
|
|
90
110
|
items: items, value: value, defaultValue: defaultValue, onValueChange: handleValueChange, itemToStringValue: (option) => option.value },
|
|
91
|
-
plate ? (React.createElement(BaseAutocomplete.InputGroup, { className: boxClassName, render: React.createElement(Ground, { preset: "white", kind: "face", primary: primary ?? undefined, secondary: resolvedSecondary ?? undefined, render: React.createElement("div", null) }) }, boxChildren)) : (React.createElement(BaseAutocomplete.InputGroup, { ...scope, className: boxClassName }, boxChildren)),
|
|
111
|
+
plate ? (React.createElement(BaseAutocomplete.InputGroup, { ref: outline.refs?.sourceRef, onFocus: typing.onFocus, className: boxClassName, render: React.createElement(Ground, { preset: "white", kind: "face", primary: primary ?? undefined, secondary: resolvedSecondary ?? undefined, render: React.createElement("div", null) }) }, boxChildren)) : (React.createElement(BaseAutocomplete.InputGroup, { ...scope, ref: outline.refs?.sourceRef, onFocus: typing.onFocus, className: boxClassName }, boxChildren)),
|
|
92
112
|
React.createElement(BaseAutocomplete.Portal, null,
|
|
93
113
|
React.createElement(BaseAutocomplete.Positioner, { className: styles.positioner, sideOffset: 8, align: "start", collisionPadding: 16 },
|
|
94
|
-
React.createElement(BaseAutocomplete.Popup, { ...overlayAttributes, className: [styles.popup, overlayScaleClassName].join(' ') },
|
|
114
|
+
React.createElement(BaseAutocomplete.Popup, { ref: outline.refs?.targetRef, ...overlayAttributes, className: [styles.popup, overlayScaleClassName].join(' ') },
|
|
95
115
|
React.createElement(OverlayScope, null,
|
|
96
116
|
React.createElement(AutocompleteStatusRow, { loading: loading, loadingText: loadingText, error: error }),
|
|
97
117
|
React.createElement(BaseAutocomplete.Empty, { className: styles.empty }, loading || error ? null : emptyText(query)),
|
|
@@ -101,7 +121,8 @@ export function Autocomplete(props) {
|
|
|
101
121
|
React.createElement(BaseAutocomplete.Group, { items: group.items, className: styles.group },
|
|
102
122
|
React.createElement(BaseAutocomplete.GroupLabel, { className: styles.groupLabel }, group.label),
|
|
103
123
|
React.createElement(BaseAutocomplete.Collection, null, (option) => renderOption(option))))))
|
|
104
|
-
: (option) => renderOption(option))))
|
|
124
|
+
: (option) => renderOption(option)))),
|
|
125
|
+
outline.refs ? React.createElement(OutlineMorphFrame, { ref: outline.refs.frameRef }) : null))));
|
|
105
126
|
}
|
|
106
127
|
/**
|
|
107
128
|
* The loading row ("Searching…", busy wording [D84]) and the fetch-failure
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Autocomplete.js","sourceRoot":"","sources":["../../src/forms/autocomplete/Autocomplete.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,YAAY,IAAI,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAC9E,OAAO,EAAE,GAAG,EAAqB,MAAM,0BAA0B,CAAA;AAEjE,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAA;AACjD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAiB,MAAM,wBAAwB,CAAA;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAA;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AACrD,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAC5F,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AACjF,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AACtD,OAAO,MAAM,MAAM,2BAA2B,CAAA;AAE9C
|
|
1
|
+
{"version":3,"file":"Autocomplete.js","sourceRoot":"","sources":["../../src/forms/autocomplete/Autocomplete.tsx"],"names":[],"mappings":"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"}
|