@wordpress/ui 0.11.0 → 0.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +46 -0
- package/README.md +4 -4
- package/build/alert-dialog/index.cjs +3 -0
- package/build/alert-dialog/index.cjs.map +2 -2
- package/build/alert-dialog/popup.cjs +120 -55
- package/build/alert-dialog/popup.cjs.map +3 -3
- package/build/alert-dialog/portal.cjs +38 -0
- package/build/alert-dialog/portal.cjs.map +7 -0
- package/build/alert-dialog/types.cjs.map +1 -1
- package/build/collapsible-card/content.cjs +9 -5
- package/build/collapsible-card/content.cjs.map +2 -2
- package/build/collapsible-card/header.cjs +14 -4
- package/build/collapsible-card/header.cjs.map +3 -3
- package/build/dialog/content.cjs +85 -0
- package/build/dialog/content.cjs.map +7 -0
- package/build/dialog/context.cjs +12 -44
- package/build/dialog/context.cjs.map +2 -2
- package/build/dialog/description.cjs +59 -0
- package/build/dialog/description.cjs.map +7 -0
- package/build/dialog/footer.cjs +5 -4
- package/build/dialog/footer.cjs.map +2 -2
- package/build/dialog/header.cjs +5 -4
- package/build/dialog/header.cjs.map +2 -2
- package/build/dialog/index.cjs +9 -0
- package/build/dialog/index.cjs.map +2 -2
- package/build/dialog/popup.cjs +21 -9
- package/build/dialog/popup.cjs.map +2 -2
- package/build/dialog/portal.cjs +38 -0
- package/build/dialog/portal.cjs.map +7 -0
- package/build/dialog/root.cjs +3 -2
- package/build/dialog/root.cjs.map +2 -2
- package/build/dialog/title.cjs +9 -6
- package/build/dialog/title.cjs.map +2 -2
- package/build/dialog/types.cjs.map +1 -1
- package/build/drawer/action.cjs +48 -0
- package/build/drawer/action.cjs.map +7 -0
- package/build/drawer/close-icon.cjs +58 -0
- package/build/drawer/close-icon.cjs.map +7 -0
- package/build/drawer/content.cjs +86 -0
- package/build/drawer/content.cjs.map +7 -0
- package/build/drawer/context.cjs +44 -0
- package/build/drawer/context.cjs.map +7 -0
- package/build/drawer/description.cjs +47 -0
- package/build/drawer/description.cjs.map +7 -0
- package/build/drawer/footer.cjs +65 -0
- package/build/drawer/footer.cjs.map +7 -0
- package/build/drawer/header.cjs +65 -0
- package/build/drawer/header.cjs.map +7 -0
- package/build/drawer/index.cjs +61 -0
- package/build/drawer/index.cjs.map +7 -0
- package/build/drawer/popup.cjs +103 -0
- package/build/drawer/popup.cjs.map +7 -0
- package/build/drawer/portal.cjs +38 -0
- package/build/drawer/portal.cjs.map +7 -0
- package/build/drawer/root.cjs +49 -0
- package/build/drawer/root.cjs.map +7 -0
- package/build/drawer/title.cjs +70 -0
- package/build/drawer/title.cjs.map +7 -0
- package/build/drawer/trigger.cjs +38 -0
- package/build/drawer/trigger.cjs.map +7 -0
- package/build/drawer/types.cjs +19 -0
- package/build/drawer/types.cjs.map +7 -0
- package/build/form/primitives/autocomplete/clear.cjs +62 -0
- package/build/form/primitives/autocomplete/clear.cjs.map +7 -0
- package/build/form/primitives/autocomplete/collection.cjs +38 -0
- package/build/form/primitives/autocomplete/collection.cjs.map +7 -0
- package/build/form/primitives/autocomplete/empty.cjs +67 -0
- package/build/form/primitives/autocomplete/empty.cjs.map +7 -0
- package/build/form/primitives/autocomplete/index.cjs +64 -0
- package/build/form/primitives/autocomplete/index.cjs.map +7 -0
- package/build/form/primitives/autocomplete/input-group.cjs +36 -0
- package/build/form/primitives/autocomplete/input-group.cjs.map +7 -0
- package/build/form/primitives/autocomplete/input.cjs +47 -0
- package/build/form/primitives/autocomplete/input.cjs.map +7 -0
- package/build/form/primitives/autocomplete/item.cjs +81 -0
- package/build/form/primitives/autocomplete/item.cjs.map +7 -0
- package/build/form/primitives/autocomplete/list-body.cjs +57 -0
- package/build/form/primitives/autocomplete/list-body.cjs.map +7 -0
- package/build/form/primitives/autocomplete/list.cjs +67 -0
- package/build/form/primitives/autocomplete/list.cjs.map +7 -0
- package/build/form/primitives/autocomplete/popup.cjs +102 -0
- package/build/form/primitives/autocomplete/popup.cjs.map +7 -0
- package/build/form/primitives/autocomplete/portal.cjs +38 -0
- package/build/form/primitives/autocomplete/portal.cjs.map +7 -0
- package/build/form/primitives/autocomplete/root.cjs +35 -0
- package/build/form/primitives/autocomplete/root.cjs.map +7 -0
- package/build/form/primitives/autocomplete/types.cjs +19 -0
- package/build/form/primitives/autocomplete/types.cjs.map +7 -0
- package/build/form/primitives/autocomplete/value.cjs +35 -0
- package/build/form/primitives/autocomplete/value.cjs.map +7 -0
- package/build/form/primitives/index.cjs +3 -0
- package/build/form/primitives/index.cjs.map +2 -2
- package/build/form/primitives/select/index.cjs +3 -0
- package/build/form/primitives/select/index.cjs.map +2 -2
- package/build/form/primitives/select/item.cjs +4 -5
- package/build/form/primitives/select/item.cjs.map +2 -2
- package/build/form/primitives/select/popup.cjs +12 -11
- package/build/form/primitives/select/popup.cjs.map +2 -2
- package/build/form/primitives/select/portal.cjs +38 -0
- package/build/form/primitives/select/portal.cjs.map +7 -0
- package/build/form/primitives/select/types.cjs.map +1 -1
- package/build/index.cjs +3 -0
- package/build/index.cjs.map +2 -2
- package/build/link/link.cjs +8 -18
- package/build/link/link.cjs.map +2 -2
- package/build/link/types.cjs.map +1 -1
- package/build/notice/action-button.cjs +3 -3
- package/build/notice/action-button.cjs.map +2 -2
- package/build/notice/action-link.cjs +8 -7
- package/build/notice/action-link.cjs.map +2 -2
- package/build/notice/actions.cjs +3 -3
- package/build/notice/actions.cjs.map +2 -2
- package/build/notice/close-icon.cjs +3 -3
- package/build/notice/close-icon.cjs.map +2 -2
- package/build/notice/description.cjs +3 -3
- package/build/notice/description.cjs.map +2 -2
- package/build/notice/root.cjs +3 -3
- package/build/notice/root.cjs.map +2 -2
- package/build/notice/title.cjs +3 -3
- package/build/notice/title.cjs.map +2 -2
- package/build/popover/arrow.cjs +4 -4
- package/build/popover/arrow.cjs.map +2 -2
- package/build/popover/context.cjs +4 -44
- package/build/popover/context.cjs.map +2 -2
- package/build/popover/description.cjs +1 -24
- package/build/popover/description.cjs.map +4 -4
- package/build/popover/index.cjs +3 -0
- package/build/popover/index.cjs.map +2 -2
- package/build/popover/popup.cjs +15 -15
- package/build/popover/popup.cjs.map +2 -2
- package/build/popover/portal.cjs +38 -0
- package/build/popover/portal.cjs.map +7 -0
- package/build/popover/root.cjs.map +1 -1
- package/build/popover/title.cjs +18 -4
- package/build/popover/title.cjs.map +3 -3
- package/build/popover/types.cjs.map +1 -1
- package/build/tabs/context.cjs +9 -22
- package/build/tabs/context.cjs.map +2 -2
- package/build/tabs/list.cjs +4 -4
- package/build/tabs/list.cjs.map +2 -2
- package/build/tabs/panel.cjs +19 -6
- package/build/tabs/panel.cjs.map +3 -3
- package/build/tabs/tab.cjs +4 -4
- package/build/tabs/tab.cjs.map +2 -2
- package/build/text/text.cjs +2 -2
- package/build/text/text.cjs.map +2 -2
- package/build/tooltip/index.cjs +3 -0
- package/build/tooltip/index.cjs.map +2 -2
- package/build/tooltip/popup.cjs +11 -14
- package/build/tooltip/popup.cjs.map +3 -3
- package/build/tooltip/portal.cjs +38 -0
- package/build/tooltip/portal.cjs.map +7 -0
- package/build/tooltip/provider.cjs +2 -2
- package/build/tooltip/provider.cjs.map +3 -3
- package/build/tooltip/root.cjs.map +3 -3
- package/build/tooltip/trigger.cjs +2 -2
- package/build/tooltip/trigger.cjs.map +3 -3
- package/build/tooltip/types.cjs.map +1 -1
- package/build/utils/create-overlay-modal-context.cjs +48 -0
- package/build/utils/create-overlay-modal-context.cjs.map +7 -0
- package/build/utils/create-overlay-title-validation.cjs +93 -0
- package/build/utils/create-overlay-title-validation.cjs.map +7 -0
- package/build/utils/render-portal-with-children.cjs +37 -0
- package/build/utils/render-portal-with-children.cjs.map +7 -0
- package/build/utils/use-deprioritized-initial-focus.cjs +8 -8
- package/build/utils/use-deprioritized-initial-focus.cjs.map +2 -2
- package/build/utils/use-overlay-scroll-state-attributes.cjs +140 -0
- package/build/utils/use-overlay-scroll-state-attributes.cjs.map +7 -0
- package/build/utils/use-schedule-validation.cjs +59 -0
- package/build/utils/use-schedule-validation.cjs.map +7 -0
- package/build/visually-hidden/visually-hidden.cjs +5 -1
- package/build/visually-hidden/visually-hidden.cjs.map +2 -2
- package/build-module/alert-dialog/index.mjs +2 -0
- package/build-module/alert-dialog/index.mjs.map +2 -2
- package/build-module/alert-dialog/popup.mjs +124 -56
- package/build-module/alert-dialog/popup.mjs.map +3 -3
- package/build-module/alert-dialog/portal.mjs +13 -0
- package/build-module/alert-dialog/portal.mjs.map +7 -0
- package/build-module/collapsible-card/content.mjs +9 -5
- package/build-module/collapsible-card/content.mjs.map +2 -2
- package/build-module/collapsible-card/header.mjs +14 -4
- package/build-module/collapsible-card/header.mjs.map +3 -3
- package/build-module/dialog/content.mjs +50 -0
- package/build-module/dialog/content.mjs.map +7 -0
- package/build-module/dialog/context.mjs +10 -51
- package/build-module/dialog/context.mjs.map +2 -2
- package/build-module/dialog/description.mjs +34 -0
- package/build-module/dialog/description.mjs.map +7 -0
- package/build-module/dialog/footer.mjs +5 -4
- package/build-module/dialog/footer.mjs.map +2 -2
- package/build-module/dialog/header.mjs +5 -4
- package/build-module/dialog/header.mjs.map +2 -2
- package/build-module/dialog/index.mjs +6 -0
- package/build-module/dialog/index.mjs.map +2 -2
- package/build-module/dialog/popup.mjs +23 -11
- package/build-module/dialog/popup.mjs.map +2 -2
- package/build-module/dialog/portal.mjs +13 -0
- package/build-module/dialog/portal.mjs.map +7 -0
- package/build-module/dialog/root.mjs +3 -2
- package/build-module/dialog/root.mjs.map +2 -2
- package/build-module/dialog/title.mjs +10 -7
- package/build-module/dialog/title.mjs.map +2 -2
- package/build-module/drawer/action.mjs +23 -0
- package/build-module/drawer/action.mjs.map +7 -0
- package/build-module/drawer/close-icon.mjs +33 -0
- package/build-module/drawer/close-icon.mjs.map +7 -0
- package/build-module/drawer/content.mjs +51 -0
- package/build-module/drawer/content.mjs.map +7 -0
- package/build-module/drawer/context.mjs +16 -0
- package/build-module/drawer/context.mjs.map +7 -0
- package/build-module/drawer/description.mjs +22 -0
- package/build-module/drawer/description.mjs.map +7 -0
- package/build-module/drawer/footer.mjs +30 -0
- package/build-module/drawer/footer.mjs.map +7 -0
- package/build-module/drawer/header.mjs +30 -0
- package/build-module/drawer/header.mjs.map +7 -0
- package/build-module/drawer/index.mjs +26 -0
- package/build-module/drawer/index.mjs.map +7 -0
- package/build-module/drawer/popup.mjs +70 -0
- package/build-module/drawer/popup.mjs.map +7 -0
- package/build-module/drawer/portal.mjs +13 -0
- package/build-module/drawer/portal.mjs.map +7 -0
- package/build-module/drawer/root.mjs +24 -0
- package/build-module/drawer/root.mjs.map +7 -0
- package/build-module/drawer/title.mjs +45 -0
- package/build-module/drawer/title.mjs.map +7 -0
- package/build-module/drawer/trigger.mjs +13 -0
- package/build-module/drawer/trigger.mjs.map +7 -0
- package/build-module/drawer/types.mjs +1 -0
- package/build-module/form/primitives/autocomplete/clear.mjs +37 -0
- package/build-module/form/primitives/autocomplete/clear.mjs.map +7 -0
- package/build-module/form/primitives/autocomplete/collection.mjs +13 -0
- package/build-module/form/primitives/autocomplete/collection.mjs.map +7 -0
- package/build-module/form/primitives/autocomplete/empty.mjs +32 -0
- package/build-module/form/primitives/autocomplete/empty.mjs.map +7 -0
- package/build-module/form/primitives/autocomplete/index.mjs +28 -0
- package/build-module/form/primitives/autocomplete/index.mjs.map +7 -0
- package/build-module/form/primitives/autocomplete/input-group.mjs +11 -0
- package/build-module/form/primitives/autocomplete/input-group.mjs.map +7 -0
- package/build-module/form/primitives/autocomplete/input.mjs +22 -0
- package/build-module/form/primitives/autocomplete/input.mjs.map +7 -0
- package/build-module/form/primitives/autocomplete/item.mjs +46 -0
- package/build-module/form/primitives/autocomplete/item.mjs.map +7 -0
- package/build-module/form/primitives/autocomplete/list-body.mjs +32 -0
- package/build-module/form/primitives/autocomplete/list-body.mjs.map +7 -0
- package/build-module/form/primitives/autocomplete/list.mjs +32 -0
- package/build-module/form/primitives/autocomplete/list.mjs.map +7 -0
- package/build-module/form/primitives/autocomplete/popup.mjs +69 -0
- package/build-module/form/primitives/autocomplete/popup.mjs.map +7 -0
- package/build-module/form/primitives/autocomplete/portal.mjs +13 -0
- package/build-module/form/primitives/autocomplete/portal.mjs.map +7 -0
- package/build-module/form/primitives/autocomplete/root.mjs +10 -0
- package/build-module/form/primitives/autocomplete/root.mjs.map +7 -0
- package/build-module/form/primitives/autocomplete/types.mjs +1 -0
- package/build-module/form/primitives/autocomplete/value.mjs +10 -0
- package/build-module/form/primitives/autocomplete/value.mjs.map +7 -0
- package/build-module/form/primitives/index.mjs +2 -0
- package/build-module/form/primitives/index.mjs.map +2 -2
- package/build-module/form/primitives/select/index.mjs +2 -0
- package/build-module/form/primitives/select/index.mjs.map +2 -2
- package/build-module/form/primitives/select/item.mjs +4 -5
- package/build-module/form/primitives/select/item.mjs.map +2 -2
- package/build-module/form/primitives/select/popup.mjs +12 -11
- package/build-module/form/primitives/select/popup.mjs.map +2 -2
- package/build-module/form/primitives/select/portal.mjs +13 -0
- package/build-module/form/primitives/select/portal.mjs.map +7 -0
- package/build-module/index.mjs +2 -0
- package/build-module/index.mjs.map +2 -2
- package/build-module/link/link.mjs +8 -18
- package/build-module/link/link.mjs.map +2 -2
- package/build-module/notice/action-button.mjs +3 -3
- package/build-module/notice/action-button.mjs.map +2 -2
- package/build-module/notice/action-link.mjs +8 -7
- package/build-module/notice/action-link.mjs.map +2 -2
- package/build-module/notice/actions.mjs +3 -3
- package/build-module/notice/actions.mjs.map +2 -2
- package/build-module/notice/close-icon.mjs +3 -3
- package/build-module/notice/close-icon.mjs.map +2 -2
- package/build-module/notice/description.mjs +3 -3
- package/build-module/notice/description.mjs.map +2 -2
- package/build-module/notice/root.mjs +3 -3
- package/build-module/notice/root.mjs.map +2 -2
- package/build-module/notice/title.mjs +3 -3
- package/build-module/notice/title.mjs.map +2 -2
- package/build-module/popover/arrow.mjs +4 -4
- package/build-module/popover/arrow.mjs.map +2 -2
- package/build-module/popover/context.mjs +4 -51
- package/build-module/popover/context.mjs.map +2 -2
- package/build-module/popover/description.mjs +1 -14
- package/build-module/popover/description.mjs.map +3 -3
- package/build-module/popover/index.mjs +2 -0
- package/build-module/popover/index.mjs.map +2 -2
- package/build-module/popover/popup.mjs +16 -16
- package/build-module/popover/popup.mjs.map +2 -2
- package/build-module/popover/portal.mjs +13 -0
- package/build-module/popover/portal.mjs.map +7 -0
- package/build-module/popover/root.mjs.map +1 -1
- package/build-module/popover/title.mjs +19 -5
- package/build-module/popover/title.mjs.map +3 -3
- package/build-module/tabs/context.mjs +11 -24
- package/build-module/tabs/context.mjs.map +2 -2
- package/build-module/tabs/list.mjs +4 -4
- package/build-module/tabs/list.mjs.map +2 -2
- package/build-module/tabs/panel.mjs +19 -6
- package/build-module/tabs/panel.mjs.map +3 -3
- package/build-module/tabs/tab.mjs +4 -4
- package/build-module/tabs/tab.mjs.map +2 -2
- package/build-module/text/text.mjs +2 -2
- package/build-module/text/text.mjs.map +2 -2
- package/build-module/tooltip/index.mjs +2 -0
- package/build-module/tooltip/index.mjs.map +2 -2
- package/build-module/tooltip/popup.mjs +14 -17
- package/build-module/tooltip/popup.mjs.map +2 -2
- package/build-module/tooltip/portal.mjs +13 -0
- package/build-module/tooltip/portal.mjs.map +7 -0
- package/build-module/tooltip/provider.mjs +3 -3
- package/build-module/tooltip/provider.mjs.map +2 -2
- package/build-module/tooltip/root.mjs +2 -2
- package/build-module/tooltip/root.mjs.map +2 -2
- package/build-module/tooltip/trigger.mjs +3 -3
- package/build-module/tooltip/trigger.mjs.map +2 -2
- package/build-module/utils/create-overlay-modal-context.mjs +23 -0
- package/build-module/utils/create-overlay-modal-context.mjs.map +7 -0
- package/build-module/utils/create-overlay-title-validation.mjs +75 -0
- package/build-module/utils/create-overlay-title-validation.mjs.map +7 -0
- package/build-module/utils/render-portal-with-children.mjs +12 -0
- package/build-module/utils/render-portal-with-children.mjs.map +7 -0
- package/build-module/utils/use-deprioritized-initial-focus.mjs +9 -9
- package/build-module/utils/use-deprioritized-initial-focus.mjs.map +2 -2
- package/build-module/utils/use-overlay-scroll-state-attributes.mjs +114 -0
- package/build-module/utils/use-overlay-scroll-state-attributes.mjs.map +7 -0
- package/build-module/utils/use-schedule-validation.mjs +34 -0
- package/build-module/utils/use-schedule-validation.mjs.map +7 -0
- package/build-module/visually-hidden/visually-hidden.mjs +5 -1
- package/build-module/visually-hidden/visually-hidden.mjs.map +2 -2
- package/build-types/alert-dialog/index.d.ts +1 -0
- package/build-types/alert-dialog/index.d.ts.map +1 -1
- package/build-types/alert-dialog/popup.d.ts.map +1 -1
- package/build-types/alert-dialog/portal.d.ts +9 -0
- package/build-types/alert-dialog/portal.d.ts.map +1 -0
- package/build-types/alert-dialog/stories/index.story.d.ts +29 -1
- package/build-types/alert-dialog/stories/index.story.d.ts.map +1 -1
- package/build-types/alert-dialog/types.d.ts +25 -3
- package/build-types/alert-dialog/types.d.ts.map +1 -1
- package/build-types/badge/stories/index.story.d.ts.map +1 -1
- package/build-types/card/stories/index.story.d.ts.map +1 -1
- package/build-types/collapsible/stories/index.story.d.ts.map +1 -1
- package/build-types/collapsible-card/content.d.ts.map +1 -1
- package/build-types/collapsible-card/header.d.ts.map +1 -1
- package/build-types/collapsible-card/stories/index.story.d.ts.map +1 -1
- package/build-types/dialog/content.d.ts +17 -0
- package/build-types/dialog/content.d.ts.map +1 -0
- package/build-types/dialog/context.d.ts +11 -16
- package/build-types/dialog/context.d.ts.map +1 -1
- package/build-types/dialog/description.d.ts +9 -0
- package/build-types/dialog/description.d.ts.map +1 -0
- package/build-types/dialog/footer.d.ts +8 -1
- package/build-types/dialog/footer.d.ts.map +1 -1
- package/build-types/dialog/header.d.ts +8 -1
- package/build-types/dialog/header.d.ts.map +1 -1
- package/build-types/dialog/index.d.ts +4 -1
- package/build-types/dialog/index.d.ts.map +1 -1
- package/build-types/dialog/popup.d.ts +3 -0
- package/build-types/dialog/popup.d.ts.map +1 -1
- package/build-types/dialog/portal.d.ts +10 -0
- package/build-types/dialog/portal.d.ts.map +1 -0
- package/build-types/dialog/root.d.ts +14 -4
- package/build-types/dialog/root.d.ts.map +1 -1
- package/build-types/dialog/stories/index.story.d.ts +29 -6
- package/build-types/dialog/stories/index.story.d.ts.map +1 -1
- package/build-types/dialog/title.d.ts.map +1 -1
- package/build-types/dialog/types.d.ts +60 -7
- package/build-types/dialog/types.d.ts.map +1 -1
- package/build-types/drawer/action.d.ts +8 -0
- package/build-types/drawer/action.d.ts.map +1 -0
- package/build-types/drawer/close-icon.d.ts +8 -0
- package/build-types/drawer/close-icon.d.ts.map +1 -0
- package/build-types/drawer/content.d.ts +21 -0
- package/build-types/drawer/content.d.ts.map +1 -0
- package/build-types/drawer/context.d.ts +20 -0
- package/build-types/drawer/context.d.ts.map +1 -0
- package/build-types/drawer/description.d.ts +9 -0
- package/build-types/drawer/description.d.ts.map +1 -0
- package/build-types/drawer/footer.d.ts +15 -0
- package/build-types/drawer/footer.d.ts.map +1 -0
- package/build-types/drawer/header.d.ts +15 -0
- package/build-types/drawer/header.d.ts.map +1 -0
- package/build-types/drawer/index.d.ts +13 -0
- package/build-types/drawer/index.d.ts.map +1 -0
- package/build-types/drawer/popup.d.ts +16 -0
- package/build-types/drawer/popup.d.ts.map +1 -0
- package/build-types/drawer/portal.d.ts +10 -0
- package/build-types/drawer/portal.d.ts.map +1 -0
- package/build-types/drawer/root.d.ts +21 -0
- package/build-types/drawer/root.d.ts.map +1 -0
- package/build-types/drawer/stories/index.story.d.ts +63 -0
- package/build-types/drawer/stories/index.story.d.ts.map +1 -0
- package/build-types/drawer/test/index.test.d.ts +2 -0
- package/build-types/drawer/test/index.test.d.ts.map +1 -0
- package/build-types/drawer/title.d.ts +22 -0
- package/build-types/drawer/title.d.ts.map +1 -0
- package/build-types/drawer/trigger.d.ts +7 -0
- package/build-types/drawer/trigger.d.ts.map +1 -0
- package/build-types/drawer/types.d.ts +146 -0
- package/build-types/drawer/types.d.ts.map +1 -0
- package/build-types/empty-state/stories/index.story.d.ts +1 -1
- package/build-types/empty-state/stories/index.story.d.ts.map +1 -1
- package/build-types/form/input-control/stories/index.story.d.ts +1 -1
- package/build-types/form/input-control/stories/index.story.d.ts.map +1 -1
- package/build-types/form/primitives/autocomplete/clear.d.ts +13 -0
- package/build-types/form/primitives/autocomplete/clear.d.ts.map +1 -0
- package/build-types/form/primitives/autocomplete/collection.d.ts +3 -0
- package/build-types/form/primitives/autocomplete/collection.d.ts.map +1 -0
- package/build-types/form/primitives/autocomplete/empty.d.ts +10 -0
- package/build-types/form/primitives/autocomplete/empty.d.ts.map +1 -0
- package/build-types/form/primitives/autocomplete/index.d.ts +13 -0
- package/build-types/form/primitives/autocomplete/index.d.ts.map +1 -0
- package/build-types/form/primitives/autocomplete/input-group.d.ts +16 -0
- package/build-types/form/primitives/autocomplete/input-group.d.ts.map +1 -0
- package/build-types/form/primitives/autocomplete/input.d.ts +3 -0
- package/build-types/form/primitives/autocomplete/input.d.ts.map +1 -0
- package/build-types/form/primitives/autocomplete/item.d.ts +10 -0
- package/build-types/form/primitives/autocomplete/item.d.ts.map +1 -0
- package/build-types/form/primitives/autocomplete/list-body.d.ts +13 -0
- package/build-types/form/primitives/autocomplete/list-body.d.ts.map +1 -0
- package/build-types/form/primitives/autocomplete/list.d.ts +11 -0
- package/build-types/form/primitives/autocomplete/list.d.ts.map +1 -0
- package/build-types/form/primitives/autocomplete/popup.d.ts +11 -0
- package/build-types/form/primitives/autocomplete/popup.d.ts.map +1 -0
- package/build-types/form/primitives/autocomplete/portal.d.ts +8 -0
- package/build-types/form/primitives/autocomplete/portal.d.ts.map +1 -0
- package/build-types/form/primitives/autocomplete/root.d.ts +8 -0
- package/build-types/form/primitives/autocomplete/root.d.ts.map +1 -0
- package/build-types/form/primitives/autocomplete/stories/fixtures.d.ts +8 -0
- package/build-types/form/primitives/autocomplete/stories/fixtures.d.ts.map +1 -0
- package/build-types/form/primitives/autocomplete/stories/index.story.d.ts +41 -0
- package/build-types/form/primitives/autocomplete/stories/index.story.d.ts.map +1 -0
- package/build-types/form/primitives/autocomplete/test/index.test.d.ts +2 -0
- package/build-types/form/primitives/autocomplete/test/index.test.d.ts.map +1 -0
- package/build-types/form/primitives/autocomplete/types.d.ts +44 -0
- package/build-types/form/primitives/autocomplete/types.d.ts.map +1 -0
- package/build-types/form/primitives/autocomplete/value.d.ts +3 -0
- package/build-types/form/primitives/autocomplete/value.d.ts.map +1 -0
- package/build-types/form/primitives/field/stories/index.story.d.ts +1 -1
- package/build-types/form/primitives/field/stories/index.story.d.ts.map +1 -1
- package/build-types/form/primitives/fieldset/stories/index.story.d.ts +1 -1
- package/build-types/form/primitives/fieldset/stories/index.story.d.ts.map +1 -1
- package/build-types/form/primitives/index.d.ts +1 -0
- package/build-types/form/primitives/index.d.ts.map +1 -1
- package/build-types/form/primitives/input/stories/index.story.d.ts +1 -1
- package/build-types/form/primitives/input/stories/index.story.d.ts.map +1 -1
- package/build-types/form/primitives/input-layout/stories/index.story.d.ts +1 -1
- package/build-types/form/primitives/input-layout/stories/index.story.d.ts.map +1 -1
- package/build-types/form/primitives/select/index.d.ts +1 -0
- package/build-types/form/primitives/select/index.d.ts.map +1 -1
- package/build-types/form/primitives/select/item.d.ts.map +1 -1
- package/build-types/form/primitives/select/popup.d.ts +1 -2
- package/build-types/form/primitives/select/popup.d.ts.map +1 -1
- package/build-types/form/primitives/select/portal.d.ts +8 -0
- package/build-types/form/primitives/select/portal.d.ts.map +1 -0
- package/build-types/form/primitives/select/stories/index.story.d.ts +14 -6
- package/build-types/form/primitives/select/stories/index.story.d.ts.map +1 -1
- package/build-types/form/primitives/select/types.d.ts +7 -2
- package/build-types/form/primitives/select/types.d.ts.map +1 -1
- package/build-types/index.d.ts +1 -0
- package/build-types/index.d.ts.map +1 -1
- package/build-types/link/link.d.ts.map +1 -1
- package/build-types/link/stories/index.story.d.ts +2 -3
- package/build-types/link/stories/index.story.d.ts.map +1 -1
- package/build-types/link/types.d.ts +1 -2
- package/build-types/link/types.d.ts.map +1 -1
- package/build-types/notice/action-link.d.ts.map +1 -1
- package/build-types/popover/context.d.ts +6 -13
- package/build-types/popover/context.d.ts.map +1 -1
- package/build-types/popover/description.d.ts +0 -1
- package/build-types/popover/description.d.ts.map +1 -1
- package/build-types/popover/index.d.ts +2 -1
- package/build-types/popover/index.d.ts.map +1 -1
- package/build-types/popover/popup.d.ts +3 -2
- package/build-types/popover/popup.d.ts.map +1 -1
- package/build-types/popover/portal.d.ts +9 -0
- package/build-types/popover/portal.d.ts.map +1 -0
- package/build-types/popover/root.d.ts +2 -2
- package/build-types/popover/stories/index.story.d.ts +23 -15
- package/build-types/popover/stories/index.story.d.ts.map +1 -1
- package/build-types/popover/title.d.ts.map +1 -1
- package/build-types/popover/types.d.ts +8 -15
- package/build-types/popover/types.d.ts.map +1 -1
- package/build-types/stack/stories/index.story.d.ts.map +1 -1
- package/build-types/tabs/context.d.ts.map +1 -1
- package/build-types/tabs/panel.d.ts.map +1 -1
- package/build-types/tabs/stories/index.story.d.ts +1 -1
- package/build-types/tabs/stories/index.story.d.ts.map +1 -1
- package/build-types/text/stories/index.story.d.ts.map +1 -1
- package/build-types/tooltip/index.d.ts +2 -1
- package/build-types/tooltip/index.d.ts.map +1 -1
- package/build-types/tooltip/popup.d.ts.map +1 -1
- package/build-types/tooltip/portal.d.ts +8 -0
- package/build-types/tooltip/portal.d.ts.map +1 -0
- package/build-types/tooltip/provider.d.ts +1 -1
- package/build-types/tooltip/provider.d.ts.map +1 -1
- package/build-types/tooltip/stories/index.story.d.ts +18 -1
- package/build-types/tooltip/stories/index.story.d.ts.map +1 -1
- package/build-types/tooltip/stories/usage-guidelines.story.d.ts.map +1 -1
- package/build-types/tooltip/trigger.d.ts.map +1 -1
- package/build-types/tooltip/types.d.ts +11 -7
- package/build-types/tooltip/types.d.ts.map +1 -1
- package/build-types/utils/create-overlay-modal-context.d.ts +14 -0
- package/build-types/utils/create-overlay-modal-context.d.ts.map +1 -0
- package/build-types/utils/create-overlay-title-validation.d.ts +15 -0
- package/build-types/utils/create-overlay-title-validation.d.ts.map +1 -0
- package/build-types/utils/render-portal-with-children.d.ts +16 -0
- package/build-types/utils/render-portal-with-children.d.ts.map +1 -0
- package/build-types/utils/use-deprioritized-initial-focus.d.ts +9 -8
- package/build-types/utils/use-deprioritized-initial-focus.d.ts.map +1 -1
- package/build-types/utils/use-overlay-scroll-state-attributes.d.ts +85 -0
- package/build-types/utils/use-overlay-scroll-state-attributes.d.ts.map +1 -0
- package/build-types/utils/use-schedule-validation.d.ts +13 -0
- package/build-types/utils/use-schedule-validation.d.ts.map +1 -0
- package/build-types/visually-hidden/stories/index.story.d.ts.map +1 -1
- package/build-types/visually-hidden/visually-hidden.d.ts +4 -20
- package/build-types/visually-hidden/visually-hidden.d.ts.map +1 -1
- package/package.json +12 -12
- package/src/alert-dialog/index.ts +1 -0
- package/src/alert-dialog/popup.tsx +114 -45
- package/src/alert-dialog/portal.tsx +17 -0
- package/src/alert-dialog/stories/index.story.tsx +123 -3
- package/src/alert-dialog/style.module.css +13 -4
- package/src/alert-dialog/test/index.test.tsx +329 -3
- package/src/alert-dialog/types.ts +30 -3
- package/src/badge/stories/choosing-intent.story.tsx +1 -1
- package/src/badge/stories/index.story.tsx +1 -0
- package/src/card/stories/index.story.tsx +1 -0
- package/src/collapsible/stories/index.story.tsx +1 -0
- package/src/collapsible-card/content.tsx +12 -1
- package/src/collapsible-card/header.tsx +2 -0
- package/src/collapsible-card/stories/index.story.tsx +1 -0
- package/src/collapsible-card/style.module.css +16 -4
- package/src/dialog/content.tsx +47 -0
- package/src/dialog/context.tsx +14 -98
- package/src/dialog/description.tsx +27 -0
- package/src/dialog/footer.tsx +10 -2
- package/src/dialog/header.tsx +10 -2
- package/src/dialog/index.ts +16 -1
- package/src/dialog/popup.tsx +28 -8
- package/src/dialog/portal.tsx +18 -0
- package/src/dialog/root.tsx +22 -5
- package/src/dialog/stories/index.story.tsx +195 -51
- package/src/dialog/style.module.css +73 -23
- package/src/dialog/test/index.test.tsx +849 -149
- package/src/dialog/title.tsx +6 -4
- package/src/dialog/types.ts +64 -6
- package/src/drawer/action.tsx +28 -0
- package/src/drawer/close-icon.tsx +33 -0
- package/src/drawer/content.tsx +50 -0
- package/src/drawer/context.tsx +29 -0
- package/src/drawer/description.tsx +25 -0
- package/src/drawer/footer.tsx +34 -0
- package/src/drawer/header.tsx +34 -0
- package/src/drawer/index.ts +25 -0
- package/src/drawer/popup.tsx +100 -0
- package/src/drawer/portal.tsx +18 -0
- package/src/drawer/root.tsx +41 -0
- package/src/drawer/stories/index.story.tsx +543 -0
- package/src/drawer/style.module.css +324 -0
- package/src/drawer/test/index.test.tsx +1097 -0
- package/src/drawer/title.tsx +53 -0
- package/src/drawer/trigger.tsx +14 -0
- package/src/drawer/types.ts +174 -0
- package/src/empty-state/stories/index.story.tsx +2 -1
- package/src/form/input-control/stories/index.story.tsx +4 -1
- package/src/form/primitives/autocomplete/clear.tsx +35 -0
- package/src/form/primitives/autocomplete/collection.tsx +13 -0
- package/src/form/primitives/autocomplete/empty.tsx +17 -0
- package/src/form/primitives/autocomplete/index.ts +12 -0
- package/src/form/primitives/autocomplete/input-group.tsx +16 -0
- package/src/form/primitives/autocomplete/input.tsx +20 -0
- package/src/form/primitives/autocomplete/item.tsx +24 -0
- package/src/form/primitives/autocomplete/list-body.tsx +23 -0
- package/src/form/primitives/autocomplete/list.tsx +17 -0
- package/src/form/primitives/autocomplete/popup.tsx +42 -0
- package/src/form/primitives/autocomplete/portal.tsx +16 -0
- package/src/form/primitives/autocomplete/root.tsx +11 -0
- package/src/form/primitives/autocomplete/stories/fixtures.ts +35 -0
- package/src/form/primitives/autocomplete/stories/index.story.tsx +437 -0
- package/src/form/primitives/autocomplete/style.module.css +7 -0
- package/src/form/primitives/autocomplete/test/index.test.tsx +162 -0
- package/src/form/primitives/autocomplete/types.ts +74 -0
- package/src/form/primitives/autocomplete/value.tsx +6 -0
- package/src/form/primitives/field/stories/index.story.tsx +1 -1
- package/src/form/primitives/fieldset/stories/index.story.tsx +1 -1
- package/src/form/primitives/index.ts +1 -0
- package/src/form/primitives/input/stories/index.story.tsx +2 -1
- package/src/form/primitives/input-layout/stories/index.story.tsx +2 -1
- package/src/form/primitives/select/index.ts +1 -0
- package/src/form/primitives/select/item.tsx +0 -1
- package/src/form/primitives/select/popup.tsx +34 -37
- package/src/form/primitives/select/portal.tsx +16 -0
- package/src/form/primitives/select/stories/index.story.tsx +21 -7
- package/src/form/primitives/select/test/index.test.tsx +7 -3
- package/src/form/primitives/select/types.ts +9 -2
- package/src/index.ts +1 -0
- package/src/link/link.tsx +12 -26
- package/src/link/stories/index.story.tsx +6 -11
- package/src/link/style.module.css +5 -17
- package/src/link/test/index.test.tsx +31 -27
- package/src/link/types.ts +1 -2
- package/src/notice/action-link.tsx +7 -4
- package/src/notice/style.module.css +5 -5
- package/src/popover/context.tsx +6 -89
- package/src/popover/description.tsx +1 -5
- package/src/popover/index.ts +2 -1
- package/src/popover/popup.tsx +17 -15
- package/src/popover/portal.tsx +17 -0
- package/src/popover/root.tsx +2 -2
- package/src/popover/stories/index.story.tsx +56 -25
- package/src/popover/style.module.css +33 -4
- package/src/popover/test/index.test.tsx +189 -74
- package/src/popover/title.tsx +9 -5
- package/src/popover/types.ts +10 -15
- package/src/stack/stories/index.story.tsx +1 -0
- package/src/tabs/context.tsx +14 -34
- package/src/tabs/panel.tsx +7 -2
- package/src/tabs/stories/index.story.tsx +2 -1
- package/src/tabs/style.module.css +0 -17
- package/src/tabs/test/index.test.tsx +7 -3
- package/src/text/stories/index.story.tsx +1 -0
- package/src/text/text.tsx +2 -2
- package/src/tooltip/index.ts +2 -1
- package/src/tooltip/popup.tsx +24 -28
- package/src/tooltip/portal.tsx +16 -0
- package/src/tooltip/provider.tsx +3 -3
- package/src/tooltip/root.tsx +2 -2
- package/src/tooltip/stories/index.story.tsx +39 -1
- package/src/tooltip/stories/usage-guidelines.story.tsx +5 -1
- package/src/tooltip/style.module.css +12 -0
- package/src/tooltip/test/index.test.tsx +9 -3
- package/src/tooltip/trigger.tsx +3 -7
- package/src/tooltip/types.ts +13 -7
- package/src/utils/create-overlay-modal-context.tsx +34 -0
- package/src/utils/create-overlay-title-validation.tsx +116 -0
- package/src/utils/css/item-popup.module.css +9 -11
- package/src/utils/css/overlay-chrome.module.css +222 -0
- package/src/utils/render-portal-with-children.ts +27 -0
- package/src/utils/test/use-deprioritized-initial-focus.test.tsx +3 -3
- package/src/utils/use-deprioritized-initial-focus.ts +23 -17
- package/src/utils/use-overlay-scroll-state-attributes.ts +272 -0
- package/src/utils/use-schedule-validation.ts +45 -0
- package/src/visually-hidden/stories/index.story.tsx +1 -0
- package/src/visually-hidden/visually-hidden.tsx +9 -21
- package/build/types/css-modules.d.cjs +0 -2
- package/build/types/react.d.cjs +0 -5
- package/build/types/react.d.cjs.map +0 -7
- package/build-module/types/css-modules.d.mjs +0 -1
- package/build-module/types/react.d.mjs +0 -3
- package/build-module/types/react.d.mjs.map +0 -7
- package/src/types/css-modules.d.ts +0 -4
- package/src/types/react.d.ts +0 -7
- /package/build-module/{types/css-modules.d.mjs.map → drawer/types.mjs.map} +0 -0
- /package/{build/types/css-modules.d.cjs.map → build-module/form/primitives/autocomplete/types.mjs.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"footer.d.ts","sourceRoot":"","sources":["../../src/dialog/footer.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C
|
|
1
|
+
{"version":3,"file":"footer.d.ts","sourceRoot":"","sources":["../../src/dialog/footer.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C;;;;;;;;;;GAUG;AACH,QAAA,MAAM,MAAM,qGAcT,CAAC;AAEJ,OAAO,EAAE,MAAM,EAAE,CAAC"}
|
|
@@ -2,7 +2,14 @@ import type { HeaderProps } from './types';
|
|
|
2
2
|
/**
|
|
3
3
|
* Renders the header section of the dialog, typically containing
|
|
4
4
|
* the heading and close button.
|
|
5
|
+
*
|
|
6
|
+
* Defaults to a native `<header>` element for richer semantics (heading-level
|
|
7
|
+
* scanning, and banner landmark navigation where screen readers expose
|
|
8
|
+
* landmarks nested in dialogs). Pass `render` to opt out of the default tag.
|
|
9
|
+
*
|
|
10
|
+
* The header is pinned to the top of the popup by default. To let it scroll
|
|
11
|
+
* with the body instead, render it *inside* `Dialog.Content`.
|
|
5
12
|
*/
|
|
6
|
-
declare const Header: import("react").ForwardRefExoticComponent<HeaderProps & import("react").RefAttributes<
|
|
13
|
+
declare const Header: import("react").ForwardRefExoticComponent<HeaderProps & import("react").RefAttributes<HTMLElement>>;
|
|
7
14
|
export { Header };
|
|
8
15
|
//# sourceMappingURL=header.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"header.d.ts","sourceRoot":"","sources":["../../src/dialog/header.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C
|
|
1
|
+
{"version":3,"file":"header.d.ts","sourceRoot":"","sources":["../../src/dialog/header.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C;;;;;;;;;;GAUG;AACH,QAAA,MAAM,MAAM,qGAcT,CAAC;AAEJ,OAAO,EAAE,MAAM,EAAE,CAAC"}
|
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
import { Action } from './action';
|
|
2
2
|
import { CloseIcon } from './close-icon';
|
|
3
|
+
import { Content } from './content';
|
|
4
|
+
import { Description } from './description';
|
|
3
5
|
import { Footer } from './footer';
|
|
4
6
|
import { Header } from './header';
|
|
5
7
|
import { Popup } from './popup';
|
|
8
|
+
import { Portal } from './portal';
|
|
6
9
|
import { Root } from './root';
|
|
7
10
|
import { Title } from './title';
|
|
8
11
|
import { Trigger } from './trigger';
|
|
9
|
-
export { Action, CloseIcon, Footer, Header, Popup, Root, Title, Trigger };
|
|
12
|
+
export { Action, CloseIcon, Content, Description, Footer, Header, Popup, Portal, Root, Title, Trigger, };
|
|
10
13
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/dialog/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/dialog/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EACN,MAAM,EACN,SAAS,EACT,OAAO,EACP,WAAW,EACX,MAAM,EACN,MAAM,EACN,KAAK,EACL,MAAM,EACN,IAAI,EACJ,KAAK,EACL,OAAO,GACP,CAAC"}
|
|
@@ -2,6 +2,9 @@ import type { PopupProps } from './types';
|
|
|
2
2
|
/**
|
|
3
3
|
* Renders the dialog popup element that contains the dialog content.
|
|
4
4
|
* Uses a portal to render outside the DOM hierarchy.
|
|
5
|
+
*
|
|
6
|
+
* When `portal` is omitted, defaults to `Dialog.Portal`. Portal merging is
|
|
7
|
+
* handled by `renderPortalWithChildren` (shared with other overlay `Popup`s).
|
|
5
8
|
*/
|
|
6
9
|
declare const Popup: import("react").ForwardRefExoticComponent<PopupProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
7
10
|
export { Popup };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"popup.d.ts","sourceRoot":"","sources":["../../src/dialog/popup.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"popup.d.ts","sourceRoot":"","sources":["../../src/dialog/popup.tsx"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAO1C;;;;;;GAMG;AACH,QAAA,MAAM,KAAK,uGAsDR,CAAC;AAEJ,OAAO,EAAE,KAAK,EAAE,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Root element that portals `Dialog` overlay content (`Backdrop`, inner
|
|
3
|
+
* `Popup`, etc.) outside the DOM hierarchy. Pass to `Dialog.Popup`'s
|
|
4
|
+
* `portal` prop to customize `container`, `className`, `style`, and other
|
|
5
|
+
* Base UI portal options. When `portal` is omitted, `Dialog.Popup` uses this
|
|
6
|
+
* component with default props.
|
|
7
|
+
*/
|
|
8
|
+
declare const Portal: import("react").ForwardRefExoticComponent<Omit<Omit<import("@base-ui/react").AlertDialogPortalProps, "ref"> & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
9
|
+
export { Portal };
|
|
10
|
+
//# sourceMappingURL=portal.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"portal.d.ts","sourceRoot":"","sources":["../../src/dialog/portal.tsx"],"names":[],"mappings":"AAIA;;;;;;GAMG;AACH,QAAA,MAAM,MAAM,sNAIX,CAAC;AAEF,OAAO,EAAE,MAAM,EAAE,CAAC"}
|
|
@@ -1,10 +1,20 @@
|
|
|
1
1
|
import type { RootProps } from './types';
|
|
2
2
|
/**
|
|
3
|
-
*
|
|
3
|
+
* An ARIA-compliant dialog that opens on top of the entire page.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
5
|
+
* Every dialog must include a `Dialog.Title` component for accessibility — it
|
|
6
|
+
* serves as both the visible heading and the accessible label for the dialog.
|
|
7
|
+
*
|
|
8
|
+
* Always include a visible close button, either `Dialog.CloseIcon` or a clear
|
|
9
|
+
* dismissing action button. If your dialog has a "Cancel" button in the footer,
|
|
10
|
+
* the close icon may be redundant and create confusion about what clicking "X"
|
|
11
|
+
* means.
|
|
12
|
+
*
|
|
13
|
+
* Use `Dialog.CloseIcon` for informational dialogs where dismissing is safe and
|
|
14
|
+
* expected. For dialogs requiring explicit user choice (especially destructive
|
|
15
|
+
* actions), omit the close icon and rely on footer action buttons like "Cancel"
|
|
16
|
+
* and "Confirm" instead.
|
|
7
17
|
*/
|
|
8
|
-
declare function Root(props: RootProps): import("react").JSX.Element;
|
|
18
|
+
declare function Root({ modal, children, ...props }: RootProps): import("react").JSX.Element;
|
|
9
19
|
export { Root };
|
|
10
20
|
//# sourceMappingURL=root.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"root.d.ts","sourceRoot":"","sources":["../../src/dialog/root.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"root.d.ts","sourceRoot":"","sources":["../../src/dialog/root.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEzC;;;;;;;;;;;;;;;GAeG;AACH,iBAAS,IAAI,CAAE,EAAE,KAAY,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,EAAE,SAAS,+BAQ7D;AAED,OAAO,EAAE,IAAI,EAAE,CAAC"}
|
|
@@ -10,15 +10,38 @@ type Story = StoryObj<typeof Dialog.Root>;
|
|
|
10
10
|
export declare const _Default: Story;
|
|
11
11
|
export declare const AllSizes: Story;
|
|
12
12
|
/**
|
|
13
|
-
* Popovers in Gutenberg are managed with explicit z-index values, which can
|
|
14
|
-
* situations where a dialog renders below another popover
|
|
13
|
+
* Popovers in Gutenberg are managed with explicit z-index values, which can
|
|
14
|
+
* create situations where a dialog renders below another popover when you
|
|
15
|
+
* want it above.
|
|
15
16
|
*
|
|
16
|
-
* The `--wp-ui-dialog-z-index` CSS variable controls the z-index of
|
|
17
|
-
* backdrop and
|
|
18
|
-
*
|
|
19
|
-
*
|
|
17
|
+
* The `--wp-ui-dialog-z-index` CSS variable controls the z-index of the
|
|
18
|
+
* dialog's backdrop and popup. Override it either:
|
|
19
|
+
*
|
|
20
|
+
* - **Globally**, by setting the variable on `:root` or `body` (raises every
|
|
21
|
+
* dialog in the page), or
|
|
22
|
+
* - **Per instance**, by passing a `Dialog.Portal` with a `style` (or
|
|
23
|
+
* `className`) to `Dialog.Popup`'s `portal` prop. The variable cascades
|
|
24
|
+
* from the portal wrapper to everything rendered inside it.
|
|
25
|
+
*
|
|
26
|
+
* This story demonstrates the per-instance approach.
|
|
20
27
|
*/
|
|
21
28
|
export declare const WithCustomZIndex: Story;
|
|
29
|
+
/**
|
|
30
|
+
* When dialog content overflows the available height, `Dialog.Content`
|
|
31
|
+
* scrolls while `Dialog.Header` and `Dialog.Footer` stay pinned to the
|
|
32
|
+
* popup's top and bottom edges. Separator lines appear only when there
|
|
33
|
+
* is off-screen content above the header or below the footer.
|
|
34
|
+
*
|
|
35
|
+
* To let the header or footer scroll with the body instead of staying
|
|
36
|
+
* pinned, render it *inside* `Dialog.Content` rather than as a sibling.
|
|
37
|
+
* The inline "Sticky header / Sticky footer" checkboxes toggle exactly
|
|
38
|
+
* that placement at runtime.
|
|
39
|
+
*
|
|
40
|
+
* Use the inline controls to change the popup `size` and the sticky
|
|
41
|
+
* placement. The same controls render both outside and inside the
|
|
42
|
+
* dialog and stay in sync.
|
|
43
|
+
*/
|
|
44
|
+
export declare const Scrollable: Story;
|
|
22
45
|
/**
|
|
23
46
|
* A dialog with a visually hidden title. The title is still present in the
|
|
24
47
|
* DOM for `aria-labelledby`, but is not visible to sighted users.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.story.d.ts","sourceRoot":"","sources":["../../../src/dialog/stories/index.story.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.story.d.ts","sourceRoot":"","sources":["../../../src/dialog/stories/index.story.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAK5D,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AAEnC,QAAA,MAAM,IAAI,EAAE,IAAI,CAAE,OAAO,MAAM,CAAC,IAAI,CAoBnC,CAAC;AACF,eAAe,IAAI,CAAC;AAEpB,KAAK,KAAK,GAAG,QAAQ,CAAE,OAAO,MAAM,CAAC,IAAI,CAAE,CAAC;AAE5C;;;GAGG;AACH,eAAO,MAAM,QAAQ,EAAE,KAwBtB,CAAC;AAoEF,eAAO,MAAM,QAAQ,EAAE,KAItB,CAAC;AAEF;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,gBAAgB,EAAE,KA+B9B,CAAC;AAwGF;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,UAAU,EAAE,KAIxB,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,uBAAuB,EAAE,KA0BrC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"title.d.ts","sourceRoot":"","sources":["../../src/dialog/title.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAE1C;;;;;;;;;;;;;;;;;GAiBG;AACH,QAAA,MAAM,KAAK,
|
|
1
|
+
{"version":3,"file":"title.d.ts","sourceRoot":"","sources":["../../src/dialog/title.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAE1C;;;;;;;;;;;;;;;;;GAiBG;AACH,QAAA,MAAM,KAAK,2GAwBV,CAAC;AAEF,OAAO,EAAE,KAAK,EAAE,CAAC"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import type { Dialog as _Dialog } from '@base-ui/react/dialog';
|
|
2
|
-
import type { ReactNode } from 'react';
|
|
2
|
+
import type { ComponentPropsWithoutRef, ReactElement, ReactNode } from 'react';
|
|
3
3
|
import type { Button } from '../button';
|
|
4
4
|
import type { IconButton } from '../icon-button';
|
|
5
5
|
import type { ComponentProps } from '../utils/types';
|
|
6
|
-
export
|
|
6
|
+
export type PortalProps = ComponentPropsWithoutRef<typeof _Dialog.Portal>;
|
|
7
|
+
export interface RootProps extends Pick<_Dialog.Root.Props, 'open' | 'onOpenChange' | 'onOpenChangeComplete' | 'defaultOpen' | 'modal' | 'disablePointerDismissal'> {
|
|
7
8
|
/**
|
|
8
9
|
* The content to be rendered inside the component.
|
|
9
10
|
*/
|
|
@@ -21,17 +22,28 @@ export interface PopupProps extends ComponentProps<'div'>, Pick<_Dialog.Popup.Pr
|
|
|
21
22
|
*/
|
|
22
23
|
children?: ReactNode;
|
|
23
24
|
/**
|
|
24
|
-
*
|
|
25
|
+
* Optional portal element, typically `<Dialog.Portal />` with custom
|
|
26
|
+
* `container`, `className`, or `style`. The popup and backdrop are
|
|
27
|
+
* rendered as this portal's children (do not pass `children` on the portal
|
|
28
|
+
* element; they would be ignored).
|
|
29
|
+
*
|
|
30
|
+
* When omitted, `Dialog.Popup` uses `Dialog.Portal` with default props,
|
|
31
|
+
* rendering the portal in the current document's `<body>`.
|
|
25
32
|
*/
|
|
26
|
-
|
|
33
|
+
portal?: ReactElement<Omit<PortalProps, 'children'>>;
|
|
27
34
|
/**
|
|
28
35
|
* Renders the dialog at a preset width (excluding additional padding from
|
|
29
36
|
* the viewport edges).
|
|
30
37
|
*
|
|
38
|
+
* Height is not directly controlled by `size`: for every value except
|
|
39
|
+
* `'full'`, the dialog fits its content up to the viewport height
|
|
40
|
+
* (minus the viewport inset) and scrolls internally when it overflows.
|
|
41
|
+
* `'full'` stretches the dialog to the available viewport height.
|
|
42
|
+
*
|
|
31
43
|
* - `'small'` — narrow max-width.
|
|
32
44
|
* - `'medium'` — moderate max-width.
|
|
33
45
|
* - `'large'` — wide max-width.
|
|
34
|
-
* - `'stretch'` — no max-width, stretches to fill available
|
|
46
|
+
* - `'stretch'` — no max-width, stretches to fill available width.
|
|
35
47
|
* - `'full'` — stretches to fill available width and height.
|
|
36
48
|
*
|
|
37
49
|
* @default 'medium'
|
|
@@ -44,18 +56,53 @@ export interface ActionProps extends ComponentProps<typeof Button> {
|
|
|
44
56
|
*/
|
|
45
57
|
children?: ReactNode;
|
|
46
58
|
}
|
|
47
|
-
export interface FooterProps extends ComponentProps<'
|
|
59
|
+
export interface FooterProps extends ComponentProps<'footer'> {
|
|
48
60
|
/**
|
|
49
61
|
* The content to be rendered inside the component.
|
|
50
62
|
*/
|
|
51
63
|
children?: ReactNode;
|
|
52
64
|
}
|
|
53
|
-
export interface HeaderProps extends ComponentProps<'
|
|
65
|
+
export interface HeaderProps extends ComponentProps<'header'> {
|
|
54
66
|
/**
|
|
55
67
|
* The content to be rendered inside the component.
|
|
56
68
|
*/
|
|
57
69
|
children?: ReactNode;
|
|
58
70
|
}
|
|
71
|
+
export interface ContentProps extends ComponentProps<'div'> {
|
|
72
|
+
/**
|
|
73
|
+
* The body content to be rendered inside the scroll container.
|
|
74
|
+
*/
|
|
75
|
+
children?: ReactNode;
|
|
76
|
+
/**
|
|
77
|
+
* The scroll region automatically becomes a keyboard-reachable tab
|
|
78
|
+
* stop (`tabindex="0"`) whenever the body overflows, so keyboard
|
|
79
|
+
* users can arrow-scroll the region (WCAG 2.1.1). It becomes
|
|
80
|
+
* non-tabbable again as soon as the content no longer overflows.
|
|
81
|
+
*
|
|
82
|
+
* If you supply `tabIndex` explicitly, your value wins and is never
|
|
83
|
+
* overwritten — including `tabIndex={ -1 }` to opt out of the
|
|
84
|
+
* automatic tab stop entirely, and including overrides applied
|
|
85
|
+
* after the component had already managed the value.
|
|
86
|
+
*
|
|
87
|
+
* Two narrow edge cases:
|
|
88
|
+
* - If you later *remove* an explicit `tabIndex` at runtime, the
|
|
89
|
+
* component will resume managing it on the next overflow tick; it
|
|
90
|
+
* can't distinguish a previous explicit opt-out from an
|
|
91
|
+
* unconfigured state.
|
|
92
|
+
* - Passing `tabIndex={ 0 }` while the body overflows produces a
|
|
93
|
+
* value identical to the auto-managed one, so the component can
|
|
94
|
+
* no longer tell the two apart and may strip it on the next
|
|
95
|
+
* non-overflow tick. Pick a different value (or rely on the
|
|
96
|
+
* default behavior, which is already `0` while overflowing).
|
|
97
|
+
*
|
|
98
|
+
* Note: the scroll region is intentionally rendered without
|
|
99
|
+
* `role` / `aria-label`, so screen readers don't announce a
|
|
100
|
+
* generic "scrollable" landmark on top of the dialog's existing
|
|
101
|
+
* heading + body; the surrounding `Dialog.Title` and body content
|
|
102
|
+
* provide the context.
|
|
103
|
+
*/
|
|
104
|
+
tabIndex?: number;
|
|
105
|
+
}
|
|
59
106
|
export interface TitleProps extends ComponentProps<'h2'> {
|
|
60
107
|
/**
|
|
61
108
|
* The title content to be rendered. This serves as both the visible
|
|
@@ -66,6 +113,12 @@ export interface TitleProps extends ComponentProps<'h2'> {
|
|
|
66
113
|
*/
|
|
67
114
|
children?: ReactNode;
|
|
68
115
|
}
|
|
116
|
+
export interface DescriptionProps extends ComponentProps<'p'> {
|
|
117
|
+
/**
|
|
118
|
+
* The description content to be rendered inside the component.
|
|
119
|
+
*/
|
|
120
|
+
children?: ReactNode;
|
|
121
|
+
}
|
|
69
122
|
export interface CloseIconProps extends Omit<ComponentProps<typeof IconButton>, 'label' | 'icon' | 'loading' | 'loadingAnnouncement'> {
|
|
70
123
|
/**
|
|
71
124
|
* A label describing the button's action, shown as a tooltip and to
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/dialog/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,IAAI,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/dialog/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,IAAI,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,KAAK,EAAE,wBAAwB,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAE/E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAErD,MAAM,MAAM,WAAW,GAAG,wBAAwB,CAAE,OAAO,OAAO,CAAC,MAAM,CAAE,CAAC;AAE5E,MAAM,WAAW,SAChB,SAAQ,IAAI,CACX,OAAO,CAAC,IAAI,CAAC,KAAK,EAChB,MAAM,GACN,cAAc,GACd,sBAAsB,GACtB,aAAa,GACb,OAAO,GACP,yBAAyB,CAC3B;IACD;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;CACrB;AAED,MAAM,WAAW,YAAa,SAAQ,cAAc,CAAE,QAAQ,CAAE;IAC/D;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;CACrB;AAED,MAAM,WAAW,UAChB,SAAQ,cAAc,CAAE,KAAK,CAAE,EAC9B,IAAI,CAAE,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,cAAc,GAAG,YAAY,CAAE;IAC3D;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;IAErB;;;;;;;;OAQG;IACH,MAAM,CAAC,EAAE,YAAY,CAAE,IAAI,CAAE,WAAW,EAAE,UAAU,CAAE,CAAE,CAAC;IAEzD;;;;;;;;;;;;;;;;OAgBG;IACH,IAAI,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;CACzD;AAED,MAAM,WAAW,WAAY,SAAQ,cAAc,CAAE,OAAO,MAAM,CAAE;IACnE;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;CACrB;AAED,MAAM,WAAW,WAAY,SAAQ,cAAc,CAAE,QAAQ,CAAE;IAC9D;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;CACrB;AAED,MAAM,WAAW,WAAY,SAAQ,cAAc,CAAE,QAAQ,CAAE;IAC9D;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;CACrB;AAED,MAAM,WAAW,YAAa,SAAQ,cAAc,CAAE,KAAK,CAAE;IAC5D;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,UAAW,SAAQ,cAAc,CAAE,IAAI,CAAE;IACzD;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;CACrB;AAED,MAAM,WAAW,gBAAiB,SAAQ,cAAc,CAAE,GAAG,CAAE;IAC9D;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;CACrB;AAED,MAAM,WAAW,cAChB,SAAQ,IAAI,CACX,cAAc,CAAE,OAAO,UAAU,CAAE,EACnC,OAAO,GAAG,MAAM,GAAG,SAAS,GAAG,qBAAqB,CACpD;IACD;;;;;OAKG;IACH,KAAK,CAAC,EAAE,cAAc,CAAE,OAAO,UAAU,CAAE,CAAE,OAAO,CAAE,CAAC;IACvD;;;;OAIG;IACH,IAAI,CAAC,EAAE,cAAc,CAAE,OAAO,UAAU,CAAE,CAAE,MAAM,CAAE,CAAC;CACrD"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { ActionProps } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Renders a button that closes the drawer when clicked.
|
|
4
|
+
* Accepts all Button component props for styling.
|
|
5
|
+
*/
|
|
6
|
+
declare const Action: import("react").ForwardRefExoticComponent<ActionProps & import("react").RefAttributes<HTMLButtonElement>>;
|
|
7
|
+
export { Action };
|
|
8
|
+
//# sourceMappingURL=action.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"action.d.ts","sourceRoot":"","sources":["../../src/drawer/action.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C;;;GAGG;AACH,QAAA,MAAM,MAAM,2GAgBX,CAAC;AAEF,OAAO,EAAE,MAAM,EAAE,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { CloseIconProps } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Renders an icon button that closes the drawer when clicked.
|
|
4
|
+
* Provides a default close icon and accessible label.
|
|
5
|
+
*/
|
|
6
|
+
declare const CloseIcon: import("react").ForwardRefExoticComponent<CloseIconProps & import("react").RefAttributes<HTMLButtonElement>>;
|
|
7
|
+
export { CloseIcon };
|
|
8
|
+
//# sourceMappingURL=close-icon.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"close-icon.d.ts","sourceRoot":"","sources":["../../src/drawer/close-icon.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAE9C;;;GAGG;AACH,QAAA,MAAM,SAAS,8GAmBd,CAAC;AAEF,OAAO,EAAE,SAAS,EAAE,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { ContentProps } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Renders the scrollable body of the drawer, sitting between `Drawer.Header`
|
|
4
|
+
* and `Drawer.Footer` as a flex sibling.
|
|
5
|
+
*
|
|
6
|
+
* **Required for scrolling** — `Drawer.Content` is the element that owns
|
|
7
|
+
* the popup's overflow. Without it, body content that exceeds the popup's
|
|
8
|
+
* available space clips instead of scrolling, and Base UI's
|
|
9
|
+
* swipe-dismiss-on-scroll-edge logic will not engage on up/down drawers.
|
|
10
|
+
* Render it once per popup and wrap any freeform body content in it.
|
|
11
|
+
*
|
|
12
|
+
* Placing `Drawer.Header` or `Drawer.Footer` *inside* `Drawer.Content`
|
|
13
|
+
* makes them scroll with the body (the "non-sticky" opt-out) rather than
|
|
14
|
+
* staying pinned to the popup's edges.
|
|
15
|
+
*
|
|
16
|
+
* Renders Base UI's `_Drawer.Content` so swipe-dismiss wiring remains
|
|
17
|
+
* wired automatically.
|
|
18
|
+
*/
|
|
19
|
+
declare const Content: import("react").ForwardRefExoticComponent<ContentProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
20
|
+
export { Content };
|
|
21
|
+
//# sourceMappingURL=content.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"content.d.ts","sourceRoot":"","sources":["../../src/drawer/content.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C;;;;;;;;;;;;;;;;GAgBG;AACH,QAAA,MAAM,OAAO,yGAqBZ,CAAC;AAEF,OAAO,EAAE,OAAO,EAAE,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export declare const DrawerModalProvider: ({ modal, children, }: {
|
|
2
|
+
modal: boolean | "trap-focus" | undefined;
|
|
3
|
+
children: React.ReactNode;
|
|
4
|
+
}) => import("react").JSX.Element;
|
|
5
|
+
export declare const useDrawerModal: () => boolean | "trap-focus" | undefined;
|
|
6
|
+
/**
|
|
7
|
+
* Hook to access the drawer validation context.
|
|
8
|
+
* Returns null in production or if not within a Drawer.Popup.
|
|
9
|
+
*/
|
|
10
|
+
export declare const useDrawerValidationContext: () => {
|
|
11
|
+
registerTitle: (element: HTMLElement | null) => () => void;
|
|
12
|
+
} | null;
|
|
13
|
+
/**
|
|
14
|
+
* Provider component that validates Drawer.Title presence in development mode.
|
|
15
|
+
* In production, this component is a no-op and just renders children.
|
|
16
|
+
*/
|
|
17
|
+
export declare const DrawerValidationProvider: ({ children, }: {
|
|
18
|
+
children: React.ReactNode;
|
|
19
|
+
}) => import("react").JSX.Element;
|
|
20
|
+
//# sourceMappingURL=context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/drawer/context.tsx"],"names":[],"mappings":"AASA,eAAO,MAAM,mBAAmB;;;iCAAuB,CAAC;AACxD,eAAO,MAAM,cAAc,0CAAuB,CAAC;AAMnD;;;GAGG;AACH,eAAO,MAAM,0BAA0B;;QACI,CAAC;AAE5C;;;GAGG;AACH,eAAO,MAAM,wBAAwB;;iCACI,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { DescriptionProps } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Renders an optional paragraph that describes the drawer content.
|
|
4
|
+
*
|
|
5
|
+
* The rendered element is linked to the popup via `aria-describedby`.
|
|
6
|
+
*/
|
|
7
|
+
declare const Description: import("react").ForwardRefExoticComponent<DescriptionProps & import("react").RefAttributes<HTMLParagraphElement>>;
|
|
8
|
+
export { Description };
|
|
9
|
+
//# sourceMappingURL=description.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"description.d.ts","sourceRoot":"","sources":["../../src/drawer/description.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAEhD;;;;GAIG;AACH,QAAA,MAAM,WAAW,mHAYhB,CAAC;AAEF,OAAO,EAAE,WAAW,EAAE,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { FooterProps } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Renders the footer section of the drawer, typically containing
|
|
4
|
+
* action buttons.
|
|
5
|
+
*
|
|
6
|
+
* Defaults to a native `<footer>` element for richer semantics (contentinfo
|
|
7
|
+
* landmark navigation where screen readers expose landmarks nested in
|
|
8
|
+
* dialogs). Pass `render` to opt out of the default tag.
|
|
9
|
+
*
|
|
10
|
+
* The footer is pinned to the bottom of the popup by default. To let it
|
|
11
|
+
* scroll with the body instead, render it *inside* `Drawer.Content`.
|
|
12
|
+
*/
|
|
13
|
+
declare const Footer: import("react").ForwardRefExoticComponent<FooterProps & import("react").RefAttributes<HTMLElement>>;
|
|
14
|
+
export { Footer };
|
|
15
|
+
//# sourceMappingURL=footer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"footer.d.ts","sourceRoot":"","sources":["../../src/drawer/footer.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C;;;;;;;;;;GAUG;AACH,QAAA,MAAM,MAAM,qGAcT,CAAC;AAEJ,OAAO,EAAE,MAAM,EAAE,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { HeaderProps } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Renders the header section of the drawer, typically containing
|
|
4
|
+
* the heading and close button.
|
|
5
|
+
*
|
|
6
|
+
* Defaults to a native `<header>` element for richer semantics (heading-level
|
|
7
|
+
* scanning, and banner landmark navigation where screen readers expose
|
|
8
|
+
* landmarks nested in dialogs). Pass `render` to opt out of the default tag.
|
|
9
|
+
*
|
|
10
|
+
* The header is pinned to the top of the popup by default. To let it scroll
|
|
11
|
+
* with the body instead, render it *inside* `Drawer.Content`.
|
|
12
|
+
*/
|
|
13
|
+
declare const Header: import("react").ForwardRefExoticComponent<HeaderProps & import("react").RefAttributes<HTMLElement>>;
|
|
14
|
+
export { Header };
|
|
15
|
+
//# sourceMappingURL=header.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"header.d.ts","sourceRoot":"","sources":["../../src/drawer/header.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C;;;;;;;;;;GAUG;AACH,QAAA,MAAM,MAAM,qGAcT,CAAC;AAEJ,OAAO,EAAE,MAAM,EAAE,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Action } from './action';
|
|
2
|
+
import { CloseIcon } from './close-icon';
|
|
3
|
+
import { Content } from './content';
|
|
4
|
+
import { Description } from './description';
|
|
5
|
+
import { Footer } from './footer';
|
|
6
|
+
import { Header } from './header';
|
|
7
|
+
import { Popup } from './popup';
|
|
8
|
+
import { Portal } from './portal';
|
|
9
|
+
import { Root } from './root';
|
|
10
|
+
import { Title } from './title';
|
|
11
|
+
import { Trigger } from './trigger';
|
|
12
|
+
export { Action, CloseIcon, Content, Description, Footer, Header, Popup, Portal, Root, Title, Trigger, };
|
|
13
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/drawer/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EACN,MAAM,EACN,SAAS,EACT,OAAO,EACP,WAAW,EACX,MAAM,EACN,MAAM,EACN,KAAK,EACL,MAAM,EACN,IAAI,EACJ,KAAK,EACL,OAAO,GACP,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { PopupProps } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Renders the drawer popup element that contains the drawer content.
|
|
4
|
+
* Uses a portal to render outside the DOM hierarchy.
|
|
5
|
+
*
|
|
6
|
+
* When `portal` is omitted, defaults to `Drawer.Portal`. Portal merging is
|
|
7
|
+
* handled by `renderPortalWithChildren` (shared with other overlay `Popup`s).
|
|
8
|
+
*
|
|
9
|
+
* The popup is a flex column; scroll ownership lives on `Drawer.Content`,
|
|
10
|
+
* which children are expected to render. Without it, long body content will
|
|
11
|
+
* clip instead of scrolling and Base UI's swipe-dismiss-on-scroll-edge
|
|
12
|
+
* logic on up/down drawers cannot engage.
|
|
13
|
+
*/
|
|
14
|
+
declare const Popup: import("react").ForwardRefExoticComponent<PopupProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
15
|
+
export { Popup };
|
|
16
|
+
//# sourceMappingURL=popup.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"popup.d.ts","sourceRoot":"","sources":["../../src/drawer/popup.tsx"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAO1C;;;;;;;;;;;GAWG;AACH,QAAA,MAAM,KAAK,uGA+DR,CAAC;AAEJ,OAAO,EAAE,KAAK,EAAE,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Root element that portals `Drawer` overlay content (`Backdrop`, `Viewport`
|
|
3
|
+
* with the inner `Popup`, etc.) outside the DOM hierarchy. Pass to
|
|
4
|
+
* `Drawer.Popup`'s `portal` prop to customize `container`, `className`,
|
|
5
|
+
* `style`, and other Base UI portal options. When `portal` is omitted,
|
|
6
|
+
* `Drawer.Popup` uses this component with default props.
|
|
7
|
+
*/
|
|
8
|
+
declare const Portal: import("react").ForwardRefExoticComponent<Omit<import("@base-ui/react").DrawerPortalProps & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
9
|
+
export { Portal };
|
|
10
|
+
//# sourceMappingURL=portal.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"portal.d.ts","sourceRoot":"","sources":["../../src/drawer/portal.tsx"],"names":[],"mappings":"AAIA;;;;;;GAMG;AACH,QAAA,MAAM,MAAM,oMAIX,CAAC;AAEF,OAAO,EAAE,MAAM,EAAE,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { RootProps } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* An ARIA-compliant drawer that slides in from a viewport edge, with
|
|
4
|
+
* swipe-to-dismiss gestures.
|
|
5
|
+
*
|
|
6
|
+
* Every drawer must include a `Drawer.Title` component for accessibility — it
|
|
7
|
+
* serves as both the visible heading and the accessible label for the drawer.
|
|
8
|
+
*
|
|
9
|
+
* Always include a visible close affordance, either `Drawer.CloseIcon` or a
|
|
10
|
+
* clear dismissing action button. If your drawer has a "Cancel" button in the
|
|
11
|
+
* footer, the close icon may be redundant and create confusion about what
|
|
12
|
+
* clicking "X" means.
|
|
13
|
+
*
|
|
14
|
+
* Use `Drawer.CloseIcon` for informational drawers where dismissing is safe
|
|
15
|
+
* and expected. For drawers requiring explicit user choice (especially
|
|
16
|
+
* destructive actions), omit the close icon and rely on footer action buttons
|
|
17
|
+
* like "Cancel" and "Confirm" instead.
|
|
18
|
+
*/
|
|
19
|
+
declare function Root({ modal, swipeDirection, children, ...props }: RootProps): import("react").JSX.Element;
|
|
20
|
+
export { Root };
|
|
21
|
+
//# sourceMappingURL=root.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"root.d.ts","sourceRoot":"","sources":["../../src/drawer/root.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEzC;;;;;;;;;;;;;;;;GAgBG;AACH,iBAAS,IAAI,CAAE,EACd,KAAY,EACZ,cAAuB,EACvB,QAAQ,EACR,GAAG,KAAK,EACR,EAAE,SAAS,+BAYX;AAED,OAAO,EAAE,IAAI,EAAE,CAAC"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import type { Meta, StoryObj } from '@storybook/react-vite';
|
|
2
|
+
import * as Drawer from '../index';
|
|
3
|
+
declare const meta: Meta<typeof Drawer.Root>;
|
|
4
|
+
export default meta;
|
|
5
|
+
type Story = StoryObj<typeof Drawer.Root>;
|
|
6
|
+
/**
|
|
7
|
+
* A basic drawer sliding in from the left edge. Use the controls to
|
|
8
|
+
* experiment with `swipeDirection` and `modal`.
|
|
9
|
+
*/
|
|
10
|
+
export declare const _Default: Story;
|
|
11
|
+
/**
|
|
12
|
+
* Four drawers, one for each swipe direction. Each trigger opens a
|
|
13
|
+
* drawer from the corresponding edge.
|
|
14
|
+
*/
|
|
15
|
+
export declare const AllSides: Story;
|
|
16
|
+
/**
|
|
17
|
+
* A controlled drawer where the open state is managed externally.
|
|
18
|
+
*/
|
|
19
|
+
export declare const Controlled: Story;
|
|
20
|
+
/**
|
|
21
|
+
* A non-modal drawer that does not trap focus or lock page scroll.
|
|
22
|
+
* Users can interact with content behind the drawer while it is open.
|
|
23
|
+
*/
|
|
24
|
+
export declare const NonModal: Story;
|
|
25
|
+
/**
|
|
26
|
+
* Popovers in Gutenberg are managed with explicit z-index values, which can
|
|
27
|
+
* create situations where a drawer renders below another popover when you
|
|
28
|
+
* want it above.
|
|
29
|
+
*
|
|
30
|
+
* The `--wp-ui-drawer-z-index` CSS variable controls the z-index of the
|
|
31
|
+
* drawer's backdrop, viewport, and popup. Override it either:
|
|
32
|
+
*
|
|
33
|
+
* - **Globally**, by setting the variable on `:root` or `body` (raises every
|
|
34
|
+
* drawer in the page), or
|
|
35
|
+
* - **Per instance**, by passing a `Drawer.Portal` with a `style` (or
|
|
36
|
+
* `className`) to `Drawer.Popup`'s `portal` prop. The variable cascades
|
|
37
|
+
* from the portal wrapper to everything rendered inside it.
|
|
38
|
+
*
|
|
39
|
+
* This story demonstrates the per-instance approach.
|
|
40
|
+
*/
|
|
41
|
+
export declare const WithCustomZIndex: Story;
|
|
42
|
+
/**
|
|
43
|
+
* Interactive playground to test the `size` prop across all swipe
|
|
44
|
+
* directions. Size controls the width (left/right) or height (up/down).
|
|
45
|
+
*/
|
|
46
|
+
export declare const SizePlayground: Story;
|
|
47
|
+
/**
|
|
48
|
+
* When drawer content overflows the available space, `Drawer.Content`
|
|
49
|
+
* scrolls while `Drawer.Header` and `Drawer.Footer` stay pinned to the
|
|
50
|
+
* popup's edges. Separator lines appear only when there is off-screen
|
|
51
|
+
* content above the header or below the footer.
|
|
52
|
+
*
|
|
53
|
+
* To let the header or footer scroll with the body instead of staying
|
|
54
|
+
* pinned, render it *inside* `Drawer.Content` rather than as a sibling.
|
|
55
|
+
* The inline "Sticky header / Sticky footer" checkboxes toggle exactly
|
|
56
|
+
* that placement at runtime.
|
|
57
|
+
*
|
|
58
|
+
* Use the inline controls to change the popup `size`, `swipeDirection`,
|
|
59
|
+
* and sticky placement. The same controls render both outside and inside
|
|
60
|
+
* the drawer and stay in sync.
|
|
61
|
+
*/
|
|
62
|
+
export declare const Scrollable: Story;
|
|
63
|
+
//# sourceMappingURL=index.story.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.story.d.ts","sourceRoot":"","sources":["../../../src/drawer/stories/index.story.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAI5D,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AAEnC,QAAA,MAAM,IAAI,EAAE,IAAI,CAAE,OAAO,MAAM,CAAC,IAAI,CAqBnC,CAAC;AACF,eAAe,IAAI,CAAC;AAEpB,KAAK,KAAK,GAAG,QAAQ,CAAE,OAAO,MAAM,CAAC,IAAI,CAAE,CAAC;AAE5C;;;GAGG;AACH,eAAO,MAAM,QAAQ,EAAE,KAsBtB,CAAC;AASF;;;GAGG;AACH,eAAO,MAAM,QAAQ,EAAE,KA0CtB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,UAAU,EAAE,KAqCxB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,QAAQ,EAAE,KA4BtB,CAAC;AAyEF;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,gBAAgB,EAAE,KAgC9B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,KA+D5B,CAAC;AA+EF;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,UAAU,EAAE,KAqExB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.test.d.ts","sourceRoot":"","sources":["../../../src/drawer/test/index.test.tsx"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { TitleProps } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Renders the drawer title. This component is required for accessibility
|
|
4
|
+
* and serves as both the visible heading and the accessible label for
|
|
5
|
+
* the drawer.
|
|
6
|
+
*
|
|
7
|
+
* **Required** — every drawer must include a `Drawer.Title`, even if
|
|
8
|
+
* visually hidden. The rendered element is linked to the popup via
|
|
9
|
+
* `aria-labelledby`. Renders an `<h2>` by default.
|
|
10
|
+
*
|
|
11
|
+
* To visually hide the title while keeping it accessible, wrap it with
|
|
12
|
+
* `VisuallyHidden` using the `render` prop:
|
|
13
|
+
*
|
|
14
|
+
* ```jsx
|
|
15
|
+
* <VisuallyHidden render={ <Drawer.Title /> }>
|
|
16
|
+
* Accessible title text
|
|
17
|
+
* </VisuallyHidden>
|
|
18
|
+
* ```
|
|
19
|
+
*/
|
|
20
|
+
declare const Title: import("react").ForwardRefExoticComponent<TitleProps & import("react").RefAttributes<HTMLHeadingElement>>;
|
|
21
|
+
export { Title };
|
|
22
|
+
//# sourceMappingURL=title.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"title.d.ts","sourceRoot":"","sources":["../../src/drawer/title.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAE1C;;;;;;;;;;;;;;;;;GAiBG;AACH,QAAA,MAAM,KAAK,2GAwBV,CAAC;AAEF,OAAO,EAAE,KAAK,EAAE,CAAC"}
|