@ariakit/react-components 0.1.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 +20 -0
- package/dist/button/button.d.ts +2 -0
- package/dist/button/button.js +53 -0
- package/dist/button/button.js.map +1 -0
- package/dist/button-Cp853csH.d.ts +34 -0
- package/dist/button-Cp853csH.d.ts.map +1 -0
- package/dist/checkbox/checkbox-check.d.ts +56 -0
- package/dist/checkbox/checkbox-check.d.ts.map +1 -0
- package/dist/checkbox/checkbox-check.js +77 -0
- package/dist/checkbox/checkbox-check.js.map +1 -0
- package/dist/checkbox/checkbox-checked-context.d.ts +5 -0
- package/dist/checkbox/checkbox-checked-context.d.ts.map +1 -0
- package/dist/checkbox/checkbox-checked-context.js +8 -0
- package/dist/checkbox/checkbox-checked-context.js.map +1 -0
- package/dist/checkbox/checkbox-context.d.ts +24 -0
- package/dist/checkbox/checkbox-context.d.ts.map +1 -0
- package/dist/checkbox/checkbox-context.js +26 -0
- package/dist/checkbox/checkbox-context.js.map +1 -0
- package/dist/checkbox/checkbox-provider.d.ts +35 -0
- package/dist/checkbox/checkbox-provider.d.ts.map +1 -0
- package/dist/checkbox/checkbox-provider.js +15 -0
- package/dist/checkbox/checkbox-provider.js.map +1 -0
- package/dist/checkbox/checkbox-store.d.ts +2 -0
- package/dist/checkbox/checkbox-store.js +18 -0
- package/dist/checkbox/checkbox-store.js.map +1 -0
- package/dist/checkbox/checkbox.d.ts +91 -0
- package/dist/checkbox/checkbox.d.ts.map +1 -0
- package/dist/checkbox/checkbox.js +148 -0
- package/dist/checkbox/checkbox.js.map +1 -0
- package/dist/checkbox-store-CYZPR4N4.d.ts +38 -0
- package/dist/checkbox-store-CYZPR4N4.d.ts.map +1 -0
- package/dist/collection/collection-context.d.ts +24 -0
- package/dist/collection/collection-context.d.ts.map +1 -0
- package/dist/collection/collection-context.js +26 -0
- package/dist/collection/collection-context.js.map +1 -0
- package/dist/collection/collection-item-offscreen.d.ts +2 -0
- package/dist/collection/collection-item-offscreen.js +88 -0
- package/dist/collection/collection-item-offscreen.js.map +1 -0
- package/dist/collection/collection-item.d.ts +2 -0
- package/dist/collection/collection-item.js +69 -0
- package/dist/collection/collection-item.js.map +1 -0
- package/dist/collection/collection-provider.d.ts +26 -0
- package/dist/collection/collection-provider.d.ts.map +1 -0
- package/dist/collection/collection-provider.js +15 -0
- package/dist/collection/collection-provider.js.map +1 -0
- package/dist/collection/collection-renderer.d.ts +2 -0
- package/dist/collection/collection-renderer.js +580 -0
- package/dist/collection/collection-renderer.js.map +1 -0
- package/dist/collection/collection-store.d.ts +2 -0
- package/dist/collection/collection-store.js +18 -0
- package/dist/collection/collection-store.js.map +1 -0
- package/dist/collection/collection.d.ts +55 -0
- package/dist/collection/collection.d.ts.map +1 -0
- package/dist/collection/collection.js +55 -0
- package/dist/collection/collection.js.map +1 -0
- package/dist/collection-item-C-g2BwVF.d.ts +84 -0
- package/dist/collection-item-C-g2BwVF.d.ts.map +1 -0
- package/dist/collection-item-offscreen-DyXa-sqj.d.ts +30 -0
- package/dist/collection-item-offscreen-DyXa-sqj.d.ts.map +1 -0
- package/dist/collection-renderer-DsPD9ksD.d.ts +469 -0
- package/dist/collection-renderer-DsPD9ksD.d.ts.map +1 -0
- package/dist/collection-store-CbwzYsWf.d.ts +42 -0
- package/dist/collection-store-CbwzYsWf.d.ts.map +1 -0
- package/dist/combobox/combobox-cancel.d.ts +62 -0
- package/dist/combobox/combobox-cancel.d.ts.map +1 -0
- package/dist/combobox/combobox-cancel.js +98 -0
- package/dist/combobox/combobox-cancel.js.map +1 -0
- package/dist/combobox/combobox-context.d.ts +27 -0
- package/dist/combobox/combobox-context.d.ts.map +1 -0
- package/dist/combobox/combobox-context.js +32 -0
- package/dist/combobox/combobox-context.js.map +1 -0
- package/dist/combobox/combobox-disclosure.d.ts +63 -0
- package/dist/combobox/combobox-disclosure.d.ts.map +1 -0
- package/dist/combobox/combobox-disclosure.js +108 -0
- package/dist/combobox/combobox-disclosure.js.map +1 -0
- package/dist/combobox/combobox-group-label.d.ts +56 -0
- package/dist/combobox/combobox-group-label.d.ts.map +1 -0
- package/dist/combobox/combobox-group-label.js +47 -0
- package/dist/combobox/combobox-group-label.js.map +1 -0
- package/dist/combobox/combobox-group.d.ts +63 -0
- package/dist/combobox/combobox-group.d.ts.map +1 -0
- package/dist/combobox/combobox-group.js +67 -0
- package/dist/combobox/combobox-group.js.map +1 -0
- package/dist/combobox/combobox-item-check.d.ts +61 -0
- package/dist/combobox/combobox-item-check.d.ts.map +1 -0
- package/dist/combobox/combobox-item-check.js +62 -0
- package/dist/combobox/combobox-item-check.js.map +1 -0
- package/dist/combobox/combobox-item-offscreen.d.ts +34 -0
- package/dist/combobox/combobox-item-offscreen.d.ts.map +1 -0
- package/dist/combobox/combobox-item-offscreen.js +53 -0
- package/dist/combobox/combobox-item-offscreen.js.map +1 -0
- package/dist/combobox/combobox-item-value.d.ts +103 -0
- package/dist/combobox/combobox-item-value.d.ts.map +1 -0
- package/dist/combobox/combobox-item-value.js +143 -0
- package/dist/combobox/combobox-item-value.js.map +1 -0
- package/dist/combobox/combobox-item.d.ts +146 -0
- package/dist/combobox/combobox-item.d.ts.map +1 -0
- package/dist/combobox/combobox-item.js +157 -0
- package/dist/combobox/combobox-item.js.map +1 -0
- package/dist/combobox/combobox-label.d.ts +50 -0
- package/dist/combobox/combobox-label.d.ts.map +1 -0
- package/dist/combobox/combobox-label.js +51 -0
- package/dist/combobox/combobox-label.js.map +1 -0
- package/dist/combobox/combobox-list.d.ts +55 -0
- package/dist/combobox/combobox-list.d.ts.map +1 -0
- package/dist/combobox/combobox-list.js +106 -0
- package/dist/combobox/combobox-list.js.map +1 -0
- package/dist/combobox/combobox-popover.d.ts +46 -0
- package/dist/combobox/combobox-popover.d.ts.map +1 -0
- package/dist/combobox/combobox-popover.js +115 -0
- package/dist/combobox/combobox-popover.js.map +1 -0
- package/dist/combobox/combobox-provider.d.ts +30 -0
- package/dist/combobox/combobox-provider.d.ts.map +1 -0
- package/dist/combobox/combobox-provider.js +15 -0
- package/dist/combobox/combobox-provider.js.map +1 -0
- package/dist/combobox/combobox-row.d.ts +66 -0
- package/dist/combobox/combobox-row.d.ts.map +1 -0
- package/dist/combobox/combobox-row.js +70 -0
- package/dist/combobox/combobox-row.js.map +1 -0
- package/dist/combobox/combobox-separator.d.ts +61 -0
- package/dist/combobox/combobox-separator.d.ts.map +1 -0
- package/dist/combobox/combobox-separator.js +60 -0
- package/dist/combobox/combobox-separator.js.map +1 -0
- package/dist/combobox/combobox-store.d.ts +2 -0
- package/dist/combobox/combobox-store.js +33 -0
- package/dist/combobox/combobox-store.js.map +1 -0
- package/dist/combobox/combobox-value.d.ts +49 -0
- package/dist/combobox/combobox-value.d.ts.map +1 -0
- package/dist/combobox/combobox-value.js +40 -0
- package/dist/combobox/combobox-value.js.map +1 -0
- package/dist/combobox/combobox.d.ts +268 -0
- package/dist/combobox/combobox.d.ts.map +1 -0
- package/dist/combobox/combobox.js +399 -0
- package/dist/combobox/combobox.js.map +1 -0
- package/dist/combobox-store-DEVQ45mZ.d.ts +80 -0
- package/dist/combobox-store-DEVQ45mZ.d.ts.map +1 -0
- package/dist/command/command.d.ts +2 -0
- package/dist/command/command.js +130 -0
- package/dist/command/command.js.map +1 -0
- package/dist/command-DckndCUK.d.ts +59 -0
- package/dist/command-DckndCUK.d.ts.map +1 -0
- package/dist/composite/composite-container.d.ts +59 -0
- package/dist/composite/composite-container.d.ts.map +1 -0
- package/dist/composite/composite-container.js +164 -0
- package/dist/composite/composite-container.js.map +1 -0
- package/dist/composite/composite-context.d.ts +34 -0
- package/dist/composite/composite-context.d.ts.map +1 -0
- package/dist/composite/composite-context.js +30 -0
- package/dist/composite/composite-context.js.map +1 -0
- package/dist/composite/composite-group-label.d.ts +55 -0
- package/dist/composite/composite-group-label.d.ts.map +1 -0
- package/dist/composite/composite-group-label.js +46 -0
- package/dist/composite/composite-group-label.js.map +1 -0
- package/dist/composite/composite-group.d.ts +60 -0
- package/dist/composite/composite-group.d.ts.map +1 -0
- package/dist/composite/composite-group.js +51 -0
- package/dist/composite/composite-group.js.map +1 -0
- package/dist/composite/composite-hover.d.ts +2 -0
- package/dist/composite/composite-hover.js +114 -0
- package/dist/composite/composite-hover.js.map +1 -0
- package/dist/composite/composite-input.d.ts +55 -0
- package/dist/composite/composite-input.d.ts.map +1 -0
- package/dist/composite/composite-input.js +91 -0
- package/dist/composite/composite-input.js.map +1 -0
- package/dist/composite/composite-item-offscreen.d.ts +39 -0
- package/dist/composite/composite-item-offscreen.d.ts.map +1 -0
- package/dist/composite/composite-item-offscreen.js +72 -0
- package/dist/composite/composite-item-offscreen.js.map +1 -0
- package/dist/composite/composite-item.d.ts +2 -0
- package/dist/composite/composite-item.js +290 -0
- package/dist/composite/composite-item.js.map +1 -0
- package/dist/composite/composite-overflow-disclosure.d.ts +53 -0
- package/dist/composite/composite-overflow-disclosure.d.ts.map +1 -0
- package/dist/composite/composite-overflow-disclosure.js +84 -0
- package/dist/composite/composite-overflow-disclosure.js.map +1 -0
- package/dist/composite/composite-overflow-store.d.ts +38 -0
- package/dist/composite/composite-overflow-store.d.ts.map +1 -0
- package/dist/composite/composite-overflow-store.js +36 -0
- package/dist/composite/composite-overflow-store.js.map +1 -0
- package/dist/composite/composite-overflow.d.ts +54 -0
- package/dist/composite/composite-overflow.d.ts.map +1 -0
- package/dist/composite/composite-overflow.js +82 -0
- package/dist/composite/composite-overflow.js.map +1 -0
- package/dist/composite/composite-provider.d.ts +28 -0
- package/dist/composite/composite-provider.d.ts.map +1 -0
- package/dist/composite/composite-provider.js +15 -0
- package/dist/composite/composite-provider.js.map +1 -0
- package/dist/composite/composite-renderer.d.ts +329 -0
- package/dist/composite/composite-renderer.d.ts.map +1 -0
- package/dist/composite/composite-renderer.js +121 -0
- package/dist/composite/composite-renderer.js.map +1 -0
- package/dist/composite/composite-row.d.ts +67 -0
- package/dist/composite/composite-row.d.ts.map +1 -0
- package/dist/composite/composite-row.js +86 -0
- package/dist/composite/composite-row.js.map +1 -0
- package/dist/composite/composite-separator.d.ts +61 -0
- package/dist/composite/composite-separator.d.ts.map +1 -0
- package/dist/composite/composite-separator.js +55 -0
- package/dist/composite/composite-separator.js.map +1 -0
- package/dist/composite/composite-store.d.ts +2 -0
- package/dist/composite/composite-store.js +33 -0
- package/dist/composite/composite-store.js.map +1 -0
- package/dist/composite/composite-typeahead.d.ts +2 -0
- package/dist/composite/composite-typeahead.js +126 -0
- package/dist/composite/composite-typeahead.js.map +1 -0
- package/dist/composite/composite.d.ts +2 -0
- package/dist/composite/composite.js +273 -0
- package/dist/composite/composite.js.map +1 -0
- package/dist/composite/utils.d.ts +52 -0
- package/dist/composite/utils.d.ts.map +1 -0
- package/dist/composite/utils.js +93 -0
- package/dist/composite/utils.js.map +1 -0
- package/dist/composite-DLvyFHMq.d.ts +124 -0
- package/dist/composite-DLvyFHMq.d.ts.map +1 -0
- package/dist/composite-hover-C7ul163w.d.ts +103 -0
- package/dist/composite-hover-C7ul163w.d.ts.map +1 -0
- package/dist/composite-item-B4WTelVz.d.ts +141 -0
- package/dist/composite-item-B4WTelVz.d.ts.map +1 -0
- package/dist/composite-store-DyJc-XRA.d.ts +43 -0
- package/dist/composite-store-DyJc-XRA.d.ts.map +1 -0
- package/dist/composite-typeahead-DDhpyKqm.d.ts +63 -0
- package/dist/composite-typeahead-DDhpyKqm.d.ts.map +1 -0
- package/dist/dialog/dialog-backdrop.d.ts +16 -0
- package/dist/dialog/dialog-backdrop.d.ts.map +1 -0
- package/dist/dialog/dialog-backdrop.js +58 -0
- package/dist/dialog/dialog-backdrop.js.map +1 -0
- package/dist/dialog/dialog-context.d.ts +27 -0
- package/dist/dialog/dialog-context.d.ts.map +1 -0
- package/dist/dialog/dialog-context.js +30 -0
- package/dist/dialog/dialog-context.js.map +1 -0
- package/dist/dialog/dialog-description.d.ts +2 -0
- package/dist/dialog/dialog-description.js +53 -0
- package/dist/dialog/dialog-description.js.map +1 -0
- package/dist/dialog/dialog-disclosure.d.ts +2 -0
- package/dist/dialog/dialog-disclosure.js +52 -0
- package/dist/dialog/dialog-disclosure.js.map +1 -0
- package/dist/dialog/dialog-dismiss.d.ts +2 -0
- package/dist/dialog/dialog-dismiss.js +80 -0
- package/dist/dialog/dialog-dismiss.js.map +1 -0
- package/dist/dialog/dialog-heading.d.ts +2 -0
- package/dist/dialog/dialog-heading.js +54 -0
- package/dist/dialog/dialog-heading.js.map +1 -0
- package/dist/dialog/dialog-provider.d.ts +22 -0
- package/dist/dialog/dialog-provider.d.ts.map +1 -0
- package/dist/dialog/dialog-provider.js +26 -0
- package/dist/dialog/dialog-provider.js.map +1 -0
- package/dist/dialog/dialog-store.d.ts +2 -0
- package/dist/dialog/dialog-store.js +28 -0
- package/dist/dialog/dialog-store.js.map +1 -0
- package/dist/dialog/dialog.d.ts +2 -0
- package/dist/dialog/dialog.js +429 -0
- package/dist/dialog/dialog.js.map +1 -0
- package/dist/dialog/utils/disable-accessibility-tree-outside.d.ts +7 -0
- package/dist/dialog/utils/disable-accessibility-tree-outside.d.ts.map +1 -0
- package/dist/dialog/utils/disable-accessibility-tree-outside.js +24 -0
- package/dist/dialog/utils/disable-accessibility-tree-outside.js.map +1 -0
- package/dist/dialog/utils/disable-tree.d.ts +9 -0
- package/dist/dialog/utils/disable-tree.d.ts.map +1 -0
- package/dist/dialog/utils/disable-tree.js +48 -0
- package/dist/dialog/utils/disable-tree.js.map +1 -0
- package/dist/dialog/utils/is-backdrop.d.ts +5 -0
- package/dist/dialog/utils/is-backdrop.d.ts.map +1 -0
- package/dist/dialog/utils/is-backdrop.js +15 -0
- package/dist/dialog/utils/is-backdrop.js.map +1 -0
- package/dist/dialog/utils/is-focus-trap.d.ts +5 -0
- package/dist/dialog/utils/is-focus-trap.d.ts.map +1 -0
- package/dist/dialog/utils/is-focus-trap.js +14 -0
- package/dist/dialog/utils/is-focus-trap.js.map +1 -0
- package/dist/dialog/utils/mark-tree-outside.d.ts +9 -0
- package/dist/dialog/utils/mark-tree-outside.d.ts.map +1 -0
- package/dist/dialog/utils/mark-tree-outside.js +44 -0
- package/dist/dialog/utils/mark-tree-outside.js.map +1 -0
- package/dist/dialog/utils/orchestrate.d.ts +9 -0
- package/dist/dialog/utils/orchestrate.d.ts.map +1 -0
- package/dist/dialog/utils/orchestrate.js +77 -0
- package/dist/dialog/utils/orchestrate.js.map +1 -0
- package/dist/dialog/utils/prepend-hidden-dismiss.d.ts +5 -0
- package/dist/dialog/utils/prepend-hidden-dismiss.d.ts.map +1 -0
- package/dist/dialog/utils/prepend-hidden-dismiss.js +31 -0
- package/dist/dialog/utils/prepend-hidden-dismiss.js.map +1 -0
- package/dist/dialog/utils/supports-inert.d.ts +5 -0
- package/dist/dialog/utils/supports-inert.d.ts.map +1 -0
- package/dist/dialog/utils/supports-inert.js +9 -0
- package/dist/dialog/utils/supports-inert.js.map +1 -0
- package/dist/dialog/utils/use-hide-on-interact-outside.d.ts +9 -0
- package/dist/dialog/utils/use-hide-on-interact-outside.d.ts.map +1 -0
- package/dist/dialog/utils/use-hide-on-interact-outside.js +123 -0
- package/dist/dialog/utils/use-hide-on-interact-outside.js.map +1 -0
- package/dist/dialog/utils/use-nested-dialogs.d.ts +11 -0
- package/dist/dialog/utils/use-nested-dialogs.d.ts.map +1 -0
- package/dist/dialog/utils/use-nested-dialogs.js +40 -0
- package/dist/dialog/utils/use-nested-dialogs.js.map +1 -0
- package/dist/dialog/utils/use-prevent-body-scroll.d.ts +5 -0
- package/dist/dialog/utils/use-prevent-body-scroll.d.ts.map +1 -0
- package/dist/dialog/utils/use-prevent-body-scroll.js +60 -0
- package/dist/dialog/utils/use-prevent-body-scroll.js.map +1 -0
- package/dist/dialog/utils/use-previous-mouse-down-ref.d.ts +5 -0
- package/dist/dialog/utils/use-previous-mouse-down-ref.d.ts.map +1 -0
- package/dist/dialog/utils/use-previous-mouse-down-ref.js +22 -0
- package/dist/dialog/utils/use-previous-mouse-down-ref.js.map +1 -0
- package/dist/dialog/utils/use-root-dialog.d.ts +16 -0
- package/dist/dialog/utils/use-root-dialog.d.ts.map +1 -0
- package/dist/dialog/utils/use-root-dialog.js +47 -0
- package/dist/dialog/utils/use-root-dialog.js.map +1 -0
- package/dist/dialog/utils/walk-tree-outside.d.ts +8 -0
- package/dist/dialog/utils/walk-tree-outside.d.ts.map +1 -0
- package/dist/dialog/utils/walk-tree-outside.js +58 -0
- package/dist/dialog/utils/walk-tree-outside.js.map +1 -0
- package/dist/dialog-C__C-zX2.d.ts +267 -0
- package/dist/dialog-C__C-zX2.d.ts.map +1 -0
- package/dist/dialog-description-BCZJ1Kyd.d.ts +48 -0
- package/dist/dialog-description-BCZJ1Kyd.d.ts.map +1 -0
- package/dist/dialog-disclosure-DLD10zlb.d.ts +47 -0
- package/dist/dialog-disclosure-DLD10zlb.d.ts.map +1 -0
- package/dist/dialog-dismiss-CnwEbzc6.d.ts +48 -0
- package/dist/dialog-dismiss-CnwEbzc6.d.ts.map +1 -0
- package/dist/dialog-heading-DQvnOfZH.d.ts +49 -0
- package/dist/dialog-heading-DQvnOfZH.d.ts.map +1 -0
- package/dist/dialog-store-Cjt12T_Y.d.ts +29 -0
- package/dist/dialog-store-Cjt12T_Y.d.ts.map +1 -0
- package/dist/disclosure/disclosure-content.d.ts +2 -0
- package/dist/disclosure/disclosure-content.js +171 -0
- package/dist/disclosure/disclosure-content.js.map +1 -0
- package/dist/disclosure/disclosure-context.d.ts +24 -0
- package/dist/disclosure/disclosure-context.d.ts.map +1 -0
- package/dist/disclosure/disclosure-context.js +26 -0
- package/dist/disclosure/disclosure-context.js.map +1 -0
- package/dist/disclosure/disclosure-provider.d.ts +23 -0
- package/dist/disclosure/disclosure-provider.d.ts.map +1 -0
- package/dist/disclosure/disclosure-provider.js +27 -0
- package/dist/disclosure/disclosure-provider.js.map +1 -0
- package/dist/disclosure/disclosure-store.d.ts +2 -0
- package/dist/disclosure/disclosure-store.js +32 -0
- package/dist/disclosure/disclosure-store.js.map +1 -0
- package/dist/disclosure/disclosure.d.ts +2 -0
- package/dist/disclosure/disclosure.js +83 -0
- package/dist/disclosure/disclosure.js.map +1 -0
- package/dist/disclosure-CQ37hPVP.d.ts +60 -0
- package/dist/disclosure-CQ37hPVP.d.ts.map +1 -0
- package/dist/disclosure-content-BbPkZgAc.d.ts +88 -0
- package/dist/disclosure-content-BbPkZgAc.d.ts.map +1 -0
- package/dist/disclosure-store-BsaBaRKv.d.ts +58 -0
- package/dist/disclosure-store-BsaBaRKv.d.ts.map +1 -0
- package/dist/focus-trap/focus-trap-region.d.ts +42 -0
- package/dist/focus-trap/focus-trap-region.d.ts.map +1 -0
- package/dist/focus-trap/focus-trap-region.js +69 -0
- package/dist/focus-trap/focus-trap-region.js.map +1 -0
- package/dist/focus-trap/focus-trap.d.ts +31 -0
- package/dist/focus-trap/focus-trap.d.ts.map +1 -0
- package/dist/focus-trap/focus-trap.js +45 -0
- package/dist/focus-trap/focus-trap.js.map +1 -0
- package/dist/focusable/focusable-container.d.ts +43 -0
- package/dist/focusable/focusable-container.d.ts.map +1 -0
- package/dist/focusable/focusable-container.js +41 -0
- package/dist/focusable/focusable-container.js.map +1 -0
- package/dist/focusable/focusable-context.d.ts +5 -0
- package/dist/focusable/focusable-context.d.ts.map +1 -0
- package/dist/focusable/focusable-context.js +8 -0
- package/dist/focusable/focusable-context.js.map +1 -0
- package/dist/focusable/focusable.d.ts +2 -0
- package/dist/focusable/focusable.js +273 -0
- package/dist/focusable/focusable.js.map +1 -0
- package/dist/focusable-B00tOxtB.d.ts +142 -0
- package/dist/focusable-B00tOxtB.d.ts.map +1 -0
- package/dist/form/form-checkbox.d.ts +50 -0
- package/dist/form/form-checkbox.d.ts.map +1 -0
- package/dist/form/form-checkbox.js +73 -0
- package/dist/form/form-checkbox.js.map +1 -0
- package/dist/form/form-context.d.ts +24 -0
- package/dist/form/form-context.d.ts.map +1 -0
- package/dist/form/form-context.js +27 -0
- package/dist/form/form-context.js.map +1 -0
- package/dist/form/form-control.d.ts +100 -0
- package/dist/form/form-control.d.ts.map +1 -0
- package/dist/form/form-control.js +139 -0
- package/dist/form/form-control.js.map +1 -0
- package/dist/form/form-description.d.ts +73 -0
- package/dist/form/form-description.d.ts.map +1 -0
- package/dist/form/form-description.js +83 -0
- package/dist/form/form-description.js.map +1 -0
- package/dist/form/form-error.d.ts +82 -0
- package/dist/form/form-error.d.ts.map +1 -0
- package/dist/form/form-error.js +102 -0
- package/dist/form/form-error.js.map +1 -0
- package/dist/form/form-field.d.ts +73 -0
- package/dist/form/form-field.d.ts.map +1 -0
- package/dist/form/form-field.js +74 -0
- package/dist/form/form-field.js.map +1 -0
- package/dist/form/form-group-label.d.ts +62 -0
- package/dist/form/form-group-label.d.ts.map +1 -0
- package/dist/form/form-group-label.js +54 -0
- package/dist/form/form-group-label.js.map +1 -0
- package/dist/form/form-group.d.ts +64 -0
- package/dist/form/form-group.d.ts.map +1 -0
- package/dist/form/form-group.js +56 -0
- package/dist/form/form-group.js.map +1 -0
- package/dist/form/form-input.d.ts +50 -0
- package/dist/form/form-input.d.ts.map +1 -0
- package/dist/form/form-input.js +74 -0
- package/dist/form/form-input.js.map +1 -0
- package/dist/form/form-label.d.ts +77 -0
- package/dist/form/form-label.d.ts.map +1 -0
- package/dist/form/form-label.js +120 -0
- package/dist/form/form-label.js.map +1 -0
- package/dist/form/form-provider.d.ts +28 -0
- package/dist/form/form-provider.d.ts.map +1 -0
- package/dist/form/form-provider.js +15 -0
- package/dist/form/form-provider.js.map +1 -0
- package/dist/form/form-push.d.ts +102 -0
- package/dist/form/form-push.d.ts.map +1 -0
- package/dist/form/form-push.js +134 -0
- package/dist/form/form-push.js.map +1 -0
- package/dist/form/form-radio-group.d.ts +56 -0
- package/dist/form/form-radio-group.d.ts.map +1 -0
- package/dist/form/form-radio-group.js +68 -0
- package/dist/form/form-radio-group.js.map +1 -0
- package/dist/form/form-radio.d.ts +58 -0
- package/dist/form/form-radio.d.ts.map +1 -0
- package/dist/form/form-radio.js +90 -0
- package/dist/form/form-radio.js.map +1 -0
- package/dist/form/form-remove.d.ts +102 -0
- package/dist/form/form-remove.d.ts.map +1 -0
- package/dist/form/form-remove.js +116 -0
- package/dist/form/form-remove.js.map +1 -0
- package/dist/form/form-reset.d.ts +51 -0
- package/dist/form/form-reset.d.ts.map +1 -0
- package/dist/form/form-reset.js +54 -0
- package/dist/form/form-reset.js.map +1 -0
- package/dist/form/form-store.d.ts +2 -0
- package/dist/form/form-store.js +41 -0
- package/dist/form/form-store.js.map +1 -0
- package/dist/form/form-submit.d.ts +57 -0
- package/dist/form/form-submit.d.ts.map +1 -0
- package/dist/form/form-submit.js +59 -0
- package/dist/form/form-submit.js.map +1 -0
- package/dist/form/form.d.ts +101 -0
- package/dist/form/form.d.ts.map +1 -0
- package/dist/form/form.js +146 -0
- package/dist/form/form.js.map +1 -0
- package/dist/form-store-C4Kf5QHm.d.ts +120 -0
- package/dist/form-store-C4Kf5QHm.d.ts.map +1 -0
- package/dist/group/group-label-context.d.ts +7 -0
- package/dist/group/group-label-context.d.ts.map +1 -0
- package/dist/group/group-label-context.js +8 -0
- package/dist/group/group-label-context.js.map +1 -0
- package/dist/group/group-label.d.ts +2 -0
- package/dist/group/group-label.js +52 -0
- package/dist/group/group-label.js.map +1 -0
- package/dist/group/group.d.ts +2 -0
- package/dist/group/group.js +47 -0
- package/dist/group/group.js.map +1 -0
- package/dist/group-CamegDJA.d.ts +32 -0
- package/dist/group-CamegDJA.d.ts.map +1 -0
- package/dist/group-label-C16IDs1b.d.ts +37 -0
- package/dist/group-label-C16IDs1b.d.ts.map +1 -0
- package/dist/heading/heading-context.d.ts +7 -0
- package/dist/heading/heading-context.d.ts.map +1 -0
- package/dist/heading/heading-context.js +8 -0
- package/dist/heading/heading-context.js.map +1 -0
- package/dist/heading/heading-level.d.ts +35 -0
- package/dist/heading/heading-level.d.ts.map +1 -0
- package/dist/heading/heading-level.js +33 -0
- package/dist/heading/heading-level.js.map +1 -0
- package/dist/heading/heading.d.ts +2 -0
- package/dist/heading/heading.js +56 -0
- package/dist/heading/heading.js.map +1 -0
- package/dist/heading/utils.d.ts +2 -0
- package/dist/heading/utils.js +1 -0
- package/dist/heading-zY9g_9K-.d.ts +42 -0
- package/dist/heading-zY9g_9K-.d.ts.map +1 -0
- package/dist/hovercard/hovercard-anchor.d.ts +59 -0
- package/dist/hovercard/hovercard-anchor.d.ts.map +1 -0
- package/dist/hovercard/hovercard-anchor.js +106 -0
- package/dist/hovercard/hovercard-anchor.js.map +1 -0
- package/dist/hovercard/hovercard-arrow.d.ts +54 -0
- package/dist/hovercard/hovercard-arrow.d.ts.map +1 -0
- package/dist/hovercard/hovercard-arrow.js +51 -0
- package/dist/hovercard/hovercard-arrow.js.map +1 -0
- package/dist/hovercard/hovercard-context.d.ts +24 -0
- package/dist/hovercard/hovercard-context.d.ts.map +1 -0
- package/dist/hovercard/hovercard-context.js +27 -0
- package/dist/hovercard/hovercard-context.js.map +1 -0
- package/dist/hovercard/hovercard-description.d.ts +51 -0
- package/dist/hovercard/hovercard-description.d.ts.map +1 -0
- package/dist/hovercard/hovercard-description.js +42 -0
- package/dist/hovercard/hovercard-description.js.map +1 -0
- package/dist/hovercard/hovercard-disclosure.d.ts +51 -0
- package/dist/hovercard/hovercard-disclosure.d.ts.map +1 -0
- package/dist/hovercard/hovercard-disclosure.js +122 -0
- package/dist/hovercard/hovercard-disclosure.js.map +1 -0
- package/dist/hovercard/hovercard-dismiss.d.ts +50 -0
- package/dist/hovercard/hovercard-dismiss.d.ts.map +1 -0
- package/dist/hovercard/hovercard-dismiss.js +47 -0
- package/dist/hovercard/hovercard-dismiss.js.map +1 -0
- package/dist/hovercard/hovercard-heading.d.ts +51 -0
- package/dist/hovercard/hovercard-heading.d.ts.map +1 -0
- package/dist/hovercard/hovercard-heading.js +42 -0
- package/dist/hovercard/hovercard-heading.js.map +1 -0
- package/dist/hovercard/hovercard-provider.d.ts +23 -0
- package/dist/hovercard/hovercard-provider.d.ts.map +1 -0
- package/dist/hovercard/hovercard-provider.js +27 -0
- package/dist/hovercard/hovercard-provider.js.map +1 -0
- package/dist/hovercard/hovercard-store.d.ts +2 -0
- package/dist/hovercard/hovercard-store.js +31 -0
- package/dist/hovercard/hovercard-store.js.map +1 -0
- package/dist/hovercard/hovercard.d.ts +80 -0
- package/dist/hovercard/hovercard.d.ts.map +1 -0
- package/dist/hovercard/hovercard.js +240 -0
- package/dist/hovercard/hovercard.js.map +1 -0
- package/dist/hovercard/utils/debug-polygon.d.ts +7 -0
- package/dist/hovercard/utils/debug-polygon.d.ts.map +1 -0
- package/dist/hovercard/utils/debug-polygon.js +33 -0
- package/dist/hovercard/utils/debug-polygon.js.map +1 -0
- package/dist/hovercard/utils/polygon.d.ts +9 -0
- package/dist/hovercard/utils/polygon.d.ts.map +1 -0
- package/dist/hovercard/utils/polygon.js +70 -0
- package/dist/hovercard/utils/polygon.js.map +1 -0
- package/dist/hovercard-store-gIeoQEn_.d.ts +30 -0
- package/dist/hovercard-store-gIeoQEn_.d.ts.map +1 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +7 -0
- package/dist/index.js.map +1 -0
- package/dist/menu/menu-arrow.d.ts +52 -0
- package/dist/menu/menu-arrow.d.ts.map +1 -0
- package/dist/menu/menu-arrow.js +49 -0
- package/dist/menu/menu-arrow.js.map +1 -0
- package/dist/menu/menu-bar-provider.d.ts +35 -0
- package/dist/menu/menu-bar-provider.d.ts.map +1 -0
- package/dist/menu/menu-bar-provider.js +42 -0
- package/dist/menu/menu-bar-provider.js.map +1 -0
- package/dist/menu/menu-bar-store.d.ts +25 -0
- package/dist/menu/menu-bar-store.d.ts.map +1 -0
- package/dist/menu/menu-bar-store.js +28 -0
- package/dist/menu/menu-bar-store.js.map +1 -0
- package/dist/menu/menu-bar.d.ts +61 -0
- package/dist/menu/menu-bar.d.ts.map +1 -0
- package/dist/menu/menu-bar.js +66 -0
- package/dist/menu/menu-bar.js.map +1 -0
- package/dist/menu/menu-button-arrow.d.ts +65 -0
- package/dist/menu/menu-button-arrow.d.ts.map +1 -0
- package/dist/menu/menu-button-arrow.js +62 -0
- package/dist/menu/menu-button-arrow.js.map +1 -0
- package/dist/menu/menu-button.d.ts +67 -0
- package/dist/menu/menu-button.d.ts.map +1 -0
- package/dist/menu/menu-button.js +183 -0
- package/dist/menu/menu-button.js.map +1 -0
- package/dist/menu/menu-context.d.ts +47 -0
- package/dist/menu/menu-context.d.ts.map +1 -0
- package/dist/menu/menu-context.js +52 -0
- package/dist/menu/menu-context.js.map +1 -0
- package/dist/menu/menu-description.d.ts +50 -0
- package/dist/menu/menu-description.d.ts.map +1 -0
- package/dist/menu/menu-description.js +42 -0
- package/dist/menu/menu-description.js.map +1 -0
- package/dist/menu/menu-dismiss.d.ts +49 -0
- package/dist/menu/menu-dismiss.d.ts.map +1 -0
- package/dist/menu/menu-dismiss.js +47 -0
- package/dist/menu/menu-dismiss.js.map +1 -0
- package/dist/menu/menu-group-label.d.ts +55 -0
- package/dist/menu/menu-group-label.d.ts.map +1 -0
- package/dist/menu/menu-group-label.js +47 -0
- package/dist/menu/menu-group-label.js.map +1 -0
- package/dist/menu/menu-group.d.ts +61 -0
- package/dist/menu/menu-group.d.ts.map +1 -0
- package/dist/menu/menu-group.js +53 -0
- package/dist/menu/menu-group.js.map +1 -0
- package/dist/menu/menu-heading.d.ts +50 -0
- package/dist/menu/menu-heading.d.ts.map +1 -0
- package/dist/menu/menu-heading.js +42 -0
- package/dist/menu/menu-heading.js.map +1 -0
- package/dist/menu/menu-item-check.d.ts +58 -0
- package/dist/menu/menu-item-check.d.ts.map +1 -0
- package/dist/menu/menu-item-check.js +60 -0
- package/dist/menu/menu-item-check.js.map +1 -0
- package/dist/menu/menu-item-checkbox.d.ts +104 -0
- package/dist/menu/menu-item-checkbox.d.ts.map +1 -0
- package/dist/menu/menu-item-checkbox.js +151 -0
- package/dist/menu/menu-item-checkbox.js.map +1 -0
- package/dist/menu/menu-item-radio.d.ts +91 -0
- package/dist/menu/menu-item-radio.d.ts.map +1 -0
- package/dist/menu/menu-item-radio.js +121 -0
- package/dist/menu/menu-item-radio.js.map +1 -0
- package/dist/menu/menu-item.d.ts +75 -0
- package/dist/menu/menu-item.d.ts.map +1 -0
- package/dist/menu/menu-item.js +122 -0
- package/dist/menu/menu-item.js.map +1 -0
- package/dist/menu/menu-list.d.ts +59 -0
- package/dist/menu/menu-list.d.ts.map +1 -0
- package/dist/menu/menu-list.js +168 -0
- package/dist/menu/menu-list.js.map +1 -0
- package/dist/menu/menu-provider.d.ts +29 -0
- package/dist/menu/menu-provider.d.ts.map +1 -0
- package/dist/menu/menu-provider.js +15 -0
- package/dist/menu/menu-provider.js.map +1 -0
- package/dist/menu/menu-separator.d.ts +59 -0
- package/dist/menu/menu-separator.d.ts.map +1 -0
- package/dist/menu/menu-separator.js +57 -0
- package/dist/menu/menu-separator.js.map +1 -0
- package/dist/menu/menu-store.d.ts +2 -0
- package/dist/menu/menu-store.js +40 -0
- package/dist/menu/menu-store.js.map +1 -0
- package/dist/menu/menu.d.ts +49 -0
- package/dist/menu/menu.d.ts.map +1 -0
- package/dist/menu/menu.js +169 -0
- package/dist/menu/menu.js.map +1 -0
- package/dist/menu-store-0CKKmNek.d.ts +83 -0
- package/dist/menu-store-0CKKmNek.d.ts.map +1 -0
- package/dist/menubar/menubar-context.d.ts +25 -0
- package/dist/menubar/menubar-context.d.ts.map +1 -0
- package/dist/menubar/menubar-context.js +29 -0
- package/dist/menubar/menubar-context.js.map +1 -0
- package/dist/menubar/menubar-provider.d.ts +37 -0
- package/dist/menubar/menubar-provider.d.ts.map +1 -0
- package/dist/menubar/menubar-provider.js +41 -0
- package/dist/menubar/menubar-provider.js.map +1 -0
- package/dist/menubar/menubar-store.d.ts +2 -0
- package/dist/menubar/menubar-store.js +27 -0
- package/dist/menubar/menubar-store.js.map +1 -0
- package/dist/menubar/menubar.d.ts +71 -0
- package/dist/menubar/menubar.d.ts.map +1 -0
- package/dist/menubar/menubar.js +88 -0
- package/dist/menubar/menubar.js.map +1 -0
- package/dist/menubar-store-3h0eNIbS.d.ts +26 -0
- package/dist/menubar-store-3h0eNIbS.d.ts.map +1 -0
- package/dist/popover/popover-anchor.d.ts +2 -0
- package/dist/popover/popover-anchor.js +45 -0
- package/dist/popover/popover-anchor.js.map +1 -0
- package/dist/popover/popover-arrow-path.d.ts +5 -0
- package/dist/popover/popover-arrow-path.d.ts.map +1 -0
- package/dist/popover/popover-arrow-path.js +7 -0
- package/dist/popover/popover-arrow-path.js.map +1 -0
- package/dist/popover/popover-arrow.d.ts +65 -0
- package/dist/popover/popover-arrow.d.ts.map +1 -0
- package/dist/popover/popover-arrow.js +160 -0
- package/dist/popover/popover-arrow.js.map +1 -0
- package/dist/popover/popover-context.d.ts +24 -0
- package/dist/popover/popover-context.d.ts.map +1 -0
- package/dist/popover/popover-context.js +27 -0
- package/dist/popover/popover-context.js.map +1 -0
- package/dist/popover/popover-description.d.ts +2 -0
- package/dist/popover/popover-description.js +42 -0
- package/dist/popover/popover-description.js.map +1 -0
- package/dist/popover/popover-disclosure-arrow.d.ts +62 -0
- package/dist/popover/popover-disclosure-arrow.d.ts.map +1 -0
- package/dist/popover/popover-disclosure-arrow.js +81 -0
- package/dist/popover/popover-disclosure-arrow.js.map +1 -0
- package/dist/popover/popover-disclosure.d.ts +38 -0
- package/dist/popover/popover-disclosure.d.ts.map +1 -0
- package/dist/popover/popover-disclosure.js +66 -0
- package/dist/popover/popover-disclosure.js.map +1 -0
- package/dist/popover/popover-dismiss.d.ts +2 -0
- package/dist/popover/popover-dismiss.js +47 -0
- package/dist/popover/popover-dismiss.js.map +1 -0
- package/dist/popover/popover-heading.d.ts +2 -0
- package/dist/popover/popover-heading.js +42 -0
- package/dist/popover/popover-heading.js.map +1 -0
- package/dist/popover/popover-provider.d.ts +23 -0
- package/dist/popover/popover-provider.d.ts.map +1 -0
- package/dist/popover/popover-provider.js +27 -0
- package/dist/popover/popover-provider.js.map +1 -0
- package/dist/popover/popover-store.d.ts +2 -0
- package/dist/popover/popover-store.js +30 -0
- package/dist/popover/popover-store.js.map +1 -0
- package/dist/popover/popover.d.ts +2 -0
- package/dist/popover/popover.js +312 -0
- package/dist/popover/popover.js.map +1 -0
- package/dist/popover-CCqiRKqg.d.ts +181 -0
- package/dist/popover-CCqiRKqg.d.ts.map +1 -0
- package/dist/popover-anchor-PgfeXyzs.d.ts +47 -0
- package/dist/popover-anchor-PgfeXyzs.d.ts.map +1 -0
- package/dist/popover-description-DU753dah.d.ts +51 -0
- package/dist/popover-description-DU753dah.d.ts.map +1 -0
- package/dist/popover-dismiss-DPeI6Zse.d.ts +50 -0
- package/dist/popover-dismiss-DPeI6Zse.d.ts.map +1 -0
- package/dist/popover-heading-DGsr6D5W.d.ts +51 -0
- package/dist/popover-heading-DGsr6D5W.d.ts.map +1 -0
- package/dist/popover-store-Bc-l5VVO.d.ts +29 -0
- package/dist/popover-store-Bc-l5VVO.d.ts.map +1 -0
- package/dist/portal/portal-context.d.ts +21 -0
- package/dist/portal/portal-context.d.ts.map +1 -0
- package/dist/portal/portal-context.js +24 -0
- package/dist/portal/portal-context.js.map +1 -0
- package/dist/portal/portal.d.ts +2 -0
- package/dist/portal/portal.js +242 -0
- package/dist/portal/portal.js.map +1 -0
- package/dist/portal-CMBWiayp.d.ts +149 -0
- package/dist/portal-CMBWiayp.d.ts.map +1 -0
- package/dist/radio/radio-context.d.ts +24 -0
- package/dist/radio/radio-context.d.ts.map +1 -0
- package/dist/radio/radio-context.js +27 -0
- package/dist/radio/radio-context.js.map +1 -0
- package/dist/radio/radio-group.d.ts +51 -0
- package/dist/radio/radio-group.d.ts.map +1 -0
- package/dist/radio/radio-group.js +60 -0
- package/dist/radio/radio-group.js.map +1 -0
- package/dist/radio/radio-provider.d.ts +25 -0
- package/dist/radio/radio-provider.d.ts.map +1 -0
- package/dist/radio/radio-provider.js +29 -0
- package/dist/radio/radio-provider.js.map +1 -0
- package/dist/radio/radio-store.d.ts +2 -0
- package/dist/radio/radio-store.js +33 -0
- package/dist/radio/radio-store.js.map +1 -0
- package/dist/radio/radio.d.ts +76 -0
- package/dist/radio/radio.d.ts.map +1 -0
- package/dist/radio/radio.js +143 -0
- package/dist/radio/radio.js.map +1 -0
- package/dist/radio-store-DOZ_1RSk.d.ts +36 -0
- package/dist/radio-store-DOZ_1RSk.d.ts.map +1 -0
- package/dist/role/role.d.ts +34 -0
- package/dist/role/role.d.ts.map +1 -0
- package/dist/role/role.js +68 -0
- package/dist/role/role.js.map +1 -0
- package/dist/select/select-arrow.d.ts +60 -0
- package/dist/select/select-arrow.d.ts.map +1 -0
- package/dist/select/select-arrow.js +58 -0
- package/dist/select/select-arrow.js.map +1 -0
- package/dist/select/select-context.d.ts +27 -0
- package/dist/select/select-context.d.ts.map +1 -0
- package/dist/select/select-context.js +31 -0
- package/dist/select/select-context.js.map +1 -0
- package/dist/select/select-dismiss.d.ts +59 -0
- package/dist/select/select-dismiss.d.ts.map +1 -0
- package/dist/select/select-dismiss.js +56 -0
- package/dist/select/select-dismiss.js.map +1 -0
- package/dist/select/select-group-label.d.ts +61 -0
- package/dist/select/select-group-label.d.ts.map +1 -0
- package/dist/select/select-group-label.js +52 -0
- package/dist/select/select-group-label.js.map +1 -0
- package/dist/select/select-group.d.ts +62 -0
- package/dist/select/select-group.d.ts.map +1 -0
- package/dist/select/select-group.js +53 -0
- package/dist/select/select-group.js.map +1 -0
- package/dist/select/select-heading.d.ts +59 -0
- package/dist/select/select-heading.d.ts.map +1 -0
- package/dist/select/select-heading.js +62 -0
- package/dist/select/select-heading.js.map +1 -0
- package/dist/select/select-item-check.d.ts +59 -0
- package/dist/select/select-item-check.d.ts.map +1 -0
- package/dist/select/select-item-check.js +61 -0
- package/dist/select/select-item-check.js.map +1 -0
- package/dist/select/select-item-offscreen.d.ts +37 -0
- package/dist/select/select-item-offscreen.d.ts.map +1 -0
- package/dist/select/select-item-offscreen.js +38 -0
- package/dist/select/select-item-offscreen.js.map +1 -0
- package/dist/select/select-item.d.ts +108 -0
- package/dist/select/select-item.d.ts.map +1 -0
- package/dist/select/select-item.js +143 -0
- package/dist/select/select-item.js.map +1 -0
- package/dist/select/select-label.d.ts +55 -0
- package/dist/select/select-label.d.ts.map +1 -0
- package/dist/select/select-label.js +70 -0
- package/dist/select/select-label.js.map +1 -0
- package/dist/select/select-list.d.ts +80 -0
- package/dist/select/select-list.d.ts.map +1 -0
- package/dist/select/select-list.js +143 -0
- package/dist/select/select-list.js.map +1 -0
- package/dist/select/select-popover.d.ts +44 -0
- package/dist/select/select-popover.d.ts.map +1 -0
- package/dist/select/select-popover.js +59 -0
- package/dist/select/select-popover.js.map +1 -0
- package/dist/select/select-provider.d.ts +30 -0
- package/dist/select/select-provider.d.ts.map +1 -0
- package/dist/select/select-provider.js +15 -0
- package/dist/select/select-provider.js.map +1 -0
- package/dist/select/select-renderer.d.ts +44 -0
- package/dist/select/select-renderer.d.ts.map +1 -0
- package/dist/select/select-renderer.js +61 -0
- package/dist/select/select-renderer.js.map +1 -0
- package/dist/select/select-row.d.ts +63 -0
- package/dist/select/select-row.d.ts.map +1 -0
- package/dist/select/select-row.js +67 -0
- package/dist/select/select-row.js.map +1 -0
- package/dist/select/select-separator.d.ts +60 -0
- package/dist/select/select-separator.d.ts.map +1 -0
- package/dist/select/select-separator.js +57 -0
- package/dist/select/select-separator.js.map +1 -0
- package/dist/select/select-store.d.ts +2 -0
- package/dist/select/select-store.js +31 -0
- package/dist/select/select-store.js.map +1 -0
- package/dist/select/select-value.d.ts +84 -0
- package/dist/select/select-value.d.ts.map +1 -0
- package/dist/select/select-value.js +18 -0
- package/dist/select/select-value.js.map +1 -0
- package/dist/select/select.d.ts +89 -0
- package/dist/select/select.d.ts.map +1 -0
- package/dist/select/select.js +211 -0
- package/dist/select/select.js.map +1 -0
- package/dist/select-store-BsLTAyKh.d.ts +68 -0
- package/dist/select-store-BsLTAyKh.d.ts.map +1 -0
- package/dist/separator/separator.d.ts +2 -0
- package/dist/separator/separator.js +36 -0
- package/dist/separator/separator.js.map +1 -0
- package/dist/separator--ozQfMcK.d.ts +36 -0
- package/dist/separator--ozQfMcK.d.ts.map +1 -0
- package/dist/store.d.ts +1 -0
- package/dist/store.js +2 -0
- package/dist/tab/tab-context.d.ts +24 -0
- package/dist/tab/tab-context.d.ts.map +1 -0
- package/dist/tab/tab-context.js +27 -0
- package/dist/tab/tab-context.js.map +1 -0
- package/dist/tab/tab-list.d.ts +55 -0
- package/dist/tab/tab-list.d.ts.map +1 -0
- package/dist/tab/tab-list.js +71 -0
- package/dist/tab/tab-list.js.map +1 -0
- package/dist/tab/tab-panel.d.ts +122 -0
- package/dist/tab/tab-panel.d.ts.map +1 -0
- package/dist/tab/tab-panel.js +169 -0
- package/dist/tab/tab-panel.js.map +1 -0
- package/dist/tab/tab-provider.d.ts +26 -0
- package/dist/tab/tab-provider.d.ts.map +1 -0
- package/dist/tab/tab-provider.js +30 -0
- package/dist/tab/tab-provider.js.map +1 -0
- package/dist/tab/tab-store.d.ts +77 -0
- package/dist/tab/tab-store.d.ts.map +1 -0
- package/dist/tab/tab-store.js +55 -0
- package/dist/tab/tab-store.js.map +1 -0
- package/dist/tab/tab.d.ts +56 -0
- package/dist/tab/tab.d.ts.map +1 -0
- package/dist/tab/tab.js +115 -0
- package/dist/tab/tab.js.map +1 -0
- package/dist/tag/tag-context.d.ts +26 -0
- package/dist/tag/tag-context.d.ts.map +1 -0
- package/dist/tag/tag-context.js +30 -0
- package/dist/tag/tag-context.js.map +1 -0
- package/dist/tag/tag-input.d.ts +126 -0
- package/dist/tag/tag-input.d.ts.map +1 -0
- package/dist/tag/tag-input.js +162 -0
- package/dist/tag/tag-input.js.map +1 -0
- package/dist/tag/tag-list-label.d.ts +59 -0
- package/dist/tag/tag-list-label.d.ts.map +1 -0
- package/dist/tag/tag-list-label.js +62 -0
- package/dist/tag/tag-list-label.js.map +1 -0
- package/dist/tag/tag-list.d.ts +62 -0
- package/dist/tag/tag-list.d.ts.map +1 -0
- package/dist/tag/tag-list.js +127 -0
- package/dist/tag/tag-list.js.map +1 -0
- package/dist/tag/tag-provider.d.ts +34 -0
- package/dist/tag/tag-provider.d.ts.map +1 -0
- package/dist/tag/tag-provider.js +38 -0
- package/dist/tag/tag-provider.js.map +1 -0
- package/dist/tag/tag-remove.d.ts +71 -0
- package/dist/tag/tag-remove.d.ts.map +1 -0
- package/dist/tag/tag-remove.js +102 -0
- package/dist/tag/tag-remove.js.map +1 -0
- package/dist/tag/tag-store.d.ts +2 -0
- package/dist/tag/tag-store.js +38 -0
- package/dist/tag/tag-store.js.map +1 -0
- package/dist/tag/tag-value.d.ts +49 -0
- package/dist/tag/tag-value.d.ts.map +1 -0
- package/dist/tag/tag-value.js +40 -0
- package/dist/tag/tag-value.js.map +1 -0
- package/dist/tag/tag-values.d.ts +60 -0
- package/dist/tag/tag-values.d.ts.map +1 -0
- package/dist/tag/tag-values.js +50 -0
- package/dist/tag/tag-values.js.map +1 -0
- package/dist/tag/tag.d.ts +78 -0
- package/dist/tag/tag.d.ts.map +1 -0
- package/dist/tag/tag.js +114 -0
- package/dist/tag/tag.js.map +1 -0
- package/dist/tag/utils.d.ts +5 -0
- package/dist/tag/utils.d.ts.map +1 -0
- package/dist/tag/utils.js +15 -0
- package/dist/tag/utils.js.map +1 -0
- package/dist/tag-store-xANOvuGo.d.ts +49 -0
- package/dist/tag-store-xANOvuGo.d.ts.map +1 -0
- package/dist/toolbar/toolbar-container.d.ts +41 -0
- package/dist/toolbar/toolbar-container.d.ts.map +1 -0
- package/dist/toolbar/toolbar-container.js +53 -0
- package/dist/toolbar/toolbar-container.js.map +1 -0
- package/dist/toolbar/toolbar-context.d.ts +24 -0
- package/dist/toolbar/toolbar-context.d.ts.map +1 -0
- package/dist/toolbar/toolbar-context.js +27 -0
- package/dist/toolbar/toolbar-context.js.map +1 -0
- package/dist/toolbar/toolbar-input.d.ts +39 -0
- package/dist/toolbar/toolbar-input.d.ts.map +1 -0
- package/dist/toolbar/toolbar-input.js +47 -0
- package/dist/toolbar/toolbar-input.js.map +1 -0
- package/dist/toolbar/toolbar-item.d.ts +47 -0
- package/dist/toolbar/toolbar-item.d.ts.map +1 -0
- package/dist/toolbar/toolbar-item.js +45 -0
- package/dist/toolbar/toolbar-item.js.map +1 -0
- package/dist/toolbar/toolbar-provider.d.ts +26 -0
- package/dist/toolbar/toolbar-provider.d.ts.map +1 -0
- package/dist/toolbar/toolbar-provider.js +30 -0
- package/dist/toolbar/toolbar-provider.js.map +1 -0
- package/dist/toolbar/toolbar-separator.d.ts +51 -0
- package/dist/toolbar/toolbar-separator.d.ts.map +1 -0
- package/dist/toolbar/toolbar-separator.js +49 -0
- package/dist/toolbar/toolbar-separator.js.map +1 -0
- package/dist/toolbar/toolbar-store.d.ts +2 -0
- package/dist/toolbar/toolbar-store.js +31 -0
- package/dist/toolbar/toolbar-store.js.map +1 -0
- package/dist/toolbar/toolbar.d.ts +50 -0
- package/dist/toolbar/toolbar.d.ts.map +1 -0
- package/dist/toolbar/toolbar.js +66 -0
- package/dist/toolbar/toolbar.js.map +1 -0
- package/dist/toolbar-store-Cs-9cGHx.d.ts +30 -0
- package/dist/toolbar-store-Cs-9cGHx.d.ts.map +1 -0
- package/dist/tooltip/tooltip-anchor.d.ts +53 -0
- package/dist/tooltip/tooltip-anchor.d.ts.map +1 -0
- package/dist/tooltip/tooltip-anchor.js +121 -0
- package/dist/tooltip/tooltip-anchor.js.map +1 -0
- package/dist/tooltip/tooltip-arrow.d.ts +54 -0
- package/dist/tooltip/tooltip-arrow.d.ts.map +1 -0
- package/dist/tooltip/tooltip-arrow.js +54 -0
- package/dist/tooltip/tooltip-arrow.js.map +1 -0
- package/dist/tooltip/tooltip-context.d.ts +24 -0
- package/dist/tooltip/tooltip-context.d.ts.map +1 -0
- package/dist/tooltip/tooltip-context.js +27 -0
- package/dist/tooltip/tooltip-context.js.map +1 -0
- package/dist/tooltip/tooltip-provider.d.ts +23 -0
- package/dist/tooltip/tooltip-provider.d.ts.map +1 -0
- package/dist/tooltip/tooltip-provider.js +27 -0
- package/dist/tooltip/tooltip-provider.js.map +1 -0
- package/dist/tooltip/tooltip-store.d.ts +30 -0
- package/dist/tooltip/tooltip-store.d.ts.map +1 -0
- package/dist/tooltip/tooltip-store.js +30 -0
- package/dist/tooltip/tooltip-store.js.map +1 -0
- package/dist/tooltip/tooltip.d.ts +61 -0
- package/dist/tooltip/tooltip.d.ts.map +1 -0
- package/dist/tooltip/tooltip.js +81 -0
- package/dist/tooltip/tooltip.js.map +1 -0
- package/dist/utils-DUF1aMov.d.ts +5 -0
- package/dist/utils-DUF1aMov.d.ts.map +1 -0
- package/dist/visually-hidden/visually-hidden.d.ts +37 -0
- package/dist/visually-hidden/visually-hidden.d.ts.map +1 -0
- package/dist/visually-hidden/visually-hidden.js +53 -0
- package/dist/visually-hidden/visually-hidden.js.map +1 -0
- package/license +21 -0
- package/package.json +936 -0
- package/readme.md +19 -0
- package/src/button/button.tsx +76 -0
- package/src/checkbox/checkbox-check.tsx +116 -0
- package/src/checkbox/checkbox-checked-context.tsx +3 -0
- package/src/checkbox/checkbox-context.tsx +27 -0
- package/src/checkbox/checkbox-provider.tsx +53 -0
- package/src/checkbox/checkbox-store.ts +76 -0
- package/src/checkbox/checkbox.tsx +271 -0
- package/src/collection/collection-context.tsx +27 -0
- package/src/collection/collection-item-offscreen.tsx +157 -0
- package/src/collection/collection-item.tsx +136 -0
- package/src/collection/collection-provider.tsx +47 -0
- package/src/collection/collection-renderer.tsx +994 -0
- package/src/collection/collection-store.ts +84 -0
- package/src/collection/collection.tsx +93 -0
- package/src/combobox/combobox-cancel.tsx +153 -0
- package/src/combobox/combobox-context.tsx +49 -0
- package/src/combobox/combobox-disclosure.tsx +162 -0
- package/src/combobox/combobox-group-label.tsx +74 -0
- package/src/combobox/combobox-group.tsx +100 -0
- package/src/combobox/combobox-item-check.tsx +83 -0
- package/src/combobox/combobox-item-offscreen.tsx +87 -0
- package/src/combobox/combobox-item-value.tsx +231 -0
- package/src/combobox/combobox-item.tsx +363 -0
- package/src/combobox/combobox-label.tsx +89 -0
- package/src/combobox/combobox-list.tsx +176 -0
- package/src/combobox/combobox-popover.tsx +179 -0
- package/src/combobox/combobox-provider.tsx +50 -0
- package/src/combobox/combobox-row.tsx +102 -0
- package/src/combobox/combobox-separator.tsx +90 -0
- package/src/combobox/combobox-store.ts +168 -0
- package/src/combobox/combobox-value.tsx +63 -0
- package/src/combobox/combobox.tsx +900 -0
- package/src/command/command.tsx +215 -0
- package/src/composite/composite-container.tsx +278 -0
- package/src/composite/composite-context.tsx +53 -0
- package/src/composite/composite-group-label.tsx +73 -0
- package/src/composite/composite-group.tsx +77 -0
- package/src/composite/composite-hover.tsx +230 -0
- package/src/composite/composite-input.tsx +147 -0
- package/src/composite/composite-item-offscreen.tsx +112 -0
- package/src/composite/composite-item.tsx +567 -0
- package/src/composite/composite-overflow-disclosure.ts +117 -0
- package/src/composite/composite-overflow-store.ts +61 -0
- package/src/composite/composite-overflow.tsx +123 -0
- package/src/composite/composite-provider.tsx +47 -0
- package/src/composite/composite-renderer.tsx +231 -0
- package/src/composite/composite-row.tsx +133 -0
- package/src/composite/composite-separator.tsx +96 -0
- package/src/composite/composite-store.ts +101 -0
- package/src/composite/composite-typeahead.tsx +246 -0
- package/src/composite/composite.tsx +592 -0
- package/src/composite/utils.ts +121 -0
- package/src/dialog/dialog-backdrop.tsx +71 -0
- package/src/dialog/dialog-context.tsx +43 -0
- package/src/dialog/dialog-description.tsx +86 -0
- package/src/dialog/dialog-disclosure.tsx +84 -0
- package/src/dialog/dialog-dismiss.tsx +113 -0
- package/src/dialog/dialog-heading.tsx +88 -0
- package/src/dialog/dialog-provider.tsx +28 -0
- package/src/dialog/dialog-store.ts +51 -0
- package/src/dialog/dialog.tsx +866 -0
- package/src/dialog/utils/disable-accessibility-tree-outside.ts +30 -0
- package/src/dialog/utils/disable-tree.ts +81 -0
- package/src/dialog/utils/is-backdrop.ts +12 -0
- package/src/dialog/utils/is-focus-trap.ts +11 -0
- package/src/dialog/utils/mark-tree-outside.ts +67 -0
- package/src/dialog/utils/orchestrate.ts +123 -0
- package/src/dialog/utils/prepend-hidden-dismiss.ts +35 -0
- package/src/dialog/utils/supports-inert.ts +5 -0
- package/src/dialog/utils/use-hide-on-interact-outside.ts +181 -0
- package/src/dialog/utils/use-nested-dialogs.tsx +55 -0
- package/src/dialog/utils/use-prevent-body-scroll.ts +86 -0
- package/src/dialog/utils/use-previous-mouse-down-ref.ts +19 -0
- package/src/dialog/utils/use-root-dialog.ts +49 -0
- package/src/dialog/utils/walk-tree-outside.ts +85 -0
- package/src/disclosure/disclosure-content.tsx +344 -0
- package/src/disclosure/disclosure-context.tsx +27 -0
- package/src/disclosure/disclosure-provider.tsx +29 -0
- package/src/disclosure/disclosure-store.ts +85 -0
- package/src/disclosure/disclosure.tsx +144 -0
- package/src/focus-trap/focus-trap-region.tsx +112 -0
- package/src/focus-trap/focus-trap.tsx +60 -0
- package/src/focusable/focusable-container.tsx +75 -0
- package/src/focusable/focusable-context.tsx +3 -0
- package/src/focusable/focusable.tsx +559 -0
- package/src/form/form-checkbox.tsx +106 -0
- package/src/form/form-context.tsx +34 -0
- package/src/form/form-control.tsx +227 -0
- package/src/form/form-description.tsx +142 -0
- package/src/form/form-error.tsx +156 -0
- package/src/form/form-field.tsx +94 -0
- package/src/form/form-group-label.tsx +79 -0
- package/src/form/form-group.tsx +79 -0
- package/src/form/form-input.tsx +104 -0
- package/src/form/form-label.tsx +192 -0
- package/src/form/form-provider.tsx +49 -0
- package/src/form/form-push.tsx +200 -0
- package/src/form/form-radio-group.tsx +93 -0
- package/src/form/form-radio.tsx +122 -0
- package/src/form/form-remove.tsx +198 -0
- package/src/form/form-reset.tsx +85 -0
- package/src/form/form-store.ts +195 -0
- package/src/form/form-submit.tsx +93 -0
- package/src/form/form.tsx +249 -0
- package/src/group/group-label-context.tsx +6 -0
- package/src/group/group-label.tsx +75 -0
- package/src/group/group.tsx +69 -0
- package/src/heading/heading-context.tsx +4 -0
- package/src/heading/heading-level.tsx +42 -0
- package/src/heading/heading.tsx +81 -0
- package/src/heading/utils.ts +1 -0
- package/src/hovercard/hovercard-anchor.tsx +195 -0
- package/src/hovercard/hovercard-arrow.tsx +74 -0
- package/src/hovercard/hovercard-context.tsx +34 -0
- package/src/hovercard/hovercard-description.tsx +69 -0
- package/src/hovercard/hovercard-disclosure.tsx +196 -0
- package/src/hovercard/hovercard-dismiss.tsx +70 -0
- package/src/hovercard/hovercard-heading.tsx +68 -0
- package/src/hovercard/hovercard-provider.tsx +29 -0
- package/src/hovercard/hovercard-store.ts +58 -0
- package/src/hovercard/hovercard.tsx +445 -0
- package/src/hovercard/utils/__tests__/polygon-test.ts +66 -0
- package/src/hovercard/utils/debug-polygon.ts +37 -0
- package/src/hovercard/utils/polygon.ts +96 -0
- package/src/index.ts +1 -0
- package/src/menu/menu-arrow.tsx +69 -0
- package/src/menu/menu-bar-provider.tsx +44 -0
- package/src/menu/menu-bar-store.ts +54 -0
- package/src/menu/menu-bar.tsx +84 -0
- package/src/menu/menu-button-arrow.tsx +85 -0
- package/src/menu/menu-button.tsx +338 -0
- package/src/menu/menu-context.tsx +76 -0
- package/src/menu/menu-description.tsx +67 -0
- package/src/menu/menu-dismiss.tsx +69 -0
- package/src/menu/menu-group-label.tsx +72 -0
- package/src/menu/menu-group.tsx +76 -0
- package/src/menu/menu-heading.tsx +67 -0
- package/src/menu/menu-item-check.tsx +79 -0
- package/src/menu/menu-item-checkbox.tsx +227 -0
- package/src/menu/menu-item-radio.tsx +198 -0
- package/src/menu/menu-item.tsx +223 -0
- package/src/menu/menu-list.tsx +230 -0
- package/src/menu/menu-provider.tsx +42 -0
- package/src/menu/menu-separator.tsx +79 -0
- package/src/menu/menu-store.ts +155 -0
- package/src/menu/menu.tsx +274 -0
- package/src/menubar/menubar-context.tsx +39 -0
- package/src/menubar/menubar-provider.tsx +43 -0
- package/src/menubar/menubar-store.ts +48 -0
- package/src/menubar/menubar.tsx +145 -0
- package/src/popover/popover-anchor.tsx +74 -0
- package/src/popover/popover-arrow-path.ts +21 -0
- package/src/popover/popover-arrow.tsx +228 -0
- package/src/popover/popover-context.tsx +34 -0
- package/src/popover/popover-description.tsx +69 -0
- package/src/popover/popover-disclosure-arrow.tsx +135 -0
- package/src/popover/popover-disclosure.tsx +101 -0
- package/src/popover/popover-dismiss.tsx +70 -0
- package/src/popover/popover-heading.tsx +68 -0
- package/src/popover/popover-provider.tsx +29 -0
- package/src/popover/popover-store.ts +53 -0
- package/src/popover/popover.tsx +649 -0
- package/src/portal/portal-context.tsx +19 -0
- package/src/portal/portal.tsx +493 -0
- package/src/radio/radio-context.tsx +34 -0
- package/src/radio/radio-group.tsx +103 -0
- package/src/radio/radio-provider.tsx +29 -0
- package/src/radio/radio-store.ts +64 -0
- package/src/radio/radio.tsx +242 -0
- package/src/role/role.tsx +88 -0
- package/src/select/select-arrow.tsx +80 -0
- package/src/select/select-context.tsx +46 -0
- package/src/select/select-dismiss.tsx +79 -0
- package/src/select/select-group-label.tsx +78 -0
- package/src/select/select-group.tsx +79 -0
- package/src/select/select-heading.tsx +98 -0
- package/src/select/select-item-check.tsx +80 -0
- package/src/select/select-item-offscreen.tsx +59 -0
- package/src/select/select-item.tsx +294 -0
- package/src/select/select-label.tsx +117 -0
- package/src/select/select-list.tsx +251 -0
- package/src/select/select-popover.tsx +67 -0
- package/src/select/select-provider.tsx +45 -0
- package/src/select/select-renderer.tsx +160 -0
- package/src/select/select-row.tsx +97 -0
- package/src/select/select-separator.tsx +80 -0
- package/src/select/select-store.ts +139 -0
- package/src/select/select-value.tsx +108 -0
- package/src/select/select.tsx +371 -0
- package/src/separator/separator.tsx +54 -0
- package/src/store.ts +1 -0
- package/src/tab/tab-context.tsx +34 -0
- package/src/tab/tab-list.tsx +120 -0
- package/src/tab/tab-panel.tsx +314 -0
- package/src/tab/tab-provider.tsx +30 -0
- package/src/tab/tab-store.ts +124 -0
- package/src/tab/tab.tsx +208 -0
- package/src/tag/tag-context.tsx +40 -0
- package/src/tag/tag-input.tsx +321 -0
- package/src/tag/tag-list-label.tsx +102 -0
- package/src/tag/tag-list.tsx +210 -0
- package/src/tag/tag-provider.tsx +38 -0
- package/src/tag/tag-remove.tsx +174 -0
- package/src/tag/tag-store.ts +72 -0
- package/src/tag/tag-value.tsx +63 -0
- package/src/tag/tag-values.tsx +74 -0
- package/src/tag/tag.tsx +199 -0
- package/src/tag/utils.ts +12 -0
- package/src/toolbar/toolbar-container.tsx +67 -0
- package/src/toolbar/toolbar-context.tsx +34 -0
- package/src/toolbar/toolbar-input.tsx +64 -0
- package/src/toolbar/toolbar-item.tsx +72 -0
- package/src/toolbar/toolbar-provider.tsx +32 -0
- package/src/toolbar/toolbar-separator.tsx +71 -0
- package/src/toolbar/toolbar-store.ts +52 -0
- package/src/toolbar/toolbar.tsx +119 -0
- package/src/tooltip/tooltip-anchor.tsx +210 -0
- package/src/tooltip/tooltip-arrow.tsx +84 -0
- package/src/tooltip/tooltip-context.tsx +34 -0
- package/src/tooltip/tooltip-provider.tsx +29 -0
- package/src/tooltip/tooltip-store.ts +53 -0
- package/src/tooltip/tooltip.tsx +153 -0
- package/src/visually-hidden/visually-hidden.tsx +67 -0
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { t as PopoverStore } from "./popover-store-Bc-l5VVO.js";
|
|
2
|
+
import { n as DialogDismissOptions } from "./dialog-dismiss-CnwEbzc6.js";
|
|
3
|
+
import { Props } from "@ariakit/react-utils";
|
|
4
|
+
import { ElementType } from "react";
|
|
5
|
+
|
|
6
|
+
//#region src/popover/popover-dismiss.d.ts
|
|
7
|
+
declare const TagName = "button";
|
|
8
|
+
type TagName = typeof TagName;
|
|
9
|
+
/**
|
|
10
|
+
* Returns props to create a `PopoverDismiss` component.
|
|
11
|
+
* @see https://ariakit.com/components/popover
|
|
12
|
+
* @example
|
|
13
|
+
* ```jsx
|
|
14
|
+
* const store = usePopoverStore();
|
|
15
|
+
* const props = usePopoverDismiss({ store });
|
|
16
|
+
* <Popover store={store}>
|
|
17
|
+
* <Role {...props} />
|
|
18
|
+
* </Popover>
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
declare const usePopoverDismiss: import("@ariakit/react-utils").Hook<"button", PopoverDismissOptions<"button">>;
|
|
22
|
+
/**
|
|
23
|
+
* Renders a button that hides a
|
|
24
|
+
* [`Popover`](https://ariakit.com/reference/popover) component when clicked.
|
|
25
|
+
* @see https://ariakit.com/components/popover
|
|
26
|
+
* @example
|
|
27
|
+
* ```jsx {3}
|
|
28
|
+
* <PopoverProvider>
|
|
29
|
+
* <Popover>
|
|
30
|
+
* <PopoverDismiss />
|
|
31
|
+
* </Popover>
|
|
32
|
+
* </PopoverProvider>
|
|
33
|
+
* ```
|
|
34
|
+
*/
|
|
35
|
+
declare const PopoverDismiss: (props: PopoverDismissProps) => import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>;
|
|
36
|
+
interface PopoverDismissOptions<T extends ElementType = TagName> extends DialogDismissOptions<T> {
|
|
37
|
+
/**
|
|
38
|
+
* Object returned by the
|
|
39
|
+
* [`usePopoverStore`](https://ariakit.com/reference/use-popover-store) hook.
|
|
40
|
+
* If not provided, the closest
|
|
41
|
+
* [`Popover`](https://ariakit.com/reference/popover) or
|
|
42
|
+
* [`PopoverProvider`](https://ariakit.com/reference/popover-provider)
|
|
43
|
+
* components' context will be used.
|
|
44
|
+
*/
|
|
45
|
+
store?: PopoverStore;
|
|
46
|
+
}
|
|
47
|
+
type PopoverDismissProps<T extends ElementType = TagName> = Props<T, PopoverDismissOptions<T>>;
|
|
48
|
+
//#endregion
|
|
49
|
+
export { usePopoverDismiss as i, PopoverDismissOptions as n, PopoverDismissProps as r, PopoverDismiss as t };
|
|
50
|
+
//# sourceMappingURL=popover-dismiss-DPeI6Zse.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"popover-dismiss-DPeI6Zse.d.ts","names":["Props","ElementType","DialogDismissOptions","PopoverStore","TagName","usePopoverDismiss","PopoverDismissOptions","Hook","PopoverDismiss","PopoverDismissProps","props","ReactElement","JSXElementConstructor","T","store"],"sources":["../src/popover/popover-dismiss.d.ts"],"mappings":";;;;;;cAIcI,OAAAA;AAAAA,KACTA,OAAAA,UAAiBA,OAAO;AAF0B;;;;AAClC;AAAA;;;;AACQ;AAa7B;;AAfuD,cAelCC,iBAAAA,iCAAkDE,IAAAA,WAAeD,qBAAqB;;AAAA;AAc3G;;;;;;;;;AAAqJ;AACrJ;cADqBE,cAAAA,GAAiBE,KAAAA,EAAOD,mBAAmB,qBAAqBE,YAAAA,+BAA2CC,qBAAAA;AAAAA,UAC/GN,qBAAAA,WAAgCL,WAAAA,GAAcG,OAAAA,UAAiBF,oBAAAA,CAAqBW,CAAAA;EAApDZ;;;;;;;;EAS7Ca,KAAAA,GAAQX,YAAAA;AAAAA;AAAAA,KAEAM,mBAAAA,WAA8BR,WAAAA,GAAcG,OAAAA,IAAWJ,KAAAA,CAAMa,CAAAA,EAAGP,qBAAAA,CAAsBO,CAAAA"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { t as PopoverStore } from "./popover-store-Bc-l5VVO.js";
|
|
2
|
+
import { n as DialogHeadingOptions } from "./dialog-heading-DQvnOfZH.js";
|
|
3
|
+
import { Props } from "@ariakit/react-utils";
|
|
4
|
+
import { ElementType } from "react";
|
|
5
|
+
|
|
6
|
+
//#region src/popover/popover-heading.d.ts
|
|
7
|
+
declare const TagName = "h1";
|
|
8
|
+
type TagName = typeof TagName;
|
|
9
|
+
/**
|
|
10
|
+
* Returns props to create a `PopoverHeading` component. This hook must be used
|
|
11
|
+
* in a component that's wrapped with `Popover` so the `aria-labelledby` prop is
|
|
12
|
+
* properly set on the popover element.
|
|
13
|
+
* @see https://ariakit.com/components/popover
|
|
14
|
+
* @example
|
|
15
|
+
* ```jsx
|
|
16
|
+
* // This component must be wrapped with Popover
|
|
17
|
+
* const props = usePopoverHeading();
|
|
18
|
+
* <Role {...props}>Heading</Role>
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
declare const usePopoverHeading: import("@ariakit/react-utils").Hook<"h1", PopoverHeadingOptions<"h1">>;
|
|
22
|
+
/**
|
|
23
|
+
* Renders a heading in a popover. This component must be wrapped with
|
|
24
|
+
* [`Popover`](https://ariakit.com/reference/popover) so the `aria-labelledby`
|
|
25
|
+
* prop is properly set on the popover element.
|
|
26
|
+
* @see https://ariakit.com/components/popover
|
|
27
|
+
* @example
|
|
28
|
+
* ```jsx {3}
|
|
29
|
+
* <PopoverProvider>
|
|
30
|
+
* <Popover>
|
|
31
|
+
* <PopoverHeading>Heading</PopoverHeading>
|
|
32
|
+
* </Popover>
|
|
33
|
+
* </PopoverProvider>
|
|
34
|
+
* ```
|
|
35
|
+
*/
|
|
36
|
+
declare const PopoverHeading: (props: PopoverHeadingProps) => import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>;
|
|
37
|
+
interface PopoverHeadingOptions<T extends ElementType = TagName> extends DialogHeadingOptions<T> {
|
|
38
|
+
/**
|
|
39
|
+
* Object returned by the
|
|
40
|
+
* [`usePopoverStore`](https://ariakit.com/reference/use-popover-store) hook.
|
|
41
|
+
* If not provided, the closest
|
|
42
|
+
* [`Popover`](https://ariakit.com/reference/popover) or
|
|
43
|
+
* [`PopoverProvider`](https://ariakit.com/reference/popover-provider)
|
|
44
|
+
* components' context will be used.
|
|
45
|
+
*/
|
|
46
|
+
store?: PopoverStore;
|
|
47
|
+
}
|
|
48
|
+
type PopoverHeadingProps<T extends ElementType = TagName> = Props<T, PopoverHeadingOptions<T>>;
|
|
49
|
+
//#endregion
|
|
50
|
+
export { usePopoverHeading as i, PopoverHeadingOptions as n, PopoverHeadingProps as r, PopoverHeading as t };
|
|
51
|
+
//# sourceMappingURL=popover-heading-DGsr6D5W.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"popover-heading-DGsr6D5W.d.ts","names":["Props","ElementType","DialogHeadingOptions","PopoverStore","TagName","usePopoverHeading","PopoverHeadingOptions","Hook","PopoverHeading","PopoverHeadingProps","props","ReactElement","JSXElementConstructor","T","store"],"sources":["../src/popover/popover-heading.d.ts"],"mappings":";;;;;;cAIcI,OAAAA;AAAAA,KACTA,OAAAA,UAAiBA,OAAO;AAF0B;;;;AAClC;AAAA;;;;AACQ;AAa7B;;AAfuD,cAelCC,iBAAAA,iCAAkDE,IAAAA,OAAWD,qBAAqB;;AAAA;AAevG;;;;;;;;;AAAqJ;AACrJ;;cADqBE,cAAAA,GAAiBE,KAAAA,EAAOD,mBAAmB,qBAAqBE,YAAAA,+BAA2CC,qBAAAA;AAAAA,UAC/GN,qBAAAA,WAAgCL,WAAAA,GAAcG,OAAAA,UAAiBF,oBAAAA,CAAqBW,CAAAA;EAAtCT;;;;;;;;EAS3DU,KAAAA,GAAQX,YAAAA;AAAAA;AAAAA,KAEAM,mBAAAA,WAA8BR,WAAAA,GAAcG,OAAAA,IAAWJ,KAAAA,CAAMa,CAAAA,EAAGP,qBAAAA,CAAsBO,CAAAA"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { t as DisclosureStore } from "./disclosure-store-BsaBaRKv.js";
|
|
2
|
+
import { a as DialogStoreState, n as DialogStoreFunctions, r as DialogStoreOptions } from "./dialog-store-Cjt12T_Y.js";
|
|
3
|
+
import { Store } from "@ariakit/react-store";
|
|
4
|
+
import * as Core from "@ariakit/components/popover/popover-store";
|
|
5
|
+
|
|
6
|
+
//#region src/popover/popover-store.d.ts
|
|
7
|
+
declare function usePopoverStoreProps<T extends Core.PopoverStore>(store: T, update: () => void, props: PopoverStoreProps): T & {
|
|
8
|
+
disclosure: DisclosureStore | null | undefined;
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* Creates a popover store to control the state of
|
|
12
|
+
* [Popover](https://ariakit.com/components/popover) components.
|
|
13
|
+
* @see https://ariakit.com/components/popover
|
|
14
|
+
* @example
|
|
15
|
+
* ```jsx
|
|
16
|
+
* const popover = usePopoverStore();
|
|
17
|
+
* <PopoverDisclosure store={popover}>Disclosure</PopoverDisclosure>
|
|
18
|
+
* <Popover store={popover}>Popover</Popover>
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
declare function usePopoverStore(props?: PopoverStoreProps): PopoverStore;
|
|
22
|
+
interface PopoverStoreState extends Core.PopoverStoreState, DialogStoreState {}
|
|
23
|
+
interface PopoverStoreFunctions extends Omit<Core.PopoverStoreFunctions, "disclosure">, DialogStoreFunctions {}
|
|
24
|
+
interface PopoverStoreOptions extends Omit<Core.PopoverStoreOptions, "disclosure">, DialogStoreOptions {}
|
|
25
|
+
interface PopoverStoreProps extends PopoverStoreOptions, Omit<Core.PopoverStoreProps, "disclosure"> {}
|
|
26
|
+
interface PopoverStore extends PopoverStoreFunctions, Omit<Store<Core.PopoverStore>, "disclosure"> {}
|
|
27
|
+
//#endregion
|
|
28
|
+
export { PopoverStoreState as a, PopoverStoreProps as i, PopoverStoreFunctions as n, usePopoverStore as o, PopoverStoreOptions as r, usePopoverStoreProps as s, PopoverStore as t };
|
|
29
|
+
//# sourceMappingURL=popover-store-Bc-l5VVO.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"popover-store-Bc-l5VVO.d.ts","names":["Core","Store","DialogStoreFunctions","DialogStoreOptions","DialogStoreState","usePopoverStoreProps","T","PopoverStore","PopoverStoreProps","_$___disclosure_disclosure_store_ts0","DisclosureStore","store","update","props","disclosure","usePopoverStore","PopoverStoreState","PopoverStoreFunctions","Omit","PopoverStoreOptions"],"sources":["../src/popover/popover-store.d.ts"],"mappings":";;;;;;iBAGwBK,oBAAAA,WAA+BL,IAAAA,CAAKO,YAAAA,CAAAA,CAAcI,KAAAA,EAAOL,CAAAA,EAAGM,MAAAA,cAAoBC,KAAAA,EAAOL,iBAAAA,GAAoBF,CAAAA;EAC/HQ,UAAAA,EADgIL,eAAAA;AAAAA;AAApI;;;;;;;;;;;AAAA,iBAcwBM,eAAAA,CAAgBF,KAAAA,GAAQL,iBAAAA,GAAoBD,YAAY;AAAA,UAC/DS,iBAAAA,SAA0BhB,IAAAA,CAAKgB,iBAAAA,EAAmBZ,gBAAgB;AAAA,UAElEa,qBAAAA,SAA8BC,IAAAA,CAAKlB,IAAAA,CAAKiB,qBAAAA,iBAAsCf,oBAAAA;AAAAA,UAE9EiB,mBAAAA,SAA4BD,IAAAA,CAAKlB,IAAAA,CAAKmB,mBAAAA,iBAAoChB,kBAAAA;AAAAA,UAE1EK,iBAAAA,SAA0BW,mBAAAA,EAAqBD,IAAAA,CAAKlB,IAAAA,CAAKQ,iBAAAA;AAAAA,UAEzDD,YAAAA,SAAqBU,qBAAAA,EAAuBC,IAAAA,CAAKjB,KAAAA,CAAMD,IAAAA,CAAKO,YAAAA"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
//#region src/portal/portal-context.d.ts
|
|
2
|
+
/**
|
|
3
|
+
* Stores the element that will contain the portal. By default, it will be the
|
|
4
|
+
* body of the document.
|
|
5
|
+
* @example
|
|
6
|
+
* ```jsx
|
|
7
|
+
* const container = document.getElementById("container");
|
|
8
|
+
*
|
|
9
|
+
* function App() {
|
|
10
|
+
* return (
|
|
11
|
+
* <PortalContext.Provider value={container}>
|
|
12
|
+
* <Portal />
|
|
13
|
+
* </PortalContext.Provider>
|
|
14
|
+
* );
|
|
15
|
+
* }
|
|
16
|
+
* ```
|
|
17
|
+
*/
|
|
18
|
+
declare const PortalContext: import("react").Context<HTMLElement | null>;
|
|
19
|
+
//#endregion
|
|
20
|
+
export { PortalContext };
|
|
21
|
+
//# sourceMappingURL=portal-context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"portal-context.d.ts","names":["PortalContext","HTMLElement","Context"],"sources":["../../src/portal/portal-context.d.ts"],"mappings":";;AAgBA;;;;AAAuE;;;;;;;;;;;cAAlDA,aAAAA,kBAA+BE,OAAAA,CAAQD,WAAW"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { createContext } from "react";
|
|
3
|
+
//#region src/portal/portal-context.tsx
|
|
4
|
+
/**
|
|
5
|
+
* Stores the element that will contain the portal. By default, it will be the
|
|
6
|
+
* body of the document.
|
|
7
|
+
* @example
|
|
8
|
+
* ```jsx
|
|
9
|
+
* const container = document.getElementById("container");
|
|
10
|
+
*
|
|
11
|
+
* function App() {
|
|
12
|
+
* return (
|
|
13
|
+
* <PortalContext.Provider value={container}>
|
|
14
|
+
* <Portal />
|
|
15
|
+
* </PortalContext.Provider>
|
|
16
|
+
* );
|
|
17
|
+
* }
|
|
18
|
+
* ```
|
|
19
|
+
*/
|
|
20
|
+
const PortalContext = createContext(null);
|
|
21
|
+
//#endregion
|
|
22
|
+
export { PortalContext };
|
|
23
|
+
|
|
24
|
+
//# sourceMappingURL=portal-context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"portal-context.js","names":[],"sources":["../../src/portal/portal-context.tsx"],"sourcesContent":["import { createContext } from \"react\";\n\n/**\n * Stores the element that will contain the portal. By default, it will be the\n * body of the document.\n * @example\n * ```jsx\n * const container = document.getElementById(\"container\");\n *\n * function App() {\n * return (\n * <PortalContext.Provider value={container}>\n * <Portal />\n * </PortalContext.Provider>\n * );\n * }\n * ```\n */\nexport const PortalContext = createContext<HTMLElement | null>(null);\n"],"mappings":""}
|
|
@@ -0,0 +1,242 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { FocusTrap } from "../focus-trap/focus-trap.js";
|
|
3
|
+
import { PortalContext } from "./portal-context.js";
|
|
4
|
+
import { createElement, createHook, forwardRef, setRef, useMergeRefs, useSafeLayoutEffect, useWrapElement } from "@ariakit/react-utils";
|
|
5
|
+
import { disableFocusIn, getDocument, getNextTabbable, getPreviousTabbable, isFocusEventOutside, restoreFocusIn } from "@ariakit/utils";
|
|
6
|
+
import { useContext, useEffect, useRef, useState } from "react";
|
|
7
|
+
import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
|
|
8
|
+
import { createPortal } from "react-dom";
|
|
9
|
+
//#region src/portal/portal.tsx
|
|
10
|
+
const TagName = "div";
|
|
11
|
+
function getRootElement(element) {
|
|
12
|
+
const doc = getDocument(element);
|
|
13
|
+
const { fullscreenElement } = doc;
|
|
14
|
+
if (fullscreenElement instanceof HTMLElement) return fullscreenElement;
|
|
15
|
+
return doc.body;
|
|
16
|
+
}
|
|
17
|
+
function getPortalElement(element, portalElement) {
|
|
18
|
+
if (!portalElement) return getDocument(element).createElement("div");
|
|
19
|
+
if (typeof portalElement === "function") return portalElement(element);
|
|
20
|
+
return portalElement;
|
|
21
|
+
}
|
|
22
|
+
function getRandomId(prefix = "id") {
|
|
23
|
+
return `${prefix ? `${prefix}-` : ""}${Math.random().toString(36).slice(2, 8)}`;
|
|
24
|
+
}
|
|
25
|
+
function queueFocus(element) {
|
|
26
|
+
queueMicrotask(() => {
|
|
27
|
+
element?.focus();
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Returns props to create a `Portal` component.
|
|
32
|
+
* @see https://ariakit.com/components/portal
|
|
33
|
+
* @example
|
|
34
|
+
* ```jsx
|
|
35
|
+
* const props = usePortal();
|
|
36
|
+
* <Role {...props}>Content</Role>
|
|
37
|
+
* ```
|
|
38
|
+
*/
|
|
39
|
+
const usePortal = createHook(function usePortal({ preserveTabOrder, preserveTabOrderAnchor, portalElement, portalRef, portal = true, ...props }) {
|
|
40
|
+
const ref = useRef(null);
|
|
41
|
+
const refProp = useMergeRefs(ref, props.ref);
|
|
42
|
+
const context = useContext(PortalContext);
|
|
43
|
+
const [portalNode, setPortalNode] = useState(null);
|
|
44
|
+
const [anchorPortalNode, setAnchorPortalNode] = useState(null);
|
|
45
|
+
const outerBeforeRef = useRef(null);
|
|
46
|
+
const innerBeforeRef = useRef(null);
|
|
47
|
+
const innerAfterRef = useRef(null);
|
|
48
|
+
const outerAfterRef = useRef(null);
|
|
49
|
+
useSafeLayoutEffect(() => {
|
|
50
|
+
const element = ref.current;
|
|
51
|
+
if (!element || !portal) {
|
|
52
|
+
setPortalNode(null);
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
const portalEl = getPortalElement(element, portalElement);
|
|
56
|
+
if (!portalEl) {
|
|
57
|
+
setPortalNode(null);
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
const isPortalInDocument = portalEl.isConnected;
|
|
61
|
+
if (!isPortalInDocument) (context || getRootElement(element)).appendChild(portalEl);
|
|
62
|
+
if (!portalEl.id) portalEl.id = element.id ? `portal/${element.id}` : getRandomId();
|
|
63
|
+
setPortalNode(portalEl);
|
|
64
|
+
setRef(portalRef, portalEl);
|
|
65
|
+
if (isPortalInDocument) return;
|
|
66
|
+
return () => {
|
|
67
|
+
portalEl.remove();
|
|
68
|
+
setRef(portalRef, null);
|
|
69
|
+
};
|
|
70
|
+
}, [
|
|
71
|
+
portal,
|
|
72
|
+
portalElement,
|
|
73
|
+
context,
|
|
74
|
+
portalRef
|
|
75
|
+
]);
|
|
76
|
+
useEffect(() => {
|
|
77
|
+
if (!portalNode) return;
|
|
78
|
+
if (context) return;
|
|
79
|
+
if (portalElement) return;
|
|
80
|
+
const doc = getDocument(portalNode);
|
|
81
|
+
const onFullscreenChange = () => {
|
|
82
|
+
const rootElement = getRootElement(portalNode);
|
|
83
|
+
if (portalNode.parentElement !== rootElement) rootElement.appendChild(portalNode);
|
|
84
|
+
};
|
|
85
|
+
onFullscreenChange();
|
|
86
|
+
doc.addEventListener("fullscreenchange", onFullscreenChange);
|
|
87
|
+
return () => {
|
|
88
|
+
doc.removeEventListener("fullscreenchange", onFullscreenChange);
|
|
89
|
+
};
|
|
90
|
+
}, [
|
|
91
|
+
portalNode,
|
|
92
|
+
context,
|
|
93
|
+
portalElement
|
|
94
|
+
]);
|
|
95
|
+
useSafeLayoutEffect(() => {
|
|
96
|
+
if (!portal) return;
|
|
97
|
+
if (!preserveTabOrder) return;
|
|
98
|
+
if (!preserveTabOrderAnchor) return;
|
|
99
|
+
const element = getDocument(preserveTabOrderAnchor).createElement("span");
|
|
100
|
+
element.style.position = "fixed";
|
|
101
|
+
preserveTabOrderAnchor.insertAdjacentElement("afterend", element);
|
|
102
|
+
setAnchorPortalNode(element);
|
|
103
|
+
return () => {
|
|
104
|
+
element.remove();
|
|
105
|
+
setAnchorPortalNode(null);
|
|
106
|
+
};
|
|
107
|
+
}, [
|
|
108
|
+
portal,
|
|
109
|
+
preserveTabOrder,
|
|
110
|
+
preserveTabOrderAnchor
|
|
111
|
+
]);
|
|
112
|
+
useEffect(() => {
|
|
113
|
+
if (!portalNode) return;
|
|
114
|
+
if (!preserveTabOrder) return;
|
|
115
|
+
let raf = 0;
|
|
116
|
+
const onFocus = (event) => {
|
|
117
|
+
if (!isFocusEventOutside(event)) return;
|
|
118
|
+
const focusing = event.type === "focusin";
|
|
119
|
+
cancelAnimationFrame(raf);
|
|
120
|
+
if (focusing) return restoreFocusIn(portalNode);
|
|
121
|
+
raf = requestAnimationFrame(() => {
|
|
122
|
+
disableFocusIn(portalNode, true);
|
|
123
|
+
});
|
|
124
|
+
};
|
|
125
|
+
portalNode.addEventListener("focusin", onFocus, true);
|
|
126
|
+
portalNode.addEventListener("focusout", onFocus, true);
|
|
127
|
+
return () => {
|
|
128
|
+
cancelAnimationFrame(raf);
|
|
129
|
+
portalNode.removeEventListener("focusin", onFocus, true);
|
|
130
|
+
portalNode.removeEventListener("focusout", onFocus, true);
|
|
131
|
+
};
|
|
132
|
+
}, [portalNode, preserveTabOrder]);
|
|
133
|
+
props = useWrapElement(props, (element) => {
|
|
134
|
+
element = /* @__PURE__ */ jsx(PortalContext.Provider, {
|
|
135
|
+
value: portalNode || context,
|
|
136
|
+
children: element
|
|
137
|
+
});
|
|
138
|
+
if (!portal) return element;
|
|
139
|
+
if (!portalNode) return /* @__PURE__ */ jsx("span", {
|
|
140
|
+
ref: refProp,
|
|
141
|
+
id: props.id,
|
|
142
|
+
style: { position: "fixed" },
|
|
143
|
+
hidden: true
|
|
144
|
+
});
|
|
145
|
+
element = /* @__PURE__ */ jsxs(Fragment$1, { children: [
|
|
146
|
+
preserveTabOrder && portalNode && /* @__PURE__ */ jsx(FocusTrap, {
|
|
147
|
+
ref: innerBeforeRef,
|
|
148
|
+
"data-focus-trap": props.id,
|
|
149
|
+
className: "__focus-trap-inner-before",
|
|
150
|
+
onFocus: (event) => {
|
|
151
|
+
if (isFocusEventOutside(event, portalNode)) queueFocus(getNextTabbable());
|
|
152
|
+
else queueFocus(outerBeforeRef.current);
|
|
153
|
+
}
|
|
154
|
+
}),
|
|
155
|
+
element,
|
|
156
|
+
preserveTabOrder && portalNode && /* @__PURE__ */ jsx(FocusTrap, {
|
|
157
|
+
ref: innerAfterRef,
|
|
158
|
+
"data-focus-trap": props.id,
|
|
159
|
+
className: "__focus-trap-inner-after",
|
|
160
|
+
onFocus: (event) => {
|
|
161
|
+
if (isFocusEventOutside(event, portalNode)) queueFocus(getPreviousTabbable());
|
|
162
|
+
else queueFocus(outerAfterRef.current);
|
|
163
|
+
}
|
|
164
|
+
})
|
|
165
|
+
] });
|
|
166
|
+
if (portalNode) element = createPortal(element, portalNode);
|
|
167
|
+
let preserveTabOrderElement = /* @__PURE__ */ jsxs(Fragment$1, { children: [
|
|
168
|
+
preserveTabOrder && portalNode && /* @__PURE__ */ jsx(FocusTrap, {
|
|
169
|
+
ref: outerBeforeRef,
|
|
170
|
+
"data-focus-trap": props.id,
|
|
171
|
+
className: "__focus-trap-outer-before",
|
|
172
|
+
onFocus: (event) => {
|
|
173
|
+
if (!(event.relatedTarget === outerAfterRef.current) && isFocusEventOutside(event, portalNode)) queueFocus(innerBeforeRef.current);
|
|
174
|
+
else queueFocus(getPreviousTabbable());
|
|
175
|
+
}
|
|
176
|
+
}),
|
|
177
|
+
preserveTabOrder && /* @__PURE__ */ jsx("span", {
|
|
178
|
+
"aria-owns": portalNode?.id,
|
|
179
|
+
style: { position: "fixed" }
|
|
180
|
+
}),
|
|
181
|
+
preserveTabOrder && portalNode && /* @__PURE__ */ jsx(FocusTrap, {
|
|
182
|
+
ref: outerAfterRef,
|
|
183
|
+
"data-focus-trap": props.id,
|
|
184
|
+
className: "__focus-trap-outer-after",
|
|
185
|
+
onFocus: (event) => {
|
|
186
|
+
if (isFocusEventOutside(event, portalNode)) queueFocus(innerAfterRef.current);
|
|
187
|
+
else {
|
|
188
|
+
const nextTabbable = getNextTabbable();
|
|
189
|
+
if (nextTabbable === innerBeforeRef.current) {
|
|
190
|
+
requestAnimationFrame(() => getNextTabbable()?.focus());
|
|
191
|
+
return;
|
|
192
|
+
}
|
|
193
|
+
queueFocus(nextTabbable);
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
})
|
|
197
|
+
] });
|
|
198
|
+
if (anchorPortalNode && preserveTabOrder) preserveTabOrderElement = createPortal(preserveTabOrderElement, anchorPortalNode);
|
|
199
|
+
return /* @__PURE__ */ jsxs(Fragment$1, { children: [preserveTabOrderElement, element] });
|
|
200
|
+
}, [
|
|
201
|
+
portalNode,
|
|
202
|
+
context,
|
|
203
|
+
portal,
|
|
204
|
+
props.id,
|
|
205
|
+
preserveTabOrder,
|
|
206
|
+
anchorPortalNode
|
|
207
|
+
]);
|
|
208
|
+
props = {
|
|
209
|
+
...props,
|
|
210
|
+
ref: refProp
|
|
211
|
+
};
|
|
212
|
+
return props;
|
|
213
|
+
});
|
|
214
|
+
/**
|
|
215
|
+
* Renders an element using [React
|
|
216
|
+
* Portal](https://react.dev/reference/react-dom/createPortal).
|
|
217
|
+
*
|
|
218
|
+
* By default, the portal element is a `div` element appended to the
|
|
219
|
+
* `document.body` element. You can customize this with the
|
|
220
|
+
* [`portalElement`](https://ariakit.com/reference/portal#portalelement) prop.
|
|
221
|
+
*
|
|
222
|
+
* The
|
|
223
|
+
* [`preserveTabOrder`](https://ariakit.com/reference/portal#preservetaborder)
|
|
224
|
+
* prop allows this component to manage the tab order of the elements. It
|
|
225
|
+
* ensures the tab order remains consistent with the original location where the
|
|
226
|
+
* portal was rendered in the React tree, instead of the final location in the
|
|
227
|
+
* DOM. The
|
|
228
|
+
* [`preserveTabOrderAnchor`](https://ariakit.com/reference/portal#preservetaborderanchor)
|
|
229
|
+
* prop can specify a different location from which the tab order is preserved.
|
|
230
|
+
* @see https://ariakit.com/components/portal
|
|
231
|
+
* @example
|
|
232
|
+
* ```jsx
|
|
233
|
+
* <Portal>Content</Portal>
|
|
234
|
+
* ```
|
|
235
|
+
*/
|
|
236
|
+
const Portal = forwardRef(function Portal(props) {
|
|
237
|
+
return createElement(TagName, usePortal(props));
|
|
238
|
+
});
|
|
239
|
+
//#endregion
|
|
240
|
+
export { Portal, usePortal };
|
|
241
|
+
|
|
242
|
+
//# sourceMappingURL=portal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"portal.js","names":[],"sources":["../../src/portal/portal.tsx"],"sourcesContent":["import {\n useMergeRefs,\n useSafeLayoutEffect,\n useWrapElement,\n setRef,\n createElement,\n createHook,\n forwardRef,\n} from \"@ariakit/react-utils\";\nimport type { Options, Props } from \"@ariakit/react-utils\";\nimport {\n getDocument,\n isFocusEventOutside,\n disableFocusIn,\n getNextTabbable,\n getPreviousTabbable,\n restoreFocusIn,\n} from \"@ariakit/utils\";\nimport type { ElementType, MutableRefObject, RefCallback } from \"react\";\nimport { useContext, useEffect, useRef, useState } from \"react\";\nimport { createPortal } from \"react-dom\";\nimport { FocusTrap } from \"../focus-trap/focus-trap.tsx\";\nimport { PortalContext } from \"./portal-context.tsx\";\n\nconst TagName = \"div\" satisfies ElementType;\ntype TagName = typeof TagName;\ntype HTMLType = HTMLElementTagNameMap[TagName];\n\n// Returns the best root element for appending portal nodes. When an element\n// is in fullscreen mode, portals must be appended inside the fullscreen\n// element instead of document.body so they remain visible.\nfunction getRootElement(element?: Element | null) {\n const doc = getDocument(element);\n const { fullscreenElement } = doc;\n if (fullscreenElement instanceof HTMLElement) {\n return fullscreenElement;\n }\n return doc.body;\n}\n\nfunction getPortalElement(\n element: HTMLElement,\n portalElement: PortalOptions[\"portalElement\"],\n) {\n if (!portalElement) {\n return getDocument(element).createElement(\"div\");\n }\n if (typeof portalElement === \"function\") {\n return portalElement(element);\n }\n return portalElement;\n}\n\nfunction getRandomId(prefix = \"id\") {\n return `${prefix ? `${prefix}-` : \"\"}${Math.random()\n .toString(36)\n .slice(2, 8)}`;\n}\n\nfunction queueFocus(element?: HTMLElement | null) {\n queueMicrotask(() => {\n element?.focus();\n });\n}\n\n/**\n * Returns props to create a `Portal` component.\n * @see https://ariakit.com/components/portal\n * @example\n * ```jsx\n * const props = usePortal();\n * <Role {...props}>Content</Role>\n * ```\n */\nexport const usePortal = createHook<TagName, PortalOptions>(function usePortal({\n preserveTabOrder,\n preserveTabOrderAnchor,\n portalElement,\n portalRef,\n portal = true,\n ...props\n}) {\n const ref = useRef<HTMLType>(null);\n const refProp = useMergeRefs(ref, props.ref);\n const context = useContext(PortalContext);\n const [portalNode, setPortalNode] = useState<HTMLElement | null>(null);\n const [anchorPortalNode, setAnchorPortalNode] = useState<HTMLElement | null>(\n null,\n );\n\n const outerBeforeRef = useRef<HTMLSpanElement>(null);\n const innerBeforeRef = useRef<HTMLSpanElement>(null);\n const innerAfterRef = useRef<HTMLSpanElement>(null);\n const outerAfterRef = useRef<HTMLSpanElement>(null);\n\n // Create the portal node and attach it to the DOM.\n useSafeLayoutEffect(() => {\n const element = ref.current;\n if (!element || !portal) {\n setPortalNode(null);\n return;\n }\n const portalEl = getPortalElement(element, portalElement);\n // TODO: Warn about portals as the document.body element.\n if (!portalEl) {\n setPortalNode(null);\n return;\n }\n const isPortalInDocument = portalEl.isConnected;\n if (!isPortalInDocument) {\n const rootElement = context || getRootElement(element);\n rootElement.appendChild(portalEl);\n }\n // If the portal element doesn't have an id already, set one.\n if (!portalEl.id) {\n // Use the element's id so rendering <Portal id=\"some-id\" /> will\n // produce predictable results.\n portalEl.id = element.id ? `portal/${element.id}` : getRandomId();\n }\n // Set the internal portal node state and the portalRef prop.\n setPortalNode(portalEl);\n setRef(portalRef, portalEl);\n // If the portal element was already in the document, we don't need to\n // remove it when the element is unmounted, so we just return.\n if (isPortalInDocument) return;\n // Otherwise, we need to remove the portal from the DOM.\n return () => {\n portalEl.remove();\n setRef(portalRef, null);\n };\n }, [portal, portalElement, context, portalRef]);\n\n // Move the portal node when fullscreen state changes so it stays visible.\n useEffect(() => {\n if (!portalNode) return;\n if (context) return;\n if (portalElement) return;\n const doc = getDocument(portalNode);\n const onFullscreenChange = () => {\n const rootElement = getRootElement(portalNode);\n if (portalNode.parentElement !== rootElement) {\n rootElement.appendChild(portalNode);\n }\n };\n // Sync immediately in case fullscreen was entered before this effect\n // ran, which can happen if the portal mounts while already in\n // fullscreen mode.\n onFullscreenChange();\n doc.addEventListener(\"fullscreenchange\", onFullscreenChange);\n return () => {\n doc.removeEventListener(\"fullscreenchange\", onFullscreenChange);\n };\n }, [portalNode, context, portalElement]);\n\n // Create the anchor portal node and attach it to the DOM.\n useSafeLayoutEffect(() => {\n if (!portal) return;\n if (!preserveTabOrder) return;\n if (!preserveTabOrderAnchor) return;\n const doc = getDocument(preserveTabOrderAnchor);\n const element = doc.createElement(\"span\");\n element.style.position = \"fixed\";\n preserveTabOrderAnchor.insertAdjacentElement(\"afterend\", element);\n setAnchorPortalNode(element);\n return () => {\n element.remove();\n setAnchorPortalNode(null);\n };\n }, [portal, preserveTabOrder, preserveTabOrderAnchor]);\n\n // When preserveTabOrder is true, make sure elements inside the portal\n // element are tabbable only when the portal has already been focused,\n // either by tabbing into a focus trap element outside or using the mouse.\n useEffect(() => {\n if (!portalNode) return;\n if (!preserveTabOrder) return;\n let raf = 0;\n const onFocus = (event: FocusEvent) => {\n if (!isFocusEventOutside(event)) return;\n const focusing = event.type === \"focusin\";\n cancelAnimationFrame(raf);\n if (focusing) {\n return restoreFocusIn(portalNode);\n }\n // Wait for the next frame to allow tabindex changes after the focus\n // event.\n raf = requestAnimationFrame(() => {\n disableFocusIn(portalNode, true);\n });\n };\n // Listen to the event on the capture phase so they run before the focus\n // trap elements onFocus prop is called.\n portalNode.addEventListener(\"focusin\", onFocus, true);\n portalNode.addEventListener(\"focusout\", onFocus, true);\n return () => {\n cancelAnimationFrame(raf);\n portalNode.removeEventListener(\"focusin\", onFocus, true);\n portalNode.removeEventListener(\"focusout\", onFocus, true);\n };\n }, [portalNode, preserveTabOrder]);\n\n props = useWrapElement(\n props,\n (element) => {\n element = (\n // While the portal node is not in the DOM, we need to pass the\n // current context to the portal context, otherwise it's going to\n // reset to the body element on nested portals.\n <PortalContext.Provider value={portalNode || context}>\n {element}\n </PortalContext.Provider>\n );\n\n if (!portal) return element;\n\n if (!portalNode) {\n // If the element should be rendered within a portal, but the portal\n // node is not yet in the DOM, we'll return an empty div element. We\n // assign the id to the element so we can use it to set the portal id\n // later on. We're using position: fixed here so that the browser\n // doesn't add margin to the element when setting gap on a parent\n // element.\n return (\n <span\n ref={refProp}\n id={props.id}\n style={{ position: \"fixed\" }}\n hidden\n />\n );\n }\n\n element = (\n <>\n {preserveTabOrder && portalNode && (\n <FocusTrap\n ref={innerBeforeRef}\n data-focus-trap={props.id}\n className=\"__focus-trap-inner-before\"\n onFocus={(event) => {\n if (isFocusEventOutside(event, portalNode)) {\n queueFocus(getNextTabbable());\n } else {\n queueFocus(outerBeforeRef.current);\n }\n }}\n />\n )}\n {element}\n {preserveTabOrder && portalNode && (\n <FocusTrap\n ref={innerAfterRef}\n data-focus-trap={props.id}\n className=\"__focus-trap-inner-after\"\n onFocus={(event) => {\n if (isFocusEventOutside(event, portalNode)) {\n queueFocus(getPreviousTabbable());\n } else {\n queueFocus(outerAfterRef.current);\n }\n }}\n />\n )}\n </>\n );\n\n if (portalNode) {\n element = createPortal(element, portalNode);\n }\n\n let preserveTabOrderElement = (\n <>\n {preserveTabOrder && portalNode && (\n <FocusTrap\n ref={outerBeforeRef}\n data-focus-trap={props.id}\n className=\"__focus-trap-outer-before\"\n onFocus={(event) => {\n // If the event is coming from the outer after focus trap, it\n // means there's no tabbable element inside the portal. In\n // this case, we don't focus the inner before focus trap, but\n // the previous tabbable element outside the portal.\n const fromOuter = event.relatedTarget === outerAfterRef.current;\n if (!fromOuter && isFocusEventOutside(event, portalNode)) {\n queueFocus(innerBeforeRef.current);\n } else {\n queueFocus(getPreviousTabbable());\n }\n }}\n />\n )}\n {preserveTabOrder && (\n // We're using position: fixed here so that the browser doesn't\n // add margin to the element when setting gap on a parent element.\n <span aria-owns={portalNode?.id} style={{ position: \"fixed\" }} />\n )}\n {preserveTabOrder && portalNode && (\n <FocusTrap\n ref={outerAfterRef}\n data-focus-trap={props.id}\n className=\"__focus-trap-outer-after\"\n onFocus={(event) => {\n if (isFocusEventOutside(event, portalNode)) {\n queueFocus(innerAfterRef.current);\n } else {\n const nextTabbable = getNextTabbable();\n // If the next tabbable element is the inner before focus\n // trap, this means we're at the end of the document or the\n // portal was placed right after the original spot in the\n // React tree. We need to wait for the next frame so the\n // preserveTabOrder effect can run and disable the inner\n // before focus trap. If there's no tabbable element after\n // that, the focus will stay on this element.\n if (nextTabbable === innerBeforeRef.current) {\n requestAnimationFrame(() => getNextTabbable()?.focus());\n return;\n }\n queueFocus(nextTabbable);\n }\n }}\n />\n )}\n </>\n );\n\n if (anchorPortalNode && preserveTabOrder) {\n preserveTabOrderElement = createPortal(\n preserveTabOrderElement,\n anchorPortalNode,\n );\n }\n\n return (\n <>\n {preserveTabOrderElement}\n {element}\n </>\n );\n },\n [portalNode, context, portal, props.id, preserveTabOrder, anchorPortalNode],\n );\n\n props = {\n ...props,\n ref: refProp,\n };\n\n return props;\n});\n\n/**\n * Renders an element using [React\n * Portal](https://react.dev/reference/react-dom/createPortal).\n *\n * By default, the portal element is a `div` element appended to the\n * `document.body` element. You can customize this with the\n * [`portalElement`](https://ariakit.com/reference/portal#portalelement) prop.\n *\n * The\n * [`preserveTabOrder`](https://ariakit.com/reference/portal#preservetaborder)\n * prop allows this component to manage the tab order of the elements. It\n * ensures the tab order remains consistent with the original location where the\n * portal was rendered in the React tree, instead of the final location in the\n * DOM. The\n * [`preserveTabOrderAnchor`](https://ariakit.com/reference/portal#preservetaborderanchor)\n * prop can specify a different location from which the tab order is preserved.\n * @see https://ariakit.com/components/portal\n * @example\n * ```jsx\n * <Portal>Content</Portal>\n * ```\n */\nexport const Portal = forwardRef(function Portal(props: PortalProps) {\n const htmlProps = usePortal(props);\n return createElement(TagName, htmlProps);\n});\n\nexport interface PortalOptions<\n _T extends ElementType = TagName,\n> extends Options {\n /**\n * When enabled, `preserveTabOrder` will keep the DOM element's tab order the\n * same as the order in which the underlying\n * [`Portal`](https://ariakit.com/reference/portal) component was mounted in\n * the React tree.\n *\n * If the\n * [`preserveTabOrderAnchor`](https://ariakit.com/reference/portal#preservetaborderanchor)\n * prop is provided, the tab order will be preserved relative to that element.\n * @default false\n */\n preserveTabOrder?: boolean;\n /**\n * An anchor element for maintaining the tab order when\n * [`preserveTabOrder`](https://ariakit.com/reference/portal#preservetaborder)\n * prop is enabled. The tab order will be kept relative to this element.\n *\n * By default, the tab order is kept relative to the original location in the\n * React tree where the underlying\n * [`Portal`](https://ariakit.com/reference/portal) component was mounted.\n * @example\n * ```jsx {18-20}\n * const [anchor, setAnchor] = useState(null);\n *\n * <button ref={setAnchor}>Order 0</button>\n * <button>Order 2</button>\n *\n * // Rendered at the end of the document.\n * <Portal>\n * <button>Order 5</button>\n * </Portal>\n *\n * // Rendered at the end of the document, but the tab order is preserved.\n * <Portal preserveTabOrder>\n * <button>Order 3</button>\n * </Portal>\n *\n * // Rendered at the end of the document, but the tab order is preserved\n * // relative to the anchor element.\n * <Portal preserveTabOrder preserveTabOrderAnchor={anchor}>\n * <button>Order 1</button>\n * </Portal>\n *\n * <button>Order 4</button>\n * ```\n */\n preserveTabOrderAnchor?: Element | null;\n /**\n * `portalRef` is similar to `ref` but is scoped to the portal node. It's\n * useful when you need to be informed when the portal element is appended to\n * the DOM or removed from the DOM.\n *\n * Live examples:\n * - [Form with Select](https://ariakit.com/examples/form-select)\n * @example\n * ```jsx\n * const [portalElement, setPortalElement] = useState(null);\n *\n * <Portal portalRef={setPortalElement} />\n * ```\n */\n portalRef?: RefCallback<HTMLElement> | MutableRefObject<HTMLElement | null>;\n /**\n * Determines whether the element should be rendered as a React Portal.\n *\n * Live examples:\n * - [Combobox with integrated\n * filter](https://ariakit.com/examples/combobox-filtering-integrated)\n * - [Dialog with Menu](https://ariakit.com/examples/dialog-menu)\n * - [Hovercard with keyboard\n * support](https://ariakit.com/examples/hovercard-disclosure)\n * - [Menubar](https://ariakit.com/components/menubar)\n * - [Standalone Popover](https://ariakit.com/examples/popover-standalone)\n * - [Animated Select](https://ariakit.com/examples/select-animated)\n * @default true\n */\n portal?: boolean;\n /**\n * An HTML element or a memoized callback function that returns an HTML\n * element to be used as the portal element. By default, the portal element\n * will be a `div` element appended to the `document.body`.\n *\n * Live examples:\n * - [Navigation Menubar](https://ariakit.com/examples/menubar-navigation)\n * @example\n * ```jsx\n * const [portal, setPortal] = useState(null);\n *\n * <Portal portalElement={portal} />\n * <div ref={setPortal} />\n * ```\n * @example\n * ```jsx\n * const getPortalElement = useCallback(() => {\n * const div = document.createElement(\"div\");\n * const portalRoot = document.getElementById(\"portal-root\");\n * portalRoot.appendChild(div);\n * return div;\n * }, []);\n *\n * <Portal portalElement={getPortalElement} />\n * ```\n */\n portalElement?:\n | ((element: HTMLElement) => HTMLElement | null)\n | HTMLElement\n | null;\n}\n\nexport type PortalProps<T extends ElementType = TagName> = Props<\n T,\n PortalOptions<T>\n>;\n"],"mappings":";;;;;;;;;AA+BA,MAAA,UAAS;SACD,eAAM,SAAmB;CAC/B,MAAM,MAAE,YAAA,OAAsB;CAC9B,MAAI,EAAA,sBAAA;CAGJ,IAAA,6BAAW,aAAA,OAAA;CACb,OAAA,IAAA;AAEA;SAIO,iBACH,SAAO,eAAqB;CAE9B,IAAI,CAAA,eAAO,OAAA,YAAkB,OAC3B,EAAO,cAAc,KAAA;CAEvB,IAAA,OAAO,kBAAA,YAAA,OAAA,cAAA,OAAA;CACT,OAAA;AAEA;SACS,YAAY,SAAU,MAAK;CAGpC,OAAA,GAAA,SAAA,GAAA,OAAA,KAAA,KAAA,KAAA,OAAA,EAAA,SAAA,EAAA,EAAA,MAAA,GAAA,CAAA;AAEA;SACE,WAAA,SAAqB;sBACJ;EAChB,SAAA,MAAA;CACH,CAAA;;;;;;;;;;;MAmBE,YAAY,WAAqB,SAAA,UAAA,EAAA,kBAAA,wBAAA,eAAA,WAAA,SAAA,MAAA,GAAA,SAAA;CACjC,MAAM,MAAA,OAAU,IAAA;CAChB,MAAM,UAAU,aAAW,KAAA,MAAa,GAAA;CACxC,MAAM,UAAC,WAAY,aAAiB;CACpC,MAAM,CAAC,YAAA,iBAAkB,SAAA,IAAuB;CAIhD,MAAM,CAAA,kBAAiB,uBAA4B,SAAA,IAAA;CACnD,MAAM,iBAAiB,OAAwB,IAAI;CACnD,MAAM,iBAAgB,OAAwB,IAAI;CAClD,MAAM,gBAAgB,OAAwB,IAAI;CAGlD,MAAA,gBAAA,OAA0B,IAAA;2BACJ;EACpB,MAAK,UAAW,IAAC;MACf,CAAA,WAAc,CAAA,QAAI;GAClB,cAAA,IAAA;GACF;EACA;EAEA,MAAK,WAAU,iBAAA,SAAA,aAAA;MACb,CAAA,UAAc;GACd,cAAA,IAAA;GACF;EACA;EACA,MAAK,qBACiB,SAAA;EAItB,IAAI,CAAC,oBAGH,CAAA,WAAc,eAAa,OAAU,GAAA,YAAe,QAAY;EAGlE,IAAA,CAAA,SAAc,IAAA,SAAQ,KAAA,QAAA,KAAA,UAAA,QAAA,OAAA,YAAA;EACtB,cAAO,QAAW;EAGlB,OAAI,WAAA,QAAoB;EAExB,IAAA,oBAAa;eACF;GACT,SAAO,OAAA;GACT,OAAA,WAAA,IAAA;EACF;IAAI;EAAQ;EAAe;EAAS;EAAU;CAG9C,CAAA;iBACO;EACL,IAAI,CAAA,YAAS;EACb,IAAI,SAAA;EACJ,IAAA,eAAY;EACZ,MAAM,MAAA,YAAA,UAA2B;QAC/B,2BAAoB;GACpB,MAAI,cAAW,eAAkB,UAAA;GAGnC,IAAA,WAAA,kBAAA,aAAA,YAAA,YAAA,UAAA;EAIA;EACA,mBAAI;EACJ,IAAA,iBAAa,oBAAA,kBAAA;eACP;GACN,IAAA,oBAAA,oBAAA,kBAAA;EACF;IAAI;EAAY;EAAS;EAAc;CAGvC,CAAA;2BACe;EACb,IAAI,CAAC,QAAA;EACL,IAAI,CAAC,kBAAA;EAEL,IAAA,CAAA,wBADwB;EAExB,MAAA,UAAc,YAAW,sBAAA,EAAA,cAAA,MAAA;EACzB,QAAA,MAAA,WAAuB;EACvB,uBAAoB,sBAAO,YAAA,OAAA;EAC3B,oBAAa,OAAA;eACH;GACR,QAAA,OAAA;GACF,oBAAA,IAAA;EACF;IAAI;EAAQ;EAAkB;EAAuB;CAKrD,CAAA;iBACO;EACL,IAAI,CAAC,YAAA;EACL,IAAI,CAAA,kBAAM;EACV,IAAA,MAAM;QACC,WAAA,UAAoB;GACzB,IAAA,CAAA,oBAAuB,KAAA,GAAS;GAChC,MAAA,WAAA,MAAqB,SAAG;GACxB,qBACS,GAAA;GAIT,IAAA,UAAM,OAAA,eAA4B,UAAA;SAChC,4BAA+B;IAChC,eAAA,YAAA,IAAA;GACH,CAAA;EAGA;EACA,WAAW,iBAAiB,WAAA,SAAY,IAAS;EACjD,WAAA,iBAAa,YAAA,SAAA,IAAA;eACX;GACA,qBAAW,GAAA;GACX,WAAW,oBAAoB,WAAA,SAAY,IAAS;GACtD,WAAA,oBAAA,YAAA,SAAA,IAAA;EACF;CAEA,GAAA,CAAA,YAAQ,gBAEL,CAAA;SACC,eAIE,QAAC,YAAA;YAA4C,oBAAA,cAAA,UAAA;wBAC1C;GACqB,UAAA;EAG1B,CAAA;EAEA,IAAI,CAAC,QAAA,OAOH;MAEI,CAAA,YAAK,OAAA,oBAAA,QAAA;GACL,KAAI;GACJ,IAAA,MAAS;GACT,OAAA,EAAA,UAAA,QAAA;GACD,QAAA;EAIL,CAAA;YAEyB,qBAAA,YACnB,EAAA,UAAC;uBACM,cAAA,oBAAA,WAAA;IACL,KAAA;IACA,mBAAU,MAAA;IACV,WAAU;cACJ,UAAA;6BAGS,OAAe,UAAO,GAAA,WAAA,gBAAA,CAAA;UAErC,WAAA,eAAA,OAAA;IACD;GAEF,CAAA;GACA;uBAEQ,cAAA,oBAAA,WAAA;IACL,KAAA;IACA,mBAAU,MAAA;IACV,WAAU;cACJ,UAAA;6BAGS,OAAc,UAAO,GAAA,WAAA,oBAAA,CAAA;UAEpC,WAAA,cAAA,OAAA;IACD;GAEH,CAAA;EAGJ,EAAA,CAAA;EAIA,IAAI,YAAA,UAAA,aACF,SAAA,UAAA;MACG,0BACC,qBAAA,YAAC,EAAA,UAAD;uBACO,cAAA,oBAAA,WAAA;IACL,KAAA;IACA,mBAAU,MAAA;IACV,WAAU;cAKU,UAAM;WAItB,MAAA,kBAAW,cAAqB,YAAA,oBAAA,OAAA,UAAA,GAAA,WAAA,eAAA,OAAA;UAEpC,WAAA,oBAAA,CAAA;IACD;GAEF,CAAA;uBAG8B,oBAAA,QAAA;IAAI,aAAS,YAAU;IAAY,OAAA,EAAA,UAAA,QAAA;GAEjE,CAAA;uBAEQ,cAAA,oBAAA,WAAA;IACL,KAAA;IACA,mBAAU,MAAA;IACV,WAAU;cACJ,UAAA;6BAEG,OAAA,UAAA,GAAA,WAAA,cAAA,OAAA;UACL;MAQA,MAAI,eAAiB,gBAAe;UAClC,iBAAA,eAA4B,SAAgB;OAC5C,4BAAA,gBAAA,GAAA,MAAA,CAAA;OACF;MACA;MACF,WAAA,YAAA;KACF;IACD;GAEH,CAAA;EAGJ,EAAA,CAAA;EAOA,IAAA,oBACE,kBAAA,0BACG,aACA,yBACD,gBAAA;EAEN,OACA,qBAAA,YAAA,EAAA,UAAA,CAAA,yBAAA,OAAA,EAAA,CAAA;IAAC;EAAY;EAAS;EAAQ;EAAU,MAAA;EAAkB;EAC5D;CAEA,CAAA;SACK;EACH,GAAA;EACF,KAAA;CAEA;CACD,OAAA;;;;;;;;;;;;;;;;;;;;;;;;MA0BC,SAAO,WAAc,SADH,OAAU,OACW;CACxC,OAAA,cAAA,SAAA,UAAA,KAAA,CAAA"}
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
import { Options, Props } from "@ariakit/react-utils";
|
|
2
|
+
import { ElementType, MutableRefObject, RefCallback } from "react";
|
|
3
|
+
|
|
4
|
+
//#region src/portal/portal.d.ts
|
|
5
|
+
declare const TagName = "div";
|
|
6
|
+
type TagName = typeof TagName;
|
|
7
|
+
/**
|
|
8
|
+
* Returns props to create a `Portal` component.
|
|
9
|
+
* @see https://ariakit.com/components/portal
|
|
10
|
+
* @example
|
|
11
|
+
* ```jsx
|
|
12
|
+
* const props = usePortal();
|
|
13
|
+
* <Role {...props}>Content</Role>
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
declare const usePortal: import("@ariakit/react-utils").Hook<"div", PortalOptions<"div">>;
|
|
17
|
+
/**
|
|
18
|
+
* Renders an element using [React
|
|
19
|
+
* Portal](https://react.dev/reference/react-dom/createPortal).
|
|
20
|
+
*
|
|
21
|
+
* By default, the portal element is a `div` element appended to the
|
|
22
|
+
* `document.body` element. You can customize this with the
|
|
23
|
+
* [`portalElement`](https://ariakit.com/reference/portal#portalelement) prop.
|
|
24
|
+
*
|
|
25
|
+
* The
|
|
26
|
+
* [`preserveTabOrder`](https://ariakit.com/reference/portal#preservetaborder)
|
|
27
|
+
* prop allows this component to manage the tab order of the elements. It
|
|
28
|
+
* ensures the tab order remains consistent with the original location where the
|
|
29
|
+
* portal was rendered in the React tree, instead of the final location in the
|
|
30
|
+
* DOM. The
|
|
31
|
+
* [`preserveTabOrderAnchor`](https://ariakit.com/reference/portal#preservetaborderanchor)
|
|
32
|
+
* prop can specify a different location from which the tab order is preserved.
|
|
33
|
+
* @see https://ariakit.com/components/portal
|
|
34
|
+
* @example
|
|
35
|
+
* ```jsx
|
|
36
|
+
* <Portal>Content</Portal>
|
|
37
|
+
* ```
|
|
38
|
+
*/
|
|
39
|
+
declare const Portal: (props: PortalProps) => import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>;
|
|
40
|
+
interface PortalOptions<_T extends ElementType = TagName> extends Options {
|
|
41
|
+
/**
|
|
42
|
+
* When enabled, `preserveTabOrder` will keep the DOM element's tab order the
|
|
43
|
+
* same as the order in which the underlying
|
|
44
|
+
* [`Portal`](https://ariakit.com/reference/portal) component was mounted in
|
|
45
|
+
* the React tree.
|
|
46
|
+
*
|
|
47
|
+
* If the
|
|
48
|
+
* [`preserveTabOrderAnchor`](https://ariakit.com/reference/portal#preservetaborderanchor)
|
|
49
|
+
* prop is provided, the tab order will be preserved relative to that element.
|
|
50
|
+
* @default false
|
|
51
|
+
*/
|
|
52
|
+
preserveTabOrder?: boolean;
|
|
53
|
+
/**
|
|
54
|
+
* An anchor element for maintaining the tab order when
|
|
55
|
+
* [`preserveTabOrder`](https://ariakit.com/reference/portal#preservetaborder)
|
|
56
|
+
* prop is enabled. The tab order will be kept relative to this element.
|
|
57
|
+
*
|
|
58
|
+
* By default, the tab order is kept relative to the original location in the
|
|
59
|
+
* React tree where the underlying
|
|
60
|
+
* [`Portal`](https://ariakit.com/reference/portal) component was mounted.
|
|
61
|
+
* @example
|
|
62
|
+
* ```jsx {18-20}
|
|
63
|
+
* const [anchor, setAnchor] = useState(null);
|
|
64
|
+
*
|
|
65
|
+
* <button ref={setAnchor}>Order 0</button>
|
|
66
|
+
* <button>Order 2</button>
|
|
67
|
+
*
|
|
68
|
+
* // Rendered at the end of the document.
|
|
69
|
+
* <Portal>
|
|
70
|
+
* <button>Order 5</button>
|
|
71
|
+
* </Portal>
|
|
72
|
+
*
|
|
73
|
+
* // Rendered at the end of the document, but the tab order is preserved.
|
|
74
|
+
* <Portal preserveTabOrder>
|
|
75
|
+
* <button>Order 3</button>
|
|
76
|
+
* </Portal>
|
|
77
|
+
*
|
|
78
|
+
* // Rendered at the end of the document, but the tab order is preserved
|
|
79
|
+
* // relative to the anchor element.
|
|
80
|
+
* <Portal preserveTabOrder preserveTabOrderAnchor={anchor}>
|
|
81
|
+
* <button>Order 1</button>
|
|
82
|
+
* </Portal>
|
|
83
|
+
*
|
|
84
|
+
* <button>Order 4</button>
|
|
85
|
+
* ```
|
|
86
|
+
*/
|
|
87
|
+
preserveTabOrderAnchor?: Element | null;
|
|
88
|
+
/**
|
|
89
|
+
* `portalRef` is similar to `ref` but is scoped to the portal node. It's
|
|
90
|
+
* useful when you need to be informed when the portal element is appended to
|
|
91
|
+
* the DOM or removed from the DOM.
|
|
92
|
+
*
|
|
93
|
+
* Live examples:
|
|
94
|
+
* - [Form with Select](https://ariakit.com/examples/form-select)
|
|
95
|
+
* @example
|
|
96
|
+
* ```jsx
|
|
97
|
+
* const [portalElement, setPortalElement] = useState(null);
|
|
98
|
+
*
|
|
99
|
+
* <Portal portalRef={setPortalElement} />
|
|
100
|
+
* ```
|
|
101
|
+
*/
|
|
102
|
+
portalRef?: RefCallback<HTMLElement> | MutableRefObject<HTMLElement | null>;
|
|
103
|
+
/**
|
|
104
|
+
* Determines whether the element should be rendered as a React Portal.
|
|
105
|
+
*
|
|
106
|
+
* Live examples:
|
|
107
|
+
* - [Combobox with integrated
|
|
108
|
+
* filter](https://ariakit.com/examples/combobox-filtering-integrated)
|
|
109
|
+
* - [Dialog with Menu](https://ariakit.com/examples/dialog-menu)
|
|
110
|
+
* - [Hovercard with keyboard
|
|
111
|
+
* support](https://ariakit.com/examples/hovercard-disclosure)
|
|
112
|
+
* - [Menubar](https://ariakit.com/components/menubar)
|
|
113
|
+
* - [Standalone Popover](https://ariakit.com/examples/popover-standalone)
|
|
114
|
+
* - [Animated Select](https://ariakit.com/examples/select-animated)
|
|
115
|
+
* @default true
|
|
116
|
+
*/
|
|
117
|
+
portal?: boolean;
|
|
118
|
+
/**
|
|
119
|
+
* An HTML element or a memoized callback function that returns an HTML
|
|
120
|
+
* element to be used as the portal element. By default, the portal element
|
|
121
|
+
* will be a `div` element appended to the `document.body`.
|
|
122
|
+
*
|
|
123
|
+
* Live examples:
|
|
124
|
+
* - [Navigation Menubar](https://ariakit.com/examples/menubar-navigation)
|
|
125
|
+
* @example
|
|
126
|
+
* ```jsx
|
|
127
|
+
* const [portal, setPortal] = useState(null);
|
|
128
|
+
*
|
|
129
|
+
* <Portal portalElement={portal} />
|
|
130
|
+
* <div ref={setPortal} />
|
|
131
|
+
* ```
|
|
132
|
+
* @example
|
|
133
|
+
* ```jsx
|
|
134
|
+
* const getPortalElement = useCallback(() => {
|
|
135
|
+
* const div = document.createElement("div");
|
|
136
|
+
* const portalRoot = document.getElementById("portal-root");
|
|
137
|
+
* portalRoot.appendChild(div);
|
|
138
|
+
* return div;
|
|
139
|
+
* }, []);
|
|
140
|
+
*
|
|
141
|
+
* <Portal portalElement={getPortalElement} />
|
|
142
|
+
* ```
|
|
143
|
+
*/
|
|
144
|
+
portalElement?: ((element: HTMLElement) => HTMLElement | null) | HTMLElement | null;
|
|
145
|
+
}
|
|
146
|
+
type PortalProps<T extends ElementType = TagName> = Props<T, PortalOptions<T>>;
|
|
147
|
+
//#endregion
|
|
148
|
+
export { usePortal as i, PortalOptions as n, PortalProps as r, Portal as t };
|
|
149
|
+
//# sourceMappingURL=portal-CMBWiayp.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"portal-CMBWiayp.d.ts","names":["Options","Props","ElementType","MutableRefObject","RefCallback","TagName","usePortal","PortalOptions","Hook","Portal","PortalProps","props","ReactElement","JSXElementConstructor","_T","Element","HTMLElement","preserveTabOrder","preserveTabOrderAnchor","portalRef","portal","portalElement","element","T"],"sources":["../src/portal/portal.d.ts"],"mappings":";;;;cAEcK,OAAAA;AAAAA,KACTA,OAAAA,UAAiBA,OAAO;AAF2C;;;;AACnD;AAAA;;;;AADmD,cAYnDC,SAAAA,iCAA0CE,IAAAA,QAAYD,aAAa;AAAxF;;;;AAAwF;AAuBxF;;;;;;;;;AAAqI;AACrI;;;;;;;AAxBA,cAuBqBE,MAAAA,GAASE,KAAAA,EAAOD,WAAW,qBAAqBE,YAAAA,+BAA2CC,qBAAAA;AAAAA,UAC/FN,aAAAA,YAAyBL,WAAAA,GAAcG,OAAAA,UAAiBL,OAAAA;EA8D9BG;;;;;;;;;;;EAlDvCc,gBAAAA;EAmCAC;;;;;;;;;;;;;;AAyD4E;AAEhF;;;;;;;;;;;;;;;;;;;EA3DIA,sBAAAA,GAAyBH,OAAAA;;;;;;;;;;;;;;;EAezBI,SAAAA,GAAYf,WAAAA,CAAYY,WAAAA,IAAeb,gBAAAA,CAAiBa,WAAAA;;;;;;;;;;;;;;;EAexDI,MAAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2BAC,aAAAA,KAAkBC,OAAAA,EAASN,WAAAA,KAAgBA,WAAAA,WAAsBA,WAAAA;AAAAA;AAAAA,KAEzDN,WAAAA,WAAsBR,WAAAA,GAAcG,OAAAA,IAAWJ,KAAAA,CAAMsB,CAAAA,EAAGhB,aAAAA,CAAcgB,CAAAA"}
|