@cube-dev/ui-kit 0.118.0 → 0.119.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 +24 -0
- package/dist/_internal/hooks/use-chained-callback.js +1 -1
- 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.d.ts +1 -2
- package/dist/components/Block.js +2 -5
- package/dist/components/Block.js.map +1 -1
- package/dist/components/CollectionItem.js +1 -1
- package/dist/components/GlobalStyles.js +2 -3
- package/dist/components/GlobalStyles.js.map +1 -1
- package/dist/components/GridProvider.d.ts +1 -2
- package/dist/components/GridProvider.js +2 -3
- package/dist/components/GridProvider.js.map +1 -1
- package/dist/components/HiddenInput.js +2 -2
- package/dist/components/HiddenInput.js.map +1 -1
- package/dist/components/Root.d.ts +1 -2
- package/dist/components/Root.js +2 -6
- package/dist/components/Root.js.map +1 -1
- package/dist/components/actions/Action/Action.d.ts +1 -2
- package/dist/components/actions/Action/Action.js +2 -4
- package/dist/components/actions/Action/Action.js.map +1 -1
- package/dist/components/actions/Banner/Banner.js +2 -2
- package/dist/components/actions/Banner/Banner.js.map +1 -1
- package/dist/components/actions/Button/Button.d.ts +3 -1769
- package/dist/components/actions/Button/Button.js +2 -4
- package/dist/components/actions/Button/Button.js.map +1 -1
- package/dist/components/actions/ButtonGroup/ButtonGroup.js +2 -2
- package/dist/components/actions/ButtonGroup/ButtonGroup.js.map +1 -1
- package/dist/components/actions/CommandMenu/CommandMenu.d.ts +1 -3
- package/dist/components/actions/CommandMenu/CommandMenu.js +2 -4
- package/dist/components/actions/CommandMenu/CommandMenu.js.map +1 -1
- package/dist/components/actions/CommandMenu/styled.js +3 -3
- package/dist/components/actions/CommandMenu/styled.js.map +1 -1
- package/dist/components/actions/ItemAction/ItemAction.d.ts +1 -3
- package/dist/components/actions/ItemAction/ItemAction.js +2 -2
- package/dist/components/actions/ItemAction/ItemAction.js.map +1 -1
- package/dist/components/actions/ItemActionContext.js +1 -1
- package/dist/components/actions/ItemButton/ItemButton.d.ts +1 -2
- package/dist/components/actions/ItemButton/ItemButton.js +2 -2
- package/dist/components/actions/ItemButton/ItemButton.js.map +1 -1
- package/dist/components/actions/Link/Link.js +1 -1
- package/dist/components/actions/Menu/Menu.d.ts +1 -3
- package/dist/components/actions/Menu/Menu.js +2 -4
- package/dist/components/actions/Menu/Menu.js.map +1 -1
- package/dist/components/actions/Menu/MenuItem.d.ts +1 -2
- package/dist/components/actions/Menu/MenuItem.js +1 -1
- package/dist/components/actions/Menu/MenuItem.js.map +1 -1
- package/dist/components/actions/Menu/MenuSection.d.ts +1 -2
- package/dist/components/actions/Menu/MenuSection.js +1 -1
- package/dist/components/actions/Menu/MenuSection.js.map +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 +2 -2
- package/dist/components/actions/Menu/styled.js.map +1 -1
- package/dist/components/actions/index.js +1 -1
- package/dist/components/actions/use-action.d.ts +1 -2
- package/dist/components/actions/use-action.js +2 -2
- 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.d.ts +1 -2
- package/dist/components/content/ActiveZone/ActiveZone.js +2 -5
- package/dist/components/content/ActiveZone/ActiveZone.js.map +1 -1
- package/dist/components/content/Alert/Alert.js +2 -2
- package/dist/components/content/Alert/Alert.js.map +1 -1
- package/dist/components/content/Alert/types.d.ts +1 -2
- package/dist/components/content/Alert/use-alert.js +2 -4
- package/dist/components/content/Alert/use-alert.js.map +1 -1
- package/dist/components/content/Avatar/Avatar.d.ts +1 -3
- package/dist/components/content/Avatar/Avatar.js +2 -5
- package/dist/components/content/Avatar/Avatar.js.map +1 -1
- package/dist/components/content/Badge/Badge.js +2 -2
- package/dist/components/content/Badge/Badge.js.map +1 -1
- package/dist/components/content/Card/Card.d.ts +1 -2
- package/dist/components/content/Card/Card.js +2 -5
- package/dist/components/content/Card/Card.js.map +1 -1
- package/dist/components/content/Content.d.ts +1 -2
- package/dist/components/content/Content.js +2 -5
- package/dist/components/content/Content.js.map +1 -1
- package/dist/components/content/CopyPasteBlock/CopyPasteBlock.d.ts +1 -3
- package/dist/components/content/CopyPasteBlock/CopyPasteBlock.js +2 -4
- package/dist/components/content/CopyPasteBlock/CopyPasteBlock.js.map +1 -1
- package/dist/components/content/CopySnippet/CopySnippet.js +2 -2
- package/dist/components/content/CopySnippet/CopySnippet.js.map +1 -1
- package/dist/components/content/Disclosure/Disclosure.d.ts +1 -3
- package/dist/components/content/Disclosure/Disclosure.js +3 -4
- package/dist/components/content/Disclosure/Disclosure.js.map +1 -1
- package/dist/components/content/Divider.d.ts +1 -2
- package/dist/components/content/Divider.js +2 -4
- package/dist/components/content/Divider.js.map +1 -1
- package/dist/components/content/Footer.d.ts +1 -2
- package/dist/components/content/Footer.js +2 -5
- package/dist/components/content/Footer.js.map +1 -1
- package/dist/components/content/Header.d.ts +1 -2
- package/dist/components/content/Header.js +2 -5
- package/dist/components/content/Header.js.map +1 -1
- package/dist/components/content/HotKeys/HotKeys.d.ts +1 -2
- package/dist/components/content/HotKeys/HotKeys.js +2 -5
- package/dist/components/content/HotKeys/HotKeys.js.map +1 -1
- package/dist/components/content/Item/Item.d.ts +1 -3
- package/dist/components/content/Item/Item.js +2 -3
- package/dist/components/content/Item/Item.js.map +1 -1
- package/dist/components/content/ItemBadge/ItemBadge.d.ts +1 -2
- package/dist/components/content/ItemBadge/ItemBadge.js +2 -2
- package/dist/components/content/ItemBadge/ItemBadge.js.map +1 -1
- package/dist/components/content/Layout/GridLayout.d.ts +1 -2
- package/dist/components/content/Layout/GridLayout.js +2 -2
- package/dist/components/content/Layout/GridLayout.js.map +1 -1
- package/dist/components/content/Layout/Layout.d.ts +1 -3
- package/dist/components/content/Layout/Layout.js +3 -7
- package/dist/components/content/Layout/Layout.js.map +1 -1
- package/dist/components/content/Layout/LayoutBlock.js +2 -2
- package/dist/components/content/Layout/LayoutBlock.js.map +1 -1
- package/dist/components/content/Layout/LayoutCenter.js +2 -2
- package/dist/components/content/Layout/LayoutCenter.js.map +1 -1
- package/dist/components/content/Layout/LayoutContainer.d.ts +1 -3
- package/dist/components/content/Layout/LayoutContainer.js +2 -6
- package/dist/components/content/Layout/LayoutContainer.js.map +1 -1
- package/dist/components/content/Layout/LayoutContent.d.ts +1 -2
- package/dist/components/content/Layout/LayoutContent.js +2 -6
- package/dist/components/content/Layout/LayoutContent.js.map +1 -1
- package/dist/components/content/Layout/LayoutContext.js +1 -1
- package/dist/components/content/Layout/LayoutFlex.js +2 -2
- package/dist/components/content/Layout/LayoutFlex.js.map +1 -1
- package/dist/components/content/Layout/LayoutFooter.js +2 -2
- package/dist/components/content/Layout/LayoutFooter.js.map +1 -1
- package/dist/components/content/Layout/LayoutGrid.d.ts +1 -2
- package/dist/components/content/Layout/LayoutGrid.js +2 -2
- package/dist/components/content/Layout/LayoutGrid.js.map +1 -1
- package/dist/components/content/Layout/LayoutHeader.js +2 -2
- package/dist/components/content/Layout/LayoutHeader.js.map +1 -1
- package/dist/components/content/Layout/LayoutPane.d.ts +1 -3
- package/dist/components/content/Layout/LayoutPane.js +2 -6
- package/dist/components/content/Layout/LayoutPane.js.map +1 -1
- package/dist/components/content/Layout/LayoutPanel.d.ts +1 -3
- package/dist/components/content/Layout/LayoutPanel.js +2 -6
- package/dist/components/content/Layout/LayoutPanel.js.map +1 -1
- package/dist/components/content/Layout/LayoutPanelHeader.d.ts +1 -2
- package/dist/components/content/Layout/LayoutPanelHeader.js +2 -4
- package/dist/components/content/Layout/LayoutPanelHeader.js.map +1 -1
- package/dist/components/content/Layout/LayoutToolbar.js +2 -2
- package/dist/components/content/Layout/LayoutToolbar.js.map +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.d.ts +1 -2
- package/dist/components/content/Paragraph.js +2 -3
- package/dist/components/content/Paragraph.js.map +1 -1
- package/dist/components/content/Placeholder/Placeholder.d.ts +1 -3
- package/dist/components/content/Placeholder/Placeholder.js +2 -6
- package/dist/components/content/Placeholder/Placeholder.js.map +1 -1
- package/dist/components/content/PrismCode/PrismCode.d.ts +1 -3
- package/dist/components/content/PrismCode/PrismCode.js +2 -3
- package/dist/components/content/PrismCode/PrismCode.js.map +1 -1
- package/dist/components/content/PrismCode/prismSetup.js +1 -1
- package/dist/components/content/PrismDiffCode/PrismDiffCode.d.ts +1 -3
- package/dist/components/content/PrismDiffCode/PrismDiffCode.js +1 -1
- package/dist/components/content/PrismDiffCode/PrismDiffCode.js.map +1 -1
- package/dist/components/content/Result/Result.d.ts +1 -2
- package/dist/components/content/Result/Result.js +2 -5
- package/dist/components/content/Result/Result.js.map +1 -1
- package/dist/components/content/Skeleton/Skeleton.d.ts +1 -2
- package/dist/components/content/Skeleton/Skeleton.js +1 -1
- package/dist/components/content/Skeleton/Skeleton.js.map +1 -1
- package/dist/components/content/Tag/Tag.d.ts +1 -2
- package/dist/components/content/Tag/Tag.js +2 -2
- package/dist/components/content/Tag/Tag.js.map +1 -1
- package/dist/components/content/Text.d.ts +128 -159
- package/dist/components/content/Text.js +2 -5
- package/dist/components/content/Text.js.map +1 -1
- package/dist/components/content/TextItem/TextItem.d.ts +1 -2
- package/dist/components/content/TextItem/TextItem.js +2 -5
- package/dist/components/content/TextItem/TextItem.js.map +1 -1
- package/dist/components/content/Title.d.ts +1 -2
- package/dist/components/content/Title.js +2 -5
- package/dist/components/content/Title.js.map +1 -1
- package/dist/components/content/highlightText.js +1 -1
- package/dist/components/content/highlightText.js.map +1 -1
- package/dist/components/content/use-auto-tooltip.d.ts +1 -1
- package/dist/components/content/use-auto-tooltip.js +1 -1
- package/dist/components/content/use-auto-tooltip.js.map +1 -1
- package/dist/components/fields/Checkbox/Checkbox.d.ts +1 -3
- package/dist/components/fields/Checkbox/Checkbox.js +2 -5
- package/dist/components/fields/Checkbox/Checkbox.js.map +1 -1
- package/dist/components/fields/Checkbox/CheckboxGroup.d.ts +1 -3
- package/dist/components/fields/Checkbox/CheckboxGroup.js +2 -4
- package/dist/components/fields/Checkbox/CheckboxGroup.js.map +1 -1
- package/dist/components/fields/Checkbox/context.js +1 -1
- package/dist/components/fields/ComboBox/ComboBox.d.ts +1 -3
- package/dist/components/fields/ComboBox/ComboBox.js +2 -4
- package/dist/components/fields/ComboBox/ComboBox.js.map +1 -1
- package/dist/components/fields/DatePicker/DateInput.d.ts +1 -3
- package/dist/components/fields/DatePicker/DateInput.js +2 -3
- package/dist/components/fields/DatePicker/DateInput.js.map +1 -1
- package/dist/components/fields/DatePicker/DateInputBase.js +2 -4
- package/dist/components/fields/DatePicker/DateInputBase.js.map +1 -1
- package/dist/components/fields/DatePicker/DatePicker.d.ts +1 -3
- package/dist/components/fields/DatePicker/DatePicker.js +2 -3
- package/dist/components/fields/DatePicker/DatePicker.js.map +1 -1
- package/dist/components/fields/DatePicker/DatePickerButton.js +2 -2
- package/dist/components/fields/DatePicker/DatePickerButton.js.map +1 -1
- package/dist/components/fields/DatePicker/DatePickerElement.js +2 -2
- package/dist/components/fields/DatePicker/DatePickerElement.js.map +1 -1
- package/dist/components/fields/DatePicker/DatePickerInput.js +2 -2
- package/dist/components/fields/DatePicker/DatePickerInput.js.map +1 -1
- package/dist/components/fields/DatePicker/DatePickerSegment.js +2 -2
- package/dist/components/fields/DatePicker/DatePickerSegment.js.map +1 -1
- package/dist/components/fields/DatePicker/DateRangePicker.d.ts +1 -3
- package/dist/components/fields/DatePicker/DateRangePicker.js +2 -4
- package/dist/components/fields/DatePicker/DateRangePicker.js.map +1 -1
- package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.d.ts +1 -3
- package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js +2 -4
- package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js.map +1 -1
- package/dist/components/fields/DatePicker/TimeInput.d.ts +1 -3
- package/dist/components/fields/DatePicker/TimeInput.js +2 -3
- package/dist/components/fields/DatePicker/TimeInput.js.map +1 -1
- package/dist/components/fields/DatePicker/intl.js +1 -1
- package/dist/components/fields/DatePicker/parseDate.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.d.ts +1 -3
- package/dist/components/fields/FileInput/FileInput.js +2 -4
- package/dist/components/fields/FileInput/FileInput.js.map +1 -1
- package/dist/components/fields/FilterListBox/FilterListBox.d.ts +1 -2
- package/dist/components/fields/FilterListBox/FilterListBox.js +5 -7
- package/dist/components/fields/FilterListBox/FilterListBox.js.map +1 -1
- package/dist/components/fields/FilterPicker/FilterPicker.d.ts +1 -3
- package/dist/components/fields/FilterPicker/FilterPicker.js +2 -5
- package/dist/components/fields/FilterPicker/FilterPicker.js.map +1 -1
- package/dist/components/fields/Input/Input.js +1 -1
- package/dist/components/fields/ListBox/ListBox.d.ts +1 -3
- package/dist/components/fields/ListBox/ListBox.js +2 -5
- package/dist/components/fields/ListBox/ListBox.js.map +1 -1
- package/dist/components/fields/NumberInput/NumberInput.js +2 -2
- package/dist/components/fields/NumberInput/NumberInput.js.map +1 -1
- package/dist/components/fields/NumberInput/StepButton.js +2 -2
- package/dist/components/fields/NumberInput/StepButton.js.map +1 -1
- package/dist/components/fields/PasswordInput/PasswordInput.js +1 -1
- package/dist/components/fields/Picker/Picker.d.ts +1 -3
- package/dist/components/fields/Picker/Picker.js +2 -5
- package/dist/components/fields/Picker/Picker.js.map +1 -1
- package/dist/components/fields/RadioGroup/Radio.d.ts +1 -2
- package/dist/components/fields/RadioGroup/Radio.js +2 -5
- package/dist/components/fields/RadioGroup/Radio.js.map +1 -1
- package/dist/components/fields/RadioGroup/RadioGroup.d.ts +1 -3
- package/dist/components/fields/RadioGroup/RadioGroup.js +2 -4
- package/dist/components/fields/RadioGroup/RadioGroup.js.map +1 -1
- package/dist/components/fields/RadioGroup/context.js +1 -1
- package/dist/components/fields/SearchInput/SearchInput.js +1 -1
- package/dist/components/fields/Select/Select.d.ts +834 -836
- package/dist/components/fields/Select/Select.js +2 -4
- 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/HueSlider.js.map +1 -1
- package/dist/components/fields/Slider/RangeSlider.js +1 -1
- package/dist/components/fields/Slider/Slider.d.ts +1 -3
- package/dist/components/fields/Slider/Slider.js +2 -3
- package/dist/components/fields/Slider/Slider.js.map +1 -1
- package/dist/components/fields/Slider/SliderBase.js +2 -4
- package/dist/components/fields/Slider/SliderBase.js.map +1 -1
- package/dist/components/fields/Slider/SliderThumb.js +1 -1
- package/dist/components/fields/Slider/SliderThumb.js.map +1 -1
- package/dist/components/fields/Slider/SliderTrack.js +1 -1
- package/dist/components/fields/Slider/SliderTrack.js.map +1 -1
- package/dist/components/fields/Slider/elements.js +2 -2
- package/dist/components/fields/Slider/elements.js.map +1 -1
- package/dist/components/fields/Slider/index.js +1 -1
- package/dist/components/fields/Slider/types.d.ts +1 -3
- package/dist/components/fields/Switch/Switch.d.ts +1 -3
- package/dist/components/fields/Switch/Switch.js +2 -4
- package/dist/components/fields/Switch/Switch.js.map +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.d.ts +1 -3
- package/dist/components/fields/TextInput/TextInputBase.js +3 -5
- package/dist/components/fields/TextInput/TextInputBase.js.map +1 -1
- package/dist/components/fields/TextInputMapper/TextInputMapper.js +1 -1
- package/dist/components/form/FieldWrapper/FieldWrapper.js +2 -2
- package/dist/components/form/FieldWrapper/FieldWrapper.js.map +1 -1
- package/dist/components/form/FieldWrapper/extract-field-wrapper-props.js +1 -1
- package/dist/components/form/FieldWrapper/types.d.ts +1 -3
- package/dist/components/form/Form/Field.d.ts +1 -2
- package/dist/components/form/Form/Field.js +1 -1
- package/dist/components/form/Form/Field.js.map +1 -1
- package/dist/components/form/Form/Form.d.ts +1 -3
- package/dist/components/form/Form/Form.js +2 -5
- package/dist/components/form/Form/Form.js.map +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/index.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 +2 -2
- package/dist/components/form/Form/use-form.js.map +1 -1
- package/dist/components/form/Form/validation.js +1 -1
- package/dist/components/form/Label.d.ts +1 -3
- package/dist/components/form/Label.js +2 -5
- package/dist/components/form/Label.js.map +1 -1
- package/dist/components/form/wrapper.d.ts +1 -2
- package/dist/components/form/wrapper.js +1 -1
- package/dist/components/form/wrapper.js.map +1 -1
- package/dist/components/helpers/DisplayTransition/DisplayTransition.js +1 -1
- package/dist/components/helpers/IconSwitch/IconSwitch.js +2 -2
- package/dist/components/helpers/IconSwitch/IconSwitch.js.map +1 -1
- package/dist/components/layout/Flex.d.ts +1 -2
- package/dist/components/layout/Flex.js +2 -5
- package/dist/components/layout/Flex.js.map +1 -1
- package/dist/components/layout/Flow.d.ts +1 -2
- package/dist/components/layout/Flow.js +2 -5
- package/dist/components/layout/Flow.js.map +1 -1
- package/dist/components/layout/Grid.d.ts +1 -2
- package/dist/components/layout/Grid.js +2 -5
- package/dist/components/layout/Grid.js.map +1 -1
- package/dist/components/layout/Panel.d.ts +1 -3
- package/dist/components/layout/Panel.js +2 -3
- package/dist/components/layout/Panel.js.map +1 -1
- package/dist/components/layout/Prefix.d.ts +1 -2
- package/dist/components/layout/Prefix.js +2 -5
- package/dist/components/layout/Prefix.js.map +1 -1
- package/dist/components/layout/ResizablePanel.d.ts +1 -2
- package/dist/components/layout/ResizablePanel.js +2 -2
- package/dist/components/layout/ResizablePanel.js.map +1 -1
- package/dist/components/layout/Space.d.ts +1 -2
- package/dist/components/layout/Space.js +2 -5
- package/dist/components/layout/Space.js.map +1 -1
- package/dist/components/layout/Suffix.d.ts +1 -2
- package/dist/components/layout/Suffix.js +2 -5
- package/dist/components/layout/Suffix.js.map +1 -1
- package/dist/components/navigation/Tabs/DraggableTabList.js +1 -1
- package/dist/components/navigation/Tabs/EditableTitle.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/TabPanel.js.map +1 -1
- package/dist/components/navigation/Tabs/TabPicker.js +1 -1
- package/dist/components/navigation/Tabs/Tabs.js +2 -4
- package/dist/components/navigation/Tabs/Tabs.js.map +1 -1
- package/dist/components/navigation/Tabs/TabsAction.js +2 -2
- package/dist/components/navigation/Tabs/TabsAction.js.map +1 -1
- package/dist/components/navigation/Tabs/TabsContext.js +1 -1
- package/dist/components/navigation/Tabs/styled.js +2 -2
- package/dist/components/navigation/Tabs/styled.js.map +1 -1
- package/dist/components/navigation/Tabs/types.d.ts +1 -3
- package/dist/components/navigation/Tabs/types.js +1 -1
- package/dist/components/navigation/Tabs/types.js.map +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/FileTabs/FileTabs.d.ts +1 -2
- package/dist/components/organisms/FileTabs/FileTabs.js +2 -2
- package/dist/components/organisms/FileTabs/FileTabs.js.map +1 -1
- package/dist/components/organisms/StatsCard/StatsCard.js +1 -1
- package/dist/components/other/Calendar/Calendar.js +2 -2
- package/dist/components/other/Calendar/Calendar.js.map +1 -1
- package/dist/components/other/Calendar/CalendarCell.js +2 -2
- package/dist/components/other/Calendar/CalendarCell.js.map +1 -1
- package/dist/components/other/Calendar/CalendarGrid.js +2 -2
- package/dist/components/other/Calendar/CalendarGrid.js.map +1 -1
- package/dist/components/other/Calendar/RangeCalendar.js +2 -2
- package/dist/components/other/Calendar/RangeCalendar.js.map +1 -1
- package/dist/components/other/CloudLogo/CloudLogo.js +2 -2
- package/dist/components/other/CloudLogo/CloudLogo.js.map +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/AlertDialog/types.d.ts +1 -1
- package/dist/components/overlays/Dialog/Dialog.d.ts +1 -3
- package/dist/components/overlays/Dialog/Dialog.js +2 -4
- package/dist/components/overlays/Dialog/Dialog.js.map +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.d.ts +1 -2
- package/dist/components/overlays/Dialog/DialogTrigger.js +1 -1
- package/dist/components/overlays/Dialog/DialogTrigger.js.map +1 -1
- package/dist/components/overlays/Dialog/context.js +1 -1
- package/dist/components/overlays/Dialog/use-dialog-container.js +1 -1
- package/dist/components/overlays/Modal/Modal.d.ts +3 -2
- package/dist/components/overlays/Modal/Modal.js +2 -2
- package/dist/components/overlays/Modal/Modal.js.map +1 -1
- package/dist/components/overlays/Modal/OpenTransition.js +1 -1
- package/dist/components/overlays/Modal/Overlay.d.ts +1 -0
- package/dist/components/overlays/Modal/Overlay.js +1 -1
- package/dist/components/overlays/Modal/Overlay.js.map +1 -1
- package/dist/components/overlays/Modal/Popover.d.ts +1 -1
- package/dist/components/overlays/Modal/Popover.js +2 -2
- package/dist/components/overlays/Modal/Popover.js.map +1 -1
- package/dist/components/overlays/Modal/Tray.d.ts +1 -1
- package/dist/components/overlays/Modal/Tray.js +2 -2
- package/dist/components/overlays/Modal/Tray.js.map +1 -1
- package/dist/components/overlays/Modal/Underlay.js +2 -2
- package/dist/components/overlays/Modal/Underlay.js.map +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 +2 -2
- package/dist/components/overlays/Notifications/NotificationCard.js.map +1 -1
- package/dist/components/overlays/Notifications/NotificationContext.d.ts +2 -0
- package/dist/components/overlays/Notifications/NotificationContext.js +1 -1
- package/dist/components/overlays/Notifications/NotificationItem.js +2 -2
- package/dist/components/overlays/Notifications/NotificationItem.js.map +1 -1
- package/dist/components/overlays/Notifications/OverlayContainer.js +2 -2
- 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 +2 -2
- package/dist/components/overlays/Notifications/PersistentNotificationsList.js.map +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 +2 -2
- package/dist/components/overlays/Toast/ToastItem.js.map +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 +2 -2
- package/dist/components/overlays/Tooltip/Tooltip.d.ts +1 -3
- package/dist/components/overlays/Tooltip/Tooltip.js +2 -4
- package/dist/components/overlays/Tooltip/Tooltip.js.map +1 -1
- package/dist/components/overlays/Tooltip/TooltipProvider.d.ts +1 -2
- package/dist/components/overlays/Tooltip/TooltipProvider.js +1 -1
- package/dist/components/overlays/Tooltip/TooltipProvider.js.map +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/context.js.map +1 -1
- package/dist/components/portal/Portal.js +1 -1
- package/dist/components/portal/PortalProvider.d.ts +2 -0
- package/dist/components/portal/PortalProvider.js +1 -1
- package/dist/components/portal/index.d.ts +1 -0
- package/dist/components/portal/usePortal.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 +2 -2
- package/dist/components/status/LoadingAnimation/LoadingAnimation.js.map +1 -1
- package/dist/components/status/Spin/Cube.js +2 -2
- package/dist/components/status/Spin/Cube.js.map +1 -1
- package/dist/components/status/Spin/InternalSpinner.js +2 -2
- package/dist/components/status/Spin/InternalSpinner.js.map +1 -1
- package/dist/components/status/Spin/Spin.js +2 -2
- package/dist/components/status/Spin/Spin.js.map +1 -1
- package/dist/components/status/Spin/SpinsContainer.js +2 -2
- package/dist/components/status/Spin/SpinsContainer.js.map +1 -1
- package/dist/components/status/Spin/types.d.ts +1 -2
- package/dist/data/item-themes.d.ts +1 -1
- package/dist/data/item-themes.js +1 -1
- package/dist/data/item-themes.js.map +1 -1
- package/dist/data/themes.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/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 +2 -2
- package/dist/icons/DirectionIcon.js.map +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/HierarchyIcon.js +1 -1
- package/dist/icons/HierarchyOpenIcon.js +1 -1
- package/dist/icons/Icon.d.ts +1 -3
- package/dist/icons/Icon.js +2 -3
- package/dist/icons/Icon.js.map +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/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 +4 -35
- package/dist/index.js +5 -31
- package/dist/index.js.map +1 -1
- package/dist/provider.d.ts +1 -2
- package/dist/provider.js +1 -1
- package/dist/provider.js.map +1 -1
- package/dist/providers/TrackingProvider.js +1 -1
- package/dist/providers/navigationAdapter.default.js +1 -1
- package/dist/shared/form.d.ts +1 -3
- package/dist/tokens/base.d.ts +1 -1
- package/dist/tokens/base.js +1 -1
- package/dist/tokens/base.js.map +1 -1
- package/dist/tokens/colors.d.ts +1 -1
- package/dist/tokens/colors.js +1 -1
- package/dist/tokens/colors.js.map +1 -1
- package/dist/tokens/index.d.ts +1 -2
- package/dist/tokens/index.js +2 -3
- package/dist/tokens/index.js.map +1 -1
- package/dist/tokens/layout.d.ts +1 -1
- package/dist/tokens/layout.js +1 -1
- package/dist/tokens/layout.js.map +1 -1
- package/dist/tokens/shadows.d.ts +1 -1
- package/dist/tokens/shadows.js +1 -1
- package/dist/tokens/shadows.js.map +1 -1
- package/dist/tokens/sizes.d.ts +1 -1
- package/dist/tokens/sizes.js +1 -1
- package/dist/tokens/sizes.js.map +1 -1
- package/dist/tokens/spacing.d.ts +1 -1
- package/dist/tokens/spacing.js +1 -1
- package/dist/tokens/spacing.js.map +1 -1
- package/dist/utils/ResizeSensor.js +1 -1
- package/dist/utils/index.d.ts +1 -2
- package/dist/utils/is-dev-env.js +5 -10
- package/dist/utils/is-dev-env.js.map +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/forwardRefWithGenerics.js +1 -1
- package/dist/utils/react/index.d.ts +3 -3
- package/dist/utils/react/index.js +20 -0
- 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.d.ts +1 -2
- package/dist/utils/react/mergeProps.js +2 -2
- package/dist/utils/react/mergeProps.js.map +1 -1
- package/dist/utils/react/nullableValue.d.ts +1 -2
- package/dist/utils/react/nullableValue.js +1 -1
- package/dist/utils/react/nullableValue.js.map +1 -1
- package/dist/utils/react/resolveIcon.d.ts +1 -2
- package/dist/utils/react/resolveIcon.js +1 -1
- package/dist/utils/react/resolveIcon.js.map +1 -1
- package/dist/utils/react/sharedStore.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.d.ts +1 -2
- package/dist/utils/react/useMergeStyles.js +2 -2
- package/dist/utils/react/useMergeStyles.js.map +1 -1
- package/dist/utils/react/useQaProps.js +1 -1
- package/dist/utils/react/useViewportSize.js +1 -1
- package/dist/utils/react/wrapNodeIfPlain.js +1 -1
- package/dist/utils/tree.js +1 -1
- package/dist/utils/warnings.js +1 -1
- package/dist/version.js +2 -2
- package/package.json +4 -21
- package/dist/_virtual/_rolldown/runtime.js +0 -8
- package/dist/chunks/cacheKey.js +0 -71
- package/dist/chunks/cacheKey.js.map +0 -1
- package/dist/chunks/definitions.js +0 -261
- package/dist/chunks/definitions.js.map +0 -1
- package/dist/chunks/renderChunk.js +0 -68
- package/dist/chunks/renderChunk.js.map +0 -1
- package/dist/config.js +0 -232
- package/dist/config.js.map +0 -1
- package/dist/css-writer.d.ts +0 -46
- package/dist/css-writer.js +0 -75
- package/dist/css-writer.js.map +0 -1
- package/dist/extractor.d.ts +0 -25
- package/dist/extractor.js +0 -151
- package/dist/extractor.js.map +0 -1
- package/dist/injector/injector.js +0 -401
- package/dist/injector/injector.js.map +0 -1
- package/dist/injector/sheet-manager.js +0 -715
- package/dist/injector/sheet-manager.js.map +0 -1
- package/dist/injector/types.d.ts +0 -19
- package/dist/keyframes/index.js +0 -157
- package/dist/keyframes/index.js.map +0 -1
- package/dist/parser/classify.js +0 -320
- package/dist/parser/classify.js.map +0 -1
- package/dist/parser/const.js +0 -34
- package/dist/parser/const.js.map +0 -1
- package/dist/parser/lru.js +0 -110
- package/dist/parser/lru.js.map +0 -1
- package/dist/parser/parser.js +0 -117
- package/dist/parser/parser.js.map +0 -1
- package/dist/parser/tokenizer.js +0 -70
- package/dist/parser/tokenizer.js.map +0 -1
- package/dist/parser/types.d.ts +0 -38
- package/dist/parser/types.js +0 -47
- package/dist/parser/types.js.map +0 -1
- package/dist/pipeline/conditions.js +0 -378
- package/dist/pipeline/conditions.js.map +0 -1
- package/dist/pipeline/exclusive.js +0 -232
- package/dist/pipeline/exclusive.js.map +0 -1
- package/dist/pipeline/index.js +0 -633
- package/dist/pipeline/index.js.map +0 -1
- package/dist/pipeline/materialize.js +0 -822
- package/dist/pipeline/materialize.js.map +0 -1
- package/dist/pipeline/parseStateKey.js +0 -422
- package/dist/pipeline/parseStateKey.js.map +0 -1
- package/dist/pipeline/simplify.js +0 -558
- package/dist/pipeline/simplify.js.map +0 -1
- package/dist/plugins/okhsl-plugin.js +0 -346
- package/dist/plugins/okhsl-plugin.js.map +0 -1
- package/dist/plugins/types.d.ts +0 -52
- package/dist/properties/index.js +0 -142
- package/dist/properties/index.js.map +0 -1
- package/dist/states/index.js +0 -162
- package/dist/states/index.js.map +0 -1
- package/dist/styles/align.js +0 -15
- package/dist/styles/align.js.map +0 -1
- package/dist/styles/border.js +0 -115
- package/dist/styles/border.js.map +0 -1
- package/dist/styles/color.js +0 -24
- package/dist/styles/color.js.map +0 -1
- package/dist/styles/createStyle.js +0 -78
- package/dist/styles/createStyle.js.map +0 -1
- package/dist/styles/dimension.js +0 -100
- package/dist/styles/dimension.js.map +0 -1
- package/dist/styles/display.js +0 -68
- package/dist/styles/display.js.map +0 -1
- package/dist/styles/fade.js +0 -58
- package/dist/styles/fade.js.map +0 -1
- package/dist/styles/fill.js +0 -52
- package/dist/styles/fill.js.map +0 -1
- package/dist/styles/flow.js +0 -13
- package/dist/styles/flow.js.map +0 -1
- package/dist/styles/gap.js +0 -37
- package/dist/styles/gap.js.map +0 -1
- package/dist/styles/height.js +0 -21
- package/dist/styles/height.js.map +0 -1
- package/dist/styles/index.js +0 -10
- package/dist/styles/index.js.map +0 -1
- package/dist/styles/inset.js +0 -143
- package/dist/styles/inset.js.map +0 -1
- package/dist/styles/justify.js +0 -15
- package/dist/styles/justify.js.map +0 -1
- package/dist/styles/margin.js +0 -97
- package/dist/styles/margin.js.map +0 -1
- package/dist/styles/outline.js +0 -66
- package/dist/styles/outline.js.map +0 -1
- package/dist/styles/padding.js +0 -97
- package/dist/styles/padding.js.map +0 -1
- package/dist/styles/predefined.js +0 -233
- package/dist/styles/predefined.js.map +0 -1
- package/dist/styles/preset.js +0 -126
- package/dist/styles/preset.js.map +0 -1
- package/dist/styles/radius.js +0 -52
- package/dist/styles/radius.js.map +0 -1
- package/dist/styles/scrollbar.js +0 -109
- package/dist/styles/scrollbar.js.map +0 -1
- package/dist/styles/shadow.js +0 -28
- package/dist/styles/shadow.js.map +0 -1
- package/dist/styles/styledScrollbar.js +0 -39
- package/dist/styles/styledScrollbar.js.map +0 -1
- package/dist/styles/transition.js +0 -139
- package/dist/styles/transition.js.map +0 -1
- package/dist/styles/types.d.ts +0 -495
- package/dist/styles/width.js +0 -21
- package/dist/styles/width.js.map +0 -1
- package/dist/tasty/chunks/cacheKey.js +0 -71
- package/dist/tasty/chunks/cacheKey.js.map +0 -1
- package/dist/tasty/chunks/definitions.d.ts +0 -38
- package/dist/tasty/chunks/definitions.js +0 -261
- package/dist/tasty/chunks/definitions.js.map +0 -1
- package/dist/tasty/chunks/renderChunk.js +0 -68
- package/dist/tasty/chunks/renderChunk.js.map +0 -1
- package/dist/tasty/config.d.ts +0 -283
- package/dist/tasty/config.js +0 -401
- package/dist/tasty/config.js.map +0 -1
- package/dist/tasty/debug.d.ts +0 -200
- package/dist/tasty/debug.js +0 -734
- package/dist/tasty/debug.js.map +0 -1
- package/dist/tasty/hooks/useGlobalStyles.d.ts +0 -28
- package/dist/tasty/hooks/useGlobalStyles.js +0 -57
- package/dist/tasty/hooks/useGlobalStyles.js.map +0 -1
- package/dist/tasty/hooks/useKeyframes.d.ts +0 -57
- package/dist/tasty/hooks/useKeyframes.js +0 -55
- package/dist/tasty/hooks/useKeyframes.js.map +0 -1
- package/dist/tasty/hooks/useProperty.d.ts +0 -80
- package/dist/tasty/hooks/useProperty.js +0 -92
- package/dist/tasty/hooks/useProperty.js.map +0 -1
- package/dist/tasty/hooks/useRawCSS.d.ts +0 -54
- package/dist/tasty/hooks/useRawCSS.js +0 -29
- package/dist/tasty/hooks/useRawCSS.js.map +0 -1
- package/dist/tasty/hooks/useStyles.d.ts +0 -41
- package/dist/tasty/hooks/useStyles.js +0 -170
- package/dist/tasty/hooks/useStyles.js.map +0 -1
- package/dist/tasty/index.d.ts +0 -35
- package/dist/tasty/injector/index.d.ts +0 -158
- package/dist/tasty/injector/index.js +0 -155
- package/dist/tasty/injector/index.js.map +0 -1
- package/dist/tasty/injector/injector.d.ts +0 -137
- package/dist/tasty/injector/injector.js +0 -401
- package/dist/tasty/injector/injector.js.map +0 -1
- package/dist/tasty/injector/sheet-manager.d.ts +0 -128
- package/dist/tasty/injector/sheet-manager.js +0 -715
- package/dist/tasty/injector/sheet-manager.js.map +0 -1
- package/dist/tasty/injector/types.d.ts +0 -136
- package/dist/tasty/keyframes/index.js +0 -207
- package/dist/tasty/keyframes/index.js.map +0 -1
- package/dist/tasty/parser/classify.js +0 -320
- package/dist/tasty/parser/classify.js.map +0 -1
- package/dist/tasty/parser/const.js +0 -34
- package/dist/tasty/parser/const.js.map +0 -1
- package/dist/tasty/parser/lru.js +0 -110
- package/dist/tasty/parser/lru.js.map +0 -1
- package/dist/tasty/parser/parser.d.ts +0 -26
- package/dist/tasty/parser/parser.js +0 -117
- package/dist/tasty/parser/parser.js.map +0 -1
- package/dist/tasty/parser/tokenizer.js +0 -70
- package/dist/tasty/parser/tokenizer.js.map +0 -1
- package/dist/tasty/parser/types.d.ts +0 -47
- package/dist/tasty/parser/types.js +0 -47
- package/dist/tasty/parser/types.js.map +0 -1
- package/dist/tasty/pipeline/conditions.js +0 -378
- package/dist/tasty/pipeline/conditions.js.map +0 -1
- package/dist/tasty/pipeline/exclusive.js +0 -232
- package/dist/tasty/pipeline/exclusive.js.map +0 -1
- package/dist/tasty/pipeline/index.d.ts +0 -52
- package/dist/tasty/pipeline/index.js +0 -639
- package/dist/tasty/pipeline/index.js.map +0 -1
- package/dist/tasty/pipeline/materialize.js +0 -822
- package/dist/tasty/pipeline/materialize.js.map +0 -1
- package/dist/tasty/pipeline/parseStateKey.js +0 -422
- package/dist/tasty/pipeline/parseStateKey.js.map +0 -1
- package/dist/tasty/pipeline/simplify.js +0 -558
- package/dist/tasty/pipeline/simplify.js.map +0 -1
- package/dist/tasty/plugins/okhsl-plugin.d.ts +0 -36
- package/dist/tasty/plugins/okhsl-plugin.js +0 -372
- package/dist/tasty/plugins/okhsl-plugin.js.map +0 -1
- package/dist/tasty/plugins/types.d.ts +0 -72
- package/dist/tasty/properties/index.js +0 -159
- package/dist/tasty/properties/index.js.map +0 -1
- package/dist/tasty/states/index.d.ts +0 -44
- package/dist/tasty/states/index.js +0 -390
- package/dist/tasty/states/index.js.map +0 -1
- package/dist/tasty/static/index.d.ts +0 -6
- package/dist/tasty/static/index.js +0 -6
- package/dist/tasty/static/tastyStatic.d.ts +0 -47
- package/dist/tasty/static/tastyStatic.js +0 -32
- package/dist/tasty/static/tastyStatic.js.map +0 -1
- package/dist/tasty/static/types.d.ts +0 -50
- package/dist/tasty/static/types.js +0 -25
- package/dist/tasty/static/types.js.map +0 -1
- package/dist/tasty/styles/align.d.ts +0 -16
- package/dist/tasty/styles/align.js +0 -15
- package/dist/tasty/styles/align.js.map +0 -1
- package/dist/tasty/styles/border.d.ts +0 -26
- package/dist/tasty/styles/border.js +0 -115
- package/dist/tasty/styles/border.js.map +0 -1
- package/dist/tasty/styles/color.d.ts +0 -15
- package/dist/tasty/styles/color.js +0 -24
- package/dist/tasty/styles/color.js.map +0 -1
- package/dist/tasty/styles/createStyle.js +0 -78
- package/dist/tasty/styles/createStyle.js.map +0 -1
- package/dist/tasty/styles/dimension.js +0 -100
- package/dist/tasty/styles/dimension.js.map +0 -1
- package/dist/tasty/styles/display.d.ts +0 -38
- package/dist/tasty/styles/display.js +0 -68
- package/dist/tasty/styles/display.js.map +0 -1
- package/dist/tasty/styles/fade.d.ts +0 -16
- package/dist/tasty/styles/fade.js +0 -58
- package/dist/tasty/styles/fade.js.map +0 -1
- package/dist/tasty/styles/fill.d.ts +0 -45
- package/dist/tasty/styles/fill.js +0 -52
- package/dist/tasty/styles/fill.js.map +0 -1
- package/dist/tasty/styles/flow.d.ts +0 -17
- package/dist/tasty/styles/flow.js +0 -13
- package/dist/tasty/styles/flow.js.map +0 -1
- package/dist/tasty/styles/gap.d.ts +0 -32
- package/dist/tasty/styles/gap.js +0 -37
- package/dist/tasty/styles/gap.js.map +0 -1
- package/dist/tasty/styles/height.d.ts +0 -18
- package/dist/tasty/styles/height.js +0 -21
- package/dist/tasty/styles/height.js.map +0 -1
- package/dist/tasty/styles/index.d.ts +0 -3
- package/dist/tasty/styles/index.js +0 -10
- package/dist/tasty/styles/index.js.map +0 -1
- package/dist/tasty/styles/inset.d.ts +0 -51
- package/dist/tasty/styles/inset.js +0 -143
- package/dist/tasty/styles/inset.js.map +0 -1
- package/dist/tasty/styles/justify.d.ts +0 -16
- package/dist/tasty/styles/justify.js +0 -15
- package/dist/tasty/styles/justify.js.map +0 -1
- package/dist/tasty/styles/list.d.ts +0 -17
- package/dist/tasty/styles/list.js +0 -99
- package/dist/tasty/styles/list.js.map +0 -1
- package/dist/tasty/styles/margin.d.ts +0 -29
- package/dist/tasty/styles/margin.js +0 -97
- package/dist/tasty/styles/margin.js.map +0 -1
- package/dist/tasty/styles/outline.d.ts +0 -30
- package/dist/tasty/styles/outline.js +0 -66
- package/dist/tasty/styles/outline.js.map +0 -1
- package/dist/tasty/styles/padding.d.ts +0 -29
- package/dist/tasty/styles/padding.js +0 -97
- package/dist/tasty/styles/padding.js.map +0 -1
- package/dist/tasty/styles/predefined.d.ts +0 -74
- package/dist/tasty/styles/predefined.js +0 -242
- package/dist/tasty/styles/predefined.js.map +0 -1
- package/dist/tasty/styles/preset.d.ts +0 -48
- package/dist/tasty/styles/preset.js +0 -126
- package/dist/tasty/styles/preset.js.map +0 -1
- package/dist/tasty/styles/radius.d.ts +0 -15
- package/dist/tasty/styles/radius.js +0 -52
- package/dist/tasty/styles/radius.js.map +0 -1
- package/dist/tasty/styles/scrollbar.d.ts +0 -22
- package/dist/tasty/styles/scrollbar.js +0 -109
- package/dist/tasty/styles/scrollbar.js.map +0 -1
- package/dist/tasty/styles/shadow.d.ts +0 -15
- package/dist/tasty/styles/shadow.js +0 -28
- package/dist/tasty/styles/shadow.js.map +0 -1
- package/dist/tasty/styles/styledScrollbar.d.ts +0 -48
- package/dist/tasty/styles/styledScrollbar.js +0 -39
- package/dist/tasty/styles/styledScrollbar.js.map +0 -1
- package/dist/tasty/styles/transition.d.ts +0 -15
- package/dist/tasty/styles/transition.js +0 -139
- package/dist/tasty/styles/transition.js.map +0 -1
- package/dist/tasty/styles/types.d.ts +0 -499
- package/dist/tasty/styles/width.d.ts +0 -18
- package/dist/tasty/styles/width.js +0 -21
- package/dist/tasty/styles/width.js.map +0 -1
- package/dist/tasty/tasty.d.ts +0 -936
- package/dist/tasty/tasty.js +0 -191
- package/dist/tasty/tasty.js.map +0 -1
- package/dist/tasty/types.d.ts +0 -192
- package/dist/tasty/utils/cache-wrapper.js +0 -25
- package/dist/tasty/utils/cache-wrapper.js.map +0 -1
- package/dist/tasty/utils/case-converter.js +0 -9
- package/dist/tasty/utils/case-converter.js.map +0 -1
- package/dist/tasty/utils/colors.d.ts +0 -6
- package/dist/tasty/utils/colors.js +0 -10
- package/dist/tasty/utils/colors.js.map +0 -1
- package/dist/tasty/utils/dotize.d.ts +0 -27
- package/dist/tasty/utils/dotize.js +0 -123
- package/dist/tasty/utils/dotize.js.map +0 -1
- package/dist/tasty/utils/filter-base-props.d.ts +0 -16
- package/dist/tasty/utils/filter-base-props.js +0 -46
- package/dist/tasty/utils/filter-base-props.js.map +0 -1
- package/dist/tasty/utils/get-display-name.d.ts +0 -8
- package/dist/tasty/utils/get-display-name.js +0 -11
- package/dist/tasty/utils/get-display-name.js.map +0 -1
- package/dist/tasty/utils/hsl-to-rgb.js +0 -39
- package/dist/tasty/utils/hsl-to-rgb.js.map +0 -1
- package/dist/tasty/utils/is-dev-env.js +0 -20
- package/dist/tasty/utils/is-dev-env.js.map +0 -1
- package/dist/tasty/utils/merge-styles.d.ts +0 -8
- package/dist/tasty/utils/merge-styles.js +0 -147
- package/dist/tasty/utils/merge-styles.js.map +0 -1
- package/dist/tasty/utils/mod-attrs.d.ts +0 -9
- package/dist/tasty/utils/mod-attrs.js +0 -22
- package/dist/tasty/utils/mod-attrs.js.map +0 -1
- package/dist/tasty/utils/okhsl-to-rgb.js +0 -297
- package/dist/tasty/utils/okhsl-to-rgb.js.map +0 -1
- package/dist/tasty/utils/process-tokens.d.ts +0 -32
- package/dist/tasty/utils/process-tokens.js +0 -172
- package/dist/tasty/utils/process-tokens.js.map +0 -1
- package/dist/tasty/utils/resolve-recipes.d.ts +0 -18
- package/dist/tasty/utils/resolve-recipes.js +0 -144
- package/dist/tasty/utils/resolve-recipes.js.map +0 -1
- package/dist/tasty/utils/string.js +0 -9
- package/dist/tasty/utils/string.js.map +0 -1
- package/dist/tasty/utils/styles.d.ts +0 -204
- package/dist/tasty/utils/styles.js +0 -577
- package/dist/tasty/utils/styles.js.map +0 -1
- package/dist/tasty/utils/typography.d.ts +0 -37
- package/dist/tasty/utils/typography.js +0 -54
- package/dist/tasty/utils/typography.js.map +0 -1
- package/dist/tasty/utils/warnings.d.ts +0 -17
- package/dist/tasty/utils/warnings.js +0 -17
- package/dist/tasty/utils/warnings.js.map +0 -1
- package/dist/tasty/zero/babel.d.ts +0 -111
- package/dist/tasty/zero/babel.js +0 -283
- package/dist/tasty/zero/babel.js.map +0 -1
- package/dist/tasty/zero/index.d.ts +0 -4
- package/dist/tasty/zero/index.js +0 -5
- package/dist/tasty/zero/next.d.ts +0 -61
- package/dist/tasty/zero/next.js +0 -79
- package/dist/tasty/zero/next.js.map +0 -1
- package/dist/tasty.config.ts +0 -311
- package/dist/tokens/typography.d.ts +0 -35
- package/dist/tokens/typography.js +0 -238
- package/dist/tokens/typography.js.map +0 -1
- package/dist/utils/cache-wrapper.js +0 -25
- package/dist/utils/cache-wrapper.js.map +0 -1
- package/dist/utils/case-converter.js +0 -9
- package/dist/utils/case-converter.js.map +0 -1
- package/dist/utils/hsl-to-rgb.js +0 -39
- package/dist/utils/hsl-to-rgb.js.map +0 -1
- package/dist/utils/merge-styles.js +0 -147
- package/dist/utils/merge-styles.js.map +0 -1
- package/dist/utils/okhsl-to-rgb.js +0 -297
- package/dist/utils/okhsl-to-rgb.js.map +0 -1
- package/dist/utils/process-tokens.js +0 -29
- package/dist/utils/process-tokens.js.map +0 -1
- package/dist/utils/resolve-recipes.js +0 -144
- package/dist/utils/resolve-recipes.js.map +0 -1
- package/dist/utils/string.js +0 -9
- package/dist/utils/string.js.map +0 -1
- package/dist/utils/styles.d.ts +0 -23
- package/dist/utils/styles.js +0 -338
- package/dist/utils/styles.js.map +0 -1
|
@@ -1,7 +1,4 @@
|
|
|
1
1
|
|
|
2
|
-
import { Styles } from "../../../tasty/styles/types.js";
|
|
3
|
-
import { BasePropsWithoutChildren, ContainerStyleProps } from "../../../tasty/types.js";
|
|
4
|
-
import "../../../tasty/index.js";
|
|
5
2
|
import { CubeItemBadgeProps } from "../../content/ItemBadge/ItemBadge.js";
|
|
6
3
|
import { CubeItemActionProps } from "../ItemAction/ItemAction.js";
|
|
7
4
|
import { _MenuTrigger } from "./MenuTrigger.js";
|
|
@@ -9,6 +6,7 @@ import { SubMenuTrigger } from "./SubMenuTrigger.js";
|
|
|
9
6
|
import "../index.js";
|
|
10
7
|
import { CubeCollectionItemProps, _CollectionItem } from "../../CollectionItem.js";
|
|
11
8
|
import "../../../index.js";
|
|
9
|
+
import { BasePropsWithoutChildren, ContainerStyleProps, Styles } from "@tenphi/tasty";
|
|
12
10
|
import React, { ReactElement, ReactNode } from "react";
|
|
13
11
|
import { AriaMenuProps } from "react-aria";
|
|
14
12
|
import { Section } from "react-stately";
|
|
@@ -1,7 +1,4 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.
|
|
2
|
-
import { extractStyles } from "../../../tasty/utils/styles.js";
|
|
3
|
-
import { CONTAINER_STYLES } from "../../../tasty/styles/list.js";
|
|
4
|
-
import { filterBaseProps } from "../../../tasty/utils/filter-base-props.js";
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.119.1 | Cube Dev Team */
|
|
5
2
|
import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
|
|
6
3
|
import { _CollectionItem } from "../../CollectionItem.js";
|
|
7
4
|
import { useMenuContext } from "./context.js";
|
|
@@ -10,6 +7,7 @@ import { StyledDivider, StyledFooter, StyledHeader, StyledMenu, StyledMenuWrappe
|
|
|
10
7
|
import { MenuSection } from "./MenuSection.js";
|
|
11
8
|
import { _MenuTrigger } from "./MenuTrigger.js";
|
|
12
9
|
import { SubMenuTrigger } from "./SubMenuTrigger.js";
|
|
10
|
+
import { CONTAINER_STYLES, extractStyles, filterBaseProps } from "@tenphi/tasty";
|
|
13
11
|
import React, { useMemo } from "react";
|
|
14
12
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
15
13
|
import { useMenu } from "react-aria";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Menu.js","names":["mergeProps","Section","BaseSection","CollectionItem","MenuTrigger"],"sources":["../../../../src/components/actions/Menu/Menu.tsx"],"sourcesContent":["import { useSyncRef } from '@react-aria/utils';\nimport { useDOMRef } from '@react-spectrum/utils';\nimport { DOMRef, FocusStrategy, ItemProps } from '@react-types/shared';\nimport React, { ReactElement, ReactNode, useMemo } from 'react';\nimport { AriaMenuProps, useMenu } from 'react-aria';\nimport { Section as BaseSection, useTreeState } from 'react-stately';\n\nimport {\n BasePropsWithoutChildren,\n CONTAINER_STYLES,\n ContainerStyleProps,\n extractStyles,\n filterBaseProps,\n Styles,\n} from '../../../tasty';\nimport { mergeProps } from '../../../utils/react';\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 'selectedKeys' | 'defaultSelectedKeys' | 'onSelectionChange'\n > {\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: DOMRef<HTMLUListElement>,\n) {\n const {\n header,\n footer,\n menuStyles,\n headerStyles,\n footerStyles,\n itemStyles,\n sectionStyles,\n sectionHeadingStyles,\n size = 'medium',\n focusOnHover = false,\n qa,\n selectedKeys,\n defaultSelectedKeys,\n onSelectionChange,\n ...rest\n } = props;\n const domRef = useDOMRef(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 focusOnHover,\n selectedKeys: ariaSelectedKeys,\n defaultSelectedKeys: ariaDefaultSelectedKeys,\n onSelectionChange: handleSelectionChange,\n });\n\n // Props used for collection building.\n const treeProps = completeProps as typeof completeProps;\n\n const state = useTreeState(treeProps as typeof completeProps);\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 = useMemo(\n () => extractStyles(completeProps, CONTAINER_STYLES),\n [completeProps],\n );\n\n const wrapperMods = useMemo(() => {\n return {\n popover: completeProps.mods?.popover,\n footer: !!footer,\n header: !!header,\n };\n }, [completeProps.mods?.popover, footer, header]);\n\n const menuMods = useMemo(() => {\n return {\n sections: hasSections,\n };\n }, [hasSections]);\n\n // Sync the ref stored in the context object with the DOM ref returned by useDOMRef.\n // The helper from @react-aria/utils expects the context object as the first argument\n // to keep it up-to-date, and a ref object as the second.\n useSyncRef(contextProps, domRef);\n\n const renderedItems = useMemo(() => {\n const items: React.ReactNode[] = [];\n let isFirstSection = true;\n\n collectionItems.forEach((item) => {\n if (item.type === 'section') {\n if (!isFirstSection) {\n items.push(\n <StyledDivider\n key={`divider-${String(item.key)}`}\n role=\"separator\"\n aria-orientation=\"horizontal\"\n />,\n );\n }\n\n items.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 onAction={item.onAction}\n />\n );\n\n // Apply tooltip wrapper if tooltip property is provided\n // if (item.props.tooltip) {\n // const tooltipProps =\n // typeof item.props.tooltip === 'string'\n // ? { title: item.props.tooltip }\n // : item.props.tooltip;\n\n // menuItem = (\n // <TooltipProvider key={item.key} placement=\"right\" {...tooltipProps}>\n // {menuItem}\n // </TooltipProvider>\n // );\n // }\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 items.push(React.cloneElement(menuItem, { key: item.key }));\n });\n\n return items;\n }, [collectionItems, state, sectionStyles, itemStyles, sectionHeadingStyles]);\n\n return (\n <StyledMenuWrapper\n qa={qa}\n styles={styles}\n mods={wrapperMods}\n {...filterBaseProps(completeProps)}\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":["mergeProps","Section","BaseSection","CollectionItem","MenuTrigger"],"sources":["../../../../src/components/actions/Menu/Menu.tsx"],"sourcesContent":["import { useSyncRef } from '@react-aria/utils';\nimport { useDOMRef } from '@react-spectrum/utils';\nimport { DOMRef, FocusStrategy, ItemProps } from '@react-types/shared';\nimport {\n BasePropsWithoutChildren,\n CONTAINER_STYLES,\n ContainerStyleProps,\n extractStyles,\n filterBaseProps,\n Styles,\n} from '@tenphi/tasty';\nimport React, { ReactElement, ReactNode, useMemo } from 'react';\nimport { AriaMenuProps, useMenu } from 'react-aria';\nimport { Section as BaseSection, useTreeState } from 'react-stately';\n\nimport { mergeProps } from '../../../utils/react';\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 'selectedKeys' | 'defaultSelectedKeys' | 'onSelectionChange'\n > {\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: DOMRef<HTMLUListElement>,\n) {\n const {\n header,\n footer,\n menuStyles,\n headerStyles,\n footerStyles,\n itemStyles,\n sectionStyles,\n sectionHeadingStyles,\n size = 'medium',\n focusOnHover = false,\n qa,\n selectedKeys,\n defaultSelectedKeys,\n onSelectionChange,\n ...rest\n } = props;\n const domRef = useDOMRef(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 focusOnHover,\n selectedKeys: ariaSelectedKeys,\n defaultSelectedKeys: ariaDefaultSelectedKeys,\n onSelectionChange: handleSelectionChange,\n });\n\n // Props used for collection building.\n const treeProps = completeProps as typeof completeProps;\n\n const state = useTreeState(treeProps as typeof completeProps);\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 = useMemo(\n () => extractStyles(completeProps, CONTAINER_STYLES),\n [completeProps],\n );\n\n const wrapperMods = useMemo(() => {\n return {\n popover: completeProps.mods?.popover,\n footer: !!footer,\n header: !!header,\n };\n }, [completeProps.mods?.popover, footer, header]);\n\n const menuMods = useMemo(() => {\n return {\n sections: hasSections,\n };\n }, [hasSections]);\n\n // Sync the ref stored in the context object with the DOM ref returned by useDOMRef.\n // The helper from @react-aria/utils expects the context object as the first argument\n // to keep it up-to-date, and a ref object as the second.\n useSyncRef(contextProps, domRef);\n\n const renderedItems = useMemo(() => {\n const items: React.ReactNode[] = [];\n let isFirstSection = true;\n\n collectionItems.forEach((item) => {\n if (item.type === 'section') {\n if (!isFirstSection) {\n items.push(\n <StyledDivider\n key={`divider-${String(item.key)}`}\n role=\"separator\"\n aria-orientation=\"horizontal\"\n />,\n );\n }\n\n items.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 onAction={item.onAction}\n />\n );\n\n // Apply tooltip wrapper if tooltip property is provided\n // if (item.props.tooltip) {\n // const tooltipProps =\n // typeof item.props.tooltip === 'string'\n // ? { title: item.props.tooltip }\n // : item.props.tooltip;\n\n // menuItem = (\n // <TooltipProvider key={item.key} placement=\"right\" {...tooltipProps}>\n // {menuItem}\n // </TooltipProvider>\n // );\n // }\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 items.push(React.cloneElement(menuItem, { key: item.key }));\n });\n\n return items;\n }, [collectionItems, state, sectionStyles, itemStyles, sectionHeadingStyles]);\n\n return (\n <StyledMenuWrapper\n qa={qa}\n styles={styles}\n mods={wrapperMods}\n {...filterBaseProps(completeProps)}\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,6 +1,5 @@
|
|
|
1
1
|
|
|
2
|
-
import { Styles } from "
|
|
3
|
-
import "../../../tasty/index.js";
|
|
2
|
+
import { Styles } from "@tenphi/tasty";
|
|
4
3
|
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
5
4
|
import { TreeState } from "react-stately";
|
|
6
5
|
import { Key, Node } from "@react-types/shared";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.119.1 | Cube Dev Team */
|
|
2
2
|
import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
|
|
3
3
|
import { filterCollectionItemProps } from "../../CollectionItem.js";
|
|
4
4
|
import { _Item } from "../../content/Item/Item.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MenuItem.js","names":["Item","mergeProps"],"sources":["../../../../src/components/actions/Menu/MenuItem.tsx"],"sourcesContent":["import { Key, Node } from '@react-types/shared';\nimport { KeyboardEvent, useContext, useRef } from 'react';\nimport { FocusRing, useMenuItem } from 'react-aria';\nimport { TreeState } from 'react-stately';\n\nimport { RightIcon } from '../../../icons';\nimport {
|
|
1
|
+
{"version":3,"file":"MenuItem.js","names":["Item","mergeProps"],"sources":["../../../../src/components/actions/Menu/MenuItem.tsx"],"sourcesContent":["import { Key, Node } from '@react-types/shared';\nimport { Styles } from '@tenphi/tasty';\nimport { KeyboardEvent, useContext, useRef } from 'react';\nimport { FocusRing, useMenuItem } from 'react-aria';\nimport { TreeState } from 'react-stately';\n\nimport { RightIcon } from '../../../icons';\nimport { mergeProps } from '../../../utils/react';\nimport { filterCollectionItemProps } from '../../CollectionItem';\nimport { Item } from '../../content/Item/Item';\n\nimport { useMenuContext } from './context';\nimport { SubmenuTriggerContext } from './SubmenuTriggerContext';\n\nexport type MenuSelectionType = 'checkbox' | 'radio' | 'checkmark';\n\nexport interface MenuItemProps<T> {\n item: Node<T>;\n state: TreeState<T>;\n styles?: Styles;\n isVirtualized?: boolean;\n isDisabled?: boolean;\n onAction?: (key: Key) => void;\n size?: 'small' | 'medium' | (string & {});\n}\n\n/** @private */\nexport function MenuItem<T>(props: MenuItemProps<T>) {\n const { item, state, styles, isVirtualized, onAction, size } = props;\n const { onClose, closeOnSelect } = useMenuContext();\n const { rendered, key, props: itemProps } = item;\n\n // Check if this item is wrapped in a SubmenuTriggerContext\n const submenuContext = useContext(SubmenuTriggerContext);\n\n // Filter out service props (react-stately and parent-handled props)\n // All remaining props are safe to pass to Item component\n const filteredItemProps = filterCollectionItemProps(itemProps);\n\n // Extract specific props that need special handling\n const { hotkeys, mods: itemMods, qa: itemQa } = filteredItemProps;\n\n const isSelectable = state.selectionManager.selectionMode !== 'none';\n const isDisabledKey =\n state.disabledKeys.has(key) || submenuContext?.isDisabled;\n\n const ref = useRef<HTMLLIElement>(null);\n\n // Use the triggerRef from submenu context if present\n const elementRef = (submenuContext?.triggerRef ?? ref) as any;\n\n const {\n menuItemProps,\n labelProps,\n descriptionProps,\n keyboardShortcutProps,\n isFocused,\n isSelected,\n isPressed,\n isDisabled,\n } = useMenuItem(\n {\n isSelected: state.selectionManager.isSelected(key),\n isDisabled: isDisabledKey,\n 'aria-label': item['aria-label'],\n key,\n onClose: submenuContext ? undefined : onClose, // Don't close menu for submenu triggers\n closeOnSelect: submenuContext ? false : closeOnSelect, // Don't close on submenu trigger selection\n isVirtualized,\n onAction: submenuContext?.onAction || onAction,\n },\n state,\n elementRef,\n );\n\n // Selection indicator will be handled by Item component\n const isVirtualFocused = state.selectionManager.focusedKey === key;\n\n const mods = {\n ...itemMods,\n focused: isFocused || isVirtualFocused,\n pressed: isPressed,\n selected: isSelected,\n disabled: isDisabled,\n submenu: !!submenuContext,\n menuitem: true,\n };\n\n return (\n <FocusRing>\n <Item\n {...mergeProps(menuItemProps, filteredItemProps, {\n 'data-popover-trigger': true,\n qa: itemQa ? itemQa : `MenuItem-${key}`,\n mods,\n styles,\n 'data-size': size,\n as: 'li',\n labelProps,\n descriptionProps,\n keyboardShortcutProps,\n 'aria-haspopup': submenuContext ? 'menu' : undefined,\n 'aria-expanded': submenuContext?.isOpen,\n 'data-has-submenu': submenuContext ? true : undefined,\n onKeyDown: submenuContext?.onKeyDown\n ? (e: KeyboardEvent) => {\n // Call submenu handler first, if it prevents default, don't call the original\n submenuContext.onKeyDown?.(e);\n if (!e.defaultPrevented && menuItemProps.onKeyDown) {\n menuItemProps.onKeyDown(e);\n }\n }\n : menuItemProps.onKeyDown,\n onMouseEnter:\n submenuContext?.onMouseEnter || menuItemProps.onMouseEnter,\n onMouseLeave:\n submenuContext?.onMouseLeave || menuItemProps.onMouseLeave,\n })}\n ref={elementRef}\n disableActionsFocus={true}\n rightIcon={submenuContext ? <RightIcon /> : filteredItemProps.rightIcon}\n defaultTooltipPlacement=\"right\"\n isSelected={isSelectable ? isSelected : undefined}\n isDisabled={isDisabled}\n size={size === 'small' ? 'small' : 'medium'}\n >\n {rendered}\n </Item>\n </FocusRing>\n );\n}\n"],"mappings":";;;;;;;;;;;;;AA2BA,SAAgB,SAAY,OAAyB;CACnD,MAAM,EAAE,MAAM,OAAO,QAAQ,eAAe,UAAU,SAAS;CAC/D,MAAM,EAAE,SAAS,kBAAkB,gBAAgB;CACnD,MAAM,EAAE,UAAU,KAAK,OAAO,cAAc;CAG5C,MAAM,iBAAiB,WAAW,sBAAsB;CAIxD,MAAM,oBAAoB,0BAA0B,UAAU;CAG9D,MAAM,EAAE,SAAS,MAAM,UAAU,IAAI,WAAW;CAEhD,MAAM,eAAe,MAAM,iBAAiB,kBAAkB;CAC9D,MAAM,gBACJ,MAAM,aAAa,IAAI,IAAI,IAAI,gBAAgB;CAEjD,MAAM,MAAM,OAAsB,KAAK;CAGvC,MAAM,aAAc,gBAAgB,cAAc;CAElD,MAAM,EACJ,eACA,YACA,kBACA,uBACA,WACA,YACA,WACA,eACE,YACF;EACE,YAAY,MAAM,iBAAiB,WAAW,IAAI;EAClD,YAAY;EACZ,cAAc,KAAK;EACnB;EACA,SAAS,iBAAiB,SAAY;EACtC,eAAe,iBAAiB,QAAQ;EACxC;EACA,UAAU,gBAAgB,YAAY;EACvC,EACD,OACA,WACD;CAGD,MAAM,mBAAmB,MAAM,iBAAiB,eAAe;CAE/D,MAAM,OAAO;EACX,GAAG;EACH,SAAS,aAAa;EACtB,SAAS;EACT,UAAU;EACV,UAAU;EACV,SAAS,CAAC,CAAC;EACX,UAAU;EACX;AAED,QACE,oBAAC,uBACC,oBAACA;EACC,GAAIC,aAAW,eAAe,mBAAmB;GAC/C,wBAAwB;GACxB,IAAI,SAAS,SAAS,YAAY;GAClC;GACA;GACA,aAAa;GACb,IAAI;GACJ;GACA;GACA;GACA,iBAAiB,iBAAiB,SAAS;GAC3C,iBAAiB,gBAAgB;GACjC,oBAAoB,iBAAiB,OAAO;GAC5C,WAAW,gBAAgB,aACtB,MAAqB;AAEpB,mBAAe,YAAY,EAAE;AAC7B,QAAI,CAAC,EAAE,oBAAoB,cAAc,UACvC,eAAc,UAAU,EAAE;OAG9B,cAAc;GAClB,cACE,gBAAgB,gBAAgB,cAAc;GAChD,cACE,gBAAgB,gBAAgB,cAAc;GACjD,CAAC;EACF,KAAK;EACL,qBAAqB;EACrB,WAAW,iBAAiB,oBAAC,cAAY,GAAG,kBAAkB;EAC9D,yBAAwB;EACxB,YAAY,eAAe,aAAa;EAC5B;EACZ,MAAM,SAAS,UAAU,UAAU;YAElC;GACI,GACG"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
|
|
2
|
-
import { Styles } from "../../../tasty/styles/types.js";
|
|
3
|
-
import "../../../tasty/index.js";
|
|
4
2
|
import { MenuItemProps } from "./MenuItem.js";
|
|
3
|
+
import { Styles } from "@tenphi/tasty";
|
|
5
4
|
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
6
5
|
|
|
7
6
|
//#region src/components/actions/Menu/MenuSection.d.ts
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.119.1 | Cube Dev Team */
|
|
2
2
|
import { TooltipProvider } from "../../overlays/Tooltip/TooltipProvider.js";
|
|
3
3
|
import { MenuItem } from "./MenuItem.js";
|
|
4
4
|
import { StyledMenu, StyledSection, StyledSectionHeading } from "./styled.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MenuSection.js","names":[],"sources":["../../../../src/components/actions/Menu/MenuSection.tsx"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"MenuSection.js","names":[],"sources":["../../../../src/components/actions/Menu/MenuSection.tsx"],"sourcesContent":["import { Styles } from '@tenphi/tasty';\nimport { useMenuSection } from 'react-aria';\n\nimport { TooltipProvider } from '../../overlays/Tooltip/TooltipProvider';\n\nimport { MenuItem, MenuItemProps } from './MenuItem';\nimport { StyledMenu, StyledSection, StyledSectionHeading } from './styled';\n\nexport interface CubeMenuSectionProps<T> extends MenuItemProps<T> {\n itemStyles?: Styles;\n headingStyles?: Styles;\n size?: 'small' | 'medium' | (string & {});\n}\n\n/** @private */\nexport function MenuSection<T>(props: CubeMenuSectionProps<T>) {\n const { item, state, styles, itemStyles, headingStyles, size } = props;\n const heading = item.rendered;\n const { itemProps, headingProps, groupProps } = useMenuSection({\n heading,\n 'aria-label': item['aria-label'],\n });\n\n return (\n <>\n <StyledSection {...itemProps} styles={styles}>\n {heading && (\n <StyledSectionHeading\n {...headingProps}\n size={size}\n styles={headingStyles}\n >\n {heading}\n </StyledSectionHeading>\n )}\n <StyledMenu {...groupProps} mods={{ section: true }}>\n {[...item.childNodes].map((node) => {\n let menuItem = (\n <MenuItem\n key={node.key}\n item={node}\n styles={itemStyles}\n state={state}\n size={size}\n onAction={(node as unknown as MenuItemProps<T>).onAction}\n />\n );\n\n // Apply tooltip wrapper if tooltip property is provided\n if (node.props.tooltip) {\n const tooltipProps =\n typeof node.props.tooltip === 'string'\n ? { title: node.props.tooltip }\n : node.props.tooltip;\n\n menuItem = (\n <TooltipProvider\n key={node.key}\n activeWrap\n placement=\"right\"\n {...tooltipProps}\n >\n {menuItem}\n </TooltipProvider>\n );\n }\n\n if (node.props.wrapper) {\n menuItem = node.props.wrapper(menuItem);\n }\n\n return menuItem;\n })}\n </StyledMenu>\n </StyledSection>\n </>\n );\n}\n"],"mappings":";;;;;;;;;AAeA,SAAgB,YAAe,OAAgC;CAC7D,MAAM,EAAE,MAAM,OAAO,QAAQ,YAAY,eAAe,SAAS;CACjE,MAAM,UAAU,KAAK;CACrB,MAAM,EAAE,WAAW,cAAc,eAAe,eAAe;EAC7D;EACA,cAAc,KAAK;EACpB,CAAC;AAEF,QACE,0CACE,qBAAC;EAAc,GAAI;EAAmB;aACnC,WACC,oBAAC;GACC,GAAI;GACE;GACN,QAAQ;aAEP;IACoB,EAEzB,oBAAC;GAAW,GAAI;GAAY,MAAM,EAAE,SAAS,MAAM;aAChD,CAAC,GAAG,KAAK,WAAW,CAAC,KAAK,SAAS;IAClC,IAAI,WACF,oBAAC;KAEC,MAAM;KACN,QAAQ;KACD;KACD;KACN,UAAW,KAAqC;OAL3C,KAAK,IAMV;AAIJ,QAAI,KAAK,MAAM,QAMb,YACE,oBAAC;KAEC;KACA,WAAU;KACV,GATF,OAAO,KAAK,MAAM,YAAY,WAC1B,EAAE,OAAO,KAAK,MAAM,SAAS,GAC7B,KAAK,MAAM;eASZ;OALI,KAAK,IAMM;AAItB,QAAI,KAAK,MAAM,QACb,YAAW,KAAK,MAAM,QAAQ,SAAS;AAGzC,WAAO;KACP;IACS;GACC,GACf"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.119.1 | Cube Dev Team */
|
|
2
2
|
import { SlotProvider } from "../../../utils/react/Slots.js";
|
|
3
3
|
import { useEventBus } from "../../../utils/react/useEventBus.js";
|
|
4
4
|
import { MenuContext } from "./context.js";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.119.1 | Cube Dev Team */
|
|
2
2
|
import { useEventBus } from "../../../utils/react/useEventBus.js";
|
|
3
3
|
import { MenuContext, useMenuContext } from "./context.js";
|
|
4
4
|
import { SubmenuTriggerContext } from "./SubmenuTriggerContext.js";
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.
|
|
2
|
-
import { tasty } from "../../../tasty/tasty.js";
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.119.1 | Cube Dev Team */
|
|
3
2
|
import { DEFAULT_NEUTRAL_STYLES } from "../../../data/item-themes.js";
|
|
4
3
|
import { Space } from "../../layout/Space.js";
|
|
5
4
|
import { DEFAULT_BUTTON_STYLES } from "../Button/Button.js";
|
|
5
|
+
import { tasty } from "@tenphi/tasty";
|
|
6
6
|
|
|
7
7
|
//#region src/components/actions/Menu/styled.tsx
|
|
8
8
|
const StyledMenuWrapper = tasty({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styled.js","names":[],"sources":["../../../../src/components/actions/Menu/styled.tsx"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"styled.js","names":[],"sources":["../../../../src/components/actions/Menu/styled.tsx"],"sourcesContent":["import { tasty } from '@tenphi/tasty';\n\nimport { DEFAULT_NEUTRAL_STYLES } from '../../../data/item-themes';\nimport { Space } from '../../layout/Space';\nimport { DEFAULT_BUTTON_STYLES } from '../Button/Button';\n\nexport const StyledMenuWrapper = tasty({\n qa: 'Menu',\n styles: {\n display: 'grid',\n gridRows: 'max-content 1sf max-content',\n fill: '#white',\n margin: 0,\n padding: 0,\n border: true,\n radius: '(1cr + 1bw)',\n width: {\n '': 'auto',\n popover: 'max-content',\n },\n shadow: {\n '': '',\n 'popover | tray': '0px 5px 15px #dark.05',\n },\n height: {\n '': 'initial',\n popover: 'initial max-content (50vh - 4x)',\n tray: 'initial max-content (100vh - 4x)',\n },\n boxSizing: 'border-box',\n },\n});\n\nexport const StyledMenu = tasty({\n as: 'ul',\n qa: 'MenuList',\n styles: {\n display: 'flex',\n flow: 'column',\n gap: {\n '': '1bw',\n sections: false,\n },\n boxSizing: 'border-box',\n margin: 0,\n padding: {\n '': '0.5x',\n section: 0, // section menu\n },\n overflow: {\n '': 'auto',\n section: '',\n },\n scrollbar: 'styled',\n },\n});\n\nexport const StyledDivider = tasty({\n qa: 'Divider',\n as: 'li',\n styles: {\n display: 'flex',\n flow: 'column',\n margin: '.5x',\n listStyle: 'none',\n fill: '#border',\n height: '1bw',\n flexShrink: 0,\n },\n});\n\nexport const StyledHeader = tasty(Space, {\n qa: 'Header',\n as: 'div',\n role: 'heading',\n 'aria-level': 3,\n styles: {\n color: '#dark-02',\n preset: 't3',\n placeContent: 'space-between',\n placeItems: 'center',\n whiteSpace: 'nowrap',\n padding: '.5x 1.5x',\n height: 'min $size',\n boxSizing: 'border-box',\n border: 'bottom',\n radius: '1cr top',\n\n $size: {\n '': '$size-md',\n 'size=small': '$size-sm',\n 'size=medium': '$size-md',\n 'size=large': '$size-lg',\n },\n },\n});\n\nexport const StyledFooter = tasty(Space, {\n qa: 'Footer',\n as: 'div',\n role: 'footer',\n styles: {\n color: '#dark-02',\n preset: 't3',\n placeContent: 'space-between',\n placeItems: 'center',\n whiteSpace: 'nowrap',\n padding: '.5x 1.5x',\n height: {\n '': 'min $size-md',\n 'size=large': 'min $size-lg',\n },\n boxSizing: 'border-box',\n border: 'top',\n radius: '1cr bottom',\n },\n});\n\nexport const StyledSection = tasty({\n qa: 'Section',\n as: 'li',\n styles: {\n display: 'flex',\n flow: 'column',\n margin: '0',\n padding: '0',\n listStyle: 'none',\n fill: '#white',\n },\n});\n\nexport const StyledItem = tasty({\n qa: 'Item',\n as: 'li',\n styles: {\n // Base button-like styles merged from Action/Button defaults\n ...DEFAULT_BUTTON_STYLES,\n ...DEFAULT_NEUTRAL_STYLES,\n\n // Override specifics for menu context\n display: 'flex',\n flow: 'row',\n justifyContent: 'stretch',\n listStyle: 'none',\n flexShrink: 0,\n height: {\n '': 'min $size-md',\n 'size=large': 'min $size-lg',\n },\n border: false,\n boxSizing: 'border-box',\n fill: {\n '': '#clear',\n focused: '#dark.03',\n selected: '#dark.09',\n 'selected & focused': '#dark.12',\n pressed: '#dark.09',\n disabled: '#clear',\n },\n color: {\n '': '#dark-02',\n 'selected | pressed': '#dark',\n disabled: '#dark-04',\n },\n cursor: {\n '': 'default',\n disabled: 'not-allowed',\n },\n shadow: '#clear',\n padding: {\n '': '.5x 1x',\n 'selectionIcon & selectable & !selected': '.5x 1x .5x (1x + 3x)',\n },\n gap: '.75x',\n outline: false,\n\n // Sub-elements reused from MenuButton styles\n ButtonIcon: {\n display: 'grid',\n fontSize: '$icon-size',\n width: '$icon-size',\n height: '$icon-size',\n placeSelf: 'center',\n placeItems: 'center',\n },\n\n '& [data-element=\"ButtonIcon\"]:first-child:not(:last-child)': {\n marginLeft: 0,\n },\n\n '& [data-element=\"ButtonIcon\"]:last-child:not(:first-child)': {\n marginRight: 0,\n },\n\n Postfix: {\n color: {\n '': '#dark-03',\n pressed: '#dark-02',\n disabled: '#dark-04',\n },\n },\n\n Description: {\n preset: 't4',\n color: '#dark-03',\n },\n },\n});\n\nexport const StyledSectionHeading = tasty(Space, {\n qa: 'SectionHeading',\n as: 'div',\n styles: {\n color: '#dark-04',\n preset: 'c2',\n height: '3x',\n placeContent: 'center space-between',\n align: 'start',\n padding: {\n '': '.5x .75x',\n prefix: '0 .75x 0 .5x',\n },\n\n $size: {\n '': '$size-md',\n 'size=small': '$size-sm',\n 'size=medium': '$size-md',\n 'size=large': '$size-lg',\n },\n },\n});\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.119.1 | Cube Dev Team */
|
|
2
2
|
import { ItemActionProvider, useItemActionContext } from "./ItemActionContext.js";
|
|
3
3
|
import { openLink, parseTo, performClickHandler, useAction } from "./use-action.js";
|
|
4
4
|
import { ItemAction } from "./ItemAction/ItemAction.js";
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
|
|
2
|
-
import { AllBaseProps, TagName } from "../../tasty/types.js";
|
|
3
|
-
import "../../tasty/index.js";
|
|
4
2
|
import { NavigateArg, NavigateLike, NavigateOptions, Path, RelativeRoutingType, To } from "../../providers/navigation.types.js";
|
|
3
|
+
import { AllBaseProps, TagName } from "@tenphi/tasty";
|
|
5
4
|
import * as react from "react";
|
|
6
5
|
import { AriaButtonProps } from "react-aria";
|
|
7
6
|
import * as _react_types_shared0 from "@react-types/shared";
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.
|
|
2
|
-
import { filterBaseProps } from "../../tasty/utils/filter-base-props.js";
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.119.1 | Cube Dev Team */
|
|
3
2
|
import { mergeProps as mergeProps$1 } from "../../utils/react/mergeProps.js";
|
|
4
3
|
import { useEvent } from "../../_internal/hooks/use-event.js";
|
|
5
4
|
import { useFocus as useFocus$1 } from "../../utils/react/interactions.js";
|
|
6
5
|
import { UIKitContext } from "../../provider.js";
|
|
7
6
|
import { useTracking } from "../../providers/TrackingProvider.js";
|
|
7
|
+
import { filterBaseProps } from "@tenphi/tasty";
|
|
8
8
|
import { useContext } from "react";
|
|
9
9
|
import { useButton, useHover } from "react-aria";
|
|
10
10
|
import { useFocusableRef } from "@react-spectrum/utils";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-action.js","names":["useFocus","mergeProps"],"sources":["../../../src/components/actions/use-action.ts"],"sourcesContent":["import { useFocusableRef } from '@react-spectrum/utils';\nimport { FocusableRef, PressEvent } from '@react-types/shared';\nimport { useContext } from 'react';\nimport { AriaButtonProps, useButton, useHover } from 'react-aria';\n\nimport { useEvent } from '../../_internal';\nimport { UIKitContext } from '../../provider';\nimport { useTracking } from '../../providers/TrackingProvider';\nimport { AllBaseProps, filterBaseProps, TagName } from '../../tasty';\nimport { mergeProps } from '../../utils/react';\nimport { useFocus } from '../../utils/react/interactions';\n\n// Import specific types for internal usage\nimport type {\n NavigateArg,\n NavigateOptions,\n Path,\n To,\n} from '../../providers/navigation.types';\n\nconst LINK_PRESS_EVENT = 'Link Press';\nconst BUTTON_PRESS_EVENT = 'Button Press';\n\n// Re-export types for convenience\nexport type {\n NavigateLike,\n Path,\n To,\n NavigateArg,\n NavigateOptions,\n RelativeRoutingType,\n} from '../../providers/navigation.types';\n\nexport interface CubeUseActionProps<\n T extends TagName = 'a' | 'button' | 'span' | 'div',\n> extends AllBaseProps<T>,\n Omit<AriaButtonProps, 'type'> {\n to?: NavigateArg;\n label?: string;\n htmlType?: 'button' | 'submit' | 'reset' | undefined;\n navigationOptions?: NavigateOptions;\n}\n\nconst FILTER_OPTIONS = { propNames: new Set(['onMouseEnter', 'onMouseLeave']) };\n\n/**\n * Helper to open link.\n * @param {String} href\n * @param {String|Boolean} [target]\n */\nexport function openLink(href, target?) {\n const link = document.createElement('a');\n\n link.href = href;\n\n if (target) {\n link.target = target === true ? '_blank' : target;\n // Prevent reverse tabnabbing when opening in a new tab\n link.rel = 'noopener noreferrer';\n }\n\n document.body.appendChild(link);\n\n link.click();\n\n document.body.removeChild(link);\n}\n\n/**\n * Checks if a URL is external (absolute HTTP(S), protocol-relative, or non-http protocols)\n */\nfunction isExternalUrl(url: string): boolean {\n return (\n url.startsWith('http://') ||\n url.startsWith('https://') ||\n url.startsWith('//') ||\n (url.includes(':') && !url.startsWith('#'))\n );\n}\n\nexport function parseTo(to: NavigateArg | undefined): {\n newTab: boolean;\n nativeRoute: boolean;\n cleanTo: To | undefined;\n isHistoryNavigation: boolean;\n historyDelta?: number;\n isHashNavigation: boolean;\n isExternal: boolean;\n} {\n // Handle number (history navigation)\n if (typeof to === 'number') {\n return {\n newTab: false,\n nativeRoute: false,\n cleanTo: undefined,\n isHistoryNavigation: true,\n historyDelta: to,\n isHashNavigation: false,\n isExternal: false,\n };\n }\n\n // Handle object path\n if (to && typeof to === 'object') {\n return {\n newTab: false,\n nativeRoute: false,\n cleanTo: to,\n isHistoryNavigation: false,\n isHashNavigation: false,\n isExternal: false,\n };\n }\n\n // Handle string\n if (!to || typeof to !== 'string') {\n return {\n newTab: false,\n nativeRoute: false,\n cleanTo: undefined,\n isHistoryNavigation: false,\n isHashNavigation: false,\n isExternal: false,\n };\n }\n\n const newTab = to.startsWith('!');\n const nativeRoute = to.startsWith('@');\n const isHashNavigation = to.startsWith('#');\n const cleanTo = newTab || nativeRoute ? to.slice(1) : to;\n const isExternal = typeof cleanTo === 'string' && isExternalUrl(cleanTo);\n\n return {\n newTab,\n nativeRoute,\n cleanTo,\n isHistoryNavigation: false,\n isHashNavigation,\n isExternal,\n };\n}\n\ninterface SanitizedPressEvent {\n type?: string;\n pointerType?: string;\n shiftKey: boolean;\n metaKey: boolean;\n ctrlKey: boolean;\n altKey: boolean;\n // target is defined as a non-enumerable property below\n [key: string]: unknown; // allow non-enumerable 'target'\n}\n\nfunction sanitizePressEvent(evt: PressEvent): SanitizedPressEvent {\n const safeEvt: SanitizedPressEvent = {\n type: 'type' in evt ? evt.type : undefined,\n pointerType:\n 'pointerType' in evt\n ? (evt as { pointerType?: string }).pointerType\n : undefined,\n shiftKey:\n 'shiftKey' in evt ? !!(evt as { shiftKey?: boolean }).shiftKey : false,\n metaKey:\n 'metaKey' in evt ? !!(evt as { metaKey?: boolean }).metaKey : false,\n ctrlKey:\n 'ctrlKey' in evt ? !!(evt as { ctrlKey?: boolean }).ctrlKey : false,\n altKey: 'altKey' in evt ? !!(evt as { altKey?: boolean }).altKey : false,\n };\n try {\n Object.defineProperty(safeEvt, 'target', {\n value: 'target' in evt ? (evt as { target?: unknown }).target : undefined,\n enumerable: false,\n configurable: true,\n });\n } catch (e) {\n // Failed to define target property - continue without it\n }\n return safeEvt;\n}\n\nexport function performClickHandler(\n evt,\n { navigate, resolvedHref, to, onPress, tracking, navigationOptions },\n) {\n const {\n newTab,\n nativeRoute,\n cleanTo,\n isHistoryNavigation,\n historyDelta,\n isHashNavigation,\n isExternal,\n } = parseTo(to);\n const element = evt.target;\n const qa = element?.getAttribute('data-qa');\n\n onPress?.(sanitizePressEvent(evt));\n\n if (to == null) {\n // Allow 0 as valid navigation (go to current page)\n tracking.event(BUTTON_PRESS_EVENT, { qa }, element);\n return;\n }\n\n // Handle history navigation (back/forward)\n if (isHistoryNavigation && typeof historyDelta === 'number') {\n tracking.event(\n LINK_PRESS_EVENT,\n { qa, delta: historyDelta, type: 'router-history' },\n element,\n );\n navigate(historyDelta);\n return;\n }\n\n // Handle hash navigation (smooth scroll)\n if (isHashNavigation && typeof to === 'string') {\n const id = to.slice(1);\n const targetElement = document.getElementById(id);\n\n tracking.event(\n LINK_PRESS_EVENT,\n { qa, href: to, type: 'hash', target: id },\n element,\n );\n\n if (targetElement) {\n targetElement.scrollIntoView({\n behavior: 'smooth',\n block: 'start',\n inline: 'nearest',\n });\n }\n return;\n }\n\n // Handle new tab (via ! prefix or user modifiers)\n if (evt.shiftKey || evt.metaKey || (evt as any).ctrlKey || newTab) {\n openLink(resolvedHref, true);\n tracking.event(\n LINK_PRESS_EVENT,\n { qa, href: resolvedHref, type: 'tab' },\n element,\n );\n return;\n }\n\n // Handle @ prefix (native navigation)\n if (nativeRoute) {\n if (cleanTo === '' || cleanTo === undefined) {\n // @'' or @ -> reload current page\n tracking.event(LINK_PRESS_EVENT, { qa, type: 'native' }, element);\n window.location.reload();\n } else {\n // @path -> navigate to resolved path natively\n tracking.event(\n LINK_PRESS_EVENT,\n { qa, href: resolvedHref, type: 'native' },\n element,\n );\n window.location.assign(resolvedHref);\n }\n return;\n }\n\n // Handle external URLs (always native)\n if (isExternal && typeof cleanTo === 'string') {\n tracking.event(\n LINK_PRESS_EVENT,\n { qa, href: cleanTo, type: 'native' },\n element,\n );\n window.location.assign(cleanTo);\n return;\n }\n\n // Handle router navigation\n if (cleanTo !== undefined) {\n tracking.event(\n LINK_PRESS_EVENT,\n { qa, href: resolvedHref, type: 'router' },\n element,\n );\n navigate(cleanTo, navigationOptions);\n }\n}\n\nexport const useAction = function useAction(\n {\n to,\n as,\n htmlType,\n label,\n mods,\n onPress,\n navigationOptions,\n ...props\n }: CubeUseActionProps,\n ref: FocusableRef<HTMLElement>,\n) {\n const tracking = useTracking();\n const navigation = useContext(UIKitContext).navigation;\n const isDisabled = props.isDisabled;\n\n const {\n newTab,\n nativeRoute,\n cleanTo,\n isHistoryNavigation,\n isHashNavigation,\n isExternal,\n } = parseTo(to);\n\n // Always call navigation hooks (using fallback when to is not provided)\n const fallbackTo = to || '.';\n const navigate = navigation.useNavigate();\n const resolvedHref = navigation.useHref(fallbackTo);\n // Always resolve cleanTo href to avoid conditional hook calls\n const cleanToHref = navigation.useHref(cleanTo || '.');\n\n // Determine element type: 'a' for navigation, 'button' for actions\n as = to && !isHistoryNavigation ? 'a' : as || 'button';\n\n // Compute target (prefixes override explicit target prop per spec)\n const target = newTab ? '_blank' : props.target;\n\n // Compute href for anchor elements\n let href: string | undefined;\n if (as === 'a' && cleanTo !== undefined) {\n if (newTab || nativeRoute) {\n // For ! and @ prefixes, resolve the clean path\n href =\n typeof cleanTo === 'string' && isExternal\n ? cleanTo // External URLs as-is\n : cleanToHref;\n } else {\n // Regular navigation\n href = resolvedHref;\n }\n }\n\n const domRef = useFocusableRef(ref);\n\n // Use navigation options directly\n const mergedNavigationOptions = navigationOptions;\n\n const customOnPress = useEvent((evt: PressEvent) => {\n performClickHandler(evt, {\n navigate,\n resolvedHref: href || resolvedHref,\n to,\n onPress,\n tracking,\n navigationOptions: mergedNavigationOptions,\n });\n });\n\n let { buttonProps, isPressed } = useButton(\n {\n 'aria-label': label,\n ...props,\n onPress: customOnPress,\n },\n domRef,\n );\n let { hoverProps, isHovered } = useHover({ isDisabled });\n let { focusProps, isFocused } = useFocus({ isDisabled }, true);\n\n const customProps =\n to && !isHistoryNavigation\n ? {\n onClick(evt) {\n evt.preventDefault();\n },\n }\n : {};\n\n return {\n actionProps: {\n mods: {\n hovered: isHovered && !isDisabled,\n pressed: isPressed && !isDisabled,\n focused: isFocused && !isDisabled,\n disabled: isDisabled,\n ...mods,\n },\n ...(mergeProps(\n buttonProps,\n hoverProps,\n focusProps,\n customProps,\n filterBaseProps(props, FILTER_OPTIONS),\n ) as object),\n ref: domRef,\n type: htmlType || 'button',\n rel: as === 'a' && newTab ? 'noopener noreferrer' : undefined,\n as,\n isDisabled,\n target,\n href,\n },\n };\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"use-action.js","names":["useFocus","mergeProps"],"sources":["../../../src/components/actions/use-action.ts"],"sourcesContent":["import { useFocusableRef } from '@react-spectrum/utils';\nimport { FocusableRef, PressEvent } from '@react-types/shared';\nimport { AllBaseProps, filterBaseProps, TagName } from '@tenphi/tasty';\nimport { useContext } from 'react';\nimport { AriaButtonProps, useButton, useHover } from 'react-aria';\n\nimport { useEvent } from '../../_internal';\nimport { UIKitContext } from '../../provider';\nimport { useTracking } from '../../providers/TrackingProvider';\nimport { mergeProps } from '../../utils/react';\nimport { useFocus } from '../../utils/react/interactions';\n\n// Import specific types for internal usage\nimport type {\n NavigateArg,\n NavigateOptions,\n Path,\n To,\n} from '../../providers/navigation.types';\n\nconst LINK_PRESS_EVENT = 'Link Press';\nconst BUTTON_PRESS_EVENT = 'Button Press';\n\n// Re-export types for convenience\nexport type {\n NavigateLike,\n Path,\n To,\n NavigateArg,\n NavigateOptions,\n RelativeRoutingType,\n} from '../../providers/navigation.types';\n\nexport interface CubeUseActionProps<\n T extends TagName = 'a' | 'button' | 'span' | 'div',\n> extends AllBaseProps<T>,\n Omit<AriaButtonProps, 'type'> {\n to?: NavigateArg;\n label?: string;\n htmlType?: 'button' | 'submit' | 'reset' | undefined;\n navigationOptions?: NavigateOptions;\n}\n\nconst FILTER_OPTIONS = { propNames: new Set(['onMouseEnter', 'onMouseLeave']) };\n\n/**\n * Helper to open link.\n * @param {String} href\n * @param {String|Boolean} [target]\n */\nexport function openLink(href, target?) {\n const link = document.createElement('a');\n\n link.href = href;\n\n if (target) {\n link.target = target === true ? '_blank' : target;\n // Prevent reverse tabnabbing when opening in a new tab\n link.rel = 'noopener noreferrer';\n }\n\n document.body.appendChild(link);\n\n link.click();\n\n document.body.removeChild(link);\n}\n\n/**\n * Checks if a URL is external (absolute HTTP(S), protocol-relative, or non-http protocols)\n */\nfunction isExternalUrl(url: string): boolean {\n return (\n url.startsWith('http://') ||\n url.startsWith('https://') ||\n url.startsWith('//') ||\n (url.includes(':') && !url.startsWith('#'))\n );\n}\n\nexport function parseTo(to: NavigateArg | undefined): {\n newTab: boolean;\n nativeRoute: boolean;\n cleanTo: To | undefined;\n isHistoryNavigation: boolean;\n historyDelta?: number;\n isHashNavigation: boolean;\n isExternal: boolean;\n} {\n // Handle number (history navigation)\n if (typeof to === 'number') {\n return {\n newTab: false,\n nativeRoute: false,\n cleanTo: undefined,\n isHistoryNavigation: true,\n historyDelta: to,\n isHashNavigation: false,\n isExternal: false,\n };\n }\n\n // Handle object path\n if (to && typeof to === 'object') {\n return {\n newTab: false,\n nativeRoute: false,\n cleanTo: to,\n isHistoryNavigation: false,\n isHashNavigation: false,\n isExternal: false,\n };\n }\n\n // Handle string\n if (!to || typeof to !== 'string') {\n return {\n newTab: false,\n nativeRoute: false,\n cleanTo: undefined,\n isHistoryNavigation: false,\n isHashNavigation: false,\n isExternal: false,\n };\n }\n\n const newTab = to.startsWith('!');\n const nativeRoute = to.startsWith('@');\n const isHashNavigation = to.startsWith('#');\n const cleanTo = newTab || nativeRoute ? to.slice(1) : to;\n const isExternal = typeof cleanTo === 'string' && isExternalUrl(cleanTo);\n\n return {\n newTab,\n nativeRoute,\n cleanTo,\n isHistoryNavigation: false,\n isHashNavigation,\n isExternal,\n };\n}\n\ninterface SanitizedPressEvent {\n type?: string;\n pointerType?: string;\n shiftKey: boolean;\n metaKey: boolean;\n ctrlKey: boolean;\n altKey: boolean;\n // target is defined as a non-enumerable property below\n [key: string]: unknown; // allow non-enumerable 'target'\n}\n\nfunction sanitizePressEvent(evt: PressEvent): SanitizedPressEvent {\n const safeEvt: SanitizedPressEvent = {\n type: 'type' in evt ? evt.type : undefined,\n pointerType:\n 'pointerType' in evt\n ? (evt as { pointerType?: string }).pointerType\n : undefined,\n shiftKey:\n 'shiftKey' in evt ? !!(evt as { shiftKey?: boolean }).shiftKey : false,\n metaKey:\n 'metaKey' in evt ? !!(evt as { metaKey?: boolean }).metaKey : false,\n ctrlKey:\n 'ctrlKey' in evt ? !!(evt as { ctrlKey?: boolean }).ctrlKey : false,\n altKey: 'altKey' in evt ? !!(evt as { altKey?: boolean }).altKey : false,\n };\n try {\n Object.defineProperty(safeEvt, 'target', {\n value: 'target' in evt ? (evt as { target?: unknown }).target : undefined,\n enumerable: false,\n configurable: true,\n });\n } catch (e) {\n // Failed to define target property - continue without it\n }\n return safeEvt;\n}\n\nexport function performClickHandler(\n evt,\n { navigate, resolvedHref, to, onPress, tracking, navigationOptions },\n) {\n const {\n newTab,\n nativeRoute,\n cleanTo,\n isHistoryNavigation,\n historyDelta,\n isHashNavigation,\n isExternal,\n } = parseTo(to);\n const element = evt.target;\n const qa = element?.getAttribute('data-qa');\n\n onPress?.(sanitizePressEvent(evt));\n\n if (to == null) {\n // Allow 0 as valid navigation (go to current page)\n tracking.event(BUTTON_PRESS_EVENT, { qa }, element);\n return;\n }\n\n // Handle history navigation (back/forward)\n if (isHistoryNavigation && typeof historyDelta === 'number') {\n tracking.event(\n LINK_PRESS_EVENT,\n { qa, delta: historyDelta, type: 'router-history' },\n element,\n );\n navigate(historyDelta);\n return;\n }\n\n // Handle hash navigation (smooth scroll)\n if (isHashNavigation && typeof to === 'string') {\n const id = to.slice(1);\n const targetElement = document.getElementById(id);\n\n tracking.event(\n LINK_PRESS_EVENT,\n { qa, href: to, type: 'hash', target: id },\n element,\n );\n\n if (targetElement) {\n targetElement.scrollIntoView({\n behavior: 'smooth',\n block: 'start',\n inline: 'nearest',\n });\n }\n return;\n }\n\n // Handle new tab (via ! prefix or user modifiers)\n if (evt.shiftKey || evt.metaKey || (evt as any).ctrlKey || newTab) {\n openLink(resolvedHref, true);\n tracking.event(\n LINK_PRESS_EVENT,\n { qa, href: resolvedHref, type: 'tab' },\n element,\n );\n return;\n }\n\n // Handle @ prefix (native navigation)\n if (nativeRoute) {\n if (cleanTo === '' || cleanTo === undefined) {\n // @'' or @ -> reload current page\n tracking.event(LINK_PRESS_EVENT, { qa, type: 'native' }, element);\n window.location.reload();\n } else {\n // @path -> navigate to resolved path natively\n tracking.event(\n LINK_PRESS_EVENT,\n { qa, href: resolvedHref, type: 'native' },\n element,\n );\n window.location.assign(resolvedHref);\n }\n return;\n }\n\n // Handle external URLs (always native)\n if (isExternal && typeof cleanTo === 'string') {\n tracking.event(\n LINK_PRESS_EVENT,\n { qa, href: cleanTo, type: 'native' },\n element,\n );\n window.location.assign(cleanTo);\n return;\n }\n\n // Handle router navigation\n if (cleanTo !== undefined) {\n tracking.event(\n LINK_PRESS_EVENT,\n { qa, href: resolvedHref, type: 'router' },\n element,\n );\n navigate(cleanTo, navigationOptions);\n }\n}\n\nexport const useAction = function useAction(\n {\n to,\n as,\n htmlType,\n label,\n mods,\n onPress,\n navigationOptions,\n ...props\n }: CubeUseActionProps,\n ref: FocusableRef<HTMLElement>,\n) {\n const tracking = useTracking();\n const navigation = useContext(UIKitContext).navigation;\n const isDisabled = props.isDisabled;\n\n const {\n newTab,\n nativeRoute,\n cleanTo,\n isHistoryNavigation,\n isHashNavigation,\n isExternal,\n } = parseTo(to);\n\n // Always call navigation hooks (using fallback when to is not provided)\n const fallbackTo = to || '.';\n const navigate = navigation.useNavigate();\n const resolvedHref = navigation.useHref(fallbackTo);\n // Always resolve cleanTo href to avoid conditional hook calls\n const cleanToHref = navigation.useHref(cleanTo || '.');\n\n // Determine element type: 'a' for navigation, 'button' for actions\n as = to && !isHistoryNavigation ? 'a' : as || 'button';\n\n // Compute target (prefixes override explicit target prop per spec)\n const target = newTab ? '_blank' : props.target;\n\n // Compute href for anchor elements\n let href: string | undefined;\n if (as === 'a' && cleanTo !== undefined) {\n if (newTab || nativeRoute) {\n // For ! and @ prefixes, resolve the clean path\n href =\n typeof cleanTo === 'string' && isExternal\n ? cleanTo // External URLs as-is\n : cleanToHref;\n } else {\n // Regular navigation\n href = resolvedHref;\n }\n }\n\n const domRef = useFocusableRef(ref);\n\n // Use navigation options directly\n const mergedNavigationOptions = navigationOptions;\n\n const customOnPress = useEvent((evt: PressEvent) => {\n performClickHandler(evt, {\n navigate,\n resolvedHref: href || resolvedHref,\n to,\n onPress,\n tracking,\n navigationOptions: mergedNavigationOptions,\n });\n });\n\n let { buttonProps, isPressed } = useButton(\n {\n 'aria-label': label,\n ...props,\n onPress: customOnPress,\n },\n domRef,\n );\n let { hoverProps, isHovered } = useHover({ isDisabled });\n let { focusProps, isFocused } = useFocus({ isDisabled }, true);\n\n const customProps =\n to && !isHistoryNavigation\n ? {\n onClick(evt) {\n evt.preventDefault();\n },\n }\n : {};\n\n return {\n actionProps: {\n mods: {\n hovered: isHovered && !isDisabled,\n pressed: isPressed && !isDisabled,\n focused: isFocused && !isDisabled,\n disabled: isDisabled,\n ...mods,\n },\n ...(mergeProps(\n buttonProps,\n hoverProps,\n focusProps,\n customProps,\n filterBaseProps(props, FILTER_OPTIONS),\n ) as object),\n ref: domRef,\n type: htmlType || 'button',\n rel: as === 'a' && newTab ? 'noopener noreferrer' : undefined,\n as,\n isDisabled,\n target,\n href,\n },\n };\n};\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.119.1 | Cube Dev Team */
|
|
2
2
|
import { mergeProps as mergeProps$1 } from "../../utils/react/mergeProps.js";
|
|
3
3
|
import { useEventBus } from "../../utils/react/useEventBus.js";
|
|
4
4
|
import { useEvent } from "../../_internal/hooks/use-event.js";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.119.1 | Cube Dev Team */
|
|
2
2
|
import { mergeProps as mergeProps$1 } from "../../utils/react/mergeProps.js";
|
|
3
3
|
import { useEventBus } from "../../utils/react/useEventBus.js";
|
|
4
4
|
import { useEvent } from "../../_internal/hooks/use-event.js";
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
|
|
2
|
-
import { BaseProps, BaseStyleProps, ContainerStyleProps, TextStyleProps } from "
|
|
3
|
-
import "../../../tasty/index.js";
|
|
2
|
+
import { BaseProps, BaseStyleProps, ContainerStyleProps, TextStyleProps } from "@tenphi/tasty";
|
|
4
3
|
import * as react from "react";
|
|
5
4
|
import { MouseEventHandler } from "react";
|
|
6
5
|
import { FocusableOptions } from "react-aria";
|
|
@@ -1,10 +1,7 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.
|
|
2
|
-
import { extractStyles } from "../../../tasty/utils/styles.js";
|
|
3
|
-
import { CONTAINER_STYLES, TEXT_STYLES } from "../../../tasty/styles/list.js";
|
|
4
|
-
import { Element } from "../../../tasty/tasty.js";
|
|
5
|
-
import { filterBaseProps } from "../../../tasty/utils/filter-base-props.js";
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.119.1 | Cube Dev Team */
|
|
6
2
|
import { mergeProps as mergeProps$1 } from "../../../utils/react/mergeProps.js";
|
|
7
3
|
import { useFocus as useFocus$1 } from "../../../utils/react/interactions.js";
|
|
4
|
+
import { CONTAINER_STYLES, Element, TEXT_STYLES, extractStyles, filterBaseProps } from "@tenphi/tasty";
|
|
8
5
|
import { forwardRef } from "react";
|
|
9
6
|
import { jsx } from "react/jsx-runtime";
|
|
10
7
|
import { useFocusable, useHover } from "react-aria";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActiveZone.js","names":["useFocus","mergeProps"],"sources":["../../../../src/components/content/ActiveZone/ActiveZone.tsx"],"sourcesContent":["import { useFocusableRef } from '@react-spectrum/utils';\nimport {
|
|
1
|
+
{"version":3,"file":"ActiveZone.js","names":["useFocus","mergeProps"],"sources":["../../../../src/components/content/ActiveZone/ActiveZone.tsx"],"sourcesContent":["import { useFocusableRef } from '@react-spectrum/utils';\nimport {\n BaseProps,\n BaseStyleProps,\n CONTAINER_STYLES,\n ContainerStyleProps,\n Element,\n extractStyles,\n filterBaseProps,\n Styles,\n TEXT_STYLES,\n TextStyleProps,\n} from '@tenphi/tasty';\nimport { forwardRef, MouseEventHandler } from 'react';\nimport { FocusableOptions, useFocusable, useHover } from 'react-aria';\n\nimport { mergeProps } from '../../../utils/react';\nimport { useFocus } from '../../../utils/react/interactions';\n\nexport interface CubeActiveZoneProps\n extends BaseProps,\n BaseStyleProps,\n ContainerStyleProps,\n TextStyleProps,\n FocusableOptions {\n label?: string;\n onClick?: MouseEventHandler;\n}\n\nconst DEFAULT_STYLES: Styles = {\n display: 'inline-grid',\n position: 'relative',\n opacity: {\n '': 1,\n disabled: 0.4,\n },\n transition: 'theme',\n} as const;\n\nconst STYLE_PROPS = [...CONTAINER_STYLES, ...TEXT_STYLES];\n\nfunction ActiveZone(\n { as, label, onClick, ...props }: CubeActiveZoneProps,\n ref,\n) {\n const isDisabled = props.isDisabled;\n const styles = extractStyles(props, STYLE_PROPS, DEFAULT_STYLES);\n const domRef = useFocusableRef(ref);\n\n let { hoverProps, isHovered } = useHover({ isDisabled });\n let { focusProps, isFocused } = useFocus({ isDisabled });\n let { focusableProps } = useFocusable(props, domRef);\n\n return (\n <Element\n data-hovered={isHovered && !isDisabled ? '' : null}\n data-focused={isFocused && !isDisabled ? '' : null}\n data-disabled={isDisabled || null}\n aria-label={label}\n {...mergeProps(\n hoverProps,\n focusProps,\n focusableProps,\n { onClick },\n filterBaseProps(props, { eventProps: true }),\n )}\n ref={domRef}\n tabIndex={props.excludeFromTabOrder || isDisabled ? -1 : 0}\n as={as}\n styles={styles}\n />\n );\n}\n\nconst _ActiveZone = forwardRef(ActiveZone);\n\n_ActiveZone.displayName = 'ActiveZone';\n\nexport { _ActiveZone as ActiveZone };\n"],"mappings":";;;;;;;;;;AA6BA,MAAM,iBAAyB;CAC7B,SAAS;CACT,UAAU;CACV,SAAS;EACP,IAAI;EACJ,UAAU;EACX;CACD,YAAY;CACb;AAED,MAAM,cAAc,CAAC,GAAG,kBAAkB,GAAG,YAAY;AAEzD,SAAS,WACP,EAAE,IAAI,OAAO,SAAS,GAAG,SACzB,KACA;CACA,MAAM,aAAa,MAAM;CACzB,MAAM,SAAS,cAAc,OAAO,aAAa,eAAe;CAChE,MAAM,SAAS,gBAAgB,IAAI;CAEnC,IAAI,EAAE,YAAY,cAAc,SAAS,EAAE,YAAY,CAAC;CACxD,IAAI,EAAE,YAAY,cAAcA,WAAS,EAAE,YAAY,CAAC;CACxD,IAAI,EAAE,mBAAmB,aAAa,OAAO,OAAO;AAEpD,QACE,oBAAC;EACC,gBAAc,aAAa,CAAC,aAAa,KAAK;EAC9C,gBAAc,aAAa,CAAC,aAAa,KAAK;EAC9C,iBAAe,cAAc;EAC7B,cAAY;EACZ,GAAIC,aACF,YACA,YACA,gBACA,EAAE,SAAS,EACX,gBAAgB,OAAO,EAAE,YAAY,MAAM,CAAC,CAC7C;EACD,KAAK;EACL,UAAU,MAAM,uBAAuB,aAAa,KAAK;EACrD;EACI;GACR;;AAIN,MAAM,cAAc,WAAW,WAAW;AAE1C,YAAY,cAAc"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.
|
|
2
|
-
import { tasty } from "../../../tasty/tasty.js";
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.119.1 | Cube Dev Team */
|
|
3
2
|
import themes_default from "../../../data/themes.js";
|
|
4
3
|
import { useAlert } from "./use-alert.js";
|
|
4
|
+
import { tasty } from "@tenphi/tasty";
|
|
5
5
|
import { forwardRef } from "react";
|
|
6
6
|
import { jsx } from "react/jsx-runtime";
|
|
7
7
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Alert.js","names":["THEMES"],"sources":["../../../../src/components/content/Alert/Alert.tsx"],"sourcesContent":["import { ForwardedRef, forwardRef } from 'react';\n\nimport THEMES from '../../../data/themes';\
|
|
1
|
+
{"version":3,"file":"Alert.js","names":["THEMES"],"sources":["../../../../src/components/content/Alert/Alert.tsx"],"sourcesContent":["import { tasty } from '@tenphi/tasty';\nimport { ForwardedRef, forwardRef } from 'react';\n\nimport THEMES from '../../../data/themes';\n\nimport { CubeAlertProps } from './types';\nimport { useAlert } from './use-alert';\n\nconst AlertElement = tasty({\n name: 'Alert',\n role: 'alert',\n qa: 'Alert',\n styles: {\n display: 'block',\n flow: 'column',\n radius: {\n '': '1cr',\n 'shape=sharp': '0',\n },\n padding: '1.5x',\n preset: 't3',\n color: {\n '': '#dark-02',\n 'type=disabled': THEMES.disabled.color,\n },\n fill: {\n '': '#clear',\n ...Object.keys(THEMES).reduce((map, type) => {\n map[`type=${type}`] = THEMES[type].fill;\n\n return map;\n }, {}),\n },\n border: {\n '': '#clear',\n ...Object.keys(THEMES).reduce((map, type) => {\n map[`type=${type}`] = THEMES[type].border;\n\n return map;\n }, {}),\n 'shape=sharp': '0',\n },\n },\n});\n\nexport const Alert = forwardRef(function Alert(\n props: CubeAlertProps,\n ref: ForwardedRef<HTMLDivElement>,\n) {\n const { styles, mods, filteredProps } = useAlert(props);\n\n return (\n <AlertElement {...filteredProps} ref={ref} mods={mods} styles={styles} />\n );\n});\n"],"mappings":";;;;;;;;AAQA,MAAM,eAAe,MAAM;CACzB,MAAM;CACN,MAAM;CACN,IAAI;CACJ,QAAQ;EACN,SAAS;EACT,MAAM;EACN,QAAQ;GACN,IAAI;GACJ,eAAe;GAChB;EACD,SAAS;EACT,QAAQ;EACR,OAAO;GACL,IAAI;GACJ,iBAAiBA,eAAO,SAAS;GAClC;EACD,MAAM;GACJ,IAAI;GACJ,GAAG,OAAO,KAAKA,eAAO,CAAC,QAAQ,KAAK,SAAS;AAC3C,QAAI,QAAQ,UAAUA,eAAO,MAAM;AAEnC,WAAO;MACN,EAAE,CAAC;GACP;EACD,QAAQ;GACN,IAAI;GACJ,GAAG,OAAO,KAAKA,eAAO,CAAC,QAAQ,KAAK,SAAS;AAC3C,QAAI,QAAQ,UAAUA,eAAO,MAAM;AAEnC,WAAO;MACN,EAAE,CAAC;GACN,eAAe;GAChB;EACF;CACF,CAAC;AAEF,MAAa,QAAQ,WAAW,SAAS,MACvC,OACA,KACA;CACA,MAAM,EAAE,QAAQ,MAAM,kBAAkB,SAAS,MAAM;AAEvD,QACE,oBAAC;EAAa,GAAI;EAAoB;EAAW;EAAc;GAAU;EAE3E"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
|
|
2
|
-
import { BaseProps, ContainerStyleProps, TextStyleProps } from "../../../tasty/types.js";
|
|
3
|
-
import "../../../tasty/index.js";
|
|
4
2
|
import { _default } from "../../../data/themes.js";
|
|
3
|
+
import { BaseProps, ContainerStyleProps, TextStyleProps } from "@tenphi/tasty";
|
|
5
4
|
|
|
6
5
|
//#region src/components/content/Alert/types.d.ts
|
|
7
6
|
interface CubeAlertProps extends Omit<BaseProps, 'theme'>, ContainerStyleProps, TextStyleProps {
|
|
@@ -1,8 +1,6 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.
|
|
2
|
-
import { extractStyles } from "../../../tasty/utils/styles.js";
|
|
3
|
-
import { CONTAINER_STYLES, TEXT_STYLES } from "../../../tasty/styles/list.js";
|
|
4
|
-
import { filterBaseProps } from "../../../tasty/utils/filter-base-props.js";
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.119.1 | Cube Dev Team */
|
|
5
2
|
import { useDeprecationWarning } from "../../../_internal/hooks/use-deprecation-warning.js";
|
|
3
|
+
import { CONTAINER_STYLES, TEXT_STYLES, extractStyles, filterBaseProps } from "@tenphi/tasty";
|
|
6
4
|
|
|
7
5
|
//#region src/components/content/Alert/use-alert.ts
|
|
8
6
|
const STYLE_LIST = [...CONTAINER_STYLES, ...TEXT_STYLES];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-alert.js","names":[],"sources":["../../../../src/components/content/Alert/use-alert.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"use-alert.js","names":[],"sources":["../../../../src/components/content/Alert/use-alert.ts"],"sourcesContent":["import {\n CONTAINER_STYLES,\n extractStyles,\n filterBaseProps,\n TEXT_STYLES,\n} from '@tenphi/tasty';\n\nimport { useDeprecationWarning } from '../../../_internal';\n\nimport { CubeAlertProps } from './types';\n\nconst STYLE_LIST = [...CONTAINER_STYLES, ...TEXT_STYLES] as const;\n\nexport function useAlert(props: CubeAlertProps) {\n const { type, isDisabled = false, theme, shape = 'card', mods } = props;\n\n const styles = extractStyles(props, STYLE_LIST);\n\n useDeprecationWarning(typeof type === 'undefined', {\n property: 'type',\n name: 'Alert',\n betterAlternative: 'theme',\n });\n\n const _theme = isDisabled ? 'disabled' : theme ?? type ?? 'note';\n\n return {\n styles,\n mods: {\n shape,\n type: _theme,\n ...mods,\n },\n filteredProps: filterBaseProps(props, { eventProps: true }),\n };\n}\n"],"mappings":";;;;;AAWA,MAAM,aAAa,CAAC,GAAG,kBAAkB,GAAG,YAAY;AAExD,SAAgB,SAAS,OAAuB;CAC9C,MAAM,EAAE,MAAM,aAAa,OAAO,OAAO,QAAQ,QAAQ,SAAS;CAElE,MAAM,SAAS,cAAc,OAAO,WAAW;AAE/C,uBAAsB,OAAO,SAAS,aAAa;EACjD,UAAU;EACV,MAAM;EACN,mBAAmB;EACpB,CAAC;AAIF,QAAO;EACL;EACA,MAAM;GACJ;GACA,MANW,aAAa,aAAa,SAAS,QAAQ;GAOtD,GAAG;GACJ;EACD,eAAe,gBAAgB,OAAO,EAAE,YAAY,MAAM,CAAC;EAC5D"}
|
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
|
|
2
|
-
import { Styles } from "
|
|
3
|
-
import { BaseProps, ContainerStyleProps } from "../../../tasty/types.js";
|
|
4
|
-
import "../../../tasty/index.js";
|
|
2
|
+
import { BaseProps, ContainerStyleProps, Styles } from "@tenphi/tasty";
|
|
5
3
|
import * as react from "react";
|
|
6
4
|
import { ReactNode } from "react";
|
|
7
5
|
|
|
@@ -1,8 +1,5 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.
|
|
2
|
-
import { extractStyles } from "
|
|
3
|
-
import { CONTAINER_STYLES } from "../../../tasty/styles/list.js";
|
|
4
|
-
import { Element } from "../../../tasty/tasty.js";
|
|
5
|
-
import { filterBaseProps } from "../../../tasty/utils/filter-base-props.js";
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.119.1 | Cube Dev Team */
|
|
2
|
+
import { CONTAINER_STYLES, Element, extractStyles, filterBaseProps } from "@tenphi/tasty";
|
|
6
3
|
import { forwardRef } from "react";
|
|
7
4
|
import { jsxs } from "react/jsx-runtime";
|
|
8
5
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Avatar.js","names":[],"sources":["../../../../src/components/content/Avatar/Avatar.tsx"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"Avatar.js","names":[],"sources":["../../../../src/components/content/Avatar/Avatar.tsx"],"sourcesContent":["import {\n BaseProps,\n CONTAINER_STYLES,\n ContainerStyleProps,\n Element,\n extractStyles,\n filterBaseProps,\n Styles,\n} from '@tenphi/tasty';\nimport { forwardRef, ReactNode } from 'react';\n\nconst DEFAULT_STYLES = {\n display: 'grid',\n gap: '1x',\n flow: 'row',\n fill: '#primary',\n color: '#white',\n radius: 'round',\n placeContent: 'center',\n width: '$avatar-size $avatar-size $avatar-size',\n height: '$avatar-size $avatar-size $avatar-size',\n fontSize: 'calc($avatar-size / 2)',\n lineHeight: 'calc($avatar-size / 2)',\n fontWeight: 500,\n};\n\nexport interface CubeAvatarProps extends BaseProps, ContainerStyleProps {\n icon?: ReactNode;\n size?: Styles['size'];\n}\n\nexport const Avatar = forwardRef(function Avatar(\n { size = '4x', icon, children, ...props }: CubeAvatarProps,\n ref,\n) {\n const styles = extractStyles(props, CONTAINER_STYLES, {\n ...DEFAULT_STYLES,\n '--avatar-size': size,\n });\n\n return (\n <Element\n {...filterBaseProps(props, { eventProps: true })}\n ref={ref}\n styles={styles}\n data-theme=\"special\"\n >\n {icon}\n {children}\n </Element>\n );\n});\n"],"mappings":";;;;;;AAWA,MAAM,iBAAiB;CACrB,SAAS;CACT,KAAK;CACL,MAAM;CACN,MAAM;CACN,OAAO;CACP,QAAQ;CACR,cAAc;CACd,OAAO;CACP,QAAQ;CACR,UAAU;CACV,YAAY;CACZ,YAAY;CACb;AAOD,MAAa,SAAS,WAAW,SAAS,OACxC,EAAE,OAAO,MAAM,MAAM,UAAU,GAAG,SAClC,KACA;CACA,MAAM,SAAS,cAAc,OAAO,kBAAkB;EACpD,GAAG;EACH,iBAAiB;EAClB,CAAC;AAEF,QACE,qBAAC;EACC,GAAI,gBAAgB,OAAO,EAAE,YAAY,MAAM,CAAC;EAC3C;EACG;EACR,cAAW;aAEV,MACA;GACO;EAEZ"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.
|
|
2
|
-
import { tasty } from "../../../tasty/tasty.js";
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.119.1 | Cube Dev Team */
|
|
3
2
|
import { _Item } from "../Item/Item.js";
|
|
4
3
|
import themes_default from "../../../data/themes.js";
|
|
4
|
+
import { tasty } from "@tenphi/tasty";
|
|
5
5
|
import { forwardRef } from "react";
|
|
6
6
|
import { jsx } from "react/jsx-runtime";
|
|
7
7
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Badge.js","names":["THEMES","Item"],"sources":["../../../../src/components/content/Badge/Badge.tsx"],"sourcesContent":["import { forwardRef } from 'react';\n\nimport THEMES from '../../../data/themes';\nimport {
|
|
1
|
+
{"version":3,"file":"Badge.js","names":["THEMES","Item"],"sources":["../../../../src/components/content/Badge/Badge.tsx"],"sourcesContent":["import { tasty } from '@tenphi/tasty';\nimport { forwardRef } from 'react';\n\nimport THEMES from '../../../data/themes';\nimport { CubeItemProps, Item } from '../Item';\n\nconst FILL_STYLES = Object.keys(THEMES).reduce((map, type) => {\n map[`theme=${type}`] =\n type === 'special' ? THEMES[type].fill : THEMES[type].color;\n\n return map;\n}, {});\n\nconst BadgeElement = tasty(Item, {\n qa: 'Badge',\n role: 'status',\n size: 'inline',\n styles: {\n radius: 'round',\n color: '#white',\n fill: {\n '': '#primary',\n ...FILL_STYLES,\n },\n preset: {\n '': 'tag',\n 'size=xsmall': 't4',\n 'size=small | size=medium': 't3',\n 'size=large | size=xlarge': 't2',\n },\n\n '$inline-padding': {\n '': 'max($min-inline-padding, (($size - 1lh - 2bw) / 2 + $inline-compensation))',\n 'size=inline': '.5x',\n },\n\n Label: {\n textAlign: 'center',\n placeSelf: 'center',\n },\n },\n});\n\nexport interface CubeBadgeProps extends CubeItemProps {\n /* @deprecated Use theme instead */\n type?: keyof typeof THEMES | string;\n theme?: keyof typeof THEMES | string;\n}\n\nfunction Badge(allProps: CubeBadgeProps, ref) {\n let {\n type,\n theme = 'special',\n children,\n size = 'inline',\n ...props\n } = allProps;\n\n const badgeTheme = theme ?? type;\n\n return (\n <BadgeElement\n ref={ref}\n size={size}\n data-type=\"primary\"\n data-theme={badgeTheme}\n {...props}\n >\n {children}\n </BadgeElement>\n );\n}\n\nconst _Badge = forwardRef(Badge);\n\n_Badge.displayName = 'Badge';\n\nexport { _Badge as Badge };\n"],"mappings":";;;;;;;;AAMA,MAAM,cAAc,OAAO,KAAKA,eAAO,CAAC,QAAQ,KAAK,SAAS;AAC5D,KAAI,SAAS,UACX,SAAS,YAAYA,eAAO,MAAM,OAAOA,eAAO,MAAM;AAExD,QAAO;GACN,EAAE,CAAC;AAEN,MAAM,eAAe,MAAMC,OAAM;CAC/B,IAAI;CACJ,MAAM;CACN,MAAM;CACN,QAAQ;EACN,QAAQ;EACR,OAAO;EACP,MAAM;GACJ,IAAI;GACJ,GAAG;GACJ;EACD,QAAQ;GACN,IAAI;GACJ,eAAe;GACf,4BAA4B;GAC5B,4BAA4B;GAC7B;EAED,mBAAmB;GACjB,IAAI;GACJ,eAAe;GAChB;EAED,OAAO;GACL,WAAW;GACX,WAAW;GACZ;EACF;CACF,CAAC;AAQF,SAAS,MAAM,UAA0B,KAAK;CAC5C,IAAI,EACF,MACA,QAAQ,WACR,UACA,OAAO,UACP,GAAG,UACD;CAEJ,MAAM,aAAa,SAAS;AAE5B,QACE,oBAAC;EACM;EACC;EACN,aAAU;EACV,cAAY;EACZ,GAAI;EAEH;GACY;;AAInB,MAAM,SAAS,WAAW,MAAM;AAEhC,OAAO,cAAc"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
|
|
2
|
-
import { AllBaseProps, ContainerStyleProps } from "
|
|
3
|
-
import "../../../tasty/index.js";
|
|
2
|
+
import { AllBaseProps, ContainerStyleProps } from "@tenphi/tasty";
|
|
4
3
|
import * as react from "react";
|
|
5
4
|
|
|
6
5
|
//#region src/components/content/Card/Card.d.ts
|
|
@@ -1,8 +1,5 @@
|
|
|
1
|
-
/** @license MIT | @cube-dev/ui-kit v0.
|
|
2
|
-
import { extractStyles } from "
|
|
3
|
-
import { CONTAINER_STYLES } from "../../../tasty/styles/list.js";
|
|
4
|
-
import { tasty } from "../../../tasty/tasty.js";
|
|
5
|
-
import { filterBaseProps } from "../../../tasty/utils/filter-base-props.js";
|
|
1
|
+
/** @license MIT | @cube-dev/ui-kit v0.119.1 | Cube Dev Team */
|
|
2
|
+
import { CONTAINER_STYLES, extractStyles, filterBaseProps, tasty } from "@tenphi/tasty";
|
|
6
3
|
import { forwardRef } from "react";
|
|
7
4
|
import { jsx } from "react/jsx-runtime";
|
|
8
5
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Card.js","names":[],"sources":["../../../../src/components/content/Card/Card.tsx"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"Card.js","names":[],"sources":["../../../../src/components/content/Card/Card.tsx"],"sourcesContent":["import {\n AllBaseProps,\n CONTAINER_STYLES,\n ContainerStyleProps,\n extractStyles,\n filterBaseProps,\n tasty,\n} from '@tenphi/tasty';\nimport { forwardRef } from 'react';\n\nconst CardElement = tasty({\n role: 'region',\n styles: {\n display: 'block',\n flow: 'column',\n radius: '(1cr + 1bw)',\n fill: '#white',\n border: '#border',\n padding: '1.5x',\n preset: 't3',\n },\n styleProps: CONTAINER_STYLES,\n});\n\nexport interface CubeCardProps\n extends Omit<AllBaseProps, 'title' | 'value' | 'placeholder' | 'text'>,\n ContainerStyleProps {}\n\nexport const Card = forwardRef(function Card(props: CubeCardProps, ref) {\n const styles = extractStyles(props, CONTAINER_STYLES);\n\n return (\n <CardElement\n {...filterBaseProps(props, { eventProps: true })}\n ref={ref}\n styles={styles}\n />\n );\n});\n"],"mappings":";;;;;;AAUA,MAAM,cAAc,MAAM;CACxB,MAAM;CACN,QAAQ;EACN,SAAS;EACT,MAAM;EACN,QAAQ;EACR,MAAM;EACN,QAAQ;EACR,SAAS;EACT,QAAQ;EACT;CACD,YAAY;CACb,CAAC;AAMF,MAAa,OAAO,WAAW,SAAS,KAAK,OAAsB,KAAK;CACtE,MAAM,SAAS,cAAc,OAAO,iBAAiB;AAErD,QACE,oBAAC;EACC,GAAI,gBAAgB,OAAO,EAAE,YAAY,MAAM,CAAC;EAC3C;EACG;GACR;EAEJ"}
|