@cube-dev/ui-kit 0.189.0 → 0.190.1
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/dist/CHANGELOG.md +20 -0
- package/dist/_internal/hooks/use-debounced-value.js +1 -1
- package/dist/_internal/hooks/use-deprecation-warning.js +1 -1
- package/dist/_internal/hooks/use-event.js +1 -1
- package/dist/_internal/hooks/use-is-first-render.js +1 -1
- package/dist/_internal/hooks/use-sync-ref.js +1 -1
- package/dist/_internal/hooks/use-timer/timer.js +1 -1
- package/dist/_internal/hooks/use-timer/use-timer.js +1 -1
- package/dist/_internal/hooks/use-warn.js +1 -1
- package/dist/components/Block.js +1 -1
- package/dist/components/CollectionItem.js +1 -1
- package/dist/components/GlobalStyles.js +1 -1
- package/dist/components/GridProvider.js +1 -1
- package/dist/components/HiddenInput.js +1 -1
- package/dist/components/Root.js +1 -1
- package/dist/components/actions/Action/Action.js +1 -1
- package/dist/components/actions/Banner/Banner.js +1 -1
- package/dist/components/actions/Button/Button.js +5 -4
- package/dist/components/actions/Button/Button.js.map +1 -1
- package/dist/components/actions/ButtonGroup/ButtonGroup.js +1 -1
- package/dist/components/actions/ButtonSplit/ButtonSplit.js +1 -1
- package/dist/components/actions/ButtonSplit/context.js +1 -1
- package/dist/components/actions/CommandMenu/CommandMenu.js +1 -1
- package/dist/components/actions/CommandMenu/styled.js +1 -1
- package/dist/components/actions/ItemAction/ItemAction.js +83 -79
- package/dist/components/actions/ItemAction/ItemAction.js.map +1 -1
- package/dist/components/actions/ItemActionContext.js +1 -1
- package/dist/components/actions/ItemActionsWrapper.js +1 -1
- package/dist/components/actions/ItemButton/ItemButton.js +1 -1
- package/dist/components/actions/Link/Link.js +1 -1
- package/dist/components/actions/Menu/Menu.js +1 -1
- package/dist/components/actions/Menu/MenuItem.js +1 -1
- package/dist/components/actions/Menu/MenuSection.js +1 -1
- package/dist/components/actions/Menu/MenuTrigger.js +1 -1
- package/dist/components/actions/Menu/SubMenuTrigger.js +1 -1
- package/dist/components/actions/Menu/SubmenuTriggerContext.js +1 -1
- package/dist/components/actions/Menu/context.js +1 -1
- package/dist/components/actions/Menu/styled.js +1 -1
- package/dist/components/actions/actions-run.js +1 -1
- package/dist/components/actions/index.js +1 -1
- package/dist/components/actions/use-action.js +3 -3
- package/dist/components/actions/use-action.js.map +1 -1
- package/dist/components/actions/use-anchored-menu.js +1 -1
- package/dist/components/actions/use-context-menu.js +1 -1
- package/dist/components/content/ActiveZone/ActiveZone.js +37 -43
- package/dist/components/content/ActiveZone/ActiveZone.js.map +1 -1
- package/dist/components/content/Alert/Alert.js +1 -1
- package/dist/components/content/Alert/use-alert.js +1 -1
- package/dist/components/content/Avatar/Avatar.js +1 -1
- package/dist/components/content/Badge/Badge.js +1 -1
- package/dist/components/content/Card/Card.js +1 -1
- package/dist/components/content/Content.js +1 -1
- package/dist/components/content/CopyPasteBlock/CopyPasteBlock.js +1 -1
- package/dist/components/content/CopySnippet/CopySnippet.js +1 -1
- package/dist/components/content/Disclosure/Disclosure.js +1 -1
- package/dist/components/content/Divider.js +1 -1
- package/dist/components/content/Footer.js +1 -1
- package/dist/components/content/Header.js +1 -1
- package/dist/components/content/HotKeys/HotKeys.js +1 -1
- package/dist/components/content/InfoBadge/InfoBadge.js +1 -1
- package/dist/components/content/InlineInput/InlineInput.js +1 -1
- package/dist/components/content/Item/Item.js +1 -1
- package/dist/components/content/ItemBadge/ItemBadge.js +1 -1
- package/dist/components/content/ItemCard/ItemCard.js +1 -1
- package/dist/components/content/Layout/GridLayout.js +1 -1
- package/dist/components/content/Layout/Layout.js +1 -1
- package/dist/components/content/Layout/LayoutBlock.js +1 -1
- package/dist/components/content/Layout/LayoutCenter.js +1 -1
- package/dist/components/content/Layout/LayoutContainer.js +1 -1
- package/dist/components/content/Layout/LayoutContent.js +1 -1
- package/dist/components/content/Layout/LayoutContext.js +1 -1
- package/dist/components/content/Layout/LayoutFlex.js +1 -1
- package/dist/components/content/Layout/LayoutFooter.js +1 -1
- package/dist/components/content/Layout/LayoutGrid.js +1 -1
- package/dist/components/content/Layout/LayoutHeader.js +1 -1
- package/dist/components/content/Layout/LayoutPane.js +1 -1
- package/dist/components/content/Layout/LayoutPanel.js +1 -1
- package/dist/components/content/Layout/LayoutPanelHeader.js +1 -1
- package/dist/components/content/Layout/LayoutToolbar.js +1 -1
- package/dist/components/content/Layout/hooks/useTinyScrollbar.js +1 -1
- package/dist/components/content/Layout/index.js +1 -1
- package/dist/components/content/Layout/utils.js +1 -1
- package/dist/components/content/Paragraph.js +1 -1
- package/dist/components/content/Placeholder/Placeholder.js +1 -1
- package/dist/components/content/PrismCode/PrismCode.js +1 -1
- package/dist/components/content/PrismCode/prismSetup.js +1 -1
- package/dist/components/content/PrismDiffCode/PrismDiffCode.js +1 -1
- package/dist/components/content/Result/Result.js +1 -1
- package/dist/components/content/Skeleton/Skeleton.js +1 -1
- package/dist/components/content/Tag/Tag.js +1 -1
- package/dist/components/content/Text.d.ts +14 -14
- package/dist/components/content/Text.js +1 -1
- package/dist/components/content/TextItem/TextItem.js +1 -1
- package/dist/components/content/Title.js +1 -1
- package/dist/components/content/Tree/Tree.js +1 -1
- package/dist/components/content/Tree/TreeNode.js +1 -1
- package/dist/components/content/Tree/styled.js +1 -1
- package/dist/components/content/Tree/tree-index.js +1 -1
- package/dist/components/content/Tree/use-checkbox-tree.js +1 -1
- package/dist/components/content/Tree/use-load-data.js +1 -1
- package/dist/components/content/highlightText.js +1 -1
- package/dist/components/content/use-auto-tooltip.js +1 -1
- package/dist/components/data/DataTable/DataTable.js +1 -1
- package/dist/components/data/ItemTable/ItemTable.js +1 -1
- package/dist/components/data/ItemTable/ItemTableBulkBar.js +1 -1
- package/dist/components/data/ItemTable/ItemTableDragPreview.js +1 -1
- package/dist/components/data/ItemTable/ItemTableFooter.js +1 -1
- package/dist/components/data/ItemTable/ItemTableToolbar.js +1 -1
- package/dist/components/data/TableBase/ColumnResizer.js +1 -1
- package/dist/components/data/TableBase/RowCollection.js +1 -1
- package/dist/components/data/TableBase/TableHeaderCell.js +1 -1
- package/dist/components/data/TableBase/TableRow.js +1 -1
- package/dist/components/data/TableBase/TableView.js +1 -1
- package/dist/components/data/TableBase/column-menu.js +1 -1
- package/dist/components/data/TableBase/column-styles.js +1 -1
- package/dist/components/data/TableBase/column-tint.js +2 -6
- package/dist/components/data/TableBase/column-tint.js.map +1 -1
- package/dist/components/data/TableBase/row-menu.js +1 -1
- package/dist/components/data/TableBase/styled.js +1 -1
- package/dist/components/data/TableBase/styled.js.map +1 -1
- package/dist/components/data/TableBase/table-tree.js +1 -1
- package/dist/components/data/TableBase/types.js +1 -1
- package/dist/components/data/TableBase/use-cell-selection.js +0 -0
- package/dist/components/data/TableBase/use-column-order.js +1 -1
- package/dist/components/data/TableBase/use-container-width.js +1 -1
- package/dist/components/data/TableBase/use-row-move-animation.js +1 -1
- package/dist/components/data/TableBase/use-scrollability.js +1 -1
- package/dist/components/data/TableBase/use-table-columns.js +1 -1
- package/dist/components/data/TableBase/use-table-search.js +1 -1
- package/dist/components/data/TableBase/use-table-selection.js +1 -1
- package/dist/components/data/TableBase/use-table-sort.js +1 -1
- package/dist/components/data/TableBase/use-table-sorts.js +1 -1
- package/dist/components/data/TableBase/use-table-storage.js +1 -1
- package/dist/components/data/TableBase/use-table-tree-state.js +1 -1
- package/dist/components/fields/Checkbox/Checkbox.js +2 -2
- package/dist/components/fields/Checkbox/Checkbox.js.map +1 -1
- package/dist/components/fields/Checkbox/CheckboxGroup.js +1 -1
- package/dist/components/fields/Checkbox/context.js +1 -1
- package/dist/components/fields/ColorInput/ColorInput.js +1 -1
- package/dist/components/fields/ColorPicker/ColorPicker.js +1 -1
- package/dist/components/fields/ColorSwatch/ColorSwatch.js +1 -1
- package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.js +49 -55
- package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.js.map +1 -1
- package/dist/components/fields/ComboBox/ComboBox.js +2 -2
- package/dist/components/fields/ComboBox/ComboBox.js.map +1 -1
- package/dist/components/fields/CommandTextArea/CommandTextArea.js +1 -1
- package/dist/components/fields/CommandTextArea/caretPosition.js +1 -1
- package/dist/components/fields/CommandTextArea/useCaretAnchor.js +1 -1
- package/dist/components/fields/DatePicker/DateInput.js +1 -1
- package/dist/components/fields/DatePicker/DateInputBase.js +1 -1
- package/dist/components/fields/DatePicker/DatePicker.js +1 -1
- package/dist/components/fields/DatePicker/DatePickerButton.js +1 -1
- package/dist/components/fields/DatePicker/DatePickerElement.js +1 -1
- package/dist/components/fields/DatePicker/DatePickerInput.js +1 -1
- package/dist/components/fields/DatePicker/DatePickerSegment.js +1 -1
- package/dist/components/fields/DatePicker/DateRangePicker.js +1 -1
- package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js +1 -1
- package/dist/components/fields/DatePicker/MonthPicker.js +1 -1
- package/dist/components/fields/DatePicker/PeriodPicker.js +1 -1
- package/dist/components/fields/DatePicker/QuarterPicker.js +1 -1
- package/dist/components/fields/DatePicker/TimeInput.js +1 -1
- package/dist/components/fields/DatePicker/WeekPicker.js +1 -1
- package/dist/components/fields/DatePicker/YearPicker.js +1 -1
- package/dist/components/fields/DatePicker/parseDate.js +1 -1
- package/dist/components/fields/DatePicker/period.js +1 -1
- package/dist/components/fields/DatePicker/props.js +1 -1
- package/dist/components/fields/DatePicker/utils.js +1 -1
- package/dist/components/fields/FileInput/FileInput.js +1 -1
- package/dist/components/fields/FilterListBox/FilterListBox.js +2 -2
- package/dist/components/fields/FilterListBox/FilterListBox.js.map +1 -1
- package/dist/components/fields/FilterPicker/FilterPicker.js +1 -1
- package/dist/components/fields/Input/Input.js +1 -1
- package/dist/components/fields/ListBox/DraggableListBox.js +1 -1
- package/dist/components/fields/ListBox/ListBox.js +2 -2
- package/dist/components/fields/ListBox/ListBox.js.map +1 -1
- package/dist/components/fields/ListBox/optionId.js +1 -1
- package/dist/components/fields/ListBoxPopover/ListBoxPopover.js +3 -2
- package/dist/components/fields/ListBoxPopover/ListBoxPopover.js.map +1 -1
- package/dist/components/fields/ListBoxPopover/listNavigation.js +1 -1
- package/dist/components/fields/ListBoxPopover/useCompositeFocus.js +1 -1
- package/dist/components/fields/NumberInput/NumberInput.js +1 -1
- package/dist/components/fields/NumberInput/StepButton.js +1 -1
- package/dist/components/fields/PasswordInput/PasswordInput.js +1 -1
- package/dist/components/fields/Picker/Picker.js +1 -1
- package/dist/components/fields/RadioGroup/Radio.js +132 -138
- package/dist/components/fields/RadioGroup/Radio.js.map +1 -1
- package/dist/components/fields/RadioGroup/RadioGroup.js +1 -1
- package/dist/components/fields/RadioGroup/context.js +1 -1
- package/dist/components/fields/SearchComboBox/SearchComboBox.js +2 -2
- package/dist/components/fields/SearchComboBox/SearchComboBox.js.map +1 -1
- package/dist/components/fields/SearchInput/SearchInput.js +1 -1
- package/dist/components/fields/Select/Select.js +65 -70
- package/dist/components/fields/Select/Select.js.map +1 -1
- package/dist/components/fields/Slider/Gradation.js +1 -1
- package/dist/components/fields/Slider/HueSlider.js +1 -1
- package/dist/components/fields/Slider/RangeSlider.js +1 -1
- package/dist/components/fields/Slider/Slider.js +1 -1
- package/dist/components/fields/Slider/SliderBase.js +1 -1
- package/dist/components/fields/Slider/SliderThumb.js +1 -1
- package/dist/components/fields/Slider/SliderTrack.js +1 -1
- package/dist/components/fields/Slider/elements.js +1 -1
- package/dist/components/fields/Slider/index.js +1 -1
- package/dist/components/fields/Switch/Switch.js +106 -112
- package/dist/components/fields/Switch/Switch.js.map +1 -1
- package/dist/components/fields/TagInput/TagInput.js +1 -1
- package/dist/components/fields/TagInput/TagList.js +1 -1
- package/dist/components/fields/TextArea/TextArea.js +1 -1
- package/dist/components/fields/TextInput/TextInput.js +1 -1
- package/dist/components/fields/TextInput/TextInputBase.js +2 -2
- package/dist/components/fields/TextInput/TextInputBase.js.map +1 -1
- package/dist/components/fields/TextInput/useAutoSizeTextArea.js +1 -1
- package/dist/components/fields/TextInputMapper/TextInputMapper.js +1 -1
- package/dist/components/fields/TriggerActions.js +1 -1
- package/dist/components/fields/color/ColorPanel.js +1 -1
- package/dist/components/fields/color/channels.js +1 -1
- package/dist/components/fields/color/color.js +1 -1
- package/dist/components/fields/color/context.js +1 -1
- package/dist/components/form/FieldWrapper/FieldWrapper.js +1 -1
- package/dist/components/form/Form/Field.js +1 -1
- package/dist/components/form/Form/Form.js +1 -1
- package/dist/components/form/Form/ModernFormRoot.js +1 -1
- package/dist/components/form/Form/ResetButton/ResetButton.js +1 -1
- package/dist/components/form/Form/SubmitButton/SubmitButton.js +1 -1
- package/dist/components/form/Form/SubmitError.js +1 -1
- package/dist/components/form/Form/backend.js +1 -1
- package/dist/components/form/Form/index.js +1 -1
- package/dist/components/form/Form/modern/actions.js +1 -1
- package/dist/components/form/Form/modern/context.js +1 -1
- package/dist/components/form/Form/modern/controller.js +1 -1
- package/dist/components/form/Form/modern/field-binding.js +1 -1
- package/dist/components/form/Form/modern/field.js +1 -1
- package/dist/components/form/Form/modern/react.js +1 -1
- package/dist/components/form/Form/modern/store.js +1 -1
- package/dist/components/form/Form/modern/validation.js +1 -1
- package/dist/components/form/Form/modern/values.js +1 -1
- package/dist/components/form/Form/reset-unbound-controls.js +1 -1
- package/dist/components/form/Form/use-field/use-field-binding.js +1 -1
- package/dist/components/form/Form/use-field/use-field-props.js +1 -1
- package/dist/components/form/Form/use-field/use-field.js +1 -1
- package/dist/components/form/Form/use-form.js +1 -1
- package/dist/components/form/Form/validation.js +1 -1
- package/dist/components/form/Label.js +1 -1
- package/dist/components/form/legacy-tooltip.js +1 -1
- package/dist/components/form/validation/ValidationIndicator.js +1 -1
- package/dist/components/form/validation/resolve-validation-props.js +1 -1
- package/dist/components/form/validation/use-validation-props.js +1 -1
- package/dist/components/form/wrapper.js +1 -1
- package/dist/components/helpers/DisplayTransition/DisplayTransition.d.ts +9 -1
- package/dist/components/helpers/DisplayTransition/DisplayTransition.js +2 -1
- package/dist/components/helpers/DisplayTransition/DisplayTransition.js.map +1 -1
- package/dist/components/helpers/IconSwitch/IconSwitch.js +1 -1
- package/dist/components/layout/Board/Board.js +1 -1
- package/dist/components/layout/Board/BoardProvider.js +1 -1
- package/dist/components/layout/Board/BoardResponsive.js +1 -1
- package/dist/components/layout/Board/Widget.js +1 -1
- package/dist/components/layout/Board/WidgetHost.js +1 -1
- package/dist/components/layout/Board/board-context.js +1 -1
- package/dist/components/layout/Board/board-store.js +1 -1
- package/dist/components/layout/Board/grid-core/calculate.js +1 -1
- package/dist/components/layout/Board/grid-core/collision-modes.js +1 -1
- package/dist/components/layout/Board/grid-core/collision.js +1 -1
- package/dist/components/layout/Board/grid-core/compactors.js +1 -1
- package/dist/components/layout/Board/grid-core/constraints.js +1 -1
- package/dist/components/layout/Board/grid-core/group-move.js +1 -1
- package/dist/components/layout/Board/grid-core/layout.js +1 -1
- package/dist/components/layout/Board/grid-core/placement.js +1 -1
- package/dist/components/layout/Board/grid-core/sort.js +1 -1
- package/dist/components/layout/Board/index.js +1 -1
- package/dist/components/layout/Board/responsive-utils.js +1 -1
- package/dist/components/layout/Board/use-board-layout.js +1 -1
- package/dist/components/layout/Board/use-board-registry.js +1 -1
- package/dist/components/layout/Board/use-board-select-modifier-key.js +1 -1
- package/dist/components/layout/Board/use-board-selection.js +1 -1
- package/dist/components/layout/Flex.js +1 -1
- package/dist/components/layout/Flow.js +1 -1
- package/dist/components/layout/Grid.js +1 -1
- package/dist/components/layout/Panel.js +1 -1
- package/dist/components/layout/Prefix.js +1 -1
- package/dist/components/layout/ResizablePanel.js +1 -1
- package/dist/components/layout/Space.js +1 -1
- package/dist/components/layout/Suffix.js +1 -1
- package/dist/components/navigation/Pagination/Pagination.js +1 -1
- package/dist/components/navigation/Pagination/use-pagination.js +1 -1
- package/dist/components/navigation/Tabs/DraggableTabList.js +1 -1
- package/dist/components/navigation/Tabs/TabButton.js +1 -1
- package/dist/components/navigation/Tabs/TabDropIndicator.js +1 -1
- package/dist/components/navigation/Tabs/TabPanel.js +1 -1
- package/dist/components/navigation/Tabs/TabPicker.js +1 -1
- package/dist/components/navigation/Tabs/Tabs.js +1 -1
- package/dist/components/navigation/Tabs/TabsAction.js +1 -1
- package/dist/components/navigation/Tabs/TabsContext.js +1 -1
- package/dist/components/navigation/Tabs/popover-placement.js +1 -1
- package/dist/components/navigation/Tabs/styled.js +1 -1
- package/dist/components/navigation/Tabs/types.js +1 -1
- package/dist/components/navigation/Tabs/use-tab-editing.js +1 -1
- package/dist/components/navigation/Tabs/use-tab-indicator.js +1 -1
- package/dist/components/organisms/StatsCard/StatsCard.js +1 -1
- package/dist/components/other/Calendar/Calendar.js +1 -1
- package/dist/components/other/Calendar/CalendarCell.js +1 -1
- package/dist/components/other/Calendar/CalendarGrid.js +1 -1
- package/dist/components/other/Calendar/CalendarHeader.js +1 -1
- package/dist/components/other/Calendar/CalendarPanel.js +1 -1
- package/dist/components/other/Calendar/PeriodCalendar.js +1 -1
- package/dist/components/other/Calendar/PeriodGrid.js +1 -1
- package/dist/components/other/Calendar/RangeCalendar.js +1 -1
- package/dist/components/other/Calendar/styled.js +1 -1
- package/dist/components/other/CubeLogo/CubeLogo.js +1 -1
- package/dist/components/other/NoDataIcon/NoDataIcon.js +1 -1
- package/dist/components/overlays/AlertDialog/AlertDialog.js +1 -1
- package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.d.ts +20 -32
- package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js +117 -54
- package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js.map +1 -1
- package/dist/components/overlays/AlertDialog/AlertDialogZone.d.ts +1 -0
- package/dist/components/overlays/AlertDialog/AlertDialogZone.js +107 -88
- package/dist/components/overlays/AlertDialog/AlertDialogZone.js.map +1 -1
- package/dist/components/overlays/AlertDialog/types.d.ts +30 -1
- package/dist/components/overlays/Dialog/Dialog.js +1 -1
- package/dist/components/overlays/Dialog/DialogContainer.js +1 -1
- package/dist/components/overlays/Dialog/DialogForm.js +1 -1
- package/dist/components/overlays/Dialog/DialogTrigger.js +1 -1
- package/dist/components/overlays/Dialog/ModernDialogForm.js +1 -1
- package/dist/components/overlays/Dialog/context.js +1 -1
- package/dist/components/overlays/Dialog/default-button-text.js +1 -1
- package/dist/components/overlays/Dialog/use-content-overflow.js +1 -1
- package/dist/components/overlays/Dialog/use-dialog-container.js +1 -1
- package/dist/components/overlays/Modal/Modal.js +4 -2
- package/dist/components/overlays/Modal/Modal.js.map +1 -1
- package/dist/components/overlays/Modal/OpenTransitionContext.js +1 -1
- package/dist/components/overlays/Modal/Overlay.js +4 -3
- package/dist/components/overlays/Modal/Overlay.js.map +1 -1
- package/dist/components/overlays/Modal/Popover.js +2 -2
- package/dist/components/overlays/Modal/Tray.js +4 -2
- package/dist/components/overlays/Modal/Tray.js.map +1 -1
- package/dist/components/overlays/Modal/Underlay.js +1 -1
- package/dist/components/overlays/Notifications/Notification.js +1 -1
- package/dist/components/overlays/Notifications/NotificationAction.js +1 -1
- package/dist/components/overlays/Notifications/NotificationCard.js +1 -1
- package/dist/components/overlays/Notifications/NotificationContext.js +1 -1
- package/dist/components/overlays/Notifications/NotificationItem.js +1 -1
- package/dist/components/overlays/Notifications/OverlayContainer.js +45 -39
- package/dist/components/overlays/Notifications/OverlayContainer.js.map +1 -1
- package/dist/components/overlays/Notifications/OverlayProvider.js +1 -1
- package/dist/components/overlays/Notifications/PersistentNotificationsList.js +1 -1
- package/dist/components/overlays/Notifications/dismissed-storage.js +1 -1
- package/dist/components/overlays/Notifications/format-relative-time.js +1 -1
- package/dist/components/overlays/Notifications/index.js +1 -1
- package/dist/components/overlays/Notifications/use-notification-state.js +1 -1
- package/dist/components/overlays/Notifications/use-notifications.js +1 -1
- package/dist/components/overlays/Notifications/use-overlay-timers.js +1 -1
- package/dist/components/overlays/Notifications/use-persistent-notifications.js +1 -1
- package/dist/components/overlays/Notifications/use-persistent-state.js +1 -1
- package/dist/components/overlays/Notifications/use-toast-state.js +1 -1
- package/dist/components/overlays/Toast/ToastItem.js +1 -1
- package/dist/components/overlays/Toast/index.js +1 -1
- package/dist/components/overlays/Toast/useProgressToast.js +1 -1
- package/dist/components/overlays/Toast/useToast.js +1 -1
- package/dist/components/overlays/Tooltip/Tooltip.js +1 -1
- package/dist/components/overlays/Tooltip/TooltipProvider.js +1 -1
- package/dist/components/overlays/Tooltip/TooltipTrigger.js +1 -1
- package/dist/components/overlays/Tooltip/context.js +1 -1
- package/dist/components/overlays/Tooltip/split-trigger-props.js +1 -1
- package/dist/components/portal/Portal.js +1 -1
- package/dist/components/portal/PortalProvider.js +1 -1
- package/dist/components/portal/usePortal.js +1 -1
- package/dist/components/shared/DraggableCollection.js +1 -1
- package/dist/components/shared/InvalidIcon.js +1 -1
- package/dist/components/shared/ValidIcon.js +1 -1
- package/dist/components/status/LoadingAnimation/LoadingAnimation.js +1 -1
- package/dist/components/status/Spin/Cube.js +1 -1
- package/dist/components/status/Spin/InternalSpinner.js +1 -1
- package/dist/components/status/Spin/Spin.js +1 -1
- package/dist/components/status/Spin/SpinsContainer.js +1 -1
- package/dist/data/item-themes.js +19 -19
- package/dist/data/item-themes.js.map +1 -1
- package/dist/data/themes.js +1 -1
- package/dist/eslint-plugin/defaults.generated.js +1 -1
- package/dist/eslint-plugin/index.js +1 -1
- package/dist/eslint-plugin/rules/no-redundant-default-prop.js +1 -1
- package/dist/i18n/I18nProvider.js +1 -1
- package/dist/i18n/createFormatter.js +1 -1
- package/dist/i18n/index.js +1 -1
- package/dist/i18n/instance.js +1 -1
- package/dist/i18n/locales/de-DE/uikit.js +1 -1
- package/dist/i18n/locales/en-US/uikit.js +1 -1
- package/dist/i18n/locales/es-ES/uikit.js +1 -1
- package/dist/i18n/locales/es-MX/uikit.js +1 -1
- package/dist/i18n/locales/fr-FR/uikit.js +1 -1
- package/dist/i18n/locales/it-IT/uikit.js +1 -1
- package/dist/i18n/locales/ja-JP/uikit.js +1 -1
- package/dist/i18n/locales/nb-NO/uikit.js +1 -1
- package/dist/i18n/locales/pt-BR/uikit.js +1 -1
- package/dist/i18n/locales/pt-PT/uikit.js +1 -1
- package/dist/i18n/locales/sv-SE/uikit.js +1 -1
- package/dist/i18n/locales/vi-VN/uikit.js +1 -1
- package/dist/i18n/locales.js +1 -1
- package/dist/i18n/useFormatter.js +1 -1
- package/dist/i18n/useI18n.js +1 -1
- package/dist/icons/AdjustmentsHorizontalIcon.js +1 -1
- package/dist/icons/AdjustmentsIcon.js +1 -1
- package/dist/icons/AiIcon.js +1 -1
- package/dist/icons/AreaChartIcon.js +1 -1
- package/dist/icons/ArrowNarrowDownIcon.js +1 -1
- package/dist/icons/ArrowNarrowUpIcon.js +1 -1
- package/dist/icons/BackwardIcon.js +1 -1
- package/dist/icons/BarChartIcon.js +1 -1
- package/dist/icons/BellFilledIcon.js +1 -1
- package/dist/icons/BellIcon.js +1 -1
- package/dist/icons/BooleanIcon.js +1 -1
- package/dist/icons/CalendarEditIcon.js +1 -1
- package/dist/icons/CalendarIcon.js +1 -1
- package/dist/icons/CaretDownIcon.js +1 -1
- package/dist/icons/CaretUpIcon.js +1 -1
- package/dist/icons/ChartAreaStackedIcon.js +1 -1
- package/dist/icons/ChartAreaStackedPercentageIcon.js +1 -1
- package/dist/icons/ChartBarGroupedHorizontalIcon.js +1 -1
- package/dist/icons/ChartBarGroupedIcon.js +1 -1
- package/dist/icons/ChartBarHorizontalIcon.js +1 -1
- package/dist/icons/ChartBarLineIcon.js +1 -1
- package/dist/icons/ChartBarStackedHorizontalIcon.js +1 -1
- package/dist/icons/ChartBarStackedIcon.js +1 -1
- package/dist/icons/ChartBarStackedPercentageHorizontalIcon.js +1 -1
- package/dist/icons/ChartBarStackedPercentageIcon.js +1 -1
- package/dist/icons/ChartBoxPlot2Icon.js +1 -1
- package/dist/icons/ChartBoxPlotIcon.js +1 -1
- package/dist/icons/ChartBubbleIcon.js +1 -1
- package/dist/icons/ChartDonut2Icon.js +1 -1
- package/dist/icons/ChartFunnelIcon.js +1 -1
- package/dist/icons/ChartHeatmapIcon.js +1 -1
- package/dist/icons/ChartKPIIcon.js +1 -1
- package/dist/icons/ChartPie2Icon.js +1 -1
- package/dist/icons/ChartScatterIcon.js +1 -1
- package/dist/icons/CheckCircleFilledIcon.js +1 -1
- package/dist/icons/CheckCircleIcon.js +1 -1
- package/dist/icons/CheckIcon.js +1 -1
- package/dist/icons/CircleFilledIcon.js +1 -1
- package/dist/icons/ClearIcon.js +1 -1
- package/dist/icons/CloseCircleFilledIcon.js +1 -1
- package/dist/icons/CloseCircleIcon.js +1 -1
- package/dist/icons/CloseIcon.js +1 -1
- package/dist/icons/CodeIcon.js +1 -1
- package/dist/icons/ColumnTotalIcon.js +1 -1
- package/dist/icons/CopyIcon.js +1 -1
- package/dist/icons/CountIcon.js +1 -1
- package/dist/icons/CubeIcon.js +1 -1
- package/dist/icons/CubePauseIcon.js +1 -1
- package/dist/icons/CubePlayIcon.js +1 -1
- package/dist/icons/CurrencyDollarIcon.js +1 -1
- package/dist/icons/DangerIcon.js +1 -1
- package/dist/icons/DashboardIcon.js +1 -1
- package/dist/icons/DatabaseIcon.js +1 -1
- package/dist/icons/DecimalDecreaseIcon.js +1 -1
- package/dist/icons/DecimalIncreaseIcon.js +1 -1
- package/dist/icons/DirectionIcon.js +1 -1
- package/dist/icons/DonutIcon.js +1 -1
- package/dist/icons/DownIcon.js +1 -1
- package/dist/icons/EditIcon.js +1 -1
- package/dist/icons/ExclamationCircleFilledIcon.js +1 -1
- package/dist/icons/ExclamationCircleIcon.js +1 -1
- package/dist/icons/ExclamationIcon.js +1 -1
- package/dist/icons/EyeIcon.js +1 -1
- package/dist/icons/EyeInvisibleIcon.js +1 -1
- package/dist/icons/FilterIcon.js +1 -1
- package/dist/icons/FolderFilledIcon.js +1 -1
- package/dist/icons/FolderIcon.js +1 -1
- package/dist/icons/FolderOpenFilledIcon.js +1 -1
- package/dist/icons/FolderOpenIcon.js +1 -1
- package/dist/icons/ForwardIcon.js +1 -1
- package/dist/icons/GripVerticalIcon.js +1 -1
- package/dist/icons/HierarchyIcon.js +1 -1
- package/dist/icons/HierarchyOpenIcon.js +1 -1
- package/dist/icons/Icon.js +1 -1
- package/dist/icons/InfoCircleIcon.js +1 -1
- package/dist/icons/InfoIcon.js +1 -1
- package/dist/icons/KeyIcon.js +1 -1
- package/dist/icons/LeftIcon.js +1 -1
- package/dist/icons/LineChartIcon.js +1 -1
- package/dist/icons/LoadingIcon.js +1 -1
- package/dist/icons/LockFilledIcon.js +1 -1
- package/dist/icons/LockIcon.js +1 -1
- package/dist/icons/MoreIcon.js +1 -1
- package/dist/icons/NotAllowedIcon.js +1 -1
- package/dist/icons/Number123Icon.js +1 -1
- package/dist/icons/NumberIcon.js +1 -1
- package/dist/icons/PauseCircleFilledIcon.js +1 -1
- package/dist/icons/PauseCircleIcon.js +1 -1
- package/dist/icons/PauseIcon.js +1 -1
- package/dist/icons/PercentageIcon.js +1 -1
- package/dist/icons/PieChartIcon.js +1 -1
- package/dist/icons/PipetteIcon.js +1 -1
- package/dist/icons/PlayCircleIcon.js +1 -1
- package/dist/icons/PlayIcon.js +1 -1
- package/dist/icons/PlusIcon.js +1 -1
- package/dist/icons/ProgressBarIcon.js +1 -1
- package/dist/icons/ReloadIcon.js +1 -1
- package/dist/icons/ReportIcon.js +1 -1
- package/dist/icons/ReturnIcon.js +1 -1
- package/dist/icons/RightIcon.js +1 -1
- package/dist/icons/RowTotalsIcon.js +1 -1
- package/dist/icons/SchemeIcon.js +1 -1
- package/dist/icons/SearchIcon.js +1 -1
- package/dist/icons/SemanticQueryIcon.js +1 -1
- package/dist/icons/SettingsIcon.js +1 -1
- package/dist/icons/ShieldFilledIcon.js +1 -1
- package/dist/icons/ShieldIcon.js +1 -1
- package/dist/icons/SlashIcon.js +1 -1
- package/dist/icons/SparklesIcon.js +1 -1
- package/dist/icons/SqlIcon.js +1 -1
- package/dist/icons/StatsIcon.js +1 -1
- package/dist/icons/StopIcon.js +1 -1
- package/dist/icons/StringIcon.js +1 -1
- package/dist/icons/SubtotalsIcon.js +1 -1
- package/dist/icons/SwitchIcon.js +1 -1
- package/dist/icons/TableIcon.js +1 -1
- package/dist/icons/ThumbsDownIcon.js +1 -1
- package/dist/icons/ThumbsUpIcon.js +1 -1
- package/dist/icons/ThunderboltCrossedIcon.js +1 -1
- package/dist/icons/ThunderboltFilledIcon.js +1 -1
- package/dist/icons/ThunderboltIcon.js +1 -1
- package/dist/icons/TimeIcon.js +1 -1
- package/dist/icons/TrashIcon.js +1 -1
- package/dist/icons/UnlockIcon.js +1 -1
- package/dist/icons/UpIcon.js +1 -1
- package/dist/icons/UserGroupIcon.js +1 -1
- package/dist/icons/UserIcon.js +1 -1
- package/dist/icons/UserLockIcon.js +1 -1
- package/dist/icons/ViewIcon.js +1 -1
- package/dist/icons/WarningFilledIcon.js +1 -1
- package/dist/icons/WarningIcon.js +1 -1
- package/dist/icons/wrap-icon.js +1 -1
- package/dist/index.js +1 -1
- package/dist/probe/canonicalize.js +1 -1
- package/dist/probe/css.js +1 -1
- package/dist/probe/index.js +1 -1
- package/dist/provider.js +1 -1
- package/dist/providers/TrackingProvider.js +1 -1
- package/dist/providers/navigationAdapter.default.js +1 -1
- package/dist/tokens/all-tokens.js +1 -1
- package/dist/tokens/base.js +1 -1
- package/dist/tokens/color-seed.js +1 -1
- package/dist/tokens/color-theme.js +1 -1
- package/dist/tokens/colors.js +1 -1
- package/dist/tokens/layout.js +1 -1
- package/dist/tokens/lazy-styles.js +1 -1
- package/dist/tokens/legacy-color.js +1 -1
- package/dist/tokens/palette-config.js +1 -1
- package/dist/tokens/palette.js +1 -1
- package/dist/tokens/resolve.js +1 -1
- package/dist/tokens/shadows.js +1 -1
- package/dist/tokens/sizes.js +1 -1
- package/dist/tokens/spacing.js +1 -1
- package/dist/tokens/typography.js +1 -1
- package/dist/utils/ResizeSensor.js +1 -1
- package/dist/utils/colors.js +1 -1
- package/dist/utils/dotize.js +1 -1
- package/dist/utils/is-dev-env.js +1 -1
- package/dist/utils/modules.js +1 -1
- package/dist/utils/promise.js +1 -1
- package/dist/utils/raf.js +1 -1
- package/dist/utils/random.js +1 -1
- package/dist/utils/range.js +1 -1
- package/dist/utils/react/RenderCache.js +1 -1
- package/dist/utils/react/Slots.js +1 -1
- package/dist/utils/react/chain.js +1 -1
- package/dist/utils/react/disabledProps.d.ts +4 -2
- package/dist/utils/react/disabledProps.js +7 -2
- package/dist/utils/react/disabledProps.js.map +1 -1
- package/dist/utils/react/escapePropagation.js +1 -1
- package/dist/utils/react/forwardRefWithGenerics.js +1 -1
- package/dist/utils/react/index.js +1 -1
- package/dist/utils/react/interactions.js +49 -24
- package/dist/utils/react/interactions.js.map +1 -1
- package/dist/utils/react/isTextOnly.js +1 -1
- package/dist/utils/react/mapProps.js +1 -1
- package/dist/utils/react/mergeProps.js +1 -1
- package/dist/utils/react/nullableValue.js +1 -1
- package/dist/utils/react/programmaticFocus.js +1 -1
- package/dist/utils/react/resolveIcon.js +1 -1
- package/dist/utils/react/sharedStore.js +1 -1
- package/dist/utils/react/useBufferedValue.js +1 -1
- package/dist/utils/react/useCombinedRefs.js +1 -1
- package/dist/utils/react/useControlledFocusVisible.js +1 -1
- package/dist/utils/react/useEventBus.js +1 -1
- package/dist/utils/react/useId.js +1 -1
- package/dist/utils/react/useIsDarwin.js +1 -1
- package/dist/utils/react/useKeySymbols.js +1 -1
- package/dist/utils/react/useLayoutEffect.js +1 -1
- package/dist/utils/react/useLocalStorage.js +1 -1
- package/dist/utils/react/useMergeStyles.js +1 -1
- package/dist/utils/react/useOverlayEscapeGuard.js +1 -1
- package/dist/utils/react/usePopoverSync.js +1 -1
- package/dist/utils/react/useQaProps.js +1 -1
- package/dist/utils/react/useScheme.js +1 -1
- package/dist/utils/react/useViewportSize.js +1 -1
- package/dist/utils/react/wrapNodeIfPlain.js +1 -1
- package/dist/utils/selection.js +1 -1
- package/dist/utils/styles.js +1 -1
- package/dist/utils/tree.js +1 -1
- package/dist/utils/warnings.js +1 -1
- package/dist/version.js +2 -2
- package/docs/components/actions/Button.md +1 -1
- package/docs/components/actions/ItemAction.md +30 -2
- package/docs/components/content/InfoBadge.md +2 -2
- package/docs/components/helpers/DisplayTransition.md +3 -1
- package/docs/components/overlays/AlertDialog.md +60 -27
- package/package.json +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.190.1 | Cube Dev Team */
|
|
2
2
|
import { Portal } from "../../portal/Portal.js";
|
|
3
3
|
import { DialogContainer } from "../Dialog/DialogContainer.js";
|
|
4
4
|
import { _AlertDialog } from "./AlertDialog.js";
|
|
@@ -11,8 +11,8 @@ const PORTAL_KEY = "AlertDialogZone";
|
|
|
11
11
|
* @internal Do not use it
|
|
12
12
|
*/
|
|
13
13
|
function AlertDialogZone(props) {
|
|
14
|
-
const $ = c(
|
|
15
|
-
const { openedDialog } = props;
|
|
14
|
+
const $ = c(45);
|
|
15
|
+
const { openedDialog, pendingAction } = props;
|
|
16
16
|
if (openedDialog === null) {
|
|
17
17
|
let t0;
|
|
18
18
|
if ($[0] === Symbol.for("react.memo_cache_sentinel")) {
|
|
@@ -45,119 +45,138 @@ function AlertDialogZone(props) {
|
|
|
45
45
|
type = $[7];
|
|
46
46
|
}
|
|
47
47
|
const isDismissable = t0 === void 0 ? true : t0;
|
|
48
|
-
const { resolve, reject, isVisible, dialogType } = openedDialog.meta;
|
|
48
|
+
const { id, resolve, reject, act, isVisible, dialogType } = openedDialog.meta;
|
|
49
|
+
const pending = pendingAction?.id === id ? pendingAction.status : null;
|
|
49
50
|
let t1;
|
|
50
|
-
if ($[8] !==
|
|
51
|
-
t1 = (
|
|
51
|
+
if ($[8] !== pending) {
|
|
52
|
+
t1 = (status) => pending ? {
|
|
53
|
+
isLoading: pending === status,
|
|
54
|
+
isDisabled: true
|
|
55
|
+
} : null;
|
|
56
|
+
$[8] = pending;
|
|
57
|
+
$[9] = t1;
|
|
58
|
+
} else t1 = $[9];
|
|
59
|
+
const lock = t1;
|
|
60
|
+
let t2;
|
|
61
|
+
if ($[10] !== act || $[11] !== lock) {
|
|
62
|
+
t2 = (action, status_0) => {
|
|
52
63
|
if (typeof action === "undefined") return;
|
|
53
|
-
if (typeof action === "boolean") return action ? {
|
|
54
|
-
|
|
64
|
+
if (typeof action === "boolean") return action ? {
|
|
65
|
+
...lock(status_0),
|
|
66
|
+
onPress: () => act(status_0)
|
|
67
|
+
} : false;
|
|
68
|
+
const { onPress } = action;
|
|
55
69
|
return {
|
|
56
70
|
...action,
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
resolve(status);
|
|
60
|
-
}
|
|
71
|
+
...lock(status_0),
|
|
72
|
+
onPress: (e) => act(status_0, onPress && (() => onPress(e)))
|
|
61
73
|
};
|
|
62
74
|
};
|
|
63
|
-
$[
|
|
64
|
-
$[
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
$[
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
const confirm
|
|
75
|
-
|
|
76
|
-
if ($[12] !== confirm || $[13] !== mergeActionProps) {
|
|
77
|
-
t4 = mergeActionProps(confirm, "confirm");
|
|
78
|
-
$[12] = confirm;
|
|
79
|
-
$[13] = mergeActionProps;
|
|
80
|
-
$[14] = t4;
|
|
81
|
-
} else t4 = $[14];
|
|
75
|
+
$[10] = act;
|
|
76
|
+
$[11] = lock;
|
|
77
|
+
$[12] = t2;
|
|
78
|
+
} else t2 = $[12];
|
|
79
|
+
const mergeActionProps = t2;
|
|
80
|
+
let t3;
|
|
81
|
+
if ($[13] !== actions) {
|
|
82
|
+
t3 = actions ?? {};
|
|
83
|
+
$[13] = actions;
|
|
84
|
+
$[14] = t3;
|
|
85
|
+
} else t3 = $[14];
|
|
86
|
+
const { confirm: t4, secondary, cancel } = t3;
|
|
87
|
+
const confirm = t4 === void 0 ? true : t4;
|
|
82
88
|
let t5;
|
|
83
|
-
if ($[15] !==
|
|
84
|
-
t5 = mergeActionProps(
|
|
85
|
-
$[15] =
|
|
86
|
-
$[16] =
|
|
89
|
+
if ($[15] !== confirm || $[16] !== mergeActionProps) {
|
|
90
|
+
t5 = mergeActionProps(confirm, "confirm");
|
|
91
|
+
$[15] = confirm;
|
|
92
|
+
$[16] = mergeActionProps;
|
|
87
93
|
$[17] = t5;
|
|
88
94
|
} else t5 = $[17];
|
|
89
95
|
let t6;
|
|
90
|
-
if ($[18] !==
|
|
91
|
-
t6 =
|
|
96
|
+
if ($[18] !== mergeActionProps || $[19] !== secondary) {
|
|
97
|
+
t6 = mergeActionProps(secondary, "secondary");
|
|
98
|
+
$[18] = mergeActionProps;
|
|
99
|
+
$[19] = secondary;
|
|
100
|
+
$[20] = t6;
|
|
101
|
+
} else t6 = $[20];
|
|
102
|
+
let t7;
|
|
103
|
+
if ($[21] !== cancel || $[22] !== lock || $[23] !== reject) {
|
|
104
|
+
t7 = typeof cancel === "undefined" ? void 0 : typeof cancel === "boolean" ? cancel ? {
|
|
105
|
+
...lock(),
|
|
106
|
+
onPress: () => reject(void 0)
|
|
107
|
+
} : false : {
|
|
92
108
|
...cancel,
|
|
109
|
+
...lock(),
|
|
93
110
|
onPress: (e_0) => {
|
|
94
111
|
cancel.onPress?.(e_0);
|
|
95
112
|
reject(void 0);
|
|
96
113
|
}
|
|
97
114
|
};
|
|
98
|
-
$[
|
|
99
|
-
$[
|
|
100
|
-
$[
|
|
101
|
-
} else t6 = $[20];
|
|
102
|
-
let t7;
|
|
103
|
-
if ($[21] !== t4 || $[22] !== t5 || $[23] !== t6) {
|
|
104
|
-
t7 = {
|
|
105
|
-
confirm: t4,
|
|
106
|
-
secondary: t5,
|
|
107
|
-
cancel: t6
|
|
108
|
-
};
|
|
109
|
-
$[21] = t4;
|
|
110
|
-
$[22] = t5;
|
|
111
|
-
$[23] = t6;
|
|
115
|
+
$[21] = cancel;
|
|
116
|
+
$[22] = lock;
|
|
117
|
+
$[23] = reject;
|
|
112
118
|
$[24] = t7;
|
|
113
119
|
} else t7 = $[24];
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
+
let t8;
|
|
121
|
+
if ($[25] !== t5 || $[26] !== t6 || $[27] !== t7) {
|
|
122
|
+
t8 = {
|
|
123
|
+
confirm: t5,
|
|
124
|
+
secondary: t6,
|
|
125
|
+
cancel: t7
|
|
126
|
+
};
|
|
127
|
+
$[25] = t5;
|
|
128
|
+
$[26] = t6;
|
|
129
|
+
$[27] = t7;
|
|
130
|
+
$[28] = t8;
|
|
131
|
+
} else t8 = $[28];
|
|
132
|
+
const _actions = t8;
|
|
133
|
+
const t9 = isDismissable && !pending;
|
|
134
|
+
const t10 = dialogType === "form";
|
|
135
|
+
const t11 = !isVisible;
|
|
136
|
+
let t12;
|
|
137
|
+
if ($[29] !== content || $[30] !== reject || $[31] !== resolve) {
|
|
138
|
+
t12 = typeof content === "function" ? content({
|
|
120
139
|
resolve,
|
|
121
140
|
reject
|
|
122
141
|
}) : content;
|
|
123
|
-
$[
|
|
124
|
-
$[
|
|
125
|
-
$[
|
|
126
|
-
$[
|
|
127
|
-
} else
|
|
128
|
-
let
|
|
129
|
-
if ($[
|
|
130
|
-
|
|
131
|
-
noActions:
|
|
142
|
+
$[29] = content;
|
|
143
|
+
$[30] = reject;
|
|
144
|
+
$[31] = resolve;
|
|
145
|
+
$[32] = t12;
|
|
146
|
+
} else t12 = $[32];
|
|
147
|
+
let t13;
|
|
148
|
+
if ($[33] !== _actions || $[34] !== options || $[35] !== t10 || $[36] !== t11 || $[37] !== t12) {
|
|
149
|
+
t13 = /* @__PURE__ */ jsx(_AlertDialog, {
|
|
150
|
+
noActions: t10,
|
|
132
151
|
actions: _actions,
|
|
133
|
-
isHidden:
|
|
134
|
-
content:
|
|
152
|
+
isHidden: t11,
|
|
153
|
+
content: t12,
|
|
135
154
|
...options
|
|
136
155
|
});
|
|
137
|
-
$[
|
|
138
|
-
$[
|
|
139
|
-
$[
|
|
140
|
-
$[
|
|
141
|
-
$[
|
|
142
|
-
$[
|
|
143
|
-
} else
|
|
144
|
-
let
|
|
145
|
-
if ($[
|
|
146
|
-
|
|
156
|
+
$[33] = _actions;
|
|
157
|
+
$[34] = options;
|
|
158
|
+
$[35] = t10;
|
|
159
|
+
$[36] = t11;
|
|
160
|
+
$[37] = t12;
|
|
161
|
+
$[38] = t13;
|
|
162
|
+
} else t13 = $[38];
|
|
163
|
+
let t14;
|
|
164
|
+
if ($[39] !== isVisible || $[40] !== onDismiss || $[41] !== t13 || $[42] !== t9 || $[43] !== type) {
|
|
165
|
+
t14 = /* @__PURE__ */ jsx(Portal, { children: /* @__PURE__ */ jsx(DialogContainer, {
|
|
147
166
|
isOpen: isVisible,
|
|
148
|
-
isDismissable,
|
|
167
|
+
isDismissable: t9,
|
|
149
168
|
type,
|
|
150
169
|
onDismiss,
|
|
151
|
-
children:
|
|
170
|
+
children: t13
|
|
152
171
|
}) }, PORTAL_KEY);
|
|
153
|
-
$[
|
|
154
|
-
$[
|
|
155
|
-
$[
|
|
156
|
-
$[
|
|
157
|
-
$[
|
|
158
|
-
$[
|
|
159
|
-
} else
|
|
160
|
-
return
|
|
172
|
+
$[39] = isVisible;
|
|
173
|
+
$[40] = onDismiss;
|
|
174
|
+
$[41] = t13;
|
|
175
|
+
$[42] = t9;
|
|
176
|
+
$[43] = type;
|
|
177
|
+
$[44] = t14;
|
|
178
|
+
} else t14 = $[44];
|
|
179
|
+
return t14;
|
|
161
180
|
}
|
|
162
181
|
|
|
163
182
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AlertDialogZone.js","names":["Portal","DialogContainer","AlertDialog","CubeAlertDialogActionsProps","AlertDialogResolveStatus","Dialog","CubeButtonProps","DialogZoneProps","openedDialog","PORTAL_KEY","AlertDialogZone","props","$","_c","t0","Symbol","for","actions","content","onDismiss","options","type","isDismissable","undefined","resolve","reject","isVisible","dialogType","meta","t1","action","
|
|
1
|
+
{"version":3,"file":"AlertDialogZone.js","names":["Portal","DialogContainer","AlertDialog","CubeAlertDialogActionsProps","AlertDialogResolveStatus","Dialog","CubeButtonProps","PendingAction","DialogZoneProps","openedDialog","pendingAction","PORTAL_KEY","AlertDialogZone","props","$","_c","t0","Symbol","for","actions","content","onDismiss","options","type","isDismissable","undefined","id","resolve","reject","act","isVisible","dialogType","meta","pending","status","t1","isLoading","isDisabled","lock","t2","action","status_0","T","onPress","e","mergeActionProps","t3","confirm","t4","secondary","cancel","t5","t6","t7","e_0","t8","_actions","t9","t10","t11","t12","t13","t14"],"sources":["../../../../src/components/overlays/AlertDialog/AlertDialogZone.tsx"],"sourcesContent":["import { Portal } from '../../portal';\nimport { DialogContainer } from '../Dialog/DialogContainer';\n\nimport { AlertDialog, CubeAlertDialogActionsProps } from './AlertDialog';\nimport { AlertDialogResolveStatus, Dialog } from './types';\n\nimport type { CubeButtonProps } from '../../actions/Button/Button';\nimport type { PendingAction } from './AlertDialogApiProvider';\n\nexport interface DialogZoneProps {\n openedDialog: Dialog | null;\n pendingAction?: PendingAction | null;\n}\n\nconst PORTAL_KEY = 'AlertDialogZone';\n\n/**\n * @internal Do not use it\n */\nexport function AlertDialogZone(props: DialogZoneProps) {\n const { openedDialog, pendingAction } = props;\n\n if (openedDialog === null) return <Portal key={PORTAL_KEY} />;\n\n const {\n type,\n isDismissable = true,\n actions,\n onDismiss,\n content,\n ...options\n } = openedDialog.props;\n const { id, resolve, reject, act, isVisible, dialogType } = openedDialog.meta;\n // While an action's handler runs, its button shows loading and the rest\n // of the dialog is locked.\n const pending = pendingAction?.id === id ? pendingAction.status : null;\n const lock = (status?: AlertDialogResolveStatus) =>\n pending ? { isLoading: pending === status, isDisabled: true } : null;\n\n const _actions: CubeAlertDialogActionsProps = (() => {\n const mergeActionProps = <\n T extends\n | CubeAlertDialogActionsProps['confirm']\n | CubeAlertDialogActionsProps['secondary'],\n >(\n action: T,\n status: AlertDialogResolveStatus,\n ): T => {\n if (typeof action === 'undefined') {\n return undefined as unknown as T;\n }\n\n if (typeof action === 'boolean') {\n return (action\n ? { ...lock(status), onPress: () => act(status) }\n : false) as unknown as T;\n }\n\n const { onPress } = action as CubeButtonProps;\n\n return {\n ...(action as CubeButtonProps),\n ...lock(status),\n // The same as the dialog's `onConfirm` / `onSecondary`: awaited, with\n // the dialog kept open while it runs.\n onPress: (e) => act(status, onPress && (() => onPress(e))),\n } as unknown as T;\n };\n\n // `AlertDialog` shows the confirm button unless it is `false`, so an\n // omitted one has to resolve too, not fall through to the dismissal.\n const { confirm = true, secondary, cancel } = actions ?? {};\n\n return {\n confirm: mergeActionProps(confirm, 'confirm'),\n secondary: mergeActionProps(secondary, 'secondary'),\n cancel:\n typeof cancel === 'undefined'\n ? undefined\n : typeof cancel === 'boolean'\n ? cancel\n ? { ...lock(), onPress: () => reject(undefined) }\n : false\n : {\n ...(cancel as CubeButtonProps),\n ...lock(),\n onPress: (e) => {\n (cancel as CubeButtonProps).onPress?.(e);\n reject(undefined);\n },\n },\n };\n })();\n\n return (\n <Portal key={PORTAL_KEY}>\n <DialogContainer\n isOpen={isVisible}\n isDismissable={isDismissable && !pending}\n type={type}\n onDismiss={onDismiss}\n >\n <AlertDialog\n noActions={dialogType === 'form'}\n actions={_actions}\n isHidden={!isVisible}\n content={\n typeof content === 'function'\n ? content({ resolve, reject })\n : content\n }\n {...options}\n />\n </DialogContainer>\n </Portal>\n );\n}\n"],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
|
|
2
|
+
import { CubeButtonProps } from "../../actions/Button/Button.js";
|
|
2
3
|
import { CubeDialogContainerProps } from "../Dialog/DialogContainer.js";
|
|
3
4
|
import "../Dialog/index.js";
|
|
4
5
|
import { CubeAlertDialogProps } from "./AlertDialog.js";
|
|
@@ -7,7 +8,20 @@ import { ReactNode } from "react";
|
|
|
7
8
|
import { AriaDialogProps } from "react-aria";
|
|
8
9
|
|
|
9
10
|
//#region src/components/overlays/AlertDialog/types.d.ts
|
|
10
|
-
|
|
11
|
+
/** A confirm or secondary button opened through `useAlertDialogAPI`. */
|
|
12
|
+
interface AlertDialogApiActionProps extends Omit<CubeButtonProps, 'onPress'> {
|
|
13
|
+
/**
|
|
14
|
+
* @deprecated Use `onConfirm` or `onSecondary` on the dialog instead. It
|
|
15
|
+
* behaves the same way.
|
|
16
|
+
*/
|
|
17
|
+
onPress?: CubeButtonProps['onPress'];
|
|
18
|
+
}
|
|
19
|
+
interface AlertDialogApiActions {
|
|
20
|
+
confirm?: AlertDialogApiActionProps | boolean;
|
|
21
|
+
secondary?: AlertDialogApiActionProps;
|
|
22
|
+
cancel?: CubeButtonProps | boolean;
|
|
23
|
+
}
|
|
24
|
+
interface DialogProps extends Omit<CubeDialogContainerProps, 'onDismiss' | 'children'>, Omit<CubeAlertDialogProps, 'type' | 'id' | 'content' | 'actions'> {
|
|
11
25
|
content: ReactNode | (({
|
|
12
26
|
resolve,
|
|
13
27
|
reject
|
|
@@ -15,6 +29,21 @@ interface DialogProps extends Omit<CubeDialogContainerProps, 'onDismiss' | 'chil
|
|
|
15
29
|
resolve: any;
|
|
16
30
|
reject: any;
|
|
17
31
|
}) => ReactNode);
|
|
32
|
+
actions?: AlertDialogApiActions;
|
|
33
|
+
/**
|
|
34
|
+
* Runs when the confirm button is pressed. If it returns a promise, the
|
|
35
|
+
* dialog stays open with the button loading until it settles: it closes
|
|
36
|
+
* when the promise resolves, and stays open, with the error reported, when
|
|
37
|
+
* it rejects.
|
|
38
|
+
*/
|
|
39
|
+
onConfirm?: () => unknown;
|
|
40
|
+
/** Like `onConfirm`, for the secondary button. */
|
|
41
|
+
onSecondary?: () => unknown;
|
|
42
|
+
/**
|
|
43
|
+
* Runs when the dialog settles as a cancel: the Cancel button, Escape, a
|
|
44
|
+
* click outside, an aborted `cancelToken`, or `content` calling `reject()`.
|
|
45
|
+
*/
|
|
46
|
+
onCancel?: () => void;
|
|
18
47
|
}
|
|
19
48
|
type AlertDialogResolveStatus = 'confirm' | 'secondary';
|
|
20
49
|
//#endregion
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.190.1 | Cube Dev Team */
|
|
2
2
|
import { extractStyles } from "../../../utils/styles.js";
|
|
3
3
|
import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
|
|
4
4
|
import { SlotProvider } from "../../../utils/react/Slots.js";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.190.1 | Cube Dev Team */
|
|
2
2
|
import { _Title } from "../../content/Title.js";
|
|
3
3
|
import { useI18n } from "../../../i18n/useI18n.js";
|
|
4
4
|
import { Button } from "../../actions/Button/Button.js";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.190.1 | Cube Dev Team */
|
|
2
2
|
import { useLayoutEffect as useLayoutEffect$1 } from "../../../utils/react/useLayoutEffect.js";
|
|
3
3
|
import { useCombinedRefs } from "../../../utils/react/useCombinedRefs.js";
|
|
4
4
|
import { usePopoverSync } from "../../../utils/react/usePopoverSync.js";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.190.1 | Cube Dev Team */
|
|
2
2
|
import { useLayoutEffect as useLayoutEffect$1 } from "../../../utils/react/useLayoutEffect.js";
|
|
3
3
|
import { useEvent } from "../../../_internal/hooks/use-event.js";
|
|
4
4
|
import { _Title } from "../../content/Title.js";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.190.1 | Cube Dev Team */
|
|
2
2
|
//#region src/components/overlays/Dialog/default-button-text.ts
|
|
3
3
|
/**
|
|
4
4
|
* Gives a dialog's built-in button its default text without overriding the
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.190.1 | Cube Dev Team */
|
|
2
2
|
import { useLayoutEffect as useLayoutEffect$1 } from "../../../utils/react/useLayoutEffect.js";
|
|
3
3
|
import { c } from "react-compiler-runtime";
|
|
4
4
|
import { useState } from "react";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.190.1 | Cube Dev Team */
|
|
2
2
|
import { mergeProps } from "../../../utils/react/mergeProps.js";
|
|
3
3
|
import { useEvent } from "../../../_internal/hooks/use-event.js";
|
|
4
4
|
import { DialogContainer } from "./DialogContainer.js";
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.190.1 | Cube Dev Team */
|
|
2
2
|
import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
|
|
3
|
+
import { useOverlayEscapeGuard } from "../../../utils/react/useOverlayEscapeGuard.js";
|
|
3
4
|
import { _Overlay } from "./Overlay.js";
|
|
4
5
|
import { _Underlay } from "./Underlay.js";
|
|
5
6
|
import { c } from "react-compiler-runtime";
|
|
@@ -97,7 +98,8 @@ function Modal(props, ref) {
|
|
|
97
98
|
$[7] = props;
|
|
98
99
|
$[8] = t0;
|
|
99
100
|
} else t0 = $[8];
|
|
100
|
-
const { overlayProps, underlayProps } = useOverlay(t0, domRef);
|
|
101
|
+
const { overlayProps: rawOverlayProps, underlayProps } = useOverlay(t0, domRef);
|
|
102
|
+
const overlayProps = useOverlayEscapeGuard(rawOverlayProps, props.isOpen);
|
|
101
103
|
let t1;
|
|
102
104
|
if ($[9] !== type || $[10] !== underlayProps) {
|
|
103
105
|
t1 = type !== "fullscreenTakeover" && type !== "panel" && /* @__PURE__ */ jsx(_Underlay, { ...underlayProps });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Modal.js","names":["useObjectRef","BaseProps","Styles","tasty","forwardRef","ReactNode","useModal","useOverlay","usePreventScroll","mergeProps","Overlay","ModalProps","TransitionState","WithCloseBehavior","Underlay","Props","OVERLAY_WRAPPER_STYLES","position","display","left","top","placeItems","boxSizing","width","height","pointerEvents","zIndex","transition","open","ModalWrapperElement","qa","styles","ModalElement","hide","exit","unmounted","transform","opacity","CubeModalProps","Omit","container","HTMLElement","onClose","action","type","shouldCloseOnInteractOutside","element","Element","Modal","props","ref","$","_c","children","otherProps","domRef","t0","overlayProps","underlayProps","t1","t2","t3","ModalWrapperProps","
|
|
1
|
+
{"version":3,"file":"Modal.js","names":["useObjectRef","BaseProps","Styles","tasty","forwardRef","ReactNode","useModal","useOverlay","usePreventScroll","mergeProps","useOverlayEscapeGuard","Overlay","ModalProps","TransitionState","WithCloseBehavior","Underlay","Props","OVERLAY_WRAPPER_STYLES","position","display","left","top","placeItems","boxSizing","width","height","pointerEvents","zIndex","transition","open","ModalWrapperElement","qa","styles","ModalElement","hide","exit","unmounted","transform","opacity","CubeModalProps","Omit","container","HTMLElement","onClose","action","type","shouldCloseOnInteractOutside","element","Element","Modal","props","ref","$","_c","children","otherProps","domRef","t0","overlayProps","rawOverlayProps","underlayProps","isOpen","t1","t2","t3","ModalWrapperProps","placement","ModalWrapper","transitionState","isDisabled","modalProps","T0","T1","t4","t5","t6","t7","t8","t9","enter","entered","t10","t11","t12","_Modal","displayName"],"sources":["../../../../src/components/overlays/Modal/Modal.tsx"],"sourcesContent":["import { useObjectRef } from '@react-aria/utils';\nimport { BaseProps, Styles, tasty } from '@tenphi/tasty';\nimport { forwardRef, ReactNode } from 'react';\nimport { useModal, useOverlay, usePreventScroll } from 'react-aria';\n\nimport { mergeProps } from '../../../utils/react';\nimport { useOverlayEscapeGuard } from '../../../utils/react/useOverlayEscapeGuard';\n\nimport { Overlay } from './Overlay';\nimport { ModalProps, TransitionState, WithCloseBehavior } from './types';\nimport { Underlay } from './Underlay';\n\nimport type { Props } from '../../../props';\n\nexport const OVERLAY_WRAPPER_STYLES: Styles = {\n position: 'fixed',\n display: 'grid',\n left: 0,\n top: 0,\n placeItems: {\n '': 'center',\n 'type=fullscreen': 'center',\n 'type=fullscreenTakeover | type=panel': 'stretch',\n },\n boxSizing: 'border-box',\n width: '100vw',\n height: '100dvh',\n pointerEvents: 'none',\n zIndex: 10,\n transition: {\n '': 'visibility .5s steps(2, start)',\n open: 'visibility 0s linear',\n },\n};\n\nconst ModalWrapperElement = tasty({\n qa: 'ModalWrapper',\n styles: OVERLAY_WRAPPER_STYLES,\n});\n\nconst ModalElement = tasty({\n styles: {\n display: 'grid',\n hide: {\n '': true,\n 'enter | entered': false,\n exit: false,\n unmounted: true,\n },\n zIndex: 10,\n height: {\n '': 'max 90dvh',\n 'type=fullscreenTakeover | type=panel': '100dvh 100dvh',\n 'type=fullscreen': '(100dvh - 8x) (100dvh - 8x)',\n 'type=panel': 'auto',\n },\n width: {\n '': '$min-dialog-size (100dvw - 8x)',\n 'type=panel': 'auto',\n },\n pointerEvents: 'none',\n transition: 'opacity .25s linear, transform .25s ease-in-out',\n transform: {\n '': 'initial',\n 'type=modal & !open': 'translate(0, -3x) scale(1, 1)',\n '(type^=fullscreen | type=panel) & !open':\n 'translate(0, 0) scale(1.02, 1.02)',\n },\n opacity: {\n '': 0,\n open: 0.9999,\n },\n },\n});\n\nexport interface CubeModalProps\n extends Omit<ModalProps, 'container' | 'type' | 'nodeRef'>,\n WithCloseBehavior {\n container?: HTMLElement;\n qa?: BaseProps['qa'];\n onClose?: (action?: string) => void;\n type?: 'modal' | 'fullscreen' | 'fullscreenTakeover' | 'panel';\n styles?: Styles;\n shouldCloseOnInteractOutside?: (element: Element) => boolean;\n}\n\nfunction Modal(props: CubeModalProps, ref) {\n let { qa, children, onClose, type, styles, ...otherProps } = props;\n let domRef = useObjectRef(ref);\n\n let { overlayProps: rawOverlayProps, underlayProps } = useOverlay(\n { ...props },\n domRef,\n );\n\n // Focus can stay in a modal while it closes, after a press on it or a close\n // that restores focus nowhere; it must not answer for `Escape` meanwhile —\n // see `useOverlayEscapeGuard`.\n const overlayProps = useOverlayEscapeGuard(rawOverlayProps, props.isOpen);\n\n return (\n <Overlay {...otherProps}>\n {type !== 'fullscreenTakeover' && type !== 'panel' && (\n <Underlay {...underlayProps} />\n )}\n <ModalWrapper\n ref={domRef}\n qa={qa}\n type={type}\n overlayProps={overlayProps}\n styles={styles}\n onClose={onClose}\n >\n {children}\n </ModalWrapper>\n </Overlay>\n );\n}\n\ninterface ModalWrapperProps extends TransitionState {\n children?: ReactNode;\n qa?: BaseProps['qa'];\n isOpen?: boolean;\n type?: 'modal' | 'fullscreen' | 'fullscreenTakeover' | 'panel';\n placement?: 'top' | 'bottom';\n styles?: Styles;\n overlayProps?: Props;\n onClose?: () => void;\n}\n\nlet ModalWrapper = forwardRef(function ModalWrapper(\n props: ModalWrapperProps,\n ref,\n) {\n let {\n qa,\n children,\n isOpen,\n type,\n placement,\n styles,\n overlayProps,\n transitionState,\n ...otherProps\n } = props;\n\n usePreventScroll({ isDisabled: transitionState !== 'entered' });\n\n let { modalProps } = useModal({ isDisabled: transitionState !== 'entered' });\n\n return (\n <ModalWrapperElement data-type={type} data-placement={placement}>\n <ModalElement\n qa={qa || 'Modal'}\n styles={styles}\n mods={{\n open: isOpen,\n enter: transitionState === 'enter',\n exit: transitionState === 'exit',\n unmounted: transitionState === 'unmounted',\n entered: transitionState === 'entered',\n }}\n data-type={type}\n data-placement={placement}\n {...mergeProps(otherProps, overlayProps, modalProps)}\n ref={ref}\n >\n {children}\n </ModalElement>\n </ModalWrapperElement>\n );\n});\n\nlet _Modal = forwardRef(Modal);\n\n_Modal.displayName = 'Modal';\n\nexport { _Modal as Modal };\n"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.190.1 | Cube Dev Team */
|
|
2
2
|
import { markFocusRestoreWindow } from "../../../utils/react/programmaticFocus.js";
|
|
3
3
|
import { DisplayTransition } from "../../helpers/DisplayTransition/DisplayTransition.js";
|
|
4
4
|
import { Provider, useProviderProps } from "../../../provider.js";
|
|
@@ -57,12 +57,13 @@ function Overlay(props, ref) {
|
|
|
57
57
|
exposeUnmounted: hideOnClose,
|
|
58
58
|
duration: EXIT_DURATION,
|
|
59
59
|
onPhaseChange: handlePhaseChange,
|
|
60
|
-
children: ({ phase: phase_0, isShown }) => {
|
|
60
|
+
children: ({ phase: phase_0, isShown, isExiting }) => {
|
|
61
61
|
return /* @__PURE__ */ jsx(OpenTransitionContext.Provider, {
|
|
62
62
|
value: { transitionState: phase_0 },
|
|
63
63
|
children: Children.map(children, (child) => child && cloneElement(child, {
|
|
64
64
|
isOpen: isShown,
|
|
65
|
-
transitionState: phase_0
|
|
65
|
+
transitionState: phase_0,
|
|
66
|
+
"data-react-aria-top-layer": isExiting || void 0
|
|
66
67
|
}))
|
|
67
68
|
});
|
|
68
69
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Overlay.js","names":["TastyBatchProvider","Children","cloneElement","forwardRef","ReactElement","useCallback","useRef","useState","createPortal","Provider","useProviderProps","markFocusRestoreWindow","DisplayTransition","OpenTransitionContext","WithCloseBehavior","OverlayProps","Props","ReportedPhase","CubeOverlayProps","Omit","container","HTMLElement","EXIT_DURATION","Overlay","props","ref","children","isOpen","onEnter","onEntering","onEntered","onExit","onExiting","onExited","hideOnClose","exited","setExited","wasOpen","current","root","handlePhaseChange","phase","mountOverlay","contents","isShown","transitionState","map","child","document","body","_Overlay","displayName"],"sources":["../../../../src/components/overlays/Modal/Overlay.tsx"],"sourcesContent":["import { TastyBatchProvider } from '@tenphi/tasty';\nimport {\n Children,\n cloneElement,\n forwardRef,\n ReactElement,\n useCallback,\n useRef,\n useState,\n} from 'react';\nimport { createPortal } from 'react-dom';\n\nimport { Provider, useProviderProps } from '../../../provider';\nimport { markFocusRestoreWindow } from '../../../utils/react/programmaticFocus';\nimport { DisplayTransition } from '../../helpers/DisplayTransition/DisplayTransition';\n\nimport { OpenTransitionContext } from './OpenTransitionContext';\nimport { WithCloseBehavior } from './types';\n\nimport type { OverlayProps } from 'react-aria';\nimport type { Props } from '../../../props';\nimport type { ReportedPhase } from '../../helpers/DisplayTransition/DisplayTransition';\n\nexport interface CubeOverlayProps\n extends Omit<OverlayProps, 'container' | 'nodeRef'>,\n WithCloseBehavior {\n container?: HTMLElement | null;\n}\n\nconst EXIT_DURATION = 350;\n\nfunction Overlay(props: CubeOverlayProps, ref) {\n let {\n children,\n isOpen,\n container = null,\n onEnter,\n onEntering,\n onEntered,\n onExit,\n onExiting,\n onExited,\n hideOnClose = false,\n } = props;\n let [exited, setExited] = useState(!isOpen);\n\n if (isOpen && exited) {\n setExited(false);\n }\n\n // Our `FocusScope` restores focus to the trigger when it unmounts, from\n // inside React's own commit where nothing can wrap the call. The window has\n // to be open before that lands, or the restored trigger's tooltip opens and\n // eats the user's next `Escape` (CUB-4839).\n //\n // Keyed to `isOpen` closing rather than to the exit PHASE, because the phase\n // is not always reported: under reduced motion `DisplayTransition` collapses\n // its duration to zero, so `exit` and `unmounted` are set in one callback and\n // React batches the `exit` render — and its notification — away entirely.\n // Closing is the one signal that always arrives.\n const wasOpen = useRef(!!isOpen);\n\n if (wasOpen.current !== !!isOpen) {\n wasOpen.current = !!isOpen;\n\n if (!isOpen) markFocusRestoreWindow(EXIT_DURATION + 200);\n }\n\n let { root } = useProviderProps({} as Props);\n\n let handlePhaseChange = useCallback(\n (phase: ReportedPhase) => {\n switch (phase) {\n case 'enter':\n setExited(false);\n onEnter?.();\n onEntering?.();\n break;\n case 'entered':\n onEntered?.();\n break;\n case 'exit':\n onExit?.();\n onExiting?.();\n break;\n case 'unmounted':\n setExited(true);\n onExited?.();\n break;\n }\n },\n [onEnter, onEntering, onEntered, onExit, onExiting, onExited],\n );\n\n let mountOverlay = isOpen || !exited;\n\n if (!mountOverlay) {\n if (!hideOnClose) {\n return null;\n }\n }\n\n let contents = (\n <Provider ref={ref}>\n <DisplayTransition\n isShown={!!isOpen}\n exposeUnmounted={hideOnClose}\n duration={EXIT_DURATION}\n onPhaseChange={handlePhaseChange}\n >\n {({ phase, isShown }) => {\n return (\n <OpenTransitionContext.Provider\n value={{ transitionState: phase as ReportedPhase }}\n >\n {Children.map(\n children,\n (child) =>\n child &&\n cloneElement(\n child as ReactElement,\n {\n isOpen: isShown,\n transitionState: phase,\n } as any,\n ),\n )}\n </OpenTransitionContext.Provider>\n );\n }}\n </DisplayTransition>\n </Provider>\n );\n\n // Popover, Modal and Tray all portal through here, which makes this the\n // overlay path that matters most for batching: a dialog or menu mounts a\n // fresh subtree and react-aria positions it from a layout effect in the same\n // commit. `<Root>` does not re-render for those commits, so open a window\n // here — it flushes in `useInsertionEffect`, before any positioning effect\n // reads the DOM. Note this is a *raw* `createPortal`, not `<Portal>`, so the\n // window `<Portal>` opens does not reach these overlays.\n return createPortal(\n <TastyBatchProvider>{contents}</TastyBatchProvider>,\n container || root || document.body,\n );\n}\n\nlet _Overlay = forwardRef(Overlay);\n\n_Overlay.displayName = 'Overlay';\n\nexport { _Overlay as Overlay };\n"],"mappings":";;;;;;;;;;;AA6BA,MAAMsB,gBAAgB;AAEtB,SAASC,QAAQC,OAAyBC,KAAK;CAC7C,IAAI,EACFC,UACAC,QACAP,YAAY,MACZQ,SACAC,YACAC,WACAC,QACAC,WACAC,UACAC,cAAc,UACZV;CACJ,IAAI,CAACW,QAAQC,aAAa7B,SAAS,CAACoB,OAAO;AAE3C,KAAIA,UAAUQ,OACZC,WAAU,MAAM;CAalB,MAAMC,UAAU/B,OAAO,CAAC,CAACqB,OAAO;AAEhC,KAAIU,QAAQC,YAAY,CAAC,CAACX,QAAQ;AAChCU,UAAQC,UAAU,CAAC,CAACX;AAEpB,MAAI,CAACA,OAAQhB,wBAAuBW,gBAAgB,IAAI;;CAG1D,IAAI,EAAEiB,SAAS7B,iBAAiB,EAAE,CAAU;CAE5C,IAAI8B,oBAAoBnC,aACrBoC,UAAyB;AACxB,UAAQA,OAAR;GACE,KAAK;AACHL,cAAU,MAAM;AAChBR,eAAW;AACXC,kBAAc;AACd;GACF,KAAK;AACHC,iBAAa;AACb;GACF,KAAK;AACHC,cAAU;AACVC,iBAAa;AACb;GACF,KAAK;AACHI,cAAU,KAAK;AACfH,gBAAY;AACZ;;IAGN;EAACL;EAASC;EAAYC;EAAWC;EAAQC;EAAWC;EACtD,CAAC;AAID,KAAI,EAFeN,UAAU,CAACQ,SAG5B;MAAI,CAACD,YACH,QAAO;;
|
|
1
|
+
{"version":3,"file":"Overlay.js","names":["TastyBatchProvider","Children","cloneElement","forwardRef","ReactElement","useCallback","useRef","useState","createPortal","Provider","useProviderProps","markFocusRestoreWindow","DisplayTransition","OpenTransitionContext","WithCloseBehavior","OverlayProps","Props","ReportedPhase","CubeOverlayProps","Omit","container","HTMLElement","EXIT_DURATION","Overlay","props","ref","children","isOpen","onEnter","onEntering","onEntered","onExit","onExiting","onExited","hideOnClose","exited","setExited","wasOpen","current","root","handlePhaseChange","phase","mountOverlay","contents","isShown","isExiting","transitionState","map","child","undefined","document","body","_Overlay","displayName"],"sources":["../../../../src/components/overlays/Modal/Overlay.tsx"],"sourcesContent":["import { TastyBatchProvider } from '@tenphi/tasty';\nimport {\n Children,\n cloneElement,\n forwardRef,\n ReactElement,\n useCallback,\n useRef,\n useState,\n} from 'react';\nimport { createPortal } from 'react-dom';\n\nimport { Provider, useProviderProps } from '../../../provider';\nimport { markFocusRestoreWindow } from '../../../utils/react/programmaticFocus';\nimport { DisplayTransition } from '../../helpers/DisplayTransition/DisplayTransition';\n\nimport { OpenTransitionContext } from './OpenTransitionContext';\nimport { WithCloseBehavior } from './types';\n\nimport type { OverlayProps } from 'react-aria';\nimport type { Props } from '../../../props';\nimport type { ReportedPhase } from '../../helpers/DisplayTransition/DisplayTransition';\n\nexport interface CubeOverlayProps\n extends Omit<OverlayProps, 'container' | 'nodeRef'>,\n WithCloseBehavior {\n container?: HTMLElement | null;\n}\n\nconst EXIT_DURATION = 350;\n\nfunction Overlay(props: CubeOverlayProps, ref) {\n let {\n children,\n isOpen,\n container = null,\n onEnter,\n onEntering,\n onEntered,\n onExit,\n onExiting,\n onExited,\n hideOnClose = false,\n } = props;\n let [exited, setExited] = useState(!isOpen);\n\n if (isOpen && exited) {\n setExited(false);\n }\n\n // Our `FocusScope` restores focus to the trigger when it unmounts, from\n // inside React's own commit where nothing can wrap the call. The window has\n // to be open before that lands, or the restored trigger's tooltip opens and\n // eats the user's next `Escape` (CUB-4839).\n //\n // Keyed to `isOpen` closing rather than to the exit PHASE, because the phase\n // is not always reported: under reduced motion `DisplayTransition` collapses\n // its duration to zero, so `exit` and `unmounted` are set in one callback and\n // React batches the `exit` render — and its notification — away entirely.\n // Closing is the one signal that always arrives.\n const wasOpen = useRef(!!isOpen);\n\n if (wasOpen.current !== !!isOpen) {\n wasOpen.current = !!isOpen;\n\n if (!isOpen) markFocusRestoreWindow(EXIT_DURATION + 200);\n }\n\n let { root } = useProviderProps({} as Props);\n\n let handlePhaseChange = useCallback(\n (phase: ReportedPhase) => {\n switch (phase) {\n case 'enter':\n setExited(false);\n onEnter?.();\n onEntering?.();\n break;\n case 'entered':\n onEntered?.();\n break;\n case 'exit':\n onExit?.();\n onExiting?.();\n break;\n case 'unmounted':\n setExited(true);\n onExited?.();\n break;\n }\n },\n [onEnter, onEntering, onEntered, onExit, onExiting, onExited],\n );\n\n let mountOverlay = isOpen || !exited;\n\n if (!mountOverlay) {\n if (!hideOnClose) {\n return null;\n }\n }\n\n let contents = (\n <Provider ref={ref}>\n <DisplayTransition\n isShown={!!isOpen}\n exposeUnmounted={hideOnClose}\n duration={EXIT_DURATION}\n onPhaseChange={handlePhaseChange}\n >\n {({ phase, isShown, isExiting }) => {\n return (\n <OpenTransitionContext.Provider\n value={{ transitionState: phase as ReportedPhase }}\n >\n {Children.map(\n children,\n (child) =>\n child &&\n cloneElement(\n child as ReactElement,\n {\n isOpen: isShown,\n transitionState: phase,\n // A closed overlay leaves React Aria's stack of visible\n // overlays at once, but stays on screen, and clickable,\n // while it fades out. A press on it then counts as a\n // press outside whatever overlay is topmost again, so a\n // click on a fading list closed the Dialog under it\n // (CUB-5293). React Aria never treats a press inside a\n // top-layer element as outside.\n 'data-react-aria-top-layer': isExiting || undefined,\n } as any,\n ),\n )}\n </OpenTransitionContext.Provider>\n );\n }}\n </DisplayTransition>\n </Provider>\n );\n\n // Popover, Modal and Tray all portal through here, which makes this the\n // overlay path that matters most for batching: a dialog or menu mounts a\n // fresh subtree and react-aria positions it from a layout effect in the same\n // commit. `<Root>` does not re-render for those commits, so open a window\n // here — it flushes in `useInsertionEffect`, before any positioning effect\n // reads the DOM. Note this is a *raw* `createPortal`, not `<Portal>`, so the\n // window `<Portal>` opens does not reach these overlays.\n return createPortal(\n <TastyBatchProvider>{contents}</TastyBatchProvider>,\n container || root || document.body,\n );\n}\n\nlet _Overlay = forwardRef(Overlay);\n\n_Overlay.displayName = 'Overlay';\n\nexport { _Overlay as Overlay };\n"],"mappings":";;;;;;;;;;;AA6BA,MAAMsB,gBAAgB;AAEtB,SAASC,QAAQC,OAAyBC,KAAK;CAC7C,IAAI,EACFC,UACAC,QACAP,YAAY,MACZQ,SACAC,YACAC,WACAC,QACAC,WACAC,UACAC,cAAc,UACZV;CACJ,IAAI,CAACW,QAAQC,aAAa7B,SAAS,CAACoB,OAAO;AAE3C,KAAIA,UAAUQ,OACZC,WAAU,MAAM;CAalB,MAAMC,UAAU/B,OAAO,CAAC,CAACqB,OAAO;AAEhC,KAAIU,QAAQC,YAAY,CAAC,CAACX,QAAQ;AAChCU,UAAQC,UAAU,CAAC,CAACX;AAEpB,MAAI,CAACA,OAAQhB,wBAAuBW,gBAAgB,IAAI;;CAG1D,IAAI,EAAEiB,SAAS7B,iBAAiB,EAAE,CAAU;CAE5C,IAAI8B,oBAAoBnC,aACrBoC,UAAyB;AACxB,UAAQA,OAAR;GACE,KAAK;AACHL,cAAU,MAAM;AAChBR,eAAW;AACXC,kBAAc;AACd;GACF,KAAK;AACHC,iBAAa;AACb;GACF,KAAK;AACHC,cAAU;AACVC,iBAAa;AACb;GACF,KAAK;AACHI,cAAU,KAAK;AACfH,gBAAY;AACZ;;IAGN;EAACL;EAASC;EAAYC;EAAWC;EAAQC;EAAWC;EACtD,CAAC;AAID,KAAI,EAFeN,UAAU,CAACQ,SAG5B;MAAI,CAACD,YACH,QAAO;;AAmDX,QAAO1B,aACL,oBAAC,gCA/CD,oBAAC;EAAciB;YACb,oBAAC;GACC,SAAS,CAAC,CAACE;GACX,iBAAiBO;GACjB,UAAUZ;GACV,eAAekB;cAEb,EAAEC,OAAAA,SAAOG,SAASC,gBAAgB;AAClC,WACE,oBAAC,sBAAsB;KACrB,OAAO,EAAEC,iBAAiBL,SAAwB;eAEjDxC,SAAS8C,IACRrB,WACCsB,UACCA,SACA9C,aACE8C,OACA;MACErB,QAAQiB;MACRE,iBAAiBL;MAQjB,6BAA6BI,aAAaI;MAC3C,CAEP,CAAC;MAC8B;;IAGpB;GAEtB,GAUoD,EACnD7B,aAAamB,QAAQW,SAASC,KAC/B;;AAGH,IAAIC,WAAWjD,WAAWoB,QAAQ;AAElC6B,SAASC,cAAc"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.190.1 | Cube Dev Team */
|
|
2
2
|
import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
|
|
3
|
-
import { _Overlay } from "./Overlay.js";
|
|
4
3
|
import { useOverlayEscapeGuard } from "../../../utils/react/useOverlayEscapeGuard.js";
|
|
4
|
+
import { _Overlay } from "./Overlay.js";
|
|
5
5
|
import { c } from "react-compiler-runtime";
|
|
6
6
|
import { tasty } from "@tenphi/tasty";
|
|
7
7
|
import { forwardRef } from "react";
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.190.1 | Cube Dev Team */
|
|
2
2
|
import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
|
|
3
|
+
import { useOverlayEscapeGuard } from "../../../utils/react/useOverlayEscapeGuard.js";
|
|
3
4
|
import { _Overlay } from "./Overlay.js";
|
|
4
5
|
import { _Underlay } from "./Underlay.js";
|
|
5
6
|
import { OVERLAY_WRAPPER_STYLES } from "./Modal.js";
|
|
@@ -80,7 +81,8 @@ function Tray(props, ref) {
|
|
|
80
81
|
$[10] = shouldCloseOnInteractOutside;
|
|
81
82
|
$[11] = t0;
|
|
82
83
|
} else t0 = $[11];
|
|
83
|
-
const { overlayProps, underlayProps } = useOverlay(t0, domRef);
|
|
84
|
+
const { overlayProps: rawOverlayProps, underlayProps } = useOverlay(t0, domRef);
|
|
85
|
+
const overlayProps = useOverlayEscapeGuard(rawOverlayProps, props.isOpen);
|
|
84
86
|
let t1;
|
|
85
87
|
if ($[12] !== underlayProps) {
|
|
86
88
|
t1 = /* @__PURE__ */ jsx(_Underlay, { ...underlayProps });
|