@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
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
* Parts: base (the bar and its rule), trigger. The popups are Menu popups
|
|
4
4
|
* (menu.module.css): portaled `white` scopes that never change with the bar.
|
|
5
5
|
*
|
|
6
|
-
* A --
|
|
6
|
+
* A --fgd-size-hit bar with a --border-size-1 --role-rule on its content
|
|
7
7
|
* side; `type-button-sm` triggers, authored in title case with no tracking
|
|
8
8
|
* [D160, D165], at --size-px-5 inline padding. The open trigger takes the
|
|
9
|
-
* --
|
|
9
|
+
* --border-size-2-25 bar in --primary12, never a fill alone. Colors are role
|
|
10
10
|
* variables only; local custom properties carry dimensions only.
|
|
11
11
|
*/
|
|
12
12
|
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
.base {
|
|
22
22
|
display: flex;
|
|
23
23
|
align-items: stretch;
|
|
24
|
-
min-block-size: var(--
|
|
24
|
+
min-block-size: var(--fgd-size-hit);
|
|
25
25
|
border-block-end: var(--border-size-1) solid var(--role-rule);
|
|
26
26
|
color: var(--primary12);
|
|
27
27
|
}
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
position: relative;
|
|
31
31
|
display: inline-flex;
|
|
32
32
|
align-items: center;
|
|
33
|
-
min-block-size: var(--
|
|
33
|
+
min-block-size: var(--fgd-size-hit);
|
|
34
34
|
margin: 0;
|
|
35
35
|
padding-block: 0;
|
|
36
36
|
padding-inline: var(--size-px-5);
|
|
@@ -38,16 +38,16 @@
|
|
|
38
38
|
background: none;
|
|
39
39
|
color: var(--primary12);
|
|
40
40
|
white-space: nowrap;
|
|
41
|
-
text-decoration-thickness: var(--
|
|
41
|
+
text-decoration-thickness: var(--border-size-1-5);
|
|
42
42
|
text-underline-offset: 0.15em;
|
|
43
43
|
appearance: none;
|
|
44
44
|
}
|
|
45
45
|
|
|
46
|
-
/* Hover transition [D181]: --
|
|
46
|
+
/* Hover transition [D181]: --fgd-duration-quick, --ease-out-3; instant under --motionNotOK. */
|
|
47
47
|
@media (prefers-reduced-motion: no-preference) {
|
|
48
48
|
.trigger {
|
|
49
49
|
transition-property: color, text-decoration-color;
|
|
50
|
-
transition-duration: var(--
|
|
50
|
+
transition-duration: var(--fgd-duration-quick);
|
|
51
51
|
transition-timing-function: var(--ease-out-3);
|
|
52
52
|
}
|
|
53
53
|
}
|
|
@@ -59,7 +59,7 @@
|
|
|
59
59
|
inset-inline: 0;
|
|
60
60
|
inset-block-end: calc(-1 * var(--border-size-1));
|
|
61
61
|
display: none;
|
|
62
|
-
border-block-end: var(--
|
|
62
|
+
border-block-end: var(--border-size-2-25) solid var(--primary12);
|
|
63
63
|
}
|
|
64
64
|
}
|
|
65
65
|
|
|
@@ -76,18 +76,18 @@
|
|
|
76
76
|
inset-block: 0;
|
|
77
77
|
inset-inline: auto calc(-1 * var(--border-size-1));
|
|
78
78
|
border-block-end-width: 0;
|
|
79
|
-
border-inline-end: var(--
|
|
79
|
+
border-inline-end: var(--border-size-2-25) solid var(--primary12);
|
|
80
80
|
}
|
|
81
81
|
|
|
82
82
|
/*
|
|
83
83
|
* Hover (not disabled): the §9.2 `text` Button hover [D181]. The label
|
|
84
84
|
* takes --role-link-hover, underlined in --role-accent only where that
|
|
85
|
-
* ink is --primary12 (--
|
|
85
|
+
* ink is --primary12 (--fgd-link-hover-line); forced colors add the
|
|
86
86
|
* underline. The open bar, not the hover, marks an open menu.
|
|
87
87
|
*/
|
|
88
88
|
.trigger:not([data-disabled]):hover {
|
|
89
89
|
color: var(--role-link-hover);
|
|
90
|
-
text-decoration-line: var(--
|
|
90
|
+
text-decoration-line: var(--fgd-link-hover-line);
|
|
91
91
|
text-decoration-color: var(--role-accent);
|
|
92
92
|
}
|
|
93
93
|
|
|
@@ -104,8 +104,8 @@
|
|
|
104
104
|
/* Focus: the 2 px --primary12 ring at a 2 px offset, drawn above its neighbours. */
|
|
105
105
|
.trigger:focus-visible {
|
|
106
106
|
z-index: 1;
|
|
107
|
-
outline: var(--
|
|
108
|
-
outline-offset: var(--
|
|
107
|
+
outline: var(--fgd-focus-width) solid var(--primary12);
|
|
108
|
+
outline-offset: var(--fgd-focus-offset);
|
|
109
109
|
}
|
|
110
110
|
|
|
111
111
|
.trigger[data-disabled] {
|
|
@@ -10,9 +10,22 @@ export declare const popover: (props?: ({
|
|
|
10
10
|
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
11
11
|
type PopoverVariants = VariantProps<typeof popover>;
|
|
12
12
|
export type PopoverKind = NonNullable<PopoverVariants['kind']>;
|
|
13
|
-
/** Props for Popover: Base UI Popover.Root props (`open`, `onOpenChange`, `modal` …). */
|
|
14
|
-
export type PopoverProps<Payload = unknown> = BasePopover.Root.Props<Payload
|
|
15
|
-
/**
|
|
13
|
+
/** Props for Popover: Base UI Popover.Root props (`open`, `onOpenChange`, `modal` …) plus the outline morph. */
|
|
14
|
+
export type PopoverProps<Payload = unknown> = BasePopover.Root.Props<Payload> & {
|
|
15
|
+
/**
|
|
16
|
+
* The outline morph: the trigger's focus ring (or, opened by pointer, its
|
|
17
|
+
* edge) grows into the panel's frame as it opens and shrinks back as it
|
|
18
|
+
* closes; a tail (PopoverArrow) grows out of the frame's edge as it lands.
|
|
19
|
+
* A hover open is instant. Instant under reduced motion; off in forced colors and
|
|
20
|
+
* print, and wherever `--fgd-outline-morph: none` applies. Default
|
|
21
|
+
* `true`; `false` opens and closes the panel at once.
|
|
22
|
+
*/
|
|
23
|
+
morph?: boolean;
|
|
24
|
+
};
|
|
25
|
+
/**
|
|
26
|
+
* Groups the parts of a popover (Base UI Popover.Root) and wires its
|
|
27
|
+
* outline morph. Esc or an outside press closes it.
|
|
28
|
+
*/
|
|
16
29
|
export declare function Popover<Payload = unknown>(props: PopoverProps<Payload>): React.JSX.Element;
|
|
17
30
|
/** Props for PopoverTrigger: Button props plus Base UI's trigger options. */
|
|
18
31
|
export type PopoverTriggerProps = ButtonProps & {
|
|
@@ -52,17 +65,18 @@ export type PopoverPopupProps = BasePopover.Popup.Props & {
|
|
|
52
65
|
};
|
|
53
66
|
/**
|
|
54
67
|
* The anchored panel, rendered in its Base UI Portal as a nested `white`
|
|
55
|
-
* scope: --primary1 face, --border-size-2 --primary12 frame, --
|
|
68
|
+
* scope: --primary1 face, --border-size-2 --primary12 frame, --radius-2-25,
|
|
56
69
|
* 240–360 px wide from --md-n-above and the viewport less its margins
|
|
57
|
-
* below. It opens
|
|
70
|
+
* below. It opens from its trigger by the outline morph, or at once.
|
|
58
71
|
* Render `PopoverArrow` inside it for the tail.
|
|
59
72
|
*/
|
|
60
73
|
export declare function PopoverPopup(props: PopoverPopupProps): React.JSX.Element;
|
|
61
74
|
/** Props for PopoverArrow: Base UI Popover.Arrow props. */
|
|
62
75
|
export type PopoverArrowProps = BasePopover.Arrow.Props;
|
|
63
76
|
/**
|
|
64
|
-
* The tail: a --
|
|
65
|
-
* --border-size-2 --primary12 edge continuing the panel's frame.
|
|
77
|
+
* The tail: a --size-px-2-5 × 6 px triangle filled with the face, its
|
|
78
|
+
* --border-size-2 --primary12 edge continuing the panel's frame. With the
|
|
79
|
+
* outline morph it grows out of the frame's edge as the panel lands.
|
|
66
80
|
*/
|
|
67
81
|
export declare function PopoverArrow(props: PopoverArrowProps): React.JSX.Element;
|
|
68
82
|
/** Props for PopoverTitle: Base UI Popover.Title props. */
|
|
@@ -88,7 +102,7 @@ export type PopoverCloseProps = BasePopover.Close.Props & {
|
|
|
88
102
|
};
|
|
89
103
|
/**
|
|
90
104
|
* The optional close X, top end: an icon-only Button with the inline-tier
|
|
91
|
-
* `close` glyph and a --
|
|
105
|
+
* `close` glyph and a --fgd-size-hit target (§9.2). Pass `render` to close
|
|
92
106
|
* from another control instead; `label` is then ignored.
|
|
93
107
|
*/
|
|
94
108
|
export declare function PopoverClose(props: PopoverCloseProps): React.JSX.Element;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Popover.d.ts","sourceRoot":"","sources":["../../src/overlays/popover/Popover.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,wBAAwB,CAAA;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AAErD,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAEjE,OAAO,EAAU,KAAK,WAAW,EAAE,MAAM,sBAAsB,CAAA;
|
|
1
|
+
{"version":3,"file":"Popover.d.ts","sourceRoot":"","sources":["../../src/overlays/popover/Popover.tsx"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,9 @@ import { useRender } from '@base-ui/react/use-render';
|
|
|
5
5
|
import { mergeProps } from '@base-ui/react/merge-props';
|
|
6
6
|
import { cva } from 'class-variance-authority';
|
|
7
7
|
import { Button } from '../../actions/button';
|
|
8
|
+
import { OutlineMorphFrame, OutlineMorphTail, } from '../../foundations/outline-morph';
|
|
9
|
+
import { HOVER_REASONS, useOutlineMorphRoot, } from '../../foundations/outline-morph/useOutlineMorphRoot';
|
|
10
|
+
import { useMergedRef } from '../../utils/assignRef';
|
|
8
11
|
import { primaryScaleVariants, secondaryScaleVariants } from '../../utils/scales';
|
|
9
12
|
import { cx, resolveClassName } from '../../utils/className';
|
|
10
13
|
import { OVERLAY_COLLISION_PADDING, OVERLAY_SIDE_OFFSET, OverlayScope, OverlayTail, overlayActionClassName, overlayAttributes, overlayScales, } from '../../utils/overlay';
|
|
@@ -20,9 +23,8 @@ import styles from './popover.module.css';
|
|
|
20
23
|
* - Compound variants: none. Defaults: `kind: panel`; color axes: none.
|
|
21
24
|
* - Color fallback: the popup takes the `white` preset's defaults; props
|
|
22
25
|
* apply inside it, and `secondary` drives only content accents.
|
|
23
|
-
* - States:
|
|
24
|
-
*
|
|
25
|
-
* data-instant [D91]; Arrow data-side → which edge the tail sits on;
|
|
26
|
+
* - States: the popup opens and closes by the outline morph or at once, no
|
|
27
|
+
* reveal of its own [D205]; Arrow data-side → which edge the tail sits on;
|
|
26
28
|
* Close is an icon-only Button (§9.2 states). The trigger's
|
|
27
29
|
* data-popup-open belongs to the trigger's own module (Button).
|
|
28
30
|
* - Parts: positioner (the layer), base (the popup), arrow (the tail;
|
|
@@ -32,6 +34,15 @@ import styles from './popover.module.css';
|
|
|
32
34
|
* scope (`page` scheme, no data-theme) with the --border-size-2
|
|
33
35
|
* --primary12 frame [D92, D139, D156].
|
|
34
36
|
* - Container: none; inherits its context.
|
|
37
|
+
* - Outline morph [D204]: on by default (`morph={false}` on Popover opts
|
|
38
|
+
* out). The trigger's ring (keyboard) or edge (pointer) grows into the
|
|
39
|
+
* panel's frame and back (foundations/outline-morph); PopoverTrigger
|
|
40
|
+
* takes the source ref, the popup answers `data-outline-morph` and the
|
|
41
|
+
* frame renders beside it. With a PopoverArrow, the tail rides the morph:
|
|
42
|
+
* PopoverArrow is the tail source, and the tail cap (OutlineMorphTail,
|
|
43
|
+
* `tailCap`) grows out of the frame's trigger-facing edge as it lands and
|
|
44
|
+
* retracts into it on close, while the popup's own tail is held hidden.
|
|
45
|
+
* Hover opens (`openOnHover`) are instant.
|
|
35
46
|
*/
|
|
36
47
|
export const popover = cva(styles.base, {
|
|
37
48
|
variants: {
|
|
@@ -48,9 +59,23 @@ export const popover = cva(styles.base, {
|
|
|
48
59
|
},
|
|
49
60
|
});
|
|
50
61
|
const KindContext = React.createContext('panel');
|
|
51
|
-
/**
|
|
62
|
+
/** The popover's outline morph refs, or `null` with `morph={false}` [D204]. */
|
|
63
|
+
const MorphContext = React.createContext(null);
|
|
64
|
+
/**
|
|
65
|
+
* Groups the parts of a popover (Base UI Popover.Root) and wires its
|
|
66
|
+
* outline morph. Esc or an outside press closes it.
|
|
67
|
+
*/
|
|
52
68
|
export function Popover(props) {
|
|
53
|
-
|
|
69
|
+
const { morph = true, onOpenChange, ...rootProps } = props;
|
|
70
|
+
const outline = useOutlineMorphRoot({
|
|
71
|
+
open: rootProps.open,
|
|
72
|
+
defaultOpen: rootProps.defaultOpen,
|
|
73
|
+
onOpenChange,
|
|
74
|
+
morph,
|
|
75
|
+
instant: (_open, details) => details.reason != null && HOVER_REASONS.has(details.reason),
|
|
76
|
+
});
|
|
77
|
+
return (React.createElement(MorphContext.Provider, { value: outline.refs },
|
|
78
|
+
React.createElement(BasePopover.Root, { ...rootProps, onOpenChange: outline.onOpenChange })));
|
|
54
79
|
}
|
|
55
80
|
/**
|
|
56
81
|
* Opens the popover on press, never on hover (§10.15). Renders a Button
|
|
@@ -58,36 +83,46 @@ export function Popover(props) {
|
|
|
58
83
|
*/
|
|
59
84
|
export function PopoverTrigger(props) {
|
|
60
85
|
const { handle, payload, ...buttonProps } = props;
|
|
61
|
-
|
|
86
|
+
const morph = React.useContext(MorphContext);
|
|
87
|
+
return (React.createElement(BasePopover.Trigger, { ref: morph?.sourceRef, handle: handle, payload: payload, render: React.createElement(Button, { ...buttonProps }) }));
|
|
62
88
|
}
|
|
63
89
|
/**
|
|
64
90
|
* The anchored panel, rendered in its Base UI Portal as a nested `white`
|
|
65
|
-
* scope: --primary1 face, --border-size-2 --primary12 frame, --
|
|
91
|
+
* scope: --primary1 face, --border-size-2 --primary12 frame, --radius-2-25,
|
|
66
92
|
* 240–360 px wide from --md-n-above and the viewport less its margins
|
|
67
|
-
* below. It opens
|
|
93
|
+
* below. It opens from its trigger by the outline morph, or at once.
|
|
68
94
|
* Render `PopoverArrow` inside it for the tail.
|
|
69
95
|
*/
|
|
70
96
|
export function PopoverPopup(props) {
|
|
71
|
-
const { kind, primary, secondary, side, align = 'start', sideOffset = OVERLAY_SIDE_OFFSET, alignOffset, collisionPadding = OVERLAY_COLLISION_PADDING, container, keepMounted, className, children, ...rest } = props;
|
|
97
|
+
const { kind, primary, secondary, side, align = 'start', sideOffset = OVERLAY_SIDE_OFFSET, alignOffset, collisionPadding = OVERLAY_COLLISION_PADDING, container, keepMounted, className, children, ref, ...rest } = props;
|
|
72
98
|
const scales = overlayScales(primary, secondary);
|
|
99
|
+
const morph = React.useContext(MorphContext);
|
|
100
|
+
const popupRef = useMergedRef(ref, morph?.targetRef);
|
|
73
101
|
return (React.createElement(BasePopover.Portal, { container: container, keepMounted: keepMounted },
|
|
74
102
|
React.createElement(BasePopover.Positioner, { className: styles.positioner, side: side, align: align, sideOffset: sideOffset, alignOffset: alignOffset, collisionPadding: collisionPadding },
|
|
75
|
-
React.createElement(BasePopover.Popup, { ...rest, ...overlayAttributes, className: resolveClassName(className, (extra) => popover({
|
|
103
|
+
React.createElement(BasePopover.Popup, { ...rest, ref: popupRef, ...overlayAttributes, className: resolveClassName(className, (extra) => popover({
|
|
76
104
|
kind,
|
|
77
105
|
primary: scales.primary,
|
|
78
106
|
secondary: scales.secondary,
|
|
79
107
|
className: cx(overlayActionClassName, extra),
|
|
80
108
|
})) },
|
|
81
109
|
React.createElement(KindContext.Provider, { value: kind ?? 'panel' },
|
|
82
|
-
React.createElement(OverlayScope, null, children)))
|
|
110
|
+
React.createElement(OverlayScope, null, children))),
|
|
111
|
+
morph ? React.createElement(OutlineMorphFrame, { ref: morph.frameRef }) : null,
|
|
112
|
+
morph ? (React.createElement(OutlineMorphTail, { ref: morph.tailRef, className: styles.tailCap },
|
|
113
|
+
React.createElement(OverlayTail, { className: styles.tail }))) : null)));
|
|
83
114
|
}
|
|
84
115
|
/**
|
|
85
|
-
* The tail: a --
|
|
86
|
-
* --border-size-2 --primary12 edge continuing the panel's frame.
|
|
116
|
+
* The tail: a --size-px-2-5 × 6 px triangle filled with the face, its
|
|
117
|
+
* --border-size-2 --primary12 edge continuing the panel's frame. With the
|
|
118
|
+
* outline morph it grows out of the frame's edge as the panel lands.
|
|
87
119
|
*/
|
|
88
120
|
export function PopoverArrow(props) {
|
|
89
|
-
const { className, ...rest } = props;
|
|
90
|
-
|
|
121
|
+
const { className, ref, ...rest } = props;
|
|
122
|
+
// The tail source of the outline morph's tail cap [D204].
|
|
123
|
+
const morph = React.useContext(MorphContext);
|
|
124
|
+
const arrowRef = useMergedRef(ref, morph?.tailSourceRef);
|
|
125
|
+
return (React.createElement(BasePopover.Arrow, { ...rest, ref: arrowRef, className: resolveClassName(className, (extra) => cx(styles.arrow, extra)) },
|
|
91
126
|
React.createElement(OverlayTail, { className: styles.tail })));
|
|
92
127
|
}
|
|
93
128
|
/**
|
|
@@ -118,7 +153,7 @@ export function PopoverSource(props) {
|
|
|
118
153
|
}
|
|
119
154
|
/**
|
|
120
155
|
* The optional close X, top end: an icon-only Button with the inline-tier
|
|
121
|
-
* `close` glyph and a --
|
|
156
|
+
* `close` glyph and a --fgd-size-hit target (§9.2). Pass `render` to close
|
|
122
157
|
* from another control instead; `label` is then ignored.
|
|
123
158
|
*/
|
|
124
159
|
export function PopoverClose(props) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Popover.js","sourceRoot":"","sources":["../../src/overlays/popover/Popover.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,wBAAwB,CAAA;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAA;AACvD,OAAO,EAAE,GAAG,EAAqB,MAAM,0BAA0B,CAAA;AAEjE,OAAO,EAAE,MAAM,EAAoB,MAAM,sBAAsB,CAAA;AAC/D,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AACjF,OAAO,EAAE,EAAE,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,EACL,yBAAyB,EACzB,mBAAmB,EACnB,YAAY,EACZ,WAAW,EACX,sBAAsB,EACtB,iBAAiB,EACjB,aAAa,GACd,MAAM,qBAAqB,CAAA;AAC5B,OAAO,MAAM,MAAM,sBAAsB,CAAA;AAEzC
|
|
1
|
+
{"version":3,"file":"Popover.js","sourceRoot":"","sources":["../../src/overlays/popover/Popover.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,wBAAwB,CAAA;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAA;AACvD,OAAO,EAAE,GAAG,EAAqB,MAAM,0BAA0B,CAAA;AAEjE,OAAO,EAAE,MAAM,EAAoB,MAAM,sBAAsB,CAAA;AAC/D,OAAO,EACL,iBAAiB,EACjB,gBAAgB,GAEjB,MAAM,iCAAiC,CAAA;AACxC,OAAO,EACL,aAAa,EACb,mBAAmB,GACpB,MAAM,qDAAqD,CAAA;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AACpD,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AACjF,OAAO,EAAE,EAAE,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,EACL,yBAAyB,EACzB,mBAAmB,EACnB,YAAY,EACZ,WAAW,EACX,sBAAsB,EACtB,iBAAiB,EACjB,aAAa,GACd,MAAM,qBAAqB,CAAA;AAC5B,OAAO,MAAM,MAAM,sBAAsB,CAAA;AAEzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE;IACtC,QAAQ,EAAE;QACR,IAAI,EAAE;YACJ,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,UAAU,EAAE,MAAM,CAAC,UAAU;SAC9B;QACD,2FAA2F;QAC3F,OAAO,EAAE,oBAAoB;QAC7B,SAAS,EAAE,sBAAsB;KAClC;IACD,eAAe,EAAE;QACf,IAAI,EAAE,OAAO;KACd;CACF,CAAC,CAAA;AAKF,MAAM,WAAW,GAAG,KAAK,CAAC,aAAa,CAAc,OAAO,CAAC,CAAA;AAE7D,+EAA+E;AAC/E,MAAM,YAAY,GAAG,KAAK,CAAC,aAAa,CAA0B,IAAI,CAAC,CAAA;AAevE;;;GAGG;AACH,MAAM,UAAU,OAAO,CAAoB,KAA4B;IACrE,MAAM,EAAE,KAAK,GAAG,IAAI,EAAE,YAAY,EAAE,GAAG,SAAS,EAAE,GAAG,KAAK,CAAA;IAC1D,MAAM,OAAO,GAAG,mBAAmB,CAAC;QAClC,IAAI,EAAE,SAAS,CAAC,IAAI;QACpB,WAAW,EAAE,SAAS,CAAC,WAAW;QAClC,YAAY;QACZ,KAAK;QACL,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,IAAI,IAAI,IAAI,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC;KACzF,CAAC,CAAA;IACF,OAAO,CACL,oBAAC,YAAY,CAAC,QAAQ,IAAC,KAAK,EAAE,OAAO,CAAC,IAAI;QACxC,oBAAC,WAAW,CAAC,IAAI,OAAc,SAAS,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY,GAAI,CAC1D,CACzB,CAAA;AACH,CAAC;AAUD;;;GAGG;AACH,MAAM,UAAU,cAAc,CAAC,KAA0B;IACvD,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,WAAW,EAAE,GAAG,KAAK,CAAA;IACjD,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,CAAA;IAC5C,OAAO,CACL,oBAAC,WAAW,CAAC,OAAO,IAClB,GAAG,EAAE,KAAK,EAAE,SAAS,EACrB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,oBAAC,MAAM,OAAM,WAA2B,GAAI,GACpD,CACH,CAAA;AACH,CAAC;AA4BD;;;;;;GAMG;AACH,MAAM,UAAU,YAAY,CAAC,KAAwB;IACnD,MAAM,EACJ,IAAI,EACJ,OAAO,EACP,SAAS,EACT,IAAI,EACJ,KAAK,GAAG,OAAO,EACf,UAAU,GAAG,mBAAmB,EAChC,WAAW,EACX,gBAAgB,GAAG,yBAAyB,EAC5C,SAAS,EACT,WAAW,EACX,SAAS,EACT,QAAQ,EACR,GAAG,EACH,GAAG,IAAI,EACR,GAAG,KAAK,CAAA;IAET,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;IAChD,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,CAAA;IAC5C,MAAM,QAAQ,GAAG,YAAY,CAAiB,GAAG,EAAE,KAAK,EAAE,SAAS,CAAC,CAAA;IAEpE,OAAO,CACL,oBAAC,WAAW,CAAC,MAAM,IAAC,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW;QAChE,oBAAC,WAAW,CAAC,UAAU,IACrB,SAAS,EAAE,MAAM,CAAC,UAAU,EAC5B,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,EACZ,UAAU,EAAE,UAAU,EACtB,WAAW,EAAE,WAAW,EACxB,gBAAgB,EAAE,gBAAgB;YAElC,oBAAC,WAAW,CAAC,KAAK,OACZ,IAAI,EACR,GAAG,EAAE,QAAQ,KACT,iBAAiB,EACrB,SAAS,EAAE,gBAAgB,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE,CAC/C,OAAO,CAAC;oBACN,IAAI;oBACJ,OAAO,EAAE,MAAM,CAAC,OAAO;oBACvB,SAAS,EAAE,MAAM,CAAC,SAAS;oBAC3B,SAAS,EAAE,EAAE,CAAC,sBAAsB,EAAE,KAAK,CAAC;iBAC7C,CAAC,CACH;gBAED,oBAAC,WAAW,CAAC,QAAQ,IAAC,KAAK,EAAE,IAAI,IAAI,OAAO;oBAC1C,oBAAC,YAAY,QAAE,QAAQ,CAAgB,CAClB,CACL;YACnB,KAAK,CAAC,CAAC,CAAC,oBAAC,iBAAiB,IAAC,GAAG,EAAE,KAAK,CAAC,QAAQ,GAAI,CAAC,CAAC,CAAC,IAAI;YACzD,KAAK,CAAC,CAAC,CAAC,CACP,oBAAC,gBAAgB,IAAC,GAAG,EAAE,KAAK,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,OAAO;gBAC7D,oBAAC,WAAW,IAAC,SAAS,EAAE,MAAM,CAAC,IAAI,GAAI,CACtB,CACpB,CAAC,CAAC,CAAC,IAAI,CACe,CACN,CACtB,CAAA;AACH,CAAC;AAKD;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,KAAwB;IACnD,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAA;IACzC,0DAA0D;IAC1D,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,CAAA;IAC5C,MAAM,QAAQ,GAAG,YAAY,CAAiB,GAAG,EAAE,KAAK,EAAE,aAAa,CAAC,CAAA;IACxE,OAAO,CACL,oBAAC,WAAW,CAAC,KAAK,OACZ,IAAI,EACR,GAAG,EAAE,QAAQ,EACb,SAAS,EAAE,gBAAgB,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAE1E,oBAAC,WAAW,IAAC,SAAS,EAAE,MAAM,CAAC,IAAI,GAAI,CACrB,CACrB,CAAA;AACH,CAAC;AAKD;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,KAAwB;IACnD,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAA;IACpC,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;IAC1C,MAAM,IAAI,GAAG,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAA;IAC/D,OAAO,CACL,oBAAC,WAAW,CAAC,KAAK,OACZ,IAAI,EACR,SAAS,EAAE,gBAAgB,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,GAClE,CACH,CAAA;AACH,CAAC;AAKD,kGAAkG;AAClG,MAAM,UAAU,kBAAkB,CAAC,KAA8B;IAC/D,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAA;IACpC,OAAO,CACL,oBAAC,WAAW,CAAC,WAAW,OAClB,IAAI,EACR,SAAS,EAAE,gBAAgB,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,GAChF,CACH,CAAA;AACH,CAAC;AAKD,qEAAqE;AACrE,MAAM,UAAU,aAAa,CAAC,KAAyB;IACrD,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAA;IACjD,OAAO,SAAS,CAAC;QACf,cAAc,EAAE,GAAG;QACnB,MAAM;QACN,GAAG;QACH,KAAK,EAAE,UAAU,CAAM,EAAE,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,EAAE,EAAE,IAAI,CAAC;KAC1E,CAAC,CAAA;AACJ,CAAC;AAQD;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,KAAwB;IACnD,MAAM,EAAE,KAAK,GAAG,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAA;IAEvE,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,CACL,oBAAC,WAAW,CAAC,KAAK,OAAK,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,IAC9D,QAAQ,CACS,CACrB,CAAA;IACH,CAAC;IAED,OAAO,CACL,oBAAC,WAAW,CAAC,KAAK,OACZ,IAAI,EACR,SAAS,EAAE,gBAAgB,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,EAC1E,MAAM,EACJ,oBAAC,MAAM,IAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,QAAC,IAAI,EAAC,OAAO,IAC5C,KAAK,CACC,GAEX,CACH,CAAA;AACH,CAAC"}
|
|
@@ -1,15 +1,18 @@
|
|
|
1
1
|
/*
|
|
2
2
|
* Popover (§10.15). CVA function `popover` in Popover.tsx.
|
|
3
3
|
* Parts: positioner (the layer), base (the popup), arrow (the tail's box)
|
|
4
|
-
* and tail (its drawing),
|
|
5
|
-
* description, source,
|
|
4
|
+
* and tail (its drawing), tailCap (the outline morph's copy of the tail),
|
|
5
|
+
* title, term (the title in the definition kind), description, source,
|
|
6
|
+
* close.
|
|
6
7
|
*
|
|
7
8
|
* The anchored overlay surface (§10.1): the `white` scope's --primary1 face,
|
|
8
9
|
* a --border-size-2 --primary12 frame in both modes, never --role-rule
|
|
9
|
-
* [D92, D156], --
|
|
10
|
-
* backdrop. Motion is
|
|
11
|
-
*
|
|
12
|
-
*
|
|
10
|
+
* [D92, D156], --radius-2-25, --size-px-2 from the trigger. No shadow, no
|
|
11
|
+
* backdrop. Motion is the outline morph (the popup answers
|
|
12
|
+
* `data-outline-morph`; its tail grows out of the frame's edge through the
|
|
13
|
+
* tail cap) [D204] or none: the panel opens and closes at once, never a
|
|
14
|
+
* fade [D205]. Colors are role variables only; local custom
|
|
15
|
+
* properties carry dimensions only.
|
|
13
16
|
*/
|
|
14
17
|
|
|
15
18
|
/* Composition sits in top-level rules, outside the layers: Lightning CSS
|
|
@@ -36,26 +39,26 @@
|
|
|
36
39
|
}
|
|
37
40
|
|
|
38
41
|
@layer base {
|
|
42
|
+
/* The tail's dimensions live on the layer, so the popup's tail and the morph's tail cap share them. */
|
|
39
43
|
.positioner {
|
|
44
|
+
--popover-tail-inline: var(--size-px-2-5);
|
|
45
|
+
--popover-tail-block: calc(var(--size-px-2-5) / 2 + var(--border-size-2));
|
|
46
|
+
|
|
40
47
|
z-index: var(--layer-3);
|
|
41
48
|
}
|
|
42
49
|
|
|
43
50
|
/*
|
|
44
51
|
* Base: anchored, the viewport less its margins wide. The clip bleeds past
|
|
45
|
-
* the frame by the tail's depth, so the tail shows
|
|
46
|
-
* reveal.
|
|
52
|
+
* the frame by the tail's depth, so the tail shows.
|
|
47
53
|
*/
|
|
48
54
|
.base {
|
|
49
|
-
--popover-tail-inline: var(--ds-space-12);
|
|
50
|
-
--popover-tail-block: calc(var(--ds-space-12) / 2 + var(--border-size-2));
|
|
51
55
|
--popover-bleed: calc(-1 * var(--popover-tail-block));
|
|
52
|
-
--popover-clip-from: inset(var(--popover-bleed));
|
|
53
56
|
|
|
54
57
|
position: relative;
|
|
55
58
|
box-sizing: border-box;
|
|
56
|
-
inline-size: calc(100vw - 2 * var(--
|
|
59
|
+
inline-size: calc(100vw - 2 * var(--fgd-space-margin));
|
|
57
60
|
border: var(--border-size-2) solid var(--primary12);
|
|
58
|
-
border-radius: var(--
|
|
61
|
+
border-radius: var(--radius-2-25);
|
|
59
62
|
background-color: var(--primary1);
|
|
60
63
|
color: var(--primary12);
|
|
61
64
|
clip-path: inset(var(--popover-bleed));
|
|
@@ -65,8 +68,8 @@
|
|
|
65
68
|
@media (min-width: 768px) {
|
|
66
69
|
.base {
|
|
67
70
|
inline-size: max-content;
|
|
68
|
-
min-inline-size: min(var(--size-px-13), calc(100vw - 2 * var(--
|
|
69
|
-
max-inline-size: min(var(--
|
|
71
|
+
min-inline-size: min(var(--size-px-13), calc(100vw - 2 * var(--fgd-space-margin)));
|
|
72
|
+
max-inline-size: min(var(--fgd-size-overlay-max), calc(100vw - 2 * var(--fgd-space-margin)));
|
|
70
73
|
}
|
|
71
74
|
}
|
|
72
75
|
|
|
@@ -97,13 +100,21 @@
|
|
|
97
100
|
stroke-width: var(--border-size-2);
|
|
98
101
|
}
|
|
99
102
|
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
103
|
+
/*
|
|
104
|
+
* The outline morph's tail cap (OutlineMorphTail) [D204]: the tail's box,
|
|
105
|
+
* placed on the popup's tail by the engine, drawn with the popup's face
|
|
106
|
+
* and the frame's color (currentColor), which the morph animates.
|
|
107
|
+
*/
|
|
108
|
+
.tailCap {
|
|
109
|
+
inline-size: var(--popover-tail-inline);
|
|
110
|
+
block-size: var(--popover-tail-block);
|
|
106
111
|
}
|
|
112
|
+
|
|
113
|
+
.tailCap .tail {
|
|
114
|
+
fill: var(--fgd-outline-morph-tail-fill);
|
|
115
|
+
stroke: currentColor;
|
|
116
|
+
}
|
|
117
|
+
|
|
107
118
|
}
|
|
108
119
|
|
|
109
120
|
@layer variants {
|
|
@@ -132,32 +143,21 @@
|
|
|
132
143
|
}
|
|
133
144
|
|
|
134
145
|
@layer states {
|
|
135
|
-
/*
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
--popover-clip-from: inset(var(--popover-bleed) var(--popover-bleed) var(--popover-bleed) 100%);
|
|
147
|
-
}
|
|
148
|
-
|
|
149
|
-
.base[data-side='right'],
|
|
150
|
-
.base[data-side='inline-end'] {
|
|
151
|
-
--popover-clip-from: inset(var(--popover-bleed) 100% var(--popover-bleed) var(--popover-bleed));
|
|
152
|
-
}
|
|
153
|
-
|
|
154
|
-
.base[data-starting-style],
|
|
155
|
-
.base[data-ending-style] {
|
|
156
|
-
clip-path: var(--popover-clip-from);
|
|
146
|
+
/*
|
|
147
|
+
* Outline morph [D204] (Popover's `morph`, the default): while the
|
|
148
|
+
* overlay draws the frame, the popup's own edge takes its face and its
|
|
149
|
+
* own transitions stay off. The popup's tail is held hidden meanwhile (a
|
|
150
|
+
* discrete hold, D196): the tail cap stands in for it above the frame,
|
|
151
|
+
* growing out of the frame's edge, and the tail shows again on the same
|
|
152
|
+
* pixels as the cap goes.
|
|
153
|
+
*/
|
|
154
|
+
.base[data-outline-morph] {
|
|
155
|
+
border-color: var(--primary1);
|
|
156
|
+
transition: none;
|
|
157
157
|
}
|
|
158
158
|
|
|
159
|
-
.base[data-
|
|
160
|
-
|
|
159
|
+
.base[data-outline-morph] .arrow {
|
|
160
|
+
visibility: hidden;
|
|
161
161
|
}
|
|
162
162
|
|
|
163
163
|
/* The tail sits on the edge facing the trigger and points at it. */
|
|
@@ -170,17 +170,43 @@
|
|
|
170
170
|
rotate: 180deg;
|
|
171
171
|
}
|
|
172
172
|
|
|
173
|
-
|
|
173
|
+
/* The physical sides place the tail physically, so it faces the trigger on a right-to-left page too. */
|
|
174
|
+
.arrow[data-side='left'] {
|
|
175
|
+
right: calc(-1 * (var(--popover-tail-inline) + var(--popover-tail-block)) / 2);
|
|
176
|
+
rotate: 90deg;
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
.arrow[data-side='right'] {
|
|
180
|
+
left: calc(-1 * (var(--popover-tail-inline) + var(--popover-tail-block)) / 2);
|
|
181
|
+
rotate: -90deg;
|
|
182
|
+
}
|
|
183
|
+
|
|
174
184
|
.arrow[data-side='inline-start'] {
|
|
175
185
|
inset-inline-end: calc(-1 * (var(--popover-tail-inline) + var(--popover-tail-block)) / 2);
|
|
176
186
|
rotate: 90deg;
|
|
177
187
|
}
|
|
178
188
|
|
|
179
|
-
.arrow[data-side='right'],
|
|
180
189
|
.arrow[data-side='inline-end'] {
|
|
181
190
|
inset-inline-start: calc(-1 * (var(--popover-tail-inline) + var(--popover-tail-block)) / 2);
|
|
182
191
|
rotate: -90deg;
|
|
183
192
|
}
|
|
193
|
+
|
|
194
|
+
|
|
195
|
+
/* The tail cap turns as the tail does; the engine places it. */
|
|
196
|
+
.tailCap[data-side='top'] {
|
|
197
|
+
rotate: 180deg;
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
.tailCap[data-side='left'],
|
|
201
|
+
.tailCap[data-side='inline-start'] {
|
|
202
|
+
rotate: 90deg;
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
.tailCap[data-side='right'],
|
|
206
|
+
.tailCap[data-side='inline-end'] {
|
|
207
|
+
rotate: -90deg;
|
|
208
|
+
}
|
|
209
|
+
|
|
184
210
|
}
|
|
185
211
|
|
|
186
212
|
@layer print {
|
|
@@ -49,7 +49,7 @@ export type PreviewCardPopupProps = BasePreviewCard.Popup.Props & {
|
|
|
49
49
|
};
|
|
50
50
|
/**
|
|
51
51
|
* The preview panel, rendered in its Base UI Portal as a nested `white`
|
|
52
|
-
* scope: --primary1 face, --border-size-2 --primary12 frame, --
|
|
52
|
+
* scope: --primary1 face, --border-size-2 --primary12 frame, --radius-2-25,
|
|
53
53
|
* 240–360 px wide. Compose `PreviewCardThumb`, `PreviewCardTitle`,
|
|
54
54
|
* `PreviewCardDescription` and `PreviewCardDomain` inside it, and
|
|
55
55
|
* `PreviewCardArrow` for the tail. It holds at most one link.
|
|
@@ -57,13 +57,13 @@ export type PreviewCardPopupProps = BasePreviewCard.Popup.Props & {
|
|
|
57
57
|
export declare function PreviewCardPopup(props: PreviewCardPopupProps): React.JSX.Element;
|
|
58
58
|
/** Props for PreviewCardArrow: Base UI PreviewCard.Arrow props. */
|
|
59
59
|
export type PreviewCardArrowProps = BasePreviewCard.Arrow.Props;
|
|
60
|
-
/** The tail: a --
|
|
60
|
+
/** The tail: a --size-px-2-5 × 6 px triangle whose --border-size-2 edge continues the frame. */
|
|
61
61
|
export declare function PreviewCardArrow(props: PreviewCardArrowProps): React.JSX.Element;
|
|
62
62
|
/** Props for PreviewCardThumb: `img` props and `render`. */
|
|
63
63
|
export type PreviewCardThumbProps = useRender.ComponentProps<'img'>;
|
|
64
64
|
/**
|
|
65
65
|
* The page's thumbnail: a --ratio-widescreen photograph with the nested
|
|
66
|
-
* radius (--
|
|
66
|
+
* radius (--radius-2-25 − --size-px-3, floored at --radius-1) [D40].
|
|
67
67
|
* Give it `alt` (empty when the title already names it).
|
|
68
68
|
*/
|
|
69
69
|
export declare function PreviewCardThumb(props: PreviewCardThumbProps): React.ReactElement<unknown, string | React.JSXElementConstructor<any>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PreviewCard.d.ts","sourceRoot":"","sources":["../../src/overlays/preview-card/PreviewCard.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,WAAW,IAAI,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAC5E,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AAErD,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAEjE,OAAO,EAAQ,KAAK,SAAS,EAAE,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"PreviewCard.d.ts","sourceRoot":"","sources":["../../src/overlays/preview-card/PreviewCard.tsx"],"names":[],"mappings":"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"}
|
|
@@ -19,9 +19,8 @@ import styles from './preview-card.module.css';
|
|
|
19
19
|
* the popup's scope.
|
|
20
20
|
* - Compound variants: none. Defaults: none; color axes: none.
|
|
21
21
|
* - Color fallback: the popup takes the `white` preset's defaults.
|
|
22
|
-
* - States:
|
|
23
|
-
*
|
|
24
|
-
* data-instant [D91]; Arrow data-side → the tail's edge. Opens after
|
|
22
|
+
* - States: the card appears and goes at once, a hover preview with no
|
|
23
|
+
* motion [D205]; Arrow data-side → the tail's edge. Opens after
|
|
25
24
|
* 600 ms of hover and closes 300 ms after leave.
|
|
26
25
|
* - Parts: positioner, base (the popup), arrow and tail, thumb, title,
|
|
27
26
|
* description, domain.
|
|
@@ -53,7 +52,7 @@ export function PreviewCardTrigger(props) {
|
|
|
53
52
|
}
|
|
54
53
|
/**
|
|
55
54
|
* The preview panel, rendered in its Base UI Portal as a nested `white`
|
|
56
|
-
* scope: --primary1 face, --border-size-2 --primary12 frame, --
|
|
55
|
+
* scope: --primary1 face, --border-size-2 --primary12 frame, --radius-2-25,
|
|
57
56
|
* 240–360 px wide. Compose `PreviewCardThumb`, `PreviewCardTitle`,
|
|
58
57
|
* `PreviewCardDescription` and `PreviewCardDomain` inside it, and
|
|
59
58
|
* `PreviewCardArrow` for the tail. It holds at most one link.
|
|
@@ -70,7 +69,7 @@ export function PreviewCardPopup(props) {
|
|
|
70
69
|
})) },
|
|
71
70
|
React.createElement(OverlayScope, null, children)))));
|
|
72
71
|
}
|
|
73
|
-
/** The tail: a --
|
|
72
|
+
/** The tail: a --size-px-2-5 × 6 px triangle whose --border-size-2 edge continues the frame. */
|
|
74
73
|
export function PreviewCardArrow(props) {
|
|
75
74
|
const { className, ...rest } = props;
|
|
76
75
|
return (React.createElement(BasePreviewCard.Arrow, { ...rest, className: resolveClassName(className, (extra) => cx(styles.arrow, extra)) },
|
|
@@ -78,7 +77,7 @@ export function PreviewCardArrow(props) {
|
|
|
78
77
|
}
|
|
79
78
|
/**
|
|
80
79
|
* The page's thumbnail: a --ratio-widescreen photograph with the nested
|
|
81
|
-
* radius (--
|
|
80
|
+
* radius (--radius-2-25 − --size-px-3, floored at --radius-1) [D40].
|
|
82
81
|
* Give it `alt` (empty when the title already names it).
|
|
83
82
|
*/
|
|
84
83
|
export function PreviewCardThumb(props) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PreviewCard.js","sourceRoot":"","sources":["../../src/overlays/preview-card/PreviewCard.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,WAAW,IAAI,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAC5E,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAA;AACvD,OAAO,EAAE,GAAG,EAAqB,MAAM,0BAA0B,CAAA;AAEjE,OAAO,EAAE,IAAI,EAAkB,MAAM,oBAAoB,CAAA;AACzD,OAAO,EAAE,EAAE,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,EACL,yBAAyB,EACzB,mBAAmB,EACnB,YAAY,EACZ,WAAW,EACX,sBAAsB,EACtB,iBAAiB,EACjB,aAAa,GACd,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AACjF,OAAO,MAAM,MAAM,2BAA2B,CAAA;AAE9C
|
|
1
|
+
{"version":3,"file":"PreviewCard.js","sourceRoot":"","sources":["../../src/overlays/preview-card/PreviewCard.tsx"],"names":[],"mappings":"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"}
|