@cube-dev/ui-kit 0.0.0-canary-90d250e → 0.0.0-canary-6869af9
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/cjs/_internal/hooks/index.js +1 -1
- package/cjs/_internal/hooks/use-chained-callback.js +1 -1
- package/cjs/_internal/hooks/use-deprecation-warning.js +1 -1
- package/cjs/_internal/hooks/use-event.js +1 -1
- package/cjs/_internal/hooks/use-sync-ref.js +1 -1
- package/cjs/_internal/hooks/use-timer/index.js +1 -1
- package/cjs/_internal/hooks/use-timer/timer.js +1 -1
- package/cjs/_internal/hooks/use-timer/use-timer.js +1 -1
- package/cjs/_internal/index.js +1 -1
- package/cjs/components/Base.js +1 -1
- package/cjs/components/Block.js +1 -1
- package/cjs/components/GlobalStyles.js +1 -1
- package/cjs/components/GridProvider.js +1 -1
- package/cjs/components/HiddenInput.js +1 -1
- package/cjs/components/OpenTrasition.js +1 -1
- package/cjs/components/Root.js +1 -1
- package/cjs/components/actions/Action.js +5 -101
- package/cjs/components/actions/Button/Button.js +170 -106
- package/cjs/components/actions/Button/Submit.js +1 -1
- package/cjs/components/actions/Button/index.js +1 -1
- package/cjs/components/actions/ButtonGroup/ButtonGroup.js +1 -1
- package/cjs/components/actions/index.js +2 -1
- package/cjs/components/actions/use-action.js +129 -0
- package/cjs/components/content/ActiveZone/ActiveZone.js +1 -1
- package/cjs/components/content/Alert/Alert.js +1 -1
- package/cjs/components/content/Alert/index.js +1 -1
- package/cjs/components/content/Alert/types.js +1 -1
- package/cjs/components/content/Alert/use-alert.js +1 -1
- package/cjs/components/content/Avatar/Avatar.js +1 -1
- package/cjs/components/content/Badge/Badge.js +1 -1
- package/cjs/components/content/Card/Card.js +1 -1
- package/cjs/components/content/Content.js +1 -1
- package/cjs/components/content/CopySnippet/CopySnippet.js +1 -1
- package/cjs/components/content/CopySnippet/index.js +1 -1
- package/cjs/components/content/Divider.js +1 -1
- package/cjs/components/content/Footer.js +1 -1
- package/cjs/components/content/Header.js +1 -1
- package/cjs/components/content/Paragraph.js +1 -1
- package/cjs/components/content/Placeholder/Placeholder.js +1 -1
- package/cjs/components/content/PrismCode/PrismCode.js +1 -1
- package/cjs/components/content/Result/Result.js +1 -1
- package/cjs/components/content/Skeleton/Skeleton.js +1 -1
- package/cjs/components/content/Tag/Tag.js +1 -1
- package/cjs/components/content/Text.js +1 -1
- package/cjs/components/content/Title.js +1 -1
- package/cjs/components/forms/Checkbox/Checkbox.js +1 -1
- package/cjs/components/forms/Checkbox/CheckboxGroup.js +1 -1
- package/cjs/components/forms/Checkbox/context.js +1 -1
- package/cjs/components/forms/FieldWrapper.js +1 -1
- package/cjs/components/forms/FileInput/FileInput.js +1 -1
- package/cjs/components/forms/Form/Field.js +1 -1
- package/cjs/components/forms/Form/Form.js +1 -1
- package/cjs/components/forms/Form/SubmitError.js +1 -1
- package/cjs/components/forms/Form/index.js +1 -1
- package/cjs/components/forms/Form/types.js +1 -1
- package/cjs/components/forms/Form/useForm.js +1 -1
- package/cjs/components/forms/Form/validation.js +1 -1
- package/cjs/components/forms/Input/Input.js +1 -1
- package/cjs/components/forms/Input/index.js +1 -1
- package/cjs/components/forms/Label.js +1 -1
- package/cjs/components/forms/NumberInput/NumberInput.js +1 -1
- package/cjs/components/forms/NumberInput/StepButton.js +1 -1
- package/cjs/components/forms/PasswordInput/PasswordInput.js +1 -1
- package/cjs/components/forms/RadioGroup/Radio.js +1 -1
- package/cjs/components/forms/RadioGroup/RadioGroup.js +1 -1
- package/cjs/components/forms/RadioGroup/context.js +1 -1
- package/cjs/components/forms/RangeSlider/Gradation.js +1 -1
- package/cjs/components/forms/RangeSlider/Header.js +1 -1
- package/cjs/components/forms/RangeSlider/RangeInput.js +1 -1
- package/cjs/components/forms/RangeSlider/RangeSlider.js +1 -1
- package/cjs/components/forms/RangeSlider/Slide.js +1 -1
- package/cjs/components/forms/RangeSlider/Thumb.js +1 -1
- package/cjs/components/forms/RangeSlider/helpers.js +1 -1
- package/cjs/components/forms/RangeSlider/styled.js +1 -1
- package/cjs/components/forms/SearchInput/SearchInput.js +1 -1
- package/cjs/components/forms/Switch/Switch.js +1 -1
- package/cjs/components/forms/TextArea/TextArea.js +1 -1
- package/cjs/components/forms/TextInput/TextInput.js +1 -1
- package/cjs/components/forms/TextInput/TextInputBase.js +1 -1
- package/cjs/components/forms/index.js +1 -1
- package/cjs/components/layout/Flex.js +1 -1
- package/cjs/components/layout/Flow.js +1 -1
- package/cjs/components/layout/Grid.js +1 -1
- package/cjs/components/layout/Prefix.js +1 -1
- package/cjs/components/layout/Space.js +1 -1
- package/cjs/components/layout/Suffix.js +1 -1
- package/cjs/components/navigation/LegacyTabs/LegacyTabs.js +1 -1
- package/cjs/components/navigation/Link/Link.js +1 -1
- package/cjs/components/organisms/FileTabs/FileTabs.js +1 -1
- package/cjs/components/organisms/Modal/Modal.js +1 -1
- package/cjs/components/organisms/StatsCard/StatsCard.js +1 -1
- package/cjs/components/other/Base64Upload/Base64Upload.js +1 -1
- package/cjs/components/other/CloudLogo/CloudLogo.js +1 -1
- package/cjs/components/overlays/AlertDialog/AlertDialog.js +1 -1
- package/cjs/components/overlays/AlertDialog/AlertDialogApiProvider.js +1 -1
- package/cjs/components/overlays/AlertDialog/AlertDialogZone.js +1 -1
- package/cjs/components/overlays/AlertDialog/index.js +1 -1
- package/cjs/components/overlays/AlertDialog/types.js +1 -1
- package/cjs/components/overlays/Dialog/Dialog.js +1 -1
- package/cjs/components/overlays/Dialog/DialogContainer.js +1 -1
- package/cjs/components/overlays/Dialog/DialogForm.js +1 -1
- package/cjs/components/overlays/Dialog/DialogTrigger.js +1 -1
- package/cjs/components/overlays/Dialog/context.js +1 -1
- package/cjs/components/overlays/Dialog/index.js +1 -1
- package/cjs/components/overlays/Modal/Modal.js +1 -1
- package/cjs/components/overlays/Modal/OpenTransition.js +1 -1
- package/cjs/components/overlays/Modal/Overlay.js +1 -1
- package/cjs/components/overlays/Modal/Popover.js +1 -1
- package/cjs/components/overlays/Modal/Tray.js +1 -1
- package/cjs/components/overlays/Modal/Underlay.js +1 -1
- package/cjs/components/overlays/Modal/index.js +1 -1
- package/cjs/components/overlays/NewNotifications/Bar/FloatingNotification.js +1 -1
- package/cjs/components/overlays/NewNotifications/Bar/NotificationsBar.js +1 -1
- package/cjs/components/overlays/NewNotifications/Bar/TransitionComponent.js +1 -1
- package/cjs/components/overlays/NewNotifications/Bar/index.js +1 -1
- package/cjs/components/overlays/NewNotifications/Dialog/NotificationsDialogTrigger.js +1 -1
- package/cjs/components/overlays/NewNotifications/Dialog/index.js +1 -1
- package/cjs/components/overlays/NewNotifications/Notification.js +1 -1
- package/cjs/components/overlays/NewNotifications/NotificationView/NotificationAction.js +1 -1
- package/cjs/components/overlays/NewNotifications/NotificationView/NotificationCloseButton.js +1 -1
- package/cjs/components/overlays/NewNotifications/NotificationView/NotificationDescription.js +1 -1
- package/cjs/components/overlays/NewNotifications/NotificationView/NotificationFooter.js +1 -1
- package/cjs/components/overlays/NewNotifications/NotificationView/NotificationHeader.js +1 -1
- package/cjs/components/overlays/NewNotifications/NotificationView/NotificationIcon.js +1 -1
- package/cjs/components/overlays/NewNotifications/NotificationView/NotificationProvider.js +1 -1
- package/cjs/components/overlays/NewNotifications/NotificationView/NotificationView.js +1 -1
- package/cjs/components/overlays/NewNotifications/NotificationView/index.js +1 -1
- package/cjs/components/overlays/NewNotifications/NotificationView/types.js +1 -1
- package/cjs/components/overlays/NewNotifications/NotificationsContext/NotificationsProvider.js +1 -1
- package/cjs/components/overlays/NewNotifications/NotificationsContext/index.js +1 -1
- package/cjs/components/overlays/NewNotifications/NotificationsContext/use-notifications.js +1 -1
- package/cjs/components/overlays/NewNotifications/NotificationsList/NotificationsList.js +1 -1
- package/cjs/components/overlays/NewNotifications/NotificationsList/NotificationsListItem.js +1 -1
- package/cjs/components/overlays/NewNotifications/NotificationsList/index.js +1 -1
- package/cjs/components/overlays/NewNotifications/NotificationsList/types.js +1 -1
- package/cjs/components/overlays/NewNotifications/hooks/index.js +1 -1
- package/cjs/components/overlays/NewNotifications/hooks/types.js +1 -1
- package/cjs/components/overlays/NewNotifications/hooks/use-notification-list-item.js +1 -1
- package/cjs/components/overlays/NewNotifications/hooks/use-notifications-api.js +1 -1
- package/cjs/components/overlays/NewNotifications/hooks/use-notifications-list.js +1 -1
- package/cjs/components/overlays/NewNotifications/hooks/use-notifications-observer.js +1 -1
- package/cjs/components/overlays/NewNotifications/index.js +1 -1
- package/cjs/components/overlays/NewNotifications/types.js +1 -1
- package/cjs/components/overlays/Notification/Notification.js +1 -1
- package/cjs/components/overlays/OverlayWrapper.js +1 -1
- package/cjs/components/overlays/Toasts/Toast.js +1 -1
- package/cjs/components/overlays/Toasts/index.js +1 -1
- package/cjs/components/overlays/Toasts/types.js +1 -1
- package/cjs/components/overlays/Toasts/use-toasts-api.js +1 -1
- package/cjs/components/overlays/Tooltip/Tooltip.js +1 -1
- package/cjs/components/overlays/Tooltip/TooltipProvider.js +1 -1
- package/cjs/components/overlays/Tooltip/TooltipTrigger.js +1 -1
- package/cjs/components/overlays/Tooltip/context.js +1 -1
- package/cjs/components/pickers/ComboBox/ComboBox.js +1 -1
- package/cjs/components/pickers/Menu/Menu.js +1 -1
- package/cjs/components/pickers/Menu/MenuButton.js +1 -1
- package/cjs/components/pickers/Menu/MenuItem.js +1 -1
- package/cjs/components/pickers/Menu/MenuSection.js +1 -1
- package/cjs/components/pickers/Menu/MenuTrigger.js +1 -1
- package/cjs/components/pickers/Menu/context.js +1 -1
- package/cjs/components/pickers/Menu/styled.js +1 -1
- package/cjs/components/pickers/Select/Select.js +1 -1
- package/cjs/components/portal/Portal.js +1 -1
- package/cjs/components/portal/PortalProvider.js +1 -1
- package/cjs/components/portal/index.js +1 -1
- package/cjs/components/portal/storybook/templates/CustomRoot.js +1 -1
- package/cjs/components/portal/storybook/templates/PortalOrder.js +1 -1
- package/cjs/components/portal/storybook/templates/basic.js +1 -1
- package/cjs/components/portal/storybook/templates/index.js +1 -1
- package/cjs/components/portal/types.js +1 -1
- package/cjs/components/portal/usePortal.js +1 -1
- package/cjs/components/status/LoadingAnimation/LoadingAnimation.js +1 -1
- package/cjs/components/status/LoadingAnimation/index.js +1 -1
- package/cjs/components/status/Spin/Cube.js +1 -1
- package/cjs/components/status/Spin/InternalSpinner.js +1 -1
- package/cjs/components/status/Spin/Spin.js +1 -1
- package/cjs/components/status/Spin/SpinsContainer.js +1 -1
- package/cjs/components/status/Spin/index.js +1 -1
- package/cjs/components/status/Spin/types.js +1 -1
- package/cjs/components/status/index.js +1 -1
- package/cjs/data/themes.js +1 -1
- package/cjs/icons/Attention.js +1 -1
- package/cjs/icons/Cross.js +1 -1
- package/cjs/icons/Danger.js +1 -1
- package/cjs/icons/Success.js +1 -1
- package/cjs/icons/index.js +1 -1
- package/cjs/index.js +1 -1
- package/cjs/provider.js +1 -1
- package/cjs/providers/StyleProvider.js +1 -1
- package/cjs/services/notification.js +1 -1
- package/cjs/shared/form.js +1 -1
- package/cjs/shared/index.js +1 -1
- package/cjs/stories/FormFieldArgs.js +1 -1
- package/cjs/stories/components/ConfirmDeletionDialogForm.js +1 -1
- package/cjs/stories/components/DialogFormApp.js +1 -1
- package/cjs/stories/components/StyledButton.js +1 -1
- package/cjs/stories/lists/baseProps.js +1 -1
- package/cjs/styled/index.js +1 -1
- package/cjs/styled/styled.js +1 -1
- package/cjs/tasty/index.js +1 -1
- package/cjs/tasty/providers/BreakpointsProvider.js +1 -1
- package/cjs/tasty/styles/align.js +1 -1
- package/cjs/tasty/styles/border.js +1 -1
- package/cjs/tasty/styles/boxShadow.combinator.js +1 -1
- package/cjs/tasty/styles/color.js +1 -1
- package/cjs/tasty/styles/createStyle.js +1 -1
- package/cjs/tasty/styles/dimension.js +1 -1
- package/cjs/tasty/styles/display.js +1 -1
- package/cjs/tasty/styles/fill.js +1 -1
- package/cjs/tasty/styles/flow.js +1 -1
- package/cjs/tasty/styles/font.js +1 -1
- package/cjs/tasty/styles/fontStyle.js +1 -1
- package/cjs/tasty/styles/gap.js +1 -1
- package/cjs/tasty/styles/groupRadius.js +1 -1
- package/cjs/tasty/styles/height.js +1 -1
- package/cjs/tasty/styles/index.js +1 -1
- package/cjs/tasty/styles/justify.js +1 -1
- package/cjs/tasty/styles/list.js +1 -1
- package/cjs/tasty/styles/margin.js +1 -1
- package/cjs/tasty/styles/marginBlock.js +1 -1
- package/cjs/tasty/styles/marginInline.js +1 -1
- package/cjs/tasty/styles/outline.js +1 -1
- package/cjs/tasty/styles/padding.js +1 -1
- package/cjs/tasty/styles/paddingBlock.js +1 -1
- package/cjs/tasty/styles/paddingInline.js +1 -1
- package/cjs/tasty/styles/predefined.js +1 -1
- package/cjs/tasty/styles/preset.js +1 -1
- package/cjs/tasty/styles/radius.js +1 -1
- package/cjs/tasty/styles/reset.js +1 -1
- package/cjs/tasty/styles/shadow.js +1 -1
- package/cjs/tasty/styles/styledScrollbar.js +1 -1
- package/cjs/tasty/styles/transition.js +1 -1
- package/cjs/tasty/styles/types.js +1 -1
- package/cjs/tasty/styles/width.js +1 -1
- package/cjs/tasty/tasty.js +1 -1
- package/cjs/tasty/types.js +1 -1
- package/cjs/tasty/utils/colors.js +1 -1
- package/cjs/tasty/utils/dotize.js +1 -1
- package/cjs/tasty/utils/filterBaseProps.js +1 -1
- package/cjs/tasty/utils/get-display-name.js +1 -1
- package/cjs/tasty/utils/index.js +1 -1
- package/cjs/tasty/utils/mergeStyles.js +1 -1
- package/cjs/tasty/utils/modAttrs.js +1 -1
- package/cjs/tasty/utils/renderStyles.js +1 -1
- package/cjs/tasty/utils/responsive.js +1 -1
- package/cjs/tasty/utils/string.js +1 -1
- package/cjs/tasty/utils/styles.js +1 -1
- package/cjs/tasty/utils/warnings.js +1 -1
- package/cjs/test/index.js +1 -1
- package/cjs/test/render.js +1 -1
- package/cjs/test/setup.js +1 -1
- package/cjs/test/utils/index.js +1 -1
- package/cjs/test/utils/wait.js +1 -1
- package/cjs/tokens.js +1 -1
- package/cjs/type-checks.js +1 -1
- package/cjs/utils/ResizeSensor.js +1 -1
- package/cjs/utils/modules.js +1 -1
- package/cjs/utils/promise.js +1 -1
- package/cjs/utils/random.js +1 -1
- package/cjs/utils/range.js +1 -1
- package/cjs/utils/react/Slots.js +1 -1
- package/cjs/utils/react/chain.js +1 -1
- package/cjs/utils/react/index.js +1 -1
- package/cjs/utils/react/interactions.js +1 -1
- package/cjs/utils/react/isTextOnly.js +1 -1
- package/cjs/utils/react/mapProps.js +1 -1
- package/cjs/utils/react/mergeProps.js +1 -1
- package/cjs/utils/react/nullableValue.js +1 -1
- package/cjs/utils/react/useCombinedRefs.js +1 -1
- package/cjs/utils/react/useId.js +1 -1
- package/cjs/utils/react/useLayoutEffect.js +1 -1
- package/cjs/utils/react/useViewportSize.js +1 -1
- package/cjs/utils/react/wrapNodeIfPlain.js +1 -1
- package/cjs/utils/transitions.js +1 -1
- package/cjs/utils/tree.js +1 -1
- package/cjs/utils/warnings.js +1 -1
- package/es/_internal/hooks/index.js +1 -1
- package/es/_internal/hooks/use-chained-callback.js +1 -1
- package/es/_internal/hooks/use-deprecation-warning.js +1 -1
- package/es/_internal/hooks/use-event.js +1 -1
- package/es/_internal/hooks/use-sync-ref.js +1 -1
- package/es/_internal/hooks/use-timer/index.js +1 -1
- package/es/_internal/hooks/use-timer/timer.js +1 -1
- package/es/_internal/hooks/use-timer/use-timer.js +1 -1
- package/es/_internal/index.js +1 -1
- package/es/components/Base.js +1 -1
- package/es/components/Block.js +1 -1
- package/es/components/GlobalStyles.js +1 -1
- package/es/components/GridProvider.js +1 -1
- package/es/components/HiddenInput.js +1 -1
- package/es/components/OpenTrasition.js +1 -1
- package/es/components/Root.js +1 -1
- package/es/components/actions/Action.js +6 -99
- package/es/components/actions/Button/Button.js +170 -106
- package/es/components/actions/Button/Submit.js +1 -1
- package/es/components/actions/Button/index.js +1 -1
- package/es/components/actions/ButtonGroup/ButtonGroup.js +1 -1
- package/es/components/actions/index.js +2 -1
- package/es/components/actions/use-action.js +122 -0
- package/es/components/content/ActiveZone/ActiveZone.js +1 -1
- package/es/components/content/Alert/Alert.js +1 -1
- package/es/components/content/Alert/index.js +1 -1
- package/es/components/content/Alert/types.js +1 -1
- package/es/components/content/Alert/use-alert.js +1 -1
- package/es/components/content/Avatar/Avatar.js +1 -1
- package/es/components/content/Badge/Badge.js +1 -1
- package/es/components/content/Card/Card.js +1 -1
- package/es/components/content/Content.js +1 -1
- package/es/components/content/CopySnippet/CopySnippet.js +1 -1
- package/es/components/content/CopySnippet/index.js +1 -1
- package/es/components/content/Divider.js +1 -1
- package/es/components/content/Footer.js +1 -1
- package/es/components/content/Header.js +1 -1
- package/es/components/content/Paragraph.js +1 -1
- package/es/components/content/Placeholder/Placeholder.js +1 -1
- package/es/components/content/PrismCode/PrismCode.js +1 -1
- package/es/components/content/Result/Result.js +1 -1
- package/es/components/content/Skeleton/Skeleton.js +1 -1
- package/es/components/content/Tag/Tag.js +1 -1
- package/es/components/content/Text.js +1 -1
- package/es/components/content/Title.js +1 -1
- package/es/components/forms/Checkbox/Checkbox.js +1 -1
- package/es/components/forms/Checkbox/CheckboxGroup.js +1 -1
- package/es/components/forms/Checkbox/context.js +1 -1
- package/es/components/forms/FieldWrapper.js +1 -1
- package/es/components/forms/FileInput/FileInput.js +1 -1
- package/es/components/forms/Form/Field.js +1 -1
- package/es/components/forms/Form/Form.js +1 -1
- package/es/components/forms/Form/SubmitError.js +1 -1
- package/es/components/forms/Form/index.js +1 -1
- package/es/components/forms/Form/types.js +1 -1
- package/es/components/forms/Form/useForm.js +1 -1
- package/es/components/forms/Form/validation.js +1 -1
- package/es/components/forms/Input/Input.js +1 -1
- package/es/components/forms/Input/index.js +1 -1
- package/es/components/forms/Label.js +1 -1
- package/es/components/forms/NumberInput/NumberInput.js +1 -1
- package/es/components/forms/NumberInput/StepButton.js +1 -1
- package/es/components/forms/PasswordInput/PasswordInput.js +1 -1
- package/es/components/forms/RadioGroup/Radio.js +1 -1
- package/es/components/forms/RadioGroup/RadioGroup.js +1 -1
- package/es/components/forms/RadioGroup/context.js +1 -1
- package/es/components/forms/RangeSlider/Gradation.js +1 -1
- package/es/components/forms/RangeSlider/Header.js +1 -1
- package/es/components/forms/RangeSlider/RangeInput.js +1 -1
- package/es/components/forms/RangeSlider/RangeSlider.js +1 -1
- package/es/components/forms/RangeSlider/Slide.js +1 -1
- package/es/components/forms/RangeSlider/Thumb.js +1 -1
- package/es/components/forms/RangeSlider/helpers.js +1 -1
- package/es/components/forms/RangeSlider/styled.js +1 -1
- package/es/components/forms/SearchInput/SearchInput.js +1 -1
- package/es/components/forms/Switch/Switch.js +1 -1
- package/es/components/forms/TextArea/TextArea.js +1 -1
- package/es/components/forms/TextInput/TextInput.js +1 -1
- package/es/components/forms/TextInput/TextInputBase.js +1 -1
- package/es/components/forms/index.js +1 -1
- package/es/components/layout/Flex.js +1 -1
- package/es/components/layout/Flow.js +1 -1
- package/es/components/layout/Grid.js +1 -1
- package/es/components/layout/Prefix.js +1 -1
- package/es/components/layout/Space.js +1 -1
- package/es/components/layout/Suffix.js +1 -1
- package/es/components/navigation/LegacyTabs/LegacyTabs.js +1 -1
- package/es/components/navigation/Link/Link.js +1 -1
- package/es/components/organisms/FileTabs/FileTabs.js +1 -1
- package/es/components/organisms/Modal/Modal.js +1 -1
- package/es/components/organisms/StatsCard/StatsCard.js +1 -1
- package/es/components/other/Base64Upload/Base64Upload.js +1 -1
- package/es/components/other/CloudLogo/CloudLogo.js +1 -1
- package/es/components/overlays/AlertDialog/AlertDialog.js +1 -1
- package/es/components/overlays/AlertDialog/AlertDialogApiProvider.js +1 -1
- package/es/components/overlays/AlertDialog/AlertDialogZone.js +1 -1
- package/es/components/overlays/AlertDialog/index.js +1 -1
- package/es/components/overlays/AlertDialog/types.js +1 -1
- package/es/components/overlays/Dialog/Dialog.js +1 -1
- package/es/components/overlays/Dialog/DialogContainer.js +1 -1
- package/es/components/overlays/Dialog/DialogForm.js +1 -1
- package/es/components/overlays/Dialog/DialogTrigger.js +1 -1
- package/es/components/overlays/Dialog/context.js +1 -1
- package/es/components/overlays/Dialog/index.js +1 -1
- package/es/components/overlays/Modal/Modal.js +1 -1
- package/es/components/overlays/Modal/OpenTransition.js +1 -1
- package/es/components/overlays/Modal/Overlay.js +1 -1
- package/es/components/overlays/Modal/Popover.js +1 -1
- package/es/components/overlays/Modal/Tray.js +1 -1
- package/es/components/overlays/Modal/Underlay.js +1 -1
- package/es/components/overlays/Modal/index.js +1 -1
- package/es/components/overlays/NewNotifications/Bar/FloatingNotification.js +1 -1
- package/es/components/overlays/NewNotifications/Bar/NotificationsBar.js +1 -1
- package/es/components/overlays/NewNotifications/Bar/TransitionComponent.js +1 -1
- package/es/components/overlays/NewNotifications/Bar/index.js +1 -1
- package/es/components/overlays/NewNotifications/Dialog/NotificationsDialogTrigger.js +1 -1
- package/es/components/overlays/NewNotifications/Dialog/index.js +1 -1
- package/es/components/overlays/NewNotifications/Notification.js +1 -1
- package/es/components/overlays/NewNotifications/NotificationView/NotificationAction.js +1 -1
- package/es/components/overlays/NewNotifications/NotificationView/NotificationCloseButton.js +1 -1
- package/es/components/overlays/NewNotifications/NotificationView/NotificationDescription.js +1 -1
- package/es/components/overlays/NewNotifications/NotificationView/NotificationFooter.js +1 -1
- package/es/components/overlays/NewNotifications/NotificationView/NotificationHeader.js +1 -1
- package/es/components/overlays/NewNotifications/NotificationView/NotificationIcon.js +1 -1
- package/es/components/overlays/NewNotifications/NotificationView/NotificationProvider.js +1 -1
- package/es/components/overlays/NewNotifications/NotificationView/NotificationView.js +1 -1
- package/es/components/overlays/NewNotifications/NotificationView/index.js +1 -1
- package/es/components/overlays/NewNotifications/NotificationView/types.js +1 -1
- package/es/components/overlays/NewNotifications/NotificationsContext/NotificationsProvider.js +1 -1
- package/es/components/overlays/NewNotifications/NotificationsContext/index.js +1 -1
- package/es/components/overlays/NewNotifications/NotificationsContext/use-notifications.js +1 -1
- package/es/components/overlays/NewNotifications/NotificationsList/NotificationsList.js +1 -1
- package/es/components/overlays/NewNotifications/NotificationsList/NotificationsListItem.js +1 -1
- package/es/components/overlays/NewNotifications/NotificationsList/index.js +1 -1
- package/es/components/overlays/NewNotifications/NotificationsList/types.js +1 -1
- package/es/components/overlays/NewNotifications/hooks/index.js +1 -1
- package/es/components/overlays/NewNotifications/hooks/types.js +1 -1
- package/es/components/overlays/NewNotifications/hooks/use-notification-list-item.js +1 -1
- package/es/components/overlays/NewNotifications/hooks/use-notifications-api.js +1 -1
- package/es/components/overlays/NewNotifications/hooks/use-notifications-list.js +1 -1
- package/es/components/overlays/NewNotifications/hooks/use-notifications-observer.js +1 -1
- package/es/components/overlays/NewNotifications/index.js +1 -1
- package/es/components/overlays/NewNotifications/types.js +1 -1
- package/es/components/overlays/Notification/Notification.js +1 -1
- package/es/components/overlays/OverlayWrapper.js +1 -1
- package/es/components/overlays/Toasts/Toast.js +1 -1
- package/es/components/overlays/Toasts/index.js +1 -1
- package/es/components/overlays/Toasts/types.js +1 -1
- package/es/components/overlays/Toasts/use-toasts-api.js +1 -1
- package/es/components/overlays/Tooltip/Tooltip.js +1 -1
- package/es/components/overlays/Tooltip/TooltipProvider.js +1 -1
- package/es/components/overlays/Tooltip/TooltipTrigger.js +1 -1
- package/es/components/overlays/Tooltip/context.js +1 -1
- package/es/components/pickers/ComboBox/ComboBox.js +1 -1
- package/es/components/pickers/Menu/Menu.js +1 -1
- package/es/components/pickers/Menu/MenuButton.js +1 -1
- package/es/components/pickers/Menu/MenuItem.js +1 -1
- package/es/components/pickers/Menu/MenuSection.js +1 -1
- package/es/components/pickers/Menu/MenuTrigger.js +1 -1
- package/es/components/pickers/Menu/context.js +1 -1
- package/es/components/pickers/Menu/styled.js +1 -1
- package/es/components/pickers/Select/Select.js +1 -1
- package/es/components/portal/Portal.js +1 -1
- package/es/components/portal/PortalProvider.js +1 -1
- package/es/components/portal/index.js +1 -1
- package/es/components/portal/storybook/templates/CustomRoot.js +1 -1
- package/es/components/portal/storybook/templates/PortalOrder.js +1 -1
- package/es/components/portal/storybook/templates/basic.js +1 -1
- package/es/components/portal/storybook/templates/index.js +1 -1
- package/es/components/portal/types.js +1 -1
- package/es/components/portal/usePortal.js +1 -1
- package/es/components/status/LoadingAnimation/LoadingAnimation.js +1 -1
- package/es/components/status/LoadingAnimation/index.js +1 -1
- package/es/components/status/Spin/Cube.js +1 -1
- package/es/components/status/Spin/InternalSpinner.js +1 -1
- package/es/components/status/Spin/Spin.js +1 -1
- package/es/components/status/Spin/SpinsContainer.js +1 -1
- package/es/components/status/Spin/index.js +1 -1
- package/es/components/status/Spin/types.js +1 -1
- package/es/components/status/index.js +1 -1
- package/es/data/themes.js +1 -1
- package/es/icons/Attention.js +1 -1
- package/es/icons/Cross.js +1 -1
- package/es/icons/Danger.js +1 -1
- package/es/icons/Success.js +1 -1
- package/es/icons/index.js +1 -1
- package/es/index.js +1 -1
- package/es/provider.js +1 -1
- package/es/providers/StyleProvider.js +1 -1
- package/es/services/notification.js +1 -1
- package/es/shared/form.js +1 -1
- package/es/shared/index.js +1 -1
- package/es/stories/FormFieldArgs.js +1 -1
- package/es/stories/components/ConfirmDeletionDialogForm.js +1 -1
- package/es/stories/components/DialogFormApp.js +1 -1
- package/es/stories/components/StyledButton.js +1 -1
- package/es/stories/lists/baseProps.js +1 -1
- package/es/styled/index.js +1 -1
- package/es/styled/styled.js +1 -1
- package/es/tasty/index.js +1 -1
- package/es/tasty/providers/BreakpointsProvider.js +1 -1
- package/es/tasty/styles/align.js +1 -1
- package/es/tasty/styles/border.js +1 -1
- package/es/tasty/styles/boxShadow.combinator.js +1 -1
- package/es/tasty/styles/color.js +1 -1
- package/es/tasty/styles/createStyle.js +1 -1
- package/es/tasty/styles/dimension.js +1 -1
- package/es/tasty/styles/display.js +1 -1
- package/es/tasty/styles/fill.js +1 -1
- package/es/tasty/styles/flow.js +1 -1
- package/es/tasty/styles/font.js +1 -1
- package/es/tasty/styles/fontStyle.js +1 -1
- package/es/tasty/styles/gap.js +1 -1
- package/es/tasty/styles/groupRadius.js +1 -1
- package/es/tasty/styles/height.js +1 -1
- package/es/tasty/styles/index.js +1 -1
- package/es/tasty/styles/justify.js +1 -1
- package/es/tasty/styles/list.js +1 -1
- package/es/tasty/styles/margin.js +1 -1
- package/es/tasty/styles/marginBlock.js +1 -1
- package/es/tasty/styles/marginInline.js +1 -1
- package/es/tasty/styles/outline.js +1 -1
- package/es/tasty/styles/padding.js +1 -1
- package/es/tasty/styles/paddingBlock.js +1 -1
- package/es/tasty/styles/paddingInline.js +1 -1
- package/es/tasty/styles/predefined.js +1 -1
- package/es/tasty/styles/preset.js +1 -1
- package/es/tasty/styles/radius.js +1 -1
- package/es/tasty/styles/reset.js +1 -1
- package/es/tasty/styles/shadow.js +1 -1
- package/es/tasty/styles/styledScrollbar.js +1 -1
- package/es/tasty/styles/transition.js +1 -1
- package/es/tasty/styles/types.js +1 -1
- package/es/tasty/styles/width.js +1 -1
- package/es/tasty/tasty.js +1 -1
- package/es/tasty/types.js +1 -1
- package/es/tasty/utils/colors.js +1 -1
- package/es/tasty/utils/dotize.js +1 -1
- package/es/tasty/utils/filterBaseProps.js +1 -1
- package/es/tasty/utils/get-display-name.js +1 -1
- package/es/tasty/utils/index.js +1 -1
- package/es/tasty/utils/mergeStyles.js +1 -1
- package/es/tasty/utils/modAttrs.js +1 -1
- package/es/tasty/utils/renderStyles.js +1 -1
- package/es/tasty/utils/responsive.js +1 -1
- package/es/tasty/utils/string.js +1 -1
- package/es/tasty/utils/styles.js +1 -1
- package/es/tasty/utils/warnings.js +1 -1
- package/es/test/index.js +1 -1
- package/es/test/render.js +1 -1
- package/es/test/setup.js +1 -1
- package/es/test/utils/index.js +1 -1
- package/es/test/utils/wait.js +1 -1
- package/es/tokens.js +1 -1
- package/es/type-checks.js +1 -1
- package/es/utils/ResizeSensor.js +1 -1
- package/es/utils/modules.js +1 -1
- package/es/utils/promise.js +1 -1
- package/es/utils/random.js +1 -1
- package/es/utils/range.js +1 -1
- package/es/utils/react/Slots.js +1 -1
- package/es/utils/react/chain.js +1 -1
- package/es/utils/react/index.js +1 -1
- package/es/utils/react/interactions.js +1 -1
- package/es/utils/react/isTextOnly.js +1 -1
- package/es/utils/react/mapProps.js +1 -1
- package/es/utils/react/mergeProps.js +1 -1
- package/es/utils/react/nullableValue.js +1 -1
- package/es/utils/react/useCombinedRefs.js +1 -1
- package/es/utils/react/useId.js +1 -1
- package/es/utils/react/useLayoutEffect.js +1 -1
- package/es/utils/react/useViewportSize.js +1 -1
- package/es/utils/react/wrapNodeIfPlain.js +1 -1
- package/es/utils/transitions.js +1 -1
- package/es/utils/tree.js +1 -1
- package/es/utils/warnings.js +1 -1
- package/package.json +1 -1
- package/types/components/actions/Action.d.ts +0 -12
- package/types/components/actions/index.d.ts +1 -0
- package/types/components/actions/use-action.d.ts +42 -0
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @license MIT
|
|
3
3
|
* author: Cube Dev Team
|
|
4
|
-
* @cube-dev/ui-kit v0.0.0-canary-
|
|
4
|
+
* @cube-dev/ui-kit v0.0.0-canary-6869af9
|
|
5
5
|
* Released under the MIT license.
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
8
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
9
9
|
import { cloneElement, forwardRef, useMemo } from 'react';
|
|
10
10
|
import { LoadingOutlined } from '@ant-design/icons';
|
|
11
|
-
import {
|
|
11
|
+
import { tasty } from '../../../tasty';
|
|
12
12
|
import { accessibilityWarning } from '../../../utils/warnings';
|
|
13
|
+
import { useAction } from '../use-action';
|
|
13
14
|
// const DEFAULT_STYLES_BY_TYPE: { [key: string]: Styles } = {
|
|
14
15
|
// primary: {
|
|
15
16
|
// border: {
|
|
@@ -235,103 +236,6 @@ export const DEFAULT_BUTTON_STYLES = {
|
|
|
235
236
|
'': true,
|
|
236
237
|
'[data-type="link"] & !focused': 0,
|
|
237
238
|
},
|
|
238
|
-
// Theming
|
|
239
|
-
shadow: {
|
|
240
|
-
'': false,
|
|
241
|
-
'[data-type="link"] & [data-theme="default"]': '0 @border-width 0 0 #purple.20',
|
|
242
|
-
'[data-type="link"] & [data-theme="default"] & (pressed | hovered | [disabled])': '0 0 0 0 #purple.20',
|
|
243
|
-
'[data-type="link"] & [data-theme="danger"]': '0 @border-width 0 0 #danger.20',
|
|
244
|
-
'[data-type="link"] & [data-theme="danger"] & (pressed | hovered | [disabled])': '0 0 0 0 #danger.20',
|
|
245
|
-
'[data-type="link"] & [data-theme="special"]': '0 @border-width 0 0 #white.44',
|
|
246
|
-
'[data-type="link"] & [data-theme="special"] & (pressed | hovered | [disabled])': '0 0 0 0 #white.44',
|
|
247
|
-
},
|
|
248
|
-
outline: {
|
|
249
|
-
'': '0 #purple-03.20',
|
|
250
|
-
focused: '@outline-width #purple-03.20',
|
|
251
|
-
'[data-theme="danger"]': '0 #danger.20',
|
|
252
|
-
'[data-theme="danger"] & focused': '@outline-width #danger.20',
|
|
253
|
-
'[data-theme="special"]': '0 #white.44',
|
|
254
|
-
'[data-theme="special"] & focused': '@outline-width #white.44',
|
|
255
|
-
'[data-theme="special"] & ([data-type="primary"] | [data-type="clear"])': '0 #dark-03.80',
|
|
256
|
-
'[data-theme="special"] & ([data-type="primary"] | [data-type="clear"]) & focused': '@outline-width #dark-03.80',
|
|
257
|
-
},
|
|
258
|
-
border: {
|
|
259
|
-
// default
|
|
260
|
-
'': '#clear',
|
|
261
|
-
'[data-type="primary"] & ([data-theme="default"] | [data-theme="special"]) & pressed': '#purple-text',
|
|
262
|
-
'[data-type="secondary"] & [data-theme="default"] & pressed': '#purple.3',
|
|
263
|
-
'[data-type="outline"] & [data-theme="default"]': '#purple.3',
|
|
264
|
-
'[data-type="outline"] & [data-theme="default"] & [disabled]': '#dark.12',
|
|
265
|
-
'([data-type="clear"] | [data-type="outline"]) & [data-theme="default"] & pressed': '#purple-text.10',
|
|
266
|
-
'[data-type="link"] & [data-theme="default"] & pressed': '#purple',
|
|
267
|
-
// danger
|
|
268
|
-
'[data-type="primary"] & [data-theme="danger"] & pressed': '#danger-text',
|
|
269
|
-
'[data-type="secondary"] & [data-theme="danger"] & pressed': '#danger.3',
|
|
270
|
-
'[data-type="outline"] & [data-theme="danger"]': '#danger-text.3',
|
|
271
|
-
'([data-type="clear"] | [data-type="outline"]) & [data-theme="danger"] & pressed': '#danger-text.10',
|
|
272
|
-
'[data-type="outline"] & [data-theme="danger"] & pressed': '#danger.3',
|
|
273
|
-
// special
|
|
274
|
-
'[data-type="primary"] & [data-theme="special"] & pressed': '#danger-text',
|
|
275
|
-
'[data-type="secondary"] & [data-theme="special"] & pressed': '#white.44',
|
|
276
|
-
'[data-type="outline"] & [data-theme="special"] & !pressed': '#white.44',
|
|
277
|
-
'[data-type="link"]': '#clear',
|
|
278
|
-
},
|
|
279
|
-
fill: {
|
|
280
|
-
// default
|
|
281
|
-
'': '#clear',
|
|
282
|
-
'[data-type="primary"] & [data-theme="default"]': '#purple',
|
|
283
|
-
'[data-type="primary"] & [data-theme="default"] & pressed': '#purple',
|
|
284
|
-
'[data-type="primary"] & [data-theme="default"] & hovered': '#purple-text',
|
|
285
|
-
'[data-type="secondary"] & [data-theme="default"]': '#purple.10',
|
|
286
|
-
'[data-type="secondary"] & [data-theme="default"] & hovered': '#purple.16',
|
|
287
|
-
'[data-type="secondary"] & [data-theme="default"] & pressed': '#purple-text.10',
|
|
288
|
-
'[data-type="neutral"] & [data-theme="default"]': '#dark.0',
|
|
289
|
-
'[data-type="neutral"] & [data-theme="default"] & hovered': '#dark.04',
|
|
290
|
-
'[data-type="neutral"] & [data-theme="default"] & pressed': '#dark.05',
|
|
291
|
-
'[data-theme="default"] & [disabled]': '#dark.04',
|
|
292
|
-
'([data-type="clear"] | [data-type="outline"]) & [data-theme="default"]': '#purple.0',
|
|
293
|
-
'([data-type="clear"] | [data-type="outline"]) & [data-theme="default"] & hovered': '#purple.16',
|
|
294
|
-
'([data-type="clear"] | [data-type="outline"]) & [data-theme="default"] & pressed': '#purple.10',
|
|
295
|
-
'([data-type="clear"] | [data-type="outline"]) & [data-theme="default"] & [disabled]': '#purple.0',
|
|
296
|
-
// danger
|
|
297
|
-
'[data-type="primary"] & [data-theme="danger"]': '#danger-text',
|
|
298
|
-
'[data-type="primary"] & [data-theme="danger"] & hovered': '#danger-text',
|
|
299
|
-
'[data-type="primary"] & [data-theme="danger"] & pressed': '#danger',
|
|
300
|
-
'[data-type="secondary"] & [data-theme="danger"]': '#danger.05',
|
|
301
|
-
'[data-type="secondary"] & [data-theme="danger"] & hovered': '#danger.1',
|
|
302
|
-
'[data-type="secondary"] & [data-theme="danger"] & pressed': '#danger.05',
|
|
303
|
-
'[data-type="neutral"] & [data-theme="danger"]': '#dark.0',
|
|
304
|
-
'[data-type="neutral"] & [data-theme="danger"] & hovered': '#dark.04',
|
|
305
|
-
'[data-type="neutral"] & [data-theme="danger"] & pressed': '#dark.05',
|
|
306
|
-
'[data-theme="danger"] & [disabled]': '#dark.04',
|
|
307
|
-
'([data-type="clear"] | [data-type="outline"]) & [data-theme="danger"]': '#danger.0',
|
|
308
|
-
'([data-type="clear"] | [data-type="outline"]) & [data-theme="danger"] & hovered': '#danger.1',
|
|
309
|
-
'([data-type="clear"] | [data-type="outline"]) & [data-theme="danger"] & pressed': '#danger.05',
|
|
310
|
-
'([data-type="clear"] | [data-type="outline"]) & [data-theme="danger"] & [disabled]': '#danger.0',
|
|
311
|
-
// special
|
|
312
|
-
},
|
|
313
|
-
color: {
|
|
314
|
-
// default
|
|
315
|
-
'': '#white',
|
|
316
|
-
'[data-type="secondary"] & [data-theme="default"]': '#purple',
|
|
317
|
-
'([data-type="clear"] | [data-type="outline"] | [data-type="link"]) & [data-theme="default"]': '#purple-text',
|
|
318
|
-
'[data-type="link"] & [data-theme="default"] & pressed': '#purple',
|
|
319
|
-
'[data-type="neutral"]': '#dark.75',
|
|
320
|
-
'[data-type="neutral"] & hovered': '#dark.75',
|
|
321
|
-
'[data-type="neutral"] & [data-theme="default"] & pressed': '#purple',
|
|
322
|
-
// danger
|
|
323
|
-
'[data-type="secondary"] & [data-theme="danger"]': '#danger',
|
|
324
|
-
'([data-type="clear"] | [data-type="outline"] | [data-type="link"]) & [data-theme="danger"]': '#danger-text',
|
|
325
|
-
'[data-type="link"] & [data-theme="danger"] & pressed': '#danger',
|
|
326
|
-
'[data-type="neutral"] & [data-theme="danger"] & pressed': '#danger',
|
|
327
|
-
// special
|
|
328
|
-
'[data-type="primary"] & [data-theme="special"]': '#danger',
|
|
329
|
-
'([data-type="clear"] | [data-type="outline"] | [data-type="link"]) & [data-theme="special"]': '#danger-text',
|
|
330
|
-
'[data-type="link"] & [data-theme="special"] & pressed': '#danger',
|
|
331
|
-
'[data-type="neutral"] & [data-theme="special"] & pressed': '#danger',
|
|
332
|
-
// other
|
|
333
|
-
'[disabled]': '#dark.30',
|
|
334
|
-
},
|
|
335
239
|
'& .anticon': {
|
|
336
240
|
transition: 'display .2s steps(1, start), margin .2s linear, opacity .2s linear',
|
|
337
241
|
},
|
|
@@ -340,9 +244,172 @@ export const DEFAULT_BUTTON_STYLES = {
|
|
|
340
244
|
fontSize: '@icon-size',
|
|
341
245
|
},
|
|
342
246
|
};
|
|
247
|
+
const DefaultButtonElement = tasty({
|
|
248
|
+
'data-theme': 'default',
|
|
249
|
+
styles: {
|
|
250
|
+
...DEFAULT_BUTTON_STYLES,
|
|
251
|
+
shadow: {
|
|
252
|
+
'': false,
|
|
253
|
+
'[data-type="link"]': '0 @border-width 0 0 #purple.20',
|
|
254
|
+
'[data-type="link"] & (pressed | hovered | [disabled])': '0 0 0 0 #purple.20',
|
|
255
|
+
},
|
|
256
|
+
outline: {
|
|
257
|
+
'': '0 #purple-03.20',
|
|
258
|
+
focused: '@outline-width #purple-03.20',
|
|
259
|
+
},
|
|
260
|
+
border: {
|
|
261
|
+
// default
|
|
262
|
+
'': '#clear',
|
|
263
|
+
'[data-type="primary"] & pressed': '#purple-text',
|
|
264
|
+
'[data-type="secondary"] & pressed': '#purple.3',
|
|
265
|
+
'[data-type="outline"]': '#purple.3',
|
|
266
|
+
'[data-type="outline"] & [disabled]': '#dark.12',
|
|
267
|
+
'([data-type="clear"] | [data-type="outline"]) & pressed': '#purple-text.10',
|
|
268
|
+
'[data-type="link"]': '#clear',
|
|
269
|
+
'[data-type="link"] & pressed': '#purple',
|
|
270
|
+
},
|
|
271
|
+
fill: {
|
|
272
|
+
'': '#clear',
|
|
273
|
+
'[data-type="primary"]': '#purple',
|
|
274
|
+
'[data-type="primary"] & pressed': '#purple',
|
|
275
|
+
'[data-type="primary"] & hovered': '#purple-text',
|
|
276
|
+
'[data-type="secondary"]': '#purple.10',
|
|
277
|
+
'[data-type="secondary"] & hovered': '#purple.16',
|
|
278
|
+
'[data-type="secondary"] & pressed': '#purple-text.10',
|
|
279
|
+
'[data-type="neutral"]': '#dark.0',
|
|
280
|
+
'[data-type="neutral"] & hovered': '#dark.04',
|
|
281
|
+
'[data-type="neutral"] & pressed': '#dark.05',
|
|
282
|
+
'[disabled]': '#dark.04',
|
|
283
|
+
'([data-type="clear"] | [data-type="outline"])': '#purple.0',
|
|
284
|
+
'([data-type="clear"] | [data-type="outline"]) & hovered': '#purple.16',
|
|
285
|
+
'([data-type="clear"] | [data-type="outline"]) & pressed': '#purple.10',
|
|
286
|
+
'([data-type="clear"] | [data-type="outline"]) & [disabled]': '#purple.0',
|
|
287
|
+
},
|
|
288
|
+
color: {
|
|
289
|
+
// default
|
|
290
|
+
'': '#white',
|
|
291
|
+
'[data-type="secondary"]': '#purple',
|
|
292
|
+
'[data-type="clear"] | [data-type="outline"] | [data-type="link"]': '#purple-text',
|
|
293
|
+
'[data-type="link"] & pressed': '#purple',
|
|
294
|
+
'[data-type="neutral"]': '#dark.75',
|
|
295
|
+
'[data-type="neutral"] & hovered': '#dark.75',
|
|
296
|
+
'[data-type="neutral"] & pressed': '#purple',
|
|
297
|
+
// other
|
|
298
|
+
'[disabled]': '#dark.30',
|
|
299
|
+
},
|
|
300
|
+
},
|
|
301
|
+
});
|
|
302
|
+
const DangerButtonElement = tasty({
|
|
303
|
+
'data-theme': 'default',
|
|
304
|
+
styles: {
|
|
305
|
+
...DEFAULT_BUTTON_STYLES,
|
|
306
|
+
shadow: {
|
|
307
|
+
'': false,
|
|
308
|
+
'[data-type="link"]': '0 @border-width 0 0 #danger.20',
|
|
309
|
+
'[data-type="link"] & (pressed | hovered | [disabled])': '0 0 0 0 #danger.20',
|
|
310
|
+
},
|
|
311
|
+
outline: {
|
|
312
|
+
'': '0 #danger.20',
|
|
313
|
+
focused: '@outline-width #danger.20',
|
|
314
|
+
},
|
|
315
|
+
border: {
|
|
316
|
+
'': '#clear',
|
|
317
|
+
'[data-type="primary"] & pressed': '#danger-text',
|
|
318
|
+
'[data-type="secondary"] & pressed': '#danger.3',
|
|
319
|
+
'[data-type="outline"]': '#danger-text.3',
|
|
320
|
+
'([data-type="clear"] | [data-type="outline"]) & pressed': '#danger-text.10',
|
|
321
|
+
'[data-type="outline"] & pressed': '#danger.3',
|
|
322
|
+
'[data-type="link"]': '#clear',
|
|
323
|
+
},
|
|
324
|
+
fill: {
|
|
325
|
+
'': '#clear',
|
|
326
|
+
'[data-type="primary"]': '#danger-text',
|
|
327
|
+
'[data-type="primary"] & hovered': '#danger-text',
|
|
328
|
+
'[data-type="primary"] & pressed': '#danger',
|
|
329
|
+
'[data-type="secondary"]': '#danger.05',
|
|
330
|
+
'[data-type="secondary"] & hovered': '#danger.1',
|
|
331
|
+
'[data-type="secondary"] & pressed': '#danger.05',
|
|
332
|
+
'[data-type="neutral"]': '#dark.0',
|
|
333
|
+
'[data-type="neutral"] & hovered': '#dark.04',
|
|
334
|
+
'[data-type="neutral"] & pressed': '#dark.05',
|
|
335
|
+
'[disabled]': '#dark.04',
|
|
336
|
+
'[data-type="clear"] | [data-type="outline"]': '#danger.0',
|
|
337
|
+
'([data-type="clear"] | [data-type="outline"]) & hovered': '#danger.1',
|
|
338
|
+
'([data-type="clear"] | [data-type="outline"]) & pressed': '#danger.05',
|
|
339
|
+
'([data-type="clear"] | [data-type="outline"]) & [disabled]': '#danger.0',
|
|
340
|
+
},
|
|
341
|
+
color: {
|
|
342
|
+
'': '#white',
|
|
343
|
+
'[data-type="neutral"]': '#dark.75',
|
|
344
|
+
'[data-type="neutral"] & hovered': '#dark.75',
|
|
345
|
+
'[data-type="secondary"]': '#danger',
|
|
346
|
+
'[data-type="clear"] | [data-type="outline"] | [data-type="link"]': '#danger-text',
|
|
347
|
+
'[data-type="link"] & pressed': '#danger',
|
|
348
|
+
'[data-type="neutral"] & pressed': '#danger',
|
|
349
|
+
'[disabled]': '#dark.30',
|
|
350
|
+
},
|
|
351
|
+
},
|
|
352
|
+
});
|
|
353
|
+
const SpecialButtonElement = tasty({
|
|
354
|
+
'data-theme': 'default',
|
|
355
|
+
styles: {
|
|
356
|
+
...DEFAULT_BUTTON_STYLES,
|
|
357
|
+
shadow: {
|
|
358
|
+
'': false,
|
|
359
|
+
'[data-type="link"]': '0 @border-width 0 0 #white.44',
|
|
360
|
+
'[data-type="link"] & (pressed | hovered | [disabled])': '0 0 0 0 #white.44',
|
|
361
|
+
},
|
|
362
|
+
outline: {
|
|
363
|
+
'': '0 #white.44',
|
|
364
|
+
focused: '@outline-width #white.44',
|
|
365
|
+
'([data-type="primary"] | [data-type="clear"])': '0 #dark-03.80',
|
|
366
|
+
'([data-type="primary"] | [data-type="clear"]) & focused': '@outline-width #purple-03.80',
|
|
367
|
+
},
|
|
368
|
+
border: {
|
|
369
|
+
'': '#clear',
|
|
370
|
+
'[data-type="primary"] & pressed': '#purple-03',
|
|
371
|
+
'[data-type="secondary"] & pressed': '#white.44',
|
|
372
|
+
'[data-type="outline"] & !pressed': '#white.44',
|
|
373
|
+
},
|
|
374
|
+
fill: {
|
|
375
|
+
'': '#clear',
|
|
376
|
+
'[data-type="primary"]': '#purple',
|
|
377
|
+
'[data-type="primary"] & pressed': '#purple',
|
|
378
|
+
'[data-type="primary"] & hovered': '#purple-text',
|
|
379
|
+
'[data-type="secondary"]': '#white.12',
|
|
380
|
+
'[data-type="secondary"] & hovered': '#white.18',
|
|
381
|
+
'[data-type="secondary"] & pressed': '#white.12',
|
|
382
|
+
'[data-type="clear"]': '#white',
|
|
383
|
+
'[data-type="clear"] & hovered': '#white.94',
|
|
384
|
+
'[data-type="clear"] & pressed': '#white',
|
|
385
|
+
'[disabled]': '#white.12',
|
|
386
|
+
'([data-type="neutral"] | [data-type="outline"])': '#white.0',
|
|
387
|
+
'([data-type="neutral"] | [data-type="outline"]) & hovered': '#white.18',
|
|
388
|
+
'([data-type="neutral"] | [data-type="outline"]) & pressed': '#white.18',
|
|
389
|
+
'([data-type="clear"] | [data-type="outline"]) & [disabled]': '#white.0',
|
|
390
|
+
},
|
|
391
|
+
color: {
|
|
392
|
+
// default
|
|
393
|
+
'': '#white',
|
|
394
|
+
'[data-type="neutral"]': '#white.75',
|
|
395
|
+
'[data-type="neutral"] & hovered': '#white.75',
|
|
396
|
+
// '[data-type="primary"]': '#white',
|
|
397
|
+
'[data-type="clear"]': '#purple',
|
|
398
|
+
// '[data-type="link"] & pressed': '#white',
|
|
399
|
+
// '[data-type="neutral"] & pressed': '#white',
|
|
400
|
+
// other
|
|
401
|
+
'[disabled]': '#white.30',
|
|
402
|
+
},
|
|
403
|
+
},
|
|
404
|
+
});
|
|
405
|
+
const ElementMap = {
|
|
406
|
+
default: DefaultButtonElement,
|
|
407
|
+
danger: DangerButtonElement,
|
|
408
|
+
special: SpecialButtonElement,
|
|
409
|
+
};
|
|
343
410
|
export const Button = forwardRef(function Button(allProps, ref) {
|
|
344
411
|
let { type, size, label, styles, children, theme = 'default', icon, rightIcon, mods, ...props } = allProps;
|
|
345
|
-
const isDisabled = props.isDisabled;
|
|
412
|
+
const isDisabled = props.isDisabled || props.isLoading;
|
|
346
413
|
const isLoading = props.isLoading;
|
|
347
414
|
const isSelected = props.isSelected;
|
|
348
415
|
if (!children) {
|
|
@@ -358,10 +425,6 @@ export const Button = forwardRef(function Button(allProps, ref) {
|
|
|
358
425
|
}
|
|
359
426
|
}
|
|
360
427
|
children = children || icon || rightIcon ? children : label;
|
|
361
|
-
styles = useMemo(() => ({
|
|
362
|
-
...DEFAULT_BUTTON_STYLES,
|
|
363
|
-
...styles,
|
|
364
|
-
}), [type, theme, styles]);
|
|
365
428
|
if (icon) {
|
|
366
429
|
icon = cloneElement(icon, {
|
|
367
430
|
'data-element': 'ButtonIcon',
|
|
@@ -375,13 +438,14 @@ export const Button = forwardRef(function Button(allProps, ref) {
|
|
|
375
438
|
const singleIcon = !!(((icon && !rightIcon) || (rightIcon && !icon)) &&
|
|
376
439
|
!children);
|
|
377
440
|
const modifiers = useMemo(() => ({
|
|
378
|
-
disabled: isDisabled,
|
|
379
441
|
loading: isLoading,
|
|
380
442
|
selected: isSelected,
|
|
381
443
|
'single-icon-only': singleIcon,
|
|
382
444
|
...mods,
|
|
383
445
|
}), [mods, isDisabled, isLoading, isSelected, singleIcon]);
|
|
384
|
-
|
|
446
|
+
const ButtonElement = ElementMap[theme];
|
|
447
|
+
const { actionProps } = useAction({ ...props, isDisabled, mods: modifiers }, ref);
|
|
448
|
+
return (_jsxs(ButtonElement, { ...actionProps, "data-theme": theme, "data-type": type ?? 'secondary', "data-size": size ?? 'medium', styles: styles, children: [icon || isLoading ? !isLoading ? icon : _jsx(LoadingOutlined, {}, void 0) : null, children, rightIcon] }, void 0));
|
|
385
449
|
});
|
|
386
450
|
|
|
387
451
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @license MIT
|
|
3
3
|
* author: Cube Dev Team
|
|
4
|
-
* @cube-dev/ui-kit v0.0.0-canary-
|
|
4
|
+
* @cube-dev/ui-kit v0.0.0-canary-6869af9
|
|
5
5
|
* Released under the MIT license.
|
|
6
6
|
*/
|
|
7
7
|
|
|
@@ -10,6 +10,7 @@ import { ButtonGroup } from './ButtonGroup/ButtonGroup';
|
|
|
10
10
|
const Button = Object.assign(__Button, { Group: ButtonGroup });
|
|
11
11
|
export * from './Button';
|
|
12
12
|
export * from './Action';
|
|
13
|
+
export * from './use-action';
|
|
13
14
|
export { Button, ButtonGroup };
|
|
14
15
|
|
|
15
16
|
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license MIT
|
|
3
|
+
* author: Cube Dev Team
|
|
4
|
+
* @cube-dev/ui-kit v0.0.0-canary-6869af9
|
|
5
|
+
* Released under the MIT license.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
import { useCallback, useContext } from 'react';
|
|
9
|
+
import { useHover } from '@react-aria/interactions';
|
|
10
|
+
import { useButton } from '@react-aria/button';
|
|
11
|
+
import { useFocusableRef } from '@react-spectrum/utils';
|
|
12
|
+
import { UIKitContext } from '../../provider';
|
|
13
|
+
import { mergeProps } from '../../utils/react';
|
|
14
|
+
import { useFocus } from '../../utils/react/interactions';
|
|
15
|
+
import { filterBaseProps } from '../../tasty';
|
|
16
|
+
const FILTER_OPTIONS = { propNames: new Set(['onMouseEnter', 'onMouseLeave']) };
|
|
17
|
+
/**
|
|
18
|
+
* Helper to open link.
|
|
19
|
+
* @param {String} href
|
|
20
|
+
* @param {String|Boolean} [target]
|
|
21
|
+
*/
|
|
22
|
+
export function openLink(href, target) {
|
|
23
|
+
const link = document.createElement('a');
|
|
24
|
+
link.href = href;
|
|
25
|
+
if (target) {
|
|
26
|
+
link.target = target === true ? '_blank' : target;
|
|
27
|
+
}
|
|
28
|
+
document.body.appendChild(link);
|
|
29
|
+
link.click();
|
|
30
|
+
document.body.removeChild(link);
|
|
31
|
+
}
|
|
32
|
+
export function parseTo(to) {
|
|
33
|
+
const newTab = to && typeof to === 'string' && to.startsWith('!');
|
|
34
|
+
const nativeRoute = to && typeof to === 'string' && to.startsWith('@');
|
|
35
|
+
const href = to && typeof to === 'string'
|
|
36
|
+
? newTab || nativeRoute
|
|
37
|
+
? to.slice(1)
|
|
38
|
+
: to
|
|
39
|
+
: undefined;
|
|
40
|
+
return {
|
|
41
|
+
newTab,
|
|
42
|
+
nativeRoute,
|
|
43
|
+
href,
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
export function performClickHandler(evt, router, to, onPress) {
|
|
47
|
+
const { newTab, nativeRoute, href } = parseTo(to);
|
|
48
|
+
onPress?.(evt);
|
|
49
|
+
if (!to)
|
|
50
|
+
return;
|
|
51
|
+
if (evt.shiftKey || evt.metaKey || newTab) {
|
|
52
|
+
openLink(href, true);
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
if (nativeRoute) {
|
|
56
|
+
openLink(href || window.location.href);
|
|
57
|
+
}
|
|
58
|
+
else if (href && href.startsWith('#')) {
|
|
59
|
+
const id = href.slice(1);
|
|
60
|
+
const element = document.getElementById(id);
|
|
61
|
+
if (element) {
|
|
62
|
+
element.scrollIntoView({
|
|
63
|
+
behavior: 'smooth',
|
|
64
|
+
block: 'start',
|
|
65
|
+
inline: 'nearest',
|
|
66
|
+
});
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
if (router) {
|
|
71
|
+
router.push(href);
|
|
72
|
+
}
|
|
73
|
+
else if (href) {
|
|
74
|
+
window.location.href = href;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
export const useAction = function useAction({ to, as, htmlType, label, mods, onPress, ...props }, ref) {
|
|
78
|
+
as = to ? 'a' : as || 'button';
|
|
79
|
+
const router = useContext(UIKitContext).router;
|
|
80
|
+
const isDisabled = props.isDisabled;
|
|
81
|
+
const { newTab, href } = parseTo(to);
|
|
82
|
+
const target = newTab ? '_blank' : undefined;
|
|
83
|
+
const domRef = useFocusableRef(ref);
|
|
84
|
+
const customOnPress = useCallback((evt) => {
|
|
85
|
+
performClickHandler(evt, router, to, onPress);
|
|
86
|
+
}, [router, to, onPress]);
|
|
87
|
+
let { buttonProps, isPressed } = useButton({
|
|
88
|
+
...props,
|
|
89
|
+
onPress: customOnPress,
|
|
90
|
+
}, domRef);
|
|
91
|
+
let { hoverProps, isHovered } = useHover({ isDisabled });
|
|
92
|
+
let { focusProps, isFocused } = useFocus({ isDisabled }, true);
|
|
93
|
+
const customProps = to
|
|
94
|
+
? {
|
|
95
|
+
onClick(evt) {
|
|
96
|
+
evt.preventDefault();
|
|
97
|
+
},
|
|
98
|
+
}
|
|
99
|
+
: {};
|
|
100
|
+
return {
|
|
101
|
+
actionProps: {
|
|
102
|
+
mods: {
|
|
103
|
+
hovered: isHovered && !isDisabled,
|
|
104
|
+
pressed: isPressed && !isDisabled,
|
|
105
|
+
focused: isFocused && !isDisabled,
|
|
106
|
+
disabled: isDisabled,
|
|
107
|
+
...mods,
|
|
108
|
+
},
|
|
109
|
+
'aria-label': label,
|
|
110
|
+
...mergeProps(buttonProps, hoverProps, focusProps, customProps, filterBaseProps(props, FILTER_OPTIONS)),
|
|
111
|
+
ref: domRef,
|
|
112
|
+
type: htmlType || 'button',
|
|
113
|
+
rel: as === 'a' && newTab ? 'rel="noopener noreferrer"' : undefined,
|
|
114
|
+
as,
|
|
115
|
+
isDisabled,
|
|
116
|
+
target,
|
|
117
|
+
href,
|
|
118
|
+
},
|
|
119
|
+
};
|
|
120
|
+
};
|
|
121
|
+
|
|
122
|
+
|