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
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
## 0.1.0-alpha.2
|
|
4
|
+
|
|
5
|
+
### Breaking Changes
|
|
6
|
+
|
|
7
|
+
- `composeEventHandlers` now accepts direct handlers, bound `[handler, data]`
|
|
8
|
+
tuples, and `undefined`, rather than bare accessors returning handlers. Replace
|
|
9
|
+
`composeEventHandlers(() => handleClick)` with `composeEventHandlers(handleClick)`.
|
|
10
|
+
- For replaceable props or conditional handler sources, use
|
|
11
|
+
`composeEventHandlers(liveEventHandler(() => props.onClick), handleClick)`.
|
|
12
|
+
Both utilities are exported from `solid-baseui/internals/composeEventHandlers`.
|
|
13
|
+
Old bare accessors may still typecheck as void-returning handlers, but their
|
|
14
|
+
returned functions are no longer invoked. Migrate every call before upgrading.
|
|
15
|
+
|
|
16
|
+
### Fixed
|
|
17
|
+
|
|
18
|
+
- Preserve Drawer swipe state, observers, and nested progress across unrelated
|
|
19
|
+
store updates, and retain Popover trigger-handoff animation completion.
|
|
20
|
+
- Compose string and callback-returned string styles correctly in Slider.Track,
|
|
21
|
+
Slider.Indicator, Slider.Thumb, and Tabs.Indicator.
|
|
22
|
+
- Return a directly attachable native handler from `composeEventHandlers` while
|
|
23
|
+
exposing Base UI cancellation to composed callbacks. Preserve native input/focus
|
|
24
|
+
target typing and expose cancellation on composed Toolbar events.
|
|
25
|
+
- Preserve the DOM receiver when NumberField.Input dispatches blur callbacks,
|
|
26
|
+
including replaceable bound handlers and teardown-time blur.
|
|
27
|
+
- Correct Combobox grid navigation, highlight restoration, controlled input and
|
|
28
|
+
autofill rollback, popup-input ARIA, RTL End navigation, portal focus, and List
|
|
29
|
+
exit-animation completion.
|
|
30
|
+
- Preserve Tooltip cursor initialization and reopening, detached registration and
|
|
31
|
+
hydration state, viewport payload updates, nested timers, and provider cleanup.
|
|
32
|
+
- Preserve Autocomplete form-name ownership across SSR and hydration, and isolate
|
|
33
|
+
Field context when replacing a popup input.
|
|
34
|
+
- Cancel stale Drawer alignment frames before delayed virtual-keyboard realignment.
|
|
35
|
+
- Improve Combobox grouped-array callback inference for mutable single-select and
|
|
36
|
+
readonly multiple-select items.
|
|
37
|
+
|
|
38
|
+
### Verification
|
|
39
|
+
|
|
40
|
+
- Complete the requested Tooltip, Combobox, Autocomplete, and Drawer test-ledger
|
|
41
|
+
verification, including additional unit, browser, type, SSR, and hydration cases.
|
|
42
|
+
- The package remains an unstable alpha; this does not establish exhaustive Base UI
|
|
43
|
+
1.8 parity or physical-device keyboard and gesture behavior.
|
|
44
|
+
|
|
45
|
+
## 0.1.0-alpha.1
|
|
46
|
+
|
|
47
|
+
### Breaking Changes
|
|
48
|
+
|
|
49
|
+
- Replace polymorphic `as` with callback-only `render`. For example, use
|
|
50
|
+
`<Dialog.Trigger render={(props) => <Button {...props} />}>Open</Dialog.Trigger>`.
|
|
51
|
+
- Put replacement-only attributes and required custom-component props inside the
|
|
52
|
+
callback. Forward its live props and ref to the final DOM element.
|
|
53
|
+
- Render selection is mount-time. Use conditional JSX inside a stable callback
|
|
54
|
+
for reactive root changes. JSX-valued render props are not supported.
|
|
55
|
+
- Preserve semantic flags such as `nativeButton={false}` for non-button roots.
|
|
56
|
+
|
|
57
|
+
### Added
|
|
58
|
+
|
|
59
|
+
- Export Solid-native `useRender` from the package root and `solid-baseui/use-render`.
|
|
60
|
+
- Provide live DOM props and component state to render callbacks, with native JSX
|
|
61
|
+
defaults when no callback is supplied.
|
|
62
|
+
- Add custom-component composition, type-contract, SSR, and hydration coverage.
|
|
63
|
+
|
|
64
|
+
### Fixed
|
|
65
|
+
|
|
66
|
+
- Avoid Button's dynamic state-attribute spread and unnecessary stable-ref
|
|
67
|
+
reapplication on disabled-state changes.
|
|
68
|
+
- Preserve Toolbar disabled/focusable semantics independently of render callback
|
|
69
|
+
presence, and install its owned event bridge before hydration event replay.
|
|
70
|
+
|
|
71
|
+
The package remains an unstable alpha. Further performance work is deferred;
|
|
72
|
+
benchmarks and profiling artifacts are not included in the published package.
|
package/README.md
CHANGED
|
@@ -15,8 +15,8 @@ maintained by MUI or the Base UI team, nor by the SolidJS core team.
|
|
|
15
15
|
|
|
16
16
|
## Install
|
|
17
17
|
|
|
18
|
-
|
|
19
|
-
|
|
18
|
+
Install explicitly from the `alpha` dist-tag to get the current prerelease.
|
|
19
|
+
There is no stable release:
|
|
20
20
|
|
|
21
21
|
```bash
|
|
22
22
|
bun add solid-baseui@alpha
|
|
@@ -25,12 +25,15 @@ bun add solid-baseui@alpha
|
|
|
25
25
|
Peer dependencies:
|
|
26
26
|
|
|
27
27
|
```
|
|
28
|
-
solid-js ^2.0.0-rc.
|
|
29
|
-
@solidjs/web ^2.0.0-rc.
|
|
28
|
+
solid-js ^2.0.0-rc.6
|
|
29
|
+
@solidjs/web ^2.0.0-rc.6
|
|
30
30
|
```
|
|
31
31
|
|
|
32
32
|
Solid 2 is itself a release candidate, which is part of why this package is
|
|
33
|
-
alpha.
|
|
33
|
+
alpha. Upgrade both runtimes together and use a compatible Solid 2 compiler.
|
|
34
|
+
RC.6 includes the portal event-delegation fix required by this port; no local
|
|
35
|
+
dependency patch is needed. This workspace uses `@solidjs/vite-plugin@3.0.0-next.38`
|
|
36
|
+
with the RC.6 compiler.
|
|
34
37
|
|
|
35
38
|
## Usage
|
|
36
39
|
|
|
@@ -78,17 +81,132 @@ export function App() {
|
|
|
78
81
|
Every family is available from the root entry point or its own subpath
|
|
79
82
|
(`solid-baseui/dialog`, `solid-baseui/select`, and so on).
|
|
80
83
|
|
|
84
|
+
Polymorphic parts render their native element by default. To replace it, supply
|
|
85
|
+
a callback and forward its live DOM props, including `ref`, to the final element:
|
|
86
|
+
|
|
87
|
+
```tsx
|
|
88
|
+
import { Button } from "solid-baseui/button";
|
|
89
|
+
|
|
90
|
+
<Button
|
|
91
|
+
nativeButton={false}
|
|
92
|
+
render={(props, state) => (
|
|
93
|
+
<a {...props} href="/settings" data-disabled={state.disabled ? "" : undefined} />
|
|
94
|
+
)}
|
|
95
|
+
>
|
|
96
|
+
Settings
|
|
97
|
+
</Button>;
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
The callback receives live object state, not an accessor. Read `state.disabled`
|
|
101
|
+
and supplied props in JSX or reactive computations. Destructuring or eagerly
|
|
102
|
+
copying them during callback setup loses liveness. Always forward props and ref,
|
|
103
|
+
including through custom components, so events, accessibility, focus, and
|
|
104
|
+
registration reach the final DOM node.
|
|
105
|
+
|
|
106
|
+
## Migrating To 0.1.0-alpha.1
|
|
107
|
+
|
|
108
|
+
Version `0.1.0-alpha.1` replaces `as` with callback-only `render`. There is no compatibility
|
|
109
|
+
alias, and JSX-valued `render={<a />}` is unsupported. Replace an old
|
|
110
|
+
`<Button as="a" href="/settings" nativeButton={false}>` with the callback above.
|
|
111
|
+
No `Dynamic`, `dynamic()`, or `withoutComponentBinding` adapter is needed: the
|
|
112
|
+
callback writes native or custom-component JSX directly.
|
|
113
|
+
|
|
114
|
+
- Outer attributes remain typed for the default native element. Put `href` and
|
|
115
|
+
other replacement-only attributes inside the callback, not on a native-button
|
|
116
|
+
outer API. Likewise, supply required custom-component props inside the callback,
|
|
117
|
+
for example `render={(props) => <AppLink {...props} to="/settings" />}`.
|
|
118
|
+
- Keep semantic flags such as `nativeButton={false}` where supported when the
|
|
119
|
+
final element is not a button. Selecting an element does not automatically
|
|
120
|
+
select the component's keyboard or disabled policy.
|
|
121
|
+
- Render selection happens at mount. Replacing the `render` prop later does not
|
|
122
|
+
switch the renderer. To change the root, use conditional JSX inside one stable
|
|
123
|
+
callback and forward props/ref to every possible final element, for example
|
|
124
|
+
`render={(props) => <>{compact() ? <span {...props} /> : <div {...props} />}</>}` on a
|
|
125
|
+
visual part that supports those roots.
|
|
126
|
+
- Put interaction handlers such as `onClick` on the outer Base UI component. It
|
|
127
|
+
composes caller handlers with its internal behavior. Use `render` for the
|
|
128
|
+
element, styling, and prop forwarding, not to override supplied event handlers.
|
|
129
|
+
Custom components used inside `render` should also forward those handlers to
|
|
130
|
+
the final DOM node.
|
|
131
|
+
- A spread does not compose an overridden ref or class. Preserve supplied values
|
|
132
|
+
with Solid ref/class arrays when adding your own.
|
|
133
|
+
|
|
134
|
+
```tsx
|
|
135
|
+
import { Button } from "solid-baseui/button";
|
|
136
|
+
|
|
137
|
+
<Button
|
|
138
|
+
onClick={() => console.info("Save activated")}
|
|
139
|
+
render={(props) => (
|
|
140
|
+
<button
|
|
141
|
+
{...props}
|
|
142
|
+
class={[props.class, "action"]}
|
|
143
|
+
ref={[props.ref, (element) => { element.dataset.action = "save"; }]}
|
|
144
|
+
/>
|
|
145
|
+
)}
|
|
146
|
+
>
|
|
147
|
+
Save
|
|
148
|
+
</Button>;
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
Avoid `render={(props) => <button {...props} onClick={handleClick} />}`:
|
|
152
|
+
the explicit handler replaces the supplied handler and can break the component's
|
|
153
|
+
internal interaction behavior. Moving the spread last can instead discard your
|
|
154
|
+
handler. Put `onClick={handleClick}` on the outer component so both behaviors are
|
|
155
|
+
preserved without manually composing handlers.
|
|
156
|
+
|
|
157
|
+
Component authors can import `useRender` from `solid-baseui/use-render` or the
|
|
158
|
+
package root. Its signature is
|
|
159
|
+
`useRender(props, stateAccessor, nativeFallbackCallback)`, returning a local JSX
|
|
160
|
+
component. For example, `const Render = useRender(props, () => state(), (domProps) =>
|
|
161
|
+
<div {...domProps} />)` selects the callback or native default. Pass explicit
|
|
162
|
+
attributes to `<Render>` and spread props with component-only keys omitted last;
|
|
163
|
+
the helper does not build component behavior or merge event handlers for you.
|
|
164
|
+
`ComponentRenderFn` and `ComponentRenderProps` are exported as types from the
|
|
165
|
+
root, `solid-baseui/use-render`, and `solid-baseui/types`.
|
|
166
|
+
|
|
167
|
+
See [CHANGELOG.md](./CHANGELOG.md) for this alpha's changes.
|
|
168
|
+
|
|
169
|
+
## Migrating To 0.1.0-alpha.2
|
|
170
|
+
|
|
171
|
+
Version `0.1.0-alpha.2` changes the internal event-composition API to direct handlers:
|
|
172
|
+
|
|
173
|
+
```tsx
|
|
174
|
+
import type { JSX } from "@solidjs/web";
|
|
175
|
+
import { omit } from "solid-js";
|
|
176
|
+
import {
|
|
177
|
+
composeEventHandlers,
|
|
178
|
+
liveEventHandler,
|
|
179
|
+
} from "solid-baseui/internals/composeEventHandlers";
|
|
180
|
+
|
|
181
|
+
function CustomButton(props: JSX.ButtonHTMLAttributes<HTMLButtonElement>) {
|
|
182
|
+
const others = omit(props, "onClick");
|
|
183
|
+
const onClick = composeEventHandlers<HTMLButtonElement, MouseEvent>(
|
|
184
|
+
liveEventHandler(() => props.onClick),
|
|
185
|
+
(event) => event.preventBaseUIHandler(),
|
|
186
|
+
);
|
|
187
|
+
return <button type="button" onClick={onClick} {...others} />;
|
|
188
|
+
}
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
Fixed handlers need no outer function. Use `liveEventHandler` only when a callback
|
|
192
|
+
prop or handler selection can change; it creates a deferred source for the composer,
|
|
193
|
+
not a standalone DOM handler. Sources resolve in order at event time, including
|
|
194
|
+
Solid's `[handler, data]` tuples. Base UI cancellation stops later handlers and
|
|
195
|
+
source resolution; native `preventDefault` has its separate meaning.
|
|
196
|
+
|
|
197
|
+
This is a breaking change from alpha.1. Bare `() => handler` arguments must be
|
|
198
|
+
converted to direct handlers or explicit live sources. Handler return values are
|
|
199
|
+
ignored, so an old accessor can still typecheck without doing the intended work.
|
|
200
|
+
|
|
81
201
|
## Status
|
|
82
202
|
|
|
83
|
-
|
|
84
|
-
|
|
203
|
+
All 38 component families in the pinned inventory are implemented and exported.
|
|
204
|
+
The requested Tooltip, Combobox, Autocomplete, and Drawer verification is complete;
|
|
205
|
+
the project is now in stabilization and performance optimization.
|
|
85
206
|
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
| Combobox, Autocomplete | In progress |
|
|
90
|
-
| Drawer | Behavior complete; parts of the upstream test ledger unclassified |
|
|
91
|
-
| Remaining families | Done |
|
|
207
|
+
Implementation coverage is not exhaustive Base UI 1.8 parity or production stability.
|
|
208
|
+
The optional `unstable-use-media-query` utility is not implemented and is outside
|
|
209
|
+
the 38-component scope.
|
|
92
210
|
|
|
93
211
|
A component is only treated as done when its upstream Base UI test ledger is
|
|
94
212
|
classified and represented in the Solid suite. Per-family status, the decisions
|
|
@@ -103,8 +221,8 @@ This is a port, not a transliteration. Where React idioms do not carry over, the
|
|
|
103
221
|
Solid-native equivalent wins:
|
|
104
222
|
|
|
105
223
|
- Components use `class`, not `className`.
|
|
106
|
-
- Polymorphic components use `
|
|
107
|
-
|
|
224
|
+
- Polymorphic components use callback-only `render` with native JSX defaults.
|
|
225
|
+
React element cloning and JSX-valued render props are not supported.
|
|
108
226
|
- Provider hooks return accessors, because replacing a Solid context value is not
|
|
109
227
|
reactive.
|
|
110
228
|
- Refs are ordinary props and compose through Solid ref arrays. There is no
|