@limonify/zest-ui 0.3.1 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -0
- package/lib/alert-dialog/index.parts.d.ts +1 -1
- package/lib/alert-dialog/index.parts.d.ts.map +1 -1
- package/lib/alert-dialog/index.parts.js.map +1 -1
- package/lib/autocomplete/handle.d.ts +15 -0
- package/lib/autocomplete/handle.d.ts.map +1 -0
- package/lib/autocomplete/handle.js +12 -0
- package/lib/autocomplete/handle.js.map +1 -0
- package/lib/autocomplete/index.d.ts +1 -0
- package/lib/autocomplete/index.d.ts.map +1 -1
- package/lib/autocomplete/index.parts.d.ts +1 -0
- package/lib/autocomplete/index.parts.d.ts.map +1 -1
- package/lib/autocomplete/index.parts.js +3 -1
- package/lib/autocomplete/index.parts.js.map +1 -1
- package/lib/autocomplete/root/AutocompleteRoot.d.ts +55 -16
- package/lib/autocomplete/root/AutocompleteRoot.d.ts.map +1 -1
- package/lib/autocomplete/root/AutocompleteRoot.js +2 -18
- package/lib/autocomplete/root/AutocompleteRoot.js.map +1 -1
- package/lib/avatar/fallback/AvatarFallback.d.ts.map +1 -1
- package/lib/avatar/fallback/AvatarFallback.js +3 -1
- package/lib/avatar/fallback/AvatarFallback.js.map +1 -1
- package/lib/avatar/image/AvatarImage.d.ts.map +1 -1
- package/lib/avatar/image/AvatarImage.js +5 -0
- package/lib/avatar/image/AvatarImage.js.map +1 -1
- package/lib/checkbox/root/CheckboxRoot.d.ts.map +1 -1
- package/lib/checkbox/root/CheckboxRoot.js +9 -4
- package/lib/checkbox/root/CheckboxRoot.js.map +1 -1
- package/lib/combobox/backdrop/ComboboxBackdrop.d.ts.map +1 -1
- package/lib/combobox/backdrop/ComboboxBackdrop.js +10 -2
- package/lib/combobox/backdrop/ComboboxBackdrop.js.map +1 -1
- package/lib/combobox/empty/ComboboxEmpty.d.ts.map +1 -1
- package/lib/combobox/empty/ComboboxEmpty.js +4 -1
- package/lib/combobox/empty/ComboboxEmpty.js.map +1 -1
- package/lib/combobox/index.d.ts +2 -0
- package/lib/combobox/index.d.ts.map +1 -1
- package/lib/combobox/index.js +3 -1
- package/lib/combobox/index.js.map +1 -1
- package/lib/combobox/index.parts.d.ts +1 -0
- package/lib/combobox/index.parts.d.ts.map +1 -1
- package/lib/combobox/index.parts.js +4 -1
- package/lib/combobox/index.parts.js.map +1 -1
- package/lib/combobox/input/ComboboxInput.d.ts +24 -3
- package/lib/combobox/input/ComboboxInput.d.ts.map +1 -1
- package/lib/combobox/input/ComboboxInput.js +68 -8
- package/lib/combobox/input/ComboboxInput.js.map +1 -1
- package/lib/combobox/item/ComboboxItem.d.ts +11 -1
- package/lib/combobox/item/ComboboxItem.d.ts.map +1 -1
- package/lib/combobox/item/ComboboxItem.js +9 -4
- package/lib/combobox/item/ComboboxItem.js.map +1 -1
- package/lib/combobox/list/ComboboxList.d.ts +1 -1
- package/lib/combobox/list/ComboboxList.d.ts.map +1 -1
- package/lib/combobox/list/ComboboxList.js +4 -1
- package/lib/combobox/list/ComboboxList.js.map +1 -1
- package/lib/combobox/popup/ComboboxPopup.d.ts +26 -0
- package/lib/combobox/popup/ComboboxPopup.d.ts.map +1 -1
- package/lib/combobox/popup/ComboboxPopup.js +18 -2
- package/lib/combobox/popup/ComboboxPopup.js.map +1 -1
- package/lib/combobox/portal/ComboboxPortal.d.ts.map +1 -1
- package/lib/combobox/portal/ComboboxPortal.js +8 -4
- package/lib/combobox/portal/ComboboxPortal.js.map +1 -1
- package/lib/combobox/portal/ComboboxPortalContext.d.ts +4 -0
- package/lib/combobox/portal/ComboboxPortalContext.d.ts.map +1 -0
- package/lib/combobox/portal/ComboboxPortalContext.js +48 -0
- package/lib/combobox/portal/ComboboxPortalContext.js.map +1 -0
- package/lib/combobox/positioner/ComboboxPositioner.d.ts +11 -1
- package/lib/combobox/positioner/ComboboxPositioner.d.ts.map +1 -1
- package/lib/combobox/positioner/ComboboxPositioner.js +67 -7
- package/lib/combobox/positioner/ComboboxPositioner.js.map +1 -1
- package/lib/combobox/positioner/ComboboxPositionerContext.d.ts +9 -0
- package/lib/combobox/positioner/ComboboxPositionerContext.d.ts.map +1 -0
- package/lib/combobox/positioner/ComboboxPositionerContext.js +48 -0
- package/lib/combobox/positioner/ComboboxPositionerContext.js.map +1 -0
- package/lib/combobox/root/ComboboxItemsContext.d.ts +18 -0
- package/lib/combobox/root/ComboboxItemsContext.d.ts.map +1 -0
- package/lib/combobox/root/ComboboxItemsContext.js +55 -0
- package/lib/combobox/root/ComboboxItemsContext.js.map +1 -0
- package/lib/combobox/root/ComboboxRoot.d.ts +77 -21
- package/lib/combobox/root/ComboboxRoot.d.ts.map +1 -1
- package/lib/combobox/root/ComboboxRoot.js +4 -23
- package/lib/combobox/root/ComboboxRoot.js.map +1 -1
- package/lib/combobox/root/ComboboxRootContext.d.ts +4 -43
- package/lib/combobox/root/ComboboxRootContext.d.ts.map +1 -1
- package/lib/combobox/root/ComboboxRootContext.js.map +1 -1
- package/lib/combobox/root/ComboboxTransitionContext.d.ts +8 -0
- package/lib/combobox/root/ComboboxTransitionContext.d.ts.map +1 -0
- package/lib/combobox/root/ComboboxTransitionContext.js +44 -0
- package/lib/combobox/root/ComboboxTransitionContext.js.map +1 -0
- package/lib/combobox/root/useRenderComboboxRoot.d.ts +39 -0
- package/lib/combobox/root/useRenderComboboxRoot.d.ts.map +1 -0
- package/lib/combobox/root/useRenderComboboxRoot.js +136 -0
- package/lib/combobox/root/useRenderComboboxRoot.js.map +1 -0
- package/lib/combobox/store/ComboboxHandle.d.ts +42 -0
- package/lib/combobox/store/ComboboxHandle.d.ts.map +1 -0
- package/lib/combobox/store/ComboboxHandle.js +65 -0
- package/lib/combobox/store/ComboboxHandle.js.map +1 -0
- package/lib/combobox/store/ComboboxStore.d.ts +147 -0
- package/lib/combobox/store/ComboboxStore.d.ts.map +1 -0
- package/lib/combobox/store/ComboboxStore.js +127 -0
- package/lib/combobox/store/ComboboxStore.js.map +1 -0
- package/lib/combobox/value/ComboboxValue.d.ts.map +1 -1
- package/lib/combobox/value/ComboboxValue.js +2 -1
- package/lib/combobox/value/ComboboxValue.js.map +1 -1
- package/lib/context-menu/positioner/ContextMenuPositioner.d.ts +19 -3
- package/lib/context-menu/positioner/ContextMenuPositioner.d.ts.map +1 -1
- package/lib/context-menu/positioner/ContextMenuPositioner.js +56 -7
- package/lib/context-menu/positioner/ContextMenuPositioner.js.map +1 -1
- package/lib/context-menu/root/ContextMenuRoot.d.ts +8 -0
- package/lib/context-menu/root/ContextMenuRoot.d.ts.map +1 -1
- package/lib/dialog/backdrop/DialogBackdrop.d.ts +9 -0
- package/lib/dialog/backdrop/DialogBackdrop.d.ts.map +1 -1
- package/lib/dialog/backdrop/DialogBackdrop.js +3 -1
- package/lib/dialog/backdrop/DialogBackdrop.js.map +1 -1
- package/lib/dialog/popup/DialogPopup.d.ts +9 -0
- package/lib/dialog/popup/DialogPopup.d.ts.map +1 -1
- package/lib/dialog/popup/DialogPopup.js +2 -2
- package/lib/dialog/popup/DialogPopup.js.map +1 -1
- package/lib/dialog/popup/useDialogPopupProps.d.ts +2 -0
- package/lib/dialog/popup/useDialogPopupProps.d.ts.map +1 -1
- package/lib/dialog/popup/useDialogPopupProps.js +4 -0
- package/lib/dialog/popup/useDialogPopupProps.js.map +1 -1
- package/lib/dialog/root/DialogNestingContext.d.ts +20 -0
- package/lib/dialog/root/DialogNestingContext.d.ts.map +1 -0
- package/lib/dialog/root/DialogNestingContext.js +53 -0
- package/lib/dialog/root/DialogNestingContext.js.map +1 -0
- package/lib/dialog/root/useRenderDialogRoot.d.ts.map +1 -1
- package/lib/dialog/root/useRenderDialogRoot.js +26 -2
- package/lib/dialog/root/useRenderDialogRoot.js.map +1 -1
- package/lib/dialog/store/DialogStore.d.ts +19 -2
- package/lib/dialog/store/DialogStore.d.ts.map +1 -1
- package/lib/dialog/store/DialogStore.js +14 -2
- package/lib/dialog/store/DialogStore.js.map +1 -1
- package/lib/drawer/index.parts.d.ts +1 -1
- package/lib/drawer/index.parts.d.ts.map +1 -1
- package/lib/drawer/index.parts.js.map +1 -1
- package/lib/drawer/popup/DrawerPopup.d.ts +9 -0
- package/lib/drawer/popup/DrawerPopup.d.ts.map +1 -1
- package/lib/drawer/popup/DrawerPopup.js +3 -1
- package/lib/drawer/popup/DrawerPopup.js.map +1 -1
- package/lib/filter/index.d.ts +2 -0
- package/lib/filter/index.d.ts.map +1 -0
- package/lib/filter/index.js +6 -0
- package/lib/filter/index.js.map +1 -0
- package/lib/filter/useFilter.d.ts +45 -0
- package/lib/filter/useFilter.d.ts.map +1 -0
- package/lib/filter/useFilter.js +96 -0
- package/lib/filter/useFilter.js.map +1 -0
- package/lib/index.d.ts +1 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +1 -0
- package/lib/index.js.map +1 -1
- package/lib/internals/field/useFieldControlRegistration.d.ts +25 -6
- package/lib/internals/field/useFieldControlRegistration.d.ts.map +1 -1
- package/lib/internals/field/useFieldControlRegistration.js +93 -6
- package/lib/internals/field/useFieldControlRegistration.js.map +1 -1
- package/lib/menu/popup/MenuPopup.d.ts +10 -0
- package/lib/menu/popup/MenuPopup.d.ts.map +1 -1
- package/lib/menu/popup/MenuPopup.js +10 -1
- package/lib/menu/popup/MenuPopup.js.map +1 -1
- package/lib/menu/positioner/MenuPositioner.d.ts +10 -0
- package/lib/menu/positioner/MenuPositioner.d.ts.map +1 -1
- package/lib/menu/positioner/MenuPositioner.js +9 -1
- package/lib/menu/positioner/MenuPositioner.js.map +1 -1
- package/lib/menu/store/MenuStore.d.ts +11 -0
- package/lib/menu/store/MenuStore.d.ts.map +1 -1
- package/lib/menu/store/MenuStore.js +4 -0
- package/lib/menu/store/MenuStore.js.map +1 -1
- package/lib/menu/submenu-trigger/MenuSubmenuTrigger.d.ts.map +1 -1
- package/lib/menu/submenu-trigger/MenuSubmenuTrigger.js +3 -0
- package/lib/menu/submenu-trigger/MenuSubmenuTrigger.js.map +1 -1
- package/lib/menu/trigger/MenuTrigger.d.ts.map +1 -1
- package/lib/menu/trigger/MenuTrigger.js +4 -1
- package/lib/menu/trigger/MenuTrigger.js.map +1 -1
- package/lib/meter/indicator/MeterIndicator.d.ts +2 -1
- package/lib/meter/indicator/MeterIndicator.d.ts.map +1 -1
- package/lib/meter/indicator/MeterIndicator.js +1 -2
- package/lib/meter/indicator/MeterIndicator.js.map +1 -1
- package/lib/meter/label/MeterLabel.d.ts +2 -1
- package/lib/meter/label/MeterLabel.d.ts.map +1 -1
- package/lib/meter/label/MeterLabel.js +1 -2
- package/lib/meter/label/MeterLabel.js.map +1 -1
- package/lib/meter/root/MeterRoot.d.ts +21 -0
- package/lib/meter/root/MeterRoot.d.ts.map +1 -1
- package/lib/meter/root/MeterRoot.js +2 -2
- package/lib/meter/root/MeterRoot.js.map +1 -1
- package/lib/meter/root/MeterRootContext.d.ts +5 -0
- package/lib/meter/root/MeterRootContext.d.ts.map +1 -1
- package/lib/meter/root/MeterRootContext.js.map +1 -1
- package/lib/meter/track/MeterTrack.d.ts +2 -1
- package/lib/meter/track/MeterTrack.d.ts.map +1 -1
- package/lib/meter/track/MeterTrack.js +1 -2
- package/lib/meter/track/MeterTrack.js.map +1 -1
- package/lib/meter/value/MeterValue.d.ts +2 -1
- package/lib/meter/value/MeterValue.d.ts.map +1 -1
- package/lib/meter/value/MeterValue.js +1 -2
- package/lib/meter/value/MeterValue.js.map +1 -1
- package/lib/number-field/input/NumberFieldInput.d.ts.map +1 -1
- package/lib/number-field/input/NumberFieldInput.js +11 -2
- package/lib/number-field/input/NumberFieldInput.js.map +1 -1
- package/lib/number-field/root/NumberFieldRoot.d.ts.map +1 -1
- package/lib/number-field/root/NumberFieldRoot.js +5 -2
- package/lib/number-field/root/NumberFieldRoot.js.map +1 -1
- package/lib/otp-field/input/OTPFieldInput.d.ts.map +1 -1
- package/lib/otp-field/input/OTPFieldInput.js +4 -0
- package/lib/otp-field/input/OTPFieldInput.js.map +1 -1
- package/lib/otp-field/root/OTPFieldRoot.d.ts.map +1 -1
- package/lib/otp-field/root/OTPFieldRoot.js +20 -2
- package/lib/otp-field/root/OTPFieldRoot.js.map +1 -1
- package/lib/popover/popup/PopoverPopup.d.ts +10 -0
- package/lib/popover/popup/PopoverPopup.d.ts.map +1 -1
- package/lib/popover/popup/PopoverPopup.js +10 -1
- package/lib/popover/popup/PopoverPopup.js.map +1 -1
- package/lib/popover/positioner/PopoverPositioner.d.ts +10 -0
- package/lib/popover/positioner/PopoverPositioner.d.ts.map +1 -1
- package/lib/popover/positioner/PopoverPositioner.js +4 -0
- package/lib/popover/positioner/PopoverPositioner.js.map +1 -1
- package/lib/popover/store/PopoverStore.d.ts +11 -0
- package/lib/popover/store/PopoverStore.d.ts.map +1 -1
- package/lib/popover/store/PopoverStore.js +4 -0
- package/lib/popover/store/PopoverStore.js.map +1 -1
- package/lib/popover/trigger/PopoverTrigger.d.ts.map +1 -1
- package/lib/popover/trigger/PopoverTrigger.js +4 -1
- package/lib/popover/trigger/PopoverTrigger.js.map +1 -1
- package/lib/progress/root/ProgressRoot.d.ts +21 -0
- package/lib/progress/root/ProgressRoot.d.ts.map +1 -1
- package/lib/progress/root/ProgressRoot.js +1 -1
- package/lib/progress/root/ProgressRoot.js.map +1 -1
- package/lib/radio-group/RadioGroup.d.ts.map +1 -1
- package/lib/radio-group/RadioGroup.js +5 -2
- package/lib/radio-group/RadioGroup.js.map +1 -1
- package/lib/select/backdrop/SelectBackdrop.d.ts.map +1 -1
- package/lib/select/backdrop/SelectBackdrop.js +3 -0
- package/lib/select/backdrop/SelectBackdrop.js.map +1 -1
- package/lib/select/index.parts.d.ts +1 -0
- package/lib/select/index.parts.d.ts.map +1 -1
- package/lib/select/index.parts.js +4 -1
- package/lib/select/index.parts.js.map +1 -1
- package/lib/select/popup/SelectPopup.d.ts +8 -0
- package/lib/select/popup/SelectPopup.d.ts.map +1 -1
- package/lib/select/popup/SelectPopup.js +10 -1
- package/lib/select/popup/SelectPopup.js.map +1 -1
- package/lib/select/positioner/SelectPositioner.d.ts +9 -0
- package/lib/select/positioner/SelectPositioner.d.ts.map +1 -1
- package/lib/select/positioner/SelectPositioner.js +9 -1
- package/lib/select/positioner/SelectPositioner.js.map +1 -1
- package/lib/select/root/SelectRoot.d.ts +45 -4
- package/lib/select/root/SelectRoot.d.ts.map +1 -1
- package/lib/select/root/SelectRoot.js +43 -5
- package/lib/select/root/SelectRoot.js.map +1 -1
- package/lib/select/store/SelectHandle.d.ts +42 -0
- package/lib/select/store/SelectHandle.d.ts.map +1 -0
- package/lib/select/store/SelectHandle.js +69 -0
- package/lib/select/store/SelectHandle.js.map +1 -0
- package/lib/select/store/SelectStore.d.ts +33 -0
- package/lib/select/store/SelectStore.d.ts.map +1 -1
- package/lib/select/store/SelectStore.js +17 -1
- package/lib/select/store/SelectStore.js.map +1 -1
- package/lib/select/trigger/SelectTrigger.d.ts +18 -3
- package/lib/select/trigger/SelectTrigger.d.ts.map +1 -1
- package/lib/select/trigger/SelectTrigger.js +51 -4
- package/lib/select/trigger/SelectTrigger.js.map +1 -1
- package/lib/slider/root/SliderRoot.d.ts.map +1 -1
- package/lib/slider/root/SliderRoot.js +9 -1
- package/lib/slider/root/SliderRoot.js.map +1 -1
- package/lib/slider/thumb/SliderThumb.d.ts.map +1 -1
- package/lib/slider/thumb/SliderThumb.js +10 -2
- package/lib/slider/thumb/SliderThumb.js.map +1 -1
- package/lib/switch/root/SwitchRoot.d.ts.map +1 -1
- package/lib/switch/root/SwitchRoot.js +6 -2
- package/lib/switch/root/SwitchRoot.js.map +1 -1
- package/lib/tabs/tab/TabsTab.d.ts +2 -10
- package/lib/tabs/tab/TabsTab.d.ts.map +1 -1
- package/lib/tooltip/popup/TooltipPopup.d.ts +10 -0
- package/lib/tooltip/popup/TooltipPopup.d.ts.map +1 -1
- package/lib/tooltip/popup/TooltipPopup.js +10 -1
- package/lib/tooltip/popup/TooltipPopup.js.map +1 -1
- package/lib/tooltip/positioner/TooltipPositioner.d.ts +10 -0
- package/lib/tooltip/positioner/TooltipPositioner.d.ts.map +1 -1
- package/lib/tooltip/positioner/TooltipPositioner.js +4 -0
- package/lib/tooltip/positioner/TooltipPositioner.js.map +1 -1
- package/lib/tooltip/store/TooltipStore.d.ts +11 -0
- package/lib/tooltip/store/TooltipStore.d.ts.map +1 -1
- package/lib/tooltip/store/TooltipStore.js +11 -1
- package/lib/tooltip/store/TooltipStore.js.map +1 -1
- package/lib/tooltip/trigger/TooltipTrigger.d.ts.map +1 -1
- package/lib/tooltip/trigger/TooltipTrigger.js +4 -1
- package/lib/tooltip/trigger/TooltipTrigger.js.map +1 -1
- package/package.json +1 -1
- package/src/alert-dialog/index.parts.ts +1 -1
- package/src/autocomplete/handle.ts +18 -0
- package/src/autocomplete/index.parts.ts +1 -0
- package/src/autocomplete/index.ts +1 -0
- package/src/autocomplete/root/AutocompleteRoot.tsx +65 -50
- package/src/avatar/fallback/AvatarFallback.tsx +3 -1
- package/src/avatar/image/AvatarImage.tsx +5 -0
- package/src/checkbox/root/CheckboxRoot.tsx +7 -2
- package/src/combobox/backdrop/ComboboxBackdrop.tsx +10 -2
- package/src/combobox/empty/ComboboxEmpty.tsx +5 -1
- package/src/combobox/index.parts.ts +1 -0
- package/src/combobox/index.ts +2 -0
- package/src/combobox/input/ComboboxInput.tsx +118 -23
- package/src/combobox/item/ComboboxItem.tsx +24 -5
- package/src/combobox/list/ComboboxList.tsx +7 -2
- package/src/combobox/popup/ComboboxPopup.tsx +44 -2
- package/src/combobox/portal/ComboboxPortal.tsx +19 -13
- package/src/combobox/portal/ComboboxPortalContext.ts +15 -0
- package/src/combobox/positioner/ComboboxPositioner.tsx +52 -7
- package/src/combobox/positioner/ComboboxPositionerContext.ts +23 -0
- package/src/combobox/root/ComboboxItemsContext.ts +32 -0
- package/src/combobox/root/ComboboxRoot.tsx +94 -56
- package/src/combobox/root/ComboboxRootContext.ts +3 -43
- package/src/combobox/root/ComboboxTransitionContext.ts +15 -0
- package/src/combobox/root/useRenderComboboxRoot.tsx +189 -0
- package/src/combobox/store/ComboboxHandle.ts +64 -0
- package/src/combobox/store/ComboboxStore.ts +249 -0
- package/src/combobox/value/ComboboxValue.tsx +2 -1
- package/src/context-menu/positioner/ContextMenuPositioner.tsx +90 -10
- package/src/context-menu/root/ContextMenuRoot.tsx +8 -0
- package/src/dialog/backdrop/DialogBackdrop.tsx +12 -1
- package/src/dialog/popup/DialogPopup.tsx +11 -2
- package/src/dialog/popup/useDialogPopupProps.ts +4 -0
- package/src/dialog/root/DialogNestingContext.ts +27 -0
- package/src/dialog/root/useRenderDialogRoot.tsx +37 -2
- package/src/dialog/store/DialogStore.ts +24 -2
- package/src/drawer/index.parts.ts +1 -1
- package/src/drawer/popup/DrawerPopup.tsx +12 -1
- package/src/filter/index.ts +5 -0
- package/src/filter/useFilter.ts +95 -0
- package/src/index.ts +1 -0
- package/src/internals/field/useFieldControlRegistration.ts +86 -6
- package/src/menu/popup/MenuPopup.tsx +20 -1
- package/src/menu/positioner/MenuPositioner.tsx +19 -1
- package/src/menu/store/MenuStore.ts +13 -0
- package/src/menu/submenu-trigger/MenuSubmenuTrigger.tsx +3 -0
- package/src/menu/trigger/MenuTrigger.tsx +5 -2
- package/src/meter/indicator/MeterIndicator.tsx +3 -4
- package/src/meter/label/MeterLabel.tsx +3 -4
- package/src/meter/root/MeterRoot.tsx +29 -4
- package/src/meter/root/MeterRootContext.ts +5 -0
- package/src/meter/track/MeterTrack.tsx +3 -4
- package/src/meter/value/MeterValue.tsx +3 -4
- package/src/number-field/input/NumberFieldInput.tsx +11 -2
- package/src/number-field/root/NumberFieldRoot.tsx +4 -2
- package/src/otp-field/input/OTPFieldInput.tsx +4 -0
- package/src/otp-field/root/OTPFieldRoot.tsx +22 -2
- package/src/popover/popup/PopoverPopup.tsx +20 -1
- package/src/popover/positioner/PopoverPositioner.tsx +14 -0
- package/src/popover/store/PopoverStore.ts +13 -0
- package/src/popover/trigger/PopoverTrigger.tsx +5 -2
- package/src/progress/root/ProgressRoot.tsx +25 -1
- package/src/radio-group/RadioGroup.tsx +5 -2
- package/src/select/backdrop/SelectBackdrop.tsx +4 -0
- package/src/select/index.parts.ts +1 -0
- package/src/select/popup/SelectPopup.tsx +18 -1
- package/src/select/positioner/SelectPositioner.tsx +18 -1
- package/src/select/root/SelectRoot.tsx +109 -9
- package/src/select/store/SelectHandle.ts +68 -0
- package/src/select/store/SelectStore.ts +44 -1
- package/src/select/trigger/SelectTrigger.tsx +81 -8
- package/src/slider/root/SliderRoot.tsx +11 -1
- package/src/slider/thumb/SliderThumb.tsx +10 -1
- package/src/switch/root/SwitchRoot.tsx +5 -2
- package/src/tabs/tab/TabsTab.tsx +2 -10
- package/src/tooltip/popup/TooltipPopup.tsx +20 -1
- package/src/tooltip/positioner/TooltipPositioner.tsx +14 -0
- package/src/tooltip/store/TooltipStore.ts +20 -1
- package/src/tooltip/trigger/TooltipTrigger.tsx +5 -2
- package/lib/combobox/root/useComboboxRoot.d.ts +0 -29
- package/lib/combobox/root/useComboboxRoot.d.ts.map +0 -1
- package/lib/combobox/root/useComboboxRoot.js +0 -168
- package/lib/combobox/root/useComboboxRoot.js.map +0 -1
- package/lib/utils/fastObjectShallowCompare.d.ts +0 -2
- package/lib/utils/fastObjectShallowCompare.d.ts.map +0 -1
- package/lib/utils/fastObjectShallowCompare.js +0 -29
- package/lib/utils/fastObjectShallowCompare.js.map +0 -1
- package/lib/utils/mergeObjects.d.ts +0 -2
- package/lib/utils/mergeObjects.d.ts.map +0 -1
- package/lib/utils/mergeObjects.js +0 -16
- package/lib/utils/mergeObjects.js.map +0 -1
- package/src/combobox/root/useComboboxRoot.ts +0 -190
- package/src/utils/fastObjectShallowCompare.ts +0 -30
- package/src/utils/mergeObjects.ts +0 -15
|
@@ -48,23 +48,72 @@ const NO_ARROW = { current: null };
|
|
|
48
48
|
* Positions the context menu popup at the point the long press landed.
|
|
49
49
|
* Renders a `<View>`.
|
|
50
50
|
*
|
|
51
|
-
* Unlike `Menu.Positioner
|
|
52
|
-
* element, so
|
|
53
|
-
*
|
|
51
|
+
* Unlike `Menu.Positioner` it anchors to a screen point rather than a trigger
|
|
52
|
+
* element, so it does not go through `useAnchorPositioning`: floating-ui
|
|
53
|
+
* measures a real node, and there is no node here. Collision handling is
|
|
54
|
+
* therefore its own — the popup flips to the other side of the press point when
|
|
55
|
+
* it would otherwise run off the screen, and is kept `collisionPadding` inside
|
|
56
|
+
* the edges. `side` and `align` on state report where it actually landed.
|
|
54
57
|
*/
|
|
55
58
|
function ContextMenuPositioner(componentProps) {
|
|
56
|
-
const { render, className, style, ref, ...elementProps } = componentProps;
|
|
59
|
+
const { render, className, collisionPadding = 5, style, ref, ...elementProps } = componentProps;
|
|
57
60
|
(0, MenuPortalContext_1.useMenuPortalContext)();
|
|
58
61
|
const store = (0, MenuRootContext_1.useMenuRootContext)();
|
|
59
62
|
const { anchor } = (0, ContextMenuRootContext_1.useContextMenuRootContext)();
|
|
60
63
|
const open = store.useState('open');
|
|
61
|
-
const
|
|
62
|
-
|
|
64
|
+
const { width: screenWidth, height: screenHeight } = (0, react_native_1.useWindowDimensions)();
|
|
65
|
+
// The popup's own size, which only exists after it has been laid out. Until
|
|
66
|
+
// then it is placed at the press point unflipped, exactly as before.
|
|
67
|
+
const [size, setSize] = React.useState(undefined);
|
|
68
|
+
const onLayout = React.useCallback((event) => {
|
|
69
|
+
const { width, height } = event.nativeEvent.layout;
|
|
70
|
+
setSize((previous) => (previous === null || previous === void 0 ? void 0 : previous.width) === width && (previous === null || previous === void 0 ? void 0 : previous.height) === height ? previous : { width, height });
|
|
71
|
+
}, []);
|
|
72
|
+
// A closed menu remeasures when it reopens somewhere else, so stale geometry
|
|
73
|
+
// never decides the first frame of the next open.
|
|
74
|
+
React.useEffect(() => {
|
|
75
|
+
if (!open) {
|
|
76
|
+
setSize(undefined);
|
|
77
|
+
}
|
|
78
|
+
}, [open]);
|
|
79
|
+
const placement = React.useMemo(() => {
|
|
80
|
+
if (size === undefined) {
|
|
81
|
+
return { left: anchor.x, top: anchor.y, side: 'bottom', align: 'start' };
|
|
82
|
+
}
|
|
83
|
+
const flipHorizontally = anchor.x + size.width > screenWidth - collisionPadding;
|
|
84
|
+
const flipVertically = anchor.y + size.height > screenHeight - collisionPadding;
|
|
85
|
+
const rawLeft = flipHorizontally ? anchor.x - size.width : anchor.x;
|
|
86
|
+
const rawTop = flipVertically ? anchor.y - size.height : anchor.y;
|
|
87
|
+
// Clamping matters when the popup is larger than the space on either side:
|
|
88
|
+
// flipping alone would just move the overflow to the opposite edge.
|
|
89
|
+
const maxLeft = Math.max(collisionPadding, screenWidth - size.width - collisionPadding);
|
|
90
|
+
const maxTop = Math.max(collisionPadding, screenHeight - size.height - collisionPadding);
|
|
91
|
+
return {
|
|
92
|
+
left: Math.min(Math.max(rawLeft, collisionPadding), maxLeft),
|
|
93
|
+
top: Math.min(Math.max(rawTop, collisionPadding), maxTop),
|
|
94
|
+
side: (flipVertically ? 'top' : 'bottom'),
|
|
95
|
+
align: (flipHorizontally ? 'end' : 'start'),
|
|
96
|
+
};
|
|
97
|
+
}, [anchor.x, anchor.y, size, screenWidth, screenHeight, collisionPadding]);
|
|
98
|
+
const state = {
|
|
99
|
+
open,
|
|
100
|
+
side: placement.side,
|
|
101
|
+
align: placement.align,
|
|
102
|
+
};
|
|
103
|
+
const contextValue = React.useMemo(() => ({
|
|
104
|
+
side: placement.side,
|
|
105
|
+
align: placement.align,
|
|
106
|
+
arrowRef: NO_ARROW,
|
|
107
|
+
arrowStyles: {},
|
|
108
|
+
}), [placement.side, placement.align]);
|
|
63
109
|
const element = (0, useRenderElement_1.useRenderElement)(react_native_1.View, componentProps, {
|
|
64
110
|
state,
|
|
65
111
|
ref,
|
|
66
112
|
props: [
|
|
67
|
-
{
|
|
113
|
+
{
|
|
114
|
+
style: { position: 'absolute', left: placement.left, top: placement.top },
|
|
115
|
+
onLayout,
|
|
116
|
+
},
|
|
68
117
|
elementProps,
|
|
69
118
|
],
|
|
70
119
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContextMenuPositioner.js","sourceRoot":"","sources":["../../../src/context-menu/positioner/ContextMenuPositioner.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"ContextMenuPositioner.js","sourceRoot":"","sources":["../../../src/context-menu/positioner/ContextMenuPositioner.tsx"],"names":[],"mappings":"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"}
|
|
@@ -21,5 +21,13 @@ export interface ContextMenuRootProps extends Omit<MenuRoot.Props, 'handle' | 't
|
|
|
21
21
|
export declare namespace ContextMenuRoot {
|
|
22
22
|
type State = ContextMenuRootState;
|
|
23
23
|
type Props = ContextMenuRootProps;
|
|
24
|
+
/**
|
|
25
|
+
* A context menu is a menu, so it reuses the menu's action and event
|
|
26
|
+
* contracts — a consumer should not have to reach for `Menu.Root`'s types to
|
|
27
|
+
* type a `ContextMenu.Root` handler.
|
|
28
|
+
*/
|
|
29
|
+
type Actions = MenuRoot.Actions;
|
|
30
|
+
type ChangeEventReason = MenuRoot.ChangeEventReason;
|
|
31
|
+
type ChangeEventDetails = MenuRoot.ChangeEventDetails;
|
|
24
32
|
}
|
|
25
33
|
//# sourceMappingURL=ContextMenuRoot.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContextMenuRoot.d.ts","sourceRoot":"","sources":["../../../src/context-menu/root/ContextMenuRoot.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAGpD;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,eAAe,CAAC,KAAK,qBAa3D;AAED,MAAM,WAAW,oBAAoB;CAAG;AAExC,MAAM,WAAW,oBACf,SAAQ,IAAI,CACV,QAAQ,CAAC,KAAK,EACd,QAAQ,GAAG,WAAW,GAAG,kBAAkB,GAAG,UAAU,CACzD;IACD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,yBAAiB,eAAe,CAAC;IAC/B,KAAY,KAAK,GAAG,oBAAoB,CAAC;IACzC,KAAY,KAAK,GAAG,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"ContextMenuRoot.d.ts","sourceRoot":"","sources":["../../../src/context-menu/root/ContextMenuRoot.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAGpD;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,eAAe,CAAC,KAAK,qBAa3D;AAED,MAAM,WAAW,oBAAoB;CAAG;AAExC,MAAM,WAAW,oBACf,SAAQ,IAAI,CACV,QAAQ,CAAC,KAAK,EACd,QAAQ,GAAG,WAAW,GAAG,kBAAkB,GAAG,UAAU,CACzD;IACD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,yBAAiB,eAAe,CAAC;IAC/B,KAAY,KAAK,GAAG,oBAAoB,CAAC;IACzC,KAAY,KAAK,GAAG,oBAAoB,CAAC;IACzC;;;;OAIG;IACH,KAAY,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;IACvC,KAAY,iBAAiB,GAAG,QAAQ,CAAC,iBAAiB,CAAC;IAC3D,KAAY,kBAAkB,GAAG,QAAQ,CAAC,kBAAkB,CAAC;CAC9D"}
|
|
@@ -13,6 +13,15 @@ export interface DialogBackdropState {
|
|
|
13
13
|
* Whether the dialog is currently open.
|
|
14
14
|
*/
|
|
15
15
|
open: boolean;
|
|
16
|
+
/**
|
|
17
|
+
* Whether this dialog is rendered inside another dialog's tree.
|
|
18
|
+
*/
|
|
19
|
+
nested: boolean;
|
|
20
|
+
/**
|
|
21
|
+
* Whether a dialog nested inside this one is open — a backdrop usually wants
|
|
22
|
+
* to darken further while it is.
|
|
23
|
+
*/
|
|
24
|
+
nestedDialogOpen: boolean;
|
|
16
25
|
}
|
|
17
26
|
export interface DialogBackdropProps extends ZestUIComponentProps<typeof View, DialogBackdropState> {
|
|
18
27
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DialogBackdrop.d.ts","sourceRoot":"","sources":["../../../src/dialog/backdrop/DialogBackdrop.tsx"],"names":[],"mappings":"AACA,OAAO,EAAc,IAAI,EAAE,MAAM,cAAc,CAAC;AAGhD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAExD;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,cAAc,EAAE,cAAc,CAAC,KAAK,
|
|
1
|
+
{"version":3,"file":"DialogBackdrop.d.ts","sourceRoot":"","sources":["../../../src/dialog/backdrop/DialogBackdrop.tsx"],"names":[],"mappings":"AACA,OAAO,EAAc,IAAI,EAAE,MAAM,cAAc,CAAC;AAGhD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAExD;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,cAAc,EAAE,cAAc,CAAC,KAAK,8FAuBlE;AAED,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,IAAI,EAAE,OAAO,CAAC;IACd;;OAEG;IACH,MAAM,EAAE,OAAO,CAAC;IAChB;;;OAGG;IACH,gBAAgB,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,mBACf,SAAQ,oBAAoB,CAAC,OAAO,IAAI,EAAE,mBAAmB,CAAC;CAAG;AAEnE,yBAAiB,cAAc,CAAC;IAC9B,KAAY,KAAK,GAAG,mBAAmB,CAAC;IACxC,KAAY,KAAK,GAAG,mBAAmB,CAAC;CACzC"}
|
|
@@ -16,7 +16,9 @@ function DialogBackdrop(componentProps) {
|
|
|
16
16
|
const { render, className, style, ref, ...elementProps } = componentProps;
|
|
17
17
|
const store = (0, DialogRootContext_1.useDialogRootContext)();
|
|
18
18
|
const open = store.useState('open');
|
|
19
|
-
const
|
|
19
|
+
const nested = store.useState('nested');
|
|
20
|
+
const nestedDialogOpen = store.useState('nestedDialogOpen');
|
|
21
|
+
const state = { open, nested, nestedDialogOpen };
|
|
20
22
|
return (0, useRenderElement_1.useRenderElement)(react_native_1.View, componentProps, {
|
|
21
23
|
state,
|
|
22
24
|
ref,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DialogBackdrop.js","sourceRoot":"","sources":["../../../src/dialog/backdrop/DialogBackdrop.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;AAab,
|
|
1
|
+
{"version":3,"file":"DialogBackdrop.js","sourceRoot":"","sources":["../../../src/dialog/backdrop/DialogBackdrop.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;AAab,wCAuBC;AAnCD,+CAAgD;AAChD,iEAAiE;AACjE,wEAAqE;AAGrE;;;;;;GAMG;AACH,SAAgB,cAAc,CAAC,cAAoC;IACjE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,YAAY,EAAE,GAAG,cAAc,CAAC;IAE1E,MAAM,KAAK,GAAG,IAAA,wCAAoB,GAAE,CAAC;IACrC,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACpC,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACxC,MAAM,gBAAgB,GAAG,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAE5D,MAAM,KAAK,GAAwB,EAAE,IAAI,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC;IAEtE,OAAO,IAAA,mCAAgB,EAAC,mBAAI,EAAE,cAAc,EAAE;QAC5C,KAAK;QACL,GAAG;QACH,KAAK,EAAE;YACL;gBACE,KAAK,EAAE,yBAAU,CAAC,YAAY;gBAC9B,aAAa,EAAE,MAAe;gBAC9B,UAAU,EAAE,KAAK;gBACjB,yBAAyB,EAAE,qBAA8B;aAC1D;YACD,YAAY;SACb;KACF,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -16,6 +16,15 @@ export interface DialogPopupState {
|
|
|
16
16
|
* to `undefined` after one frame), `'ending'` once it is closing.
|
|
17
17
|
*/
|
|
18
18
|
transitionStatus: TransitionStatus;
|
|
19
|
+
/**
|
|
20
|
+
* Whether this dialog is rendered inside another dialog's tree.
|
|
21
|
+
*/
|
|
22
|
+
nested: boolean;
|
|
23
|
+
/**
|
|
24
|
+
* Whether a dialog nested inside this one is open — the cue to scale or dim
|
|
25
|
+
* this popup, which the web version drives with a CSS variable.
|
|
26
|
+
*/
|
|
27
|
+
nestedDialogOpen: boolean;
|
|
19
28
|
}
|
|
20
29
|
export interface DialogPopupProps extends ZestUIComponentProps<typeof View, DialogPopupState> {
|
|
21
30
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DialogPopup.d.ts","sourceRoot":"","sources":["../../../src/dialog/popup/DialogPopup.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAEpC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AAG5E;;;GAGG;AACH,wBAAgB,WAAW,CAAC,cAAc,EAAE,WAAW,CAAC,KAAK,8FAY5D;AAED,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,IAAI,EAAE,OAAO,CAAC;IACd;;;OAGG;IACH,gBAAgB,EAAE,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"DialogPopup.d.ts","sourceRoot":"","sources":["../../../src/dialog/popup/DialogPopup.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAEpC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AAG5E;;;GAGG;AACH,wBAAgB,WAAW,CAAC,cAAc,EAAE,WAAW,CAAC,KAAK,8FAY5D;AAED,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,IAAI,EAAE,OAAO,CAAC;IACd;;;OAGG;IACH,gBAAgB,EAAE,gBAAgB,CAAC;IACnC;;OAEG;IACH,MAAM,EAAE,OAAO,CAAC;IAChB;;;OAGG;IACH,gBAAgB,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,gBAAiB,SAAQ,oBAAoB,CAAC,OAAO,IAAI,EAAE,gBAAgB,CAAC;CAAG;AAEhG,yBAAiB,WAAW,CAAC;IAC3B,KAAY,KAAK,GAAG,gBAAgB,CAAC;IACrC,KAAY,KAAK,GAAG,gBAAgB,CAAC;CACtC"}
|
|
@@ -11,8 +11,8 @@ const useDialogPopupProps_1 = require("./useDialogPopupProps");
|
|
|
11
11
|
*/
|
|
12
12
|
function DialogPopup(componentProps) {
|
|
13
13
|
const { render, className, style, ref, ...elementProps } = componentProps;
|
|
14
|
-
const { open, transitionStatus, props } = (0, useDialogPopupProps_1.useDialogPopupProps)();
|
|
15
|
-
const state = { open, transitionStatus };
|
|
14
|
+
const { open, transitionStatus, nested, nestedDialogOpen, props } = (0, useDialogPopupProps_1.useDialogPopupProps)();
|
|
15
|
+
const state = { open, transitionStatus, nested, nestedDialogOpen };
|
|
16
16
|
return (0, useRenderElement_1.useRenderElement)(react_native_1.View, componentProps, {
|
|
17
17
|
state,
|
|
18
18
|
ref,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DialogPopup.js","sourceRoot":"","sources":["../../../src/dialog/popup/DialogPopup.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;AAWb,kCAYC;AAtBD,+CAAoC;AACpC,wEAAqE;AAGrE,+DAA4D;AAE5D;;;GAGG;AACH,SAAgB,WAAW,CAAC,cAAiC;IAC3D,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,YAAY,EAAE,GAAG,cAAc,CAAC;IAE1E,MAAM,EAAE,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,GAAG,IAAA,yCAAmB,GAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"DialogPopup.js","sourceRoot":"","sources":["../../../src/dialog/popup/DialogPopup.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;AAWb,kCAYC;AAtBD,+CAAoC;AACpC,wEAAqE;AAGrE,+DAA4D;AAE5D;;;GAGG;AACH,SAAgB,WAAW,CAAC,cAAiC;IAC3D,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,YAAY,EAAE,GAAG,cAAc,CAAC;IAE1E,MAAM,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,EAAE,gBAAgB,EAAE,KAAK,EAAE,GAAG,IAAA,yCAAmB,GAAE,CAAC;IAE1F,MAAM,KAAK,GAAqB,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC;IAErF,OAAO,IAAA,mCAAgB,EAAC,mBAAI,EAAE,cAAc,EAAE;QAC5C,KAAK;QACL,GAAG;QACH,KAAK,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC;KAC7B,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -5,6 +5,8 @@
|
|
|
5
5
|
export declare function useDialogPopupProps(): {
|
|
6
6
|
store: import("../store/DialogStore").DialogStore<any>;
|
|
7
7
|
open: boolean;
|
|
8
|
+
nested: boolean;
|
|
9
|
+
nestedDialogOpen: boolean;
|
|
8
10
|
transitionStatus: import("../../internals/useTransitionStatus").TransitionStatus;
|
|
9
11
|
props: {
|
|
10
12
|
role: "dialog" | "alertdialog";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useDialogPopupProps.d.ts","sourceRoot":"","sources":["../../../src/dialog/popup/useDialogPopupProps.ts"],"names":[],"mappings":"AAKA;;;GAGG;AACH,wBAAgB,mBAAmB
|
|
1
|
+
{"version":3,"file":"useDialogPopupProps.d.ts","sourceRoot":"","sources":["../../../src/dialog/popup/useDialogPopupProps.ts"],"names":[],"mappings":"AAKA;;;GAGG;AACH,wBAAgB,mBAAmB;;;;;;;;;;;;;;;EA8BlC"}
|
|
@@ -17,9 +17,13 @@ function useDialogPopupProps() {
|
|
|
17
17
|
const titleElementId = store.useState('titleElementId');
|
|
18
18
|
const descriptionElementId = store.useState('descriptionElementId');
|
|
19
19
|
const role = store.useState('role');
|
|
20
|
+
const nested = store.useState('nested');
|
|
21
|
+
const nestedDialogOpen = store.useState('nestedDialogOpen');
|
|
20
22
|
return {
|
|
21
23
|
store,
|
|
22
24
|
open,
|
|
25
|
+
nested,
|
|
26
|
+
nestedDialogOpen,
|
|
23
27
|
transitionStatus: transitionContext === null || transitionContext === void 0 ? void 0 : transitionContext.transitionStatus,
|
|
24
28
|
props: {
|
|
25
29
|
role,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useDialogPopupProps.js","sourceRoot":"","sources":["../../../src/dialog/popup/useDialogPopupProps.ts"],"names":[],"mappings":";AAAA,YAAY,CAAC;;AASb,
|
|
1
|
+
{"version":3,"file":"useDialogPopupProps.js","sourceRoot":"","sources":["../../../src/dialog/popup/useDialogPopupProps.ts"],"names":[],"mappings":";AAAA,YAAY,CAAC;;AASb,kDA8BC;AAtCD,iEAAiE;AACjE,uEAAuE;AACvE,6EAA6E;AAE7E;;;GAGG;AACH,SAAgB,mBAAmB;IACjC,IAAA,4CAAsB,GAAE,CAAC;IACzB,MAAM,KAAK,GAAG,IAAA,wCAAoB,GAAE,CAAC;IACrC,MAAM,iBAAiB,GAAG,IAAA,oDAA0B,GAAE,CAAC;IAEvD,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACpC,MAAM,cAAc,GAAG,KAAK,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IACxD,MAAM,oBAAoB,GAAG,KAAK,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC;IACpE,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACpC,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACxC,MAAM,gBAAgB,GAAG,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAE5D,OAAO;QACL,KAAK;QACL,IAAI;QACJ,MAAM;QACN,gBAAgB;QAChB,gBAAgB,EAAE,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,gBAAgB;QACrD,KAAK,EAAE;YACL,IAAI;YACJ,wBAAwB,EAAE,IAAI;YAC9B,uBAAuB,EAAE,cAAc;YACvC,YAAY,EAAE,IAAI;YAClB,iBAAiB,EAAE,cAAc;YACjC,kBAAkB,EAAE,oBAAoB;YACxC,oEAAoE;YACpE,wCAAwC;YACxC,yBAAyB,EAAE,GAAG,EAAE,CAAC,IAAI;SACtC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
export interface DialogNestingContext {
|
|
3
|
+
/**
|
|
4
|
+
* Called by a nested root as it opens and closes, so the parent can keep a
|
|
5
|
+
* count of how many of its descendants are open.
|
|
6
|
+
*/
|
|
7
|
+
onNestedOpenChange: (open: boolean) => void;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Lets a dialog know it has a dialog above it, and lets a parent know one of its
|
|
11
|
+
* descendants is open.
|
|
12
|
+
*
|
|
13
|
+
* On the web Base UI counts nested dialogs so the one underneath can be scaled
|
|
14
|
+
* back or dimmed. React Native has no CSS to express that, so the count reaches
|
|
15
|
+
* the consumer the way everything else does: as `nested` and `nestedDialogOpen`
|
|
16
|
+
* on the popup and backdrop state.
|
|
17
|
+
*/
|
|
18
|
+
export declare const DialogNestingContext: React.Context<DialogNestingContext | undefined>;
|
|
19
|
+
export declare function useDialogNestingContext(): DialogNestingContext | undefined;
|
|
20
|
+
//# sourceMappingURL=DialogNestingContext.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DialogNestingContext.d.ts","sourceRoot":"","sources":["../../../src/dialog/root/DialogNestingContext.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,MAAM,WAAW,oBAAoB;IACnC;;;OAGG;IACH,kBAAkB,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CAC7C;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,oBAAoB,iDAEhC,CAAC;AAEF,wBAAgB,uBAAuB,qCAEtC"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
'use client';
|
|
3
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
4
|
+
if (k2 === undefined) k2 = k;
|
|
5
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
6
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
7
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
8
|
+
}
|
|
9
|
+
Object.defineProperty(o, k2, desc);
|
|
10
|
+
}) : (function(o, m, k, k2) {
|
|
11
|
+
if (k2 === undefined) k2 = k;
|
|
12
|
+
o[k2] = m[k];
|
|
13
|
+
}));
|
|
14
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
15
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
16
|
+
}) : function(o, v) {
|
|
17
|
+
o["default"] = v;
|
|
18
|
+
});
|
|
19
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
20
|
+
var ownKeys = function(o) {
|
|
21
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
22
|
+
var ar = [];
|
|
23
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
24
|
+
return ar;
|
|
25
|
+
};
|
|
26
|
+
return ownKeys(o);
|
|
27
|
+
};
|
|
28
|
+
return function (mod) {
|
|
29
|
+
if (mod && mod.__esModule) return mod;
|
|
30
|
+
var result = {};
|
|
31
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
32
|
+
__setModuleDefault(result, mod);
|
|
33
|
+
return result;
|
|
34
|
+
};
|
|
35
|
+
})();
|
|
36
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
37
|
+
exports.DialogNestingContext = void 0;
|
|
38
|
+
exports.useDialogNestingContext = useDialogNestingContext;
|
|
39
|
+
const React = __importStar(require("react"));
|
|
40
|
+
/**
|
|
41
|
+
* Lets a dialog know it has a dialog above it, and lets a parent know one of its
|
|
42
|
+
* descendants is open.
|
|
43
|
+
*
|
|
44
|
+
* On the web Base UI counts nested dialogs so the one underneath can be scaled
|
|
45
|
+
* back or dimmed. React Native has no CSS to express that, so the count reaches
|
|
46
|
+
* the consumer the way everything else does: as `nested` and `nestedDialogOpen`
|
|
47
|
+
* on the popup and backdrop state.
|
|
48
|
+
*/
|
|
49
|
+
exports.DialogNestingContext = React.createContext(undefined);
|
|
50
|
+
function useDialogNestingContext() {
|
|
51
|
+
return React.useContext(exports.DialogNestingContext);
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=DialogNestingContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DialogNestingContext.js","sourceRoot":"","sources":["../../../src/dialog/root/DialogNestingContext.ts"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwBb,0DAEC;AAzBD,6CAA+B;AAU/B;;;;;;;;GAQG;AACU,QAAA,oBAAoB,GAAG,KAAK,CAAC,aAAa,CACrD,SAAS,CACV,CAAC;AAEF,SAAgB,uBAAuB;IACrC,OAAO,KAAK,CAAC,UAAU,CAAC,4BAAoB,CAAC,CAAC;AAChD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useRenderDialogRoot.d.ts","sourceRoot":"","sources":["../../../src/dialog/root/useRenderDialogRoot.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"useRenderDialogRoot.d.ts","sourceRoot":"","sources":["../../../src/dialog/root/useRenderDialogRoot.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAM/B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAKpD,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,cAAc,CAAC;AAEvD;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,GAAG,OAAO,EACnD,KAAK,EAAE,eAAe,CAAC,OAAO,CAAC,EAC/B,IAAI,GAAE,cAAyB,qBAuFhC"}
|
|
@@ -40,7 +40,9 @@ const React = __importStar(require("react"));
|
|
|
40
40
|
const useRefWithInit_1 = require("../../hooks/useRefWithInit");
|
|
41
41
|
const useTransitionStatus_1 = require("../../internals/useTransitionStatus");
|
|
42
42
|
const usePopupRootHandle_1 = require("../../utils/popups/usePopupRootHandle");
|
|
43
|
+
const useStableCallback_1 = require("../../hooks/useStableCallback");
|
|
43
44
|
const DialogStore_1 = require("../store/DialogStore");
|
|
45
|
+
const DialogNestingContext_1 = require("./DialogNestingContext");
|
|
44
46
|
const DialogRootContext_1 = require("./DialogRootContext");
|
|
45
47
|
const DialogTransitionContext_1 = require("./DialogTransitionContext");
|
|
46
48
|
/**
|
|
@@ -54,6 +56,8 @@ function useRenderDialogRoot(props, mode = 'dialog') {
|
|
|
54
56
|
const isAlertDialog = mode === 'alert-dialog';
|
|
55
57
|
const disablePointerDismissal = isAlertDialog || disablePointerDismissalProp;
|
|
56
58
|
const role = isAlertDialog ? 'alertdialog' : 'dialog';
|
|
59
|
+
const parent = (0, DialogNestingContext_1.useDialogNestingContext)();
|
|
60
|
+
const nested = parent !== undefined;
|
|
57
61
|
const store = (0, useRefWithInit_1.useRefWithInit)(() => new DialogStore_1.DialogStore({
|
|
58
62
|
open: defaultOpen,
|
|
59
63
|
openProp: open,
|
|
@@ -61,16 +65,36 @@ function useRenderDialogRoot(props, mode = 'dialog') {
|
|
|
61
65
|
role,
|
|
62
66
|
triggerId: defaultTriggerId,
|
|
63
67
|
triggerIdProp: triggerId,
|
|
68
|
+
nested,
|
|
64
69
|
})).current;
|
|
65
70
|
store.useControlledProp('openProp', open);
|
|
66
71
|
store.useControlledProp('triggerIdProp', triggerId);
|
|
67
72
|
store.useContextCallback('onOpenChange', onOpenChange);
|
|
68
|
-
store.useSyncedValues({ disablePointerDismissal, role });
|
|
73
|
+
store.useSyncedValues({ disablePointerDismissal, role, nested });
|
|
69
74
|
(0, usePopupRootHandle_1.usePopupRootHandle)({ store, handle, actionsRef });
|
|
70
75
|
const resolvedOpen = store.useState('open');
|
|
71
76
|
const { transitionStatus } = (0, useTransitionStatus_1.useTransitionStatus)(resolvedOpen, false, true);
|
|
77
|
+
// Tell the dialog above this one whether it now has an open descendant. The
|
|
78
|
+
// cleanup is what keeps the parent's count right when this root unmounts
|
|
79
|
+
// while still open.
|
|
80
|
+
React.useEffect(() => {
|
|
81
|
+
if (parent === undefined || !resolvedOpen) {
|
|
82
|
+
return undefined;
|
|
83
|
+
}
|
|
84
|
+
parent.onNestedOpenChange(true);
|
|
85
|
+
return () => {
|
|
86
|
+
parent.onNestedOpenChange(false);
|
|
87
|
+
};
|
|
88
|
+
}, [parent, resolvedOpen]);
|
|
89
|
+
const onNestedOpenChange = (0, useStableCallback_1.useStableCallback)((open) => {
|
|
90
|
+
store.setNestedOpen(open);
|
|
91
|
+
// A dialog two levels down is still nested inside this one's parent, so the
|
|
92
|
+
// count propagates all the way up.
|
|
93
|
+
parent === null || parent === void 0 ? void 0 : parent.onNestedOpenChange(open);
|
|
94
|
+
});
|
|
72
95
|
const payload = store.useState('payload');
|
|
73
96
|
const transitionContextValue = React.useMemo(() => ({ transitionStatus }), [transitionStatus]);
|
|
74
|
-
|
|
97
|
+
const nestingContextValue = React.useMemo(() => ({ onNestedOpenChange }), [onNestedOpenChange]);
|
|
98
|
+
return ((0, jsx_runtime_1.jsx)(DialogRootContext_1.DialogRootContext.Provider, { value: store, children: (0, jsx_runtime_1.jsx)(DialogTransitionContext_1.DialogTransitionContext.Provider, { value: transitionContextValue, children: (0, jsx_runtime_1.jsx)(DialogNestingContext_1.DialogNestingContext.Provider, { value: nestingContextValue, children: typeof children === 'function' ? children(payload) : children }) }) }));
|
|
75
99
|
}
|
|
76
100
|
//# sourceMappingURL=useRenderDialogRoot.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useRenderDialogRoot.js","sourceRoot":"","sources":["../../../src/dialog/root/useRenderDialogRoot.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"useRenderDialogRoot.js","sourceRoot":"","sources":["../../../src/dialog/root/useRenderDialogRoot.tsx"],"names":[],"mappings":"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"}
|
|
@@ -33,6 +33,15 @@ export type State = {
|
|
|
33
33
|
* The controlled `triggerId` prop, when provided.
|
|
34
34
|
*/
|
|
35
35
|
triggerIdProp: string | null | undefined;
|
|
36
|
+
/**
|
|
37
|
+
* Whether this dialog is itself rendered inside another dialog's tree.
|
|
38
|
+
*/
|
|
39
|
+
nested: boolean;
|
|
40
|
+
/**
|
|
41
|
+
* How many dialogs nested inside this one are currently open. A count rather
|
|
42
|
+
* than a flag because siblings can overlap while one animates out.
|
|
43
|
+
*/
|
|
44
|
+
nestedOpenCount: number;
|
|
36
45
|
};
|
|
37
46
|
type Context<Reason extends string> = {
|
|
38
47
|
onOpenChange: ((open: boolean, eventDetails: ZestChangeEventDetails<Reason>) => void) | undefined;
|
|
@@ -50,6 +59,8 @@ declare const selectors: {
|
|
|
50
59
|
descriptionElementId: (state: State) => string | undefined;
|
|
51
60
|
disablePointerDismissal: (state: State) => boolean;
|
|
52
61
|
role: (state: State) => "dialog" | "alertdialog";
|
|
62
|
+
nested: (state: State) => boolean;
|
|
63
|
+
nestedDialogOpen: (state: State) => boolean;
|
|
53
64
|
};
|
|
54
65
|
/**
|
|
55
66
|
* React Native adaptation of Base UI's DialogStore.
|
|
@@ -60,12 +71,18 @@ declare const selectors: {
|
|
|
60
71
|
* `DialogRootContext` erases it to `any` (the same trick the group components
|
|
61
72
|
* use) so the parts stay non-generic.
|
|
62
73
|
*
|
|
63
|
-
* TODO(later):
|
|
64
|
-
* transitions (`mounted`/`transitionStatus`), handles/payloads.
|
|
74
|
+
* TODO(later): openMethod interaction typing.
|
|
65
75
|
*/
|
|
66
76
|
export declare class DialogStore<Reason extends string = DialogRootChangeEventReason> extends ReactStore<Readonly<State>, Context<Reason>, typeof selectors> {
|
|
67
77
|
constructor(initialState?: Partial<State>);
|
|
68
78
|
setOpen: (nextOpen: boolean, eventDetails: ZestChangeEventDetails<Reason>) => void;
|
|
79
|
+
/**
|
|
80
|
+
* Records that a dialog nested inside this one opened or closed.
|
|
81
|
+
*
|
|
82
|
+
* Increments rather than assigns, so two descendants closing out of order
|
|
83
|
+
* cannot leave the count stuck above zero.
|
|
84
|
+
*/
|
|
85
|
+
setNestedOpen: (open: boolean) => void;
|
|
69
86
|
}
|
|
70
87
|
export {};
|
|
71
88
|
//# sourceMappingURL=DialogStore.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DialogStore.d.ts","sourceRoot":"","sources":["../../../src/dialog/store/DialogStore.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AACnF,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AACrE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AAEtE,MAAM,MAAM,KAAK,GAAG;IAClB;;;OAGG;IACH,IAAI,EAAE,OAAO,CAAC;IACd;;;OAGG;IACH,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B,cAAc,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,oBAAoB,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,uBAAuB,EAAE,OAAO,CAAC;IACjC;;OAEG;IACH,IAAI,EAAE,QAAQ,GAAG,aAAa,CAAC;IAC/B;;;OAGG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB;;OAEG;IACH,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB;;OAEG;IACH,aAAa,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"DialogStore.d.ts","sourceRoot":"","sources":["../../../src/dialog/store/DialogStore.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AACnF,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AACrE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AAEtE,MAAM,MAAM,KAAK,GAAG;IAClB;;;OAGG;IACH,IAAI,EAAE,OAAO,CAAC;IACd;;;OAGG;IACH,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B,cAAc,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,oBAAoB,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,uBAAuB,EAAE,OAAO,CAAC;IACjC;;OAEG;IACH,IAAI,EAAE,QAAQ,GAAG,aAAa,CAAC;IAC/B;;;OAGG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB;;OAEG;IACH,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB;;OAEG;IACH,aAAa,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACzC;;OAEG;IACH,MAAM,EAAE,OAAO,CAAC;IAChB;;;OAGG;IACH,eAAe,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,KAAK,OAAO,CAAC,MAAM,SAAS,MAAM,IAAI;IACpC,YAAY,EACR,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,sBAAsB,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,GACvE,SAAS,CAAC;IACd;;;OAGG;IACH,YAAY,EAAE,eAAe,CAAC;CAC/B,CAAC;AAEF,QAAA,MAAM,SAAS;;;;;;;;;;CAUd,CAAC;AAEF;;;;;;;;;;GAUG;AACH,qBAAa,WAAW,CAAC,MAAM,SAAS,MAAM,GAAG,2BAA2B,CAAE,SAAQ,UAAU,CAC9F,QAAQ,CAAC,KAAK,CAAC,EACf,OAAO,CAAC,MAAM,CAAC,EACf,OAAO,SAAS,CACjB;gBACa,YAAY,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC;IAqBlC,OAAO,GAAI,UAAU,OAAO,EAAE,cAAc,sBAAsB,CAAC,MAAM,CAAC,UAY/E;IAEF;;;;;OAKG;IACI,aAAa,GAAI,MAAM,OAAO,UAEnC;CACH"}
|
|
@@ -12,6 +12,8 @@ const selectors = {
|
|
|
12
12
|
descriptionElementId: (0, createSelector_1.createSelector)((state) => state.descriptionElementId),
|
|
13
13
|
disablePointerDismissal: (0, createSelector_1.createSelector)((state) => state.disablePointerDismissal),
|
|
14
14
|
role: (0, createSelector_1.createSelector)((state) => state.role),
|
|
15
|
+
nested: (0, createSelector_1.createSelector)((state) => state.nested),
|
|
16
|
+
nestedDialogOpen: (0, createSelector_1.createSelector)((state) => state.nestedOpenCount > 0),
|
|
15
17
|
};
|
|
16
18
|
/**
|
|
17
19
|
* React Native adaptation of Base UI's DialogStore.
|
|
@@ -22,8 +24,7 @@ const selectors = {
|
|
|
22
24
|
* `DialogRootContext` erases it to `any` (the same trick the group components
|
|
23
25
|
* use) so the parts stay non-generic.
|
|
24
26
|
*
|
|
25
|
-
* TODO(later):
|
|
26
|
-
* transitions (`mounted`/`transitionStatus`), handles/payloads.
|
|
27
|
+
* TODO(later): openMethod interaction typing.
|
|
27
28
|
*/
|
|
28
29
|
class DialogStore extends ReactStore_1.ReactStore {
|
|
29
30
|
constructor(initialState) {
|
|
@@ -37,6 +38,8 @@ class DialogStore extends ReactStore_1.ReactStore {
|
|
|
37
38
|
payload: undefined,
|
|
38
39
|
triggerId: null,
|
|
39
40
|
triggerIdProp: undefined,
|
|
41
|
+
nested: false,
|
|
42
|
+
nestedOpenCount: 0,
|
|
40
43
|
...initialState,
|
|
41
44
|
}, { onOpenChange: undefined, triggerNodes: new PopupTriggerMap_1.PopupTriggerMap() }, selectors);
|
|
42
45
|
this.setOpen = (nextOpen, eventDetails) => {
|
|
@@ -50,6 +53,15 @@ class DialogStore extends ReactStore_1.ReactStore {
|
|
|
50
53
|
}
|
|
51
54
|
this.set('open', nextOpen);
|
|
52
55
|
};
|
|
56
|
+
/**
|
|
57
|
+
* Records that a dialog nested inside this one opened or closed.
|
|
58
|
+
*
|
|
59
|
+
* Increments rather than assigns, so two descendants closing out of order
|
|
60
|
+
* cannot leave the count stuck above zero.
|
|
61
|
+
*/
|
|
62
|
+
this.setNestedOpen = (open) => {
|
|
63
|
+
this.set('nestedOpenCount', Math.max(0, this.state.nestedOpenCount + (open ? 1 : -1)));
|
|
64
|
+
};
|
|
53
65
|
}
|
|
54
66
|
}
|
|
55
67
|
exports.DialogStore = DialogStore;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DialogStore.js","sourceRoot":"","sources":["../../../src/dialog/store/DialogStore.ts"],"names":[],"mappings":";;;AAAA,+DAA4D;AAC5D,uDAAoD;AAEpD,wEAAqE;
|
|
1
|
+
{"version":3,"file":"DialogStore.js","sourceRoot":"","sources":["../../../src/dialog/store/DialogStore.ts"],"names":[],"mappings":";;;AAAA,+DAA4D;AAC5D,uDAAoD;AAEpD,wEAAqE;AAwDrE,MAAM,SAAS,GAAG;IAChB,IAAI,EAAE,IAAA,+BAAc,EAAC,CAAC,KAAY,EAAE,EAAE,WAAC,OAAA,MAAA,KAAK,CAAC,QAAQ,mCAAI,KAAK,CAAC,IAAI,CAAA,EAAA,CAAC;IACpE,cAAc,EAAE,IAAA,+BAAc,EAAC,CAAC,KAAY,EAAE,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC;IACtE,OAAO,EAAE,IAAA,+BAAc,EAAC,CAAC,KAAY,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC;IACxD,SAAS,EAAE,IAAA,+BAAc,EAAC,CAAC,KAAY,EAAE,EAAE,WAAC,OAAA,MAAA,KAAK,CAAC,aAAa,mCAAI,KAAK,CAAC,SAAS,CAAA,EAAA,CAAC;IACnF,oBAAoB,EAAE,IAAA,+BAAc,EAAC,CAAC,KAAY,EAAE,EAAE,CAAC,KAAK,CAAC,oBAAoB,CAAC;IAClF,uBAAuB,EAAE,IAAA,+BAAc,EAAC,CAAC,KAAY,EAAE,EAAE,CAAC,KAAK,CAAC,uBAAuB,CAAC;IACxF,IAAI,EAAE,IAAA,+BAAc,EAAC,CAAC,KAAY,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC;IAClD,MAAM,EAAE,IAAA,+BAAc,EAAC,CAAC,KAAY,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC;IACtD,gBAAgB,EAAE,IAAA,+BAAc,EAAC,CAAC,KAAY,EAAE,EAAE,CAAC,KAAK,CAAC,eAAe,GAAG,CAAC,CAAC;CAC9E,CAAC;AAEF;;;;;;;;;;GAUG;AACH,MAAa,WAAiE,SAAQ,uBAIrF;IACC,YAAY,YAA6B;QACvC,KAAK,CACH;YACE,IAAI,EAAE,KAAK;YACX,QAAQ,EAAE,SAAS;YACnB,cAAc,EAAE,SAAS;YACzB,oBAAoB,EAAE,SAAS;YAC/B,uBAAuB,EAAE,KAAK;YAC9B,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,SAAS;YAClB,SAAS,EAAE,IAAI;YACf,aAAa,EAAE,SAAS;YACxB,MAAM,EAAE,KAAK;YACb,eAAe,EAAE,CAAC;YAClB,GAAG,YAAY;SAChB,EACD,EAAE,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,IAAI,iCAAe,EAAE,EAAE,EAChE,SAAS,CACV,CAAC;QAGG,YAAO,GAAG,CAAC,QAAiB,EAAE,YAA4C,EAAE,EAAE;;YACnF,IAAI,QAAQ,KAAK,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;gBACrC,OAAO;YACT,CAAC;YAED,MAAA,MAAA,IAAI,CAAC,OAAO,EAAC,YAAY,mDAAG,QAAQ,EAAE,YAAY,CAAC,CAAC;YAEpD,IAAI,YAAY,CAAC,UAAU,EAAE,CAAC;gBAC5B,OAAO;YACT,CAAC;YAED,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAC7B,CAAC,CAAC;QAEF;;;;;WAKG;QACI,kBAAa,GAAG,CAAC,IAAa,EAAE,EAAE;YACvC,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzF,CAAC,CAAC;IAxBF,CAAC;CAyBF;AAjDD,kCAiDC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { DrawerRoot as Root } from './root/DrawerRoot';
|
|
2
|
-
export { createDrawerHandle as createHandle } from './handle';
|
|
2
|
+
export { createDrawerHandle as createHandle, type DrawerHandle as Handle } from './handle';
|
|
3
3
|
export { DrawerPopup as Popup } from './popup/DrawerPopup';
|
|
4
4
|
export { DrawerSwipeArea as SwipeArea } from './swipe-area/DrawerSwipeArea';
|
|
5
5
|
export { DialogTrigger as Trigger } from '../dialog/trigger/DialogTrigger';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.parts.d.ts","sourceRoot":"","sources":["../../src/drawer/index.parts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,IAAI,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,kBAAkB,IAAI,YAAY,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"index.parts.d.ts","sourceRoot":"","sources":["../../src/drawer/index.parts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,IAAI,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,kBAAkB,IAAI,YAAY,EAAE,KAAK,YAAY,IAAI,MAAM,EAAE,MAAM,UAAU,CAAC;AAC3F,OAAO,EAAE,WAAW,IAAI,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,eAAe,IAAI,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAI5E,OAAO,EAAE,aAAa,IAAI,OAAO,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,EAAE,YAAY,IAAI,MAAM,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,cAAc,IAAI,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAC/E,OAAO,EAAE,cAAc,IAAI,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAC/E,OAAO,EAAE,WAAW,IAAI,KAAK,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,iBAAiB,IAAI,WAAW,EAAE,MAAM,yCAAyC,CAAC;AAC3F,OAAO,EAAE,WAAW,IAAI,KAAK,EAAE,MAAM,6BAA6B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.parts.js","sourceRoot":"","sources":["../../src/drawer/index.parts.ts"],"names":[],"mappings":";;;AAAA,gDAAuD;AAA9C,kGAAA,UAAU,OAAQ;AAC3B,
|
|
1
|
+
{"version":3,"file":"index.parts.js","sourceRoot":"","sources":["../../src/drawer/index.parts.ts"],"names":[],"mappings":";;;AAAA,gDAAuD;AAA9C,kGAAA,UAAU,OAAQ;AAC3B,mCAA2F;AAAlF,sGAAA,kBAAkB,OAAgB;AAC3C,mDAA2D;AAAlD,oGAAA,WAAW,OAAS;AAC7B,gEAA4E;AAAnE,4GAAA,eAAe,OAAa;AAErC,gFAAgF;AAChF,mEAAmE;AACnE,iEAA2E;AAAlE,wGAAA,aAAa,OAAW;AACjC,8DAAuE;AAA9D,sGAAA,YAAY,OAAU;AAC/B,oEAA+E;AAAtE,0GAAA,cAAc,OAAY;AACnC,oEAA+E;AAAtE,0GAAA,cAAc,OAAY;AACnC,2DAAmE;AAA1D,oGAAA,WAAW,OAAS;AAC7B,6EAA2F;AAAlF,gHAAA,iBAAiB,OAAe;AACzC,2DAAmE;AAA1D,oGAAA,WAAW,OAAS"}
|
|
@@ -25,6 +25,15 @@ export interface DrawerPopupState {
|
|
|
25
25
|
* to `undefined` after one frame), `'ending'` once it is closing.
|
|
26
26
|
*/
|
|
27
27
|
transitionStatus: TransitionStatus;
|
|
28
|
+
/**
|
|
29
|
+
* Whether this drawer is rendered inside another dialog's tree.
|
|
30
|
+
*/
|
|
31
|
+
nested: boolean;
|
|
32
|
+
/**
|
|
33
|
+
* Whether a dialog nested inside this one is open — the cue to scale or dim
|
|
34
|
+
* this popup, which the web version drives with a CSS variable.
|
|
35
|
+
*/
|
|
36
|
+
nestedDialogOpen: boolean;
|
|
28
37
|
/**
|
|
29
38
|
* Whether a swipe is currently in progress.
|
|
30
39
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DrawerPopup.d.ts","sourceRoot":"","sources":["../../../src/drawer/popup/DrawerPopup.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,IAAI,EAA0B,MAAM,cAAc,CAAC;AAK5D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AAG5E,OAAO,EAAwB,KAAK,eAAe,EAAE,KAAK,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAoBlH;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CAAC,cAAc,EAAE,WAAW,CAAC,KAAK,
|
|
1
|
+
{"version":3,"file":"DrawerPopup.d.ts","sourceRoot":"","sources":["../../../src/drawer/popup/DrawerPopup.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,IAAI,EAA0B,MAAM,cAAc,CAAC;AAK5D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AAG5E,OAAO,EAAwB,KAAK,eAAe,EAAE,KAAK,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAoBlH;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CAAC,cAAc,EAAE,WAAW,CAAC,KAAK,qBAuI5D;AAgBD,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,IAAI,EAAE,OAAO,CAAC;IACd;;;OAGG;IACH,gBAAgB,EAAE,gBAAgB,CAAC;IACnC;;OAEG;IACH,MAAM,EAAE,OAAO,CAAC;IAChB;;;OAGG;IACH,gBAAgB,EAAE,OAAO,CAAC;IAC1B;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB;;;;OAIG;IACH,aAAa,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,cAAc,EAAE,oBAAoB,CAAC;IACrC;;OAEG;IACH,SAAS,EAAE,eAAe,GAAG,IAAI,CAAC;IAClC;;;;OAIG;IACH,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC;AAED,MAAM,WAAW,gBAAiB,SAAQ,oBAAoB,CAAC,OAAO,IAAI,EAAE,gBAAgB,CAAC;IAC3F;;;;;OAKG;IACH,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACrC;AAED,yBAAiB,WAAW,CAAC;IAC3B,KAAY,KAAK,GAAG,gBAAgB,CAAC;IACrC,KAAY,KAAK,GAAG,gBAAgB,CAAC;CACtC"}
|
|
@@ -73,7 +73,7 @@ function DrawerPopup(componentProps) {
|
|
|
73
73
|
const { testID } = elementProps;
|
|
74
74
|
const { swipeDirection, onPopupHeightChange } = (0, DrawerRootContext_1.useDrawerRootContext)();
|
|
75
75
|
const { activeSnapPoint, activeSnapPointOffset, hasSnapPoints, resolvedSnapPoints, setActiveSnapPoint, snapToSequentialPoints, } = (0, useDrawerSnapPoints_1.useDrawerSnapPoints)();
|
|
76
|
-
const { store, open, transitionStatus, props } = (0, useDialogPopupProps_1.useDialogPopupProps)();
|
|
76
|
+
const { store, open, transitionStatus, nested, nestedDialogOpen, props } = (0, useDialogPopupProps_1.useDialogPopupProps)();
|
|
77
77
|
const [swiping, setSwiping] = React.useState(false);
|
|
78
78
|
const [swipeMovement, setSwipeMovement] = React.useState(0);
|
|
79
79
|
// The gesture callbacks read the movement they just published, which React has
|
|
@@ -148,6 +148,8 @@ function DrawerPopup(componentProps) {
|
|
|
148
148
|
const state = {
|
|
149
149
|
open,
|
|
150
150
|
transitionStatus,
|
|
151
|
+
nested,
|
|
152
|
+
nestedDialogOpen,
|
|
151
153
|
swiping,
|
|
152
154
|
swipeMovement,
|
|
153
155
|
swipeDirection,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DrawerPopup.js","sourceRoot":"","sources":["../../../src/drawer/popup/DrawerPopup.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0Cb,
|
|
1
|
+
{"version":3,"file":"DrawerPopup.js","sourceRoot":"","sources":["../../../src/drawer/popup/DrawerPopup.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/filter/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,GAC1B,MAAM,aAAa,CAAC"}
|