@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,130 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { useFocusable } from "../focusable/focusable.js";
|
|
3
|
+
import { createElement, createHook, forwardRef, useEvent, useMergeRefs, useMetadataProps } from "@ariakit/react-utils";
|
|
4
|
+
import { disabledFromProps, fireClickEvent, isButton, isFirefox, isSelfTarget, isTextField, queueBeforeEvent } from "@ariakit/utils";
|
|
5
|
+
import { useEffect, useRef, useState } from "react";
|
|
6
|
+
//#region src/command/command.tsx
|
|
7
|
+
const TagName = "button";
|
|
8
|
+
function isNativeClick(event) {
|
|
9
|
+
if (!event.isTrusted) return false;
|
|
10
|
+
// istanbul ignore next: can't test trusted events yet
|
|
11
|
+
const element = event.currentTarget;
|
|
12
|
+
if (event.key === "Enter") return isButton(element) || element.tagName === "SUMMARY" || element.tagName === "A";
|
|
13
|
+
if (event.key === " ") return isButton(element) || element.tagName === "SUMMARY" || element.tagName === "INPUT" || element.tagName === "SELECT";
|
|
14
|
+
return false;
|
|
15
|
+
}
|
|
16
|
+
const symbol = Symbol("command");
|
|
17
|
+
/**
|
|
18
|
+
* Returns props to create a `Command` component. If the element is not a native
|
|
19
|
+
* clickable element (like a button), this hook will return additional props to
|
|
20
|
+
* make sure it's accessible.
|
|
21
|
+
* @see https://ariakit.com/components/command
|
|
22
|
+
* @example
|
|
23
|
+
* ```jsx
|
|
24
|
+
* const props = useCommand({ render: <div /> });
|
|
25
|
+
* <Role {...props}>Accessible button</Role>
|
|
26
|
+
* ```
|
|
27
|
+
*/
|
|
28
|
+
const useCommand = createHook(function useCommand({ clickOnEnter = true, clickOnSpace = true, ...props }) {
|
|
29
|
+
const ref = useRef(null);
|
|
30
|
+
const [isNativeButton, setIsNativeButton] = useState(false);
|
|
31
|
+
useEffect(() => {
|
|
32
|
+
if (!ref.current) return;
|
|
33
|
+
setIsNativeButton(isButton(ref.current));
|
|
34
|
+
}, []);
|
|
35
|
+
const [active, setActive] = useState(false);
|
|
36
|
+
const activeRef = useRef(false);
|
|
37
|
+
const disabled = disabledFromProps(props);
|
|
38
|
+
const [isDuplicate, metadataProps] = useMetadataProps(props, symbol, true);
|
|
39
|
+
const onKeyDownProp = props.onKeyDown;
|
|
40
|
+
const onKeyDown = useEvent((event) => {
|
|
41
|
+
onKeyDownProp?.(event);
|
|
42
|
+
const element = event.currentTarget;
|
|
43
|
+
if (event.defaultPrevented) return;
|
|
44
|
+
if (isDuplicate) return;
|
|
45
|
+
if (disabled) return;
|
|
46
|
+
if (!isSelfTarget(event)) return;
|
|
47
|
+
if (isTextField(element)) return;
|
|
48
|
+
if (element.isContentEditable) return;
|
|
49
|
+
const isEnter = clickOnEnter && event.key === "Enter";
|
|
50
|
+
const isSpace = clickOnSpace && event.key === " ";
|
|
51
|
+
const shouldPreventEnter = event.key === "Enter" && !clickOnEnter;
|
|
52
|
+
const shouldPreventSpace = event.key === " " && !clickOnSpace;
|
|
53
|
+
if (shouldPreventEnter || shouldPreventSpace) {
|
|
54
|
+
event.preventDefault();
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
if (isEnter || isSpace) {
|
|
58
|
+
const nativeClick = isNativeClick(event);
|
|
59
|
+
if (isEnter) {
|
|
60
|
+
if (!nativeClick) {
|
|
61
|
+
event.preventDefault();
|
|
62
|
+
const { view, ...eventInit } = event;
|
|
63
|
+
const click = () => fireClickEvent(element, eventInit);
|
|
64
|
+
if (isFirefox()) queueBeforeEvent(element, "keyup", click);
|
|
65
|
+
else queueMicrotask(click);
|
|
66
|
+
}
|
|
67
|
+
} else if (isSpace) {
|
|
68
|
+
activeRef.current = true;
|
|
69
|
+
if (!nativeClick) {
|
|
70
|
+
event.preventDefault();
|
|
71
|
+
setActive(true);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
});
|
|
76
|
+
const onKeyUpProp = props.onKeyUp;
|
|
77
|
+
const onKeyUp = useEvent((event) => {
|
|
78
|
+
onKeyUpProp?.(event);
|
|
79
|
+
if (event.defaultPrevented) return;
|
|
80
|
+
if (isDuplicate) return;
|
|
81
|
+
if (disabled) return;
|
|
82
|
+
if (event.metaKey) return;
|
|
83
|
+
const isSpace = clickOnSpace && event.key === " ";
|
|
84
|
+
if (activeRef.current && isSpace) {
|
|
85
|
+
activeRef.current = false;
|
|
86
|
+
if (!isNativeClick(event)) {
|
|
87
|
+
event.preventDefault();
|
|
88
|
+
setActive(false);
|
|
89
|
+
const element = event.currentTarget;
|
|
90
|
+
const { view, ...eventInit } = event;
|
|
91
|
+
queueMicrotask(() => fireClickEvent(element, eventInit));
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
});
|
|
95
|
+
props = {
|
|
96
|
+
"data-active": active || void 0,
|
|
97
|
+
type: isNativeButton ? "button" : void 0,
|
|
98
|
+
...metadataProps,
|
|
99
|
+
...props,
|
|
100
|
+
ref: useMergeRefs(ref, props.ref),
|
|
101
|
+
onKeyDown,
|
|
102
|
+
onKeyUp
|
|
103
|
+
};
|
|
104
|
+
props = useFocusable(props);
|
|
105
|
+
return props;
|
|
106
|
+
});
|
|
107
|
+
/**
|
|
108
|
+
* Renders a clickable element, which is a `button` by default, and inherits
|
|
109
|
+
* features from the [`Focusable`](https://ariakit.com/reference/focusable)
|
|
110
|
+
* component.
|
|
111
|
+
*
|
|
112
|
+
* If the base element isn't a native clickable one, this component will provide
|
|
113
|
+
* extra attributes and event handlers to ensure accessibility. It can be
|
|
114
|
+
* activated with the keyboard using the
|
|
115
|
+
* [`clickOnEnter`](https://ariakit.com/reference/command#clickonenter) and
|
|
116
|
+
* [`clickOnSpace`](https://ariakit.com/reference/command#clickonspace)
|
|
117
|
+
* props. Both are set to `true` by default.
|
|
118
|
+
* @see https://ariakit.com/components/command
|
|
119
|
+
* @example
|
|
120
|
+
* ```jsx
|
|
121
|
+
* <Command>Button</Command>
|
|
122
|
+
* ```
|
|
123
|
+
*/
|
|
124
|
+
const Command = forwardRef(function Command(props) {
|
|
125
|
+
return createElement(TagName, useCommand(props));
|
|
126
|
+
});
|
|
127
|
+
//#endregion
|
|
128
|
+
export { Command, useCommand };
|
|
129
|
+
|
|
130
|
+
//# sourceMappingURL=command.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command.js","names":[],"sources":["../../src/command/command.tsx"],"sourcesContent":["import {\n useEvent,\n useMergeRefs,\n useMetadataProps,\n createElement,\n createHook,\n forwardRef,\n} from \"@ariakit/react-utils\";\nimport type { Props } from \"@ariakit/react-utils\";\nimport {\n isButton,\n isTextField,\n fireClickEvent,\n isSelfTarget,\n queueBeforeEvent,\n disabledFromProps,\n isFirefox,\n} from \"@ariakit/utils\";\nimport type { ElementType, KeyboardEvent } from \"react\";\nimport { useEffect, useRef, useState } from \"react\";\nimport type { FocusableOptions } from \"../focusable/focusable.tsx\";\nimport { useFocusable } from \"../focusable/focusable.tsx\";\n\nconst TagName = \"button\" satisfies ElementType;\ntype TagName = typeof TagName;\ntype HTMLType = HTMLElementTagNameMap[TagName];\n\nfunction isNativeClick(event: KeyboardEvent) {\n if (!event.isTrusted) return false;\n // istanbul ignore next: can't test trusted events yet\n const element = event.currentTarget;\n if (event.key === \"Enter\") {\n return (\n isButton(element) ||\n element.tagName === \"SUMMARY\" ||\n element.tagName === \"A\"\n );\n }\n if (event.key === \" \") {\n return (\n isButton(element) ||\n element.tagName === \"SUMMARY\" ||\n element.tagName === \"INPUT\" ||\n element.tagName === \"SELECT\"\n );\n }\n return false;\n}\n\nconst symbol = Symbol(\"command\");\n\n/**\n * Returns props to create a `Command` component. If the element is not a native\n * clickable element (like a button), this hook will return additional props to\n * make sure it's accessible.\n * @see https://ariakit.com/components/command\n * @example\n * ```jsx\n * const props = useCommand({ render: <div /> });\n * <Role {...props}>Accessible button</Role>\n * ```\n */\nexport const useCommand = createHook<TagName, CommandOptions>(\n function useCommand({ clickOnEnter = true, clickOnSpace = true, ...props }) {\n const ref = useRef<HTMLType>(null);\n const [isNativeButton, setIsNativeButton] = useState(false);\n\n useEffect(() => {\n if (!ref.current) return;\n setIsNativeButton(isButton(ref.current));\n }, []);\n\n const [active, setActive] = useState(false);\n const activeRef = useRef(false);\n const disabled = disabledFromProps(props);\n const [isDuplicate, metadataProps] = useMetadataProps(props, symbol, true);\n\n const onKeyDownProp = props.onKeyDown;\n\n const onKeyDown = useEvent((event: KeyboardEvent<HTMLType>) => {\n onKeyDownProp?.(event);\n const element = event.currentTarget;\n\n if (event.defaultPrevented) return;\n if (isDuplicate) return;\n if (disabled) return;\n if (!isSelfTarget(event)) return;\n if (isTextField(element)) return;\n if (element.isContentEditable) return;\n\n const isEnter = clickOnEnter && event.key === \"Enter\";\n const isSpace = clickOnSpace && event.key === \" \";\n const shouldPreventEnter = event.key === \"Enter\" && !clickOnEnter;\n const shouldPreventSpace = event.key === \" \" && !clickOnSpace;\n\n if (shouldPreventEnter || shouldPreventSpace) {\n event.preventDefault();\n return;\n }\n\n if (isEnter || isSpace) {\n const nativeClick = isNativeClick(event);\n if (isEnter) {\n if (!nativeClick) {\n event.preventDefault();\n const { view, ...eventInit } = event;\n // Fire a click event instead of calling element.click() directly so\n // we can pass along the modifier state.\n const click = () => fireClickEvent(element, eventInit);\n // If this element is a link with target=\"_blank\", Firefox will\n // block the \"popup\" if the click event is dispatched synchronously\n // or in a microtask. Queueing the event asynchronously fixes that.\n if (isFirefox()) {\n queueBeforeEvent(element, \"keyup\", click);\n } else {\n queueMicrotask(click);\n }\n }\n } else if (isSpace) {\n activeRef.current = true;\n if (!nativeClick) {\n event.preventDefault();\n setActive(true);\n }\n }\n }\n });\n\n const onKeyUpProp = props.onKeyUp;\n\n const onKeyUp = useEvent((event: KeyboardEvent<HTMLType>) => {\n onKeyUpProp?.(event);\n\n if (event.defaultPrevented) return;\n if (isDuplicate) return;\n if (disabled) return;\n if (event.metaKey) return;\n\n const isSpace = clickOnSpace && event.key === \" \";\n\n if (activeRef.current && isSpace) {\n activeRef.current = false;\n if (!isNativeClick(event)) {\n event.preventDefault();\n setActive(false);\n const element = event.currentTarget;\n const { view, ...eventInit } = event;\n queueMicrotask(() => fireClickEvent(element, eventInit));\n }\n }\n });\n\n props = {\n \"data-active\": active || undefined,\n type: isNativeButton ? \"button\" : undefined,\n ...metadataProps,\n ...props,\n ref: useMergeRefs(ref, props.ref),\n onKeyDown,\n onKeyUp,\n };\n\n props = useFocusable<TagName>(props);\n\n return props;\n },\n);\n\n/**\n * Renders a clickable element, which is a `button` by default, and inherits\n * features from the [`Focusable`](https://ariakit.com/reference/focusable)\n * component.\n *\n * If the base element isn't a native clickable one, this component will provide\n * extra attributes and event handlers to ensure accessibility. It can be\n * activated with the keyboard using the\n * [`clickOnEnter`](https://ariakit.com/reference/command#clickonenter) and\n * [`clickOnSpace`](https://ariakit.com/reference/command#clickonspace)\n * props. Both are set to `true` by default.\n * @see https://ariakit.com/components/command\n * @example\n * ```jsx\n * <Command>Button</Command>\n * ```\n */\nexport const Command = forwardRef(function Command(props: CommandProps) {\n const htmlProps = useCommand(props);\n return createElement(TagName, htmlProps);\n});\n\nexport interface CommandOptions<\n T extends ElementType = TagName,\n> extends FocusableOptions<T> {\n /**\n * If set to `true`, pressing the enter key while this element is focused will\n * trigger a click on the element, regardless of whether it's a native button\n * or not. If this prop is set to `false`, pressing enter will not initiate a\n * click.\n * @default true\n */\n clickOnEnter?: boolean;\n /**\n * If set to `true`, pressing and releasing the space key while this element\n * is focused will trigger a click on the element, regardless of whether it's\n * a native button or not. If this prop is set to `false`, space will not\n * initiate a click.\n * @default true\n */\n clickOnSpace?: boolean;\n}\n\nexport type CommandProps<T extends ElementType = TagName> = Props<\n T,\n CommandOptions<T>\n>;\n"],"mappings":";;;;;;AA2BA,MAAA,UAAS;SACF,cAAiB,OAAO;;;CAG7B,MAAI,UAAM,MAAQ;CAOlB,IAAI,MAAM,QAAQ,SAChB,OACE,SAAS,OAAO,KAChB,QAAQ,YAAY,aACpB,QAAQ,YAAY;CAIxB,IAAA,MAAO,QAAA,KAAA,OAAA,SAAA,OAAA,KAAA,QAAA,YAAA,aAAA,QAAA,YAAA,WAAA,QAAA,YAAA;CACT,OAAA;AAEA;;;;;;;;;;;;;MAeI,aAAY,WAAqB,SAAA,WAAA,EAAA,eAAA,MAAA,eAAA,MAAA,GAAA,SAAA;CACjC,MAAM,MAAC,OAAA,IAAgB;CAEvB,MAAA,CAAA,gBAAgB,qBAAA,SAAA,KAAA;iBACL;EACT,IAAA,CAAA,IAAA,SAAkB;EACpB,kBAAK,SAAA,IAAA,OAAA,CAAA;CAEL,GAAA,CAAA,CAAA;CACA,MAAM,CAAA,QAAA,aAAmB,SAAK,KAAA;CAC9B,MAAM,YAAW,OAAA,KAAA;CACjB,MAAM,WAAC,kBAAa,KAAiB;CAErC,MAAM,CAAA,aAAA,iBAAsB,iBAAA,OAAA,QAAA,IAAA;CAE5B,MAAM,gBAAY,MAAU;OAC1B,YAAgB,UAAK,UAAA;EACrB,gBAAgB,KAAA;EAEhB,MAAI,UAAM,MAAA;EACV,IAAI,MAAA,kBAAa;EACjB,IAAI,aAAU;EACd,IAAI,UAAC;EACL,IAAI,CAAA,aAAY,KAAO,GAAG;EAC1B,IAAI,YAAQ,OAAA,GAAA;EAEZ,IAAA,QAAM,mBAAU;EAChB,MAAM,UAAU,gBAAgB,MAAM,QAAQ;EAC9C,MAAM,UAAA,gBAAqB,MAAM,QAAQ;EACzC,MAAM,qBAAqB,MAAM,QAAQ,WAAQ,CAAA;EAEjD,MAAI,qBAAsB,MAAA,QAAA,OAAoB,CAAA;MAC5C,sBAAqB,oBAAA;GACrB,MAAA,eAAA;GACF;EAEA;MACE,WAAM,SAAc;GACpB,MAAI,cACF,cAAA,KAAA;;QACE,CAAA,aAAM;KACN,MAAM,eAAW;KAGjB,MAAM,EAAA,MAAA,GAAA,cAAc;KAIpB,MAAI,cACF,eAAiB,SAAS,SAAS;mBAEnC,GAAA,iBAAoB,SAAA,SAAA,KAAA;UAExB,eAAA,KAAA;;UAEA,IAAU,SAAA;IACV,UAAK,UAAa;QAChB,CAAA,aAAM;KACN,MAAA,eAAc;KAChB,UAAA,IAAA;IACF;GACF;EACD;CAED,CAAA;CAEA,MAAM,cAAU,MAAU;OACxB,UAAc,UAAK,UAAA;EAEnB,cAAU,KAAA;EACV,IAAI,MAAA,kBAAa;EACjB,IAAI,aAAU;EACd,IAAI,UAAM;EAEV,IAAA,MAAM,SAAU;EAEhB,MAAI,UAAU,gBAAW,MAAS,QAAA;MAChC,UAAU,WAAU,SAAA;GACpB,UAAK,UAAc;OACjB,CAAA,cAAM,KAAe,GAAA;IACrB,MAAA,eAAe;IACf,UAAM,KAAA;IACN,MAAM,UAAQ,MAAG;IACjB,MAAA,EAAA,MAAA,GAAA,cAAqB;IACvB,qBAAA,eAAA,SAAA,SAAA,CAAA;GACF;EACD;CAED,CAAA;SACE;EACA,eAAM,UAAiB,KAAA;EACvB,MAAG,iBAAA,WAAA,KAAA;EACH,GAAG;EACH,GAAA;EACA,KAAA,aAAA,KAAA,MAAA,GAAA;EACA;EACF;CAEA;CAEA,QAAO,aAAA,KAAA;CAEX,OAAA;;;;;;;;;;;;;;;;;;;MAqBE,UAAO,WAAc,SADH,QAAW,OACU;CACxC,OAAA,cAAA,SAAA,WAAA,KAAA,CAAA"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { n as FocusableOptions } from "./focusable-B00tOxtB.js";
|
|
2
|
+
import { Props } from "@ariakit/react-utils";
|
|
3
|
+
import { ElementType } from "react";
|
|
4
|
+
|
|
5
|
+
//#region src/command/command.d.ts
|
|
6
|
+
declare const TagName = "button";
|
|
7
|
+
type TagName = typeof TagName;
|
|
8
|
+
/**
|
|
9
|
+
* Returns props to create a `Command` component. If the element is not a native
|
|
10
|
+
* clickable element (like a button), this hook will return additional props to
|
|
11
|
+
* make sure it's accessible.
|
|
12
|
+
* @see https://ariakit.com/components/command
|
|
13
|
+
* @example
|
|
14
|
+
* ```jsx
|
|
15
|
+
* const props = useCommand({ render: <div /> });
|
|
16
|
+
* <Role {...props}>Accessible button</Role>
|
|
17
|
+
* ```
|
|
18
|
+
*/
|
|
19
|
+
declare const useCommand: import("@ariakit/react-utils").Hook<"button", CommandOptions<"button">>;
|
|
20
|
+
/**
|
|
21
|
+
* Renders a clickable element, which is a `button` by default, and inherits
|
|
22
|
+
* features from the [`Focusable`](https://ariakit.com/reference/focusable)
|
|
23
|
+
* component.
|
|
24
|
+
*
|
|
25
|
+
* If the base element isn't a native clickable one, this component will provide
|
|
26
|
+
* extra attributes and event handlers to ensure accessibility. It can be
|
|
27
|
+
* activated with the keyboard using the
|
|
28
|
+
* [`clickOnEnter`](https://ariakit.com/reference/command#clickonenter) and
|
|
29
|
+
* [`clickOnSpace`](https://ariakit.com/reference/command#clickonspace)
|
|
30
|
+
* props. Both are set to `true` by default.
|
|
31
|
+
* @see https://ariakit.com/components/command
|
|
32
|
+
* @example
|
|
33
|
+
* ```jsx
|
|
34
|
+
* <Command>Button</Command>
|
|
35
|
+
* ```
|
|
36
|
+
*/
|
|
37
|
+
declare const Command: (props: CommandProps) => import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>;
|
|
38
|
+
interface CommandOptions<T extends ElementType = TagName> extends FocusableOptions<T> {
|
|
39
|
+
/**
|
|
40
|
+
* If set to `true`, pressing the enter key while this element is focused will
|
|
41
|
+
* trigger a click on the element, regardless of whether it's a native button
|
|
42
|
+
* or not. If this prop is set to `false`, pressing enter will not initiate a
|
|
43
|
+
* click.
|
|
44
|
+
* @default true
|
|
45
|
+
*/
|
|
46
|
+
clickOnEnter?: boolean;
|
|
47
|
+
/**
|
|
48
|
+
* If set to `true`, pressing and releasing the space key while this element
|
|
49
|
+
* is focused will trigger a click on the element, regardless of whether it's
|
|
50
|
+
* a native button or not. If this prop is set to `false`, space will not
|
|
51
|
+
* initiate a click.
|
|
52
|
+
* @default true
|
|
53
|
+
*/
|
|
54
|
+
clickOnSpace?: boolean;
|
|
55
|
+
}
|
|
56
|
+
type CommandProps<T extends ElementType = TagName> = Props<T, CommandOptions<T>>;
|
|
57
|
+
//#endregion
|
|
58
|
+
export { useCommand as i, CommandOptions as n, CommandProps as r, Command as t };
|
|
59
|
+
//# sourceMappingURL=command-DckndCUK.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command-DckndCUK.d.ts","names":["Props","ElementType","FocusableOptions","TagName","useCommand","CommandOptions","Hook","Command","CommandProps","props","ReactElement","JSXElementConstructor","T","clickOnEnter","clickOnSpace"],"sources":["../src/command/command.d.ts"],"mappings":";;;;;cAGcG,OAAAA;AAAAA,KACTA,OAAAA,UAAiBA,OAAO;AAFsC;;;;AAC9C;AAAA;;;;AACQ;AAY7B;AAdmE,cAc9CC,UAAAA,iCAA2CE,IAAAA,WAAeD,cAAc;;;AAAA;AAkB7F;;;;;;;;;AAAuI;AACvI;;;;cADqBE,OAAAA,GAAUE,KAAAA,EAAOD,YAAY,qBAAqBE,YAAAA,+BAA2CC,qBAAAA;AAAAA,UACjGN,cAAAA,WAAyBJ,WAAAA,GAAcE,OAAAA,UAAiBD,gBAAAA,CAAiBU,CAAAA;EAAjBV;;;;;;;EAQrEW,YAAAA;EAAAA;;;AAQY;AAEhB;;;EAFIC,YAAAA;AAAAA;AAAAA,KAEQN,YAAAA,WAAuBP,WAAAA,GAAcE,OAAAA,IAAWH,KAAAA,CAAMY,CAAAA,EAAGP,cAAAA,CAAeO,CAAAA"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { t as CompositeStore } from "../composite-store-DyJc-XRA.js";
|
|
2
|
+
import { Options, Props } from "@ariakit/react-utils";
|
|
3
|
+
import { ElementType } from "react";
|
|
4
|
+
|
|
5
|
+
//#region src/composite/composite-container.d.ts
|
|
6
|
+
declare const TagName = "div";
|
|
7
|
+
type TagName = typeof TagName;
|
|
8
|
+
/**
|
|
9
|
+
* Returns props to create a `CompositeContainer` component. This component
|
|
10
|
+
* renders interactive widgets inside composite items. This should be used in
|
|
11
|
+
* conjunction with the `CompositeItem` component, the `useCompositeItem` hook,
|
|
12
|
+
* or any other component/hook that uses `CompositeItem` underneath.
|
|
13
|
+
* @see https://ariakit.com/components/composite
|
|
14
|
+
* @example
|
|
15
|
+
* ```jsx
|
|
16
|
+
* const store = useCompositeStore();
|
|
17
|
+
* const props = useCompositeContainer({ store });
|
|
18
|
+
* <Composite store={store}>
|
|
19
|
+
* <CompositeItem {...props}>
|
|
20
|
+
* <input type="text" />
|
|
21
|
+
* </CompositeItem>
|
|
22
|
+
* </Composite>
|
|
23
|
+
* ```
|
|
24
|
+
*/
|
|
25
|
+
declare const useCompositeContainer: import("@ariakit/react-utils").Hook<"div", CompositeContainerOptions<"div">>;
|
|
26
|
+
/**
|
|
27
|
+
* Renders a container for interactive widgets inside composite items. This
|
|
28
|
+
* should be used in conjunction with the
|
|
29
|
+
* [`CompositeItem`](https://ariakit.com/reference/composite-item) component or
|
|
30
|
+
* a component that uses
|
|
31
|
+
* [`CompositeItem`](https://ariakit.com/reference/composite-item) underneath.
|
|
32
|
+
* @see https://ariakit.com/components/composite
|
|
33
|
+
* @example
|
|
34
|
+
* ```jsx {3-5}
|
|
35
|
+
* <CompositeProvider>
|
|
36
|
+
* <Composite>
|
|
37
|
+
* <CompositeItem render={<CompositeContainer />}>
|
|
38
|
+
* <input type="text" />
|
|
39
|
+
* </CompositeItem>
|
|
40
|
+
* </Composite>
|
|
41
|
+
* </CompositeProvider>
|
|
42
|
+
* ```
|
|
43
|
+
*/
|
|
44
|
+
declare const CompositeContainer: (props: CompositeContainerProps) => import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>;
|
|
45
|
+
interface CompositeContainerOptions<_T extends ElementType = TagName> extends Options {
|
|
46
|
+
/**
|
|
47
|
+
* Object returned by the
|
|
48
|
+
* [`useCompositeStore`](https://ariakit.com/reference/use-composite-store)
|
|
49
|
+
* hook. If not provided, the closest
|
|
50
|
+
* [`Composite`](https://ariakit.com/reference/composite) or
|
|
51
|
+
* [`CompositeProvider`](https://ariakit.com/reference/composite-provider)
|
|
52
|
+
* components' context will be used.
|
|
53
|
+
*/
|
|
54
|
+
store?: CompositeStore;
|
|
55
|
+
}
|
|
56
|
+
type CompositeContainerProps<T extends ElementType = TagName> = Props<T, CompositeContainerOptions<T>>;
|
|
57
|
+
//#endregion
|
|
58
|
+
export { CompositeContainer, CompositeContainerOptions, CompositeContainerProps, useCompositeContainer };
|
|
59
|
+
//# sourceMappingURL=composite-container.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"composite-container.d.ts","names":["Options","Props","ElementType","CompositeStore","TagName","useCompositeContainer","CompositeContainerOptions","Hook","CompositeContainer","CompositeContainerProps","props","ReactElement","JSXElementConstructor","_T","store","T"],"sources":["../../src/composite/composite-container.d.ts"],"mappings":";;;;;cAGcI,OAAAA;AAAAA,KACTA,OAAAA,UAAiBA,OAAO;AAF8B;;;;AACtC;AAAA;;;;AACQ;AAkB7B;;;;AAAgH;AAmBhH;;AAvC2D,cAoBtCC,qBAAAA,iCAAsDE,IAAAA,QAAYD,yBAAyB;;;;;;;AAmB6C;AAC7J;;;;;;;;;;;cADqBE,kBAAAA,GAAqBE,KAAAA,EAAOD,uBAAuB,qBAAqBE,YAAAA,+BAA2CC,qBAAAA;AAAAA,UACvHN,yBAAAA,YAAqCJ,WAAAA,GAAcE,OAAAA,UAAiBJ,OAAAA;EASjFc;;;AAAsB;AAE1B;;;;EAFIA,KAAAA,GAAQX,cAAAA;AAAAA;AAAAA,KAEAM,uBAAAA,WAAkCP,WAAAA,GAAcE,OAAAA,IAAWH,KAAAA,CAAMc,CAAAA,EAAGT,yBAAAA,CAA0BS,CAAAA"}
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { useCompositeContext } from "./composite-context.js";
|
|
3
|
+
import { selectTextField } from "./utils.js";
|
|
4
|
+
import { createElement, createHook, forwardRef, useEvent, useMergeRefs } from "@ariakit/react-utils";
|
|
5
|
+
import { disableFocusIn, getFirstTabbableIn, isButton, isFocusEventOutside, isSelfTarget, isTextField, removeUndefinedValues, restoreFocusIn } from "@ariakit/utils";
|
|
6
|
+
import { useEffect, useRef } from "react";
|
|
7
|
+
import { useStoreState } from "@ariakit/react-store";
|
|
8
|
+
//#region src/composite/composite-container.tsx
|
|
9
|
+
const TagName = "div";
|
|
10
|
+
function getFirstTabbable(container) {
|
|
11
|
+
restoreFocusIn(container);
|
|
12
|
+
const tabbable = getFirstTabbableIn(container);
|
|
13
|
+
disableFocusIn(container);
|
|
14
|
+
return tabbable;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Returns props to create a `CompositeContainer` component. This component
|
|
18
|
+
* renders interactive widgets inside composite items. This should be used in
|
|
19
|
+
* conjunction with the `CompositeItem` component, the `useCompositeItem` hook,
|
|
20
|
+
* or any other component/hook that uses `CompositeItem` underneath.
|
|
21
|
+
* @see https://ariakit.com/components/composite
|
|
22
|
+
* @example
|
|
23
|
+
* ```jsx
|
|
24
|
+
* const store = useCompositeStore();
|
|
25
|
+
* const props = useCompositeContainer({ store });
|
|
26
|
+
* <Composite store={store}>
|
|
27
|
+
* <CompositeItem {...props}>
|
|
28
|
+
* <input type="text" />
|
|
29
|
+
* </CompositeItem>
|
|
30
|
+
* </Composite>
|
|
31
|
+
* ```
|
|
32
|
+
*/
|
|
33
|
+
const useCompositeContainer = createHook(function useCompositeContainer({ store, ...props }) {
|
|
34
|
+
const context = useCompositeContext();
|
|
35
|
+
store = store || context;
|
|
36
|
+
const ref = useRef(null);
|
|
37
|
+
const isOpenRef = useRef(false);
|
|
38
|
+
const open = (collapseToEnd = false) => {
|
|
39
|
+
const container = ref.current;
|
|
40
|
+
if (!container) return;
|
|
41
|
+
restoreFocusIn(container);
|
|
42
|
+
const tabbable = getFirstTabbableIn(container);
|
|
43
|
+
if (!tabbable) {
|
|
44
|
+
disableFocusIn(container);
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
isOpenRef.current = true;
|
|
48
|
+
queueMicrotask(() => {
|
|
49
|
+
tabbable.focus();
|
|
50
|
+
if (isTextField(tabbable) || tabbable.isContentEditable) selectTextField(tabbable, collapseToEnd);
|
|
51
|
+
});
|
|
52
|
+
};
|
|
53
|
+
const close = () => {
|
|
54
|
+
const container = ref.current;
|
|
55
|
+
if (!container) return;
|
|
56
|
+
isOpenRef.current = false;
|
|
57
|
+
disableFocusIn(container);
|
|
58
|
+
};
|
|
59
|
+
const renderedItems = useStoreState(store, "renderedItems");
|
|
60
|
+
useEffect(() => {
|
|
61
|
+
const container = ref.current;
|
|
62
|
+
if (!container) return;
|
|
63
|
+
if (!isOpenRef.current && renderedItems?.length) disableFocusIn(container);
|
|
64
|
+
}, [renderedItems]);
|
|
65
|
+
const onFocusProp = props.onFocus;
|
|
66
|
+
const onFocus = useEvent((event) => {
|
|
67
|
+
onFocusProp?.(event);
|
|
68
|
+
if (event.defaultPrevented) return;
|
|
69
|
+
if (!store) return;
|
|
70
|
+
const isOpen = isOpenRef.current;
|
|
71
|
+
if (isSelfTarget(event)) {
|
|
72
|
+
isOpenRef.current = false;
|
|
73
|
+
const { baseElement } = store.getState();
|
|
74
|
+
const containers = baseElement?.querySelectorAll("[data-composite-container]");
|
|
75
|
+
if (containers) for (const container of containers) disableFocusIn(container);
|
|
76
|
+
} else if (!isOpen) {
|
|
77
|
+
isOpenRef.current = true;
|
|
78
|
+
restoreFocusIn(event.currentTarget);
|
|
79
|
+
store?.setState("moves", 0);
|
|
80
|
+
}
|
|
81
|
+
});
|
|
82
|
+
const onBlurProp = props.onBlur;
|
|
83
|
+
const onBlur = useEvent((event) => {
|
|
84
|
+
onBlurProp?.(event);
|
|
85
|
+
if (event.defaultPrevented) return;
|
|
86
|
+
if (isFocusEventOutside(event)) close();
|
|
87
|
+
});
|
|
88
|
+
const onKeyDownProp = props.onKeyDown;
|
|
89
|
+
const onKeyDown = useEvent((event) => {
|
|
90
|
+
onKeyDownProp?.(event);
|
|
91
|
+
if (event.defaultPrevented) return;
|
|
92
|
+
if (event.altKey) return;
|
|
93
|
+
if (event.ctrlKey) return;
|
|
94
|
+
if (event.metaKey) return;
|
|
95
|
+
if (event.shiftKey) return;
|
|
96
|
+
const container = event.currentTarget;
|
|
97
|
+
if (isSelfTarget(event)) {
|
|
98
|
+
if (event.key.length === 1 && event.key !== " ") {
|
|
99
|
+
const tabbable = getFirstTabbable(container);
|
|
100
|
+
if (!tabbable) return;
|
|
101
|
+
if (isTextField(tabbable) || tabbable.isContentEditable) {
|
|
102
|
+
event.stopPropagation();
|
|
103
|
+
open();
|
|
104
|
+
}
|
|
105
|
+
} else if (event.key === "Delete" || event.key === "Backspace") {
|
|
106
|
+
const tabbable = getFirstTabbable(container);
|
|
107
|
+
if (!tabbable) return;
|
|
108
|
+
if (isTextField(tabbable) || tabbable.isContentEditable) {
|
|
109
|
+
open();
|
|
110
|
+
const onInput = () => queueMicrotask(() => container.focus());
|
|
111
|
+
container.addEventListener("input", onInput, { once: true });
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
} else if (event.key === "Escape") queueMicrotask(() => container.focus());
|
|
115
|
+
else if (event.key === "Enter") {
|
|
116
|
+
const target = event.target;
|
|
117
|
+
if (target.tagName === "INPUT" && !isButton(target) || target.tagName === "TEXTAREA" || target.isContentEditable) {
|
|
118
|
+
event.preventDefault();
|
|
119
|
+
queueMicrotask(() => container.focus());
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
});
|
|
123
|
+
const onClickProp = props.onClick;
|
|
124
|
+
const onClick = useEvent((event) => {
|
|
125
|
+
onClickProp?.(event);
|
|
126
|
+
if (event.defaultPrevented) return;
|
|
127
|
+
if (isSelfTarget(event) && !event.detail) open(true);
|
|
128
|
+
});
|
|
129
|
+
props = {
|
|
130
|
+
"data-composite-container": "",
|
|
131
|
+
...props,
|
|
132
|
+
ref: useMergeRefs(ref, props.ref),
|
|
133
|
+
onFocus,
|
|
134
|
+
onBlur,
|
|
135
|
+
onKeyDown,
|
|
136
|
+
onClick
|
|
137
|
+
};
|
|
138
|
+
return removeUndefinedValues(props);
|
|
139
|
+
});
|
|
140
|
+
/**
|
|
141
|
+
* Renders a container for interactive widgets inside composite items. This
|
|
142
|
+
* should be used in conjunction with the
|
|
143
|
+
* [`CompositeItem`](https://ariakit.com/reference/composite-item) component or
|
|
144
|
+
* a component that uses
|
|
145
|
+
* [`CompositeItem`](https://ariakit.com/reference/composite-item) underneath.
|
|
146
|
+
* @see https://ariakit.com/components/composite
|
|
147
|
+
* @example
|
|
148
|
+
* ```jsx {3-5}
|
|
149
|
+
* <CompositeProvider>
|
|
150
|
+
* <Composite>
|
|
151
|
+
* <CompositeItem render={<CompositeContainer />}>
|
|
152
|
+
* <input type="text" />
|
|
153
|
+
* </CompositeItem>
|
|
154
|
+
* </Composite>
|
|
155
|
+
* </CompositeProvider>
|
|
156
|
+
* ```
|
|
157
|
+
*/
|
|
158
|
+
const CompositeContainer = forwardRef(function CompositeContainer(props) {
|
|
159
|
+
return createElement(TagName, useCompositeContainer(props));
|
|
160
|
+
});
|
|
161
|
+
//#endregion
|
|
162
|
+
export { CompositeContainer, useCompositeContainer };
|
|
163
|
+
|
|
164
|
+
//# sourceMappingURL=composite-container.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"composite-container.js","names":["composite"],"sources":["../../src/composite/composite-container.tsx"],"sourcesContent":["// TODO: Add data-attribute to indicate whether it's expanded?\nimport { useStoreState } from \"@ariakit/react-store\";\nimport {\n useEvent,\n useMergeRefs,\n createElement,\n createHook,\n forwardRef,\n} from \"@ariakit/react-utils\";\nimport type { Options, Props } from \"@ariakit/react-utils\";\nimport {\n isButton,\n isTextField,\n isFocusEventOutside,\n isSelfTarget,\n disableFocusIn,\n getFirstTabbableIn,\n restoreFocusIn,\n removeUndefinedValues,\n} from \"@ariakit/utils\";\nimport type { ElementType, FocusEvent, KeyboardEvent, MouseEvent } from \"react\";\nimport { useEffect, useRef } from \"react\";\nimport { useCompositeContext } from \"./composite-context.tsx\";\nimport type { CompositeStore } from \"./composite-store.ts\";\nimport { selectTextField } from \"./utils.ts\";\n\nconst TagName = \"div\" satisfies ElementType;\ntype TagName = typeof TagName;\ntype HTMLType = HTMLElementTagNameMap[TagName];\n\nfunction getFirstTabbable(container: HTMLElement) {\n restoreFocusIn(container);\n const tabbable = getFirstTabbableIn(container);\n disableFocusIn(container);\n return tabbable;\n}\n\n/**\n * Returns props to create a `CompositeContainer` component. This component\n * renders interactive widgets inside composite items. This should be used in\n * conjunction with the `CompositeItem` component, the `useCompositeItem` hook,\n * or any other component/hook that uses `CompositeItem` underneath.\n * @see https://ariakit.com/components/composite\n * @example\n * ```jsx\n * const store = useCompositeStore();\n * const props = useCompositeContainer({ store });\n * <Composite store={store}>\n * <CompositeItem {...props}>\n * <input type=\"text\" />\n * </CompositeItem>\n * </Composite>\n * ```\n */\nexport const useCompositeContainer = createHook<\n TagName,\n CompositeContainerOptions\n>(function useCompositeContainer({ store, ...props }) {\n const context = useCompositeContext();\n store = store || context;\n\n const ref = useRef<HTMLType>(null);\n const isOpenRef = useRef(false);\n\n const open = (collapseToEnd = false) => {\n const container = ref.current;\n if (!container) return;\n restoreFocusIn(container);\n const tabbable = getFirstTabbableIn(container);\n if (!tabbable) {\n disableFocusIn(container);\n return;\n }\n isOpenRef.current = true;\n queueMicrotask(() => {\n tabbable.focus();\n if (isTextField(tabbable) || tabbable.isContentEditable) {\n selectTextField(tabbable, collapseToEnd);\n }\n });\n };\n\n const close = () => {\n const container = ref.current;\n if (!container) return;\n isOpenRef.current = false;\n disableFocusIn(container);\n };\n\n const renderedItems = useStoreState(store, \"renderedItems\");\n\n // Disable focus on the tabbable elements inside the container when the\n // container is mounted.\n useEffect(() => {\n const container = ref.current;\n if (!container) return;\n const isOpen = isOpenRef.current;\n // We need to wait for the items to be populated before we can disable\n // focus, so we consider edge cases where some tabbable elements become\n // disabled after the first render (for example, when rendering nested\n // composite elements).\n if (!isOpen && renderedItems?.length) {\n disableFocusIn(container);\n }\n }, [renderedItems]);\n\n const onFocusProp = props.onFocus;\n\n const onFocus = useEvent((event: FocusEvent<HTMLType>) => {\n onFocusProp?.(event);\n if (event.defaultPrevented) return;\n if (!store) return;\n const isOpen = isOpenRef.current;\n if (isSelfTarget(event)) {\n // The container element itself has received focus. Here we make an\n // additional step in case tabbable elements have been added lazily to\n // the DOM. We get all containers in the current composite element and\n // disable all tabbable elements inside them.\n isOpenRef.current = false;\n const { baseElement } = store.getState();\n const composite = baseElement;\n const selector = \"[data-composite-container]\";\n const containers = composite?.querySelectorAll<HTMLElement>(selector);\n if (containers) {\n for (const container of containers) {\n disableFocusIn(container);\n }\n }\n } else if (!isOpen) {\n // Otherwise, if any element inside the container has received focus,\n // for example, by a direct user click, we should act as the container\n // has been opened.\n isOpenRef.current = true;\n restoreFocusIn(event.currentTarget);\n // Resets the moves in the store so the composite item will not be\n // focused right after the focusable element inside the container gets\n // focus.\n store?.setState(\"moves\", 0);\n }\n });\n\n const onBlurProp = props.onBlur;\n\n const onBlur = useEvent((event: FocusEvent<HTMLType>) => {\n onBlurProp?.(event);\n if (event.defaultPrevented) return;\n if (isFocusEventOutside(event)) {\n close();\n }\n });\n\n const onKeyDownProp = props.onKeyDown;\n\n const onKeyDown = useEvent((event: KeyboardEvent<HTMLType>) => {\n onKeyDownProp?.(event);\n if (event.defaultPrevented) return;\n if (event.altKey) return;\n if (event.ctrlKey) return;\n if (event.metaKey) return;\n if (event.shiftKey) return;\n const container = event.currentTarget;\n if (isSelfTarget(event)) {\n // Alphanumeric key on container: focus the first tabbable element in\n // the container if it's a text field or contenteditable element. This\n // will automatically replace the text field value with the pressed key.\n if (event.key.length === 1 && event.key !== \" \") {\n const tabbable = getFirstTabbable(container);\n if (!tabbable) return;\n if (isTextField(tabbable) || tabbable.isContentEditable) {\n event.stopPropagation();\n open();\n }\n }\n\n // Delete/Backspace on container: focus on the first tabbable element in\n // the container if it's a text field or contenteditable element. This\n // will automatically clear the text field value.\n else if (event.key === \"Delete\" || event.key === \"Backspace\") {\n const tabbable = getFirstTabbable(container);\n if (!tabbable) return;\n if (isTextField(tabbable) || tabbable.isContentEditable) {\n open();\n // We need to move focus back to the container as soon as the\n // delete/backspace key is captured by the text field.\n const onInput = () => queueMicrotask(() => container.focus());\n container.addEventListener(\"input\", onInput, { once: true });\n }\n }\n }\n\n // Escape on tabbable element inside container: move focus back to the\n // container.\n else if (event.key === \"Escape\") {\n queueMicrotask(() => container.focus());\n }\n\n // Enter on tabbable element inside container: move focus back to the\n // container only if it's an input or contenteditable element.\n else if (event.key === \"Enter\") {\n const target = event.target as HTMLElement;\n const isInput =\n (target.tagName === \"INPUT\" && !isButton(target)) ||\n target.tagName === \"TEXTAREA\";\n if (isInput || target.isContentEditable) {\n event.preventDefault();\n queueMicrotask(() => container.focus());\n }\n }\n });\n\n const onClickProp = props.onClick;\n\n const onClick = useEvent((event: MouseEvent<HTMLType>) => {\n onClickProp?.(event);\n if (event.defaultPrevented) return;\n if (isSelfTarget(event) && !event.detail) {\n // Move focus to the first tabbable element in the container and place\n // at the end.\n open(true);\n }\n });\n\n props = {\n \"data-composite-container\": \"\",\n ...props,\n ref: useMergeRefs(ref, props.ref),\n onFocus,\n onBlur,\n onKeyDown,\n onClick,\n };\n\n return removeUndefinedValues(props);\n});\n\n/**\n * Renders a container for interactive widgets inside composite items. This\n * should be used in conjunction with the\n * [`CompositeItem`](https://ariakit.com/reference/composite-item) component or\n * a component that uses\n * [`CompositeItem`](https://ariakit.com/reference/composite-item) underneath.\n * @see https://ariakit.com/components/composite\n * @example\n * ```jsx {3-5}\n * <CompositeProvider>\n * <Composite>\n * <CompositeItem render={<CompositeContainer />}>\n * <input type=\"text\" />\n * </CompositeItem>\n * </Composite>\n * </CompositeProvider>\n * ```\n */\nexport const CompositeContainer = forwardRef(function CompositeContainer(\n props: CompositeContainerProps,\n) {\n const htmlProps = useCompositeContainer(props);\n return createElement(TagName, htmlProps);\n});\n\nexport interface CompositeContainerOptions<\n _T extends ElementType = TagName,\n> extends Options {\n /**\n * Object returned by the\n * [`useCompositeStore`](https://ariakit.com/reference/use-composite-store)\n * hook. If not provided, the closest\n * [`Composite`](https://ariakit.com/reference/composite) or\n * [`CompositeProvider`](https://ariakit.com/reference/composite-provider)\n * components' context will be used.\n */\n store?: CompositeStore;\n}\n\nexport type CompositeContainerProps<T extends ElementType = TagName> = Props<\n T,\n CompositeContainerOptions<T>\n>;\n"],"mappings":";;;;;;;;AA8BA,MAAA,UAAS;SACP,iBAAwB,WAAA;CACxB,eAAM,SAAW;CACjB,MAAA,WAAe,mBAAS,SAAA;CACxB,eAAO,SAAA;CACT,OAAA;;;;;;;;;;;;;;;;;;;MAuBE,wBAAgB,WAAoB,SAAA,sBAAA,EAAA,OAAA,GAAA,SAAA;CACpC,MAAA,UAAQ,oBAAS;CAEjB,QAAM,SAAM;CACZ,MAAM,MAAA,OAAY,IAAA;CAElB,MAAM,YAAQ,OAAA,KAAgB;OAC5B,QAAM,gBAAgB,UAAA;EACtB,MAAK,YAAW,IAAA;EAChB,IAAA,CAAA,WAAe;EACf,eAAM,SAAW;EACjB,MAAK,WAAU,mBAAA,SAAA;MACb,CAAA,UAAA;GACA,eAAA,SAAA;GACF;EACA;EACA,UAAA,UAAA;uBACiB;GACf,SAAI,MAAA;GAGL,IAAA,YAAA,QAAA,KAAA,SAAA,mBAAA,gBAAA,UAAA,aAAA;EACH,CAAA;CAEA;OACE,cAAkB;EAClB,MAAK,YAAW,IAAA;EAChB,IAAA,CAAA,WAAU;EACV,UAAA,UAAe;EACjB,eAAA,SAAA;CAEA;CAIA,MAAA,gBAAgB,cAAA,OAAA,eAAA;iBACR;EACN,MAAK,YAAW,IAAA;EAMhB,IAAI,CALW,WAAU;EAQ3B,IAAI,CAAA,UAAA,WAAc,eAAA,QAAA,eAAA,SAAA;CAElB,GAAA,CAAA,aAAM,CAAA;CAEN,MAAM,cAAU,MAAU;OACxB,UAAc,UAAK,UAAA;EACnB,cAAU,KAAA;EACV,IAAI,MAAC,kBAAO;EACZ,IAAA,CAAA,OAAM;EACN,MAAI,SAAA,UAAqB;MAKvB,aAAU,KAAU,GAAA;GACpB,UAAQ,UAAA;GAGR,MAAM,EAAA,gBAAaA,MAAAA,SAAW;GAC9B,MAAI,aACF,aAAW,iBAAa,4BACE;GAG9B,IAAA,YAAY,KAAQ,MAAA,aAAA,YAAA,eAAA,SAAA;SAIlB,IAAU,CAAA,QAAA;GACV,UAAA,UAAe;GAIf,eAAO,MAAS,aAAU;GAC5B,OAAA,SAAA,SAAA,CAAA;EACD;CAED,CAAA;CAEA,MAAM,aAAS,MAAU;OACvB,SAAa,UAAK,UAAA;EAClB,aAAU,KAAA;EACV,IAAI,MAAA,kBAAoB;EAGzB,IAAA,oBAAA,KAAA,GAAA,MAAA;CAED,CAAA;CAEA,MAAM,gBAAY,MAAU;OAC1B,YAAgB,UAAK,UAAA;EACrB,gBAAU,KAAA;EACV,IAAI,MAAM,kBAAQ;EAClB,IAAI,MAAM,QAAA;EACV,IAAI,MAAM,SAAS;EACnB,IAAI,MAAM,SAAA;EACV,IAAA,MAAM,UAAY;EAClB,MAAI,YAAa,MAAK;mBAIN,KAAA;OACZ,MAAM,IAAA,WAAW,KAAA,MAAiB,QAAS,KAAA;IAC3C,MAAK,WAAU,iBAAA,SAAA;IACf,IAAI,CAAA,UAAA;QACF,YAAM,QAAgB,KAAA,SAAA,mBAAA;KACtB,MAAK,gBAAA;KACP,KAAA;IACF;UAMQ,IAAA,MAAA,QAAW,YAAiB,MAAA,QAAS,aAAA;IAC3C,MAAK,WAAU,iBAAA,SAAA;IACf,IAAI,CAAA,UAAA;QACF,YAAK,QAAA,KAAA,SAAA,mBAAA;KAGL,KAAA;KACA,MAAA,gBAAU,qBAA0B,UAAiB,MAAM,CAAA;KAC7D,UAAA,iBAAA,SAAA,SAAA,EAAA,MAAA,KAAA,CAAA;IACF;;SAWG,IAAI,MAAM,QAAQ,UAAS,qBAAA,UAAA,MAAA,CAAA;OAC9B,IAAM,MAAA,QAAe,SAAA;GAIrB,MAFG,SAAO,MAAA;OAGR,OAAM,YAAe,WAAA,CAAA,SAAA,MAAA,KAAA,OAAA,YAAA,cAAA,OAAA,mBAAA;IACrB,MAAA,eAAqB;IACvB,qBAAA,UAAA,MAAA,CAAA;GACF;EACD;CAED,CAAA;CAEA,MAAM,cAAU,MAAU;OACxB,UAAc,UAAK,UAAA;EACnB,cAAU,KAAA;EACV,IAAI,MAAA,kBAAwB;EAK7B,IAAA,aAAA,KAAA,KAAA,CAAA,MAAA,QAAA,KAAA,IAAA;CAED,CAAA;SACE;EACA,4BAAG;EACH,GAAA;EACA,KAAA,aAAA,KAAA,MAAA,GAAA;EACA;EACA;EACA;EACF;CAEA;CACD,OAAA,sBAAA,KAAA;;;;;;;;;;;;;;;;;;;;MAwBC,qBAAqB,WADH,SAAA,mBACqB,OAAA;CACxC,OAAA,cAAA,SAAA,sBAAA,KAAA,CAAA"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { r as CompositeStoreItem, t as CompositeStore } from "../composite-store-DyJc-XRA.js";
|
|
2
|
+
|
|
3
|
+
//#region src/composite/composite-context.d.ts
|
|
4
|
+
/**
|
|
5
|
+
* Returns the composite store from the nearest composite container.
|
|
6
|
+
* @example
|
|
7
|
+
* function CompositeItem() {
|
|
8
|
+
* const store = useCompositeContext();
|
|
9
|
+
*
|
|
10
|
+
* if (!store) {
|
|
11
|
+
* throw new Error("CompositeItem must be wrapped in CompositeProvider");
|
|
12
|
+
* }
|
|
13
|
+
*
|
|
14
|
+
* // Use the store...
|
|
15
|
+
* }
|
|
16
|
+
*/
|
|
17
|
+
declare const useCompositeContext: () => CompositeStore<CompositeStoreItem> | undefined;
|
|
18
|
+
declare const useCompositeScopedContext: (onlyScoped?: boolean) => CompositeStore<CompositeStoreItem> | undefined;
|
|
19
|
+
declare const useCompositeProviderContext: () => CompositeStore<CompositeStoreItem> | undefined;
|
|
20
|
+
declare const CompositeContextProvider: (props: import("react").ProviderProps<CompositeStore<CompositeStoreItem> | undefined>) => import("react/jsx-runtime").JSX.Element;
|
|
21
|
+
declare const CompositeScopedContextProvider: (props: import("react").ProviderProps<CompositeStore<CompositeStoreItem> | undefined>) => import("react/jsx-runtime").JSX.Element;
|
|
22
|
+
interface ItemContext {
|
|
23
|
+
baseElement?: HTMLElement;
|
|
24
|
+
id?: string;
|
|
25
|
+
}
|
|
26
|
+
declare const CompositeItemContext: import("react").Context<ItemContext | undefined>;
|
|
27
|
+
interface RowContext extends ItemContext {
|
|
28
|
+
ariaSetSize?: number;
|
|
29
|
+
ariaPosInSet?: number;
|
|
30
|
+
}
|
|
31
|
+
declare const CompositeRowContext: import("react").Context<RowContext | undefined>;
|
|
32
|
+
//#endregion
|
|
33
|
+
export { CompositeContextProvider, CompositeItemContext, CompositeRowContext, CompositeScopedContextProvider, useCompositeContext, useCompositeProviderContext, useCompositeScopedContext };
|
|
34
|
+
//# sourceMappingURL=composite-context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"composite-context.d.ts","names":["CompositeStore","useCompositeContext","_$__composite_store_ts0","CompositeStoreItem","useCompositeScopedContext","onlyScoped","useCompositeProviderContext","CompositeContextProvider","ProviderProps","props","JSX","Element","CompositeScopedContextProvider","ItemContext","HTMLElement","baseElement","id","CompositeItemContext","Context","RowContext","ariaSetSize","ariaPosInSet","CompositeRowContext"],"sources":["../../src/composite/composite-context.d.ts"],"mappings":";;;;;AAcA;;;;AAA8D;AAC9D;;;;;;cADqBC,mBAAAA,QAA2BD,cAAc,CAA+DE,kBAAAA;AAAAA,cACxGE,yBAAAA,GAA4BC,UAAAA,eAAyBL,cAAc,CAA+DE,kBAAAA;AAAAA,cAClII,2BAAAA,QAAmCN,cAAc,CAA+DE,kBAAAA;AAAAA,cAChHK,wBAAAA,GAA2BE,KAAAA,kBAAuBD,aAAAA,CAAcR,cAAc,CAA4GE,kBAAAA,+CAAXQ,GAAAA,CAAIC,OAAAA;AAAAA,cACnLC,8BAAAA,GAAiCH,KAAAA,kBAAuBD,aAAAA,CAAcR,cAAc,CAA4GE,kBAAAA,+CAAXQ,GAAAA,CAAIC,OAAAA;AAAAA,UACpME,WAAAA;EACNE,WAAAA,GAAcD,WAAW;EACzBE,EAAAA;AAAAA;AAAAA,cAEiBC,oBAAAA,kBAAsCC,OAAAA,CAAQL,WAAW;AAAA,UACpEM,UAAAA,SAAmBN,WAAW;EACpCO,WAAAA;EACAC,YAAAA;AAAAA;AAAAA,cAEiBC,mBAAAA,kBAAqCJ,OAAAA,CAAQC,UAAU"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { CollectionContextProvider, CollectionScopedContextProvider } from "../collection/collection-context.js";
|
|
3
|
+
import { createStoreContext } from "@ariakit/react-utils";
|
|
4
|
+
import { createContext } from "react";
|
|
5
|
+
//#region src/composite/composite-context.tsx
|
|
6
|
+
const ctx = createStoreContext([CollectionContextProvider], [CollectionScopedContextProvider]);
|
|
7
|
+
/**
|
|
8
|
+
* Returns the composite store from the nearest composite container.
|
|
9
|
+
* @example
|
|
10
|
+
* function CompositeItem() {
|
|
11
|
+
* const store = useCompositeContext();
|
|
12
|
+
*
|
|
13
|
+
* if (!store) {
|
|
14
|
+
* throw new Error("CompositeItem must be wrapped in CompositeProvider");
|
|
15
|
+
* }
|
|
16
|
+
*
|
|
17
|
+
* // Use the store...
|
|
18
|
+
* }
|
|
19
|
+
*/
|
|
20
|
+
const useCompositeContext = ctx.useContext;
|
|
21
|
+
const useCompositeScopedContext = ctx.useScopedContext;
|
|
22
|
+
const useCompositeProviderContext = ctx.useProviderContext;
|
|
23
|
+
const CompositeContextProvider = ctx.ContextProvider;
|
|
24
|
+
const CompositeScopedContextProvider = ctx.ScopedContextProvider;
|
|
25
|
+
const CompositeItemContext = createContext(void 0);
|
|
26
|
+
const CompositeRowContext = createContext(void 0);
|
|
27
|
+
//#endregion
|
|
28
|
+
export { CompositeContextProvider, CompositeItemContext, CompositeRowContext, CompositeScopedContextProvider, useCompositeContext, useCompositeProviderContext, useCompositeScopedContext };
|
|
29
|
+
|
|
30
|
+
//# sourceMappingURL=composite-context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"composite-context.js","names":[],"sources":["../../src/composite/composite-context.tsx"],"sourcesContent":["import { createStoreContext } from \"@ariakit/react-utils\";\nimport { createContext } from \"react\";\nimport {\n CollectionContextProvider,\n CollectionScopedContextProvider,\n} from \"../collection/collection-context.tsx\";\nimport type { CompositeStore } from \"./composite-store.ts\";\n\nconst ctx = createStoreContext<CompositeStore>(\n [CollectionContextProvider],\n [CollectionScopedContextProvider],\n);\n\n/**\n * Returns the composite store from the nearest composite container.\n * @example\n * function CompositeItem() {\n * const store = useCompositeContext();\n *\n * if (!store) {\n * throw new Error(\"CompositeItem must be wrapped in CompositeProvider\");\n * }\n *\n * // Use the store...\n * }\n */\nexport const useCompositeContext = ctx.useContext;\n\nexport const useCompositeScopedContext = ctx.useScopedContext;\n\nexport const useCompositeProviderContext = ctx.useProviderContext;\n\nexport const CompositeContextProvider = ctx.ContextProvider;\n\nexport const CompositeScopedContextProvider = ctx.ScopedContextProvider;\n\ninterface ItemContext {\n baseElement?: HTMLElement;\n id?: string;\n}\n\nexport const CompositeItemContext = createContext<ItemContext | undefined>(\n undefined,\n);\n\ninterface RowContext extends ItemContext {\n ariaSetSize?: number;\n ariaPosInSet?: number;\n}\n\nexport const CompositeRowContext = createContext<RowContext | undefined>(\n undefined,\n);\n"],"mappings":";;;;;;;;;;;;;;;;;;;AA4BA,MAAa,sBAAA,IAAA;AAEb,MAAa,4BAAA,IAA8B;AAE3C,MAAa,8BAA2B,IAAI;AAE5C,MAAa,2BAAA,IAAA;AAOb,MAAa,iCAAuB,IAClC;AAQF,MAAa,uBAAsB,cACjC,KACF,CAAA"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { t as CompositeStore } from "../composite-store-DyJc-XRA.js";
|
|
2
|
+
import { n as GroupLabelOptions } from "../group-label-C16IDs1b.js";
|
|
3
|
+
import { Props } from "@ariakit/react-utils";
|
|
4
|
+
import { ElementType } from "react";
|
|
5
|
+
|
|
6
|
+
//#region src/composite/composite-group-label.d.ts
|
|
7
|
+
declare const TagName = "div";
|
|
8
|
+
type TagName = typeof TagName;
|
|
9
|
+
/**
|
|
10
|
+
* Returns props to create a `CompositeGroupLabel` component. This hook must be
|
|
11
|
+
* used in a component that's wrapped with `CompositeGroup` so the
|
|
12
|
+
* `aria-labelledby` prop is properly set on the composite group element.
|
|
13
|
+
* @see https://ariakit.com/components/composite
|
|
14
|
+
* @example
|
|
15
|
+
* ```jsx
|
|
16
|
+
* // This component must be wrapped with CompositeGroup
|
|
17
|
+
* const props = useCompositeGroupLabel();
|
|
18
|
+
* <Role {...props}>Label</Role>
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
declare const useCompositeGroupLabel: import("@ariakit/react-utils").Hook<"div", CompositeGroupLabelOptions<"div">>;
|
|
22
|
+
/**
|
|
23
|
+
* Renders a label in a composite group. This component must be wrapped with
|
|
24
|
+
* [`CompositeGroup`](https://ariakit.com/reference/composite-group) so the
|
|
25
|
+
* `aria-labelledby` prop is properly set on the group element.
|
|
26
|
+
* @see https://ariakit.com/components/composite
|
|
27
|
+
* @example
|
|
28
|
+
* ```jsx {4}
|
|
29
|
+
* <CompositeProvider>
|
|
30
|
+
* <Composite>
|
|
31
|
+
* <CompositeGroup>
|
|
32
|
+
* <CompositeGroupLabel>Label</CompositeGroupLabel>
|
|
33
|
+
* <CompositeItem>Item 1</CompositeItem>
|
|
34
|
+
* <CompositeItem>Item 2</CompositeItem>
|
|
35
|
+
* </CompositeGroup>
|
|
36
|
+
* </Composite>
|
|
37
|
+
* </CompositeProvider>
|
|
38
|
+
* ```
|
|
39
|
+
*/
|
|
40
|
+
declare const CompositeGroupLabel: (props: CompositeGroupLabelProps) => import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>;
|
|
41
|
+
interface CompositeGroupLabelOptions<T extends ElementType = TagName> extends GroupLabelOptions<T> {
|
|
42
|
+
/**
|
|
43
|
+
* Object returned by the
|
|
44
|
+
* [`useCompositeStore`](https://ariakit.com/reference/use-composite-store)
|
|
45
|
+
* hook. If not provided, the closest
|
|
46
|
+
* [`Composite`](https://ariakit.com/reference/composite) or
|
|
47
|
+
* [`CompositeProvider`](https://ariakit.com/reference/composite-provider)
|
|
48
|
+
* components' context will be used.
|
|
49
|
+
*/
|
|
50
|
+
store?: CompositeStore;
|
|
51
|
+
}
|
|
52
|
+
type CompositeGroupLabelProps<T extends ElementType = TagName> = Props<T, CompositeGroupLabelOptions<T>>;
|
|
53
|
+
//#endregion
|
|
54
|
+
export { CompositeGroupLabel, CompositeGroupLabelOptions, CompositeGroupLabelProps, useCompositeGroupLabel };
|
|
55
|
+
//# sourceMappingURL=composite-group-label.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"composite-group-label.d.ts","names":["Props","ElementType","GroupLabelOptions","CompositeStore","TagName","useCompositeGroupLabel","CompositeGroupLabelOptions","Hook","CompositeGroupLabel","CompositeGroupLabelProps","props","ReactElement","JSXElementConstructor","T","store"],"sources":["../../src/composite/composite-group-label.d.ts"],"mappings":";;;;;;cAIcI,OAAAA;AAAAA,KACTA,OAAAA,UAAiBA,OAAO;AAF8B;;;;AACtC;AAAA;;;;AACQ;AAa7B;;AAf2D,cAetCC,sBAAAA,iCAAuDE,IAAAA,QAAYD,0BAA0B;;AAAA;AAmBlH;;;;;;;;;AAA+J;AAC/J;;;;;;cADqBE,mBAAAA,GAAsBE,KAAAA,EAAOD,wBAAwB,qBAAqBE,YAAAA,+BAA2CC,qBAAAA;AAAAA,UACzHN,0BAAAA,WAAqCL,WAAAA,GAAcG,OAAAA,UAAiBF,iBAAAA,CAAkBW,CAAAA;EAAD;;;;;;;;EASlGC,KAAAA,GAAQX,cAAAA;AAAAA;AAAAA,KAEAM,wBAAAA,WAAmCR,WAAAA,GAAcG,OAAAA,IAAWJ,KAAAA,CAAMa,CAAAA,EAAGP,0BAAAA,CAA2BO,CAAAA"}
|