@cube-dev/ui-kit 0.0.0-canary-20c9726 → 0.0.0-canary-5fadbde
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/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/CollectionItem.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/Action.js +1 -1
- package/es/components/actions/Button/Button.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/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/ItemAction/ItemAction.js +1 -1
- package/es/components/actions/ItemAction/index.js +1 -1
- package/es/components/actions/ItemActionContext.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/Link/Link.js +1 -1
- package/es/components/actions/Menu/Menu.js +1 -1
- package/es/components/actions/Menu/MenuItem.js +1 -1
- 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/Disclosure/Disclosure.js +1 -1
- package/es/components/content/Disclosure/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/Item/Item.js +1 -1
- package/es/components/content/Item/index.js +1 -1
- package/es/components/content/ItemBadge/ItemBadge.js +1 -1
- package/es/components/content/ItemBadge/index.js +1 -1
- package/es/components/content/Layout/GridLayout.js +1 -1
- package/es/components/content/Layout/Layout.js +1 -1
- package/es/components/content/Layout/LayoutBlock.js +1 -1
- package/es/components/content/Layout/LayoutCenter.js +1 -1
- package/es/components/content/Layout/LayoutContainer.js +1 -1
- package/es/components/content/Layout/LayoutContent.js +1 -1
- package/es/components/content/Layout/LayoutContext.js +1 -1
- package/es/components/content/Layout/LayoutFlex.js +1 -1
- package/es/components/content/Layout/LayoutFooter.js +1 -1
- package/es/components/content/Layout/LayoutGrid.js +1 -1
- package/es/components/content/Layout/LayoutHeader.js +1 -1
- package/es/components/content/Layout/LayoutPane.js +1 -1
- package/es/components/content/Layout/LayoutPanel.js +1 -1
- package/es/components/content/Layout/LayoutPanelHeader.js +1 -1
- package/es/components/content/Layout/LayoutToolbar.js +1 -1
- package/es/components/content/Layout/hooks/useTinyScrollbar.js +1 -1
- package/es/components/content/Layout/index.js +1 -1
- package/es/components/content/Layout/utils.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 +1 -1
- 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 +1 -1
- package/es/components/content/TextItem/TextItem.js +1 -1
- package/es/components/content/TextItem/index.js +1 -1
- package/es/components/content/Title.js +1 -1
- package/es/components/content/highlightText.js +1 -1
- package/es/components/content/use-auto-tooltip.js +1 -1
- 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 +1 -1
- 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 +1 -1
- 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/Picker/Picker.js +1 -1
- package/es/components/fields/Picker/index.js +1 -1
- package/es/components/fields/RadioGroup/Radio.js +1 -1
- 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 +1 -1
- 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/helpers/DisplayTransition/DisplayTransition.js +1 -1
- package/es/components/helpers/DisplayTransition/index.js +1 -1
- package/es/components/helpers/IconSwitch/IconSwitch.js +1 -1
- package/es/components/helpers/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/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/organisms/FileTabs/FileTabs.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/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/NotificationsDialogContext.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/ChartHeatmapIcon.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/ColumnTotalIcon.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/CubePauseIcon.js +1 -1
- package/es/icons/CubePlayIcon.js +1 -1
- package/es/icons/CurrencyDollarIcon.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/DecimalDecreaseIcon.js +1 -1
- package/es/icons/DecimalIncreaseIcon.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/HierarchyOpenIcon.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/Number123Icon.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/PercentageIcon.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/ProgressBarIcon.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/RowTotalsIcon.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/SubtotalsIcon.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/TrashIcon.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/providers/navigation.types.js +1 -1
- package/es/providers/navigationAdapter.default.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/SimpleLayout.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 -1
- package/es/tasty/chunks/cacheKey.js +1 -1
- package/es/tasty/chunks/definitions.js +1 -1
- package/es/tasty/chunks/index.js +1 -1
- package/es/tasty/chunks/renderChunk.js +1 -1
- package/es/tasty/config.js +1 -1
- package/es/tasty/debug.js +1 -1
- package/es/tasty/hooks/index.js +1 -1
- package/es/tasty/hooks/useGlobalStyles.js +1 -1
- package/es/tasty/hooks/useRawCSS.js +1 -1
- package/es/tasty/hooks/useStyles.js +1 -1
- package/es/tasty/index.js +1 -1
- package/es/tasty/injector/index.js +1 -1
- package/es/tasty/injector/injector.js +1 -1
- package/es/tasty/injector/sheet-manager.js +1 -1
- package/es/tasty/injector/types.js +1 -1
- package/es/tasty/parser/classify.js +1 -1
- package/es/tasty/parser/const.js +1 -1
- package/es/tasty/parser/lru.js +1 -1
- 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/pipeline/conditions.js +25 -1
- package/es/tasty/pipeline/exclusive.js +1 -1
- package/es/tasty/pipeline/index.js +1 -1
- package/es/tasty/pipeline/materialize.js +98 -3
- package/es/tasty/pipeline/parseStateKey.js +30 -3
- package/es/tasty/pipeline/simplify.js +1 -1
- package/es/tasty/plugins/index.js +1 -1
- package/es/tasty/plugins/okhsl-plugin.js +1 -1
- package/es/tasty/plugins/types.js +1 -1
- package/es/tasty/states/index.js +1 -1
- package/es/tasty/static/index.js +1 -1
- package/es/tasty/static/tastyStatic.js +1 -1
- package/es/tasty/static/types.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/fade.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/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/outline.js +1 -1
- package/es/tasty/styles/padding.js +1 -1
- package/es/tasty/styles/place.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/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 +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/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/isDevEnv.js +1 -1
- package/es/tasty/utils/mergeStyles.js +1 -1
- package/es/tasty/utils/modAttrs.js +1 -1
- package/es/tasty/utils/processTokens.js +1 -1
- package/es/tasty/utils/string.js +1 -1
- package/es/tasty/utils/styles.js +1 -1
- package/es/tasty/utils/typography.js +1 -1
- package/es/tasty/utils/warnings.js +1 -1
- package/es/tasty/zero/babel.js +1 -1
- package/es/tasty/zero/css-writer.js +1 -1
- package/es/tasty/zero/extractor.js +1 -1
- package/es/tasty/zero/index.js +1 -1
- package/es/tasty/zero/next.js +1 -1
- package/es/tokens/base.js +1 -1
- package/es/tokens/colors.js +1 -1
- package/es/tokens/index.js +1 -1
- package/es/tokens/layout.js +1 -1
- package/es/tokens/shadows.js +1 -1
- package/es/tokens/sizes.js +1 -1
- package/es/tokens/spacing.js +1 -1
- package/es/tokens/typography.js +1 -1
- package/es/utils/ResizeSensor.js +1 -1
- package/es/utils/index.js +1 -1
- package/es/utils/modules.js +1 -1
- package/es/utils/promise.js +1 -1
- package/es/utils/raf.js +1 -1
- package/es/utils/random.js +1 -1
- package/es/utils/range.js +1 -1
- package/es/utils/react/RenderCache.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/resolveIcon.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/useLocalStorage.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/tree.js +1 -1
- package/es/utils/warnings.js +1 -1
- package/es/version.js +2 -2
- package/package.json +1 -1
- package/types/tasty/pipeline/conditions.d.ts +20 -1
- package/types/tasty/pipeline/materialize.d.ts +13 -0
package/es/tasty/index.js
CHANGED
package/es/tasty/parser/const.js
CHANGED
package/es/tasty/parser/lru.js
CHANGED
package/es/tasty/parser/types.js
CHANGED
|
@@ -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-5fadbde
|
|
5
5
|
* Released under the MIT license.
|
|
6
6
|
*/
|
|
7
7
|
|
|
@@ -245,6 +245,13 @@ export function ownUniqueId(innerUniqueId, negated = false) {
|
|
|
245
245
|
export function startingUniqueId(negated = false) {
|
|
246
246
|
return negated ? '!starting' : 'starting';
|
|
247
247
|
}
|
|
248
|
+
/**
|
|
249
|
+
* Generate a normalized unique ID for a supports condition
|
|
250
|
+
*/
|
|
251
|
+
export function supportsUniqueId(subtype, condition, negated = false) {
|
|
252
|
+
const base = `supports:${subtype}:${condition}`;
|
|
253
|
+
return negated ? `!${base}` : base;
|
|
254
|
+
}
|
|
248
255
|
// ============================================================================
|
|
249
256
|
// Condition Creation Helpers
|
|
250
257
|
// ============================================================================
|
|
@@ -394,6 +401,23 @@ export function createStartingCondition(negated = false, raw) {
|
|
|
394
401
|
uniqueId: startingUniqueId(negated),
|
|
395
402
|
};
|
|
396
403
|
}
|
|
404
|
+
/**
|
|
405
|
+
* Create a supports condition
|
|
406
|
+
*
|
|
407
|
+
* @param subtype 'feature' for @supports(display: grid), 'selector' for @supports($, :has(*))
|
|
408
|
+
* @param condition The condition string (e.g., "display: grid" or ":has(*)")
|
|
409
|
+
*/
|
|
410
|
+
export function createSupportsCondition(subtype, condition, negated = false, raw) {
|
|
411
|
+
return {
|
|
412
|
+
kind: 'state',
|
|
413
|
+
type: 'supports',
|
|
414
|
+
subtype,
|
|
415
|
+
negated,
|
|
416
|
+
raw: raw || `@supports(${condition})`,
|
|
417
|
+
uniqueId: supportsUniqueId(subtype, condition, negated),
|
|
418
|
+
condition,
|
|
419
|
+
};
|
|
420
|
+
}
|
|
397
421
|
// ============================================================================
|
|
398
422
|
// Utility Functions
|
|
399
423
|
// ============================================================================
|
|
@@ -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-5fadbde
|
|
5
5
|
* Released under the MIT license.
|
|
6
6
|
*/
|
|
7
7
|
|
|
@@ -52,6 +52,7 @@ function emptyVariant() {
|
|
|
52
52
|
ownSelectors: [],
|
|
53
53
|
mediaConditions: [],
|
|
54
54
|
containerConditions: [],
|
|
55
|
+
supportsConditions: [],
|
|
55
56
|
startingStyle: false,
|
|
56
57
|
};
|
|
57
58
|
}
|
|
@@ -116,6 +117,9 @@ function stateToCSS(state) {
|
|
|
116
117
|
case 'container':
|
|
117
118
|
variant.containerConditions.push(containerToParsed(state));
|
|
118
119
|
break;
|
|
120
|
+
case 'supports':
|
|
121
|
+
variant.supportsConditions.push(supportsToParsed(state));
|
|
122
|
+
break;
|
|
119
123
|
case 'root':
|
|
120
124
|
variant.rootPrefix = rootToCSS(state);
|
|
121
125
|
break;
|
|
@@ -291,6 +295,16 @@ function dimensionToContainerCondition(dimension, lowerBound, upperBound) {
|
|
|
291
295
|
}
|
|
292
296
|
return '(width)'; // Fallback
|
|
293
297
|
}
|
|
298
|
+
/**
|
|
299
|
+
* Convert supports condition to parsed structure
|
|
300
|
+
*/
|
|
301
|
+
function supportsToParsed(state) {
|
|
302
|
+
return {
|
|
303
|
+
subtype: state.subtype,
|
|
304
|
+
condition: state.condition,
|
|
305
|
+
negated: state.negated ?? false,
|
|
306
|
+
};
|
|
307
|
+
}
|
|
294
308
|
/**
|
|
295
309
|
* Convert root condition to CSS selector prefix
|
|
296
310
|
*/
|
|
@@ -366,11 +380,20 @@ function mergeVariants(a, b) {
|
|
|
366
380
|
if (hasContainerStyleContradiction(mergedContainers)) {
|
|
367
381
|
return null; // Impossible variant
|
|
368
382
|
}
|
|
383
|
+
// Merge supports conditions and check for contradictions
|
|
384
|
+
const mergedSupports = dedupeSupportsConditions([
|
|
385
|
+
...a.supportsConditions,
|
|
386
|
+
...b.supportsConditions,
|
|
387
|
+
]);
|
|
388
|
+
if (hasSupportsContradiction(mergedSupports)) {
|
|
389
|
+
return null; // Impossible variant
|
|
390
|
+
}
|
|
369
391
|
return {
|
|
370
392
|
modifierSelectors: mergedModifiers,
|
|
371
393
|
ownSelectors: dedupeArray([...a.ownSelectors, ...b.ownSelectors]),
|
|
372
394
|
mediaConditions: mergedMedia,
|
|
373
395
|
containerConditions: mergedContainers,
|
|
396
|
+
supportsConditions: mergedSupports,
|
|
374
397
|
rootPrefix: combinedRoot,
|
|
375
398
|
startingStyle: a.startingStyle || b.startingStyle,
|
|
376
399
|
};
|
|
@@ -405,6 +428,37 @@ function dedupeContainerConditions(conditions) {
|
|
|
405
428
|
}
|
|
406
429
|
return result;
|
|
407
430
|
}
|
|
431
|
+
/**
|
|
432
|
+
* Deduplicate supports conditions by their key (subtype + condition + negated)
|
|
433
|
+
*/
|
|
434
|
+
function dedupeSupportsConditions(conditions) {
|
|
435
|
+
const seen = new Set();
|
|
436
|
+
const result = [];
|
|
437
|
+
for (const c of conditions) {
|
|
438
|
+
const key = `${c.subtype}|${c.condition}|${c.negated}`;
|
|
439
|
+
if (!seen.has(key)) {
|
|
440
|
+
seen.add(key);
|
|
441
|
+
result.push(c);
|
|
442
|
+
}
|
|
443
|
+
}
|
|
444
|
+
return result;
|
|
445
|
+
}
|
|
446
|
+
/**
|
|
447
|
+
* Check if supports conditions contain contradictions
|
|
448
|
+
* e.g., @supports(display: grid) AND NOT @supports(display: grid)
|
|
449
|
+
*/
|
|
450
|
+
function hasSupportsContradiction(conditions) {
|
|
451
|
+
const conditionMap = new Map(); // key -> isPositive
|
|
452
|
+
for (const cond of conditions) {
|
|
453
|
+
const key = `${cond.subtype}|${cond.condition}`;
|
|
454
|
+
const existing = conditionMap.get(key);
|
|
455
|
+
if (existing !== undefined && existing !== !cond.negated) {
|
|
456
|
+
return true; // Contradiction: positive AND negated
|
|
457
|
+
}
|
|
458
|
+
conditionMap.set(key, !cond.negated);
|
|
459
|
+
}
|
|
460
|
+
return false;
|
|
461
|
+
}
|
|
408
462
|
/**
|
|
409
463
|
* Check if a set of media conditions contains contradictions
|
|
410
464
|
* e.g., (prefers-color-scheme: light) AND NOT (prefers-color-scheme: light)
|
|
@@ -608,11 +662,16 @@ function getVariantKey(v) {
|
|
|
608
662
|
.map((c) => `${c.subtype}:${c.negated ? '!' : ''}${c.condition}`)
|
|
609
663
|
.sort()
|
|
610
664
|
.join('|');
|
|
665
|
+
const supportsKey = v.supportsConditions
|
|
666
|
+
.map((c) => `${c.subtype}:${c.negated ? '!' : ''}${c.condition}`)
|
|
667
|
+
.sort()
|
|
668
|
+
.join('|');
|
|
611
669
|
return [
|
|
612
670
|
v.modifierSelectors.slice().sort().join('|'),
|
|
613
671
|
v.ownSelectors.slice().sort().join('|'),
|
|
614
672
|
mediaKey,
|
|
615
673
|
containerKey,
|
|
674
|
+
supportsKey,
|
|
616
675
|
v.rootPrefix || '',
|
|
617
676
|
v.startingStyle ? '1' : '0',
|
|
618
677
|
].join('###');
|
|
@@ -640,6 +699,9 @@ function isVariantSuperset(a, b) {
|
|
|
640
699
|
// Check if a.containerConditions is superset of b.containerConditions
|
|
641
700
|
if (!isContainerConditionsSuperset(a.containerConditions, b.containerConditions))
|
|
642
701
|
return false;
|
|
702
|
+
// Check if a.supportsConditions is superset of b.supportsConditions
|
|
703
|
+
if (!isSupportsConditionsSuperset(a.supportsConditions, b.supportsConditions))
|
|
704
|
+
return false;
|
|
643
705
|
// Check if a.modifierSelectors is superset of b.modifierSelectors
|
|
644
706
|
if (!isArraySuperset(a.modifierSelectors, b.modifierSelectors))
|
|
645
707
|
return false;
|
|
@@ -650,10 +712,12 @@ function isVariantSuperset(a, b) {
|
|
|
650
712
|
// and at least one category has strictly more items
|
|
651
713
|
const aTotal = a.mediaConditions.length +
|
|
652
714
|
a.containerConditions.length +
|
|
715
|
+
a.supportsConditions.length +
|
|
653
716
|
a.modifierSelectors.length +
|
|
654
717
|
a.ownSelectors.length;
|
|
655
718
|
const bTotal = b.mediaConditions.length +
|
|
656
719
|
b.containerConditions.length +
|
|
720
|
+
b.supportsConditions.length +
|
|
657
721
|
b.modifierSelectors.length +
|
|
658
722
|
b.ownSelectors.length;
|
|
659
723
|
return aTotal > bTotal;
|
|
@@ -682,6 +746,18 @@ function isContainerConditionsSuperset(a, b) {
|
|
|
682
746
|
}
|
|
683
747
|
return true;
|
|
684
748
|
}
|
|
749
|
+
/**
|
|
750
|
+
* Check if supports conditions A is a superset of B
|
|
751
|
+
*/
|
|
752
|
+
function isSupportsConditionsSuperset(a, b) {
|
|
753
|
+
const aKeys = new Set(a.map((c) => `${c.subtype}|${c.condition}|${c.negated}`));
|
|
754
|
+
for (const c of b) {
|
|
755
|
+
const key = `${c.subtype}|${c.condition}|${c.negated}`;
|
|
756
|
+
if (!aKeys.has(key))
|
|
757
|
+
return false;
|
|
758
|
+
}
|
|
759
|
+
return true;
|
|
760
|
+
}
|
|
685
761
|
/**
|
|
686
762
|
* Check if array A contains all elements of array B (superset)
|
|
687
763
|
*/
|
|
@@ -717,11 +793,13 @@ function dedupeVariants(variants) {
|
|
|
717
793
|
const aCount = a.modifierSelectors.length +
|
|
718
794
|
a.ownSelectors.length +
|
|
719
795
|
a.mediaConditions.length +
|
|
720
|
-
a.containerConditions.length
|
|
796
|
+
a.containerConditions.length +
|
|
797
|
+
a.supportsConditions.length;
|
|
721
798
|
const bCount = b.modifierSelectors.length +
|
|
722
799
|
b.ownSelectors.length +
|
|
723
800
|
b.mediaConditions.length +
|
|
724
|
-
b.containerConditions.length
|
|
801
|
+
b.containerConditions.length +
|
|
802
|
+
b.supportsConditions.length;
|
|
725
803
|
return aCount - bCount;
|
|
726
804
|
});
|
|
727
805
|
// Remove variants that are supersets of earlier (less restrictive) variants
|
|
@@ -882,6 +960,23 @@ export function buildAtRulesFromVariant(variant) {
|
|
|
882
960
|
atRules.push(`@container ${namePrefix}${conditionParts.join(' and ')}`);
|
|
883
961
|
}
|
|
884
962
|
}
|
|
963
|
+
// Add supports rules - combine all conditions with "and"
|
|
964
|
+
if (variant.supportsConditions.length > 0) {
|
|
965
|
+
const conditionParts = variant.supportsConditions.map((c) => {
|
|
966
|
+
// Build the condition based on subtype
|
|
967
|
+
// feature: (display: grid) or (not (display: grid))
|
|
968
|
+
// selector: selector(:has(*)) or (not selector(:has(*)))
|
|
969
|
+
if (c.subtype === 'selector') {
|
|
970
|
+
const selectorCond = `selector(${c.condition})`;
|
|
971
|
+
return c.negated ? `(not ${selectorCond})` : selectorCond;
|
|
972
|
+
}
|
|
973
|
+
else {
|
|
974
|
+
const featureCond = `(${c.condition})`;
|
|
975
|
+
return c.negated ? `(not ${featureCond})` : featureCond;
|
|
976
|
+
}
|
|
977
|
+
});
|
|
978
|
+
atRules.push(`@supports ${conditionParts.join(' and ')}`);
|
|
979
|
+
}
|
|
885
980
|
// Add starting-style
|
|
886
981
|
if (variant.startingStyle) {
|
|
887
982
|
atRules.push('@starting-style');
|
|
@@ -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-5fadbde
|
|
5
5
|
* Released under the MIT license.
|
|
6
6
|
*/
|
|
7
7
|
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
import { Lru } from '../parser/lru.js';
|
|
15
15
|
import { expandDimensionShorthands, expandTastyUnits, resolvePredefinedState, } from '../states/index.js';
|
|
16
16
|
import { camelToKebab } from '../utils/case-converter.js';
|
|
17
|
-
import { and, createContainerDimensionCondition, createContainerStyleCondition, createMediaDimensionCondition, createMediaFeatureCondition, createMediaTypeCondition, createModifierCondition, createOwnCondition, createPseudoCondition, createRootCondition, createStartingCondition, not, or, trueCondition, } from './conditions.js';
|
|
17
|
+
import { and, createContainerDimensionCondition, createContainerStyleCondition, createMediaDimensionCondition, createMediaFeatureCondition, createMediaTypeCondition, createModifierCondition, createOwnCondition, createPseudoCondition, createRootCondition, createStartingCondition, createSupportsCondition, not, or, trueCondition, } from './conditions.js';
|
|
18
18
|
// ============================================================================
|
|
19
19
|
// Caching
|
|
20
20
|
// ============================================================================
|
|
@@ -27,8 +27,11 @@ const parseCache = new Lru(5000);
|
|
|
27
27
|
* Pattern for tokenizing state notation.
|
|
28
28
|
* Matches: operators, parentheses, @-prefixed states, value mods, boolean mods,
|
|
29
29
|
* pseudo-classes, class selectors, and attribute selectors.
|
|
30
|
+
*
|
|
31
|
+
* Note: For @supports we need to handle nested parentheses like @supports($, :has(*))
|
|
32
|
+
* We use a pattern that allows one level of nesting: [^()]*(?:\([^)]*\))?[^)]*
|
|
30
33
|
*/
|
|
31
|
-
const STATE_TOKEN_PATTERN = /([&|!^])|([()])|(@media:[a-z]+)|(@media\([^)]+\))|(@root\([^)]+\))|(@own\([^)]+\))|(@\([^)]+\))|(@starting)|(@[A-Za-z][A-Za-z0-9-]*)|([a-z][a-z0-9-]*(?:\^=|\$=|\*=|=)(?:"[^"]*"|'[^']*'|[^\s&|!^()]+))|([a-z][a-z0-9-]+)|(:[a-z][a-z0-9-]*(?:\([^)]+\))?)|(\.[a-z][a-z0-9-]+)|(\[[^\]]+\])/gi;
|
|
34
|
+
const STATE_TOKEN_PATTERN = /([&|!^])|([()])|(@media:[a-z]+)|(@media\([^)]+\))|(@supports\([^()]*(?:\([^)]*\))?[^)]*\))|(@root\([^)]+\))|(@own\([^)]+\))|(@\([^)]+\))|(@starting)|(@[A-Za-z][A-Za-z0-9-]*)|([a-z][a-z0-9-]*(?:\^=|\$=|\*=|=)(?:"[^"]*"|'[^']*'|[^\s&|!^()]+))|([a-z][a-z0-9-]+)|(:[a-z][a-z0-9-]*(?:\([^)]+\))?)|(\.[a-z][a-z0-9-]+)|(\[[^\]]+\])/gi;
|
|
32
35
|
// ============================================================================
|
|
33
36
|
// Tokenizer
|
|
34
37
|
// ============================================================================
|
|
@@ -210,6 +213,10 @@ class Parser {
|
|
|
210
213
|
if (value.startsWith('@media(')) {
|
|
211
214
|
return this.parseMediaQuery(value);
|
|
212
215
|
}
|
|
216
|
+
// @supports(...) - feature/selector support query
|
|
217
|
+
if (value.startsWith('@supports(')) {
|
|
218
|
+
return this.parseSupportsQuery(value);
|
|
219
|
+
}
|
|
213
220
|
// @root(...) - root state
|
|
214
221
|
if (value.startsWith('@root(')) {
|
|
215
222
|
return this.parseRootState(value);
|
|
@@ -386,6 +393,26 @@ class Parser {
|
|
|
386
393
|
const selector = buildRootSelector(content);
|
|
387
394
|
return createRootCondition(selector, false, raw);
|
|
388
395
|
}
|
|
396
|
+
/**
|
|
397
|
+
* Parse @supports(...) query
|
|
398
|
+
*
|
|
399
|
+
* Syntax:
|
|
400
|
+
* @supports(display: grid) → @supports (display: grid)
|
|
401
|
+
* @supports($, :has(*)) → @supports selector(:has(*))
|
|
402
|
+
*/
|
|
403
|
+
parseSupportsQuery(raw) {
|
|
404
|
+
const content = raw.slice(10, -1); // Remove '@supports(' and ')'
|
|
405
|
+
if (!content.trim()) {
|
|
406
|
+
return trueCondition();
|
|
407
|
+
}
|
|
408
|
+
// Check for selector syntax: @supports($, :has(*))
|
|
409
|
+
if (content.startsWith('$,')) {
|
|
410
|
+
const selector = content.slice(2).trim(); // Remove '$,' prefix
|
|
411
|
+
return createSupportsCondition('selector', selector, false, raw);
|
|
412
|
+
}
|
|
413
|
+
// Feature syntax: @supports(display: grid)
|
|
414
|
+
return createSupportsCondition('feature', content, false, raw);
|
|
415
|
+
}
|
|
389
416
|
/**
|
|
390
417
|
* Parse @own(...) state
|
|
391
418
|
*/
|
package/es/tasty/states/index.js
CHANGED
package/es/tasty/static/index.js
CHANGED
package/es/tasty/static/types.js
CHANGED
package/es/tasty/styles/align.js
CHANGED
package/es/tasty/styles/color.js
CHANGED
package/es/tasty/styles/fade.js
CHANGED
package/es/tasty/styles/fill.js
CHANGED
package/es/tasty/styles/flow.js
CHANGED