@cube-dev/ui-kit 0.74.3 → 0.76.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +28 -0
- package/es/_internal/hooks/index.js +1 -1
- package/es/_internal/hooks/use-chained-callback.js +1 -1
- package/es/_internal/hooks/use-debounced-value.js +1 -1
- package/es/_internal/hooks/use-deprecation-warning.js +1 -1
- package/es/_internal/hooks/use-effect-once.js +1 -1
- package/es/_internal/hooks/use-event.js +1 -1
- package/es/_internal/hooks/use-is-first-render.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/hooks/use-update-effect.js +1 -1
- package/es/_internal/hooks/use-warn.js +1 -1
- package/es/_internal/index.js +1 -1
- package/es/components/Block.js +1 -1
- package/es/components/GlobalStyles.js +10 -15
- package/es/components/GridProvider.js +1 -1
- package/es/components/HiddenInput.js +25 -24
- package/es/components/Item.js +1 -1
- package/es/components/OpenTrasition.js +1 -1
- package/es/components/Root.js +2 -2
- package/es/components/actions/Action/Action.js +15 -19
- package/es/components/actions/Button/Button.js +2 -1
- package/es/components/actions/Button/index.js +1 -1
- package/es/components/actions/ButtonGroup/ButtonGroup.js +1 -1
- package/es/components/actions/CommandMenu/CommandMenu.js +1 -1
- package/es/components/actions/CommandMenu/index.js +1 -1
- package/es/components/actions/CommandMenu/styled.js +1 -1
- package/es/components/actions/ItemButton/ItemButton.js +1 -1
- package/es/components/actions/ItemButton/index.js +1 -1
- package/es/components/actions/Menu/Menu.js +1 -1
- package/es/components/actions/Menu/MenuItem.js +3 -8
- package/es/components/actions/Menu/MenuSection.js +1 -1
- package/es/components/actions/Menu/MenuTrigger.js +1 -1
- package/es/components/actions/Menu/SubMenuTrigger.js +1 -1
- package/es/components/actions/Menu/SubmenuTriggerContext.js +1 -1
- package/es/components/actions/Menu/context.js +1 -1
- package/es/components/actions/Menu/index.js +1 -1
- package/es/components/actions/Menu/styled.js +1 -1
- package/es/components/actions/index.js +1 -1
- package/es/components/actions/use-action.js +1 -1
- package/es/components/actions/use-anchored-menu.js +1 -1
- package/es/components/actions/use-context-menu.js +1 -1
- 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/CopyPasteBlock/CopyPasteBlock.js +1 -1
- package/es/components/content/CopyPasteBlock/index.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/HotKeys/HotKeys.js +1 -1
- package/es/components/content/HotKeys/index.js +1 -1
- package/es/components/content/ItemBase/ItemBase.js +9 -3
- package/es/components/content/ItemBase/index.js +1 -1
- package/es/components/content/List/SectionHeading.js +1 -1
- package/es/components/content/List/index.js +1 -1
- package/es/components/content/Paragraph.js +1 -1
- package/es/components/content/Placeholder/Placeholder.js +46 -41
- package/es/components/content/PrismCode/PrismCode.js +1 -1
- package/es/components/content/PrismCode/prismSetup.js +1 -1
- package/es/components/content/PrismDiffCode/PrismDiffCode.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 +3 -3
- package/es/components/content/Title.js +3 -3
- package/es/components/fields/Checkbox/Checkbox.js +1 -1
- package/es/components/fields/Checkbox/CheckboxGroup.js +1 -1
- package/es/components/fields/Checkbox/context.js +1 -1
- package/es/components/fields/Checkbox/index.js +1 -1
- package/es/components/fields/ComboBox/ComboBox.js +3 -7
- package/es/components/fields/ComboBox/index.js +1 -1
- package/es/components/fields/DatePicker/DateInput.js +1 -1
- package/es/components/fields/DatePicker/DateInputBase.js +1 -1
- package/es/components/fields/DatePicker/DatePicker.js +1 -1
- package/es/components/fields/DatePicker/DatePickerButton.js +1 -1
- package/es/components/fields/DatePicker/DatePickerElement.js +1 -1
- package/es/components/fields/DatePicker/DatePickerInput.js +1 -1
- package/es/components/fields/DatePicker/DatePickerSegment.js +1 -1
- package/es/components/fields/DatePicker/DateRangePicker.js +1 -1
- package/es/components/fields/DatePicker/DateRangeSeparatedPicker.js +1 -1
- package/es/components/fields/DatePicker/TimeInput.js +1 -1
- package/es/components/fields/DatePicker/index.js +1 -1
- package/es/components/fields/DatePicker/intl.js +1 -1
- package/es/components/fields/DatePicker/parseDate.js +1 -1
- package/es/components/fields/DatePicker/props.js +1 -1
- package/es/components/fields/DatePicker/types.js +1 -1
- package/es/components/fields/DatePicker/utils.js +1 -1
- package/es/components/fields/FileInput/FileInput.js +1 -1
- package/es/components/fields/FilterListBox/FilterListBox.js +1 -1
- package/es/components/fields/FilterListBox/index.js +1 -1
- package/es/components/fields/FilterPicker/FilterPicker.js +3 -3
- package/es/components/fields/FilterPicker/index.js +1 -1
- package/es/components/fields/Input/Input.js +1 -1
- package/es/components/fields/Input/index.js +1 -1
- package/es/components/fields/ListBox/ListBox.js +1 -1
- package/es/components/fields/ListBox/index.js +1 -1
- package/es/components/fields/NumberInput/NumberInput.js +1 -1
- package/es/components/fields/NumberInput/StepButton.js +1 -1
- package/es/components/fields/PasswordInput/PasswordInput.js +1 -1
- package/es/components/fields/RadioGroup/Radio.js +2 -2
- package/es/components/fields/RadioGroup/RadioGroup.js +1 -1
- package/es/components/fields/RadioGroup/context.js +1 -1
- package/es/components/fields/RadioGroup/index.js +1 -1
- package/es/components/fields/SearchInput/SearchInput.js +1 -1
- package/es/components/fields/SearchInput/index.js +1 -1
- package/es/components/fields/Select/Select.js +1 -1
- package/es/components/fields/Select/index.js +1 -1
- package/es/components/fields/Slider/Gradation.js +1 -1
- package/es/components/fields/Slider/Header.js +1 -1
- package/es/components/fields/Slider/RangeSlider.js +1 -1
- package/es/components/fields/Slider/Slider.js +1 -1
- package/es/components/fields/Slider/SliderBase.js +1 -1
- package/es/components/fields/Slider/SliderInput.js +1 -1
- package/es/components/fields/Slider/SliderThumb.js +1 -1
- package/es/components/fields/Slider/SliderTrack.js +1 -1
- package/es/components/fields/Slider/elements.js +1 -1
- package/es/components/fields/Slider/index.js +1 -1
- package/es/components/fields/Slider/types.js +1 -1
- package/es/components/fields/Switch/Switch.js +1 -1
- package/es/components/fields/Switch/index.js +1 -1
- package/es/components/fields/TextArea/TextArea.js +1 -1
- package/es/components/fields/TextArea/index.js +1 -1
- package/es/components/fields/TextInput/TextInput.js +1 -1
- package/es/components/fields/TextInput/TextInputBase.js +3 -2
- package/es/components/fields/TextInput/index.js +1 -1
- package/es/components/fields/TextInputMapper/TextInputMapper.js +1 -1
- package/es/components/fields/TextInputMapper/index.js +1 -1
- package/es/components/fields/index.js +1 -1
- package/es/components/form/FieldWrapper/FieldWrapper.js +1 -1
- package/es/components/form/FieldWrapper/extract-field-wrapper-props.js +1 -1
- package/es/components/form/FieldWrapper/index.js +1 -1
- package/es/components/form/FieldWrapper/types.js +1 -1
- package/es/components/form/Form/Field.js +1 -1
- package/es/components/form/Form/Form.js +1 -1
- package/es/components/form/Form/ResetButton/ResetButton.js +1 -1
- package/es/components/form/Form/ResetButton/index.js +1 -1
- package/es/components/form/Form/SubmitButton/SubmitButton.js +1 -1
- package/es/components/form/Form/SubmitButton/index.js +1 -1
- package/es/components/form/Form/SubmitError.js +1 -1
- package/es/components/form/Form/index.js +1 -1
- package/es/components/form/Form/types.js +1 -1
- package/es/components/form/Form/use-field/index.js +1 -1
- package/es/components/form/Form/use-field/types.js +1 -1
- package/es/components/form/Form/use-field/use-field-props.js +1 -1
- package/es/components/form/Form/use-field/use-field.js +1 -1
- package/es/components/form/Form/use-form.js +1 -1
- package/es/components/form/Form/validation.js +1 -1
- package/es/components/form/Label.js +1 -1
- package/es/components/form/index.js +1 -1
- package/es/components/form/wrapper.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/Panel.js +1 -1
- package/es/components/layout/Prefix.js +1 -1
- package/es/components/layout/ResizablePanel.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 +59 -68
- package/es/components/organisms/StatsCard/StatsCard.js +1 -1
- package/es/components/other/Base64Upload/Base64Upload.js +1 -1
- package/es/components/other/Calendar/Calendar.js +1 -1
- package/es/components/other/Calendar/CalendarCell.js +1 -1
- package/es/components/other/Calendar/CalendarGrid.js +1 -1
- package/es/components/other/Calendar/RangeCalendar.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/Dialog/use-dialog-container.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/Modal/types.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/NotificationsContext.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/overlays/Tooltip/index.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/types.js +1 -1
- package/es/components/portal/usePortal.js +1 -1
- package/es/components/shared/InvalidIcon.js +1 -1
- package/es/components/shared/ValidIcon.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/item-themes.js +1 -1
- package/es/data/themes.js +1 -1
- package/es/icons/AdjustmentsHorizontalIcon.js +1 -1
- package/es/icons/AdjustmentsIcon.js +1 -1
- package/es/icons/AiIcon.js +1 -1
- package/es/icons/AreaChartIcon.js +1 -1
- package/es/icons/BackwardIcon.js +1 -1
- package/es/icons/BarChartIcon.js +1 -1
- package/es/icons/BellFilledIcon.js +1 -1
- package/es/icons/BellIcon.js +1 -1
- package/es/icons/BooleanIcon.js +1 -1
- package/es/icons/CalendarEditIcon.js +1 -1
- package/es/icons/CalendarIcon.js +1 -1
- package/es/icons/CaretDownIcon.js +1 -1
- package/es/icons/CaretUpIcon.js +1 -1
- package/es/icons/ChartAreaStackedIcon.js +1 -1
- package/es/icons/ChartAreaStackedPercentageIcon.js +1 -1
- package/es/icons/ChartBarGroupedHorizontalIcon.js +1 -1
- package/es/icons/ChartBarGroupedIcon.js +1 -1
- package/es/icons/ChartBarHorizontalIcon.js +1 -1
- package/es/icons/ChartBarLineIcon.js +1 -1
- package/es/icons/ChartBarStackedHorizontalIcon.js +1 -1
- package/es/icons/ChartBarStackedIcon.js +1 -1
- package/es/icons/ChartBarStackedPercentageHorizontalIcon.js +1 -1
- package/es/icons/ChartBarStackedPercentageIcon.js +1 -1
- package/es/icons/ChartBoxPlot2Icon.js +1 -1
- package/es/icons/ChartBoxPlotIcon.js +1 -1
- package/es/icons/ChartBubbleIcon.js +1 -1
- package/es/icons/ChartDonut2Icon.js +1 -1
- package/es/icons/ChartFunnelIcon.js +1 -1
- package/es/icons/ChartKPIIcon.js +1 -1
- package/es/icons/ChartPie2Icon.js +1 -1
- package/es/icons/ChartScatterIcon.js +1 -1
- package/es/icons/CheckCircleFilledIcon.js +1 -1
- package/es/icons/CheckCircleIcon.js +1 -1
- package/es/icons/CheckIcon.js +1 -1
- package/es/icons/CircleFilledIcon.js +1 -1
- package/es/icons/ClearIcon.js +1 -1
- package/es/icons/CloseCircleFilledIcon.js +1 -1
- package/es/icons/CloseCircleIcon.js +1 -1
- package/es/icons/CloseIcon.js +1 -1
- package/es/icons/CodeIcon.js +1 -1
- package/es/icons/CopyIcon.js +1 -1
- package/es/icons/CountIcon.js +1 -1
- package/es/icons/CubeIcon.js +1 -1
- package/es/icons/DangerIcon.js +1 -1
- package/es/icons/DashboardIcon.js +1 -1
- package/es/icons/DatabaseIcon.js +1 -1
- package/es/icons/DirectionIcon.js +1 -1
- package/es/icons/DonutIcon.js +1 -1
- package/es/icons/DownIcon.js +1 -1
- package/es/icons/EditIcon.js +1 -1
- package/es/icons/ExclamationCircleFilledIcon.js +1 -1
- package/es/icons/ExclamationCircleIcon.js +1 -1
- package/es/icons/ExclamationIcon.js +1 -1
- package/es/icons/EyeIcon.js +1 -1
- package/es/icons/EyeInvisibleIcon.js +1 -1
- package/es/icons/FilterIcon.js +1 -1
- package/es/icons/FolderFilledIcon.js +1 -1
- package/es/icons/FolderIcon.js +1 -1
- package/es/icons/FolderOpenFilledIcon.js +1 -1
- package/es/icons/FolderOpenIcon.js +1 -1
- package/es/icons/ForwardIcon.js +1 -1
- package/es/icons/HierarchyIcon.js +1 -1
- package/es/icons/Icon.js +1 -1
- package/es/icons/InfoCircleIcon.js +1 -1
- package/es/icons/InfoIcon.js +1 -1
- package/es/icons/KeyIcon.js +1 -1
- package/es/icons/LeftIcon.js +1 -1
- package/es/icons/LineChartIcon.js +1 -1
- package/es/icons/LoadingIcon.js +1 -1
- package/es/icons/LockFilledIcon.js +1 -1
- package/es/icons/LockIcon.js +1 -1
- package/es/icons/MoreIcon.js +1 -1
- package/es/icons/NotAllowedIcon.js +1 -1
- package/es/icons/NumberIcon.js +1 -1
- package/es/icons/PauseCircleFilledIcon.js +1 -1
- package/es/icons/PauseCircleIcon.js +1 -1
- package/es/icons/PauseIcon.js +1 -1
- package/es/icons/PieChartIcon.js +1 -1
- package/es/icons/PlayCircleIcon.js +1 -1
- package/es/icons/PlayIcon.js +1 -1
- package/es/icons/PlusIcon.js +1 -1
- package/es/icons/ReloadIcon.js +1 -1
- package/es/icons/ReportIcon.js +1 -1
- package/es/icons/ReturnIcon.js +1 -1
- package/es/icons/RightIcon.js +1 -1
- package/es/icons/SchemeIcon.js +1 -1
- package/es/icons/SearchIcon.js +1 -1
- package/es/icons/SettingsIcon.js +1 -1
- package/es/icons/ShieldFilledIcon.js +1 -1
- package/es/icons/ShieldIcon.js +1 -1
- package/es/icons/SlashIcon.js +1 -1
- package/es/icons/SparklesIcon.js +1 -1
- package/es/icons/SqlIcon.js +1 -1
- package/es/icons/StatsIcon.js +1 -1
- package/es/icons/StopIcon.js +1 -1
- package/es/icons/StringIcon.js +1 -1
- package/es/icons/SwitchIcon.js +1 -1
- package/es/icons/TableIcon.js +1 -1
- package/es/icons/ThumbsDownIcon.js +1 -1
- package/es/icons/ThumbsUpIcon.js +1 -1
- package/es/icons/ThunderboltCrossedIcon.js +1 -1
- package/es/icons/ThunderboltFilledIcon.js +1 -1
- package/es/icons/ThunderboltIcon.js +1 -1
- package/es/icons/TimeIcon.js +1 -1
- package/es/icons/UnlockIcon.js +1 -1
- package/es/icons/UpIcon.js +1 -1
- package/es/icons/UserGroupIcon.js +1 -1
- package/es/icons/UserIcon.js +1 -1
- package/es/icons/UserLockIcon.js +1 -1
- package/es/icons/ViewIcon.js +1 -1
- package/es/icons/WarningFilledIcon.js +1 -1
- package/es/icons/WarningIcon.js +1 -1
- package/es/icons/add-new-icon.js +1 -1
- package/es/icons/index.js +1 -1
- package/es/icons/wrap-icon.js +1 -1
- package/es/index.js +1 -1
- package/es/provider.js +1 -1
- package/es/providers/TrackingProvider.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/Form.legacy-stories.js +1 -1
- package/es/stories/FormFieldArgs.js +1 -1
- package/es/stories/Layout.stories.js +1 -1
- package/es/stories/Tasty.stories.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 -2
- package/es/tasty/debug.js +703 -0
- package/es/tasty/index.js +3 -1
- package/es/tasty/injector/index.js +187 -0
- package/es/tasty/injector/injector.js +678 -0
- package/es/tasty/injector/sheet-manager.js +912 -0
- package/es/tasty/injector/types.js +10 -0
- package/es/tasty/parser/classify.js +1 -1
- package/es/tasty/parser/const.js +1 -1
- package/es/tasty/parser/lru.js +38 -2
- package/es/tasty/parser/parser.js +1 -1
- package/es/tasty/parser/tokenizer.js +1 -1
- package/es/tasty/parser/types.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 +8 -12
- package/es/tasty/styles/createStyle.js +19 -4
- package/es/tasty/styles/dimension.js +1 -1
- package/es/tasty/styles/display.js +1 -1
- package/es/tasty/styles/fade.js +1 -1
- package/es/tasty/styles/fill.js +6 -8
- 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/inset.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/place.js +1 -1
- package/es/tasty/styles/predefined.js +1 -3
- package/es/tasty/styles/preset.js +1 -1
- package/es/tasty/styles/radius.js +1 -1
- package/es/tasty/styles/reset.js +40 -44
- package/es/tasty/styles/scrollbar.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 +2 -1
- package/es/tasty/styles/types.js +1 -1
- package/es/tasty/styles/width.js +1 -1
- package/es/tasty/tasty.js +120 -35
- package/es/tasty/types.js +1 -1
- package/es/tasty/utils/cache-wrapper.js +1 -1
- package/es/tasty/utils/case-converter.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/getDisplayName.js +1 -1
- package/es/tasty/utils/getModCombinations.js +26 -30
- package/es/tasty/utils/isDevEnv.js +36 -0
- package/es/tasty/utils/mergeStyles.js +1 -1
- package/es/tasty/utils/modAttrs.js +1 -1
- package/es/tasty/utils/renderStyles.js +710 -58
- package/es/tasty/utils/responsive.js +1 -7
- package/es/tasty/utils/string.js +1 -1
- package/es/tasty/utils/styles.js +100 -235
- package/es/tasty/utils/warnings.js +1 -1
- package/es/tokens.js +1 -12
- 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/forwardRefWithGenerics.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/sharedStore.js +1 -1
- package/es/utils/react/useCombinedRefs.js +1 -1
- package/es/utils/react/useControlledFocusVisible.js +1 -1
- package/es/utils/react/useEventBus.js +1 -1
- package/es/utils/react/useId.js +1 -1
- package/es/utils/react/useIsDarwin.js +1 -1
- package/es/utils/react/useKeySymbols.js +1 -1
- package/es/utils/react/useLayoutEffect.js +1 -1
- package/es/utils/react/useQaProps.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/es/version.js +2 -2
- package/package.json +1 -1
- package/types/components/HiddenInput.d.ts +1 -3
- package/types/components/actions/Button/Button.d.ts +1 -0
- package/types/components/actions/Menu/styled.d.ts +762 -765
- package/types/components/actions/use-action.d.ts +1 -1
- package/types/components/content/List/SectionHeading.d.ts +254 -255
- package/types/components/fields/DatePicker/DatePickerElement.d.ts +254 -255
- package/types/tasty/debug.d.ts +163 -0
- package/types/tasty/index.d.ts +2 -0
- package/types/tasty/injector/index.d.ts +87 -0
- package/types/tasty/injector/injector.d.ts +111 -0
- package/types/tasty/injector/sheet-manager.d.ts +98 -0
- package/types/tasty/injector/types.d.ts +106 -0
- package/types/tasty/parser/lru.d.ts +5 -1
- package/types/tasty/styles/color.d.ts +3 -1
- package/types/tasty/styles/reset.d.ts +1 -2
- package/types/tasty/types.d.ts +0 -2
- package/types/tasty/utils/getModCombinations.d.ts +9 -1
- package/types/tasty/utils/isDevEnv.d.ts +6 -0
- package/types/tasty/utils/renderStyles.d.ts +30 -7
- package/types/tasty/utils/responsive.d.ts +0 -1
- package/types/tasty/utils/styles.d.ts +7 -90
- package/types/tokens.d.ts +0 -11
@@ -1,16 +1,10 @@
|
|
1
1
|
/**
|
2
2
|
* @license MIT
|
3
3
|
* author: Cube Dev Team
|
4
|
-
* @cube-dev/ui-kit v0.
|
4
|
+
* @cube-dev/ui-kit v0.76.0
|
5
5
|
* Released under the MIT license.
|
6
6
|
*/
|
7
7
|
|
8
|
-
export function mediaWrapper(cssRules, points) {
|
9
|
-
return points
|
10
|
-
.filter((point) => point.mediaQuery)
|
11
|
-
.map((point, i) => `@media ${point.mediaQuery} {${cssRules[i]}}`)
|
12
|
-
.join('\n');
|
13
|
-
}
|
14
8
|
const zonesCache = {};
|
15
9
|
export function pointsToZones(points) {
|
16
10
|
const cacheKey = points.join('|');
|
package/es/tasty/utils/string.js
CHANGED
package/es/tasty/utils/styles.js
CHANGED
@@ -1,15 +1,31 @@
|
|
1
1
|
/**
|
2
2
|
* @license MIT
|
3
3
|
* author: Cube Dev Team
|
4
|
-
* @cube-dev/ui-kit v0.
|
4
|
+
* @cube-dev/ui-kit v0.76.0
|
5
5
|
* Released under the MIT license.
|
6
6
|
*/
|
7
7
|
|
8
8
|
import { StyleParser } from '../parser/parser';
|
9
9
|
import { cacheWrapper } from './cache-wrapper';
|
10
10
|
import { camelToKebab } from './case-converter';
|
11
|
-
import { getModCombinations } from './getModCombinations';
|
12
11
|
const devMode = process.env.NODE_ENV !== 'production';
|
12
|
+
// Precompiled regex patterns for parseColor optimization
|
13
|
+
const COLOR_VAR_PATTERN = /var\(--([a-z0-9-]+)-color(?:-rgb)?\)/;
|
14
|
+
const COLOR_VAR_RGB_PATTERN = /var\(--([a-z0-9-]+)-color-rgb\)/;
|
15
|
+
const RGB_ALPHA_PATTERN = /\/\s*([0-9.]+)\)/;
|
16
|
+
const SIMPLE_COLOR_PATTERNS = [
|
17
|
+
/^#[0-9a-fA-F]{3,8}$/, // Hex colors: #fff, #ffffff, #ffff, #ffffffff
|
18
|
+
/^rgb\(/, // RGB/RGBA functions
|
19
|
+
/^hsl\(/, // HSL/HSLA functions
|
20
|
+
/^lch\(/, // LCH color functions
|
21
|
+
/^oklch\(/, // OKLCH color functions
|
22
|
+
/^var\(--[a-z0-9-]+-color/, // CSS custom properties for colors
|
23
|
+
/^currentColor$/, // CSS currentColor keyword
|
24
|
+
/^transparent$/, // CSS transparent keyword
|
25
|
+
];
|
26
|
+
// Rate limiting for dev warnings to avoid spam
|
27
|
+
let colorWarningCount = 0;
|
28
|
+
const MAX_COLOR_WARNINGS = 10;
|
13
29
|
const IS_DVH_SUPPORTED = typeof CSS !== 'undefined' && typeof CSS?.supports === 'function'
|
14
30
|
? CSS.supports('height: 100dvh')
|
15
31
|
: false;
|
@@ -38,16 +54,8 @@ export const CUSTOM_UNITS = {
|
|
38
54
|
},
|
39
55
|
};
|
40
56
|
export const DIRECTIONS = ['top', 'right', 'bottom', 'left'];
|
41
|
-
export function createRule(prop, value, selector) {
|
42
|
-
if (value == null)
|
43
|
-
return '';
|
44
|
-
if (selector) {
|
45
|
-
return `${selector} { ${prop}: ${value}; }\n`;
|
46
|
-
}
|
47
|
-
return `${prop}: ${value};\n`;
|
48
|
-
}
|
49
57
|
const MOD_NAME_CACHE = new Map();
|
50
|
-
function getModSelector(modName) {
|
58
|
+
export function getModSelector(modName) {
|
51
59
|
if (!MOD_NAME_CACHE.has(modName)) {
|
52
60
|
MOD_NAME_CACHE.set(modName, modName.match(/^[a-z]/) ? `[data-is-${camelToKebab(modName)}]` : modName);
|
53
61
|
}
|
@@ -84,52 +92,56 @@ export function parseStyle(value) {
|
|
84
92
|
}
|
85
93
|
return __tastyParser.process(str);
|
86
94
|
}
|
87
|
-
// Utility: flatten groups into merged token lists (closest to legacy shape).
|
88
|
-
export function flattenStyleDetails(processed) {
|
89
|
-
const merged = {
|
90
|
-
values: [],
|
91
|
-
mods: [],
|
92
|
-
colors: [],
|
93
|
-
all: [],
|
94
|
-
value: processed.output,
|
95
|
-
color: undefined,
|
96
|
-
};
|
97
|
-
processed.groups.forEach((g, idx) => {
|
98
|
-
merged.values.push(...g.values);
|
99
|
-
merged.mods.push(...g.mods);
|
100
|
-
merged.colors.push(...g.colors);
|
101
|
-
merged.all.push(...g.all);
|
102
|
-
if (idx < processed.groups.length - 1) {
|
103
|
-
merged.all.push(',');
|
104
|
-
}
|
105
|
-
});
|
106
|
-
merged.color = merged.colors[0];
|
107
|
-
return merged;
|
108
|
-
}
|
109
95
|
/**
|
110
96
|
* Parse color. Find it value, name and opacity.
|
97
|
+
* Optimized to avoid heavy parseStyle calls for simple color patterns.
|
111
98
|
*/
|
112
99
|
export function parseColor(val, ignoreError = false) {
|
113
|
-
|
100
|
+
// Early return for non-strings or empty values
|
101
|
+
if (typeof val !== 'string') {
|
102
|
+
val = String(val ?? '');
|
103
|
+
}
|
104
|
+
val = val.trim();
|
114
105
|
if (!val)
|
115
106
|
return {};
|
116
|
-
//
|
117
|
-
const
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
107
|
+
// Fast path: Check if it's a simple color pattern that doesn't need full parsing
|
108
|
+
const isSimpleColor = SIMPLE_COLOR_PATTERNS.some((pattern) => pattern.test(val));
|
109
|
+
let firstColor;
|
110
|
+
let shouldUseParser = false;
|
111
|
+
if (isSimpleColor) {
|
112
|
+
// For simple colors, use the value directly without parsing
|
113
|
+
firstColor = val;
|
114
|
+
}
|
115
|
+
else {
|
116
|
+
// Complex value - might contain multiple tokens, fallback to full parser
|
117
|
+
shouldUseParser = true;
|
118
|
+
const processed = parseStyle(val);
|
119
|
+
const extractedColor = processed.groups.find((g) => g.colors.length)
|
120
|
+
?.colors[0];
|
121
|
+
if (!extractedColor) {
|
122
|
+
// Rate-limited warning to avoid spam
|
123
|
+
if (!ignoreError && devMode && colorWarningCount < MAX_COLOR_WARNINGS) {
|
124
|
+
console.warn('CubeUIKit: unable to parse color:', val);
|
125
|
+
colorWarningCount++;
|
126
|
+
if (colorWarningCount === MAX_COLOR_WARNINGS) {
|
127
|
+
console.warn('CubeUIKit: color parsing warnings will be suppressed from now on');
|
128
|
+
}
|
129
|
+
}
|
130
|
+
return {};
|
122
131
|
}
|
123
|
-
|
132
|
+
firstColor = extractedColor;
|
124
133
|
}
|
125
|
-
// Extract color name (if present) from variable pattern
|
126
|
-
let nameMatch = firstColor.match(
|
134
|
+
// Extract color name (if present) from variable pattern using precompiled regex
|
135
|
+
let nameMatch = firstColor.match(COLOR_VAR_PATTERN);
|
127
136
|
if (!nameMatch) {
|
128
|
-
nameMatch = firstColor.match(
|
137
|
+
nameMatch = firstColor.match(COLOR_VAR_RGB_PATTERN);
|
129
138
|
}
|
130
139
|
let opacity;
|
131
|
-
if (firstColor.startsWith('rgb')
|
132
|
-
|
140
|
+
if (firstColor.startsWith('rgb') ||
|
141
|
+
firstColor.startsWith('hsl') ||
|
142
|
+
firstColor.startsWith('lch') ||
|
143
|
+
firstColor.startsWith('oklch')) {
|
144
|
+
const alphaMatch = firstColor.match(RGB_ALPHA_PATTERN);
|
133
145
|
if (alphaMatch) {
|
134
146
|
const v = parseFloat(alphaMatch[1]);
|
135
147
|
if (!isNaN(v))
|
@@ -142,18 +154,6 @@ export function parseColor(val, ignoreError = false) {
|
|
142
154
|
opacity,
|
143
155
|
};
|
144
156
|
}
|
145
|
-
export function rgbColorProp(colorName, opacity, fallbackColorName, fallbackValue) {
|
146
|
-
const fallbackValuePart = fallbackValue ? `, ${fallbackValue}` : '';
|
147
|
-
return `rgb(var(--${colorName}-color-rgb${fallbackColorName
|
148
|
-
? `, var(--${fallbackColorName}-color-rgb, ${fallbackValuePart})`
|
149
|
-
: fallbackValuePart}) / ${opacity})`;
|
150
|
-
}
|
151
|
-
export function colorProp(colorName, fallbackColorName, fallbackValue) {
|
152
|
-
const fallbackValuePart = fallbackValue ? `, ${fallbackValue}` : '';
|
153
|
-
return `var(--${colorName}-color${fallbackColorName
|
154
|
-
? `, var(--${fallbackColorName}${fallbackValuePart})`
|
155
|
-
: fallbackValuePart})`;
|
156
|
-
}
|
157
157
|
export function strToRgb(color, ignoreAlpha = false) {
|
158
158
|
if (!color)
|
159
159
|
return undefined;
|
@@ -183,27 +183,9 @@ export function hexToRgb(hex) {
|
|
183
183
|
}
|
184
184
|
return null;
|
185
185
|
}
|
186
|
-
export function transferMods(mods, from, to) {
|
187
|
-
mods.forEach((mod) => {
|
188
|
-
if (from.includes(mod)) {
|
189
|
-
to.push(mod);
|
190
|
-
from.splice(from.indexOf(mod), 1);
|
191
|
-
}
|
192
|
-
});
|
193
|
-
}
|
194
186
|
export function filterMods(mods, allowedMods) {
|
195
187
|
return mods.filter((mod) => allowedMods.includes(mod));
|
196
188
|
}
|
197
|
-
export function customUnit(value, unit) {
|
198
|
-
const converter = CUSTOM_UNITS[unit];
|
199
|
-
if (typeof converter === 'function') {
|
200
|
-
return converter(value);
|
201
|
-
}
|
202
|
-
if (value === '1' || value === 1) {
|
203
|
-
return converter;
|
204
|
-
}
|
205
|
-
return `(${value} * ${converter})`;
|
206
|
-
}
|
207
189
|
export function extendStyles(defaultStyles, newStyles) {
|
208
190
|
let styles = {};
|
209
191
|
if (!defaultStyles) {
|
@@ -248,161 +230,6 @@ export function extractStyles(props, styleList = [], defaultStyles, propMap, ign
|
|
248
230
|
}, {});
|
249
231
|
return styles;
|
250
232
|
}
|
251
|
-
/**
|
252
|
-
* Render CSSMap to Styled Components CSS
|
253
|
-
* @param styles
|
254
|
-
* @param [selector]
|
255
|
-
*/
|
256
|
-
export function renderStylesToSC(styles, selector = '') {
|
257
|
-
if (!styles)
|
258
|
-
return '';
|
259
|
-
if (Array.isArray(styles)) {
|
260
|
-
return styles.reduce((css, stls) => {
|
261
|
-
return css + renderStylesToSC(stls, selector);
|
262
|
-
}, '');
|
263
|
-
}
|
264
|
-
const { $, css, ...styleProps } = styles;
|
265
|
-
let renderedStyles = Object.keys(styleProps).reduce((styleList, styleName) => {
|
266
|
-
const value = styleProps[styleName];
|
267
|
-
if (Array.isArray(value)) {
|
268
|
-
return (styleList +
|
269
|
-
value.reduce((css, val) => {
|
270
|
-
if (val) {
|
271
|
-
return css + `${styleName}:${val};\n`;
|
272
|
-
}
|
273
|
-
return css;
|
274
|
-
}, ''));
|
275
|
-
}
|
276
|
-
if (value) {
|
277
|
-
return `${styleList}${styleName}:${value};\n`;
|
278
|
-
}
|
279
|
-
return styleList;
|
280
|
-
}, '');
|
281
|
-
if (css) {
|
282
|
-
renderedStyles = css + '\n' + renderedStyles;
|
283
|
-
}
|
284
|
-
if (!renderedStyles) {
|
285
|
-
return '';
|
286
|
-
}
|
287
|
-
if (Array.isArray($)) {
|
288
|
-
return `${selector ? `${selector}{\n` : ''}${$.reduce((rend, suffix) => {
|
289
|
-
return (rend +
|
290
|
-
`${suffix ? `&${suffix}{\n` : ''}${renderedStyles}${suffix ? '}\n' : ''}`);
|
291
|
-
}, '')}${selector ? '}\n' : ''}`;
|
292
|
-
}
|
293
|
-
return `${selector ? `${selector}{\n` : ''}${$ ? `&${$}{\n` : ''}${renderedStyles}${$ ? '}\n' : ''}${selector ? '}\n' : ''}`;
|
294
|
-
}
|
295
|
-
/**
|
296
|
-
* Compile states to finite CSS with selectors.
|
297
|
-
* State values should contain a string value with CSS style list.
|
298
|
-
* @param {string} selector
|
299
|
-
* @param {StyleStateList|StyleStateMapList} states
|
300
|
-
* @param {string} suffix
|
301
|
-
*/
|
302
|
-
export function applyStates(selector, states, suffix = '') {
|
303
|
-
return states.reduce((css, state) => {
|
304
|
-
if (!state.value)
|
305
|
-
return css;
|
306
|
-
const modifiers = `${(state.mods || []).map(getModSelector).join('')}${(state.notMods || [])
|
307
|
-
.map((mod) => {
|
308
|
-
let selector = getModSelector(mod);
|
309
|
-
if (selector.startsWith(':not(')) {
|
310
|
-
return selector.slice(5, -1);
|
311
|
-
}
|
312
|
-
else {
|
313
|
-
return `:not(${selector})`;
|
314
|
-
}
|
315
|
-
})
|
316
|
-
.join('')}`;
|
317
|
-
// TODO: replace `replace()` a REAL hotfix
|
318
|
-
return `${css}${selector}${modifiers}${suffix}{\n${state.value.replace(/^&&/, '&')}}\n`;
|
319
|
-
}, '');
|
320
|
-
}
|
321
|
-
export function styleHandlerCacheWrapper(styleHandler, limit = 1000) {
|
322
|
-
const wrappedStyleHandler = cacheWrapper((styleMap) => {
|
323
|
-
return renderStylesToSC(styleHandler(styleMap));
|
324
|
-
}, limit);
|
325
|
-
const wrappedMapHandler = cacheWrapper((styleMap, suffix = '') => {
|
326
|
-
if (styleMap == null || styleMap === false)
|
327
|
-
return null;
|
328
|
-
const stateMapList = styleMapToStyleMapStateList(styleMap);
|
329
|
-
replaceStateValues(stateMapList, wrappedStyleHandler);
|
330
|
-
return applyStates('&&', stateMapList, suffix);
|
331
|
-
}, limit);
|
332
|
-
return Object.assign(wrappedMapHandler, {
|
333
|
-
__lookupStyles: styleHandler.__lookupStyles,
|
334
|
-
});
|
335
|
-
}
|
336
|
-
/**
|
337
|
-
* Replace state values with new ones.
|
338
|
-
* For example, if you want to replace initial values with finite CSS code.
|
339
|
-
*/
|
340
|
-
export function replaceStateValues(states, replaceFn) {
|
341
|
-
const cache = new Map();
|
342
|
-
states.forEach((state) => {
|
343
|
-
if (!cache.get(state.value)) {
|
344
|
-
cache.set(state.value, replaceFn(state.value));
|
345
|
-
}
|
346
|
-
state.value = cache.get(state.value);
|
347
|
-
});
|
348
|
-
return states;
|
349
|
-
}
|
350
|
-
/**
|
351
|
-
* Get all presented modes from the style state list.
|
352
|
-
*/
|
353
|
-
export function getModesFromStyleStateList(stateList) {
|
354
|
-
return stateList.reduce((list, state) => {
|
355
|
-
state.mods.forEach((mod) => {
|
356
|
-
if (!list.includes(mod)) {
|
357
|
-
list.push(mod);
|
358
|
-
}
|
359
|
-
});
|
360
|
-
return list;
|
361
|
-
}, []);
|
362
|
-
}
|
363
|
-
/**
|
364
|
-
* Get all presented modes from the style state map list.
|
365
|
-
*/
|
366
|
-
export function getModesFromStyleStateListMap(stateListMap) {
|
367
|
-
return Object.keys(stateListMap).reduce((list, style) => {
|
368
|
-
const stateList = stateListMap[style];
|
369
|
-
getModesFromStyleStateList(stateList).forEach((mod) => {
|
370
|
-
if (!list.includes(mod)) {
|
371
|
-
list.push(mod);
|
372
|
-
}
|
373
|
-
});
|
374
|
-
return list;
|
375
|
-
}, []);
|
376
|
-
}
|
377
|
-
/**
|
378
|
-
* Convert the style map to the normalized style state list.
|
379
|
-
*/
|
380
|
-
export function styleMapToStyleMapStateList(styleMap, filterKeys) {
|
381
|
-
const keys = filterKeys || Object.keys(styleMap);
|
382
|
-
if (!keys.length)
|
383
|
-
return [];
|
384
|
-
const stateDataListMap = {};
|
385
|
-
let allModsSet = new Set();
|
386
|
-
keys.forEach((style) => {
|
387
|
-
stateDataListMap[style] = styleStateMapToStyleStateDataList(styleMap[style]);
|
388
|
-
stateDataListMap[style].mods.forEach(allModsSet.add, allModsSet);
|
389
|
-
});
|
390
|
-
const allModsArr = Array.from(allModsSet);
|
391
|
-
const styleStateList = [];
|
392
|
-
getModCombinations(allModsArr, true).forEach((combination) => {
|
393
|
-
styleStateList.push({
|
394
|
-
mods: combination,
|
395
|
-
notMods: allModsArr.filter((mod) => !combination.includes(mod)),
|
396
|
-
value: keys.reduce((map, key) => {
|
397
|
-
map[key] = stateDataListMap[key].states.find((state) => {
|
398
|
-
return computeState(state.model, (mod) => combination.includes(mod));
|
399
|
-
}).value;
|
400
|
-
return map;
|
401
|
-
}, {}),
|
402
|
-
});
|
403
|
-
});
|
404
|
-
return styleStateList;
|
405
|
-
}
|
406
233
|
const STATES_REGEXP = /([&|!^])|([()])|([a-z][a-z0-9-]+)|(:[a-z][a-z0-9-]+\([^)]+\)|:[a-z][a-z0-9-]+)|(\.[a-z][a-z0-9-]+)|(\[[^\]]+])/gi;
|
407
234
|
export const STATE_OPERATORS = {
|
408
235
|
NOT: '!',
|
@@ -555,10 +382,10 @@ export function styleStateMapToStyleStateDataList(styleStateMap) {
|
|
555
382
|
return { states: stateDataList, mods: allMods };
|
556
383
|
}
|
557
384
|
export const COMPUTE_FUNC_MAP = {
|
558
|
-
'!': (a) => !a,
|
559
|
-
'^': (a, b) => a
|
560
|
-
'|': (a, b) => a
|
561
|
-
'&': (a, b) => a
|
385
|
+
'!': (a) => !a, // NOT - boolean negation
|
386
|
+
'^': (a, b) => (a && !b) || (!a && b), // XOR - true when exactly one is true
|
387
|
+
'|': (a, b) => a || b, // OR - logical OR
|
388
|
+
'&': (a, b) => a && b, // AND - logical AND
|
562
389
|
};
|
563
390
|
/**
|
564
391
|
* Compute a result based on a model and incoming map.
|
@@ -604,5 +431,43 @@ export function computeState(computeModel, valueMap) {
|
|
604
431
|
}
|
605
432
|
return !!func(a, b);
|
606
433
|
}
|
434
|
+
const _innerCache = new WeakMap();
|
435
|
+
export function stringifyStyles(styles) {
|
436
|
+
if (styles == null || typeof styles !== 'object')
|
437
|
+
return '';
|
438
|
+
const keys = Object.keys(styles).sort();
|
439
|
+
const parts = [];
|
440
|
+
for (let i = 0; i < keys.length; i++) {
|
441
|
+
const k = keys[i], v = styles[k];
|
442
|
+
if (v === undefined || typeof v === 'function' || typeof v === 'symbol')
|
443
|
+
continue;
|
444
|
+
const c0 = k.charCodeAt(0);
|
445
|
+
const needsInnerSort = ((c0 >= 65 && c0 <= 90) || c0 === 38) &&
|
446
|
+
v &&
|
447
|
+
typeof v === 'object' &&
|
448
|
+
!Array.isArray(v);
|
449
|
+
let sv;
|
450
|
+
if (needsInnerSort) {
|
451
|
+
sv = _innerCache.get(v);
|
452
|
+
if (sv === undefined) {
|
453
|
+
const innerKeys = Object.keys(v).sort();
|
454
|
+
const innerParts = [];
|
455
|
+
for (let j = 0; j < innerKeys.length; j++) {
|
456
|
+
const ik = innerKeys[j];
|
457
|
+
const ivs = JSON.stringify(v[ik]);
|
458
|
+
if (ivs !== undefined)
|
459
|
+
innerParts.push(JSON.stringify(ik) + ':' + ivs);
|
460
|
+
}
|
461
|
+
sv = '{' + innerParts.join(',') + '}';
|
462
|
+
_innerCache.set(v, sv);
|
463
|
+
}
|
464
|
+
}
|
465
|
+
else {
|
466
|
+
sv = JSON.stringify(v);
|
467
|
+
}
|
468
|
+
parts.push(JSON.stringify(k) + ':' + sv);
|
469
|
+
}
|
470
|
+
return '{' + parts.join(',') + '}';
|
471
|
+
}
|
607
472
|
|
608
473
|
|
package/es/tokens.js
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
/**
|
2
2
|
* @license MIT
|
3
3
|
* author: Cube Dev Team
|
4
|
-
* @cube-dev/ui-kit v0.
|
4
|
+
* @cube-dev/ui-kit v0.76.0
|
5
5
|
* Released under the MIT license.
|
6
6
|
*/
|
7
7
|
|
@@ -79,23 +79,12 @@ const TOKENS = {
|
|
79
79
|
'draft-color': color('dark', 0.2),
|
80
80
|
'minor-color': color('dark', 0.65),
|
81
81
|
'danger-bg-hover-color': color('danger', 0.1),
|
82
|
-
'primary-1': color('purple', 0.9),
|
83
|
-
'primary-2': color('purple', 0.8),
|
84
|
-
'primary-3': color('purple', 0.7),
|
85
|
-
'primary-4': color('purple', 0.6),
|
86
|
-
'primary-5': color('purple', 0.5),
|
87
|
-
'primary-6': color('purple', 0.4),
|
88
|
-
'primary-7': color('purple', 0.3),
|
89
|
-
'primary-8': color('purple', 0.2),
|
90
|
-
'primary-9': color('purple', 0.1),
|
91
|
-
'primary-10': color('purple', 0),
|
92
82
|
'dark-75-color': color('dark', 0.75),
|
93
83
|
'primary-color': color('purple'),
|
94
84
|
'pink-8-color': color('pink', 0.2),
|
95
85
|
'pink-9-color': color('pink', 0.1),
|
96
86
|
'disabled-color': color('dark-01', 0.25),
|
97
87
|
'disabled-text-color': color('dark-01', 0.25),
|
98
|
-
'disabled-bg': color('dark-05', 0.2),
|
99
88
|
'disabled-bg-color': color('dark-05', 0.2),
|
100
89
|
'max-content-width': '1440px',
|
101
90
|
'topbar-height': '48px',
|
package/es/type-checks.js
CHANGED
package/es/utils/ResizeSensor.js
CHANGED
package/es/utils/modules.js
CHANGED
package/es/utils/promise.js
CHANGED
package/es/utils/random.js
CHANGED
package/es/utils/range.js
CHANGED
package/es/utils/react/Slots.js
CHANGED
package/es/utils/react/chain.js
CHANGED
package/es/utils/react/index.js
CHANGED