@cube-dev/ui-kit 0.0.0-canary-da0f894 → 0.0.0-canary-364ff16
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 +51 -52
- 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 +3 -3
- package/es/tasty/hooks/index.js +2 -1
- package/es/tasty/hooks/useGlobalStyles.js +1 -1
- package/es/tasty/hooks/useRawCSS.js +40 -0
- package/es/tasty/hooks/useStyles.js +1 -1
- package/es/tasty/index.js +2 -2
- package/es/tasty/injector/index.js +24 -11
- package/es/tasty/injector/injector.js +16 -277
- package/es/tasty/injector/sheet-manager.js +119 -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 +1 -1
- package/es/tasty/pipeline/exclusive.js +1 -1
- package/es/tasty/pipeline/index.js +1 -1
- package/es/tasty/pipeline/materialize.js +1 -1
- package/es/tasty/pipeline/parseStateKey.js +1 -1
- package/es/tasty/pipeline/simplify.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/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.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/components/GlobalStyles.d.ts +1 -1
- package/types/tasty/hooks/index.d.ts +1 -0
- package/types/tasty/hooks/useRawCSS.d.ts +50 -0
- package/types/tasty/index.d.ts +1 -1
- package/types/tasty/injector/index.d.ts +29 -8
- package/types/tasty/injector/injector.d.ts +12 -12
- package/types/tasty/injector/sheet-manager.d.ts +25 -1
- package/types/tasty/injector/types.d.ts +13 -0
package/es/tasty/chunks/index.js
CHANGED
package/es/tasty/config.js
CHANGED
package/es/tasty/debug.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-364ff16
|
|
5
5
|
* Released under the MIT license.
|
|
6
6
|
*/
|
|
7
7
|
|
|
@@ -758,7 +758,7 @@ export const tastyDebug = {
|
|
|
758
758
|
console.log(` • Active CSS: ${summary.activeCSSSize} characters`);
|
|
759
759
|
console.log(` • Unused CSS: ${summary.unusedCSSSize} characters`);
|
|
760
760
|
console.log(` • Global CSS (injectGlobal): ${summary.globalCSSSize} characters (${summary.globalRuleCount} rules)`);
|
|
761
|
-
console.log(` • Raw CSS (
|
|
761
|
+
console.log(` • Raw CSS (injectRawCSS/useRawCSS): ${summary.rawCSSSize} characters (${summary.rawRuleCount} rules)`);
|
|
762
762
|
console.log(` • Keyframes CSS: ${summary.keyframesCSSSize} characters (${summary.keyframesRuleCount} rules)`);
|
|
763
763
|
console.log(` • Property CSS: ${summary.propertyCSSSize} characters (${summary.propertyRuleCount} rules)`);
|
|
764
764
|
// Show breakdown calculation
|
|
@@ -932,7 +932,7 @@ export const tastyDebug = {
|
|
|
932
932
|
console.log(' • "all" - all tasty CSS + global CSS');
|
|
933
933
|
console.log(' • "active" - CSS for classes in DOM');
|
|
934
934
|
console.log(' • "unused" - CSS for classes with refCount = 0');
|
|
935
|
-
console.log(' • "global" - only global CSS (
|
|
935
|
+
console.log(' • "global" - only global CSS (injectGlobal)');
|
|
936
936
|
console.log(' • "page" - ALL page CSS (including non-tasty)');
|
|
937
937
|
console.log(' • "t123" - specific tasty class');
|
|
938
938
|
console.log(' • [".my-selector"] - CSS selector');
|
package/es/tasty/hooks/index.js
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
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-364ff16
|
|
5
5
|
* Released under the MIT license.
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
8
|
export { useStyles } from './useStyles';
|
|
9
9
|
export { useGlobalStyles } from './useGlobalStyles';
|
|
10
|
+
export { useRawCSS } from './useRawCSS';
|
|
10
11
|
|
|
11
12
|
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license MIT
|
|
3
|
+
* author: Cube Dev Team
|
|
4
|
+
* @cube-dev/ui-kit v0.0.0-canary-364ff16
|
|
5
|
+
* Released under the MIT license.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
import { useInsertionEffect, useMemo, useRef } from 'react';
|
|
9
|
+
import { injectRawCSS } from '../injector';
|
|
10
|
+
// Implementation
|
|
11
|
+
export function useRawCSS(cssOrFactory, depsOrOptions, options) {
|
|
12
|
+
// Detect which overload is being used
|
|
13
|
+
const isFactory = typeof cssOrFactory === 'function';
|
|
14
|
+
// Parse arguments based on overload
|
|
15
|
+
const deps = isFactory && Array.isArray(depsOrOptions) ? depsOrOptions : undefined;
|
|
16
|
+
const opts = isFactory
|
|
17
|
+
? options
|
|
18
|
+
: depsOrOptions;
|
|
19
|
+
// Memoize CSS - for factory functions, use provided deps; for strings, use the string itself
|
|
20
|
+
const css = useMemo(() => isFactory ? cssOrFactory() : cssOrFactory, isFactory ? deps ?? [] : [cssOrFactory]);
|
|
21
|
+
const disposeRef = useRef(null);
|
|
22
|
+
useInsertionEffect(() => {
|
|
23
|
+
// Dispose previous injection if any
|
|
24
|
+
disposeRef.current?.();
|
|
25
|
+
if (!css.trim()) {
|
|
26
|
+
disposeRef.current = null;
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
// Inject new CSS
|
|
30
|
+
const { dispose } = injectRawCSS(css, opts);
|
|
31
|
+
disposeRef.current = dispose;
|
|
32
|
+
// Cleanup on unmount or when css changes
|
|
33
|
+
return () => {
|
|
34
|
+
disposeRef.current?.();
|
|
35
|
+
disposeRef.current = null;
|
|
36
|
+
};
|
|
37
|
+
}, [css, opts?.root]);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
|
package/es/tasty/index.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
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-364ff16
|
|
5
5
|
* Released under the MIT license.
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
8
|
export { tasty, Element } from './tasty';
|
|
9
|
-
export { useStyles, useGlobalStyles } from './hooks';
|
|
9
|
+
export { useStyles, useGlobalStyles, useRawCSS } from './hooks';
|
|
10
10
|
// Configuration API
|
|
11
11
|
export { configure, getConfig, isConfigLocked, hasStylesGenerated, resetConfig, isTestEnvironment, } from './config';
|
|
12
12
|
// Chunk utilities for advanced use cases
|
|
@@ -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-364ff16
|
|
5
5
|
* Released under the MIT license.
|
|
6
6
|
*/
|
|
7
7
|
|
|
@@ -28,10 +28,30 @@ export function injectGlobal(rules, options) {
|
|
|
28
28
|
return getGlobalInjector().injectGlobal(rules, options);
|
|
29
29
|
}
|
|
30
30
|
/**
|
|
31
|
-
*
|
|
31
|
+
* Inject raw CSS text directly without parsing
|
|
32
|
+
* This is a low-overhead method for injecting raw CSS that doesn't need tasty processing.
|
|
33
|
+
* The CSS is inserted into a separate style element to avoid conflicts with tasty's chunking.
|
|
34
|
+
*
|
|
35
|
+
* @example
|
|
36
|
+
* ```tsx
|
|
37
|
+
* // Inject raw CSS
|
|
38
|
+
* const { dispose } = injectRawCSS(`
|
|
39
|
+
* body { margin: 0; padding: 0; }
|
|
40
|
+
* .my-class { color: red; }
|
|
41
|
+
* `);
|
|
42
|
+
*
|
|
43
|
+
* // Later, remove the injected CSS
|
|
44
|
+
* dispose();
|
|
45
|
+
* ```
|
|
32
46
|
*/
|
|
33
|
-
function
|
|
34
|
-
return getGlobalInjector().
|
|
47
|
+
export function injectRawCSS(css, options) {
|
|
48
|
+
return getGlobalInjector().injectRawCSS(css, options);
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Get raw CSS text for SSR
|
|
52
|
+
*/
|
|
53
|
+
export function getRawCSSText(options) {
|
|
54
|
+
return getGlobalInjector().getRawCSSText(options);
|
|
35
55
|
}
|
|
36
56
|
/**
|
|
37
57
|
* Inject keyframes and return object with toString() and dispose()
|
|
@@ -111,13 +131,6 @@ export function createInjector(config = {}) {
|
|
|
111
131
|
};
|
|
112
132
|
return new StyleInjector(fullConfig);
|
|
113
133
|
}
|
|
114
|
-
/**
|
|
115
|
-
* Create a global style component like styled-components createGlobalStyle
|
|
116
|
-
* Returns a React component that injects global styles when mounted and cleans up when unmounted
|
|
117
|
-
*/
|
|
118
|
-
export function createGlobalStyle(strings, ...interpolations) {
|
|
119
|
-
return getGlobalInjector().createGlobalStyle(strings, ...interpolations);
|
|
120
|
-
}
|
|
121
134
|
export { StyleInjector } from './injector';
|
|
122
135
|
export { SheetManager } from './sheet-manager';
|
|
123
136
|
|
|
@@ -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-364ff16
|
|
5
5
|
* Released under the MIT license.
|
|
6
6
|
*/
|
|
7
7
|
|
|
@@ -9,9 +9,7 @@
|
|
|
9
9
|
* Style injector that works with structured style objects
|
|
10
10
|
* Eliminates CSS string parsing for better performance
|
|
11
11
|
*/
|
|
12
|
-
import { Component } from 'react';
|
|
13
12
|
import { parseStyle } from '../utils/styles';
|
|
14
|
-
// Simple CSS text to StyleResult converter for injectGlobal backward compatibility
|
|
15
13
|
import { SheetManager } from './sheet-manager';
|
|
16
14
|
/**
|
|
17
15
|
* Generate sequential class name with format t{number}
|
|
@@ -214,26 +212,20 @@ export class StyleInjector {
|
|
|
214
212
|
};
|
|
215
213
|
}
|
|
216
214
|
/**
|
|
217
|
-
* Inject
|
|
215
|
+
* Inject raw CSS text directly without parsing
|
|
216
|
+
* This is a low-overhead alternative to createGlobalStyle for raw CSS
|
|
217
|
+
* The CSS is inserted into a separate style element to avoid conflicts with tasty's chunking
|
|
218
218
|
*/
|
|
219
|
-
|
|
219
|
+
injectRawCSS(css, options) {
|
|
220
220
|
const root = options?.root || document;
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
const
|
|
228
|
-
|
|
229
|
-
registry.metrics.totalInsertions++;
|
|
230
|
-
}
|
|
231
|
-
return {
|
|
232
|
-
dispose: () => {
|
|
233
|
-
if (info)
|
|
234
|
-
this.sheetManager.deleteGlobalRule(registry, key);
|
|
235
|
-
},
|
|
236
|
-
};
|
|
221
|
+
return this.sheetManager.injectRawCSS(css, root);
|
|
222
|
+
}
|
|
223
|
+
/**
|
|
224
|
+
* Get raw CSS text for SSR
|
|
225
|
+
*/
|
|
226
|
+
getRawCSSText(options) {
|
|
227
|
+
const root = options?.root || document;
|
|
228
|
+
return this.sheetManager.getRawCSSText(root);
|
|
237
229
|
}
|
|
238
230
|
/**
|
|
239
231
|
* Dispose of a className
|
|
@@ -342,9 +334,9 @@ export class StyleInjector {
|
|
|
342
334
|
syntax = `"${syntax}"`;
|
|
343
335
|
parts.push(`syntax: ${syntax};`);
|
|
344
336
|
}
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
}
|
|
337
|
+
// inherits is required by the CSS @property spec - default to true
|
|
338
|
+
const inherits = options?.inherits ?? true;
|
|
339
|
+
parts.push(`inherits: ${inherits ? 'true' : 'false'};`);
|
|
348
340
|
if (options?.initialValue != null) {
|
|
349
341
|
let initialValueStr;
|
|
350
342
|
if (typeof options.initialValue === 'number') {
|
|
@@ -454,259 +446,6 @@ export class StyleInjector {
|
|
|
454
446
|
const targetRoot = root || document;
|
|
455
447
|
this.sheetManager.cleanup(targetRoot);
|
|
456
448
|
}
|
|
457
|
-
/**
|
|
458
|
-
* Create a global style component like styled-components createGlobalStyle
|
|
459
|
-
* Returns a React component that injects global styles when mounted and cleans up when unmounted
|
|
460
|
-
*/
|
|
461
|
-
createGlobalStyle(strings, ...interpolations) {
|
|
462
|
-
const injector = this; // Capture the injector instance
|
|
463
|
-
class GlobalStyleComponent extends Component {
|
|
464
|
-
disposeFunction = null;
|
|
465
|
-
componentDidMount() {
|
|
466
|
-
this.injectStyles();
|
|
467
|
-
}
|
|
468
|
-
componentDidUpdate() {
|
|
469
|
-
this.disposeStyles();
|
|
470
|
-
this.injectStyles();
|
|
471
|
-
}
|
|
472
|
-
componentWillUnmount() {
|
|
473
|
-
this.disposeStyles();
|
|
474
|
-
}
|
|
475
|
-
injectStyles = () => {
|
|
476
|
-
const css = this.interpolateTemplate();
|
|
477
|
-
if (css.trim()) {
|
|
478
|
-
const styleResults = this.parseCSSToStyleResults(css);
|
|
479
|
-
// Use a special method for createGlobalStyle to distinguish from injectGlobal
|
|
480
|
-
const result = injector.injectCreateGlobalStyle(styleResults, {
|
|
481
|
-
root: this.props.root,
|
|
482
|
-
});
|
|
483
|
-
this.disposeFunction = result.dispose;
|
|
484
|
-
}
|
|
485
|
-
};
|
|
486
|
-
disposeStyles = () => {
|
|
487
|
-
if (this.disposeFunction) {
|
|
488
|
-
this.disposeFunction();
|
|
489
|
-
this.disposeFunction = null;
|
|
490
|
-
}
|
|
491
|
-
};
|
|
492
|
-
interpolateTemplate = () => {
|
|
493
|
-
let result = strings[0];
|
|
494
|
-
for (let i = 0; i < interpolations.length; i++) {
|
|
495
|
-
const interpolation = interpolations[i];
|
|
496
|
-
const value = typeof interpolation === 'function'
|
|
497
|
-
? interpolation(this.props)
|
|
498
|
-
: interpolation;
|
|
499
|
-
result += String(value) + strings[i + 1];
|
|
500
|
-
}
|
|
501
|
-
return result;
|
|
502
|
-
};
|
|
503
|
-
parseCSSToStyleResults = (css) => {
|
|
504
|
-
const rules = [];
|
|
505
|
-
// Enhanced CSS parser for global styles that handles nested rules
|
|
506
|
-
this.parseCSS(css, rules, [], '');
|
|
507
|
-
return rules;
|
|
508
|
-
};
|
|
509
|
-
parseCSS = (css, rules, atRuleStack, parentSelector = '') => {
|
|
510
|
-
// Remove both CSS and JavaScript-style comments
|
|
511
|
-
let cleanCSS = css.replace(/\/\*[\s\S]*?\*\//g, ''); // CSS comments
|
|
512
|
-
cleanCSS = cleanCSS.replace(/\/\/.*$/gm, ''); // JavaScript-style comments
|
|
513
|
-
let i = 0;
|
|
514
|
-
while (i < cleanCSS.length) {
|
|
515
|
-
// Skip whitespace
|
|
516
|
-
while (i < cleanCSS.length && /\s/.test(cleanCSS[i])) {
|
|
517
|
-
i++;
|
|
518
|
-
}
|
|
519
|
-
if (i >= cleanCSS.length)
|
|
520
|
-
break;
|
|
521
|
-
// Find the next selector or at-rule
|
|
522
|
-
let selectorStart = i;
|
|
523
|
-
let braceDepth = 0;
|
|
524
|
-
let inString = false;
|
|
525
|
-
let stringChar = '';
|
|
526
|
-
// Find the opening brace
|
|
527
|
-
while (i < cleanCSS.length) {
|
|
528
|
-
const char = cleanCSS[i];
|
|
529
|
-
if (inString) {
|
|
530
|
-
if (char === stringChar && cleanCSS[i - 1] !== '\\') {
|
|
531
|
-
inString = false;
|
|
532
|
-
}
|
|
533
|
-
}
|
|
534
|
-
else {
|
|
535
|
-
if (char === '"' || char === "'") {
|
|
536
|
-
inString = true;
|
|
537
|
-
stringChar = char;
|
|
538
|
-
}
|
|
539
|
-
else if (char === '{') {
|
|
540
|
-
braceDepth++;
|
|
541
|
-
if (braceDepth === 1) {
|
|
542
|
-
break; // Found the opening brace
|
|
543
|
-
}
|
|
544
|
-
}
|
|
545
|
-
else if (char === '}') {
|
|
546
|
-
braceDepth--;
|
|
547
|
-
}
|
|
548
|
-
}
|
|
549
|
-
i++;
|
|
550
|
-
}
|
|
551
|
-
if (i >= cleanCSS.length)
|
|
552
|
-
break;
|
|
553
|
-
const selectorPart = cleanCSS.substring(selectorStart, i).trim();
|
|
554
|
-
i++; // Skip the opening brace
|
|
555
|
-
// Find the matching closing brace
|
|
556
|
-
const contentStart = i;
|
|
557
|
-
braceDepth = 1;
|
|
558
|
-
inString = false;
|
|
559
|
-
while (i < cleanCSS.length && braceDepth > 0) {
|
|
560
|
-
const char = cleanCSS[i];
|
|
561
|
-
if (inString) {
|
|
562
|
-
if (char === stringChar && cleanCSS[i - 1] !== '\\') {
|
|
563
|
-
inString = false;
|
|
564
|
-
}
|
|
565
|
-
}
|
|
566
|
-
else {
|
|
567
|
-
if (char === '"' || char === "'") {
|
|
568
|
-
inString = true;
|
|
569
|
-
stringChar = char;
|
|
570
|
-
}
|
|
571
|
-
else if (char === '{') {
|
|
572
|
-
braceDepth++;
|
|
573
|
-
}
|
|
574
|
-
else if (char === '}') {
|
|
575
|
-
braceDepth--;
|
|
576
|
-
}
|
|
577
|
-
}
|
|
578
|
-
i++;
|
|
579
|
-
}
|
|
580
|
-
const content = cleanCSS.substring(contentStart, i - 1).trim();
|
|
581
|
-
// Check if this is an at-rule
|
|
582
|
-
if (selectorPart.startsWith('@')) {
|
|
583
|
-
const atSelector = selectorPart.trim();
|
|
584
|
-
// Leaf at-rules that contain declarations directly and should be emitted as-is
|
|
585
|
-
const leafAtRules = [
|
|
586
|
-
'@font-face',
|
|
587
|
-
'@property',
|
|
588
|
-
'@page',
|
|
589
|
-
'@counter-style',
|
|
590
|
-
'@font-feature-values',
|
|
591
|
-
'@font-palette-values',
|
|
592
|
-
'@color-profile',
|
|
593
|
-
];
|
|
594
|
-
const isLeafAtRule = leafAtRules.some((prefix) => atSelector.startsWith(prefix));
|
|
595
|
-
if (isLeafAtRule) {
|
|
596
|
-
// Emit the at-rule with its declarations directly
|
|
597
|
-
if (content.trim()) {
|
|
598
|
-
rules.push({
|
|
599
|
-
selector: atSelector,
|
|
600
|
-
declarations: content,
|
|
601
|
-
atRules: atRuleStack.length > 0 ? [...atRuleStack] : undefined,
|
|
602
|
-
});
|
|
603
|
-
}
|
|
604
|
-
}
|
|
605
|
-
else {
|
|
606
|
-
// Wrapper at-rule (e.g., @media, @supports, @keyframes) — parse its content
|
|
607
|
-
const newAtRuleStack = [...atRuleStack, atSelector];
|
|
608
|
-
this.parseCSS(content, rules, newAtRuleStack, parentSelector);
|
|
609
|
-
}
|
|
610
|
-
}
|
|
611
|
-
else {
|
|
612
|
-
// Check if content contains nested rules (has { and })
|
|
613
|
-
if (content.includes('{') && content.includes('}')) {
|
|
614
|
-
// This selector has nested rules, parse them
|
|
615
|
-
const { declarations, nestedCSS } = this.separateDeclarationsAndNested(content);
|
|
616
|
-
// Process the selector (handle & syntax)
|
|
617
|
-
const processedSelector = this.processSelector(selectorPart, parentSelector);
|
|
618
|
-
// Add declarations if any
|
|
619
|
-
if (declarations.trim()) {
|
|
620
|
-
rules.push({
|
|
621
|
-
selector: processedSelector,
|
|
622
|
-
declarations: declarations.trim(),
|
|
623
|
-
atRules: atRuleStack.length > 0 ? [...atRuleStack] : undefined,
|
|
624
|
-
});
|
|
625
|
-
}
|
|
626
|
-
// Parse nested CSS with current selector as parent
|
|
627
|
-
if (nestedCSS.trim()) {
|
|
628
|
-
this.parseCSS(nestedCSS, rules, atRuleStack, processedSelector);
|
|
629
|
-
}
|
|
630
|
-
}
|
|
631
|
-
else {
|
|
632
|
-
// This is a regular selector with only declarations
|
|
633
|
-
const processedSelector = this.processSelector(selectorPart, parentSelector);
|
|
634
|
-
if (content && processedSelector) {
|
|
635
|
-
rules.push({
|
|
636
|
-
selector: processedSelector,
|
|
637
|
-
declarations: content,
|
|
638
|
-
atRules: atRuleStack.length > 0 ? [...atRuleStack] : undefined,
|
|
639
|
-
});
|
|
640
|
-
}
|
|
641
|
-
}
|
|
642
|
-
}
|
|
643
|
-
}
|
|
644
|
-
};
|
|
645
|
-
separateDeclarationsAndNested = (content) => {
|
|
646
|
-
const declarations = [];
|
|
647
|
-
const nestedRules = [];
|
|
648
|
-
let i = 0;
|
|
649
|
-
let currentDeclaration = '';
|
|
650
|
-
while (i < content.length) {
|
|
651
|
-
const char = content[i];
|
|
652
|
-
if (char === '{') {
|
|
653
|
-
// Found start of nested rule, find the selector before it
|
|
654
|
-
let selectorStart = currentDeclaration.lastIndexOf(';') + 1;
|
|
655
|
-
if (selectorStart === 0 && currentDeclaration.trim()) {
|
|
656
|
-
// No semicolon found, this might be the first rule
|
|
657
|
-
selectorStart = 0;
|
|
658
|
-
}
|
|
659
|
-
const beforeBrace = currentDeclaration.substring(0, selectorStart);
|
|
660
|
-
const selector = currentDeclaration.substring(selectorStart).trim();
|
|
661
|
-
if (beforeBrace.trim()) {
|
|
662
|
-
declarations.push(beforeBrace.trim());
|
|
663
|
-
}
|
|
664
|
-
// Find the matching closing brace
|
|
665
|
-
let braceDepth = 1;
|
|
666
|
-
let ruleStart = i + 1;
|
|
667
|
-
i++; // Skip opening brace
|
|
668
|
-
while (i < content.length && braceDepth > 0) {
|
|
669
|
-
if (content[i] === '{')
|
|
670
|
-
braceDepth++;
|
|
671
|
-
else if (content[i] === '}')
|
|
672
|
-
braceDepth--;
|
|
673
|
-
i++;
|
|
674
|
-
}
|
|
675
|
-
const ruleContent = content.substring(ruleStart, i - 1);
|
|
676
|
-
nestedRules.push(`${selector} { ${ruleContent} }`);
|
|
677
|
-
currentDeclaration = '';
|
|
678
|
-
}
|
|
679
|
-
else {
|
|
680
|
-
currentDeclaration += char;
|
|
681
|
-
i++;
|
|
682
|
-
}
|
|
683
|
-
}
|
|
684
|
-
// Add remaining declarations
|
|
685
|
-
if (currentDeclaration.trim()) {
|
|
686
|
-
declarations.push(currentDeclaration.trim());
|
|
687
|
-
}
|
|
688
|
-
return {
|
|
689
|
-
declarations: declarations.join(' '),
|
|
690
|
-
nestedCSS: nestedRules.join('\n'),
|
|
691
|
-
};
|
|
692
|
-
};
|
|
693
|
-
processSelector = (selector, parentSelector) => {
|
|
694
|
-
if (!parentSelector) {
|
|
695
|
-
return selector;
|
|
696
|
-
}
|
|
697
|
-
// Handle & syntax - replace & with parent selector
|
|
698
|
-
if (selector.includes('&')) {
|
|
699
|
-
return selector.replace(/&/g, parentSelector);
|
|
700
|
-
}
|
|
701
|
-
// If no &, treat as descendant selector
|
|
702
|
-
return `${parentSelector} ${selector}`;
|
|
703
|
-
};
|
|
704
|
-
render() {
|
|
705
|
-
return null;
|
|
706
|
-
}
|
|
707
|
-
}
|
|
708
|
-
return GlobalStyleComponent;
|
|
709
|
-
}
|
|
710
449
|
}
|
|
711
450
|
|
|
712
451
|
|