solid-baseui 0.1.0-alpha.0 → 0.1.0-alpha.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +72 -0
- package/README.md +133 -15
- package/dist/lib/client/DialogHandle-DluOK_7u.js +521 -0
- package/dist/lib/client/DialogPopup-CfEb3F54.js +138 -0
- package/dist/lib/client/FieldControl-eDe-Jnp9.js +142 -0
- package/dist/lib/client/{FieldRootContext-izCEh80D.js → FieldRootContext-D3fuVjs3.js} +1 -1
- package/dist/lib/client/{FocusManager-grSdNHqW.js → FocusManager-q7z7PMV1.js} +94 -91
- package/dist/lib/client/{FormContext-BB05lWOI.js → FormContext-CwLBtm_d.js} +1 -0
- package/dist/lib/client/{InternalBackdrop-cSK13gaM.js → InternalBackdrop-B8_lfUvf.js} +1 -1
- package/dist/lib/client/{LabelableContext-DKsB0fIx.js → LabelableContext-CmQF-TX2.js} +3 -6
- package/dist/lib/client/MenuSubmenuTrigger-DMb5CwTF.js +1584 -0
- package/dist/lib/client/{PopupHandle-CcJG4NMy.js → PopupHandle-DyX5gY1e.js} +17 -11
- package/dist/lib/client/{PopupStore-DjB-wO88.js → PopupStore-BjRwcvbG.js} +138 -115
- package/dist/lib/client/PopupViewport-BanYHrD-.js +154 -0
- package/dist/lib/client/Separator-D5oJzlA3.js +27 -0
- package/dist/lib/client/TriggerFocusGuards-Fzspp3Y1.js +51 -0
- package/dist/lib/client/accordion/index.js +1 -1
- package/dist/lib/client/accordion-CA2DfX67.js +381 -0
- package/dist/lib/client/alert-dialog/index.js +1 -1
- package/dist/lib/client/{alert-dialog-BH_3ndio.js → alert-dialog-Bup88Dpx.js} +2 -2
- package/dist/lib/client/autocomplete/index.js +1 -1
- package/dist/lib/client/{autocomplete-Cob_FZEP.js → autocomplete-oyy_uRpU.js} +30 -25
- package/dist/lib/client/avatar/index.js +1 -1
- package/dist/lib/client/avatar-DNZ4fnBd.js +191 -0
- package/dist/lib/client/button/index.js +1 -1
- package/dist/lib/client/button-BJZYmCVv.js +88 -0
- package/dist/lib/client/checkbox/index.js +1 -1
- package/dist/lib/client/checkbox-group/index.js +1 -1
- package/dist/lib/client/checkbox-group-DGyrciZJ.js +135 -0
- package/dist/lib/client/checkbox-sQHYTbpB.js +425 -0
- package/dist/lib/client/collapsible/index.js +1 -1
- package/dist/lib/client/collapsible-BENbFFCc.js +230 -0
- package/dist/lib/client/combobox/index.js +2 -2
- package/dist/lib/client/combobox-BGH8QLXH.js +401 -0
- package/dist/lib/client/compositeNavigation-DCt1sQon.js +82 -0
- package/dist/lib/client/{constants-BYjBUIIi.js → constants-ByOMFJAe.js} +105 -101
- package/dist/lib/client/context-menu/index.js +1 -1
- package/dist/lib/client/context-menu-xQ1sBCET.js +220 -0
- package/dist/lib/client/{createAnchorPositioning-DcxDXUgB.js → createAnchorPositioning-DCXIApS1.js} +149 -146
- package/dist/lib/client/{createAnchoredPopupScrollLock-Cx0cbh1_.js → createAnchoredPopupScrollLock-BxKpJbCE.js} +2 -2
- package/dist/lib/client/{createClickInteraction-CTaIFBiV.js → createClickInteraction-BeBsTqtY.js} +1 -1
- package/dist/lib/client/{createCollapsiblePanel-DeDu0O2t.js → createCollapsiblePanel-BQ8r4RTi.js} +1 -1
- package/dist/lib/client/createFocusInteraction-DQPWkZe2.js +60 -0
- package/dist/lib/client/createLabelableId-DxJRwMUJ.js +14 -0
- package/dist/lib/client/{createPopupAutoResize-CGNiLhGq.js → createPopupAutoResize-CSNpMz5v.js} +4 -4
- package/dist/lib/client/{createTransitionStatus-B1L-whed.js → createTransitionStatus-BL_cPSEA.js} +12 -12
- package/dist/lib/client/dialog/index.js +1 -1
- package/dist/lib/client/{dialog-DkaQwIgP.js → dialog-C0EF0a5u.js} +2 -2
- package/dist/lib/client/{dom-BEAeQ9Eb.js → dom-lDdayFF_.js} +25 -15
- package/dist/lib/client/drawer/index.js +1 -1
- package/dist/lib/client/drawer-uKoNBwDU.js +1540 -0
- package/dist/lib/client/field/index.js +1 -1
- package/dist/lib/client/field-DIMrgpBW.js +483 -0
- package/dist/lib/client/fieldset/index.js +1 -1
- package/dist/lib/client/fieldset-Byqk3noT.js +70 -0
- package/dist/lib/client/form/index.js +1 -1
- package/dist/lib/client/form-Bqq8wSLY.js +109 -0
- package/dist/lib/client/index.js +44 -42
- package/dist/lib/client/input/index.js +1 -1
- package/dist/lib/client/{input-gb0ejxkm.js → input-YthuKwIE.js} +1 -1
- package/dist/lib/client/internals/composeEventHandlers.js +14 -8
- package/dist/lib/client/internals/field-root-context/index.js +2 -2
- package/dist/lib/client/internals/form-context/index.js +1 -1
- package/dist/lib/client/internals/labelable-provider/index.js +1 -1
- package/dist/lib/client/{mergeStyleValue-C4ITiiIV.js → isSolidAccessor-BH_FevwH.js} +8 -15
- package/dist/lib/client/menu/index.js +1 -1
- package/dist/lib/client/menu-4rNLN6aX.js +334 -0
- package/dist/lib/client/menubar/index.js +1 -1
- package/dist/lib/client/menubar-nFQGtNmY.js +163 -0
- package/dist/lib/client/mergeStyleValue-Dcd36yxZ.js +12 -0
- package/dist/lib/client/meter/index.js +1 -1
- package/dist/lib/client/meter-BvWdppcx.js +178 -0
- package/dist/lib/client/navigation-menu/index.js +1 -1
- package/dist/lib/client/navigation-menu-BbRyun3a.js +1070 -0
- package/dist/lib/client/number-field/index.js +1 -1
- package/dist/lib/client/number-field-hT_H0hVu.js +1043 -0
- package/dist/lib/client/otp-field/index.js +1 -1
- package/dist/lib/client/otp-field-lsy2iGID.js +584 -0
- package/dist/lib/client/popover/index.js +1 -1
- package/dist/lib/client/popover-Cmvmuf1L.js +940 -0
- package/dist/lib/client/popupStateMapping-nhukB8NK.js +371 -0
- package/dist/lib/client/preview-card/index.js +1 -1
- package/dist/lib/client/preview-card-Dtu8AnBN.js +632 -0
- package/dist/lib/client/progress/index.js +1 -1
- package/dist/lib/client/progress-AVKxvgpc.js +195 -0
- package/dist/lib/client/radio/index.js +1 -1
- package/dist/lib/client/radio-CeCU-Qqi.js +284 -0
- package/dist/lib/client/radio-group/index.js +1 -1
- package/dist/lib/client/radio-group-NbuJvjQe.js +195 -0
- package/dist/lib/client/runOnceAnimationsFinish-CFADb4CN.js +49 -0
- package/dist/lib/client/{safePolygon--bbKn0c8.js → safePolygon-DVAR5dQD.js} +74 -70
- package/dist/lib/client/scroll-area/index.js +1 -1
- package/dist/lib/client/scroll-area-DqbvoAd7.js +717 -0
- package/dist/lib/client/{scrollable-SRNYlhF7.js → scrollable-BVaDUXng.js} +12 -12
- package/dist/lib/client/select/index.js +1 -1
- package/dist/lib/client/select-Dad51Xbn.js +1934 -0
- package/dist/lib/client/separator/index.js +1 -1
- package/dist/lib/client/slider/index.js +1 -1
- package/dist/lib/client/slider-CLSKFq_M.js +927 -0
- package/dist/lib/client/switch/index.js +1 -1
- package/dist/lib/client/switch-Bzuu5EIg.js +306 -0
- package/dist/lib/client/tabs/index.js +1 -1
- package/dist/lib/client/tabs-DWiBDv8D.js +695 -0
- package/dist/lib/client/toast/index.js +1 -1
- package/dist/lib/client/toast-DmtPJW2k.js +1118 -0
- package/dist/lib/client/toggle/index.js +1 -1
- package/dist/lib/client/toggle-CAe-Z8Xn.js +142 -0
- package/dist/lib/client/toggle-group/index.js +1 -1
- package/dist/lib/client/toggle-group-BbQg5s-m.js +134 -0
- package/dist/lib/client/toolbar/index.js +1 -1
- package/dist/lib/client/toolbar-BXT_g-oX.js +504 -0
- package/dist/lib/client/tooltip/index.js +1 -1
- package/dist/lib/client/tooltip-h2r2_Xuo.js +850 -0
- package/dist/lib/client/use-render/index.js +2 -0
- package/dist/lib/client/useFilteredItems-BX0BEuSI.js +2301 -0
- package/dist/lib/client/useRender-CxZ8PI-g.js +12 -0
- package/dist/lib/server/{DialogHandle-ATZlm9RC.js → DialogHandle-BGIISmG7.js} +37 -46
- package/dist/lib/server/{DialogPopup-BebI-w5P.js → DialogPopup-C2ZDGf42.js} +12 -15
- package/dist/lib/server/{FieldControl-Y_kI7ARp.js → FieldControl-CDMMyvuj.js} +62 -26
- package/dist/lib/server/{FieldRootContext-IC-LWzVp.js → FieldRootContext-Bfpna6gA.js} +3 -3
- package/dist/lib/server/{FocusManager-BrbZVWME.js → FocusManager-D-xgblGs.js} +9 -5
- package/dist/lib/server/{FormContext-pvESt85v.js → FormContext-CYwo_ZnB.js} +1 -0
- package/dist/lib/server/{InternalBackdrop-C_iDPVR-.js → InternalBackdrop-D_2zAWnl.js} +1 -1
- package/dist/lib/server/{LabelableContext-DZP3rgAY.js → LabelableContext-BTeF0IWb.js} +4 -6
- package/dist/lib/server/{MenuSubmenuTrigger-DA4gsv6z.js → MenuSubmenuTrigger-BMQKlOvU.js} +177 -210
- package/dist/lib/server/{PopupHandle-DthPgNjy.js → PopupHandle-QNj4mED2.js} +14 -5
- package/dist/lib/server/{PopupStore-DEs3FAEe.js → PopupStore-evylvVnN.js} +42 -15
- package/dist/lib/server/{PopupViewport-3r_KTFwX.js → PopupViewport-BDttjORN.js} +38 -28
- package/dist/lib/server/{Separator-vhhYxWGr.js → Separator-DTvtnxzP.js} +4 -6
- package/dist/lib/server/TriggerFocusGuards-B9GNbLrL.js +61 -0
- package/dist/lib/server/accordion/index.js +39 -77
- package/dist/lib/server/alert-dialog/index.js +2 -2
- package/dist/lib/server/autocomplete/index.js +14 -5
- package/dist/lib/server/avatar/index.js +90 -51
- package/dist/lib/server/button/index.js +14 -15
- package/dist/lib/server/checkbox/index.js +37 -64
- package/dist/lib/server/checkbox-group/index.js +21 -11
- package/dist/lib/server/collapsible/index.js +42 -49
- package/dist/lib/server/combobox/index.js +79 -50
- package/dist/lib/server/{compositeNavigation-BRVT1C38.js → compositeNavigation-D5jKM4yk.js} +32 -1
- package/dist/lib/server/{constants-9H__9xbS.js → constants-ByqXubhO.js} +10 -5
- package/dist/lib/server/context-menu/index.js +14 -16
- package/dist/lib/server/{createAnchorPositioning-C-cVOPwz.js → createAnchorPositioning-DrQYe7RS.js} +12 -7
- package/dist/lib/server/{createAnchoredPopupScrollLock-DFuUrykR.js → createAnchoredPopupScrollLock-q6gnOSmv.js} +2 -2
- package/dist/lib/server/{createClickInteraction-BYsMgvup.js → createClickInteraction-D7oc1Vco.js} +1 -1
- package/dist/lib/server/{createCollapsiblePanel-DTyVJz0G.js → createCollapsiblePanel-B45kTe6v.js} +1 -1
- package/dist/lib/server/{createFocusInteraction-EIS0QOel.js → createFocusInteraction-DFKr4G7a.js} +22 -2
- package/dist/lib/server/createLabelableId-WMUKtY6s.js +18 -0
- package/dist/lib/server/{createPopupAutoResize-DO50jjNX.js → createPopupAutoResize-Cg0-lLf4.js} +2 -2
- package/dist/lib/server/{createTransitionStatus-BTlrerSS.js → createTransitionStatus-184v7j3-.js} +2 -2
- package/dist/lib/server/dialog/index.js +2 -2
- package/dist/lib/server/{dom-Crg_2R-j.js → dom-D8_aB1yy.js} +14 -1
- package/dist/lib/server/drawer/index.js +96 -100
- package/dist/lib/server/field/index.js +110 -98
- package/dist/lib/server/fieldset/index.js +13 -16
- package/dist/lib/server/form/index.js +18 -14
- package/dist/lib/server/index.js +5 -3
- package/dist/lib/server/input/index.js +1 -1
- package/dist/lib/server/internals/composeEventHandlers.js +15 -9
- package/dist/lib/server/internals/field-root-context/index.js +1 -1
- package/dist/lib/server/internals/form-context/index.js +1 -1
- package/dist/lib/server/internals/labelable-provider/index.js +1 -1
- package/dist/lib/server/{mergeStyleValue-Db8bRCM4.js → isSolidAccessor-CZpzAH5l.js} +7 -21
- package/dist/lib/server/menu/index.js +30 -29
- package/dist/lib/server/menubar/index.js +10 -35
- package/dist/lib/server/mergeStyleValue-DecVaoac.js +20 -0
- package/dist/lib/server/meter/index.js +20 -32
- package/dist/lib/server/navigation-menu/index.js +67 -138
- package/dist/lib/server/number-field/index.js +64 -62
- package/dist/lib/server/otp-field/index.js +19 -22
- package/dist/lib/server/popover/index.js +61 -77
- package/dist/lib/server/{popupStateMapping-nKoUwoke.js → popupStateMapping-VHqr6M4H.js} +19 -17
- package/dist/lib/server/preview-card/index.js +39 -50
- package/dist/lib/server/progress/index.js +21 -33
- package/dist/lib/server/radio/index.js +24 -45
- package/dist/lib/server/radio-group/index.js +12 -13
- package/dist/lib/server/{runOnceAnimationsFinish-DCHzXWZU.js → runOnceAnimationsFinish-CYq38H8J.js} +2 -1
- package/dist/lib/server/{safePolygon-CAm5RJGv.js → safePolygon-B8QtiIZ3.js} +6 -1
- package/dist/lib/server/scroll-area/index.js +40 -49
- package/dist/lib/server/{scrollable-CjsSxbGr.js → scrollable-C9Pgq8T5.js} +1 -1
- package/dist/lib/server/select/index.js +128 -213
- package/dist/lib/server/separator/index.js +1 -1
- package/dist/lib/server/slider/index.js +39 -52
- package/dist/lib/server/switch/index.js +22 -32
- package/dist/lib/server/tabs/index.js +197 -137
- package/dist/lib/server/toast/index.js +78 -95
- package/dist/lib/server/toggle/index.js +11 -13
- package/dist/lib/server/toggle-group/index.js +11 -9
- package/dist/lib/server/toolbar/index.js +76 -93
- package/dist/lib/server/tooltip/index.js +53 -57
- package/dist/lib/server/use-render/index.js +2 -0
- package/dist/lib/server/{useFilteredItems-DvuctLt3.js → useFilteredItems-BmhL0nf1.js} +335 -316
- package/dist/lib/server/useRender-CryVdCjs.js +16 -0
- package/dist/lib/types/accordion/header/AccordionHeader.d.ts +1 -1
- package/dist/lib/types/accordion/item/AccordionItem.d.ts +1 -1
- package/dist/lib/types/accordion/panel/AccordionPanel.d.ts +1 -1
- package/dist/lib/types/accordion/root/AccordionRoot.d.ts +2 -7
- package/dist/lib/types/accordion/trigger/AccordionTrigger.d.ts +7 -7
- package/dist/lib/types/alert-dialog/trigger/AlertDialogTrigger.d.ts +1 -2
- package/dist/lib/types/autocomplete/trigger/AutocompleteTrigger.d.ts +1 -0
- package/dist/lib/types/avatar/fallback/AvatarFallback.d.ts +2 -2
- package/dist/lib/types/avatar/image/AvatarImage.d.ts +9 -3
- package/dist/lib/types/avatar/image/createImageLoadingStatus.d.ts +3 -2
- package/dist/lib/types/avatar/root/AvatarRoot.d.ts +1 -1
- package/dist/lib/types/button/Button.d.ts +1 -1
- package/dist/lib/types/checkbox-group/CheckboxGroupContext.d.ts +4 -1
- package/dist/lib/types/collapsible/panel/CollapsiblePanel.d.ts +1 -1
- package/dist/lib/types/collapsible/root/CollapsibleRoot.d.ts +1 -1
- package/dist/lib/types/collapsible/trigger/CollapsibleTrigger.d.ts +1 -1
- package/dist/lib/types/combobox/chip/ComboboxChip.d.ts +2 -0
- package/dist/lib/types/combobox/index.d.ts +2 -0
- package/dist/lib/types/combobox/index.parts.d.ts +1 -0
- package/dist/lib/types/combobox/items/createItems.d.ts +42 -0
- package/dist/lib/types/combobox/root/AriaCombobox.d.ts +4 -0
- package/dist/lib/types/combobox/root/ComboboxRoot.d.ts +17 -8
- package/dist/lib/types/combobox/root/ComboboxRootContext.d.ts +2 -0
- package/dist/lib/types/combobox/store/ComboboxStore.d.ts +1 -0
- package/dist/lib/types/combobox/trigger/ComboboxTrigger.d.ts +1 -0
- package/dist/lib/types/combobox/utils/handleInputPress.d.ts +1 -1
- package/dist/lib/types/dialog/backdrop/DialogBackdrop.d.ts +1 -1
- package/dist/lib/types/dialog/description/DialogDescription.d.ts +1 -1
- package/dist/lib/types/dialog/title/DialogTitle.d.ts +1 -1
- package/dist/lib/types/dialog/viewport/DialogViewport.d.ts +1 -1
- package/dist/lib/types/drawer/backdrop/DrawerBackdrop.d.ts +1 -1
- package/dist/lib/types/drawer/content/DrawerContent.d.ts +1 -1
- package/dist/lib/types/drawer/indent/DrawerIndent.d.ts +1 -1
- package/dist/lib/types/drawer/indent-background/DrawerIndentBackground.d.ts +1 -1
- package/dist/lib/types/field/control/FieldControl.d.ts +5 -5
- package/dist/lib/types/field/root/FieldRoot.d.ts +1 -1
- package/dist/lib/types/field/root/createFieldValidation.d.ts +3 -2
- package/dist/lib/types/fieldset/legend/FieldsetLegend.d.ts +1 -1
- package/dist/lib/types/fieldset/root/FieldsetRoot.d.ts +1 -1
- package/dist/lib/types/index.d.ts +1 -0
- package/dist/lib/types/internals/composeEventHandlers.d.ts +9 -2
- package/dist/lib/types/internals/createTransitionStatus.d.ts +1 -1
- package/dist/lib/types/internals/field-root-context/FieldRootContext.d.ts +1 -0
- package/dist/lib/types/internals/form-context/FormContext.d.ts +1 -0
- package/dist/lib/types/internals/labelable-provider/LabelableContext.d.ts +1 -0
- package/dist/lib/types/internals/labelable-provider/createLabelableId.d.ts +3 -0
- package/dist/lib/types/internals/overlay/PopupPortal.d.ts +4 -2
- package/dist/lib/types/internals/overlay/createPopupPresence.d.ts +1 -0
- package/dist/lib/types/internals/overlay/dom.d.ts +2 -0
- package/dist/lib/types/menu/root/MenuRootContext.d.ts +1 -0
- package/dist/lib/types/meter/indicator/MeterIndicator.d.ts +1 -1
- package/dist/lib/types/meter/label/MeterLabel.d.ts +1 -1
- package/dist/lib/types/meter/root/MeterRoot.d.ts +1 -1
- package/dist/lib/types/meter/track/MeterTrack.d.ts +1 -1
- package/dist/lib/types/meter/value/MeterValue.d.ts +1 -1
- package/dist/lib/types/navigation-menu/trigger/NavigationMenuTrigger.d.ts +1 -0
- package/dist/lib/types/number-field/input/NumberFieldInput.d.ts +5 -5
- package/dist/lib/types/number-field/root/NumberFieldRootContext.d.ts +1 -0
- package/dist/lib/types/popover/arrow/PopoverArrow.d.ts +1 -1
- package/dist/lib/types/popover/backdrop/PopoverBackdrop.d.ts +1 -1
- package/dist/lib/types/popover/description/PopoverDescription.d.ts +1 -1
- package/dist/lib/types/popover/positioner/PopoverPositioner.d.ts +1 -1
- package/dist/lib/types/popover/title/PopoverTitle.d.ts +1 -1
- package/dist/lib/types/preview-card/arrow/PreviewCardArrow.d.ts +1 -1
- package/dist/lib/types/preview-card/backdrop/PreviewCardBackdrop.d.ts +1 -1
- package/dist/lib/types/preview-card/positioner/PreviewCardPositioner.d.ts +1 -1
- package/dist/lib/types/progress/indicator/ProgressIndicator.d.ts +1 -1
- package/dist/lib/types/progress/label/ProgressLabel.d.ts +1 -1
- package/dist/lib/types/progress/root/ProgressRoot.d.ts +1 -1
- package/dist/lib/types/progress/track/ProgressTrack.d.ts +1 -1
- package/dist/lib/types/progress/value/ProgressValue.d.ts +1 -1
- package/dist/lib/types/radio/indicator/RadioIndicator.d.ts +2 -2
- package/dist/lib/types/scroll-area/content/ScrollAreaContent.d.ts +1 -1
- package/dist/lib/types/scroll-area/corner/ScrollAreaCorner.d.ts +1 -1
- package/dist/lib/types/scroll-area/root/ScrollAreaRoot.d.ts +1 -1
- package/dist/lib/types/scroll-area/scrollbar/ScrollAreaScrollbar.d.ts +2 -1
- package/dist/lib/types/scroll-area/thumb/ScrollAreaThumb.d.ts +1 -1
- package/dist/lib/types/scroll-area/viewport/ScrollAreaViewport.d.ts +1 -1
- package/dist/lib/types/separator/Separator.d.ts +1 -1
- package/dist/lib/types/slider/track/SliderTrack.d.ts +2 -2
- package/dist/lib/types/tabs/indicator/prehydrationScript.d.ts +1 -1
- package/dist/lib/types/tabs/list/TabsList.d.ts +1 -1
- package/dist/lib/types/tabs/panel/TabsPanel.d.ts +1 -1
- package/dist/lib/types/tabs/root/TabsRoot.d.ts +1 -1
- package/dist/lib/types/tabs/tab/TabsTab.d.ts +1 -1
- package/dist/lib/types/toast/createToastManager.d.ts +2 -2
- package/dist/lib/types/toast/store/ToastStore.d.ts +1 -1
- package/dist/lib/types/toast/useToastManager.d.ts +1 -1
- package/dist/lib/types/toggle/Toggle.d.ts +1 -1
- package/dist/lib/types/toggle-group/ToggleGroup.d.ts +1 -1
- package/dist/lib/types/toolbar/group/ToolbarGroup.d.ts +1 -1
- package/dist/lib/types/toolbar/link/ToolbarLink.d.ts +10 -3
- package/dist/lib/types/toolbar/root/ToolbarRoot.d.ts +10 -4
- package/dist/lib/types/toolbar/separator/ToolbarSeparator.d.ts +1 -1
- package/dist/lib/types/tooltip/arrow/TooltipArrow.d.ts +1 -1
- package/dist/lib/types/tooltip/positioner/TooltipPositioner.d.ts +1 -1
- package/dist/lib/types/types/index.d.ts +7 -3
- package/dist/lib/types/use-render/index.d.ts +2 -0
- package/dist/lib/types/use-render/useRender.d.ts +10 -0
- package/package.json +24 -11
- package/dist/lib/client/DialogHandle-DrN2YWCv.js +0 -518
- package/dist/lib/client/DialogPopup-ZlqmGfdk.js +0 -136
- package/dist/lib/client/FieldControl-Bc-z2og6.js +0 -116
- package/dist/lib/client/MenuSubmenuTrigger-QZkQ0F2v.js +0 -1570
- package/dist/lib/client/PopupViewport-DgrIqQea.js +0 -152
- package/dist/lib/client/Separator-9DboD_Si.js +0 -25
- package/dist/lib/client/TriggerFocusGuards-CQ-JuASy.js +0 -56
- package/dist/lib/client/accordion-sOXt9AlG.js +0 -399
- package/dist/lib/client/avatar-AF9vyD4q.js +0 -146
- package/dist/lib/client/button-DpUi-2g8.js +0 -82
- package/dist/lib/client/checkbox-BbAwOptH.js +0 -441
- package/dist/lib/client/checkbox-group-CSSp_805.js +0 -128
- package/dist/lib/client/collapsible-BIbje_ub.js +0 -232
- package/dist/lib/client/combobox-8O-vgTLL.js +0 -352
- package/dist/lib/client/compositeNavigation-sxniYTc7.js +0 -58
- package/dist/lib/client/context-menu-BTMkXtrs.js +0 -217
- package/dist/lib/client/createFocusInteraction-D4w1-235.js +0 -50
- package/dist/lib/client/drawer-Ce2cChLt.js +0 -1550
- package/dist/lib/client/field-C-o7jzKW.js +0 -469
- package/dist/lib/client/fieldset-BQTAWv2L.js +0 -65
- package/dist/lib/client/form-BINBiW5L.js +0 -106
- package/dist/lib/client/menu-DeMT08oD.js +0 -326
- package/dist/lib/client/menubar-C4aomSYv.js +0 -185
- package/dist/lib/client/meter-xSU37Q0m.js +0 -171
- package/dist/lib/client/navigation-menu-ZILQmdn6.js +0 -1083
- package/dist/lib/client/number-field-B8CsTb_8.js +0 -1035
- package/dist/lib/client/otp-field-DBkMcnog.js +0 -582
- package/dist/lib/client/popover-CQwyp-fs.js +0 -929
- package/dist/lib/client/popupStateMapping-C9eZl19i.js +0 -367
- package/dist/lib/client/preview-card-D_2Q8lpC.js +0 -625
- package/dist/lib/client/progress-D7r0xAC9.js +0 -188
- package/dist/lib/client/radio-CzGQ81z1.js +0 -299
- package/dist/lib/client/radio-group-DpHlBKA6.js +0 -193
- package/dist/lib/client/runOnceAnimationsFinish-15EM-Z4l.js +0 -48
- package/dist/lib/client/scroll-area-CffM4U0R.js +0 -701
- package/dist/lib/client/select-IFhiEg73.js +0 -1940
- package/dist/lib/client/slider-BCagYmGp.js +0 -921
- package/dist/lib/client/switch-RIJeDnvS.js +0 -308
- package/dist/lib/client/tabs-fOAKs7r3.js +0 -696
- package/dist/lib/client/toast-D2P8UqUs.js +0 -1108
- package/dist/lib/client/toggle-group-0Aue0owJ.js +0 -129
- package/dist/lib/client/toggle-momVEIBL.js +0 -138
- package/dist/lib/client/toolbar-Du22aKCv.js +0 -492
- package/dist/lib/client/tooltip-CyK61fl1.js +0 -844
- package/dist/lib/client/useFilteredItems-DTekHz39.js +0 -2223
- package/dist/lib/client/withoutComponentBinding-CcCW7fSc.js +0 -13
- package/dist/lib/server/TriggerFocusGuards-sbGwf45f.js +0 -63
- package/dist/lib/server/withoutComponentBinding-BHaWr5kU.js +0 -20
- package/dist/lib/types/internals/withoutComponentBinding.d.ts +0 -7
|
@@ -0,0 +1,1584 @@
|
|
|
1
|
+
import { t as e } from "./useRender-CxZ8PI-g.js";
|
|
2
|
+
import { getStateAttributesProps as t } from "./internals/getStateAttributesProps.js";
|
|
3
|
+
import { P as n, S as r, d as i, k as a, u as o, y as s } from "./reasons-Co5CzjKq.js";
|
|
4
|
+
import { n as c, t as l } from "./resolveStyle-XcgAuaKR.js";
|
|
5
|
+
import { createChangeEventDetails as u } from "./internals/createBaseUIEventDetails.js";
|
|
6
|
+
import { transitionStatusMapping as d } from "./internals/stateAttributesMapping.js";
|
|
7
|
+
import { composeEventHandlers as f, liveEventHandler as p } from "./internals/composeEventHandlers.js";
|
|
8
|
+
import { t as m } from "./runOnceAnimationsFinish-CFADb4CN.js";
|
|
9
|
+
import { s as h } from "./dom-lDdayFF_.js";
|
|
10
|
+
import { t as g } from "./createAnchorPositioning-DCXIApS1.js";
|
|
11
|
+
import { t as _ } from "./InternalBackdrop-B8_lfUvf.js";
|
|
12
|
+
import { t as v } from "./createAnchoredPopupScrollLock-BxKpJbCE.js";
|
|
13
|
+
import { c as y, i as b, n as x, r as S, s as C, t as w } from "./FloatingTree-23B7KKPD.js";
|
|
14
|
+
import { a as T, n as E, o as D, t as O } from "./PopupStore-BjRwcvbG.js";
|
|
15
|
+
import { n as k, r as A, t as ee } from "./safePolygon-DVAR5dQD.js";
|
|
16
|
+
import { t as j } from "./createTransitionStatus-BL_cPSEA.js";
|
|
17
|
+
import { a as M, h as N, n as P, o as te, r as F } from "./popupStateMapping-nhukB8NK.js";
|
|
18
|
+
import { t as ne } from "./FocusManager-q7z7PMV1.js";
|
|
19
|
+
import { r as re } from "./PopupHandle-DyX5gY1e.js";
|
|
20
|
+
import { t as ie } from "./setRef-fXF6OIo3.js";
|
|
21
|
+
import { a as I, r as L } from "./buttonSemantics-paljfpOX.js";
|
|
22
|
+
import { n as ae } from "./DirectionContext-BwMabICS.js";
|
|
23
|
+
import { n as oe } from "./MenubarContext-BYt3fkt-.js";
|
|
24
|
+
import { n as se } from "./ToolbarRootContext-88yZoAOy.js";
|
|
25
|
+
import { claimElement as ce, createComponent as R, getNextElement as z, memo as B, mergeProps as V, runHydrationEvents as H, spread as U, template as W } from "@solidjs/web";
|
|
26
|
+
import { $REFRESH as le, Show as ue, createContext as G, createEffect as K, createMemo as q, createSignal as J, createUniqueId as de, omit as Y, onCleanup as X, untrack as Z, useContext as Q } from "solid-js";
|
|
27
|
+
//#region src/context-menu/root/ContextMenuRootContext.ts
|
|
28
|
+
var fe = Symbol("ContextMenuRootContext"), pe = G(fe);
|
|
29
|
+
function me(e = !0) {
|
|
30
|
+
let t = Q(pe);
|
|
31
|
+
if (t === fe) {
|
|
32
|
+
if (e) return;
|
|
33
|
+
throw Error("Base UI: ContextMenuRootContext is missing. ContextMenu parts must be placed within <ContextMenu.Root>.");
|
|
34
|
+
}
|
|
35
|
+
return t;
|
|
36
|
+
}
|
|
37
|
+
//#endregion
|
|
38
|
+
//#region src/menu/store/MenuCollection.ts
|
|
39
|
+
var he = class {
|
|
40
|
+
registrations = /* @__PURE__ */ new Map();
|
|
41
|
+
revision;
|
|
42
|
+
setRevision;
|
|
43
|
+
constructor() {
|
|
44
|
+
let [e, t] = J(0, { ownedWrite: !0 });
|
|
45
|
+
this.revision = e, this.setRevision = t;
|
|
46
|
+
}
|
|
47
|
+
register(e) {
|
|
48
|
+
return this.registrations.set(e.token, e), this.touch(), () => {
|
|
49
|
+
this.registrations.delete(e.token) && this.touch();
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
touch() {
|
|
53
|
+
this.setRevision((e) => e + 1);
|
|
54
|
+
}
|
|
55
|
+
items() {
|
|
56
|
+
return this.revision(), Array.from(this.registrations.values()).sort(ge);
|
|
57
|
+
}
|
|
58
|
+
indexOf(e) {
|
|
59
|
+
return this.items().findIndex((t) => t.token === e);
|
|
60
|
+
}
|
|
61
|
+
labels() {
|
|
62
|
+
return this.items().map((e) => {
|
|
63
|
+
let t = e.label();
|
|
64
|
+
return t === void 0 ? e.element()?.textContent?.trim() || null : t;
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
elements() {
|
|
68
|
+
return this.items().map((e) => e.element());
|
|
69
|
+
}
|
|
70
|
+
availableIndices() {
|
|
71
|
+
return this.items().flatMap((e, t) => {
|
|
72
|
+
let n = e.element();
|
|
73
|
+
return n && !n.matches(":disabled") && h(n) ? [t] : [];
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
};
|
|
77
|
+
function ge(e, t) {
|
|
78
|
+
let n = e.element(), r = t.element();
|
|
79
|
+
if (!n || !r || n === r) return 0;
|
|
80
|
+
let i = n.compareDocumentPosition(r);
|
|
81
|
+
return i & Node.DOCUMENT_POSITION_FOLLOWING ? -1 : i & Node.DOCUMENT_POSITION_PRECEDING ? 1 : 0;
|
|
82
|
+
}
|
|
83
|
+
//#endregion
|
|
84
|
+
//#region src/menu/store/MenuStore.ts
|
|
85
|
+
var _e = class extends O {
|
|
86
|
+
parentStore;
|
|
87
|
+
collection = new he();
|
|
88
|
+
disabled;
|
|
89
|
+
modal;
|
|
90
|
+
orientation;
|
|
91
|
+
loopFocus;
|
|
92
|
+
highlightItemOnHover;
|
|
93
|
+
closeParentOnEsc;
|
|
94
|
+
direction;
|
|
95
|
+
contextMenu;
|
|
96
|
+
ownTree;
|
|
97
|
+
ownParentNodeId;
|
|
98
|
+
menubarAccessor;
|
|
99
|
+
setMenubarSignal;
|
|
100
|
+
triggerMenubars = /* @__PURE__ */ new Map();
|
|
101
|
+
activeIndexAccessor;
|
|
102
|
+
setActiveIndexSignal;
|
|
103
|
+
activeElementAccessor;
|
|
104
|
+
setActiveElementSignal;
|
|
105
|
+
openMethodAccessor;
|
|
106
|
+
setOpenMethodSignal;
|
|
107
|
+
openMethodValue = null;
|
|
108
|
+
openReasonAccessor;
|
|
109
|
+
setOpenReasonSignal;
|
|
110
|
+
instantTypeAccessor;
|
|
111
|
+
setInstantTypeSignal;
|
|
112
|
+
typingAccessor;
|
|
113
|
+
setTypingSignal;
|
|
114
|
+
hoverEnabledAccessor;
|
|
115
|
+
setHoverEnabledSignal;
|
|
116
|
+
allowMouseEnterAccessor;
|
|
117
|
+
setAllowMouseEnterSignal;
|
|
118
|
+
beforeContentGuardAccessor;
|
|
119
|
+
setBeforeContentGuardSignal;
|
|
120
|
+
afterTriggerGuardAccessor;
|
|
121
|
+
setAfterTriggerGuardSignal;
|
|
122
|
+
pendingFocus = null;
|
|
123
|
+
typed = "";
|
|
124
|
+
typeaheadTimer;
|
|
125
|
+
allowTouchToClose = !0;
|
|
126
|
+
allowTouchToCloseTimer;
|
|
127
|
+
ownAllowMouseUpTrigger = !1;
|
|
128
|
+
constructor(e) {
|
|
129
|
+
super(e), this.ownTree = e.tree, this.parentStore = e.parentStore, this.ownParentNodeId = e.parentNodeId;
|
|
130
|
+
let [t, n] = J(e.menubar, { ownedWrite: !0 });
|
|
131
|
+
this.menubarAccessor = t, this.setMenubarSignal = n, this.disabled = () => e.disabled() || !!this.parentStore?.disabled() || !!this.menubar()?.disabled(), this.modal = () => !this.menubar() && e.modal(), this.orientation = e.orientation, this.loopFocus = e.loopFocus, this.highlightItemOnHover = e.highlightItemOnHover, this.closeParentOnEsc = e.closeParentOnEsc, this.direction = e.direction, this.contextMenu = e.parentStore?.contextMenu ?? e.contextMenu;
|
|
132
|
+
let [r, i] = J(null, { ownedWrite: !0 });
|
|
133
|
+
this.activeIndexAccessor = r, this.setActiveIndexSignal = i;
|
|
134
|
+
let [a, o] = J(null, { ownedWrite: !0 });
|
|
135
|
+
this.activeElementAccessor = a, this.setActiveElementSignal = o;
|
|
136
|
+
let [s, c] = J(null, { ownedWrite: !0 });
|
|
137
|
+
this.openMethodAccessor = s, this.setOpenMethodSignal = c;
|
|
138
|
+
let [l, u] = J(null, { ownedWrite: !0 });
|
|
139
|
+
this.openReasonAccessor = l, this.setOpenReasonSignal = u;
|
|
140
|
+
let [d, f] = J(void 0, { ownedWrite: !0 });
|
|
141
|
+
this.instantTypeAccessor = d, this.setInstantTypeSignal = f;
|
|
142
|
+
let [p, m] = J(!1, { ownedWrite: !0 });
|
|
143
|
+
this.typingAccessor = p, this.setTypingSignal = m;
|
|
144
|
+
let [h, g] = J(!0, { ownedWrite: !0 });
|
|
145
|
+
this.hoverEnabledAccessor = h, this.setHoverEnabledSignal = g;
|
|
146
|
+
let [_, v] = J(!1, { ownedWrite: !0 });
|
|
147
|
+
this.allowMouseEnterAccessor = _, this.setAllowMouseEnterSignal = v;
|
|
148
|
+
let [y, b] = J(null, { ownedWrite: !0 });
|
|
149
|
+
this.beforeContentGuardAccessor = y, this.setBeforeContentGuardSignal = b;
|
|
150
|
+
let [x, S] = J(null, { ownedWrite: !0 });
|
|
151
|
+
this.afterTriggerGuardAccessor = x, this.setAfterTriggerGuardSignal = S;
|
|
152
|
+
}
|
|
153
|
+
get allowMouseUpTrigger() {
|
|
154
|
+
return this.parentStore?.allowMouseUpTrigger ?? this.menubar()?.allowMouseUpTrigger.value ?? this.ownAllowMouseUpTrigger;
|
|
155
|
+
}
|
|
156
|
+
set allowMouseUpTrigger(e) {
|
|
157
|
+
this.parentStore ? this.parentStore.allowMouseUpTrigger = e : this.menubar() ? this.menubar().allowMouseUpTrigger.value = e : this.ownAllowMouseUpTrigger = e;
|
|
158
|
+
}
|
|
159
|
+
menubar() {
|
|
160
|
+
return this.parentStore?.menubar() ?? this.menubarAccessor();
|
|
161
|
+
}
|
|
162
|
+
tree() {
|
|
163
|
+
return this.parentStore?.tree() ?? this.menubar()?.tree ?? this.ownTree;
|
|
164
|
+
}
|
|
165
|
+
parentNodeId() {
|
|
166
|
+
return this.parentStore ? this.ownParentNodeId : this.menubar()?.nodeId ?? this.ownParentNodeId;
|
|
167
|
+
}
|
|
168
|
+
registerMenubarTrigger(e, t) {
|
|
169
|
+
return this.triggerMenubars.set(e, t), this.activeTriggerId() === e && this.setMenubarSignal(t), () => {
|
|
170
|
+
this.triggerMenubars.get(e) === t && this.triggerMenubars.delete(e);
|
|
171
|
+
};
|
|
172
|
+
}
|
|
173
|
+
forwardMenubarTrigger(e, t) {
|
|
174
|
+
this.triggerMenubars.set(e, t), this.activeTriggerId() === e && this.setMenubarSignal(t);
|
|
175
|
+
}
|
|
176
|
+
activateMenubarTrigger(e) {
|
|
177
|
+
this.setMenubarSignal(this.triggerMenubars.get(e));
|
|
178
|
+
}
|
|
179
|
+
rootStore() {
|
|
180
|
+
return this.parentStore?.rootStore() ?? this;
|
|
181
|
+
}
|
|
182
|
+
rootNodeId() {
|
|
183
|
+
return this.menubar()?.rootId() ?? this.rootStore().context.floatingRoot.context.nodeId;
|
|
184
|
+
}
|
|
185
|
+
relayKeyboardEvent(e) {
|
|
186
|
+
this.menubar()?.relayKeyboardEvent(e);
|
|
187
|
+
}
|
|
188
|
+
activeIndex() {
|
|
189
|
+
let e = this.activeElementAccessor();
|
|
190
|
+
if (e) {
|
|
191
|
+
let t = this.collection.elements().indexOf(e);
|
|
192
|
+
return t === -1 ? null : t;
|
|
193
|
+
}
|
|
194
|
+
return this.activeIndexAccessor();
|
|
195
|
+
}
|
|
196
|
+
activeElement() {
|
|
197
|
+
return this.activeElementAccessor();
|
|
198
|
+
}
|
|
199
|
+
isItemActive(e) {
|
|
200
|
+
return e !== null && this.activeElementAccessor() === e;
|
|
201
|
+
}
|
|
202
|
+
setActiveIndex(e, t = !1) {
|
|
203
|
+
let n = e === null ? null : this.collection.elements()[e] ?? null;
|
|
204
|
+
this.setActiveIndexSignal(e), this.setActiveElementSignal(n), t && n && (n.focus({ preventScroll: !0 }), n.scrollIntoView?.({ block: "nearest" }));
|
|
205
|
+
}
|
|
206
|
+
setActiveElement(e) {
|
|
207
|
+
this.setActiveElementSignal(e), this.setActiveIndexSignal(e ? this.collection.elements().indexOf(e) : null);
|
|
208
|
+
}
|
|
209
|
+
openMethod() {
|
|
210
|
+
return this.openMethodAccessor(), this.openMethodValue;
|
|
211
|
+
}
|
|
212
|
+
setOpenMethod(e) {
|
|
213
|
+
this.openMethodValue = e, this.setOpenMethodSignal(e);
|
|
214
|
+
}
|
|
215
|
+
openChangeReason() {
|
|
216
|
+
return this.openReasonAccessor();
|
|
217
|
+
}
|
|
218
|
+
instantType() {
|
|
219
|
+
return this.instantTypeAccessor();
|
|
220
|
+
}
|
|
221
|
+
setInstantType(e) {
|
|
222
|
+
this.setInstantTypeSignal(e);
|
|
223
|
+
}
|
|
224
|
+
typing() {
|
|
225
|
+
return this.typingAccessor();
|
|
226
|
+
}
|
|
227
|
+
hoverEnabled() {
|
|
228
|
+
return this.hoverEnabledAccessor();
|
|
229
|
+
}
|
|
230
|
+
setHoverEnabled(e) {
|
|
231
|
+
this.setHoverEnabledSignal(e);
|
|
232
|
+
}
|
|
233
|
+
allowMouseEnter() {
|
|
234
|
+
return this.allowMouseEnterAccessor();
|
|
235
|
+
}
|
|
236
|
+
setAllowMouseEnter(e) {
|
|
237
|
+
this.setAllowMouseEnterSignal(e);
|
|
238
|
+
}
|
|
239
|
+
beforeContentGuard() {
|
|
240
|
+
return this.beforeContentGuardAccessor();
|
|
241
|
+
}
|
|
242
|
+
setBeforeContentGuard(e) {
|
|
243
|
+
this.setBeforeContentGuardSignal(e);
|
|
244
|
+
}
|
|
245
|
+
afterTriggerGuard() {
|
|
246
|
+
return this.afterTriggerGuardAccessor();
|
|
247
|
+
}
|
|
248
|
+
setAfterTriggerGuard(e) {
|
|
249
|
+
this.setAfterTriggerGuardSignal(e);
|
|
250
|
+
}
|
|
251
|
+
setPendingFocus(e) {
|
|
252
|
+
this.pendingFocus = e;
|
|
253
|
+
}
|
|
254
|
+
focusPendingItem() {
|
|
255
|
+
if (!this.pendingFocus) return !1;
|
|
256
|
+
let e = this.collection.availableIndices(), t = this.pendingFocus === "first" ? e[0] : e[e.length - 1];
|
|
257
|
+
if (t === void 0) return !1;
|
|
258
|
+
this.setActiveIndex(t, !0);
|
|
259
|
+
let n = this.collection.elements()[t], r = !!(n && n.ownerDocument.activeElement === n);
|
|
260
|
+
return r && (this.pendingFocus = null), r;
|
|
261
|
+
}
|
|
262
|
+
navigate(e) {
|
|
263
|
+
let t = this.collection.availableIndices();
|
|
264
|
+
if (t.length === 0) return !1;
|
|
265
|
+
let n = this.orientation(), r = this.direction() === "rtl", i = n === "vertical" ? "ArrowDown" : r ? "ArrowLeft" : "ArrowRight";
|
|
266
|
+
if (![
|
|
267
|
+
i,
|
|
268
|
+
n === "vertical" ? "ArrowUp" : r ? "ArrowRight" : "ArrowLeft",
|
|
269
|
+
"Home",
|
|
270
|
+
"End"
|
|
271
|
+
].includes(e.key)) return !1;
|
|
272
|
+
e.preventDefault(), e.stopPropagation();
|
|
273
|
+
let a = this.activeIndex(), o = a === null ? -1 : t.indexOf(a);
|
|
274
|
+
if (e.key === "Home") o = 0;
|
|
275
|
+
else if (e.key === "End") o = t.length - 1;
|
|
276
|
+
else if (a === null) o = e.key === i ? 0 : t.length - 1;
|
|
277
|
+
else {
|
|
278
|
+
let n = e.key === i ? 1 : -1;
|
|
279
|
+
o += n, o = this.loopFocus() ? (o + t.length) % t.length : Math.max(0, Math.min(t.length - 1, o));
|
|
280
|
+
}
|
|
281
|
+
return this.setActiveIndex(t[o], !0), !0;
|
|
282
|
+
}
|
|
283
|
+
handleTypeahead(e) {
|
|
284
|
+
if (e.key.length !== 1 || e.ctrlKey || e.metaKey || e.altKey || e.key === " " && this.typed === "") return !1;
|
|
285
|
+
e.preventDefault(), e.stopPropagation();
|
|
286
|
+
let t = this.collection.labels(), n = new Set(this.collection.availableIndices()), r = this.typed.length > 0 && [...this.typed].every((t) => t.toLocaleLowerCase() === e.key.toLocaleLowerCase());
|
|
287
|
+
this.typed = r ? e.key : this.typed + e.key, this.setTypingSignal(!0), clearTimeout(this.typeaheadTimer), this.typeaheadTimer = setTimeout(() => {
|
|
288
|
+
this.typed = "", this.setTypingSignal(!1);
|
|
289
|
+
}, 500);
|
|
290
|
+
let i = this.typed.toLocaleLowerCase(), a = (this.activeIndex() ?? -1) + 1;
|
|
291
|
+
for (let e = 0; e < t.length; e += 1) {
|
|
292
|
+
let r = (a + e) % t.length;
|
|
293
|
+
if (n.has(r) && t[r]?.toLocaleLowerCase().startsWith(i)) return this.setActiveIndex(r, !0), !0;
|
|
294
|
+
}
|
|
295
|
+
return !0;
|
|
296
|
+
}
|
|
297
|
+
handleTriggerKeyDown(e, t) {
|
|
298
|
+
if (this.disabled()) return;
|
|
299
|
+
let n = this.menubar();
|
|
300
|
+
if (n) {
|
|
301
|
+
if (this.open()) return;
|
|
302
|
+
let i = n.orientation() === "horizontal" ? "ArrowDown" : this.direction() === "rtl" ? "ArrowLeft" : "ArrowRight";
|
|
303
|
+
if (e.key !== i) return;
|
|
304
|
+
e.preventDefault(), e.stopPropagation(), this.setOpenMethod("keyboard"), this.setPendingFocus("first"), this.setOpen(!0, u(r, e, t));
|
|
305
|
+
return;
|
|
306
|
+
}
|
|
307
|
+
if (this.open()) return this.navigate(e), void 0;
|
|
308
|
+
let i = this.orientation(), a = this.direction() === "rtl", o = i === "vertical" ? "ArrowDown" : a ? "ArrowLeft" : "ArrowRight", s = i === "vertical" ? "ArrowUp" : a ? "ArrowRight" : "ArrowLeft";
|
|
309
|
+
(e.key === o || e.key === s) && (e.preventDefault(), e.stopPropagation(), this.setOpenMethod("keyboard"), this.setPendingFocus(e.key === o ? "first" : "last"), this.setOpen(!0, u(r, e, t)));
|
|
310
|
+
}
|
|
311
|
+
closeTree(e, t) {
|
|
312
|
+
this.tree().events.emit("close", {
|
|
313
|
+
event: e,
|
|
314
|
+
reason: t
|
|
315
|
+
});
|
|
316
|
+
}
|
|
317
|
+
setOpen(e, t) {
|
|
318
|
+
if (!e && !this.open() || (!e && t.trigger == null && (t.trigger = this.track().activeTriggerElement ?? void 0), e && t.trigger?.id && this.activateMenubarTrigger(t.trigger.id), !super.setOpen(e, t))) return !1;
|
|
319
|
+
this.setOpenReasonSignal(t.reason), e && t.reason === "imperative-action" && this.setOpenMethod(null), e && t.reason === "trigger-hover" && this.setOpenMethod("mouse");
|
|
320
|
+
let n = (t.reason === "trigger-press" || t.reason === "item-press") && t.event.type === "click" && t.event.detail === 0;
|
|
321
|
+
return this.menubar() && (t.reason === "trigger-focus" || t.reason === "focus-out" || t.reason === "trigger-hover" || t.reason === "list-navigation" || t.reason === "sibling-open") ? this.setInstantTypeSignal("group") : n ? this.setInstantTypeSignal("click") : !e && (t.reason === "escape-key" || t.reason === "none") ? this.setInstantTypeSignal("dismiss") : t.reason !== "trigger-hover" && this.setInstantTypeSignal(void 0), !0;
|
|
322
|
+
}
|
|
323
|
+
resetAfterObservedClose() {
|
|
324
|
+
this.setActiveIndex(null), this.setOpenMethod(null), this.setAllowMouseEnter(!1), this.menubar() || (this.allowMouseUpTrigger = !1), this.pendingFocus = null;
|
|
325
|
+
}
|
|
326
|
+
dispose() {
|
|
327
|
+
clearTimeout(this.typeaheadTimer), clearTimeout(this.allowTouchToCloseTimer);
|
|
328
|
+
}
|
|
329
|
+
shouldCommitOpenChange(e, t) {
|
|
330
|
+
let n = t.event;
|
|
331
|
+
return !e && n?.type === "click" && n.pointerType === "touch" && !this.allowTouchToClose ? !1 : (clearTimeout(this.allowTouchToCloseTimer), e && t.reason === "trigger-focus" ? (this.allowTouchToClose = !1, this.allowTouchToCloseTimer = setTimeout(() => {
|
|
332
|
+
this.allowTouchToClose = !0;
|
|
333
|
+
}, 300)) : this.allowTouchToClose = !0, !0);
|
|
334
|
+
}
|
|
335
|
+
}, ve = Symbol("MenuSubmenuRootContext"), ye = G(ve);
|
|
336
|
+
function be(e = !1) {
|
|
337
|
+
let t = Q(ye);
|
|
338
|
+
if (t === ve) {
|
|
339
|
+
if (e) return;
|
|
340
|
+
throw Error("Base UI: <Menu.SubmenuTrigger> must be placed in <Menu.SubmenuRoot>.");
|
|
341
|
+
}
|
|
342
|
+
return t;
|
|
343
|
+
}
|
|
344
|
+
//#endregion
|
|
345
|
+
//#region src/menu/root/MenuRootContext.ts
|
|
346
|
+
var xe = Symbol("MenuRootContext"), Se = G(xe);
|
|
347
|
+
function $(e = !1) {
|
|
348
|
+
let t = Q(Se);
|
|
349
|
+
if (t === xe) {
|
|
350
|
+
if (e) return;
|
|
351
|
+
throw Error("Base UI: MenuRootContext is missing. Menu parts must be placed within <Menu.Root>.");
|
|
352
|
+
}
|
|
353
|
+
return t;
|
|
354
|
+
}
|
|
355
|
+
//#endregion
|
|
356
|
+
//#region src/menu/root/MenuRoot.tsx
|
|
357
|
+
function Ce(e) {
|
|
358
|
+
let t = me(!0), n = oe(!0), r = $(!0), a = be(!0), o = t && !r ? t : void 0, s = o ? void 0 : a?.parentStore, c = y(), l = C(), d = ae(), f = s ? void 0 : n, p = o ? new S() : Z(() => s?.tree()) ?? f?.tree ?? c ?? new S(), h = de(), g = de(), _ = Z(() => e.open !== void 0), v = Z(() => e.triggerId !== void 0), E = s !== void 0, O = new _e({
|
|
359
|
+
controlledOpen: () => _ ? e.open : void 0,
|
|
360
|
+
controlledTriggerId: () => v ? e.triggerId : void 0,
|
|
361
|
+
floatingId: g,
|
|
362
|
+
nested: E,
|
|
363
|
+
nodeId: h,
|
|
364
|
+
onOpenChange: () => e.onOpenChange,
|
|
365
|
+
onOpenChangeComplete: () => e.onOpenChangeComplete,
|
|
366
|
+
tree: p,
|
|
367
|
+
parentStore: s,
|
|
368
|
+
parentNodeId: o ? null : f?.nodeId ?? l,
|
|
369
|
+
disabled: () => e.disabled ?? !1,
|
|
370
|
+
modal: () => E ? !1 : e.modal ?? !0,
|
|
371
|
+
orientation: () => e.orientation ?? "vertical",
|
|
372
|
+
loopFocus: () => e.loopFocus ?? !0,
|
|
373
|
+
highlightItemOnHover: () => e.highlightItemOnHover ?? !0,
|
|
374
|
+
closeParentOnEsc: () => e.closeParentOnEsc ?? !1,
|
|
375
|
+
direction: d,
|
|
376
|
+
contextMenu: o,
|
|
377
|
+
menubar: f
|
|
378
|
+
});
|
|
379
|
+
O.update({
|
|
380
|
+
open: _ ? !!Z(() => e.open) : !!Z(() => e.defaultOpen),
|
|
381
|
+
activeTriggerId: Z(() => e.defaultTriggerId ?? null)
|
|
382
|
+
}), O.configureTriggerUnmount({ closeOnActiveTriggerUnmount: !1 });
|
|
383
|
+
let k = Z(() => O.open() && !!s && r?.presence.transitionStatus() === "starting"), A = k ? Z(() => s?.instantType()) : void 0;
|
|
384
|
+
A !== void 0 && O.setInstantType(A);
|
|
385
|
+
let ee = O.access((e) => e.payload), j = b({
|
|
386
|
+
tree: () => O.tree(),
|
|
387
|
+
id: h,
|
|
388
|
+
parentId: () => O.parentNodeId(),
|
|
389
|
+
context: () => O.context.floatingRoot
|
|
390
|
+
}), [M, N] = J(null, { ownedWrite: !0 }), [P, te] = J(null, { ownedWrite: !0 }), F = T(O, () => O.track().popupElement, {
|
|
391
|
+
animateInitialOpen: k,
|
|
392
|
+
onUnmount: () => {
|
|
393
|
+
O.setHoverEnabled(!0), O.setInstantType(void 0);
|
|
394
|
+
}
|
|
395
|
+
});
|
|
396
|
+
A !== void 0 && K(() => ({
|
|
397
|
+
open: O.open(),
|
|
398
|
+
status: F.transitionStatus()
|
|
399
|
+
}), (e) => {
|
|
400
|
+
let t = () => {
|
|
401
|
+
Z(() => O.instantType()) === A && O.setInstantType(void 0);
|
|
402
|
+
};
|
|
403
|
+
if (!e.open) {
|
|
404
|
+
t();
|
|
405
|
+
return;
|
|
406
|
+
}
|
|
407
|
+
if (e.status !== void 0) return;
|
|
408
|
+
let n = O.state.popupElement;
|
|
409
|
+
if (!n) {
|
|
410
|
+
t();
|
|
411
|
+
return;
|
|
412
|
+
}
|
|
413
|
+
let r = new AbortController();
|
|
414
|
+
return m(n, t, r.signal), () => r.abort();
|
|
415
|
+
});
|
|
416
|
+
let ne = {
|
|
417
|
+
store: O,
|
|
418
|
+
node: j,
|
|
419
|
+
nested: E,
|
|
420
|
+
presence: F,
|
|
421
|
+
portalOwnerRole: s || f ? "group" : void 0,
|
|
422
|
+
contextMenu: O.contextMenu,
|
|
423
|
+
backdropElement: M,
|
|
424
|
+
setBackdropElement: N,
|
|
425
|
+
internalBackdropElement: P,
|
|
426
|
+
setInternalBackdropElement: te,
|
|
427
|
+
beforeContentGuard: () => O.beforeContentGuard(),
|
|
428
|
+
setBeforeContentGuard: (e) => O.setBeforeContentGuard(e),
|
|
429
|
+
afterTriggerGuard: () => O.afterTriggerGuard(),
|
|
430
|
+
setAfterTriggerGuard: (e) => O.setAfterTriggerGuard(e)
|
|
431
|
+
};
|
|
432
|
+
O.context.floatingRoot.context.data.insideElements = () => [
|
|
433
|
+
M(),
|
|
434
|
+
P(),
|
|
435
|
+
O.menubar()?.rootElement()
|
|
436
|
+
], re(() => e.handle, O);
|
|
437
|
+
let ie, I = D({
|
|
438
|
+
context: O.context.floatingRoot,
|
|
439
|
+
tree: () => O.tree(),
|
|
440
|
+
enabled: () => !O.disabled(),
|
|
441
|
+
bubbles: () => ({ escapeKey: E && O.closeParentOnEsc() }),
|
|
442
|
+
outsidePress: () => () => !o || O.context.floatingRoot.context.data.openEvent?.type === "contextmenu" || o.allowOutsidePressDismissal.current,
|
|
443
|
+
outsidePressEvent: () => ({
|
|
444
|
+
mouse: "sloppy",
|
|
445
|
+
touch: "sloppy"
|
|
446
|
+
})
|
|
447
|
+
});
|
|
448
|
+
O.setInteractionProps({
|
|
449
|
+
activeTriggerProps: { onKeyDown: I.onKeyDown },
|
|
450
|
+
inactiveTriggerProps: { onKeyDown: I.onKeyDown },
|
|
451
|
+
popupProps: { onKeyDown: I.onKeyDown }
|
|
452
|
+
});
|
|
453
|
+
let L = !1;
|
|
454
|
+
K(() => O.open(), (e) => {
|
|
455
|
+
!o || e === L || (L = e, clearTimeout(ie), o.allowOutsidePressDismissal.current = !1, e && (ie = setTimeout(() => {
|
|
456
|
+
o.allowOutsidePressDismissal.current = !0;
|
|
457
|
+
}, 500)));
|
|
458
|
+
}), K(() => ({
|
|
459
|
+
open: O.open(),
|
|
460
|
+
activeTriggerId: O.activeTriggerId()
|
|
461
|
+
}), () => Z(() => O.reconcileTriggers()));
|
|
462
|
+
let se = Z(() => O.open());
|
|
463
|
+
K(() => O.open(), (e) => {
|
|
464
|
+
se && !e && Z(() => {
|
|
465
|
+
O.context.floatingRoot.syncOpenEvent(!1, void 0), O.resetAfterObservedClose();
|
|
466
|
+
}), se = e;
|
|
467
|
+
}), K(() => ({
|
|
468
|
+
open: O.open(),
|
|
469
|
+
mounted: F.mounted(),
|
|
470
|
+
items: O.collection.items()
|
|
471
|
+
}), ({ open: e, mounted: t }) => {
|
|
472
|
+
if (!e || !t) return;
|
|
473
|
+
let n = !1, r = 0, i = 0, a = () => {
|
|
474
|
+
Z(() => {
|
|
475
|
+
n || !O.open() || O.openMethod() !== "keyboard" || (O.focusPendingItem() || O.activeElement()?.focus({ preventScroll: !0 }), i += 1, i < 4 && (r = requestAnimationFrame(a)));
|
|
476
|
+
});
|
|
477
|
+
};
|
|
478
|
+
return queueMicrotask(() => {
|
|
479
|
+
Z(() => {
|
|
480
|
+
O.focusPendingItem(), O.openMethod() === "keyboard" && (r = requestAnimationFrame(a));
|
|
481
|
+
});
|
|
482
|
+
}), () => {
|
|
483
|
+
n = !0, cancelAnimationFrame(r);
|
|
484
|
+
};
|
|
485
|
+
}), K(() => ({
|
|
486
|
+
open: O.open(),
|
|
487
|
+
reason: O.openChangeReason(),
|
|
488
|
+
tree: O.tree(),
|
|
489
|
+
parentNodeId: O.parentNodeId()
|
|
490
|
+
}), ({ open: e, reason: t, tree: n, parentNodeId: r }) => {
|
|
491
|
+
Z(() => {
|
|
492
|
+
n.events.emit("menuopenchange", {
|
|
493
|
+
open: e,
|
|
494
|
+
nodeId: h,
|
|
495
|
+
parentNodeId: r,
|
|
496
|
+
reason: t
|
|
497
|
+
});
|
|
498
|
+
});
|
|
499
|
+
}), K(() => O.tree(), (e) => e.events.on("close", ({ event: e, reason: t }) => {
|
|
500
|
+
O.open() && O.setOpen(!1, u(t, e));
|
|
501
|
+
}));
|
|
502
|
+
let ce = {
|
|
503
|
+
unmount: F.forceUnmount,
|
|
504
|
+
close() {
|
|
505
|
+
O.setOpen(!1, u(i));
|
|
506
|
+
}
|
|
507
|
+
};
|
|
508
|
+
K(() => e.actionsRef, (e) => {
|
|
509
|
+
e?.(ce);
|
|
510
|
+
});
|
|
511
|
+
function z() {
|
|
512
|
+
let t = q(() => e.children), n = Z(t), r = n;
|
|
513
|
+
return typeof n == "function" && (r = n.name === "bound read" && Object.prototype.hasOwnProperty.call(n, le) ? B(() => t()) : Z(() => n({ payload: ee }))), r;
|
|
514
|
+
}
|
|
515
|
+
return X(() => {
|
|
516
|
+
clearTimeout(ie), O.dispose(), O.clearInteractionProps(), delete O.context.floatingRoot.context.data.insideElements;
|
|
517
|
+
}), R(Se, {
|
|
518
|
+
value: ne,
|
|
519
|
+
get children() {
|
|
520
|
+
return R(x, {
|
|
521
|
+
value: p,
|
|
522
|
+
get children() {
|
|
523
|
+
return R(w, {
|
|
524
|
+
get value() {
|
|
525
|
+
return j.id ?? null;
|
|
526
|
+
},
|
|
527
|
+
get children() {
|
|
528
|
+
return R(z, {});
|
|
529
|
+
}
|
|
530
|
+
});
|
|
531
|
+
}
|
|
532
|
+
});
|
|
533
|
+
}
|
|
534
|
+
});
|
|
535
|
+
}
|
|
536
|
+
//#endregion
|
|
537
|
+
//#region src/menu/utils/mergeMenuStyles.ts
|
|
538
|
+
function we(e, t) {
|
|
539
|
+
if (typeof t == "string") {
|
|
540
|
+
let n = Object.entries(e).filter((e) => e[1] != null).map(([e, t]) => `${e}:${String(t)}`).join(";");
|
|
541
|
+
return n ? `${n};${t}` : t;
|
|
542
|
+
}
|
|
543
|
+
return {
|
|
544
|
+
...e,
|
|
545
|
+
...t || void 0
|
|
546
|
+
};
|
|
547
|
+
}
|
|
548
|
+
//#endregion
|
|
549
|
+
//#region src/menu/backdrop/MenuBackdrop.tsx
|
|
550
|
+
var Te = /* @__PURE__ */ W("<div>");
|
|
551
|
+
function Ee(n) {
|
|
552
|
+
let r = $(), i = n, a = n, o = q(() => ({
|
|
553
|
+
open: r.store.open(),
|
|
554
|
+
transitionStatus: r.store.track().transitionStatus
|
|
555
|
+
})), s = q(() => c(n.class, o())), u = q(() => we({
|
|
556
|
+
"pointer-events": r.store.openChangeReason() === "trigger-hover" ? "none" : void 0,
|
|
557
|
+
"user-select": "none",
|
|
558
|
+
"-webkit-user-select": "none"
|
|
559
|
+
}, l(n.style, o()))), d = q(() => t(o(), F)), f = Y(a, "render", "class", "ref", "style"), p = null;
|
|
560
|
+
X(() => {
|
|
561
|
+
r.backdropElement() === p && r.setBackdropElement(null);
|
|
562
|
+
});
|
|
563
|
+
let m = e(n, () => o(), (e) => (() => {
|
|
564
|
+
var t = z(Te);
|
|
565
|
+
return U(t, e, !1), H(), t;
|
|
566
|
+
})());
|
|
567
|
+
return R(m, V({
|
|
568
|
+
ref: [((e) => {
|
|
569
|
+
p = e, r.setBackdropElement(e);
|
|
570
|
+
}), i.ref],
|
|
571
|
+
role: "presentation",
|
|
572
|
+
get hidden() {
|
|
573
|
+
return !r.presence.mounted();
|
|
574
|
+
},
|
|
575
|
+
get class() {
|
|
576
|
+
return s();
|
|
577
|
+
},
|
|
578
|
+
get style() {
|
|
579
|
+
return u();
|
|
580
|
+
}
|
|
581
|
+
}, d, f));
|
|
582
|
+
}
|
|
583
|
+
//#endregion
|
|
584
|
+
//#region src/menu/portal/MenuPortalContext.ts
|
|
585
|
+
var De = Symbol("MenuPortalContext"), Oe = G(De);
|
|
586
|
+
function ke() {
|
|
587
|
+
let e = Q(Oe);
|
|
588
|
+
if (e === De) throw Error("Base UI: <Menu.Positioner> must be placed within <Menu.Portal>.");
|
|
589
|
+
return e;
|
|
590
|
+
}
|
|
591
|
+
//#endregion
|
|
592
|
+
//#region src/menu/portal/MenuPortal.tsx
|
|
593
|
+
function Ae(e) {
|
|
594
|
+
let t = $(), n = e, r = e, i = q(() => n.keepMounted ?? !1), a = q(() => t.presence.mounted() || i()), o = {}, s = q(() => c(e.class, o)), u = q(() => l(e.style, o)), d = Y(r, "render", "class", "container", "keepMounted", "ref", "style"), f = { keepMounted: i };
|
|
595
|
+
return R(ue, {
|
|
596
|
+
get when() {
|
|
597
|
+
return a();
|
|
598
|
+
},
|
|
599
|
+
get children() {
|
|
600
|
+
return R(Oe, {
|
|
601
|
+
value: f,
|
|
602
|
+
get children() {
|
|
603
|
+
return R(te, V({
|
|
604
|
+
get render() {
|
|
605
|
+
return e.render;
|
|
606
|
+
},
|
|
607
|
+
get container() {
|
|
608
|
+
return n.container;
|
|
609
|
+
},
|
|
610
|
+
ref: (e) => {
|
|
611
|
+
n.ref && ie(n.ref, e);
|
|
612
|
+
},
|
|
613
|
+
get class() {
|
|
614
|
+
return s();
|
|
615
|
+
},
|
|
616
|
+
get style() {
|
|
617
|
+
return u();
|
|
618
|
+
}
|
|
619
|
+
}, d, {
|
|
620
|
+
get portalOwnerRole() {
|
|
621
|
+
return t.portalOwnerRole;
|
|
622
|
+
},
|
|
623
|
+
get children() {
|
|
624
|
+
return e.children;
|
|
625
|
+
}
|
|
626
|
+
}));
|
|
627
|
+
}
|
|
628
|
+
});
|
|
629
|
+
}
|
|
630
|
+
});
|
|
631
|
+
}
|
|
632
|
+
//#endregion
|
|
633
|
+
//#region src/menu/utils/stateAttributesMapping.ts
|
|
634
|
+
var je = {
|
|
635
|
+
...P,
|
|
636
|
+
nested: (e) => e ? { "data-nested": "" } : null
|
|
637
|
+
}, Me = {
|
|
638
|
+
...F,
|
|
639
|
+
nested: (e) => e ? { "data-nested": "" } : null
|
|
640
|
+
}, Ne = { activationDirection: (e) => e ? { "data-activation-direction": e } : null }, Pe = { "data-checked": "" }, Fe = { "data-unchecked": "" }, Ie = { checked: (e) => e ? Pe : Fe }, Le = Symbol("MenuPositionerContext"), Re = G(Le);
|
|
641
|
+
function ze(e = !1) {
|
|
642
|
+
let t = Q(Re);
|
|
643
|
+
if (t === Le) {
|
|
644
|
+
if (e) return;
|
|
645
|
+
throw Error("Base UI: <Menu.Positioner> is missing.");
|
|
646
|
+
}
|
|
647
|
+
return t;
|
|
648
|
+
}
|
|
649
|
+
//#endregion
|
|
650
|
+
//#region src/menu/positioner/MenuPositioner.tsx
|
|
651
|
+
var Be = /* @__PURE__ */ W("<div>");
|
|
652
|
+
function Ve(n) {
|
|
653
|
+
ke();
|
|
654
|
+
let r = $(), i = ae(), o = n, s = n, [d, f] = J(null, { ownedWrite: !0 }), p = r.contextMenu !== void 0 && !r.nested, h = q(() => He(o.anchor) ?? (p ? r.contextMenu?.anchor() : void 0) ?? r.store.context.floatingRoot.referenceElement()), y = () => o.align ?? (r.nested || p || r.store.menubar() ? "start" : "center"), b = () => p && o.side === void 0 && y() !== "center", x = () => o.collisionAvoidance ?? { fallbackAxisSide: r.nested ? "end" : "none" }, S = g({
|
|
655
|
+
reference: h,
|
|
656
|
+
floating: d,
|
|
657
|
+
mounted: r.presence.mounted,
|
|
658
|
+
direction: i,
|
|
659
|
+
positionMethod: () => r.contextMenu ? "fixed" : o.positionMethod ?? "absolute",
|
|
660
|
+
side: () => o.side ?? (r.nested || r.store.menubar()?.orientation() === "vertical" ? "inline-end" : "bottom"),
|
|
661
|
+
sideOffset: () => o.sideOffset ?? (b() ? -5 : 0),
|
|
662
|
+
align: y,
|
|
663
|
+
alignOffset: () => o.alignOffset ?? (b() ? 2 : 0),
|
|
664
|
+
collisionBoundary: () => o.collisionBoundary ?? "clipping-ancestors",
|
|
665
|
+
collisionPadding: () => o.collisionPadding ?? 5,
|
|
666
|
+
arrowPadding: () => p ? 0 : o.arrowPadding ?? 5,
|
|
667
|
+
sticky: () => o.sticky ?? !1,
|
|
668
|
+
disableAnchorTracking: () => o.disableAnchorTracking ?? !1,
|
|
669
|
+
collisionAvoidance: x,
|
|
670
|
+
shiftRootBoundary: () => p ? "layoutViewport" : void 0,
|
|
671
|
+
shiftCrossAxis: () => p && !("side" in x() && x().side === "flip"),
|
|
672
|
+
adaptiveOriginMiddleware: () => r.store.track().adaptiveOriginMiddleware
|
|
673
|
+
}), C = k(() => r.store.open(), () => S.state().isPositioned), w = q(() => ({
|
|
674
|
+
open: r.store.open(),
|
|
675
|
+
side: S.renderedSide(),
|
|
676
|
+
align: S.renderedAlign(),
|
|
677
|
+
anchorHidden: S.anchorHidden(),
|
|
678
|
+
nested: r.nested,
|
|
679
|
+
instant: r.store.instantType() ?? (C() ? "initial" : void 0)
|
|
680
|
+
})), T = q(() => c(n.class, w())), E = q(() => we({
|
|
681
|
+
...S.styles(),
|
|
682
|
+
"pointer-events": r.store.open() ? void 0 : "none"
|
|
683
|
+
}, l(n.style, w()))), D = q(() => t(w(), je)), O = Y(s, "align", "alignOffset", "anchor", "arrowPadding", "render", "class", "collisionAvoidance", "collisionBoundary", "collisionPadding", "disableAnchorTracking", "positionMethod", "ref", "side", "sideOffset", "sticky", "style"), A = q(() => !r.nested && r.store.modal() && r.store.openChangeReason() !== "trigger-hover"), ee = q(() => r.store.menubar()?.modal() ?? !1), j = q(() => ee() || A()), M = null, N, P;
|
|
684
|
+
v({
|
|
685
|
+
enabled: () => r.store.open() && j(),
|
|
686
|
+
touchOpen: () => r.store.openMethod() === "touch",
|
|
687
|
+
positioner: d,
|
|
688
|
+
reference: () => r.store.track().activeTriggerElement
|
|
689
|
+
}), K(() => S.state().placement, (e) => {
|
|
690
|
+
r.store.context.floatingRoot.context.data.placement = e;
|
|
691
|
+
}), K(() => ({
|
|
692
|
+
positioned: S.state().isPositioned,
|
|
693
|
+
open: r.store.open(),
|
|
694
|
+
method: r.store.openMethod()
|
|
695
|
+
}), ({ positioned: e, open: t, method: n }) => {
|
|
696
|
+
e && t && n === "keyboard" && queueMicrotask(() => {
|
|
697
|
+
Z(() => {
|
|
698
|
+
r.store.focusPendingItem() || r.store.activeElement()?.focus({ preventScroll: !0 });
|
|
699
|
+
});
|
|
700
|
+
});
|
|
701
|
+
}), K(() => ({
|
|
702
|
+
trigger: r.store.track().activeTriggerElement,
|
|
703
|
+
positioner: d(),
|
|
704
|
+
open: r.store.open()
|
|
705
|
+
}), ({ trigger: e, positioner: t, open: n }) => {
|
|
706
|
+
if (!n) {
|
|
707
|
+
M = null, N?.abort();
|
|
708
|
+
return;
|
|
709
|
+
}
|
|
710
|
+
let i = M;
|
|
711
|
+
if (e && (M = e), !i || !e || i === e || !t) return;
|
|
712
|
+
r.store.setInstantType(void 0), N?.abort();
|
|
713
|
+
let a = new AbortController();
|
|
714
|
+
return N = a, m(t, () => r.store.setInstantType("trigger-change"), a.signal), () => a.abort();
|
|
715
|
+
}), K(() => r.store.tree(), (e) => e.events.on("menuopenchange", (e) => {
|
|
716
|
+
if (e.open && e.parentNodeId === r.node.id && r.store.setHoverEnabled(!1), e.open && e.nodeId !== r.node.id && e.parentNodeId === r.store.parentNodeId()) {
|
|
717
|
+
r.store.setOpen(!1, u(a));
|
|
718
|
+
return;
|
|
719
|
+
}
|
|
720
|
+
!e.open && r.store.parentNodeId() !== null && e.nodeId === r.store.parentNodeId() && r.store.setOpen(!1, u(e.reason ?? "sibling-open"));
|
|
721
|
+
})), K(() => r.store.tree(), (e) => e.events.on("itemhover", ({ nodeId: e, target: t }) => {
|
|
722
|
+
if (!r.store.open() || e !== r.store.parentNodeId()) return;
|
|
723
|
+
if (t === r.store.track().activeTriggerElement) {
|
|
724
|
+
clearTimeout(P), P = void 0;
|
|
725
|
+
return;
|
|
726
|
+
}
|
|
727
|
+
if (P !== void 0) return;
|
|
728
|
+
let n = () => r.store.setOpen(!1, u(a)), i = r.store.track().closeDelay;
|
|
729
|
+
i > 0 ? P = setTimeout(() => {
|
|
730
|
+
P = void 0, n();
|
|
731
|
+
}, i) : n();
|
|
732
|
+
})), K(() => r.store.open(), (e) => {
|
|
733
|
+
e || (clearTimeout(P), P = void 0);
|
|
734
|
+
}), X(() => {
|
|
735
|
+
clearTimeout(P), N?.abort(), delete r.store.context.floatingRoot.context.data.placement, r.store.state.positionerElement === Z(d) && r.store.setPositionerElement(null);
|
|
736
|
+
});
|
|
737
|
+
function te() {
|
|
738
|
+
let e = null;
|
|
739
|
+
return X(() => {
|
|
740
|
+
r.internalBackdropElement() === e && r.setInternalBackdropElement(null);
|
|
741
|
+
}), R(_, {
|
|
742
|
+
ref: (t) => {
|
|
743
|
+
e = t, r.setInternalBackdropElement(t);
|
|
744
|
+
},
|
|
745
|
+
get cutout() {
|
|
746
|
+
return r.store.menubar()?.rootElement() ?? r.store.track().activeTriggerElement;
|
|
747
|
+
},
|
|
748
|
+
get open() {
|
|
749
|
+
return r.store.open();
|
|
750
|
+
}
|
|
751
|
+
});
|
|
752
|
+
}
|
|
753
|
+
let F = e(n, () => w(), (e) => (() => {
|
|
754
|
+
var t = z(Be);
|
|
755
|
+
return U(t, e, !1), H(), t;
|
|
756
|
+
})());
|
|
757
|
+
return R(Re, {
|
|
758
|
+
value: S,
|
|
759
|
+
get children() {
|
|
760
|
+
return [R(ue, {
|
|
761
|
+
get when() {
|
|
762
|
+
return B(() => !!r.presence.mounted())() ? j() : r.presence.mounted();
|
|
763
|
+
},
|
|
764
|
+
get children() {
|
|
765
|
+
return R(te, {});
|
|
766
|
+
}
|
|
767
|
+
}), R(F, V({
|
|
768
|
+
ref: [((e) => {
|
|
769
|
+
f(e), r.store.setPositionerElement(e);
|
|
770
|
+
}), o.ref],
|
|
771
|
+
role: "presentation",
|
|
772
|
+
get hidden() {
|
|
773
|
+
return !r.presence.mounted();
|
|
774
|
+
},
|
|
775
|
+
get inert() {
|
|
776
|
+
return !r.store.open() || void 0;
|
|
777
|
+
},
|
|
778
|
+
get class() {
|
|
779
|
+
return T();
|
|
780
|
+
},
|
|
781
|
+
get style() {
|
|
782
|
+
return E();
|
|
783
|
+
}
|
|
784
|
+
}, D, O))];
|
|
785
|
+
}
|
|
786
|
+
});
|
|
787
|
+
}
|
|
788
|
+
function He(e) {
|
|
789
|
+
return typeof e == "function" ? e() : e && "current" in e ? e.current : e;
|
|
790
|
+
}
|
|
791
|
+
//#endregion
|
|
792
|
+
//#region src/menu/popup/MenuPopup.tsx
|
|
793
|
+
var Ue = /* @__PURE__ */ W("<div>"), We = /* @__PURE__ */ new Set([
|
|
794
|
+
"ArrowUp",
|
|
795
|
+
"ArrowDown",
|
|
796
|
+
"ArrowLeft",
|
|
797
|
+
"ArrowRight",
|
|
798
|
+
"Home",
|
|
799
|
+
"End"
|
|
800
|
+
]);
|
|
801
|
+
function Ge(n) {
|
|
802
|
+
let i = $(), a = ze(), s = se(!0) !== void 0, d = n, m = n, h = i.contextMenu !== void 0 && !i.nested, g = q(() => ({
|
|
803
|
+
transitionStatus: i.presence.transitionStatus(),
|
|
804
|
+
side: a.renderedSide(),
|
|
805
|
+
align: a.renderedAlign(),
|
|
806
|
+
open: i.store.open(),
|
|
807
|
+
nested: i.nested,
|
|
808
|
+
instant: i.store.instantType()
|
|
809
|
+
})), _ = q(() => c(n.class, g())), v = q(() => l(n.style, g())), y = q(() => t(g(), Me)), b = q(() => d.id ?? i.store.context.floatingId), x = Y(m, "render", "class", "finalFocus", "id", "onClick", "onKeyDown", "onMouseMove", "ref", "style"), S = null;
|
|
810
|
+
function C(e) {
|
|
811
|
+
let t = i.store.state.popupProps.onKeyDown;
|
|
812
|
+
if (typeof t == "function" && t(e), !i.store.disabled()) {
|
|
813
|
+
if (e.key === "Tab") {
|
|
814
|
+
e.preventDefault();
|
|
815
|
+
let t = i.store.rootStore(), n = (i.nested && e.shiftKey ? i.store : t).track().activeTriggerElement, r = e.shiftKey ? n : Ke(n, t.rootNodeId());
|
|
816
|
+
i.nested && e.shiftKey ? i.store.setOpen(!1, u(o, e)) : t.closeTree(e, o), queueMicrotask(() => r?.focus({ preventScroll: !0 }));
|
|
817
|
+
return;
|
|
818
|
+
}
|
|
819
|
+
if (!i.store.handleTypeahead(e) && !(e.defaultPrevented || i.store.navigate(e))) {
|
|
820
|
+
if (i.nested && i.store.parentStore) {
|
|
821
|
+
let t = i.store.parentStore.orientation() === "vertical" ? i.store.direction() === "rtl" ? "ArrowRight" : "ArrowLeft" : "ArrowUp";
|
|
822
|
+
if (e.key === t) {
|
|
823
|
+
e.preventDefault(), e.stopPropagation();
|
|
824
|
+
let t = i.store.track().activeTriggerElement;
|
|
825
|
+
i.store.setOpen(!1, u(r, e)), t?.focus({ preventScroll: !0 });
|
|
826
|
+
}
|
|
827
|
+
}
|
|
828
|
+
!e.defaultPrevented && !e.cancelBubble && i.store.relayKeyboardEvent(e);
|
|
829
|
+
}
|
|
830
|
+
}
|
|
831
|
+
}
|
|
832
|
+
let w = f(p(() => d.onKeyDown), C, (e) => {
|
|
833
|
+
s && We.has(e.key) && e.stopPropagation();
|
|
834
|
+
}), T = f(p(() => d.onMouseMove), () => {
|
|
835
|
+
i.store.setAllowMouseEnter(!0), i.nested && i.store.setHoverEnabled(!1);
|
|
836
|
+
}), E = f(p(() => d.onClick), () => i.store.setHoverEnabled(!1)), D = () => Z(() => {
|
|
837
|
+
let e = i.store.openChangeReason();
|
|
838
|
+
return !(e === "focus-out" || i.store.menubar() && (e === "sibling-open" || e === "list-navigation") || i.store.menubar() && !i.store.track().activeTriggerElement && e === "outside-press");
|
|
839
|
+
});
|
|
840
|
+
K(() => b(), (e) => i.store.setPopupId(e)), K(() => i.store.track().popupElement, (e) => {
|
|
841
|
+
if (!e || typeof MutationObserver > "u") return;
|
|
842
|
+
let t = new MutationObserver(() => i.store.collection.touch());
|
|
843
|
+
return t.observe(e, {
|
|
844
|
+
childList: !0,
|
|
845
|
+
subtree: !0,
|
|
846
|
+
characterData: !0
|
|
847
|
+
}), () => t.disconnect();
|
|
848
|
+
}), X(() => {
|
|
849
|
+
i.store.state.popupElement === S && i.store.setPopupElement(null);
|
|
850
|
+
});
|
|
851
|
+
function O() {
|
|
852
|
+
return R(k, V({
|
|
853
|
+
ref: [((e) => {
|
|
854
|
+
S = e, i.store.setPopupElement(e);
|
|
855
|
+
}), d.ref],
|
|
856
|
+
get id() {
|
|
857
|
+
return b();
|
|
858
|
+
},
|
|
859
|
+
role: "menu",
|
|
860
|
+
tabIndex: -1,
|
|
861
|
+
"data-base-ui-focusable": "",
|
|
862
|
+
get "data-rootownerid"() {
|
|
863
|
+
return i.store.rootNodeId();
|
|
864
|
+
},
|
|
865
|
+
get "aria-labelledby"() {
|
|
866
|
+
return i.store.track().activeTriggerElement?.id || void 0;
|
|
867
|
+
},
|
|
868
|
+
get "aria-orientation"() {
|
|
869
|
+
return i.store.orientation() === "horizontal" ? "horizontal" : void 0;
|
|
870
|
+
},
|
|
871
|
+
get class() {
|
|
872
|
+
return _();
|
|
873
|
+
},
|
|
874
|
+
get style() {
|
|
875
|
+
return v();
|
|
876
|
+
},
|
|
877
|
+
onClick: E,
|
|
878
|
+
onMouseMove: T,
|
|
879
|
+
onKeyDown: w
|
|
880
|
+
}, y, x));
|
|
881
|
+
}
|
|
882
|
+
let k = e(n, () => g(), (e) => (() => {
|
|
883
|
+
var t = z(Ue);
|
|
884
|
+
return U(t, e, !1), H(), t;
|
|
885
|
+
})());
|
|
886
|
+
return R(ne, {
|
|
887
|
+
get context() {
|
|
888
|
+
return i.store.context.floatingRoot;
|
|
889
|
+
},
|
|
890
|
+
get tree() {
|
|
891
|
+
return i.store.tree();
|
|
892
|
+
},
|
|
893
|
+
get disabled() {
|
|
894
|
+
return !i.presence.mounted();
|
|
895
|
+
},
|
|
896
|
+
initialFocus: () => Z(() => i.store.focusPendingItem() || i.store.openMethod() === "keyboard" && i.store.collection.availableIndices().length > 0 ? !1 : !(i.store.openChangeReason() === "trigger-hover" || i.nested)),
|
|
897
|
+
get returnFocus() {
|
|
898
|
+
return d.finalFocus ?? D;
|
|
899
|
+
},
|
|
900
|
+
modal: h,
|
|
901
|
+
restoreFocus: !0,
|
|
902
|
+
get openInteractionType() {
|
|
903
|
+
return i.store.openMethod();
|
|
904
|
+
},
|
|
905
|
+
get previousFocusableElement() {
|
|
906
|
+
return i.store.track().activeTriggerElement;
|
|
907
|
+
},
|
|
908
|
+
get nextFocusableElement() {
|
|
909
|
+
return B(() => !!(i.nested || i.store.menubar()))() ? void 0 : i.store.afterTriggerGuard.bind(i.store);
|
|
910
|
+
},
|
|
911
|
+
get beforeContentGuardRef() {
|
|
912
|
+
return B(() => !!(i.nested || i.store.menubar()))() ? void 0 : i.store.setBeforeContentGuard.bind(i.store);
|
|
913
|
+
},
|
|
914
|
+
get children() {
|
|
915
|
+
return R(O, {});
|
|
916
|
+
}
|
|
917
|
+
});
|
|
918
|
+
}
|
|
919
|
+
function Ke(e, t) {
|
|
920
|
+
if (!e) return null;
|
|
921
|
+
let n = N(e.ownerDocument.body).filter((e) => !e.hasAttribute("data-base-ui-focus-guard") && !e.closest(`[data-rootownerid="${t}"]`)), r = n.indexOf(e);
|
|
922
|
+
return r === -1 ? null : n[r + 1] ?? null;
|
|
923
|
+
}
|
|
924
|
+
//#endregion
|
|
925
|
+
//#region src/menu/arrow/MenuArrow.tsx
|
|
926
|
+
var qe = /* @__PURE__ */ W("<div>");
|
|
927
|
+
function Je(n) {
|
|
928
|
+
let r = $(), i = ze(), a = n, o = n, s = q(() => ({
|
|
929
|
+
open: r.store.open(),
|
|
930
|
+
side: i.renderedSide(),
|
|
931
|
+
align: i.renderedAlign(),
|
|
932
|
+
uncentered: i.arrowUncentered()
|
|
933
|
+
})), u = q(() => c(n.class, s())), d = q(() => we(i.arrowStyles(), l(n.style, s()))), f = q(() => t(s(), P)), p = Y(o, "render", "class", "ref", "style"), m = null;
|
|
934
|
+
X(() => {
|
|
935
|
+
m && i.setArrowElement(null);
|
|
936
|
+
});
|
|
937
|
+
let h = e(n, () => s(), (e) => (() => {
|
|
938
|
+
var t = z(qe);
|
|
939
|
+
return U(t, e, !1), H(), t;
|
|
940
|
+
})());
|
|
941
|
+
return R(h, V({
|
|
942
|
+
ref: [((e) => {
|
|
943
|
+
m = e, i.setArrowElement(e);
|
|
944
|
+
}), a.ref],
|
|
945
|
+
"aria-hidden": "true",
|
|
946
|
+
get class() {
|
|
947
|
+
return u();
|
|
948
|
+
},
|
|
949
|
+
get style() {
|
|
950
|
+
return d();
|
|
951
|
+
}
|
|
952
|
+
}, f, p));
|
|
953
|
+
}
|
|
954
|
+
//#endregion
|
|
955
|
+
//#region src/menu/group/MenuGroupContext.ts
|
|
956
|
+
var Ye = Symbol("MenuGroupContext"), Xe = G(Ye);
|
|
957
|
+
function Ze() {
|
|
958
|
+
let e = Q(Xe);
|
|
959
|
+
if (e === Ye) throw Error("Base UI: <Menu.GroupLabel> must be placed within <Menu.Group> or <Menu.RadioGroup>.");
|
|
960
|
+
return e;
|
|
961
|
+
}
|
|
962
|
+
//#endregion
|
|
963
|
+
//#region src/menu/group/MenuGroup.tsx
|
|
964
|
+
var Qe = /* @__PURE__ */ W("<div>");
|
|
965
|
+
function $e(t) {
|
|
966
|
+
let n = t, r = t, [i, a] = J(), o = {
|
|
967
|
+
labelId: i,
|
|
968
|
+
setLabelId: a
|
|
969
|
+
}, s = {}, u = q(() => c(t.class, s)), d = q(() => l(t.style, s)), f = Y(r, "render", "class", "ref", "style"), p = e(t, () => s, (e) => (() => {
|
|
970
|
+
var t = z(Qe);
|
|
971
|
+
return U(t, e, !1), H(), t;
|
|
972
|
+
})());
|
|
973
|
+
return R(Xe, {
|
|
974
|
+
value: o,
|
|
975
|
+
get children() {
|
|
976
|
+
return R(p, V({
|
|
977
|
+
ref: [n.ref],
|
|
978
|
+
role: "group",
|
|
979
|
+
get "aria-labelledby"() {
|
|
980
|
+
return i();
|
|
981
|
+
},
|
|
982
|
+
get class() {
|
|
983
|
+
return u();
|
|
984
|
+
},
|
|
985
|
+
get style() {
|
|
986
|
+
return d();
|
|
987
|
+
}
|
|
988
|
+
}, f));
|
|
989
|
+
}
|
|
990
|
+
});
|
|
991
|
+
}
|
|
992
|
+
//#endregion
|
|
993
|
+
//#region src/menu/group-label/MenuGroupLabel.tsx
|
|
994
|
+
var et = /* @__PURE__ */ W("<div>");
|
|
995
|
+
function tt(t) {
|
|
996
|
+
let n = Ze(), r = t, i = t, a = `base-ui-${de()}`, o = q(() => r.id || a), s = {}, u = q(() => c(t.class, s)), d = q(() => l(t.style, s)), f = Y(i, "render", "class", "id", "ref", "style");
|
|
997
|
+
K(() => o(), (e) => (n.setLabelId(e), () => {
|
|
998
|
+
n.labelId() === e && n.setLabelId(void 0);
|
|
999
|
+
}));
|
|
1000
|
+
let p = e(t, () => s, (e) => (() => {
|
|
1001
|
+
var t = z(et);
|
|
1002
|
+
return U(t, e, !1), H(), t;
|
|
1003
|
+
})());
|
|
1004
|
+
return R(p, V({
|
|
1005
|
+
ref: [r.ref],
|
|
1006
|
+
get id() {
|
|
1007
|
+
return o();
|
|
1008
|
+
},
|
|
1009
|
+
"aria-hidden": "true",
|
|
1010
|
+
get class() {
|
|
1011
|
+
return u();
|
|
1012
|
+
},
|
|
1013
|
+
get style() {
|
|
1014
|
+
return d();
|
|
1015
|
+
}
|
|
1016
|
+
}, f));
|
|
1017
|
+
}
|
|
1018
|
+
//#endregion
|
|
1019
|
+
//#region src/menu/item/createMenuItem.ts
|
|
1020
|
+
function nt(e) {
|
|
1021
|
+
let t = Symbol("menu-item"), [n, r] = J(null, { ownedWrite: !0 }), i = e.store.collection.register({
|
|
1022
|
+
token: t,
|
|
1023
|
+
element: n,
|
|
1024
|
+
label: e.label
|
|
1025
|
+
}), a = q(() => e.store.collection.indexOf(t)), o = q(() => e.store.isItemActive(n()));
|
|
1026
|
+
return X(i), {
|
|
1027
|
+
element: n,
|
|
1028
|
+
setElement(t) {
|
|
1029
|
+
r(t), e.store.collection.touch();
|
|
1030
|
+
},
|
|
1031
|
+
index: a,
|
|
1032
|
+
highlighted: o,
|
|
1033
|
+
onFocus(t) {
|
|
1034
|
+
Z(() => e.store.setActiveElement(t.currentTarget));
|
|
1035
|
+
},
|
|
1036
|
+
onBlur(t) {
|
|
1037
|
+
Z(() => {
|
|
1038
|
+
let n = t.currentTarget;
|
|
1039
|
+
e.store.activeElement() === n && t.relatedTarget !== n && e.store.setActiveElement(null);
|
|
1040
|
+
});
|
|
1041
|
+
},
|
|
1042
|
+
onMouseMove(t) {
|
|
1043
|
+
if (e.store.tree().events.emit("itemhover", {
|
|
1044
|
+
nodeId: e.store.context.floatingRoot.context.nodeId,
|
|
1045
|
+
target: t.currentTarget
|
|
1046
|
+
}), e.store.highlightItemOnHover()) {
|
|
1047
|
+
let n = t.currentTarget;
|
|
1048
|
+
e.store.setActiveElement(n), e.store.allowMouseEnter() && n.focus({ preventScroll: !0 });
|
|
1049
|
+
}
|
|
1050
|
+
},
|
|
1051
|
+
onMouseUp(t) {
|
|
1052
|
+
let n = e.store.contextMenu;
|
|
1053
|
+
if (n) {
|
|
1054
|
+
let e = n.initialCursorPoint.current;
|
|
1055
|
+
if (n.initialCursorPoint.current = null, e && Math.abs(t.clientX - e.x) <= 1 && Math.abs(t.clientY - e.y) <= 1 || !rt() && t.button === 2) return;
|
|
1056
|
+
}
|
|
1057
|
+
!e.submenu && e.store.allowMouseUpTrigger && (!n || t.button === 2) && it(t.currentTarget, t, 1);
|
|
1058
|
+
},
|
|
1059
|
+
onKeyDown(t, n) {
|
|
1060
|
+
if (t.target !== t.currentTarget) return;
|
|
1061
|
+
if (t.key === " " && e.store.typing()) {
|
|
1062
|
+
t.preventDefault(), t.preventBaseUIHandler();
|
|
1063
|
+
return;
|
|
1064
|
+
}
|
|
1065
|
+
if (t.key !== "Enter" && t.key !== " ") return;
|
|
1066
|
+
let r = t.currentTarget;
|
|
1067
|
+
r.tagName === "A" && r.href && t.key === "Enter" || n && r.tagName === "BUTTON" && t.key === "Enter" || (t.preventDefault(), t.preventBaseUIHandler(), it(r, t, 0));
|
|
1068
|
+
},
|
|
1069
|
+
onKeyUp(e, t) {
|
|
1070
|
+
t && e.target === e.currentTarget && e.currentTarget.tagName === "BUTTON" && e.key === " " && e.preventDefault();
|
|
1071
|
+
},
|
|
1072
|
+
close(t) {
|
|
1073
|
+
e.store.closeTree(t, "item-press");
|
|
1074
|
+
}
|
|
1075
|
+
};
|
|
1076
|
+
}
|
|
1077
|
+
function rt() {
|
|
1078
|
+
if (typeof navigator > "u") return !1;
|
|
1079
|
+
let e = navigator.platform.toLowerCase();
|
|
1080
|
+
return !(/^i(os$|p)/.test(e) || e === "macintel" && navigator.maxTouchPoints > 1) && e.startsWith("mac");
|
|
1081
|
+
}
|
|
1082
|
+
function it(e, t, n, r) {
|
|
1083
|
+
let i = e.ownerDocument.defaultView?.MouseEvent ?? MouseEvent, a = "button" in t ? t : null, o = new i("click", {
|
|
1084
|
+
bubbles: !0,
|
|
1085
|
+
cancelable: !0,
|
|
1086
|
+
composed: !0,
|
|
1087
|
+
detail: n,
|
|
1088
|
+
button: a?.button ?? 0,
|
|
1089
|
+
buttons: a?.buttons ?? 0,
|
|
1090
|
+
clientX: a?.clientX ?? 0,
|
|
1091
|
+
clientY: a?.clientY ?? 0,
|
|
1092
|
+
shiftKey: t.shiftKey,
|
|
1093
|
+
ctrlKey: t.ctrlKey,
|
|
1094
|
+
altKey: t.altKey,
|
|
1095
|
+
metaKey: t.metaKey
|
|
1096
|
+
});
|
|
1097
|
+
return r?.(o), e.dispatchEvent(o), o;
|
|
1098
|
+
}
|
|
1099
|
+
function at(e) {
|
|
1100
|
+
(e.key === "Enter" || e.key === " ") && (e.preventDefault(), e.preventBaseUIHandler());
|
|
1101
|
+
}
|
|
1102
|
+
//#endregion
|
|
1103
|
+
//#region src/menu/item/MenuItem.tsx
|
|
1104
|
+
var ot = /* @__PURE__ */ W("<div>");
|
|
1105
|
+
function st(n) {
|
|
1106
|
+
let r = $(), i = n, a = n, o = q(() => i.nativeButton ?? !1), s = q(() => !!(i.disabled || r.store.disabled())), u = q(() => i.closeOnClick ?? !0), d = nt({
|
|
1107
|
+
store: r.store,
|
|
1108
|
+
label: () => i.label
|
|
1109
|
+
}), m = q(() => ({
|
|
1110
|
+
disabled: s(),
|
|
1111
|
+
highlighted: d.highlighted()
|
|
1112
|
+
})), h = q(() => c(n.class, m())), g = q(() => l(n.style, m())), _ = q(() => t(m())), v = Y(a, "render", "class", "closeOnClick", "disabled", "id", "label", "nativeButton", "onClick", "onFocus", "onBlur", "onKeyDown", "onKeyUp", "onMouseMove", "onMouseUp", "ref", "style"), y = f(p(() => Z(() => s() ? L : void 0)), p(() => i.onClick), (e) => {
|
|
1113
|
+
u() && d.close(e);
|
|
1114
|
+
}), b = f(p(() => Z(() => s() ? at : void 0)), p(() => i.onKeyDown), (e) => d.onKeyDown(e, o())), x = f(p(() => Z(() => s() ? I : void 0)), p(() => i.onKeyUp), (e) => d.onKeyUp(e, o())), S = f(p(() => i.onMouseMove), p(() => d.onMouseMove)), C = f(p(() => i.onMouseUp), p(() => d.onMouseUp)), w = f(p(() => i.onFocus), p(() => d.onFocus)), T = f(p(() => i.onBlur), p(() => d.onBlur)), E = e(n, () => m(), (e) => (() => {
|
|
1115
|
+
var t = z(ot);
|
|
1116
|
+
return U(t, e, !1), H(), t;
|
|
1117
|
+
})());
|
|
1118
|
+
return R(E, V({
|
|
1119
|
+
ref: [((e) => d.setElement(e)), i.ref],
|
|
1120
|
+
get id() {
|
|
1121
|
+
return i.id;
|
|
1122
|
+
},
|
|
1123
|
+
get type() {
|
|
1124
|
+
return o() ? "button" : void 0;
|
|
1125
|
+
},
|
|
1126
|
+
role: "menuitem",
|
|
1127
|
+
get tabIndex() {
|
|
1128
|
+
return r.store.open() && d.highlighted() ? 0 : -1;
|
|
1129
|
+
},
|
|
1130
|
+
get "aria-disabled"() {
|
|
1131
|
+
return s() ? "true" : void 0;
|
|
1132
|
+
},
|
|
1133
|
+
get class() {
|
|
1134
|
+
return h();
|
|
1135
|
+
},
|
|
1136
|
+
get style() {
|
|
1137
|
+
return g();
|
|
1138
|
+
},
|
|
1139
|
+
onClick: y,
|
|
1140
|
+
onFocus: w,
|
|
1141
|
+
onBlur: T,
|
|
1142
|
+
onKeyDown: b,
|
|
1143
|
+
onKeyUp: x,
|
|
1144
|
+
onMouseMove: S,
|
|
1145
|
+
onMouseUp: C
|
|
1146
|
+
}, _, v));
|
|
1147
|
+
}
|
|
1148
|
+
//#endregion
|
|
1149
|
+
//#region src/menu/checkbox-item/MenuCheckboxItemContext.ts
|
|
1150
|
+
var ct = Symbol("MenuCheckboxItemContext"), lt = G(ct);
|
|
1151
|
+
function ut() {
|
|
1152
|
+
let e = Q(lt);
|
|
1153
|
+
if (e === ct) throw Error("Base UI: <Menu.CheckboxItemIndicator> must be placed within <Menu.CheckboxItem>.");
|
|
1154
|
+
return e;
|
|
1155
|
+
}
|
|
1156
|
+
//#endregion
|
|
1157
|
+
//#region src/menu/checkbox-item/MenuCheckboxItem.tsx
|
|
1158
|
+
var dt = /* @__PURE__ */ W("<div>");
|
|
1159
|
+
function ft(n) {
|
|
1160
|
+
let r = $(), i = n, a = n, o = Z(() => i.checked !== void 0), [d, m] = J(Z(() => i.defaultChecked ?? !1), { ownedWrite: !0 }), h = q(() => o ? !!i.checked : d()), g = q(() => i.nativeButton ?? !1), _ = q(() => !!(i.disabled || r.store.disabled())), v = q(() => i.closeOnClick ?? !1), y = nt({
|
|
1161
|
+
store: r.store,
|
|
1162
|
+
label: () => i.label
|
|
1163
|
+
}), b = q(() => ({
|
|
1164
|
+
disabled: _(),
|
|
1165
|
+
highlighted: y.highlighted(),
|
|
1166
|
+
checked: h()
|
|
1167
|
+
})), x = q(() => c(n.class, b())), S = q(() => l(n.style, b())), C = q(() => t(b(), Ie)), w = Y(a, "render", "checked", "class", "closeOnClick", "defaultChecked", "disabled", "id", "label", "nativeButton", "onBlur", "onCheckedChange", "onClick", "onFocus", "onKeyDown", "onKeyUp", "onMouseMove", "onMouseUp", "ref", "style");
|
|
1168
|
+
function T(e) {
|
|
1169
|
+
let t = !h(), n = u(s, e, void 0, { preventUnmountOnClose() {} });
|
|
1170
|
+
i.onCheckedChange?.(t, n), !n.isCanceled && !o && m(t);
|
|
1171
|
+
}
|
|
1172
|
+
let E = f(p(() => Z(() => _() ? L : void 0)), p(() => i.onClick), T, (e) => {
|
|
1173
|
+
v() && y.close(e);
|
|
1174
|
+
}), D = f(p(() => Z(() => _() ? at : void 0)), p(() => i.onKeyDown), (e) => y.onKeyDown(e, g())), O = f(p(() => Z(() => _() ? I : void 0)), p(() => i.onKeyUp), (e) => y.onKeyUp(e, g())), k = f(p(() => i.onFocus), p(() => y.onFocus)), A = f(p(() => i.onBlur), p(() => y.onBlur)), ee = f(p(() => i.onMouseMove), p(() => y.onMouseMove)), j = f(p(() => i.onMouseUp), p(() => y.onMouseUp)), M = e(n, () => b(), (e) => (() => {
|
|
1175
|
+
var t = z(dt);
|
|
1176
|
+
return U(t, e, !1), H(), t;
|
|
1177
|
+
})());
|
|
1178
|
+
return R(lt, {
|
|
1179
|
+
value: b,
|
|
1180
|
+
get children() {
|
|
1181
|
+
return R(M, V({
|
|
1182
|
+
ref: [((e) => y.setElement(e)), i.ref],
|
|
1183
|
+
get id() {
|
|
1184
|
+
return i.id;
|
|
1185
|
+
},
|
|
1186
|
+
get type() {
|
|
1187
|
+
return g() ? "button" : void 0;
|
|
1188
|
+
},
|
|
1189
|
+
role: "menuitemcheckbox",
|
|
1190
|
+
get tabIndex() {
|
|
1191
|
+
return r.store.open() && y.highlighted() ? 0 : -1;
|
|
1192
|
+
},
|
|
1193
|
+
get "aria-checked"() {
|
|
1194
|
+
return h() ? "true" : "false";
|
|
1195
|
+
},
|
|
1196
|
+
get "aria-disabled"() {
|
|
1197
|
+
return _() ? "true" : void 0;
|
|
1198
|
+
},
|
|
1199
|
+
get class() {
|
|
1200
|
+
return x();
|
|
1201
|
+
},
|
|
1202
|
+
get style() {
|
|
1203
|
+
return S();
|
|
1204
|
+
},
|
|
1205
|
+
onClick: E,
|
|
1206
|
+
onFocus: k,
|
|
1207
|
+
onBlur: A,
|
|
1208
|
+
onKeyDown: D,
|
|
1209
|
+
onKeyUp: O,
|
|
1210
|
+
onMouseMove: ee,
|
|
1211
|
+
onMouseUp: j
|
|
1212
|
+
}, C, w));
|
|
1213
|
+
}
|
|
1214
|
+
});
|
|
1215
|
+
}
|
|
1216
|
+
//#endregion
|
|
1217
|
+
//#region src/menu/checkbox-item-indicator/MenuCheckboxItemIndicator.tsx
|
|
1218
|
+
var pt = /* @__PURE__ */ W("<span>");
|
|
1219
|
+
function mt(n) {
|
|
1220
|
+
let r = ut(), i = n, a = n, o = j(() => r().checked), s = q(() => (i.keepMounted ?? !1) || o.mounted()), u = q(() => ({
|
|
1221
|
+
...r(),
|
|
1222
|
+
transitionStatus: o.transitionStatus()
|
|
1223
|
+
})), f = q(() => c(n.class, u())), p = q(() => l(n.style, u())), h = q(() => t(u(), {
|
|
1224
|
+
...Ie,
|
|
1225
|
+
...d
|
|
1226
|
+
})), g = Y(a, "render", "class", "keepMounted", "ref", "style"), _, v = !1;
|
|
1227
|
+
K(() => ({
|
|
1228
|
+
checked: r().checked,
|
|
1229
|
+
status: o.transitionStatus(),
|
|
1230
|
+
element: _
|
|
1231
|
+
}), (e) => {
|
|
1232
|
+
if (v = e.checked, e.checked || e.status !== "ending" || !e.element) return;
|
|
1233
|
+
let t = new AbortController();
|
|
1234
|
+
return m(e.element, () => {
|
|
1235
|
+
v || o.setMounted(!1);
|
|
1236
|
+
}, t.signal), () => t.abort();
|
|
1237
|
+
});
|
|
1238
|
+
let y = e(n, () => u(), (e) => (() => {
|
|
1239
|
+
var t = z(pt);
|
|
1240
|
+
return U(t, e, !1), H(), t;
|
|
1241
|
+
})());
|
|
1242
|
+
return R(ue, {
|
|
1243
|
+
get when() {
|
|
1244
|
+
return s();
|
|
1245
|
+
},
|
|
1246
|
+
get children() {
|
|
1247
|
+
return R(y, V({
|
|
1248
|
+
ref: [((e) => _ = e), i.ref],
|
|
1249
|
+
"aria-hidden": "true",
|
|
1250
|
+
get class() {
|
|
1251
|
+
return f();
|
|
1252
|
+
},
|
|
1253
|
+
get style() {
|
|
1254
|
+
return p();
|
|
1255
|
+
}
|
|
1256
|
+
}, h, g));
|
|
1257
|
+
}
|
|
1258
|
+
});
|
|
1259
|
+
}
|
|
1260
|
+
//#endregion
|
|
1261
|
+
//#region src/menu/link-item/MenuLinkItem.tsx
|
|
1262
|
+
var ht = /* @__PURE__ */ W("<a>");
|
|
1263
|
+
function gt(n) {
|
|
1264
|
+
let r = $(), i = n, a = n, o = q(() => i.closeOnClick ?? !1), s = q(() => r.store.disabled()), u = nt({
|
|
1265
|
+
store: r.store,
|
|
1266
|
+
label: () => i.label
|
|
1267
|
+
}), d = q(() => ({ highlighted: u.highlighted() })), m = q(() => c(n.class, d())), h = q(() => l(n.style, d())), g = q(() => t(d())), _ = Y(a, "render", "class", "closeOnClick", "id", "label", "onClick", "onFocus", "onBlur", "onKeyDown", "onKeyUp", "onMouseMove", "onMouseUp", "ref", "style"), v = f(p(() => Z(() => s() ? L : void 0)), p(() => i.onClick), (e) => {
|
|
1268
|
+
o() && u.close(e);
|
|
1269
|
+
}), y = f(p(() => Z(() => s() ? at : void 0)), p(() => i.onKeyDown), (e) => u.onKeyDown(e, !1)), b = f(p(() => Z(() => s() ? I : void 0)), p(() => i.onKeyUp), (e) => u.onKeyUp(e, !1)), x = f(p(() => i.onMouseMove), p(() => u.onMouseMove)), S = f(p(() => i.onMouseUp), p(() => u.onMouseUp)), C = f(p(() => i.onFocus), p(() => u.onFocus)), w = f(p(() => i.onBlur), p(() => u.onBlur)), T = e(n, () => d(), (e) => (() => {
|
|
1270
|
+
var t = z(ht);
|
|
1271
|
+
return ce(t), U(t, e, !1), H(), t;
|
|
1272
|
+
})());
|
|
1273
|
+
return R(T, V({
|
|
1274
|
+
ref: [((e) => u.setElement(e)), i.ref],
|
|
1275
|
+
get id() {
|
|
1276
|
+
return i.id;
|
|
1277
|
+
},
|
|
1278
|
+
role: "menuitem",
|
|
1279
|
+
get tabIndex() {
|
|
1280
|
+
return r.store.open() && u.highlighted() ? 0 : -1;
|
|
1281
|
+
},
|
|
1282
|
+
get class() {
|
|
1283
|
+
return m();
|
|
1284
|
+
},
|
|
1285
|
+
get style() {
|
|
1286
|
+
return h();
|
|
1287
|
+
},
|
|
1288
|
+
onClick: v,
|
|
1289
|
+
onFocus: C,
|
|
1290
|
+
onBlur: w,
|
|
1291
|
+
onKeyDown: y,
|
|
1292
|
+
onKeyUp: b,
|
|
1293
|
+
onMouseMove: x,
|
|
1294
|
+
onMouseUp: S
|
|
1295
|
+
}, g, _));
|
|
1296
|
+
}
|
|
1297
|
+
//#endregion
|
|
1298
|
+
//#region src/menu/radio-group/MenuRadioGroupContext.ts
|
|
1299
|
+
var _t = Symbol("MenuRadioGroupContext"), vt = G(_t);
|
|
1300
|
+
function yt() {
|
|
1301
|
+
let e = Q(vt);
|
|
1302
|
+
if (e === _t) throw Error("Base UI: <Menu.RadioItem> must be placed within <Menu.RadioGroup>.");
|
|
1303
|
+
return e;
|
|
1304
|
+
}
|
|
1305
|
+
//#endregion
|
|
1306
|
+
//#region src/menu/radio-group/MenuRadioGroup.tsx
|
|
1307
|
+
var bt = /* @__PURE__ */ W("<div>");
|
|
1308
|
+
function xt(n) {
|
|
1309
|
+
let r = n, i = n, a = Z(() => r.value !== void 0), [o, s] = J(Z(() => r.defaultValue), { ownedWrite: !0 }), [u, d] = J(), f = q(() => a ? r.value : o()), p = q(() => r.disabled ?? !1), m = q(() => ({ disabled: p() })), h = q(() => c(n.class, m())), g = q(() => l(n.style, m())), _ = q(() => t(m())), v = Y(i, "aria-labelledby", "render", "class", "defaultValue", "disabled", "onValueChange", "ref", "style", "value"), y = {
|
|
1310
|
+
labelId: u,
|
|
1311
|
+
setLabelId: d
|
|
1312
|
+
}, b = {
|
|
1313
|
+
value: f,
|
|
1314
|
+
disabled: p,
|
|
1315
|
+
setValue(e, t) {
|
|
1316
|
+
r.onValueChange?.(e, t), !t.isCanceled && !a && s(() => e);
|
|
1317
|
+
}
|
|
1318
|
+
}, x = e(n, () => m(), (e) => (() => {
|
|
1319
|
+
var t = z(bt);
|
|
1320
|
+
return U(t, e, !1), H(), t;
|
|
1321
|
+
})());
|
|
1322
|
+
return R(Xe, {
|
|
1323
|
+
value: y,
|
|
1324
|
+
get children() {
|
|
1325
|
+
return R(vt, {
|
|
1326
|
+
value: b,
|
|
1327
|
+
get children() {
|
|
1328
|
+
return R(x, V({
|
|
1329
|
+
ref: [r.ref],
|
|
1330
|
+
role: "group",
|
|
1331
|
+
get "aria-labelledby"() {
|
|
1332
|
+
return r["aria-labelledby"] ?? u();
|
|
1333
|
+
},
|
|
1334
|
+
get "aria-disabled"() {
|
|
1335
|
+
return p() ? "true" : void 0;
|
|
1336
|
+
},
|
|
1337
|
+
get class() {
|
|
1338
|
+
return h();
|
|
1339
|
+
},
|
|
1340
|
+
get style() {
|
|
1341
|
+
return g();
|
|
1342
|
+
}
|
|
1343
|
+
}, _, v));
|
|
1344
|
+
}
|
|
1345
|
+
});
|
|
1346
|
+
}
|
|
1347
|
+
});
|
|
1348
|
+
}
|
|
1349
|
+
//#endregion
|
|
1350
|
+
//#region src/menu/radio-item/MenuRadioItemContext.ts
|
|
1351
|
+
var St = Symbol("MenuRadioItemContext"), Ct = G(St);
|
|
1352
|
+
function wt() {
|
|
1353
|
+
let e = Q(Ct);
|
|
1354
|
+
if (e === St) throw Error("Base UI: <Menu.RadioItemIndicator> must be placed within <Menu.RadioItem>.");
|
|
1355
|
+
return e;
|
|
1356
|
+
}
|
|
1357
|
+
//#endregion
|
|
1358
|
+
//#region src/menu/radio-item/MenuRadioItem.tsx
|
|
1359
|
+
var Tt = /* @__PURE__ */ W("<div>");
|
|
1360
|
+
function Et(n) {
|
|
1361
|
+
let r = $(), i = yt(), a = n, o = n, d = q(() => a.nativeButton ?? !1), m = q(() => !!(a.disabled || i.disabled() || r.store.disabled())), h = q(() => a.closeOnClick ?? !1), g = q(() => i.value() === a.value), _ = nt({
|
|
1362
|
+
store: r.store,
|
|
1363
|
+
label: () => a.label
|
|
1364
|
+
}), v = q(() => ({
|
|
1365
|
+
disabled: m(),
|
|
1366
|
+
highlighted: _.highlighted(),
|
|
1367
|
+
checked: g()
|
|
1368
|
+
})), y = q(() => c(n.class, v())), b = q(() => l(n.style, v())), x = q(() => t(v(), Ie)), S = Y(o, "render", "class", "closeOnClick", "disabled", "id", "label", "nativeButton", "onBlur", "onClick", "onFocus", "onKeyDown", "onKeyUp", "onMouseMove", "onMouseUp", "ref", "style", "value");
|
|
1369
|
+
function C(e) {
|
|
1370
|
+
let t = u(s, e, void 0, { preventUnmountOnClose() {} });
|
|
1371
|
+
i.setValue(a.value, t);
|
|
1372
|
+
}
|
|
1373
|
+
let w = f(p(() => Z(() => m() ? L : void 0)), p(() => a.onClick), C, (e) => {
|
|
1374
|
+
h() && _.close(e);
|
|
1375
|
+
}), T = f(p(() => Z(() => m() ? at : void 0)), p(() => a.onKeyDown), (e) => _.onKeyDown(e, d())), E = f(p(() => Z(() => m() ? I : void 0)), p(() => a.onKeyUp), (e) => _.onKeyUp(e, d())), D = f(p(() => a.onFocus), p(() => _.onFocus)), O = f(p(() => a.onBlur), p(() => _.onBlur)), k = f(p(() => a.onMouseMove), p(() => _.onMouseMove)), A = f(p(() => a.onMouseUp), p(() => _.onMouseUp)), ee = e(n, () => v(), (e) => (() => {
|
|
1376
|
+
var t = z(Tt);
|
|
1377
|
+
return U(t, e, !1), H(), t;
|
|
1378
|
+
})());
|
|
1379
|
+
return R(Ct, {
|
|
1380
|
+
value: v,
|
|
1381
|
+
get children() {
|
|
1382
|
+
return R(ee, V({
|
|
1383
|
+
ref: [((e) => _.setElement(e)), a.ref],
|
|
1384
|
+
get id() {
|
|
1385
|
+
return a.id;
|
|
1386
|
+
},
|
|
1387
|
+
get type() {
|
|
1388
|
+
return d() ? "button" : void 0;
|
|
1389
|
+
},
|
|
1390
|
+
role: "menuitemradio",
|
|
1391
|
+
get tabIndex() {
|
|
1392
|
+
return r.store.open() && _.highlighted() ? 0 : -1;
|
|
1393
|
+
},
|
|
1394
|
+
get "aria-checked"() {
|
|
1395
|
+
return g() ? "true" : "false";
|
|
1396
|
+
},
|
|
1397
|
+
get "aria-disabled"() {
|
|
1398
|
+
return m() ? "true" : void 0;
|
|
1399
|
+
},
|
|
1400
|
+
get class() {
|
|
1401
|
+
return y();
|
|
1402
|
+
},
|
|
1403
|
+
get style() {
|
|
1404
|
+
return b();
|
|
1405
|
+
},
|
|
1406
|
+
onClick: w,
|
|
1407
|
+
onFocus: D,
|
|
1408
|
+
onBlur: O,
|
|
1409
|
+
onKeyDown: T,
|
|
1410
|
+
onKeyUp: E,
|
|
1411
|
+
onMouseMove: k,
|
|
1412
|
+
onMouseUp: A
|
|
1413
|
+
}, x, S));
|
|
1414
|
+
}
|
|
1415
|
+
});
|
|
1416
|
+
}
|
|
1417
|
+
//#endregion
|
|
1418
|
+
//#region src/menu/radio-item-indicator/MenuRadioItemIndicator.tsx
|
|
1419
|
+
var Dt = /* @__PURE__ */ W("<span>");
|
|
1420
|
+
function Ot(n) {
|
|
1421
|
+
let r = wt(), i = n, a = n, o = j(() => r().checked), s = q(() => (i.keepMounted ?? !1) || o.mounted()), u = q(() => ({
|
|
1422
|
+
...r(),
|
|
1423
|
+
transitionStatus: o.transitionStatus()
|
|
1424
|
+
})), f = q(() => c(n.class, u())), p = q(() => l(n.style, u())), h = q(() => t(u(), {
|
|
1425
|
+
...Ie,
|
|
1426
|
+
...d
|
|
1427
|
+
})), g = Y(a, "render", "class", "keepMounted", "ref", "style"), _, v = !1;
|
|
1428
|
+
K(() => ({
|
|
1429
|
+
checked: r().checked,
|
|
1430
|
+
status: o.transitionStatus(),
|
|
1431
|
+
element: _
|
|
1432
|
+
}), (e) => {
|
|
1433
|
+
if (v = e.checked, e.checked || e.status !== "ending" || !e.element) return;
|
|
1434
|
+
let t = new AbortController();
|
|
1435
|
+
return m(e.element, () => {
|
|
1436
|
+
v || o.setMounted(!1);
|
|
1437
|
+
}, t.signal), () => t.abort();
|
|
1438
|
+
});
|
|
1439
|
+
let y = e(n, () => u(), (e) => (() => {
|
|
1440
|
+
var t = z(Dt);
|
|
1441
|
+
return U(t, e, !1), H(), t;
|
|
1442
|
+
})());
|
|
1443
|
+
return R(ue, {
|
|
1444
|
+
get when() {
|
|
1445
|
+
return s();
|
|
1446
|
+
},
|
|
1447
|
+
get children() {
|
|
1448
|
+
return R(y, V({
|
|
1449
|
+
ref: [((e) => _ = e), i.ref],
|
|
1450
|
+
"aria-hidden": "true",
|
|
1451
|
+
get class() {
|
|
1452
|
+
return f();
|
|
1453
|
+
},
|
|
1454
|
+
get style() {
|
|
1455
|
+
return p();
|
|
1456
|
+
}
|
|
1457
|
+
}, h, g));
|
|
1458
|
+
}
|
|
1459
|
+
});
|
|
1460
|
+
}
|
|
1461
|
+
//#endregion
|
|
1462
|
+
//#region src/menu/submenu-root/MenuSubmenuRoot.tsx
|
|
1463
|
+
function kt(e) {
|
|
1464
|
+
let t = $();
|
|
1465
|
+
return R(ye, {
|
|
1466
|
+
get value() {
|
|
1467
|
+
return { parentStore: t.store };
|
|
1468
|
+
},
|
|
1469
|
+
get children() {
|
|
1470
|
+
return R(Ce, e);
|
|
1471
|
+
}
|
|
1472
|
+
});
|
|
1473
|
+
}
|
|
1474
|
+
//#endregion
|
|
1475
|
+
//#region src/menu/submenu-trigger/MenuSubmenuTrigger.tsx
|
|
1476
|
+
var At = /* @__PURE__ */ W("<div>");
|
|
1477
|
+
function jt(i) {
|
|
1478
|
+
let a = be(), o = $(), s = a.parentStore, d = i, m = i, h = q(() => d.id || `base-ui-${o.node.id}-trigger`), g = q(() => d.nativeButton ?? !1), _ = q(() => d.openOnHover ?? !0), v = q(() => d.delay ?? 100), y = q(() => d.closeDelay ?? 0), b = q(() => !!(d.disabled || o.store.disabled() || s.disabled())), x = nt({
|
|
1479
|
+
store: s,
|
|
1480
|
+
label: () => d.label,
|
|
1481
|
+
submenu: !0
|
|
1482
|
+
}), S = q(() => o.store.open()), C = q(() => ({
|
|
1483
|
+
disabled: b(),
|
|
1484
|
+
highlighted: x.highlighted(),
|
|
1485
|
+
open: S()
|
|
1486
|
+
})), w = q(() => c(i.class, C())), T = q(() => l(i.style, C())), D = q(() => t(C(), M)), O = q(() => S() && Mt() && (o.store.openChangeReason() === "list-navigation" || o.store.openMethod() === "keyboard")), k = Y(m, "render", "class", "closeDelay", "delay", "disabled", "id", "label", "nativeButton", "onClick", "onFocus", "onBlur", "onKeyDown", "onKeyUp", "onMouseDown", "onMouseMove", "onMouseUp", "onMouseEnter", "openOnHover", "ref", "style");
|
|
1487
|
+
E(() => o.store, h, x.element, () => ({ closeDelay: y() }));
|
|
1488
|
+
let j = !1;
|
|
1489
|
+
function N(e, t, n) {
|
|
1490
|
+
let r = x.element();
|
|
1491
|
+
!r || b() || (o.store.setOpenMethod(t instanceof KeyboardEvent || t.detail === 0 ? "keyboard" : "mouse"), o.store.setPendingFocus(e ? "first" : null), o.store.setOpen(e, u(n, t, r)));
|
|
1492
|
+
}
|
|
1493
|
+
function P(e) {
|
|
1494
|
+
let t = s.orientation() === "vertical" ? s.direction() === "rtl" ? "ArrowLeft" : "ArrowRight" : "ArrowDown";
|
|
1495
|
+
if (e.key === t) {
|
|
1496
|
+
e.preventDefault(), e.stopPropagation(), e.preventBaseUIHandler(), N(!0, e, r);
|
|
1497
|
+
return;
|
|
1498
|
+
}
|
|
1499
|
+
x.onKeyDown(e, g());
|
|
1500
|
+
}
|
|
1501
|
+
let te = f(p(() => Z(() => b() ? L : void 0)), p(() => d.onClick), (e) => {
|
|
1502
|
+
if (j) {
|
|
1503
|
+
j = !1;
|
|
1504
|
+
return;
|
|
1505
|
+
}
|
|
1506
|
+
(!_() || e.detail === 0) && N(_() ? !0 : !S(), e, n);
|
|
1507
|
+
}), F = f(p(() => Z(() => b() ? L : void 0)), p(() => d.onMouseDown), (e) => {
|
|
1508
|
+
!_() && e.button === 0 && (j = !0, N(!S(), e, n));
|
|
1509
|
+
}), ne = f(p(() => Z(() => b() ? at : void 0)), p(() => d.onKeyDown), W, P), re = f(p(() => Z(() => b() ? I : void 0)), p(() => d.onKeyUp), (e) => x.onKeyUp(e, g())), ie = f(p(() => d.onMouseMove), p(() => x.onMouseMove)), ae = f(p(() => d.onMouseUp), p(() => x.onMouseUp)), oe = f(p(() => d.onFocus), p(() => x.onFocus)), se = f(p(() => d.onBlur), p(() => x.onBlur)), ce = f(p(() => d.onMouseEnter), () => {
|
|
1510
|
+
s.highlightItemOnHover() && s.setActiveElement(x.element());
|
|
1511
|
+
});
|
|
1512
|
+
function W(e) {
|
|
1513
|
+
let t = o.store.state.activeTriggerProps.onKeyDown;
|
|
1514
|
+
typeof t == "function" && t(e);
|
|
1515
|
+
}
|
|
1516
|
+
function le() {
|
|
1517
|
+
return A({
|
|
1518
|
+
context: o.store.context.floatingRoot,
|
|
1519
|
+
reference: x.element,
|
|
1520
|
+
floating: () => o.store.track().positionerElement,
|
|
1521
|
+
tree: () => o.store.tree(),
|
|
1522
|
+
enabled: () => o.store.hoverEnabled() && _() && !b(),
|
|
1523
|
+
delay: () => ({
|
|
1524
|
+
open: v(),
|
|
1525
|
+
close: y()
|
|
1526
|
+
}),
|
|
1527
|
+
restMs: v,
|
|
1528
|
+
handleClose: () => ee({ blockPointerEvents: !0 }),
|
|
1529
|
+
mouseOnly: () => !0,
|
|
1530
|
+
shouldOpen: () => v() === 0 || s.allowMouseEnter(),
|
|
1531
|
+
blockPointerEventsScope: () => s.track().popupElement,
|
|
1532
|
+
guardStaleOpen: () => !0
|
|
1533
|
+
}), null;
|
|
1534
|
+
}
|
|
1535
|
+
let ue = e(i, () => C(), (e) => (() => {
|
|
1536
|
+
var t = z(At);
|
|
1537
|
+
return U(t, e, !1), H(), t;
|
|
1538
|
+
})());
|
|
1539
|
+
return [R(le, {}), R(ue, V({
|
|
1540
|
+
ref: [((e) => {
|
|
1541
|
+
x.setElement(e);
|
|
1542
|
+
}), d.ref],
|
|
1543
|
+
get id() {
|
|
1544
|
+
return h();
|
|
1545
|
+
},
|
|
1546
|
+
get type() {
|
|
1547
|
+
return g() ? "button" : void 0;
|
|
1548
|
+
},
|
|
1549
|
+
role: "menuitem",
|
|
1550
|
+
get tabIndex() {
|
|
1551
|
+
return S() || x.highlighted() ? 0 : -1;
|
|
1552
|
+
},
|
|
1553
|
+
"aria-haspopup": "menu",
|
|
1554
|
+
get "aria-expanded"() {
|
|
1555
|
+
return B(() => !!O())() ? void 0 : S() ? "true" : "false";
|
|
1556
|
+
},
|
|
1557
|
+
get "aria-controls"() {
|
|
1558
|
+
return o.store.triggerPopupId(h());
|
|
1559
|
+
},
|
|
1560
|
+
get "aria-disabled"() {
|
|
1561
|
+
return b() ? "true" : void 0;
|
|
1562
|
+
},
|
|
1563
|
+
get class() {
|
|
1564
|
+
return w();
|
|
1565
|
+
},
|
|
1566
|
+
get style() {
|
|
1567
|
+
return T();
|
|
1568
|
+
},
|
|
1569
|
+
onClick: te,
|
|
1570
|
+
onFocus: oe,
|
|
1571
|
+
onBlur: se,
|
|
1572
|
+
onKeyDown: ne,
|
|
1573
|
+
onKeyUp: re,
|
|
1574
|
+
onMouseEnter: ce,
|
|
1575
|
+
onMouseDown: F,
|
|
1576
|
+
onMouseMove: ie,
|
|
1577
|
+
onMouseUp: ae
|
|
1578
|
+
}, D, k))];
|
|
1579
|
+
}
|
|
1580
|
+
function Mt() {
|
|
1581
|
+
return typeof navigator > "u" ? !1 : /Mac|iPhone|iPad|iPod/i.test(`${navigator.platform} ${navigator.userAgent}`);
|
|
1582
|
+
}
|
|
1583
|
+
//#endregion
|
|
1584
|
+
export { $ as C, me as E, Se as S, pe as T, Ne as _, xt as a, we as b, ft as c, tt as d, $e as f, ze as g, Ve as h, Et as i, st as l, Ge as m, kt as n, gt as o, Je as p, Ot as r, mt as s, jt as t, it as u, Ae as v, _e as w, Ce as x, Ee as y };
|