@cube-dev/ui-kit 0.0.0-canary-0692b88 → 0.0.0-canary-72a72ab
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/GlobalStyles.js +1 -1
- package/es/components/GridProvider.js +1 -1
- package/es/components/HiddenInput.js +1 -1
- package/es/components/Item.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/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 +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/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 +1 -1
- 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 +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/Title.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/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/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 +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/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 -1
- package/es/tasty/debug.js +15 -156
- package/es/tasty/index.js +1 -1
- package/es/tasty/injector/flatten.js +1 -1
- package/es/tasty/injector/index.js +1 -1
- package/es/tasty/injector/injector.js +6 -49
- package/es/tasty/injector/sheet-manager.js +110 -355
- 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/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/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/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 -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/getModCombinations.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/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/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/tasty/debug.d.ts +2 -27
- package/types/tasty/injector/sheet-manager.d.ts +0 -27
- package/types/tasty/injector/types.d.ts +0 -37
package/es/tasty/debug.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
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-72a72ab
|
|
5
5
|
* Released under the MIT license.
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* Debug utilities for inspecting tasty-generated CSS at runtime
|
|
10
10
|
*/
|
|
11
|
-
import { getCssTextForNode, injector } from './injector';
|
|
11
|
+
import { getCssText, getCssTextForNode, injector } from './injector';
|
|
12
12
|
/**
|
|
13
13
|
* Pretty-print CSS with proper indentation and formatting
|
|
14
14
|
*/
|
|
@@ -66,20 +66,6 @@ function prettifyCSS(css) {
|
|
|
66
66
|
* Debug utilities for inspecting tasty styles in runtime applications
|
|
67
67
|
*/
|
|
68
68
|
export const tastyDebug = {
|
|
69
|
-
/** Resolve the document where tasty styles live (handles Storybook iframe). */
|
|
70
|
-
_resolveRoot() {
|
|
71
|
-
if (typeof document !== 'undefined') {
|
|
72
|
-
if (document.querySelector('style[data-tasty]'))
|
|
73
|
-
return document;
|
|
74
|
-
const iframe = document.getElementById('storybook-preview-iframe') ||
|
|
75
|
-
document.querySelector('iframe#storybook-preview-iframe') ||
|
|
76
|
-
document.querySelector('iframe');
|
|
77
|
-
if (iframe?.contentDocument?.querySelector?.('style[data-tasty]')) {
|
|
78
|
-
return iframe.contentDocument;
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
return document;
|
|
82
|
-
},
|
|
83
69
|
/**
|
|
84
70
|
* Get CSS for a specific tasty class (e.g., 't24')
|
|
85
71
|
*/
|
|
@@ -87,119 +73,16 @@ export const tastyDebug = {
|
|
|
87
73
|
if (!className.match(/^t\d+$/)) {
|
|
88
74
|
console.warn(`"${className}" doesn't look like a tasty class. Expected format: t{number}`);
|
|
89
75
|
}
|
|
90
|
-
const
|
|
91
|
-
const css = injector.instance.getCssTextForClasses([className], { root });
|
|
76
|
+
const css = injector.instance.getCssTextForClasses([className]);
|
|
92
77
|
return prettifyCSS(css);
|
|
93
78
|
},
|
|
94
79
|
/**
|
|
95
80
|
* Get CSS for multiple tasty classes
|
|
96
81
|
*/
|
|
97
82
|
getCSSForClasses(classNames) {
|
|
98
|
-
const
|
|
99
|
-
const css = injector.instance.getCssTextForClasses(classNames, { root });
|
|
83
|
+
const css = injector.instance.getCssTextForClasses(classNames);
|
|
100
84
|
return prettifyCSS(css);
|
|
101
85
|
},
|
|
102
|
-
/**
|
|
103
|
-
* Get detailed batched selector groups that affect a specific tasty class.
|
|
104
|
-
* Includes selector, declarations, at-rules and the full class list in the group.
|
|
105
|
-
*/
|
|
106
|
-
getBatchedGroupsForClass(className) {
|
|
107
|
-
const root = this._resolveRoot();
|
|
108
|
-
const registry = injector.instance['sheetManager'].getRegistry(root);
|
|
109
|
-
if (!registry?.classToBatchedKeys)
|
|
110
|
-
return [];
|
|
111
|
-
const result = [];
|
|
112
|
-
const keys = registry.classToBatchedKeys.get(className);
|
|
113
|
-
if (!keys)
|
|
114
|
-
return [];
|
|
115
|
-
for (const key of keys) {
|
|
116
|
-
const entry = registry.batchedRules.get(key);
|
|
117
|
-
const meta = registry.batchedRuleMeta?.get(key);
|
|
118
|
-
if (!entry && !meta)
|
|
119
|
-
continue;
|
|
120
|
-
// Read CSS text from CSSOM when possible, otherwise from cached text
|
|
121
|
-
let css = '';
|
|
122
|
-
let selector = '';
|
|
123
|
-
let declarations = '';
|
|
124
|
-
let atRules = undefined;
|
|
125
|
-
let classes = [];
|
|
126
|
-
if (entry) {
|
|
127
|
-
const sheet = registry.sheets[entry.sheetIndex];
|
|
128
|
-
const styleSheet = sheet?.sheet?.sheet;
|
|
129
|
-
if (styleSheet) {
|
|
130
|
-
const idx = Math.max(0, Math.min(entry.ruleIndex, styleSheet.cssRules.length - 1));
|
|
131
|
-
const rule = styleSheet.cssRules[idx];
|
|
132
|
-
css = rule?.cssText || entry.currentCssText || '';
|
|
133
|
-
}
|
|
134
|
-
else {
|
|
135
|
-
css = entry.currentCssText || '';
|
|
136
|
-
}
|
|
137
|
-
declarations = entry.declarations || '';
|
|
138
|
-
atRules =
|
|
139
|
-
entry.atRules && entry.atRules.length
|
|
140
|
-
? [...entry.atRules]
|
|
141
|
-
: undefined;
|
|
142
|
-
const classArr = Array.from(entry.classNames || new Set());
|
|
143
|
-
classes = classArr.sort((a, b) => parseInt(a.slice(1)) - parseInt(b.slice(1)));
|
|
144
|
-
}
|
|
145
|
-
else if (meta) {
|
|
146
|
-
// If only meta exists, we still can present declarations/atRules
|
|
147
|
-
css = '';
|
|
148
|
-
declarations = meta.declarations || '';
|
|
149
|
-
atRules =
|
|
150
|
-
meta.atRules && meta.atRules.length
|
|
151
|
-
? [...meta.atRules]
|
|
152
|
-
: undefined;
|
|
153
|
-
classes = [];
|
|
154
|
-
}
|
|
155
|
-
// Try to extract selector from css text if available
|
|
156
|
-
if (!selector && css.includes('{')) {
|
|
157
|
-
selector = css.split('{', 1)[0].trim();
|
|
158
|
-
}
|
|
159
|
-
result.push({ selector, declarations, atRules, classes, css });
|
|
160
|
-
}
|
|
161
|
-
return result;
|
|
162
|
-
},
|
|
163
|
-
/**
|
|
164
|
-
* List classes that participate in at least one batched group
|
|
165
|
-
*/
|
|
166
|
-
findClassesWithBatches() {
|
|
167
|
-
const root = this._resolveRoot();
|
|
168
|
-
const registry = injector.instance['sheetManager'].getRegistry(root);
|
|
169
|
-
if (!registry?.classToBatchedKeys)
|
|
170
|
-
return [];
|
|
171
|
-
const entries = Array.from(registry.classToBatchedKeys.entries());
|
|
172
|
-
return entries
|
|
173
|
-
.filter(([, keys]) => keys && keys.size > 0)
|
|
174
|
-
.map(([cls]) => cls)
|
|
175
|
-
.sort((a, b) => parseInt(a.slice(1)) - parseInt(b.slice(1)));
|
|
176
|
-
},
|
|
177
|
-
/**
|
|
178
|
-
* List a brief summary of existing batched groups
|
|
179
|
-
*/
|
|
180
|
-
listBatchedGroups(limit = 50) {
|
|
181
|
-
const root = this._resolveRoot();
|
|
182
|
-
const registry = injector.instance['sheetManager'].getRegistry(root);
|
|
183
|
-
if (!registry?.batchedRules)
|
|
184
|
-
return [];
|
|
185
|
-
const out = [];
|
|
186
|
-
for (const [key, entry] of registry.batchedRules.entries()) {
|
|
187
|
-
out.push({
|
|
188
|
-
key,
|
|
189
|
-
size: entry.classNames ? entry.classNames.size : 0,
|
|
190
|
-
sampleSelector: (() => {
|
|
191
|
-
const sheet = registry.sheets[entry.sheetIndex];
|
|
192
|
-
const cssText = sheet?.sheet?.sheet?.cssRules?.[entry.ruleIndex]?.cssText ||
|
|
193
|
-
entry.currentCssText ||
|
|
194
|
-
'';
|
|
195
|
-
return cssText.split('{', 1)[0].trim();
|
|
196
|
-
})(),
|
|
197
|
-
});
|
|
198
|
-
if (out.length >= limit)
|
|
199
|
-
break;
|
|
200
|
-
}
|
|
201
|
-
return out.sort((a, b) => b.size - a.size);
|
|
202
|
-
},
|
|
203
86
|
/**
|
|
204
87
|
* Log CSS for a specific tasty class (e.g., 't24') to console
|
|
205
88
|
*/
|
|
@@ -209,14 +92,6 @@ export const tastyDebug = {
|
|
|
209
92
|
}
|
|
210
93
|
const css = this.getCSSForClass(className);
|
|
211
94
|
this.logCSS(css, `CSS for class "${className}"`);
|
|
212
|
-
const groups = this.getBatchedGroupsForClass(className);
|
|
213
|
-
if (groups.length) {
|
|
214
|
-
console.group('🔗 Batched selector groups');
|
|
215
|
-
for (const g of groups) {
|
|
216
|
-
console.log(`${g.selector} { ${g.declarations} } // classes: ${g.classes.join(', ')}`);
|
|
217
|
-
}
|
|
218
|
-
console.groupEnd();
|
|
219
|
-
}
|
|
220
95
|
},
|
|
221
96
|
/**
|
|
222
97
|
* Log CSS for multiple tasty classes to console
|
|
@@ -230,16 +105,13 @@ export const tastyDebug = {
|
|
|
230
105
|
* Inspect an element by CSS selector and get its tasty CSS
|
|
231
106
|
*/
|
|
232
107
|
inspectElement(selector) {
|
|
233
|
-
const
|
|
234
|
-
const element = root.querySelector
|
|
235
|
-
? root.querySelector(selector)
|
|
236
|
-
: document.querySelector(selector);
|
|
108
|
+
const element = document.querySelector(selector);
|
|
237
109
|
if (!element) {
|
|
238
110
|
return `Element not found: ${selector}`;
|
|
239
111
|
}
|
|
240
112
|
console.group(`🎨 Tasty CSS for "${selector}"`);
|
|
241
113
|
console.log('Element:', element);
|
|
242
|
-
const css = getCssTextForNode(element
|
|
114
|
+
const css = getCssTextForNode(element);
|
|
243
115
|
if (css) {
|
|
244
116
|
const prettified = prettifyCSS(css);
|
|
245
117
|
console.log('Generated CSS:\n' + prettified);
|
|
@@ -261,8 +133,7 @@ export const tastyDebug = {
|
|
|
261
133
|
}
|
|
262
134
|
console.group('🎨 Tasty CSS for element');
|
|
263
135
|
console.log('Element:', element);
|
|
264
|
-
const
|
|
265
|
-
const css = getCssTextForNode(element, { root });
|
|
136
|
+
const css = getCssTextForNode(element);
|
|
266
137
|
if (css) {
|
|
267
138
|
const prettified = prettifyCSS(css);
|
|
268
139
|
console.log('Generated CSS:\n' + prettified);
|
|
@@ -279,8 +150,7 @@ export const tastyDebug = {
|
|
|
279
150
|
* Get all tasty CSS currently injected into the page
|
|
280
151
|
*/
|
|
281
152
|
getAllCSS() {
|
|
282
|
-
|
|
283
|
-
return injector.instance.getCssText({ root });
|
|
153
|
+
return getCssText();
|
|
284
154
|
},
|
|
285
155
|
/**
|
|
286
156
|
* Find all tasty classes used in the page (in DOM)
|
|
@@ -288,10 +158,7 @@ export const tastyDebug = {
|
|
|
288
158
|
findAllTastyClasses() {
|
|
289
159
|
const classes = new Set();
|
|
290
160
|
// Find all elements with class attributes
|
|
291
|
-
const
|
|
292
|
-
const elements = root.querySelectorAll
|
|
293
|
-
? root.querySelectorAll('[class]')
|
|
294
|
-
: document.querySelectorAll('[class]');
|
|
161
|
+
const elements = document.querySelectorAll('[class]');
|
|
295
162
|
elements.forEach((element) => {
|
|
296
163
|
const classList = element.getAttribute('class');
|
|
297
164
|
if (classList) {
|
|
@@ -313,8 +180,7 @@ export const tastyDebug = {
|
|
|
313
180
|
* Find all tasty classes that have styles in the stylesheet (used + unused)
|
|
314
181
|
*/
|
|
315
182
|
findAllStyledClasses() {
|
|
316
|
-
const
|
|
317
|
-
const registry = injector.instance['sheetManager'].getRegistry(root);
|
|
183
|
+
const registry = injector.instance['sheetManager'].getRegistry(document);
|
|
318
184
|
const classes = new Set();
|
|
319
185
|
// Add all classes from rules map (active + unused)
|
|
320
186
|
if (registry?.rules) {
|
|
@@ -337,8 +203,7 @@ export const tastyDebug = {
|
|
|
337
203
|
getClassUsage() {
|
|
338
204
|
const domClasses = this.findAllTastyClasses();
|
|
339
205
|
const styledClasses = this.findAllStyledClasses();
|
|
340
|
-
const
|
|
341
|
-
const registry = injector.instance['sheetManager'].getRegistry(root);
|
|
206
|
+
const registry = injector.instance['sheetManager'].getRegistry(document);
|
|
342
207
|
const activeClasses = domClasses;
|
|
343
208
|
const cachedClasses = styledClasses.filter((cls) => !domClasses.includes(cls));
|
|
344
209
|
// Also check unusedRules registry for classes that are marked as cached (unused but kept for performance)
|
|
@@ -372,11 +237,6 @@ export const tastyDebug = {
|
|
|
372
237
|
const activeCSS = this.getCSSForClasses(usage.activeClasses);
|
|
373
238
|
const cachedCSS = this.getCSSForClasses(usage.cachedClasses);
|
|
374
239
|
const metrics = injector.instance.getMetrics();
|
|
375
|
-
const root = this._resolveRoot();
|
|
376
|
-
const registry = injector.instance['sheetManager'].getRegistry(root);
|
|
377
|
-
const batchedGroupCount = registry?.batchedRules
|
|
378
|
-
? registry.batchedRules.size
|
|
379
|
-
: 0;
|
|
380
240
|
const summary = {
|
|
381
241
|
activeClasses: usage.activeClasses,
|
|
382
242
|
cachedClasses: usage.cachedClasses,
|
|
@@ -418,7 +278,6 @@ export const tastyDebug = {
|
|
|
418
278
|
console.log('🔍 Details:');
|
|
419
279
|
console.log(' • Active classes:', summary.activeClasses);
|
|
420
280
|
console.log(' • Cached classes:', summary.cachedClasses);
|
|
421
|
-
console.log(` • Batched groups: ${batchedGroupCount}`);
|
|
422
281
|
console.log('ℹ️ Note: Cached styles are kept for performance - avoiding expensive DOM operations');
|
|
423
282
|
console.groupEnd();
|
|
424
283
|
return summary;
|
|
@@ -465,7 +324,7 @@ export const tastyDebug = {
|
|
|
465
324
|
.split(/\s+/)
|
|
466
325
|
.filter((cls) => /^t\d+$/.test(cls));
|
|
467
326
|
// Get CSS for the entire subtree
|
|
468
|
-
const fullCSS = getCssTextForNode(element
|
|
327
|
+
const fullCSS = getCssTextForNode(element);
|
|
469
328
|
const prettifiedCSS = prettifyCSS(fullCSS);
|
|
470
329
|
// Count CSS rules in the full CSS
|
|
471
330
|
const ruleCount = (fullCSS.match(/\{[^}]*\}/g) || []).length;
|
|
@@ -547,11 +406,11 @@ function isDevelopmentEnvironment() {
|
|
|
547
406
|
}
|
|
548
407
|
/**
|
|
549
408
|
* Install tastyDebug on window object for easy access in browser console
|
|
550
|
-
* Only in non-production environments
|
|
409
|
+
* Only in non-production environments
|
|
551
410
|
*/
|
|
552
|
-
export function installGlobalDebug(
|
|
411
|
+
export function installGlobalDebug() {
|
|
553
412
|
if (typeof window !== 'undefined' &&
|
|
554
|
-
|
|
413
|
+
isDevelopmentEnvironment() &&
|
|
555
414
|
window.tastyDebug !== tastyDebug) {
|
|
556
415
|
window.tastyDebug = tastyDebug;
|
|
557
416
|
console.log('🎨 tastyDebug installed on window.\n' +
|
package/es/tasty/index.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-72a72ab
|
|
5
5
|
* Released under the MIT license.
|
|
6
6
|
*/
|
|
7
7
|
|
|
@@ -38,16 +38,14 @@ export class StyleInjector {
|
|
|
38
38
|
};
|
|
39
39
|
}
|
|
40
40
|
// Convert to flattened rules
|
|
41
|
-
|
|
41
|
+
const flattenedRules = this.convertToFlattenedRules(rules);
|
|
42
42
|
// Try to dedupe by className first — if the same class was already inserted, reuse it
|
|
43
43
|
// Only extract className if it looks like a generated tasty className (t + digits)
|
|
44
44
|
const preExtractedClass = this.extractClassName(rules);
|
|
45
45
|
const generatedClass = preExtractedClass && /^t\d+$/.test(preExtractedClass)
|
|
46
46
|
? preExtractedClass
|
|
47
47
|
: null;
|
|
48
|
-
if (generatedClass &&
|
|
49
|
-
registry.rules.has(generatedClass) &&
|
|
50
|
-
registry.refCounts.has(generatedClass)) {
|
|
48
|
+
if (generatedClass && registry.rules.has(generatedClass)) {
|
|
51
49
|
const currentRefCount = registry.refCounts.get(generatedClass) || 0;
|
|
52
50
|
registry.refCounts.set(generatedClass, currentRefCount + 1);
|
|
53
51
|
// Update metrics
|
|
@@ -81,7 +79,7 @@ export class StyleInjector {
|
|
|
81
79
|
? generatedClass
|
|
82
80
|
: generateClassName(registry.classCounter++);
|
|
83
81
|
// If a different pre-extracted class was used in rules, rewrite selectors to the final class
|
|
84
|
-
|
|
82
|
+
const rulesToInsert = generatedClass && generatedClass !== className
|
|
85
83
|
? flattenedRules.map((r) => {
|
|
86
84
|
if (r.selector.startsWith('.' + generatedClass)) {
|
|
87
85
|
return {
|
|
@@ -92,17 +90,6 @@ export class StyleInjector {
|
|
|
92
90
|
return r;
|
|
93
91
|
})
|
|
94
92
|
: flattenedRules;
|
|
95
|
-
// Normalize any occurrence of :is(<class list>) to plain class reference for stable batching
|
|
96
|
-
const isWithClasses = /:is\(\s*\.[A-Za-z0-9_-]+(?:\s*,\s*\.[A-Za-z0-9_-]+)*\s*\)/g;
|
|
97
|
-
rulesToInsert = rulesToInsert.map((r) => {
|
|
98
|
-
if (isWithClasses.test(r.selector)) {
|
|
99
|
-
return {
|
|
100
|
-
...r,
|
|
101
|
-
selector: r.selector.replace(isWithClasses, `.${className}`),
|
|
102
|
-
};
|
|
103
|
-
}
|
|
104
|
-
return r;
|
|
105
|
-
});
|
|
106
93
|
// Insert rules using existing sheet manager
|
|
107
94
|
const ruleInfo = this.sheetManager.insertRule(registry, rulesToInsert, className, root);
|
|
108
95
|
if (!ruleInfo) {
|
|
@@ -246,44 +233,14 @@ export class StyleInjector {
|
|
|
246
233
|
const root = options?.root || document;
|
|
247
234
|
const registry = this.sheetManager.getRegistry(root);
|
|
248
235
|
const cssChunks = [];
|
|
249
|
-
const seenBatchKeys = new Set();
|
|
250
236
|
for (const cls of classNames) {
|
|
251
|
-
// Include batched rules for this class
|
|
252
|
-
const keys = registry.classToBatchedKeys.get(cls);
|
|
253
|
-
if (keys) {
|
|
254
|
-
for (const key of keys) {
|
|
255
|
-
if (seenBatchKeys.has(key))
|
|
256
|
-
continue;
|
|
257
|
-
const entry = registry.batchedRules.get(key);
|
|
258
|
-
const meta = entry || registry.batchedRuleMeta.get(key);
|
|
259
|
-
if (entry) {
|
|
260
|
-
// Prefer live CSSOM text when available
|
|
261
|
-
const sheet = registry.sheets[entry.sheetIndex];
|
|
262
|
-
const styleSheet = sheet?.sheet?.sheet;
|
|
263
|
-
if (styleSheet && !this.config.forceTextInjection) {
|
|
264
|
-
const idx = Math.max(0, Math.min(entry.ruleIndex, styleSheet.cssRules.length - 1));
|
|
265
|
-
const rule = styleSheet.cssRules[idx];
|
|
266
|
-
if (rule)
|
|
267
|
-
cssChunks.push(rule.cssText);
|
|
268
|
-
}
|
|
269
|
-
else if (entry.currentCssText) {
|
|
270
|
-
cssChunks.push(entry.currentCssText);
|
|
271
|
-
}
|
|
272
|
-
seenBatchKeys.add(key);
|
|
273
|
-
}
|
|
274
|
-
else if (meta) {
|
|
275
|
-
// If meta exists but no entry (e.g., fully cleaned), we can reconstruct CSS if needed
|
|
276
|
-
// but skip since there's no active rule in sheet
|
|
277
|
-
}
|
|
278
|
-
}
|
|
279
|
-
}
|
|
280
|
-
// Include legacy per-class rules (non-batched)
|
|
281
237
|
const info = registry.rules.get(cls);
|
|
282
238
|
if (info) {
|
|
283
239
|
if (info.cssText && info.cssText.length) {
|
|
284
240
|
cssChunks.push(...info.cssText);
|
|
285
241
|
}
|
|
286
|
-
else
|
|
242
|
+
else {
|
|
243
|
+
// Fallback: try to read from live sheet by index range
|
|
287
244
|
const sheet = registry.sheets[info.sheetIndex];
|
|
288
245
|
const styleSheet = sheet?.sheet?.sheet;
|
|
289
246
|
if (styleSheet) {
|