@cube-dev/ui-kit 0.0.0-canary-53fd4cf → 0.0.0-canary-897ecee
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/_internal/hooks/index.js +1 -1
- package/es/_internal/hooks/use-chained-callback.js +1 -1
- package/es/_internal/hooks/use-debounced-value.js +1 -1
- package/es/_internal/hooks/use-deprecation-warning.js +1 -1
- package/es/_internal/hooks/use-effect-once.js +1 -1
- package/es/_internal/hooks/use-event.js +1 -1
- package/es/_internal/hooks/use-is-first-render.js +1 -1
- package/es/_internal/hooks/use-sync-ref.js +1 -1
- package/es/_internal/hooks/use-timer/index.js +1 -1
- package/es/_internal/hooks/use-timer/timer.js +1 -1
- package/es/_internal/hooks/use-timer/use-timer.js +1 -1
- package/es/_internal/hooks/use-update-effect.js +1 -1
- package/es/_internal/hooks/use-warn.js +1 -1
- package/es/_internal/index.js +1 -1
- package/es/components/Block.js +1 -1
- package/es/components/CollectionItem.js +1 -1
- package/es/components/GlobalStyles.js +1 -1
- package/es/components/GridProvider.js +1 -1
- package/es/components/HiddenInput.js +1 -1
- package/es/components/OpenTrasition.js +1 -1
- package/es/components/Root.js +1 -1
- package/es/components/actions/Action/Action.js +1 -1
- package/es/components/actions/Button/Button.js +1 -1
- package/es/components/actions/Button/index.js +1 -1
- package/es/components/actions/ButtonGroup/ButtonGroup.js +1 -1
- package/es/components/actions/CommandMenu/CommandMenu.js +1 -1
- package/es/components/actions/CommandMenu/index.js +1 -1
- package/es/components/actions/CommandMenu/styled.js +1 -1
- package/es/components/actions/ItemAction/ItemAction.js +1 -1
- package/es/components/actions/ItemAction/index.js +1 -1
- package/es/components/actions/ItemActionContext.js +1 -1
- package/es/components/actions/ItemButton/ItemButton.js +1 -1
- package/es/components/actions/ItemButton/index.js +1 -1
- package/es/components/actions/Link/Link.js +1 -1
- package/es/components/actions/Menu/Menu.js +1 -1
- package/es/components/actions/Menu/MenuItem.js +1 -1
- package/es/components/actions/Menu/MenuSection.js +1 -1
- package/es/components/actions/Menu/MenuTrigger.js +1 -1
- package/es/components/actions/Menu/SubMenuTrigger.js +1 -1
- package/es/components/actions/Menu/SubmenuTriggerContext.js +1 -1
- package/es/components/actions/Menu/context.js +1 -1
- package/es/components/actions/Menu/index.js +1 -1
- package/es/components/actions/Menu/styled.js +1 -1
- package/es/components/actions/index.js +1 -1
- package/es/components/actions/use-action.js +1 -1
- package/es/components/actions/use-anchored-menu.js +1 -1
- package/es/components/actions/use-context-menu.js +1 -1
- package/es/components/content/ActiveZone/ActiveZone.js +1 -1
- package/es/components/content/Alert/Alert.js +1 -1
- package/es/components/content/Alert/index.js +1 -1
- package/es/components/content/Alert/types.js +1 -1
- package/es/components/content/Alert/use-alert.js +1 -1
- package/es/components/content/Avatar/Avatar.js +1 -1
- package/es/components/content/Badge/Badge.js +1 -1
- package/es/components/content/Card/Card.js +1 -1
- package/es/components/content/Content.js +1 -1
- package/es/components/content/CopyPasteBlock/CopyPasteBlock.js +1 -1
- package/es/components/content/CopyPasteBlock/index.js +1 -1
- package/es/components/content/CopySnippet/CopySnippet.js +1 -1
- package/es/components/content/CopySnippet/index.js +1 -1
- package/es/components/content/Disclosure/Disclosure.js +1 -1
- package/es/components/content/Disclosure/index.js +1 -1
- package/es/components/content/Divider.js +1 -1
- package/es/components/content/Footer.js +1 -1
- package/es/components/content/Header.js +1 -1
- package/es/components/content/HotKeys/HotKeys.js +1 -1
- package/es/components/content/HotKeys/index.js +1 -1
- package/es/components/content/Item/Item.js +11 -6
- 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 +13 -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 +2 -32
- 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 +2 -9
- 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/Tabs/Tabs.js +918 -0
- package/es/components/navigation/Tabs/index.js +10 -0
- package/es/components/navigation/index.js +10 -0
- package/es/components/organisms/FileTabs/FileTabs.js +1 -1
- package/es/components/organisms/StatsCard/StatsCard.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/SemanticQueryIcon.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/index.js +1 -1
- package/es/icons/wrap-icon.js +1 -1
- package/es/index.js +3 -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/stories/playground/PlaygroundEditor.js +1 -1
- package/es/stories/playground/PlaygroundLayout.js +1 -1
- package/es/stories/playground/PlaygroundOutput.js +1 -1
- package/es/stories/playground/PlaygroundPreview.js +1 -1
- package/es/stories/playground/components/Button.js +1 -1
- package/es/stories/playground/components/Card.js +1 -1
- package/es/stories/playground/components/ScrollProgress.js +1 -1
- package/es/stories/playground/examples.js +1 -1
- package/es/tasty/chunks/cacheKey.js +1 -1
- package/es/tasty/chunks/definitions.js +1 -1
- package/es/tasty/chunks/index.js +1 -1
- package/es/tasty/chunks/renderChunk.js +1 -1
- package/es/tasty/config.js +1 -1
- package/es/tasty/debug.js +1 -1
- package/es/tasty/hooks/index.js +3 -1
- package/es/tasty/hooks/useGlobalStyles.js +1 -1
- package/es/tasty/hooks/useKeyframes.js +65 -0
- package/es/tasty/hooks/useProperty.js +93 -0
- package/es/tasty/hooks/useRawCSS.js +1 -1
- package/es/tasty/hooks/useStyles.js +1 -1
- package/es/tasty/index.js +2 -2
- package/es/tasty/injector/index.js +39 -1
- package/es/tasty/injector/injector.js +1 -1
- package/es/tasty/injector/sheet-manager.js +1 -1
- package/es/tasty/injector/types.js +1 -1
- package/es/tasty/keyframes/index.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/plugins/index.js +1 -1
- package/es/tasty/plugins/okhsl-plugin.js +1 -1
- package/es/tasty/plugins/types.js +1 -1
- package/es/tasty/states/index.js +1 -1
- package/es/tasty/static/index.js +1 -1
- package/es/tasty/static/tastyStatic.js +1 -1
- package/es/tasty/static/types.js +1 -1
- package/es/tasty/styles/align.js +1 -1
- package/es/tasty/styles/border.js +1 -1
- package/es/tasty/styles/boxShadow.combinator.js +1 -1
- package/es/tasty/styles/color.js +1 -1
- package/es/tasty/styles/createStyle.js +1 -1
- package/es/tasty/styles/dimension.js +1 -1
- package/es/tasty/styles/display.js +1 -1
- package/es/tasty/styles/fade.js +1 -1
- package/es/tasty/styles/fill.js +1 -1
- package/es/tasty/styles/flow.js +1 -1
- package/es/tasty/styles/font.js +1 -1
- package/es/tasty/styles/fontStyle.js +1 -1
- package/es/tasty/styles/gap.js +1 -1
- package/es/tasty/styles/groupRadius.js +1 -1
- package/es/tasty/styles/height.js +1 -1
- package/es/tasty/styles/index.js +1 -1
- package/es/tasty/styles/inset.js +1 -1
- package/es/tasty/styles/justify.js +1 -1
- package/es/tasty/styles/list.js +1 -1
- package/es/tasty/styles/margin.js +1 -1
- package/es/tasty/styles/outline.js +1 -1
- package/es/tasty/styles/padding.js +1 -1
- package/es/tasty/styles/place.js +1 -1
- package/es/tasty/styles/predefined.js +1 -1
- package/es/tasty/styles/preset.js +1 -1
- package/es/tasty/styles/radius.js +1 -1
- package/es/tasty/styles/reset.js +1 -1
- package/es/tasty/styles/scrollbar.js +1 -1
- package/es/tasty/styles/shadow.js +1 -1
- package/es/tasty/styles/styledScrollbar.js +1 -1
- package/es/tasty/styles/transition.js +1 -1
- package/es/tasty/styles/types.js +1 -1
- package/es/tasty/styles/width.js +1 -1
- package/es/tasty/tasty.js +94 -113
- package/es/tasty/types.js +1 -1
- package/es/tasty/utils/cache-wrapper.js +1 -1
- package/es/tasty/utils/case-converter.js +1 -1
- package/es/tasty/utils/colors.js +1 -1
- package/es/tasty/utils/dotize.js +1 -1
- package/es/tasty/utils/filterBaseProps.js +1 -1
- package/es/tasty/utils/getDisplayName.js +1 -1
- package/es/tasty/utils/isDevEnv.js +1 -1
- package/es/tasty/utils/mergeStyles.js +1 -1
- package/es/tasty/utils/modAttrs.js +1 -1
- package/es/tasty/utils/processTokens.js +1 -1
- package/es/tasty/utils/string.js +1 -1
- package/es/tasty/utils/styles.js +1 -1
- package/es/tasty/utils/typography.js +1 -1
- package/es/tasty/utils/warnings.js +1 -1
- package/es/tasty/zero/babel.js +1 -1
- package/es/tasty/zero/css-writer.js +1 -1
- package/es/tasty/zero/extractor.js +1 -1
- package/es/tasty/zero/index.js +1 -1
- package/es/tasty/zero/next.js +1 -1
- package/es/tokens/base.js +3 -1
- package/es/tokens/colors.js +1 -1
- package/es/tokens/index.js +1 -1
- package/es/tokens/layout.js +1 -1
- package/es/tokens/shadows.js +1 -1
- package/es/tokens/sizes.js +1 -1
- package/es/tokens/spacing.js +1 -1
- package/es/tokens/typography.js +1 -1
- package/es/utils/ResizeSensor.js +1 -1
- package/es/utils/index.js +1 -1
- package/es/utils/modules.js +1 -1
- package/es/utils/promise.js +1 -1
- package/es/utils/raf.js +1 -1
- package/es/utils/random.js +1 -1
- package/es/utils/range.js +1 -1
- package/es/utils/react/RenderCache.js +1 -1
- package/es/utils/react/Slots.js +1 -1
- package/es/utils/react/chain.js +1 -1
- package/es/utils/react/forwardRefWithGenerics.js +1 -1
- package/es/utils/react/index.js +1 -1
- package/es/utils/react/interactions.js +1 -1
- package/es/utils/react/isTextOnly.js +1 -1
- package/es/utils/react/mapProps.js +1 -1
- package/es/utils/react/mergeProps.js +1 -1
- package/es/utils/react/nullableValue.js +1 -1
- package/es/utils/react/resolveIcon.js +1 -1
- package/es/utils/react/sharedStore.js +1 -1
- package/es/utils/react/useCombinedRefs.js +1 -1
- package/es/utils/react/useControlledFocusVisible.js +1 -1
- package/es/utils/react/useEventBus.js +1 -1
- package/es/utils/react/useId.js +1 -1
- package/es/utils/react/useIsDarwin.js +1 -1
- package/es/utils/react/useKeySymbols.js +1 -1
- package/es/utils/react/useLayoutEffect.js +1 -1
- package/es/utils/react/useLocalStorage.js +1 -1
- package/es/utils/react/useQaProps.js +1 -1
- package/es/utils/react/useViewportSize.js +1 -1
- package/es/utils/react/wrapNodeIfPlain.js +1 -1
- package/es/utils/tree.js +1 -1
- package/es/utils/warnings.js +1 -1
- package/es/version.js +2 -2
- package/package.json +1 -1
- package/types/components/content/Item/Item.d.ts +7 -0
- package/types/components/content/Layout/hooks/useTinyScrollbar.d.ts +6 -0
- package/types/components/navigation/Tabs/Tabs.d.ts +235 -0
- package/types/components/navigation/Tabs/index.d.ts +2 -0
- package/types/components/navigation/index.d.ts +2 -0
- package/types/index.d.ts +1 -0
- package/types/tasty/hooks/index.d.ts +3 -0
- package/types/tasty/hooks/useKeyframes.d.ts +52 -0
- package/types/tasty/hooks/useProperty.d.ts +69 -0
- package/types/tasty/index.d.ts +2 -2
- package/types/tasty/injector/index.d.ts +56 -0
package/es/tokens/sizes.js
CHANGED
package/es/tokens/spacing.js
CHANGED
package/es/tokens/typography.js
CHANGED
package/es/utils/ResizeSensor.js
CHANGED
package/es/utils/index.js
CHANGED
package/es/utils/modules.js
CHANGED
package/es/utils/promise.js
CHANGED
package/es/utils/raf.js
CHANGED
package/es/utils/random.js
CHANGED
package/es/utils/range.js
CHANGED
package/es/utils/react/Slots.js
CHANGED
package/es/utils/react/chain.js
CHANGED
package/es/utils/react/index.js
CHANGED
package/es/utils/react/useId.js
CHANGED
package/es/utils/tree.js
CHANGED
package/es/utils/warnings.js
CHANGED
package/es/version.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
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-897ecee
|
|
5
5
|
* Released under the MIT license.
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
|
-
export const VERSION = '0.0.0-canary-
|
|
8
|
+
export const VERSION = '0.0.0-canary-897ecee';
|
|
9
9
|
if (typeof window !== 'undefined') {
|
|
10
10
|
const version = VERSION;
|
|
11
11
|
// Ensure CubeUIKit is defined on window in a way bundlers recognize
|
package/package.json
CHANGED
|
@@ -17,6 +17,7 @@ export type ItemMods = Mods<{
|
|
|
17
17
|
'has-actions'?: boolean;
|
|
18
18
|
'has-actions-content'?: boolean;
|
|
19
19
|
'show-actions-on-hover'?: boolean;
|
|
20
|
+
'preserve-actions-space'?: boolean;
|
|
20
21
|
checkbox?: boolean;
|
|
21
22
|
disabled?: boolean;
|
|
22
23
|
selected?: boolean;
|
|
@@ -50,6 +51,12 @@ export interface CubeItemProps extends BaseProps, ContainerStyleProps {
|
|
|
50
51
|
* Uses opacity transition for visual hiding while maintaining layout space.
|
|
51
52
|
*/
|
|
52
53
|
showActionsOnHover?: boolean;
|
|
54
|
+
/**
|
|
55
|
+
* When true, preserves the actions width when hidden (only changes opacity).
|
|
56
|
+
* Only applies when showActionsOnHover is true.
|
|
57
|
+
* @default false
|
|
58
|
+
*/
|
|
59
|
+
preserveActionsSpace?: boolean;
|
|
53
60
|
/**
|
|
54
61
|
* When true, disables focus on action buttons by setting tabIndex={-1}.
|
|
55
62
|
* @default true
|
|
@@ -15,5 +15,11 @@ export interface TinyScrollbarResult {
|
|
|
15
15
|
hasOverflowY: boolean;
|
|
16
16
|
hasOverflowX: boolean;
|
|
17
17
|
isScrolling: boolean;
|
|
18
|
+
/** Whether scroll is at the start edge (top for Y, left for X) */
|
|
19
|
+
isAtStartX: boolean;
|
|
20
|
+
isAtStartY: boolean;
|
|
21
|
+
/** Whether scroll is at the end edge (bottom for Y, right for X) */
|
|
22
|
+
isAtEndX: boolean;
|
|
23
|
+
isAtEndY: boolean;
|
|
18
24
|
}
|
|
19
25
|
export declare function useTinyScrollbar(ref: RefObject<HTMLElement | null>, enabled: boolean): TinyScrollbarResult;
|
|
@@ -0,0 +1,235 @@
|
|
|
1
|
+
import { Key } from '@react-types/shared';
|
|
2
|
+
import { ReactElement, ReactNode } from 'react';
|
|
3
|
+
import { BaseProps, Styles } from '../../../tasty';
|
|
4
|
+
import { CubeItemProps } from '../../content/Item';
|
|
5
|
+
/** Visual appearance type for tabs */
|
|
6
|
+
export type TabType = 'default' | 'panel' | 'radio';
|
|
7
|
+
/** Tab size options */
|
|
8
|
+
export type TabSize = 'medium' | 'large';
|
|
9
|
+
/** Common props for panel rendering behavior */
|
|
10
|
+
interface PanelBehaviorProps {
|
|
11
|
+
/** If true, panel is rendered but hidden when not active. */
|
|
12
|
+
prerender?: boolean;
|
|
13
|
+
/** If true, once visited the panel stays in DOM. */
|
|
14
|
+
keepMounted?: boolean;
|
|
15
|
+
}
|
|
16
|
+
/** Common props for QA attributes */
|
|
17
|
+
interface QAProps {
|
|
18
|
+
/** QA selector attribute. */
|
|
19
|
+
qa?: string;
|
|
20
|
+
/** Additional QA value attribute. */
|
|
21
|
+
qaVal?: string;
|
|
22
|
+
}
|
|
23
|
+
/** Props from CubeItemProps that don't apply to Tab */
|
|
24
|
+
type OmittedItemProps = 'id' | 'type' | 'size' | 'theme' | 'shape' | 'icon' | 'rightIcon' | 'prefix' | 'suffix' | 'description' | 'descriptionPlacement' | 'descriptionProps' | 'tooltip' | 'defaultTooltipPlacement' | 'hotkeys' | 'keyboardShortcutProps' | 'loadingSlot' | 'isLoading' | 'labelProps' | 'labelRef' | 'level' | 'highlight' | 'highlightCaseSensitive' | 'highlightStyles' | 'variant' | 'htmlType' | 'isSelected' | 'preserveActionsSpace' | 'disableActionsFocus' | 'actions' | 'showActionsOnHover';
|
|
25
|
+
/** Common styling props for tabs - inherits style props from CubeItemProps */
|
|
26
|
+
interface TabStyleProps extends Omit<CubeItemProps, OmittedItemProps> {
|
|
27
|
+
/** Tab size. Large uses `t2m` preset, medium uses `t3m`. */
|
|
28
|
+
size?: TabSize;
|
|
29
|
+
/** Visual appearance type. */
|
|
30
|
+
type?: TabType;
|
|
31
|
+
/** Whether to show actions only on hover. */
|
|
32
|
+
showActionsOnHover?: boolean;
|
|
33
|
+
}
|
|
34
|
+
export interface CubeTabsProps extends BaseProps, PanelBehaviorProps {
|
|
35
|
+
/** Controlled active tab key. When provided, component is controlled. */
|
|
36
|
+
activeKey?: Key;
|
|
37
|
+
/** Initial active tab key for uncontrolled mode. */
|
|
38
|
+
defaultActiveKey?: Key;
|
|
39
|
+
/**
|
|
40
|
+
* Visual appearance type for tabs.
|
|
41
|
+
* - `default` - Standard tabs with selection indicator below (default)
|
|
42
|
+
* - `panel` - Panel-style tabs with sharp edges and no gaps
|
|
43
|
+
* - `radio` - Radio button style for tab selection
|
|
44
|
+
* @default 'default'
|
|
45
|
+
*/
|
|
46
|
+
type?: TabType;
|
|
47
|
+
/** Tab size. Large uses `t2m` preset, medium uses `t3m`. */
|
|
48
|
+
size?: TabSize;
|
|
49
|
+
/** Accessible label for the tab list. */
|
|
50
|
+
label?: string;
|
|
51
|
+
/** Content rendered before the tab list. */
|
|
52
|
+
prefix?: ReactNode;
|
|
53
|
+
/** Content rendered after the tab list. */
|
|
54
|
+
suffix?: ReactNode;
|
|
55
|
+
/** Callback when active tab changes. */
|
|
56
|
+
onChange?: (key: Key) => void;
|
|
57
|
+
/** Callback when tab delete button is clicked. Presence enables delete buttons. */
|
|
58
|
+
onDelete?: (key: Key) => void;
|
|
59
|
+
/** Callback when a tab title is changed. Enables title editing on tabs with isEditable. */
|
|
60
|
+
onTitleChange?: (key: Key, newTitle: string) => void;
|
|
61
|
+
/** Whether to show tab actions only on hover. Can be overridden per-tab. */
|
|
62
|
+
showActionsOnHover?: boolean;
|
|
63
|
+
/** Custom tasty styles for the tab bar container. */
|
|
64
|
+
styles?: Styles;
|
|
65
|
+
/** QA selector attribute. */
|
|
66
|
+
qa?: string;
|
|
67
|
+
/** Tab components or Tabs.List with Tabs.Panel. */
|
|
68
|
+
children?: ReactNode;
|
|
69
|
+
/**
|
|
70
|
+
* Functional content renderer for optimized lazy evaluation.
|
|
71
|
+
* When provided, panel content is only evaluated for the active tab,
|
|
72
|
+
* while inactive tabs use cached content. This prevents expensive
|
|
73
|
+
* re-renders of tab content on every parent render.
|
|
74
|
+
*
|
|
75
|
+
* Use with tabs that have no children for maximum optimization.
|
|
76
|
+
*
|
|
77
|
+
* @param key - The key of the tab to render content for
|
|
78
|
+
* @returns Panel content for the given tab
|
|
79
|
+
*
|
|
80
|
+
* @example
|
|
81
|
+
* ```tsx
|
|
82
|
+
* <Tabs
|
|
83
|
+
* renderPanel={(key) => {
|
|
84
|
+
* switch (key) {
|
|
85
|
+
* case 'tab1': return <ExpensiveComponent />;
|
|
86
|
+
* case 'tab2': return <AnotherExpensive />;
|
|
87
|
+
* default: return null;
|
|
88
|
+
* }
|
|
89
|
+
* }}
|
|
90
|
+
* >
|
|
91
|
+
* <Tab key="tab1" title="Tab 1" />
|
|
92
|
+
* <Tab key="tab2" title="Tab 2" />
|
|
93
|
+
* </Tabs>
|
|
94
|
+
* ```
|
|
95
|
+
*/
|
|
96
|
+
renderPanel?: (key: Key) => ReactNode;
|
|
97
|
+
/**
|
|
98
|
+
* Cache keys for individual panels. Enables caching for specified panels.
|
|
99
|
+
*
|
|
100
|
+
* By default (without cache keys), panels re-render on every Tabs render.
|
|
101
|
+
* When a panel has a non-undefined cache key defined, its content is cached
|
|
102
|
+
* and reused until the cache key changes.
|
|
103
|
+
*
|
|
104
|
+
* **Important:**
|
|
105
|
+
* - Cache keys must be primitive values (string, number, boolean, null).
|
|
106
|
+
* - Objects/arrays will cause cache misses on every render (reference comparison).
|
|
107
|
+
* - Symbol tab keys are not supported for caching (use string keys instead).
|
|
108
|
+
* - Setting a key to `undefined` is the same as not having it (no caching).
|
|
109
|
+
*
|
|
110
|
+
* @example
|
|
111
|
+
* ```tsx
|
|
112
|
+
* // Enable caching for specific panels with their dependencies as cache keys
|
|
113
|
+
* <Tabs
|
|
114
|
+
* renderPanel={(key) => <Panel data={data[key]} />}
|
|
115
|
+
* panelCacheKeys={{
|
|
116
|
+
* tab1: data.tab1.version, // Cached, invalidates when version changes
|
|
117
|
+
* tab2: data.tab2.version, // Cached, invalidates when version changes
|
|
118
|
+
* // tab3 has no cache key - re-renders on every Tabs render
|
|
119
|
+
* }}
|
|
120
|
+
* />
|
|
121
|
+
* ```
|
|
122
|
+
*/
|
|
123
|
+
panelCacheKeys?: Record<string | number, string | number | boolean | null | undefined>;
|
|
124
|
+
}
|
|
125
|
+
export interface CubeTabProps extends TabStyleProps, PanelBehaviorProps {
|
|
126
|
+
/**
|
|
127
|
+
* Unique identifier for the tab. Used for activeKey matching.
|
|
128
|
+
* Auto-injected from the React `key` prop (converted to string).
|
|
129
|
+
* Note: All keys are internally converted to strings for React Aria compatibility.
|
|
130
|
+
*/
|
|
131
|
+
id?: string;
|
|
132
|
+
/** Content displayed in the tab button. */
|
|
133
|
+
title: ReactNode;
|
|
134
|
+
/** Panel content rendered when tab is active. */
|
|
135
|
+
children?: ReactNode;
|
|
136
|
+
/** Disables the tab (cannot be selected). */
|
|
137
|
+
isDisabled?: boolean;
|
|
138
|
+
/** Actions to render in the tab (e.g., icons, buttons). Rendered before delete action if tab is deletable. */
|
|
139
|
+
actions?: ReactNode;
|
|
140
|
+
/** Whether the tab title can be edited. Requires onTitleChange on Tabs or Tab. */
|
|
141
|
+
isEditable?: boolean;
|
|
142
|
+
/** Callback when this tab's title is changed. Overrides parent's onTitleChange. */
|
|
143
|
+
onTitleChange?: (newTitle: string) => void;
|
|
144
|
+
}
|
|
145
|
+
export interface CubeTabPanelProps extends PanelBehaviorProps, QAProps {
|
|
146
|
+
/**
|
|
147
|
+
* Panel identifier. Must match a Tab's id.
|
|
148
|
+
* Auto-injected from the React `key` prop (converted to string).
|
|
149
|
+
*/
|
|
150
|
+
id?: string;
|
|
151
|
+
/** Panel content. */
|
|
152
|
+
children?: ReactNode;
|
|
153
|
+
/** Custom tasty styles for the panel container. */
|
|
154
|
+
styles?: Styles;
|
|
155
|
+
}
|
|
156
|
+
export interface CubeTabListProps {
|
|
157
|
+
/** Tab components. */
|
|
158
|
+
children?: ReactNode;
|
|
159
|
+
}
|
|
160
|
+
/** Ref API for programmatic control of Tabs component */
|
|
161
|
+
export interface CubeTabsRef {
|
|
162
|
+
/** The root DOM element of the Tabs component */
|
|
163
|
+
element: HTMLDivElement | null;
|
|
164
|
+
/** Start editing a tab's title by its key */
|
|
165
|
+
startEditing: (key: Key) => void;
|
|
166
|
+
/** Cancel the current editing session */
|
|
167
|
+
cancelEditing: () => void;
|
|
168
|
+
}
|
|
169
|
+
declare function Tab(_props: CubeTabProps): ReactElement | null;
|
|
170
|
+
declare namespace Tab {
|
|
171
|
+
var displayName: string;
|
|
172
|
+
}
|
|
173
|
+
declare function TabPanel(_props: CubeTabPanelProps): ReactElement | null;
|
|
174
|
+
declare namespace TabPanel {
|
|
175
|
+
var displayName: string;
|
|
176
|
+
}
|
|
177
|
+
declare function TabList(_props: CubeTabListProps): ReactElement | null;
|
|
178
|
+
declare namespace TabList {
|
|
179
|
+
var displayName: string;
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* Tabs component for organizing content into multiple panels.
|
|
183
|
+
* Built with React Aria for full accessibility support.
|
|
184
|
+
*
|
|
185
|
+
* **Note:** Tab keys are internally converted to strings for React Aria compatibility.
|
|
186
|
+
* When using `activeKey`, `onChange`, etc., be aware that numeric keys will be
|
|
187
|
+
* converted to their string equivalents.
|
|
188
|
+
*
|
|
189
|
+
* @example
|
|
190
|
+
* // Simple usage
|
|
191
|
+
* <Tabs defaultActiveKey="tab1">
|
|
192
|
+
* <Tab key="tab1" title="Tab 1">Content 1</Tab>
|
|
193
|
+
* <Tab key="tab2" title="Tab 2">Content 2</Tab>
|
|
194
|
+
* </Tabs>
|
|
195
|
+
*
|
|
196
|
+
* @example
|
|
197
|
+
* // Tabs-only (no panels)
|
|
198
|
+
* <Tabs activeKey={activeTab} onChange={setActiveTab}>
|
|
199
|
+
* <Tab key="overview" title="Overview" />
|
|
200
|
+
* <Tab key="settings" title="Settings" />
|
|
201
|
+
* </Tabs>
|
|
202
|
+
*
|
|
203
|
+
* @example
|
|
204
|
+
* // Explicit panels
|
|
205
|
+
* <Tabs defaultActiveKey="tab1">
|
|
206
|
+
* <Tabs.List>
|
|
207
|
+
* <Tab key="tab1" title="Tab 1" />
|
|
208
|
+
* <Tab key="tab2" title="Tab 2" />
|
|
209
|
+
* </Tabs.List>
|
|
210
|
+
* <Tabs.Panel key="tab1">Content 1</Tabs.Panel>
|
|
211
|
+
* <Tabs.Panel key="tab2">Content 2</Tabs.Panel>
|
|
212
|
+
* </Tabs>
|
|
213
|
+
*
|
|
214
|
+
* @example
|
|
215
|
+
* // Optimized lazy rendering with renderPanel
|
|
216
|
+
* <Tabs
|
|
217
|
+
* defaultActiveKey="tab1"
|
|
218
|
+
* renderPanel={(key) => {
|
|
219
|
+
* switch (key) {
|
|
220
|
+
* case 'tab1': return <ExpensiveComponent />;
|
|
221
|
+
* case 'tab2': return <AnotherExpensive />;
|
|
222
|
+
* default: return null;
|
|
223
|
+
* }
|
|
224
|
+
* }}
|
|
225
|
+
* >
|
|
226
|
+
* <Tab key="tab1" title="Tab 1" />
|
|
227
|
+
* <Tab key="tab2" title="Tab 2" />
|
|
228
|
+
* </Tabs>
|
|
229
|
+
*/
|
|
230
|
+
export declare const Tabs: import("react").ForwardRefExoticComponent<CubeTabsProps & import("react").RefAttributes<CubeTabsRef>> & {
|
|
231
|
+
Tab: typeof Tab;
|
|
232
|
+
List: typeof TabList;
|
|
233
|
+
Panel: typeof TabPanel;
|
|
234
|
+
};
|
|
235
|
+
export { Tab, TabList, TabPanel };
|