@cube-dev/ui-kit 0.0.0-canary-bfa4c6d → 0.0.0-canary-74176ba
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 +10 -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 +2 -2
- 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 +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 +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.d.ts +5 -4
- package/dist/components/actions/Menu/Menu.js +3 -3
- package/dist/components/actions/Menu/Menu.js.map +1 -1
- package/dist/components/actions/Menu/MenuCollectionItem.d.ts +16 -0
- package/dist/components/actions/Menu/MenuCollectionItem.js +32 -0
- package/dist/components/actions/Menu/MenuCollectionItem.js.map +1 -0
- package/dist/components/actions/Menu/MenuItem.js +335 -82
- package/dist/components/actions/Menu/MenuItem.js.map +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/index.d.ts +1 -0
- package/dist/components/actions/Menu/styled.js +1 -1
- package/dist/components/actions/actions-run.js +1 -1
- package/dist/components/actions/index.d.ts +1 -0
- package/dist/components/actions/index.js +1 -1
- package/dist/components/actions/use-action.js +60 -36
- 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 +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.d.ts +28 -28
- 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.d.ts +5 -5
- package/dist/components/content/Item/Item.js +63 -10
- package/dist/components/content/Item/Item.js.map +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/LayoutPanelTransition.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/ItemTable/use-item-table-column-widths.js +1 -1
- package/dist/components/data/ItemTable/use-item-table-drag-drop.js +1 -1
- package/dist/components/data/ItemTable/use-item-table-pagination.js +1 -1
- package/dist/components/data/ItemTable/use-item-table-selection.js +1 -1
- package/dist/components/data/ItemTable/use-item-table-sort.js +1 -1
- package/dist/components/data/ItemTable/use-item-table-tree-model.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/TreeGridTable.js +1 -1
- package/dist/components/data/TableBase/column-header.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 +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/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-menu.js +1 -1
- 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-tooltip-refresh.js +1 -1
- package/dist/components/data/TableBase/use-table-tree-state.js +1 -1
- package/dist/components/fields/Checkbox/Checkbox.js +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 +1 -1
- package/dist/components/fields/ComboBox/ComboBox.js +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 +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 +1 -1
- package/dist/components/fields/ListBox/optionId.js +1 -1
- package/dist/components/fields/ListBoxPopover/ListBoxPopover.js +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.d.ts +24 -24
- package/dist/components/fields/RadioGroup/Radio.js +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 +1 -1
- package/dist/components/fields/SearchInput/SearchInput.js +1 -1
- package/dist/components/fields/Select/Select.js +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 +1 -1
- package/dist/components/fields/TagInput/TagInput.js +1 -1
- package/dist/components/fields/TagInput/TagList.js +1 -1
- package/dist/components/fields/TagInput/useActiveOption.js +1 -1
- package/dist/components/fields/TagInput/useTagError.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 +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.js +1 -1
- package/dist/components/helpers/IconSwitch/IconSwitch.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/BoardDragActiveProvider.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.js +1 -1
- package/dist/components/overlays/AlertDialog/AlertDialogZone.js +1 -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 +1 -1
- package/dist/components/overlays/Modal/OpenTransitionContext.js +1 -1
- package/dist/components/overlays/Modal/Overlay.js +1 -1
- package/dist/components/overlays/Modal/Popover.js +1 -1
- package/dist/components/overlays/Modal/Tray.js +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 +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 +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.d.ts +2 -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 +2 -2
- package/dist/provider.js.map +1 -1
- package/dist/providers/TrackingProvider.js +1 -1
- package/dist/providers/navigation-url.js +11 -0
- package/dist/providers/navigation-url.js.map +1 -0
- package/dist/providers/navigationAdapter.default.js +1 -1
- package/dist/providers/use-navigation.js +19 -0
- package/dist/providers/use-navigation.js.map +1 -0
- 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.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 +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/overlayKeyPropagation.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/Usage.md +4 -0
- package/docs/components/actions/Menu.md +29 -1
- package/package.json +1 -1
package/dist/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
# @cube-dev/ui-kit
|
|
2
2
|
|
|
3
|
+
## 0.193.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [#1500](https://github.com/cube-js/cube-ui-kit/pull/1500) [`260b5b01`](https://github.com/cube-js/cube-ui-kit/commit/260b5b01c1c98771d8d1edb8527fdbf93a1781b7) Thanks [@tenphi](https://github.com/tenphi)! - Keep a disabled `Radio` or `Radio.Button` focusable while its tooltip can open, so the keyboard can open the tooltip as the mouse does: it is usually the reason the option is disabled. Such a radio is marked `aria-disabled` and stays inert: a disabled group whose options all have tooltips keeps one tab stop, the arrow keys stop on a disabled option without selecting it, `Tab` leaves the group from it, and `Space` and clicks change nothing. Not being natively disabled, a selected one is part of a plain `<form>`'s submitted data. A disabled radio without a tooltip is natively disabled, as before. The color-space tabs of a read-only or loading `ColorPicker` panel, and of a read-only `ColorInput` panel, are such radios: the keyboard now reaches them and their hints.
|
|
8
|
+
|
|
9
|
+
- [#1500](https://github.com/cube-js/cube-ui-kit/pull/1500) [`260b5b01`](https://github.com/cube-js/cube-ui-kit/commit/260b5b01c1c98771d8d1edb8527fdbf93a1781b7) Thanks [@tenphi](https://github.com/tenphi)! - Let `Tab` and `Shift+Tab` wrap inside a Dialog from a `FilterPicker` or `Picker` trigger: focus on a trigger placed first or last used to stay put instead of moving to the other end. `Tab` from a `ListBox` inside a Dialog wraps the same way, and `Tab` from a `Tree` row checkbox now leaves the tree, as it does from a row. `Enter`, arrow keys and typeahead still stay with the control, and `Escape` still closes an open popup before the Dialog.
|
|
10
|
+
|
|
11
|
+
- [#1500](https://github.com/cube-js/cube-ui-kit/pull/1500) [`260b5b01`](https://github.com/cube-js/cube-ui-kit/commit/260b5b01c1c98771d8d1edb8527fdbf93a1781b7) Thanks [@tenphi](https://github.com/tenphi)! - Keep the `radiogroup` role and name on a `RadioGroup`, `Radio.ButtonGroup` or `Radio.Tabs` that has an `aria-label` and no visible `label`. Such a group lost its role and name, `aria-orientation`, its `onFocus` and `onBlur`, and `Shift+Tab` entry at its last radio when nothing is selected. With a visible label too, the `radiogroup` role and the group's ARIA and `data-*` props now sit on the element that holds the radios instead of the field wrapper. A role query or a `data-qa` given to a labelled group therefore finds the group rather than the whole field, and a `fieldProps` given to the group now reaches the field wrapper.
|
|
12
|
+
|
|
3
13
|
## 0.193.0
|
|
4
14
|
|
|
5
15
|
### Minor Changes
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-74176ba | Cube Dev Team */
|
|
2
2
|
import { deprecationWarning } from "../../utils/warnings.js";
|
|
3
3
|
import { c } from "react/compiler-runtime";
|
|
4
4
|
import React, { useEffect } from "react";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-74176ba | 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 { useRef } from "react";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-74176ba | Cube Dev Team */
|
|
2
2
|
import { useEvent } from "../use-event.js";
|
|
3
3
|
import { Timer } from "./timer.js";
|
|
4
4
|
import { c } from "react/compiler-runtime";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-74176ba | Cube Dev Team */
|
|
2
2
|
import { useEvent } from "./use-event.js";
|
|
3
3
|
import { warn } from "../../utils/warnings.js";
|
|
4
4
|
import { useRef } from "react";
|
package/dist/components/Block.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-74176ba | Cube Dev Team */
|
|
2
2
|
import { extractStyles } from "../utils/styles.js";
|
|
3
3
|
import { c } from "react/compiler-runtime";
|
|
4
4
|
import { CONTAINER_STYLES, filterBaseProps, tasty } from "@tenphi/tasty";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-74176ba | Cube Dev Team */
|
|
2
2
|
import { ItemAction } from "./actions/ItemAction/ItemAction.js";
|
|
3
3
|
import { ItemBadge } from "./content/ItemBadge/ItemBadge.js";
|
|
4
4
|
import { Item } from "react-stately";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-74176ba | Cube Dev Team */
|
|
2
2
|
import { mergeStyleLayers } from "../utils/styles.js";
|
|
3
3
|
import { usePaletteValue } from "../tokens/palette-config.js";
|
|
4
4
|
import { getTokens } from "../tokens/all-tokens.js";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-74176ba | Cube Dev Team */
|
|
2
2
|
import { useCombinedRefs } from "../utils/react/useCombinedRefs.js";
|
|
3
3
|
import { filterBaseProps, tasty } from "@tenphi/tasty";
|
|
4
4
|
import { forwardRef, useCallback, useEffect, useState } from "react";
|
package/dist/components/Root.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-74176ba | Cube Dev Team */
|
|
2
2
|
import { extractStyles } from "../utils/styles.js";
|
|
3
3
|
import { AMBIENT_PREDEFINED_STATES } from "../utils/react/useScheme.js";
|
|
4
4
|
import { EventBusProvider } from "../utils/react/useEventBus.js";
|
|
5
5
|
import { PortalProvider } from "./portal/PortalProvider.js";
|
|
6
6
|
import { TASTY_VERSION, VERSION } from "../version.js";
|
|
7
|
-
import { Provider } from "../provider.js";
|
|
8
7
|
import { TrackingProvider } from "../providers/TrackingProvider.js";
|
|
8
|
+
import { Provider } from "../provider.js";
|
|
9
9
|
import { I18nProvider as I18nProvider$1 } from "../i18n/I18nProvider.js";
|
|
10
10
|
import { setPaletteConfig } from "../tokens/palette-config.js";
|
|
11
11
|
import { GlobalStyles } from "./GlobalStyles.js";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-74176ba | Cube Dev Team */
|
|
2
2
|
import { extractStyles } from "../../../utils/styles.js";
|
|
3
3
|
import { useAction } from "../use-action.js";
|
|
4
4
|
import { c } from "react/compiler-runtime";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-74176ba | Cube Dev Team */
|
|
2
2
|
import { useEvent } from "../../../_internal/hooks/use-event.js";
|
|
3
3
|
import { _Item } from "../../content/Item/Item.js";
|
|
4
4
|
import { useI18n } from "../../../i18n/useI18n.js";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-74176ba | Cube Dev Team */
|
|
2
2
|
import { extractStyles } from "../../../utils/styles.js";
|
|
3
3
|
import { getDisabledElementProps, omitActivationEventProps } from "../../../utils/react/disabledProps.js";
|
|
4
4
|
import { mergeProps } from "../../../utils/react/mergeProps.js";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-74176ba | Cube Dev Team */
|
|
2
2
|
import { useSlotProps } from "../../../utils/react/Slots.js";
|
|
3
3
|
import { Space } from "../../layout/Space.js";
|
|
4
4
|
import { c } from "react/compiler-runtime";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-74176ba | Cube Dev Team */
|
|
2
2
|
import { extractStyles, mergeStyleLayers } from "../../../utils/styles.js";
|
|
3
3
|
import { mergeProps } from "../../../utils/react/mergeProps.js";
|
|
4
4
|
import { ButtonSplitContext } from "./context.js";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-74176ba | Cube Dev Team */
|
|
2
2
|
import { extractStyles, mergeStyleLayers } from "../../../utils/styles.js";
|
|
3
3
|
import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
|
|
4
4
|
import { LoadingIcon } from "../../../icons/LoadingIcon.js";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-74176ba | Cube Dev Team */
|
|
2
2
|
import { getDisabledElementProps, omitActivationEventProps } from "../../../utils/react/disabledProps.js";
|
|
3
3
|
import { mergeProps } from "../../../utils/react/mergeProps.js";
|
|
4
4
|
import { TooltipProvider } from "../../overlays/Tooltip/TooltipProvider.js";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-74176ba | Cube Dev Team */
|
|
2
2
|
import { c } from "react/compiler-runtime";
|
|
3
3
|
import { createContext, useContext } from "react";
|
|
4
4
|
import { jsx } from "react/jsx-runtime";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-74176ba | Cube Dev Team */
|
|
2
2
|
import { DisplayTransition } from "../helpers/DisplayTransition/DisplayTransition.js";
|
|
3
3
|
import { ITEM_RESTING_COLOR_VARIANTS, ROW_STATE_ALIASES, resolveItemVariant } from "../../data/item-themes.js";
|
|
4
4
|
import { ItemActionProvider } from "./ItemActionContext.js";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-74176ba | Cube Dev Team */
|
|
2
2
|
import { mergeProps } from "../../../utils/react/mergeProps.js";
|
|
3
3
|
import { mergeRefs } from "../../../utils/react/useCombinedRefs.js";
|
|
4
4
|
import { useDismissParentPopover } from "../../../utils/react/usePopoverSync.js";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-74176ba | Cube Dev Team */
|
|
2
2
|
import { Button } from "../Button/Button.js";
|
|
3
3
|
import { c } from "react/compiler-runtime";
|
|
4
4
|
import { forwardRef } from "react";
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
|
|
2
|
+
import { CubeMenuItemProps, _MenuCollectionItem } from "./MenuCollectionItem.js";
|
|
2
3
|
import { _MenuTrigger } from "./MenuTrigger.js";
|
|
3
4
|
import { SubMenuTrigger } from "./SubMenuTrigger.js";
|
|
4
5
|
import { CubeItemBadgeProps } from "../../content/ItemBadge/ItemBadge.js";
|
|
5
6
|
import { CubeItemActionProps } from "../ItemAction/ItemAction.js";
|
|
6
7
|
import "../index.js";
|
|
7
|
-
import { CubeCollectionItemProps
|
|
8
|
+
import { CubeCollectionItemProps } from "../../CollectionItem.js";
|
|
8
9
|
import "../../../index.js";
|
|
9
10
|
import { BasePropsWithoutChildren, ContainerStyleProps, Styles } from "@tenphi/tasty";
|
|
10
11
|
import React, { ReactElement, ReactNode } from "react";
|
|
@@ -51,15 +52,15 @@ interface CubeMenuProps<T> extends BasePropsWithoutChildren, ContainerStyleProps
|
|
|
51
52
|
type SectionComponent = typeof Section;
|
|
52
53
|
declare const Section$1: SectionComponent;
|
|
53
54
|
declare const __Menu: (<T>(props: CubeMenuProps<T> & React.RefAttributes<HTMLUListElement>) => ReactElement) & {
|
|
54
|
-
Item: typeof
|
|
55
|
+
Item: typeof _MenuCollectionItem;
|
|
55
56
|
Section: typeof Section$1;
|
|
56
57
|
SubMenuTrigger: typeof SubMenuTrigger;
|
|
57
58
|
Trigger: typeof _MenuTrigger;
|
|
58
59
|
} & {
|
|
59
|
-
Item: (<T>(props: CubeCollectionItemProps<T>) => ReactElement) & {
|
|
60
|
+
Item: (<T>(_props: CubeMenuItemProps<T>) => ReactElement | null) & Pick<(<T>(props: CubeCollectionItemProps<T>) => ReactElement) & {
|
|
60
61
|
Action: React.ForwardRefExoticComponent<CubeItemActionProps & React.RefAttributes<_react_types_shared0.FocusableRefValue<HTMLElement, HTMLElement>>>;
|
|
61
62
|
Badge: React.ForwardRefExoticComponent<CubeItemBadgeProps & React.RefAttributes<HTMLDivElement>>;
|
|
62
|
-
}
|
|
63
|
+
}, "Action" | "Badge">;
|
|
63
64
|
Section: <T>(props: react_stately0.SectionProps<T>) => React.JSX.Element;
|
|
64
65
|
SubMenuTrigger: typeof SubMenuTrigger;
|
|
65
66
|
Trigger: React.ForwardRefExoticComponent<Omit<react_aria0.AriaMenuTriggerProps, "children"> & react_aria0.PositionProps & {
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-74176ba | Cube Dev Team */
|
|
2
2
|
import { extractStyles } from "../../../utils/styles.js";
|
|
3
3
|
import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
|
|
4
|
-
import { _CollectionItem } from "../../CollectionItem.js";
|
|
5
4
|
import { useMenuContext } from "./context.js";
|
|
5
|
+
import { _MenuCollectionItem } from "./MenuCollectionItem.js";
|
|
6
6
|
import { MenuItem } from "./MenuItem.js";
|
|
7
7
|
import { StyledDivider, StyledFooter, StyledHeader, StyledMenu, StyledMenuWrapper } from "./styled.js";
|
|
8
8
|
import { MenuSection } from "./MenuSection.js";
|
|
@@ -166,7 +166,7 @@ function _temp(key) {
|
|
|
166
166
|
const _Menu = React.forwardRef(Menu);
|
|
167
167
|
const Section$1 = Object.assign(Section, { displayName: "Section" });
|
|
168
168
|
const __Menu = Object.assign(_Menu, {
|
|
169
|
-
Item:
|
|
169
|
+
Item: _MenuCollectionItem,
|
|
170
170
|
Section: Section$1,
|
|
171
171
|
SubMenuTrigger,
|
|
172
172
|
Trigger: _MenuTrigger,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Menu.js","names":["useObjectRef","useSyncRef","CollectionChildren","FocusStrategy","ItemProps","Key","BasePropsWithoutChildren","CONTAINER_STYLES","ContainerStyleProps","filterBaseProps","Styles","React","ReactElement","ReactNode","Ref","AriaMenuProps","useMenu","Section","BaseSection","useTreeState","mergeProps","extractStyles","CollectionItem","useMenuContext","MenuItem","MenuSection","MenuTrigger","StyledDivider","StyledFooter","StyledHeader","StyledMenu","StyledMenuWrapper","SubMenuTrigger","CubeMenuProps","Omit","T","children","onAction","key","header","footer","menuStyles","headerStyles","footerStyles","styles","itemStyles","sectionStyles","sectionHeadingStyles","shouldFocusWrap","autoFocus","shouldUseVirtualFocus","size","selectedKeys","defaultSelectedKeys","onSelectionChange","keys","Menu","props","ref","$","_c","t0","qa","rest","undefined","domRef","contextProps","ariaSelectedKeys","Set","ariaDefaultSelectedKeys","handleSelectionChange","allKeys","Array","from","state","collection","getKeys","map","_temp","_temp2","t1","key_1","completeProps","collectionItems","hasSections","some","_temp3","menuProps","t2","t3","mods","popover","t4","t5","t6","wrapperMods","menuMods","sections","renderedItems","isFirstSection","forEach","item_0","item","type","push","String","menuItem","wrapper","cloneElement","t7","t8","t9","Record","role","key_0","_Menu","forwardRef","RefAttributes","HTMLUListElement","SectionComponent","Object","assign","displayName","__MenuComponent","Item","Trigger","__Menu"],"sources":["../../../../src/components/actions/Menu/Menu.tsx"],"sourcesContent":["import { useObjectRef, useSyncRef } from '@react-aria/utils';\nimport {\n CollectionChildren,\n FocusStrategy,\n ItemProps,\n Key,\n} from '@react-types/shared';\nimport {\n BasePropsWithoutChildren,\n CONTAINER_STYLES,\n ContainerStyleProps,\n filterBaseProps,\n Styles,\n} from '@tenphi/tasty';\nimport React, { ReactElement, ReactNode, Ref } from 'react';\nimport { AriaMenuProps, useMenu } from 'react-aria';\nimport { Section as BaseSection, useTreeState } from 'react-stately';\n\nimport { mergeProps } from '../../../utils/react';\nimport { extractStyles } from '../../../utils/styles';\nimport { CollectionItem } from '../../CollectionItem';\n\nimport { useMenuContext } from './context';\nimport { MenuItem } from './MenuItem';\nimport { MenuSection } from './MenuSection';\nimport { MenuTrigger } from './MenuTrigger';\nimport {\n StyledDivider,\n StyledFooter,\n StyledHeader,\n StyledMenu,\n StyledMenuWrapper,\n} from './styled';\nimport { SubMenuTrigger } from './SubMenuTrigger';\n\nexport interface CubeMenuProps<T>\n extends BasePropsWithoutChildren,\n ContainerStyleProps,\n Omit<\n AriaMenuProps<T>,\n | 'children'\n | 'onAction'\n | 'selectedKeys'\n | 'defaultSelectedKeys'\n | 'onSelectionChange'\n > {\n children?: ReactNode | CollectionChildren<T>;\n onAction?: (key: Key) => void;\n // @deprecated\n header?: ReactNode;\n footer?: ReactNode;\n menuStyles?: Styles;\n headerStyles?: Styles;\n footerStyles?: Styles;\n styles?: Styles;\n itemStyles?: Styles;\n sectionStyles?: Styles;\n sectionHeadingStyles?: Styles;\n /**\n * Whether keyboard navigation should wrap around when reaching the start/end of the collection.\n * This directly maps to the `shouldFocusWrap` option supported by React-Aria's `useMenu` hook.\n */\n shouldFocusWrap?: boolean;\n\n /**\n * Whether the menu should automatically receive focus when it mounts.\n * This directly maps to the `autoFocus` option supported by React-Aria's `useMenu` hook.\n */\n autoFocus?: boolean | FocusStrategy;\n shouldUseVirtualFocus?: boolean;\n\n /** Size of the menu items */\n size?: 'medium' | 'large' | (string & {});\n\n /** Currently selected keys (controlled) */\n selectedKeys?: string[];\n /** Initially selected keys (uncontrolled) */\n defaultSelectedKeys?: string[];\n /** Handler for selection changes */\n onSelectionChange?: (keys: string[]) => void;\n}\n\nfunction Menu<T extends object>(\n props: CubeMenuProps<T>,\n ref: Ref<HTMLUListElement>,\n) {\n const {\n header,\n footer,\n menuStyles,\n headerStyles,\n footerStyles,\n itemStyles,\n sectionStyles,\n sectionHeadingStyles,\n size = 'medium',\n qa,\n selectedKeys,\n defaultSelectedKeys,\n onSelectionChange,\n onAction,\n ...rest\n } = props;\n const domRef = useObjectRef(ref);\n const contextProps = useMenuContext();\n\n // Convert string[] to Set<Key> for React Aria compatibility\n const ariaSelectedKeys = selectedKeys ? new Set(selectedKeys) : undefined;\n const ariaDefaultSelectedKeys = defaultSelectedKeys\n ? new Set(defaultSelectedKeys)\n : undefined;\n\n const handleSelectionChange = onSelectionChange\n ? (keys: any) => {\n if (keys === 'all') {\n // Handle 'all' selection case - collect all available keys\n const allKeys = Array.from(state.collection.getKeys()).map(\n (key: any) => String(key),\n );\n onSelectionChange(allKeys);\n } else if (keys instanceof Set) {\n onSelectionChange(Array.from(keys).map((key) => String(key)));\n } else {\n onSelectionChange([]);\n }\n }\n : undefined;\n\n const completeProps = mergeProps(contextProps, rest, {\n onAction: onAction ? (key: Key) => onAction(key) : undefined,\n selectedKeys: ariaSelectedKeys,\n defaultSelectedKeys: ariaDefaultSelectedKeys,\n onSelectionChange: handleSelectionChange,\n });\n\n // Props used for collection building.\n const state = useTreeState({\n ...completeProps,\n children: completeProps.children as CollectionChildren<T>,\n });\n const collectionItems = [...state.collection];\n const hasSections = collectionItems.some((item) => item.type === 'section');\n\n const { menuProps } = useMenu(completeProps, state, domRef);\n const styles = extractStyles(completeProps, CONTAINER_STYLES);\n\n const wrapperMods = {\n popover: completeProps.mods?.popover,\n footer: !!footer,\n header: !!header,\n };\n\n const menuMods = {\n sections: hasSections,\n };\n\n // Sync the ref stored in the context object with the menu's DOM ref.\n // `useSyncRef` from @react-aria/utils expects the context object as the\n // first argument to keep it up-to-date, and a ref object as the second.\n useSyncRef(contextProps, domRef);\n\n const renderedItems: React.ReactNode[] = [];\n let isFirstSection = true;\n\n collectionItems.forEach((item) => {\n if (item.type === 'section') {\n if (!isFirstSection) {\n renderedItems.push(\n <StyledDivider\n key={`divider-${String(item.key)}`}\n role=\"separator\"\n aria-orientation=\"horizontal\"\n />,\n );\n }\n\n renderedItems.push(\n <MenuSection\n key={item.key}\n item={item}\n state={state}\n styles={sectionStyles}\n itemStyles={itemStyles}\n headingStyles={sectionHeadingStyles}\n size={size}\n />,\n );\n\n isFirstSection = false;\n return;\n }\n\n let menuItem = (\n <MenuItem\n key={item.key}\n item={item}\n state={state}\n styles={itemStyles}\n size={size}\n />\n );\n\n // `MenuItem` renders the item's `tooltip` itself — wrapping it in a\n // second provider makes the two tooltips close each other.\n\n // Apply custom wrapper if provided\n if (item.props?.wrapper) {\n menuItem = item.props.wrapper(menuItem);\n } else if ((item as any).wrapper) {\n // Handle wrapper from collection nodes (e.g., SubMenuTrigger)\n menuItem = (item as any).wrapper(menuItem);\n }\n\n // Ensure every child has a stable key, even if the wrapper component didn't set one.\n renderedItems.push(React.cloneElement(menuItem, { key: item.key }));\n });\n\n return (\n <StyledMenuWrapper\n qa={qa}\n styles={styles}\n mods={wrapperMods}\n {...(filterBaseProps(completeProps) as Record<string, unknown>)}\n >\n {header ? (\n <StyledHeader data-size={size} styles={headerStyles}>\n {header}\n </StyledHeader>\n ) : (\n <div role=\"presentation\" />\n )}\n <StyledMenu\n {...mergeProps(\n {\n styles: menuStyles,\n 'data-size': size,\n mods: menuMods,\n },\n menuProps,\n )}\n ref={domRef}\n role={menuProps.role ?? 'menu'}\n >\n {renderedItems}\n </StyledMenu>\n {footer ? (\n <StyledFooter data-size={size} styles={footerStyles}>\n {footer}\n </StyledFooter>\n ) : (\n <div role=\"presentation\" />\n )}\n </StyledMenuWrapper>\n );\n}\n\n// forwardRef doesn't support generic parameters, so cast the result to the correct type\n// https://stackoverflow.com/questions/58469229/react-with-typescript-generics-while-using-react-forwardref\nconst _Menu = React.forwardRef(Menu) as <T>(\n props: CubeMenuProps<T> & React.RefAttributes<HTMLUListElement>,\n) => ReactElement;\n\ntype SectionComponent = typeof BaseSection;\n\nconst Section = Object.assign(BaseSection, {\n displayName: 'Section',\n}) as SectionComponent;\n\ntype __MenuComponent = typeof _Menu & {\n Item: typeof CollectionItem;\n Section: typeof Section;\n SubMenuTrigger: typeof SubMenuTrigger;\n Trigger: typeof MenuTrigger;\n};\n\nconst __Menu = Object.assign(_Menu as __MenuComponent, {\n Item: CollectionItem,\n Section,\n SubMenuTrigger,\n Trigger: MenuTrigger,\n displayName: 'Menu',\n});\n\n__Menu.displayName = 'Menu';\n\nexport { __Menu as Menu };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Menu.js","names":["useObjectRef","useSyncRef","CollectionChildren","FocusStrategy","ItemProps","Key","BasePropsWithoutChildren","CONTAINER_STYLES","ContainerStyleProps","filterBaseProps","Styles","React","ReactElement","ReactNode","Ref","AriaMenuProps","useMenu","Section","BaseSection","useTreeState","mergeProps","extractStyles","useMenuContext","MenuCollectionItem","MenuItem","MenuSection","MenuTrigger","StyledDivider","StyledFooter","StyledHeader","StyledMenu","StyledMenuWrapper","SubMenuTrigger","CubeMenuProps","Omit","T","children","onAction","key","header","footer","menuStyles","headerStyles","footerStyles","styles","itemStyles","sectionStyles","sectionHeadingStyles","shouldFocusWrap","autoFocus","shouldUseVirtualFocus","size","selectedKeys","defaultSelectedKeys","onSelectionChange","keys","Menu","props","ref","$","_c","t0","qa","rest","undefined","domRef","contextProps","ariaSelectedKeys","Set","ariaDefaultSelectedKeys","handleSelectionChange","allKeys","Array","from","state","collection","getKeys","map","_temp","_temp2","t1","key_1","completeProps","collectionItems","hasSections","some","_temp3","menuProps","t2","t3","mods","popover","t4","t5","t6","wrapperMods","menuMods","sections","renderedItems","isFirstSection","forEach","item_0","item","type","push","String","menuItem","wrapper","cloneElement","t7","t8","t9","Record","role","key_0","_Menu","forwardRef","RefAttributes","HTMLUListElement","SectionComponent","Object","assign","displayName","__MenuComponent","Item","Trigger","__Menu"],"sources":["../../../../src/components/actions/Menu/Menu.tsx"],"sourcesContent":["import { useObjectRef, useSyncRef } from '@react-aria/utils';\nimport {\n CollectionChildren,\n FocusStrategy,\n ItemProps,\n Key,\n} from '@react-types/shared';\nimport {\n BasePropsWithoutChildren,\n CONTAINER_STYLES,\n ContainerStyleProps,\n filterBaseProps,\n Styles,\n} from '@tenphi/tasty';\nimport React, { ReactElement, ReactNode, Ref } from 'react';\nimport { AriaMenuProps, useMenu } from 'react-aria';\nimport { Section as BaseSection, useTreeState } from 'react-stately';\n\nimport { mergeProps } from '../../../utils/react';\nimport { extractStyles } from '../../../utils/styles';\n\nimport { useMenuContext } from './context';\nimport { MenuCollectionItem } from './MenuCollectionItem';\nimport { MenuItem } from './MenuItem';\nimport { MenuSection } from './MenuSection';\nimport { MenuTrigger } from './MenuTrigger';\nimport {\n StyledDivider,\n StyledFooter,\n StyledHeader,\n StyledMenu,\n StyledMenuWrapper,\n} from './styled';\nimport { SubMenuTrigger } from './SubMenuTrigger';\n\nexport interface CubeMenuProps<T>\n extends BasePropsWithoutChildren,\n ContainerStyleProps,\n Omit<\n AriaMenuProps<T>,\n | 'children'\n | 'onAction'\n | 'selectedKeys'\n | 'defaultSelectedKeys'\n | 'onSelectionChange'\n > {\n children?: ReactNode | CollectionChildren<T>;\n onAction?: (key: Key) => void;\n // @deprecated\n header?: ReactNode;\n footer?: ReactNode;\n menuStyles?: Styles;\n headerStyles?: Styles;\n footerStyles?: Styles;\n styles?: Styles;\n itemStyles?: Styles;\n sectionStyles?: Styles;\n sectionHeadingStyles?: Styles;\n /**\n * Whether keyboard navigation should wrap around when reaching the start/end of the collection.\n * This directly maps to the `shouldFocusWrap` option supported by React-Aria's `useMenu` hook.\n */\n shouldFocusWrap?: boolean;\n\n /**\n * Whether the menu should automatically receive focus when it mounts.\n * This directly maps to the `autoFocus` option supported by React-Aria's `useMenu` hook.\n */\n autoFocus?: boolean | FocusStrategy;\n shouldUseVirtualFocus?: boolean;\n\n /** Size of the menu items */\n size?: 'medium' | 'large' | (string & {});\n\n /** Currently selected keys (controlled) */\n selectedKeys?: string[];\n /** Initially selected keys (uncontrolled) */\n defaultSelectedKeys?: string[];\n /** Handler for selection changes */\n onSelectionChange?: (keys: string[]) => void;\n}\n\nfunction Menu<T extends object>(\n props: CubeMenuProps<T>,\n ref: Ref<HTMLUListElement>,\n) {\n const {\n header,\n footer,\n menuStyles,\n headerStyles,\n footerStyles,\n itemStyles,\n sectionStyles,\n sectionHeadingStyles,\n size = 'medium',\n qa,\n selectedKeys,\n defaultSelectedKeys,\n onSelectionChange,\n onAction,\n ...rest\n } = props;\n const domRef = useObjectRef(ref);\n const contextProps = useMenuContext();\n\n // Convert string[] to Set<Key> for React Aria compatibility\n const ariaSelectedKeys = selectedKeys ? new Set(selectedKeys) : undefined;\n const ariaDefaultSelectedKeys = defaultSelectedKeys\n ? new Set(defaultSelectedKeys)\n : undefined;\n\n const handleSelectionChange = onSelectionChange\n ? (keys: any) => {\n if (keys === 'all') {\n // Handle 'all' selection case - collect all available keys\n const allKeys = Array.from(state.collection.getKeys()).map(\n (key: any) => String(key),\n );\n onSelectionChange(allKeys);\n } else if (keys instanceof Set) {\n onSelectionChange(Array.from(keys).map((key) => String(key)));\n } else {\n onSelectionChange([]);\n }\n }\n : undefined;\n\n const completeProps = mergeProps(contextProps, rest, {\n onAction: onAction ? (key: Key) => onAction(key) : undefined,\n selectedKeys: ariaSelectedKeys,\n defaultSelectedKeys: ariaDefaultSelectedKeys,\n onSelectionChange: handleSelectionChange,\n });\n\n // Props used for collection building.\n const state = useTreeState({\n ...completeProps,\n children: completeProps.children as CollectionChildren<T>,\n });\n const collectionItems = [...state.collection];\n const hasSections = collectionItems.some((item) => item.type === 'section');\n\n const { menuProps } = useMenu(completeProps, state, domRef);\n const styles = extractStyles(completeProps, CONTAINER_STYLES);\n\n const wrapperMods = {\n popover: completeProps.mods?.popover,\n footer: !!footer,\n header: !!header,\n };\n\n const menuMods = {\n sections: hasSections,\n };\n\n // Sync the ref stored in the context object with the menu's DOM ref.\n // `useSyncRef` from @react-aria/utils expects the context object as the\n // first argument to keep it up-to-date, and a ref object as the second.\n useSyncRef(contextProps, domRef);\n\n const renderedItems: React.ReactNode[] = [];\n let isFirstSection = true;\n\n collectionItems.forEach((item) => {\n if (item.type === 'section') {\n if (!isFirstSection) {\n renderedItems.push(\n <StyledDivider\n key={`divider-${String(item.key)}`}\n role=\"separator\"\n aria-orientation=\"horizontal\"\n />,\n );\n }\n\n renderedItems.push(\n <MenuSection\n key={item.key}\n item={item}\n state={state}\n styles={sectionStyles}\n itemStyles={itemStyles}\n headingStyles={sectionHeadingStyles}\n size={size}\n />,\n );\n\n isFirstSection = false;\n return;\n }\n\n let menuItem = (\n <MenuItem\n key={item.key}\n item={item}\n state={state}\n styles={itemStyles}\n size={size}\n />\n );\n\n // `MenuItem` renders the item's `tooltip` itself — wrapping it in a\n // second provider makes the two tooltips close each other.\n\n // Apply custom wrapper if provided\n if (item.props?.wrapper) {\n menuItem = item.props.wrapper(menuItem);\n } else if ((item as any).wrapper) {\n // Handle wrapper from collection nodes (e.g., SubMenuTrigger)\n menuItem = (item as any).wrapper(menuItem);\n }\n\n // Ensure every child has a stable key, even if the wrapper component didn't set one.\n renderedItems.push(React.cloneElement(menuItem, { key: item.key }));\n });\n\n return (\n <StyledMenuWrapper\n qa={qa}\n styles={styles}\n mods={wrapperMods}\n {...(filterBaseProps(completeProps) as Record<string, unknown>)}\n >\n {header ? (\n <StyledHeader data-size={size} styles={headerStyles}>\n {header}\n </StyledHeader>\n ) : (\n <div role=\"presentation\" />\n )}\n <StyledMenu\n {...mergeProps(\n {\n styles: menuStyles,\n 'data-size': size,\n mods: menuMods,\n },\n menuProps,\n )}\n ref={domRef}\n role={menuProps.role ?? 'menu'}\n >\n {renderedItems}\n </StyledMenu>\n {footer ? (\n <StyledFooter data-size={size} styles={footerStyles}>\n {footer}\n </StyledFooter>\n ) : (\n <div role=\"presentation\" />\n )}\n </StyledMenuWrapper>\n );\n}\n\n// forwardRef doesn't support generic parameters, so cast the result to the correct type\n// https://stackoverflow.com/questions/58469229/react-with-typescript-generics-while-using-react-forwardref\nconst _Menu = React.forwardRef(Menu) as <T>(\n props: CubeMenuProps<T> & React.RefAttributes<HTMLUListElement>,\n) => ReactElement;\n\ntype SectionComponent = typeof BaseSection;\n\nconst Section = Object.assign(BaseSection, {\n displayName: 'Section',\n}) as SectionComponent;\n\ntype __MenuComponent = typeof _Menu & {\n Item: typeof MenuCollectionItem;\n Section: typeof Section;\n SubMenuTrigger: typeof SubMenuTrigger;\n Trigger: typeof MenuTrigger;\n};\n\nconst __Menu = Object.assign(_Menu as __MenuComponent, {\n Item: MenuCollectionItem,\n Section,\n SubMenuTrigger,\n Trigger: MenuTrigger,\n displayName: 'Menu',\n});\n\n__Menu.displayName = 'Menu';\n\nexport { __Menu as Menu };\n"],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
|
|
2
|
+
import { NavigateOptions, To } from "../../../providers/navigation.types.js";
|
|
3
|
+
import { CubeCollectionItemProps, _CollectionItem } from "../../CollectionItem.js";
|
|
4
|
+
import { ReactElement } from "react";
|
|
5
|
+
|
|
6
|
+
//#region src/components/actions/Menu/MenuCollectionItem.d.ts
|
|
7
|
+
interface CubeMenuItemProps<T> extends CubeCollectionItemProps<T> {
|
|
8
|
+
/** Application destination. Takes precedence over href. */
|
|
9
|
+
to?: To;
|
|
10
|
+
navigationOptions?: NavigateOptions;
|
|
11
|
+
}
|
|
12
|
+
declare function MenuCollectionItem<T>(_props: CubeMenuItemProps<T>): ReactElement | null;
|
|
13
|
+
declare const _MenuCollectionItem: typeof MenuCollectionItem & Pick<typeof _CollectionItem, 'Action' | 'Badge'>;
|
|
14
|
+
//#endregion
|
|
15
|
+
export { CubeMenuItemProps, _MenuCollectionItem };
|
|
16
|
+
//# sourceMappingURL=MenuCollectionItem.d.ts.map
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.0.0-canary-74176ba | Cube Dev Team */
|
|
2
|
+
import { parseTo } from "../use-action.js";
|
|
3
|
+
import { _CollectionItem } from "../../CollectionItem.js";
|
|
4
|
+
|
|
5
|
+
//#region src/components/actions/Menu/MenuCollectionItem.tsx
|
|
6
|
+
const CURRENT_DOCUMENT_LINK = Symbol("Menu.Item current document");
|
|
7
|
+
const MENU_LINK_CLICK = Symbol("Menu.Item link click");
|
|
8
|
+
function MenuCollectionItem(_props) {
|
|
9
|
+
return null;
|
|
10
|
+
}
|
|
11
|
+
const _MenuCollectionItem = Object.assign(MenuCollectionItem, {
|
|
12
|
+
Action: _CollectionItem.Action,
|
|
13
|
+
Badge: _CollectionItem.Badge,
|
|
14
|
+
getCollectionNode(props, context) {
|
|
15
|
+
const { newTab } = parseTo(props.to);
|
|
16
|
+
const isCurrentDocument = props.to == null && props.href === "";
|
|
17
|
+
const isLink = props.to !== "" && (props.to != null || props.href != null);
|
|
18
|
+
return _CollectionItem.getCollectionNode({
|
|
19
|
+
...props,
|
|
20
|
+
href: props.to === "" ? void 0 : props.to != null ? "." : isCurrentDocument ? "." : props.href,
|
|
21
|
+
[CURRENT_DOCUMENT_LINK]: isCurrentDocument,
|
|
22
|
+
onClick: isLink ? void 0 : props.onClick,
|
|
23
|
+
[MENU_LINK_CLICK]: isLink ? props.onClick : void 0,
|
|
24
|
+
target: newTab ? "_blank" : props.target,
|
|
25
|
+
rel: newTab ? props.rel ?? "noopener noreferrer" : props.rel
|
|
26
|
+
}, context);
|
|
27
|
+
}
|
|
28
|
+
});
|
|
29
|
+
|
|
30
|
+
//#endregion
|
|
31
|
+
export { CURRENT_DOCUMENT_LINK, MENU_LINK_CLICK, _MenuCollectionItem };
|
|
32
|
+
//# sourceMappingURL=MenuCollectionItem.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MenuCollectionItem.js","names":["ReactElement","NavigateOptions","To","CollectionItem","CubeCollectionItemProps","parseTo","CubeMenuItemProps","T","to","navigationOptions","CURRENT_DOCUMENT_LINK","Symbol","MENU_LINK_CLICK","MenuCollectionItem","_props","_MenuCollectionItem","Pick","Object","assign","Action","Badge","getCollectionNode","props","context","newTab","isCurrentDocument","href","isLink","undefined","onClick","target","rel"],"sources":["../../../../src/components/actions/Menu/MenuCollectionItem.tsx"],"sourcesContent":["import { ReactElement } from 'react';\n\nimport { NavigateOptions, To } from '../../../providers/navigation.types';\nimport { CollectionItem, CubeCollectionItemProps } from '../../CollectionItem';\nimport { parseTo } from '../use-action';\n\nexport interface CubeMenuItemProps<T> extends CubeCollectionItemProps<T> {\n /** Application destination. Takes precedence over href. */\n to?: To;\n navigationOptions?: NavigateOptions;\n}\n\n// Aria recognizes links by a truthy collection href; preserve the native empty URL.\nexport const CURRENT_DOCUMENT_LINK = Symbol('Menu.Item current document');\nexport const MENU_LINK_CLICK = Symbol('Menu.Item link click');\n\nfunction MenuCollectionItem<T>(\n _props: CubeMenuItemProps<T>,\n): ReactElement | null {\n return null;\n}\n\nconst _MenuCollectionItem: typeof MenuCollectionItem &\n Pick<typeof CollectionItem, 'Action' | 'Badge'> = Object.assign(\n MenuCollectionItem,\n {\n Action: CollectionItem.Action,\n Badge: CollectionItem.Badge,\n getCollectionNode<T>(props: CubeMenuItemProps<T>, context: unknown) {\n const { newTab } = parseTo(props.to);\n const isCurrentDocument = props.to == null && props.href === '';\n const isLink =\n props.to !== '' && (props.to != null || props.href != null);\n\n // A private href marks links for Aria; the row resolves the actual `to`.\n return (CollectionItem as any).getCollectionNode(\n {\n ...props,\n href:\n props.to === ''\n ? undefined\n : props.to != null\n ? '.'\n : isCurrentDocument\n ? '.'\n : props.href,\n [CURRENT_DOCUMENT_LINK]: isCurrentDocument,\n // Selectable items also consume collection onClick; let Menu own it once.\n onClick: isLink ? undefined : props.onClick,\n [MENU_LINK_CLICK]: isLink ? props.onClick : undefined,\n target: newTab ? '_blank' : props.target,\n rel: newTab ? props.rel ?? 'noopener noreferrer' : props.rel,\n },\n context,\n );\n },\n },\n);\n\nexport { _MenuCollectionItem as MenuCollectionItem };\n"],"mappings":";;;;;AAaA,MAAaU,wBAAwBC,OAAO,6BAA6B;AACzE,MAAaC,kBAAkBD,OAAO,uBAAuB;AAE7D,SAASE,mBACPC,QACqB;AACrB,QAAO;;AAGT,MAAMC,sBAC8CE,OAAOC,OACzDL,oBACA;CACEM,QAAQhB,gBAAegB;CACvBC,OAAOjB,gBAAeiB;CACtBC,kBAAqBC,OAA6BC,SAAkB;EAClE,MAAM,EAAEC,WAAWnB,QAAQiB,MAAMd,GAAG;EACpC,MAAMiB,oBAAoBH,MAAMd,MAAM,QAAQc,MAAMI,SAAS;EAC7D,MAAMC,SACJL,MAAMd,OAAO,OAAOc,MAAMd,MAAM,QAAQc,MAAMI,QAAQ;AAGxD,SAAQvB,gBAAuBkB,kBAC7B;GACE,GAAGC;GACHI,MACEJ,MAAMd,OAAO,KACToB,SACAN,MAAMd,MAAM,OACV,MACAiB,oBACE,MACAH,MAAMI;IACfhB,wBAAwBe;GAEzBI,SAASF,SAASC,SAAYN,MAAMO;IACnCjB,kBAAkBe,SAASL,MAAMO,UAAUD;GAC5CE,QAAQN,SAAS,WAAWF,MAAMQ;GAClCC,KAAKP,SAASF,MAAMS,OAAO,wBAAwBT,MAAMS;GAC1D,EACDR,QACD;;CAGP,CAAC"}
|