@cube-dev/ui-kit 0.121.0 → 0.121.2
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/dist/CHANGELOG.md +12 -0
- package/dist/_internal/hooks/use-chained-callback.js +1 -1
- package/dist/_internal/hooks/use-debounced-value.js +1 -1
- package/dist/_internal/hooks/use-deprecation-warning.js +1 -1
- package/dist/_internal/hooks/use-event.js +1 -1
- package/dist/_internal/hooks/use-is-first-render.js +1 -1
- package/dist/_internal/hooks/use-sync-ref.js +1 -1
- package/dist/_internal/hooks/use-timer/timer.js +1 -1
- package/dist/_internal/hooks/use-timer/use-timer.js +1 -1
- package/dist/_internal/hooks/use-warn.js +1 -1
- package/dist/components/Block.js +1 -1
- package/dist/components/CollectionItem.js +1 -1
- package/dist/components/GlobalStyles.js +1 -1
- package/dist/components/GridProvider.js +1 -1
- package/dist/components/HiddenInput.js +1 -1
- package/dist/components/Root.js +1 -1
- package/dist/components/actions/Action/Action.js +1 -1
- package/dist/components/actions/Banner/Banner.js +1 -1
- package/dist/components/actions/Button/Button.js +1 -1
- package/dist/components/actions/ButtonGroup/ButtonGroup.js +1 -1
- package/dist/components/actions/ButtonSplit/ButtonSplit.js +1 -1
- package/dist/components/actions/ButtonSplit/context.js +1 -1
- package/dist/components/actions/CommandMenu/CommandMenu.js +1 -1
- package/dist/components/actions/CommandMenu/styled.js +1 -1
- package/dist/components/actions/ItemAction/ItemAction.js +1 -1
- package/dist/components/actions/ItemActionContext.js +1 -1
- package/dist/components/actions/ItemButton/ItemButton.js +1 -1
- package/dist/components/actions/Link/Link.js +1 -1
- package/dist/components/actions/Menu/Menu.js +1 -1
- package/dist/components/actions/Menu/MenuItem.js +1 -1
- package/dist/components/actions/Menu/MenuSection.js +1 -1
- package/dist/components/actions/Menu/MenuTrigger.js +1 -1
- package/dist/components/actions/Menu/SubMenuTrigger.js +1 -1
- package/dist/components/actions/Menu/SubmenuTriggerContext.js +1 -1
- package/dist/components/actions/Menu/context.js +1 -1
- package/dist/components/actions/Menu/styled.js +1 -1
- package/dist/components/actions/index.js +1 -1
- package/dist/components/actions/use-action.js +1 -1
- package/dist/components/actions/use-anchored-menu.js +1 -1
- package/dist/components/actions/use-context-menu.js +1 -1
- package/dist/components/content/ActiveZone/ActiveZone.js +1 -1
- package/dist/components/content/Alert/Alert.js +1 -1
- package/dist/components/content/Alert/use-alert.js +1 -1
- package/dist/components/content/Avatar/Avatar.js +1 -1
- package/dist/components/content/Badge/Badge.js +1 -1
- package/dist/components/content/Card/Card.js +1 -1
- package/dist/components/content/Content.js +1 -1
- package/dist/components/content/CopyPasteBlock/CopyPasteBlock.js +1 -1
- package/dist/components/content/CopySnippet/CopySnippet.js +1 -1
- package/dist/components/content/Disclosure/Disclosure.js +1 -1
- package/dist/components/content/Divider.js +1 -1
- package/dist/components/content/Footer.js +1 -1
- package/dist/components/content/Header.js +1 -1
- package/dist/components/content/HotKeys/HotKeys.js +1 -1
- package/dist/components/content/Item/Item.js +1 -1
- package/dist/components/content/ItemBadge/ItemBadge.js +1 -1
- package/dist/components/content/ItemCard/ItemCard.js +1 -1
- package/dist/components/content/Layout/GridLayout.js +1 -1
- package/dist/components/content/Layout/Layout.js +1 -1
- package/dist/components/content/Layout/LayoutBlock.js +1 -1
- package/dist/components/content/Layout/LayoutCenter.js +1 -1
- package/dist/components/content/Layout/LayoutContainer.js +1 -1
- package/dist/components/content/Layout/LayoutContent.js +1 -1
- package/dist/components/content/Layout/LayoutContext.js +1 -1
- package/dist/components/content/Layout/LayoutFlex.js +1 -1
- package/dist/components/content/Layout/LayoutFooter.js +1 -1
- package/dist/components/content/Layout/LayoutGrid.js +1 -1
- package/dist/components/content/Layout/LayoutHeader.js +1 -1
- package/dist/components/content/Layout/LayoutPane.js +1 -1
- package/dist/components/content/Layout/LayoutPanel.js +1 -1
- package/dist/components/content/Layout/LayoutPanelHeader.js +1 -1
- package/dist/components/content/Layout/LayoutToolbar.js +1 -1
- package/dist/components/content/Layout/hooks/useTinyScrollbar.js +1 -1
- package/dist/components/content/Layout/index.js +1 -1
- package/dist/components/content/Layout/utils.js +1 -1
- package/dist/components/content/Paragraph.js +1 -1
- package/dist/components/content/Placeholder/Placeholder.js +1 -1
- package/dist/components/content/PrismCode/PrismCode.js +1 -1
- package/dist/components/content/PrismCode/prismSetup.js +1 -1
- package/dist/components/content/PrismDiffCode/PrismDiffCode.js +1 -1
- package/dist/components/content/Result/Result.js +1 -1
- package/dist/components/content/Skeleton/Skeleton.js +1 -1
- package/dist/components/content/Tag/Tag.js +1 -1
- package/dist/components/content/Text.js +1 -1
- package/dist/components/content/TextItem/TextItem.js +1 -1
- package/dist/components/content/Title.js +1 -1
- package/dist/components/content/highlightText.js +1 -1
- package/dist/components/content/use-auto-tooltip.js +1 -1
- package/dist/components/fields/Checkbox/Checkbox.js +1 -1
- package/dist/components/fields/Checkbox/CheckboxGroup.js +1 -1
- package/dist/components/fields/Checkbox/context.js +1 -1
- package/dist/components/fields/ComboBox/ComboBox.js +1 -1
- package/dist/components/fields/DatePicker/DateInput.js +1 -1
- package/dist/components/fields/DatePicker/DateInputBase.js +1 -1
- package/dist/components/fields/DatePicker/DatePicker.js +1 -1
- package/dist/components/fields/DatePicker/DatePickerButton.js +1 -1
- package/dist/components/fields/DatePicker/DatePickerElement.js +1 -1
- package/dist/components/fields/DatePicker/DatePickerInput.js +1 -1
- package/dist/components/fields/DatePicker/DatePickerSegment.js +1 -1
- package/dist/components/fields/DatePicker/DateRangePicker.js +1 -1
- package/dist/components/fields/DatePicker/DateRangeSeparatedPicker.js +1 -1
- package/dist/components/fields/DatePicker/TimeInput.js +1 -1
- package/dist/components/fields/DatePicker/intl.js +1 -1
- package/dist/components/fields/DatePicker/parseDate.js +1 -1
- package/dist/components/fields/DatePicker/props.js +1 -1
- package/dist/components/fields/DatePicker/utils.js +1 -1
- package/dist/components/fields/FileInput/FileInput.js +1 -1
- package/dist/components/fields/FilterListBox/FilterListBox.js +1 -1
- package/dist/components/fields/FilterPicker/FilterPicker.js +1 -1
- package/dist/components/fields/Input/Input.js +1 -1
- package/dist/components/fields/ListBox/ListBox.js +1 -1
- package/dist/components/fields/NumberInput/NumberInput.js +1 -1
- package/dist/components/fields/NumberInput/StepButton.js +1 -1
- package/dist/components/fields/PasswordInput/PasswordInput.js +1 -1
- package/dist/components/fields/Picker/Picker.js +1 -1
- package/dist/components/fields/RadioGroup/Radio.js +1 -1
- package/dist/components/fields/RadioGroup/RadioGroup.js +1 -1
- package/dist/components/fields/RadioGroup/context.js +1 -1
- package/dist/components/fields/SearchInput/SearchInput.js +1 -1
- package/dist/components/fields/Select/Select.d.ts +8 -2
- package/dist/components/fields/Select/Select.js +1 -1
- package/dist/components/fields/Select/Select.js.map +1 -1
- package/dist/components/fields/Slider/Gradation.js +1 -1
- package/dist/components/fields/Slider/HueSlider.js +1 -1
- package/dist/components/fields/Slider/RangeSlider.js +1 -1
- package/dist/components/fields/Slider/Slider.js +1 -1
- package/dist/components/fields/Slider/SliderBase.js +1 -1
- package/dist/components/fields/Slider/SliderThumb.js +1 -1
- package/dist/components/fields/Slider/SliderTrack.js +1 -1
- package/dist/components/fields/Slider/elements.js +1 -1
- package/dist/components/fields/Slider/index.js +1 -1
- package/dist/components/fields/Switch/Switch.js +1 -1
- package/dist/components/fields/TextArea/TextArea.js +1 -1
- package/dist/components/fields/TextInput/TextInput.js +1 -1
- package/dist/components/fields/TextInput/TextInputBase.js +1 -1
- package/dist/components/fields/TextInputMapper/TextInputMapper.js +1 -1
- package/dist/components/form/FieldWrapper/FieldWrapper.js +1 -1
- package/dist/components/form/FieldWrapper/extract-field-wrapper-props.js +1 -1
- package/dist/components/form/Form/Field.js +1 -1
- package/dist/components/form/Form/Form.js +1 -1
- package/dist/components/form/Form/ResetButton/ResetButton.js +1 -1
- package/dist/components/form/Form/SubmitButton/SubmitButton.js +1 -1
- package/dist/components/form/Form/SubmitError.js +1 -1
- package/dist/components/form/Form/index.js +1 -1
- package/dist/components/form/Form/use-field/use-field-props.js +1 -1
- package/dist/components/form/Form/use-field/use-field.js +1 -1
- package/dist/components/form/Form/use-form.js +1 -1
- package/dist/components/form/Form/validation.js +1 -1
- package/dist/components/form/Label.js +1 -1
- package/dist/components/form/wrapper.js +1 -1
- package/dist/components/helpers/DisplayTransition/DisplayTransition.js +1 -1
- package/dist/components/helpers/IconSwitch/IconSwitch.js +1 -1
- package/dist/components/layout/Flex.js +1 -1
- package/dist/components/layout/Flow.js +1 -1
- package/dist/components/layout/Grid.js +1 -1
- package/dist/components/layout/Panel.js +1 -1
- package/dist/components/layout/Prefix.js +1 -1
- package/dist/components/layout/ResizablePanel.js +1 -1
- package/dist/components/layout/Space.js +1 -1
- package/dist/components/layout/Suffix.js +1 -1
- package/dist/components/navigation/Tabs/DraggableTabList.js +1 -1
- package/dist/components/navigation/Tabs/EditableTitle.js +1 -1
- package/dist/components/navigation/Tabs/TabButton.js +1 -1
- package/dist/components/navigation/Tabs/TabDropIndicator.js +1 -1
- package/dist/components/navigation/Tabs/TabPanel.js +1 -1
- package/dist/components/navigation/Tabs/TabPicker.js +1 -1
- package/dist/components/navigation/Tabs/Tabs.js +1 -1
- package/dist/components/navigation/Tabs/TabsAction.js +1 -1
- package/dist/components/navigation/Tabs/TabsContext.js +1 -1
- package/dist/components/navigation/Tabs/styled.js +1 -1
- package/dist/components/navigation/Tabs/types.js +1 -1
- package/dist/components/navigation/Tabs/use-tab-editing.js +1 -1
- package/dist/components/navigation/Tabs/use-tab-indicator.js +1 -1
- package/dist/components/organisms/FileTabs/FileTabs.js +1 -1
- package/dist/components/organisms/StatsCard/StatsCard.js +1 -1
- package/dist/components/other/Calendar/Calendar.js +1 -1
- package/dist/components/other/Calendar/CalendarCell.js +1 -1
- package/dist/components/other/Calendar/CalendarGrid.js +1 -1
- package/dist/components/other/Calendar/RangeCalendar.js +1 -1
- package/dist/components/other/CloudLogo/CloudLogo.js +1 -1
- package/dist/components/overlays/AlertDialog/AlertDialog.js +1 -1
- package/dist/components/overlays/AlertDialog/AlertDialogApiProvider.js +1 -1
- package/dist/components/overlays/AlertDialog/AlertDialogZone.js +1 -1
- package/dist/components/overlays/Dialog/Dialog.js +1 -1
- package/dist/components/overlays/Dialog/DialogContainer.js +1 -1
- package/dist/components/overlays/Dialog/DialogForm.js +1 -1
- package/dist/components/overlays/Dialog/DialogTrigger.js +1 -1
- package/dist/components/overlays/Dialog/context.js +1 -1
- package/dist/components/overlays/Dialog/use-dialog-container.js +1 -1
- package/dist/components/overlays/Modal/Modal.js +1 -1
- package/dist/components/overlays/Modal/OpenTransition.js +1 -1
- package/dist/components/overlays/Modal/Overlay.js +1 -1
- package/dist/components/overlays/Modal/Popover.js +1 -1
- package/dist/components/overlays/Modal/Tray.js +1 -1
- package/dist/components/overlays/Modal/Underlay.js +1 -1
- package/dist/components/overlays/Notifications/Notification.js +1 -1
- package/dist/components/overlays/Notifications/NotificationAction.js +1 -1
- package/dist/components/overlays/Notifications/NotificationCard.js +1 -1
- package/dist/components/overlays/Notifications/NotificationContext.js +1 -1
- package/dist/components/overlays/Notifications/NotificationItem.js +1 -1
- package/dist/components/overlays/Notifications/OverlayContainer.js +1 -1
- package/dist/components/overlays/Notifications/OverlayProvider.js +1 -1
- package/dist/components/overlays/Notifications/PersistentNotificationsList.js +1 -1
- package/dist/components/overlays/Notifications/dismissed-storage.js +1 -1
- package/dist/components/overlays/Notifications/format-relative-time.js +1 -1
- package/dist/components/overlays/Notifications/index.js +1 -1
- package/dist/components/overlays/Notifications/use-notification-state.js +1 -1
- package/dist/components/overlays/Notifications/use-notifications.js +1 -1
- package/dist/components/overlays/Notifications/use-overlay-timers.js +1 -1
- package/dist/components/overlays/Notifications/use-persistent-notifications.js +1 -1
- package/dist/components/overlays/Notifications/use-persistent-state.js +1 -1
- package/dist/components/overlays/Notifications/use-toast-state.js +1 -1
- package/dist/components/overlays/Toast/ToastItem.js +1 -1
- package/dist/components/overlays/Toast/index.js +1 -1
- package/dist/components/overlays/Toast/useProgressToast.js +1 -1
- package/dist/components/overlays/Toast/useToast.js +1 -1
- package/dist/components/overlays/Tooltip/Tooltip.js +1 -1
- package/dist/components/overlays/Tooltip/TooltipProvider.js +1 -1
- package/dist/components/overlays/Tooltip/TooltipTrigger.js +1 -1
- package/dist/components/overlays/Tooltip/context.js +1 -1
- package/dist/components/portal/Portal.js +1 -1
- package/dist/components/portal/PortalProvider.js +1 -1
- package/dist/components/portal/usePortal.js +1 -1
- package/dist/components/shared/InvalidIcon.js +1 -1
- package/dist/components/shared/ValidIcon.js +1 -1
- package/dist/components/status/LoadingAnimation/LoadingAnimation.js +1 -1
- package/dist/components/status/Spin/Cube.js +1 -1
- package/dist/components/status/Spin/InternalSpinner.js +1 -1
- package/dist/components/status/Spin/Spin.js +1 -1
- package/dist/components/status/Spin/SpinsContainer.js +1 -1
- package/dist/data/item-themes.js +1 -1
- package/dist/data/themes.js +1 -1
- package/dist/icons/AdjustmentsHorizontalIcon.js +1 -1
- package/dist/icons/AdjustmentsIcon.js +1 -1
- package/dist/icons/AiIcon.js +1 -1
- package/dist/icons/AreaChartIcon.js +1 -1
- package/dist/icons/BackwardIcon.js +1 -1
- package/dist/icons/BarChartIcon.js +1 -1
- package/dist/icons/BellFilledIcon.js +1 -1
- package/dist/icons/BellIcon.js +1 -1
- package/dist/icons/BooleanIcon.js +1 -1
- package/dist/icons/CalendarEditIcon.js +1 -1
- package/dist/icons/CalendarIcon.js +1 -1
- package/dist/icons/CaretDownIcon.js +1 -1
- package/dist/icons/CaretUpIcon.js +1 -1
- package/dist/icons/ChartAreaStackedIcon.js +1 -1
- package/dist/icons/ChartAreaStackedPercentageIcon.js +1 -1
- package/dist/icons/ChartBarGroupedHorizontalIcon.js +1 -1
- package/dist/icons/ChartBarGroupedIcon.js +1 -1
- package/dist/icons/ChartBarHorizontalIcon.js +1 -1
- package/dist/icons/ChartBarLineIcon.js +1 -1
- package/dist/icons/ChartBarStackedHorizontalIcon.js +1 -1
- package/dist/icons/ChartBarStackedIcon.js +1 -1
- package/dist/icons/ChartBarStackedPercentageHorizontalIcon.js +1 -1
- package/dist/icons/ChartBarStackedPercentageIcon.js +1 -1
- package/dist/icons/ChartBoxPlot2Icon.js +1 -1
- package/dist/icons/ChartBoxPlotIcon.js +1 -1
- package/dist/icons/ChartBubbleIcon.js +1 -1
- package/dist/icons/ChartDonut2Icon.js +1 -1
- package/dist/icons/ChartFunnelIcon.js +1 -1
- package/dist/icons/ChartHeatmapIcon.js +1 -1
- package/dist/icons/ChartKPIIcon.js +1 -1
- package/dist/icons/ChartPie2Icon.js +1 -1
- package/dist/icons/ChartScatterIcon.js +1 -1
- package/dist/icons/CheckCircleFilledIcon.js +1 -1
- package/dist/icons/CheckCircleIcon.js +1 -1
- package/dist/icons/CheckIcon.js +1 -1
- package/dist/icons/CircleFilledIcon.js +1 -1
- package/dist/icons/ClearIcon.js +1 -1
- package/dist/icons/CloseCircleFilledIcon.js +1 -1
- package/dist/icons/CloseCircleIcon.js +1 -1
- package/dist/icons/CloseIcon.js +1 -1
- package/dist/icons/CodeIcon.js +1 -1
- package/dist/icons/ColumnTotalIcon.js +1 -1
- package/dist/icons/CopyIcon.js +1 -1
- package/dist/icons/CountIcon.js +1 -1
- package/dist/icons/CubeIcon.js +1 -1
- package/dist/icons/CubePauseIcon.js +1 -1
- package/dist/icons/CubePlayIcon.js +1 -1
- package/dist/icons/CurrencyDollarIcon.js +1 -1
- package/dist/icons/DangerIcon.js +1 -1
- package/dist/icons/DashboardIcon.js +1 -1
- package/dist/icons/DatabaseIcon.js +1 -1
- package/dist/icons/DecimalDecreaseIcon.js +1 -1
- package/dist/icons/DecimalIncreaseIcon.js +1 -1
- package/dist/icons/DirectionIcon.js +1 -1
- package/dist/icons/DonutIcon.js +1 -1
- package/dist/icons/DownIcon.js +1 -1
- package/dist/icons/EditIcon.js +1 -1
- package/dist/icons/ExclamationCircleFilledIcon.js +1 -1
- package/dist/icons/ExclamationCircleIcon.js +1 -1
- package/dist/icons/ExclamationIcon.js +1 -1
- package/dist/icons/EyeIcon.js +1 -1
- package/dist/icons/EyeInvisibleIcon.js +1 -1
- package/dist/icons/FilterIcon.js +1 -1
- package/dist/icons/FolderFilledIcon.js +1 -1
- package/dist/icons/FolderIcon.js +1 -1
- package/dist/icons/FolderOpenFilledIcon.js +1 -1
- package/dist/icons/FolderOpenIcon.js +1 -1
- package/dist/icons/ForwardIcon.js +1 -1
- package/dist/icons/HierarchyIcon.js +1 -1
- package/dist/icons/HierarchyOpenIcon.js +1 -1
- package/dist/icons/Icon.js +1 -1
- package/dist/icons/InfoCircleIcon.js +1 -1
- package/dist/icons/InfoIcon.js +1 -1
- package/dist/icons/KeyIcon.js +1 -1
- package/dist/icons/LeftIcon.js +1 -1
- package/dist/icons/LineChartIcon.js +1 -1
- package/dist/icons/LoadingIcon.js +1 -1
- package/dist/icons/LockFilledIcon.js +1 -1
- package/dist/icons/LockIcon.js +1 -1
- package/dist/icons/MoreIcon.js +1 -1
- package/dist/icons/NotAllowedIcon.js +1 -1
- package/dist/icons/Number123Icon.js +1 -1
- package/dist/icons/NumberIcon.js +1 -1
- package/dist/icons/PauseCircleFilledIcon.js +1 -1
- package/dist/icons/PauseCircleIcon.js +1 -1
- package/dist/icons/PauseIcon.js +1 -1
- package/dist/icons/PercentageIcon.js +1 -1
- package/dist/icons/PieChartIcon.js +1 -1
- package/dist/icons/PlayCircleIcon.js +1 -1
- package/dist/icons/PlayIcon.js +1 -1
- package/dist/icons/PlusIcon.js +1 -1
- package/dist/icons/ProgressBarIcon.js +1 -1
- package/dist/icons/ReloadIcon.js +1 -1
- package/dist/icons/ReportIcon.js +1 -1
- package/dist/icons/ReturnIcon.js +1 -1
- package/dist/icons/RightIcon.js +1 -1
- package/dist/icons/RowTotalsIcon.js +1 -1
- package/dist/icons/SchemeIcon.js +1 -1
- package/dist/icons/SearchIcon.js +1 -1
- package/dist/icons/SemanticQueryIcon.js +1 -1
- package/dist/icons/SettingsIcon.js +1 -1
- package/dist/icons/ShieldFilledIcon.js +1 -1
- package/dist/icons/ShieldIcon.js +1 -1
- package/dist/icons/SlashIcon.js +1 -1
- package/dist/icons/SparklesIcon.js +1 -1
- package/dist/icons/SqlIcon.js +1 -1
- package/dist/icons/StatsIcon.js +1 -1
- package/dist/icons/StopIcon.js +1 -1
- package/dist/icons/StringIcon.js +1 -1
- package/dist/icons/SubtotalsIcon.js +1 -1
- package/dist/icons/SwitchIcon.js +1 -1
- package/dist/icons/TableIcon.js +1 -1
- package/dist/icons/ThumbsDownIcon.js +1 -1
- package/dist/icons/ThumbsUpIcon.js +1 -1
- package/dist/icons/ThunderboltCrossedIcon.js +1 -1
- package/dist/icons/ThunderboltFilledIcon.js +1 -1
- package/dist/icons/ThunderboltIcon.js +1 -1
- package/dist/icons/TimeIcon.js +1 -1
- package/dist/icons/TrashIcon.js +1 -1
- package/dist/icons/UnlockIcon.js +1 -1
- package/dist/icons/UpIcon.js +1 -1
- package/dist/icons/UserGroupIcon.js +1 -1
- package/dist/icons/UserIcon.js +1 -1
- package/dist/icons/UserLockIcon.js +1 -1
- package/dist/icons/ViewIcon.js +1 -1
- package/dist/icons/WarningFilledIcon.js +1 -1
- package/dist/icons/WarningIcon.js +1 -1
- package/dist/icons/wrap-icon.js +1 -1
- package/dist/index.js +1 -1
- package/dist/provider.js +1 -1
- package/dist/providers/TrackingProvider.js +1 -1
- package/dist/providers/navigationAdapter.default.js +1 -1
- package/dist/tokens/base.js +1 -1
- package/dist/tokens/colors.js +1 -1
- package/dist/tokens/index.js +1 -1
- package/dist/tokens/layout.js +1 -1
- package/dist/tokens/shadows.js +1 -1
- package/dist/tokens/sizes.js +1 -1
- package/dist/tokens/spacing.js +1 -1
- package/dist/utils/ResizeSensor.js +1 -1
- package/dist/utils/is-dev-env.js +1 -1
- package/dist/utils/modules.js +1 -1
- package/dist/utils/promise.js +1 -1
- package/dist/utils/raf.js +1 -1
- package/dist/utils/random.js +1 -1
- package/dist/utils/range.js +1 -1
- package/dist/utils/react/RenderCache.js +1 -1
- package/dist/utils/react/Slots.js +1 -1
- package/dist/utils/react/chain.js +1 -1
- package/dist/utils/react/forwardRefWithGenerics.js +1 -1
- package/dist/utils/react/index.js +1 -1
- package/dist/utils/react/interactions.js +1 -1
- package/dist/utils/react/isTextOnly.js +1 -1
- package/dist/utils/react/mapProps.js +1 -1
- package/dist/utils/react/mergeProps.js +1 -1
- package/dist/utils/react/nullableValue.js +1 -1
- package/dist/utils/react/resolveIcon.js +1 -1
- package/dist/utils/react/sharedStore.js +1 -1
- package/dist/utils/react/useCombinedRefs.js +1 -1
- package/dist/utils/react/useControlledFocusVisible.js +1 -1
- package/dist/utils/react/useEventBus.js +1 -1
- package/dist/utils/react/useId.js +1 -1
- package/dist/utils/react/useIsDarwin.js +1 -1
- package/dist/utils/react/useKeySymbols.js +1 -1
- package/dist/utils/react/useLayoutEffect.js +1 -1
- package/dist/utils/react/useLocalStorage.js +1 -1
- package/dist/utils/react/useMergeStyles.js +1 -1
- package/dist/utils/react/useQaProps.js +1 -1
- package/dist/utils/react/useViewportSize.js +1 -1
- package/dist/utils/react/wrapNodeIfPlain.js +1 -1
- package/dist/utils/tree.js +1 -1
- package/dist/utils/warnings.js +1 -1
- package/dist/version.js +2 -2
- package/docs/BaseProperties.md +78 -0
- package/docs/ComplexLayout.md +459 -0
- package/docs/CreateComponent.md +410 -0
- package/docs/FieldProperties.md +117 -0
- package/docs/Introduction.md +122 -0
- package/docs/RenderCache.md +177 -0
- package/docs/Result.md +42 -0
- package/docs/SimpleLayout.md +26 -0
- package/docs/Typography.md +38 -0
- package/docs/components/Block.md +33 -0
- package/docs/components/CollectionItem.md +293 -0
- package/docs/components/GridProvider.md +38 -0
- package/docs/components/Root.md +50 -0
- package/docs/components/actions/Action.md +47 -0
- package/docs/components/actions/Banner.md +195 -0
- package/docs/components/actions/Button.md +209 -0
- package/docs/components/actions/ButtonGroup.md +46 -0
- package/docs/components/actions/ButtonSplit.md +199 -0
- package/docs/components/actions/CommandMenu.md +422 -0
- package/docs/components/actions/ItemAction.md +60 -0
- package/docs/components/actions/ItemButton.md +316 -0
- package/docs/components/actions/Link.md +325 -0
- package/docs/components/actions/Menu.md +485 -0
- package/docs/components/actions/MenuTrigger.md +47 -0
- package/docs/components/actions/SubMenuTrigger.md +38 -0
- package/docs/components/actions/use-anchored-menu.md +209 -0
- package/docs/components/actions/use-context-menu.md +218 -0
- package/docs/components/content/ActiveZone.md +37 -0
- package/docs/components/content/Alert.md +40 -0
- package/docs/components/content/Avatar.md +37 -0
- package/docs/components/content/Badge.md +194 -0
- package/docs/components/content/Card.md +40 -0
- package/docs/components/content/Content.md +44 -0
- package/docs/components/content/CopyPasteBlock.md +36 -0
- package/docs/components/content/CopySnippet.md +43 -0
- package/docs/components/content/Disclosure.md +181 -0
- package/docs/components/content/Divider.md +39 -0
- package/docs/components/content/Footer.md +35 -0
- package/docs/components/content/Header.md +35 -0
- package/docs/components/content/HotKeys.md +352 -0
- package/docs/components/content/Item.md +499 -0
- package/docs/components/content/ItemBadge.md +31 -0
- package/docs/components/content/ItemCard.md +131 -0
- package/docs/components/content/Layout.md +843 -0
- package/docs/components/content/Paragraph.md +32 -0
- package/docs/components/content/Placeholder.md +37 -0
- package/docs/components/content/PrismCode.md +36 -0
- package/docs/components/content/PrismDiffCode.md +29 -0
- package/docs/components/content/Result.md +46 -0
- package/docs/components/content/Skeleton.md +35 -0
- package/docs/components/content/Tag.md +165 -0
- package/docs/components/content/Text.md +54 -0
- package/docs/components/content/TextItem.md +217 -0
- package/docs/components/content/Title.md +45 -0
- package/docs/components/fields/Checkbox.md +176 -0
- package/docs/components/fields/ComboBox.md +651 -0
- package/docs/components/fields/DatePicker.md +227 -0
- package/docs/components/fields/FileInput.md +194 -0
- package/docs/components/fields/FilterListBox.md +726 -0
- package/docs/components/fields/FilterPicker.md +776 -0
- package/docs/components/fields/HueSlider.md +175 -0
- package/docs/components/fields/ListBox.md +714 -0
- package/docs/components/fields/NumberInput.md +180 -0
- package/docs/components/fields/PasswordInput.md +214 -0
- package/docs/components/fields/Picker.md +906 -0
- package/docs/components/fields/RadioGroup.md +310 -0
- package/docs/components/fields/SearchInput.md +224 -0
- package/docs/components/fields/Select.md +576 -0
- package/docs/components/fields/Slider.md +53 -0
- package/docs/components/fields/Switch.md +169 -0
- package/docs/components/fields/TextArea.md +61 -0
- package/docs/components/fields/TextInput.md +205 -0
- package/docs/components/fields/TextInputMapper.md +34 -0
- package/docs/components/form/Field.md +333 -0
- package/docs/components/form/Form.md +644 -0
- package/docs/components/form/FormInstance.md +307 -0
- package/docs/components/helpers/DisplayTransition.md +268 -0
- package/docs/components/helpers/IconSwitch.md +160 -0
- package/docs/components/layout/Flex.md +51 -0
- package/docs/components/layout/Flow.md +32 -0
- package/docs/components/layout/Grid.md +46 -0
- package/docs/components/layout/Panel.md +65 -0
- package/docs/components/layout/Prefix.md +37 -0
- package/docs/components/layout/ResizablePanel.md +69 -0
- package/docs/components/layout/Space.md +44 -0
- package/docs/components/layout/Suffix.md +39 -0
- package/docs/components/navigation/Tabs.md +726 -0
- package/docs/components/organisms/FileTabs.md +39 -0
- package/docs/components/organisms/StatsCard.md +40 -0
- package/docs/components/other/CloudLogo.md +33 -0
- package/docs/components/overlays/AlertDialog.md +51 -0
- package/docs/components/overlays/Dialog.md +200 -0
- package/docs/components/overlays/DialogContainer.md +201 -0
- package/docs/components/overlays/DialogForm.md +295 -0
- package/docs/components/overlays/DialogTrigger.md +191 -0
- package/docs/components/overlays/Notifications.md +402 -0
- package/docs/components/overlays/Toast.md +289 -0
- package/docs/components/overlays/Tooltip.md +400 -0
- package/docs/components/overlays/TooltipProvider.md +42 -0
- package/docs/components/overlays/TooltipTrigger.md +42 -0
- package/docs/components/overlays/UseDialogContainer.md +597 -0
- package/docs/components/portal/Portal.md +29 -0
- package/docs/components/status/LoadingAnimation.md +27 -0
- package/docs/components/status/Spin.md +35 -0
- package/docs/tasty/configuration.md +211 -0
- package/docs/tasty/debug.md +505 -0
- package/docs/tasty/injector.md +528 -0
- package/docs/tasty/styles.md +567 -0
- package/docs/tasty/tasty-static.md +376 -0
- package/docs/tasty/usage.md +695 -0
- package/package.json +4 -8
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
# Switch
|
|
2
|
+
|
|
3
|
+
A switch allows users to toggle between two states: on and off. It provides immediate feedback and is commonly used for enabling/disabling features, settings, or binary choices.
|
|
4
|
+
|
|
5
|
+
## When to Use
|
|
6
|
+
|
|
7
|
+
- Enable or disable features, settings, or options
|
|
8
|
+
- Toggle between two mutually exclusive states
|
|
9
|
+
- Control real-time changes that take effect immediately
|
|
10
|
+
- Provide on/off controls in forms and preference panels
|
|
11
|
+
- Create compact binary controls where space is limited
|
|
12
|
+
|
|
13
|
+
## Component
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
### Properties
|
|
18
|
+
|
|
19
|
+
- **`children`** `string` — The content to display as the switch label
|
|
20
|
+
- **`isSelected`** `boolean` (default: `false`) — Whether the switch is selected (controlled)
|
|
21
|
+
- **`defaultSelected`** `boolean` (default: `false`) — Whether the switch is selected by default (uncontrolled)
|
|
22
|
+
- **`size`** `'small' | 'medium' | 'large'` (default: `large`) — Switch size
|
|
23
|
+
- **`onChange`** — Callback fired when the switch value changes
|
|
24
|
+
- **`onFocus`** — Callback fired when the switch receives focus
|
|
25
|
+
- **`onBlur`** — Callback fired when the switch loses focus
|
|
26
|
+
|
|
27
|
+
### Base Properties
|
|
28
|
+
|
|
29
|
+
Supports [Base properties](../../BaseProperties.md)
|
|
30
|
+
|
|
31
|
+
### Field Properties
|
|
32
|
+
|
|
33
|
+
Supports all [Field properties](../../FieldProperties.md)
|
|
34
|
+
|
|
35
|
+
### Styling Properties
|
|
36
|
+
|
|
37
|
+
#### styles
|
|
38
|
+
|
|
39
|
+
Customizes the root wrapper element of the component.
|
|
40
|
+
|
|
41
|
+
#### inputStyles
|
|
42
|
+
|
|
43
|
+
Customizes the switch toggle element specifically.
|
|
44
|
+
|
|
45
|
+
**Sub-elements:**
|
|
46
|
+
- `Thumb` - The movable indicator inside the switch
|
|
47
|
+
|
|
48
|
+
#### fieldStyles
|
|
49
|
+
|
|
50
|
+
Customizes the field wrapper element when the switch is used with labels or validation.
|
|
51
|
+
|
|
52
|
+
### Style Properties
|
|
53
|
+
|
|
54
|
+
These properties allow direct style application without using the `styles` prop:
|
|
55
|
+
|
|
56
|
+
`margin`, `inset`, `position`, `width`, `height`, `flexBasis`, `flexGrow`, `flexShrink`, `flex`, `padding`, `paddingInline`, `paddingBlock`, `shadow`, `border`, `radius`, `overflow`, `scrollbar`, `outline`
|
|
57
|
+
|
|
58
|
+
### Modifiers
|
|
59
|
+
|
|
60
|
+
The `mods` property accepts the following modifiers you can override:
|
|
61
|
+
|
|
62
|
+
- **`checked`** `boolean` — Whether the switch is in the "on" state
|
|
63
|
+
- **`disabled`** `boolean` — Whether the switch is disabled
|
|
64
|
+
- **`invalid`** `boolean` — Whether the switch has validation errors
|
|
65
|
+
- **`valid`** `boolean` — Whether the switch is valid
|
|
66
|
+
- **`focused`** `boolean` — Whether the switch has focus
|
|
67
|
+
- **`hovered`** `boolean` — Whether the switch is being hovered
|
|
68
|
+
- **`side-label`** `boolean` — Whether the label is positioned to the side
|
|
69
|
+
- **`inside-form`** `boolean` — Whether the switch is inside a form field
|
|
70
|
+
|
|
71
|
+
## Variants
|
|
72
|
+
|
|
73
|
+
### Sizes
|
|
74
|
+
|
|
75
|
+
- `small` - Compact size for dense interfaces
|
|
76
|
+
- `medium` - Standard size (default)
|
|
77
|
+
- `large` - Larger size for emphasis
|
|
78
|
+
|
|
79
|
+
## Examples
|
|
80
|
+
|
|
81
|
+
### Basic Usage
|
|
82
|
+
|
|
83
|
+
```jsx
|
|
84
|
+
<Switch>Enable notifications</Switch>
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
### With Default State
|
|
88
|
+
|
|
89
|
+
### Controlled State
|
|
90
|
+
|
|
91
|
+
```jsx
|
|
92
|
+
const [isEnabled, setIsEnabled] = useState(false);
|
|
93
|
+
|
|
94
|
+
<Switch
|
|
95
|
+
isSelected={isEnabled}
|
|
96
|
+
onChange={setIsEnabled}
|
|
97
|
+
>
|
|
98
|
+
Feature enabled: {isEnabled ? 'On' : 'Off'}
|
|
99
|
+
</Switch>
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
### All Sizes
|
|
103
|
+
|
|
104
|
+
### With Validation
|
|
105
|
+
|
|
106
|
+
### Disabled State
|
|
107
|
+
|
|
108
|
+
### Loading State
|
|
109
|
+
|
|
110
|
+
### All States Overview
|
|
111
|
+
|
|
112
|
+
## Accessibility
|
|
113
|
+
|
|
114
|
+
### Keyboard Navigation
|
|
115
|
+
|
|
116
|
+
- `Tab` - Moves focus to the switch
|
|
117
|
+
- `Space` - Toggles the switch state
|
|
118
|
+
- `Enter` - Toggles the switch state
|
|
119
|
+
|
|
120
|
+
### Screen Reader Support
|
|
121
|
+
|
|
122
|
+
- Component announces as "switch" to screen readers
|
|
123
|
+
- Current state is announced (e.g., "on", "off")
|
|
124
|
+
- State changes are immediately announced
|
|
125
|
+
- Loading state is communicated when present
|
|
126
|
+
|
|
127
|
+
### ARIA Properties
|
|
128
|
+
|
|
129
|
+
- `aria-label` - Provides accessible label when no visible label exists
|
|
130
|
+
- `aria-labelledby` - References external label elements
|
|
131
|
+
- `aria-describedby` - References additional descriptive text
|
|
132
|
+
- `aria-checked` - Indicates switch state (true/false)
|
|
133
|
+
- `aria-required` - Indicates if toggling is required
|
|
134
|
+
- `aria-invalid` - Indicates validation state
|
|
135
|
+
|
|
136
|
+
## Best Practices
|
|
137
|
+
|
|
138
|
+
1. **Do**: Use clear, descriptive labels that indicate what the switch controls
|
|
139
|
+
```jsx
|
|
140
|
+
<Switch>Enable email notifications</Switch>
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
2. **Don't**: Use switches for actions that require additional steps
|
|
144
|
+
```jsx
|
|
145
|
+
<Switch>Delete account</Switch> {/* Use Button instead */}
|
|
146
|
+
```
|
|
147
|
+
|
|
148
|
+
3. **Immediate Effect**: Use switches for settings that take effect immediately
|
|
149
|
+
4. **State Clarity**: Make it clear what "on" and "off" states mean
|
|
150
|
+
5. **Grouping**: Group related switches together in settings panels
|
|
151
|
+
6. **Labels**: Always provide meaningful labels for screen readers
|
|
152
|
+
|
|
153
|
+
## Integration with Forms
|
|
154
|
+
|
|
155
|
+
This component supports all [Field properties](../../FieldProperties.md) when used within a Form.
|
|
156
|
+
|
|
157
|
+
## Suggested Improvements
|
|
158
|
+
|
|
159
|
+
- Add support for custom thumb icons or content
|
|
160
|
+
- Implement animation customization options
|
|
161
|
+
- Add support for intermediate/indeterminate states
|
|
162
|
+
- Consider adding color customization for different switch types
|
|
163
|
+
- Implement grouped switch controls for related settings
|
|
164
|
+
|
|
165
|
+
## Related Components
|
|
166
|
+
|
|
167
|
+
- [Checkbox](./Checkbox.md) - For selection that doesn't take immediate effect
|
|
168
|
+
- [RadioGroup](./RadioGroup.md) - For selecting one option from multiple choices
|
|
169
|
+
- [Button](../actions/Button.md) - For actions that require confirmation
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
# TextArea
|
|
2
|
+
|
|
3
|
+
<Badge variant="neutral">Form component</Badge>
|
|
4
|
+
|
|
5
|
+
The TextArea component is a multi-line text input that allows users to enter and edit longer text content. It supports auto-sizing functionality and various text input features like validation and formatting.
|
|
6
|
+
|
|
7
|
+
## Examples
|
|
8
|
+
|
|
9
|
+
### With Default Value
|
|
10
|
+
|
|
11
|
+
### With Icon
|
|
12
|
+
|
|
13
|
+
### Auto Size
|
|
14
|
+
|
|
15
|
+
### Auto Size with Max Rows
|
|
16
|
+
|
|
17
|
+
## Variants
|
|
18
|
+
|
|
19
|
+
### Sizes
|
|
20
|
+
|
|
21
|
+
- `small` - Compact size for dense interfaces
|
|
22
|
+
- `medium` - Standard size for most use cases
|
|
23
|
+
- `large` - Emphasized size for important text areas
|
|
24
|
+
|
|
25
|
+
## Properties
|
|
26
|
+
|
|
27
|
+
## Sub-elements
|
|
28
|
+
|
|
29
|
+
The TextArea component renders the following sub-elements that can be customized via the `styles` prop:
|
|
30
|
+
|
|
31
|
+
- **Prefix**: Content displayed before the input area
|
|
32
|
+
- **Suffix**: Content displayed after the input area
|
|
33
|
+
- **State**: Container for validation and loading indicators
|
|
34
|
+
- **InputIcon**: Icon displayed within the input
|
|
35
|
+
|
|
36
|
+
## Style Properties
|
|
37
|
+
|
|
38
|
+
The TextArea component supports all standard style properties:
|
|
39
|
+
|
|
40
|
+
`display`, `font`, `preset`, `hide`, `opacity`, `whiteSpace`, `gridArea`, `order`, `gridColumn`, `gridRow`, `placeSelf`, `alignSelf`, `justifySelf`, `zIndex`, `margin`, `inset`, `position`, `width`, `height`, `flexBasis`, `flexGrow`, `flexShrink`, `flex`, `reset`, `padding`, `paddingInline`, `paddingBlock`, `shadow`, `border`, `radius`, `overflow`, `scrollbar`, `outline`, `textAlign`, `color`, `fill`, `fade`, `textTransform`, `fontWeight`, `fontStyle`, `flow`, `placeItems`, `placeContent`, `alignItems`, `alignContent`, `justifyItems`, `justifyContent`, `align`, `justify`, `gap`, `columnGap`, `rowGap`, `gridColumns`, `gridRows`, `gridTemplate`, `gridAreas`
|
|
41
|
+
|
|
42
|
+
## Accessibility
|
|
43
|
+
|
|
44
|
+
The TextArea component follows WAI-ARIA guidelines:
|
|
45
|
+
|
|
46
|
+
- Uses semantic `textarea` HTML element
|
|
47
|
+
- Supports proper keyboard navigation and text selection
|
|
48
|
+
- Associates labels with the input element using `aria-labelledby`
|
|
49
|
+
- Provides clear focus indicators
|
|
50
|
+
- Announces validation states and error messages to screen readers
|
|
51
|
+
- Supports auto-completion and spell-checking
|
|
52
|
+
|
|
53
|
+
## Best Practices
|
|
54
|
+
|
|
55
|
+
- Use descriptive labels that clearly indicate the expected content
|
|
56
|
+
- Provide placeholder text for additional context when appropriate
|
|
57
|
+
- Set appropriate `rows` to indicate expected content length
|
|
58
|
+
- Use `autoSize` for dynamic content that may vary in length
|
|
59
|
+
- Consider `maxRows` to prevent excessive vertical growth
|
|
60
|
+
- Provide clear validation messages when input is invalid
|
|
61
|
+
- Use read-only state for displaying non-editable content
|
|
@@ -0,0 +1,205 @@
|
|
|
1
|
+
# TextInput
|
|
2
|
+
|
|
3
|
+
A text input component that allows users to input custom text entries with a keyboard. Built with React Aria's `useTextField` hook for full accessibility and the Cube `tasty` style system for theming.
|
|
4
|
+
|
|
5
|
+
## When to Use
|
|
6
|
+
|
|
7
|
+
- Collect single-line text input from users (names, emails, URLs)
|
|
8
|
+
- Create multiline text areas for longer content
|
|
9
|
+
- Build forms with validation and field decoration
|
|
10
|
+
- Implement search inputs with icons and prefixes
|
|
11
|
+
- Handle password inputs with proper masking
|
|
12
|
+
|
|
13
|
+
## Component
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
### Properties
|
|
18
|
+
|
|
19
|
+
- **`value`** `string` — The text value in controlled mode
|
|
20
|
+
- **`defaultValue`** `string` — The default text value in uncontrolled mode
|
|
21
|
+
- **`placeholder`** `string` — Placeholder text when input is empty
|
|
22
|
+
- **`icon`** — Icon element rendered before the input
|
|
23
|
+
- **`prefix`** — Input decoration before the main input
|
|
24
|
+
- **`suffix`** — Input decoration after the main input
|
|
25
|
+
- **`suffixPosition`** `'before' | 'after'` (default: `before`) — Position of suffix relative to validation/loading state icons
|
|
26
|
+
- **`type`** `'text' | 'password' | 'email' | 'url' | 'tel' | 'search'` (default: `text`) — Input type
|
|
27
|
+
- **`multiLine`** `boolean` (default: `false`) — Whether the input is multiline (textarea)
|
|
28
|
+
- **`rows`** `number` — Number of visible rows for multiline input
|
|
29
|
+
- **`resize`** `string` — CSS resize value for multiline input (e.g. `'vertical'`, `'none'`)
|
|
30
|
+
- **`size`** `'small' | 'medium' | 'large'` (default: `medium`) — Input size
|
|
31
|
+
- **`autocomplete`** `string` — Browser autocomplete attribute value
|
|
32
|
+
- **`maxLength`** `number` — Maximum number of characters allowed
|
|
33
|
+
- **`minLength`** `number` — Minimum number of characters required
|
|
34
|
+
- **`onChange`** `function` — Callback fired when the input value changes
|
|
35
|
+
- **`onBlur`** `function` — Callback fired when the input loses focus
|
|
36
|
+
- **`onFocus`** `function` — Callback fired when the input receives focus
|
|
37
|
+
|
|
38
|
+
### Base Properties
|
|
39
|
+
|
|
40
|
+
Supports [Base properties](../../BaseProperties.md)
|
|
41
|
+
|
|
42
|
+
### Field Properties
|
|
43
|
+
|
|
44
|
+
Supports all [Field properties](../../FieldProperties.md)
|
|
45
|
+
|
|
46
|
+
### Styling Properties
|
|
47
|
+
|
|
48
|
+
#### styles
|
|
49
|
+
|
|
50
|
+
Customizes the root element of the component.
|
|
51
|
+
|
|
52
|
+
**Sub-elements:**
|
|
53
|
+
- `InputWrapper` – container around the input field
|
|
54
|
+
- `Prefix` – wrapper around prefix content
|
|
55
|
+
- `Suffix` – wrapper around suffix content
|
|
56
|
+
- `State` – container for validation and loading icons
|
|
57
|
+
- `InputIcon` – wrapper around the main icon
|
|
58
|
+
- `ValidationIcon` – wrapper around validation state icons
|
|
59
|
+
|
|
60
|
+
#### inputStyles
|
|
61
|
+
|
|
62
|
+
Customizes the input element itself.
|
|
63
|
+
|
|
64
|
+
#### wrapperProps
|
|
65
|
+
|
|
66
|
+
Additional HTML props passed to the input wrapper container.
|
|
67
|
+
|
|
68
|
+
### Style Properties
|
|
69
|
+
|
|
70
|
+
The TextInput component supports all standard style properties:
|
|
71
|
+
|
|
72
|
+
`display`, `font`, `preset`, `hide`, `opacity`, `whiteSpace`, `gridArea`, `order`, `gridColumn`, `gridRow`, `placeSelf`, `alignSelf`, `justifySelf`, `zIndex`, `margin`, `inset`, `position`, `width`, `height`, `flexBasis`, `flexGrow`, `flexShrink`, `flex`, `reset`, `padding`, `paddingInline`, `paddingBlock`, `shadow`, `border`, `radius`, `overflow`, `scrollbar`, `outline`, `textAlign`, `color`, `fill`, `fade`, `textTransform`, `fontWeight`, `fontStyle`, `flow`, `placeItems`, `placeContent`, `alignItems`, `alignContent`, `justifyItems`, `justifyContent`, `align`, `justify`, `gap`, `columnGap`, `rowGap`, `gridColumns`, `gridRows`, `gridTemplate`, `gridAreas`
|
|
73
|
+
|
|
74
|
+
### Modifiers
|
|
75
|
+
|
|
76
|
+
The `mods` prop accepts the following modifiers you can override:
|
|
77
|
+
|
|
78
|
+
- **`focused`** `boolean` — Forces focus ring appearance.
|
|
79
|
+
- **`disabled`** `boolean` — Forces disabled appearance.
|
|
80
|
+
- **`invalid`** `boolean` — Forces invalid state styling.
|
|
81
|
+
- **`valid`** `boolean` — Forces valid state styling.
|
|
82
|
+
- **`loading`** `boolean` — Displays loading spinner.
|
|
83
|
+
- **`prefix`** `boolean` — Indicates presence of prefix content.
|
|
84
|
+
- **`suffix`** `boolean` — Indicates presence of suffix content.
|
|
85
|
+
|
|
86
|
+
## Variants
|
|
87
|
+
|
|
88
|
+
### Types
|
|
89
|
+
|
|
90
|
+
- `text` – Standard text input (default)
|
|
91
|
+
- `password` – Masked password input
|
|
92
|
+
- `email` – Email input with validation
|
|
93
|
+
- `url` – URL input with validation
|
|
94
|
+
- `tel` – Telephone number input
|
|
95
|
+
- `search` – Search input styling
|
|
96
|
+
|
|
97
|
+
### Sizes
|
|
98
|
+
|
|
99
|
+
- `small` – Compact height for dense interfaces
|
|
100
|
+
- `medium` – Standard height for most use cases
|
|
101
|
+
- `large` – Emphasized height for important inputs
|
|
102
|
+
|
|
103
|
+
## Examples
|
|
104
|
+
|
|
105
|
+
### Basic Usage
|
|
106
|
+
|
|
107
|
+
```jsx
|
|
108
|
+
<TextInput
|
|
109
|
+
label="Name"
|
|
110
|
+
placeholder="Enter your name"
|
|
111
|
+
onChange={(value) => console.log(value)}
|
|
112
|
+
/>
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
### With Icon
|
|
116
|
+
|
|
117
|
+
```jsx
|
|
118
|
+
import { IconMail } from '@tabler/icons-react';
|
|
119
|
+
|
|
120
|
+
<TextInput
|
|
121
|
+
label="Email"
|
|
122
|
+
type="email"
|
|
123
|
+
icon={<IconMail />}
|
|
124
|
+
placeholder="Enter your email"
|
|
125
|
+
/>
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
### Multiline Text Area
|
|
129
|
+
|
|
130
|
+
```jsx
|
|
131
|
+
<TextInput
|
|
132
|
+
label="Description"
|
|
133
|
+
multiLine
|
|
134
|
+
rows={4}
|
|
135
|
+
placeholder="Enter description..."
|
|
136
|
+
/>
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
### With Validation
|
|
140
|
+
|
|
141
|
+
```jsx
|
|
142
|
+
<TextInput
|
|
143
|
+
label="Username"
|
|
144
|
+
isRequired
|
|
145
|
+
validationState="invalid"
|
|
146
|
+
message="Username must be at least 3 characters"
|
|
147
|
+
/>
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
## Accessibility
|
|
151
|
+
|
|
152
|
+
### Keyboard Navigation
|
|
153
|
+
|
|
154
|
+
- `Tab` – Moves focus to the input field
|
|
155
|
+
- `Shift + Tab` – Moves focus away from the input
|
|
156
|
+
- Standard text editing shortcuts (Ctrl+A, Ctrl+C, etc.)
|
|
157
|
+
|
|
158
|
+
### Screen Reader Support
|
|
159
|
+
|
|
160
|
+
- Announces role "textbox" or "searchbox" for search inputs
|
|
161
|
+
- Announces label, description, and validation messages
|
|
162
|
+
- State changes like "invalid" or "required" are announced
|
|
163
|
+
- Loading state is announced to screen readers
|
|
164
|
+
|
|
165
|
+
### ARIA Properties
|
|
166
|
+
|
|
167
|
+
- `aria-label`, `aria-labelledby` – Accessible name for the input
|
|
168
|
+
- `aria-describedby` – Links to description and error messages
|
|
169
|
+
- `aria-invalid` – Managed automatically based on `validationState`
|
|
170
|
+
- `aria-required` – Set when `isRequired` is true
|
|
171
|
+
- Additional ARIA attributes supported by React Aria's `useTextField`
|
|
172
|
+
|
|
173
|
+
## Best Practices
|
|
174
|
+
|
|
175
|
+
1. **Do**: Provide clear labels and helpful placeholder text
|
|
176
|
+
```jsx
|
|
177
|
+
<TextInput label="Email Address" placeholder="you@example.com" />
|
|
178
|
+
```
|
|
179
|
+
|
|
180
|
+
2. **Don't**: Use placeholder text as the only label
|
|
181
|
+
```jsx
|
|
182
|
+
{/* Avoid this */}
|
|
183
|
+
<TextInput placeholder="Enter your email" />
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
3. **Accessibility**: Always provide proper labels for screen readers
|
|
187
|
+
4. **Validation**: Use `validationState` and `message` for user feedback
|
|
188
|
+
5. **Performance**: Use `defaultValue` for uncontrolled inputs when possible
|
|
189
|
+
|
|
190
|
+
## Integration with Forms
|
|
191
|
+
|
|
192
|
+
This component supports all [Field properties](../../FieldProperties.md) when used within a Form.
|
|
193
|
+
|
|
194
|
+
## Suggested Improvements
|
|
195
|
+
|
|
196
|
+
- Provide `maxLength` indicator with visible character count
|
|
197
|
+
- Support for input masks and formatting
|
|
198
|
+
- Built-in debouncing for onChange events
|
|
199
|
+
|
|
200
|
+
## Related Components
|
|
201
|
+
|
|
202
|
+
- [TextArea](./TextArea.md) – Dedicated multiline text input
|
|
203
|
+
- [SearchInput](./SearchInput.md) – Specialized search input with clear button
|
|
204
|
+
- [PasswordInput](./PasswordInput.md) – Enhanced password input with show/hide toggle
|
|
205
|
+
- [NumberInput](./NumberInput.md) – Numeric input with increment/decrement controls
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
# TextInputMapper
|
|
2
|
+
|
|
3
|
+
The TextInputMapper component allows users to create and manage key-value pairs dynamically. It provides an interface for adding, editing, and removing mappings with customizable input components for both keys and values.
|
|
4
|
+
|
|
5
|
+
## Properties
|
|
6
|
+
|
|
7
|
+
## Sub-elements
|
|
8
|
+
|
|
9
|
+
The TextInputMapper component is a complex compound component that doesn't expose styled sub-elements via the `styles` prop. Instead, it uses internal layout components and delegates styling to its key and value input components.
|
|
10
|
+
|
|
11
|
+
## Style Properties
|
|
12
|
+
|
|
13
|
+
The TextInputMapper component supports all standard style properties:
|
|
14
|
+
|
|
15
|
+
`display`, `font`, `preset`, `hide`, `opacity`, `whiteSpace`, `gridArea`, `order`, `gridColumn`, `gridRow`, `placeSelf`, `alignSelf`, `justifySelf`, `zIndex`, `margin`, `inset`, `position`, `width`, `height`, `flexBasis`, `flexGrow`, `flexShrink`, `flex`, `reset`, `padding`, `paddingInline`, `paddingBlock`, `shadow`, `border`, `radius`, `overflow`, `scrollbar`, `outline`, `textAlign`, `color`, `fill`, `fade`, `textTransform`, `fontWeight`, `fontStyle`, `flow`, `placeItems`, `placeContent`, `alignItems`, `alignContent`, `justifyItems`, `justifyContent`, `align`, `justify`, `gap`, `columnGap`, `rowGap`, `gridColumns`, `gridRows`, `gridTemplate`, `gridAreas`
|
|
16
|
+
|
|
17
|
+
## Accessibility
|
|
18
|
+
|
|
19
|
+
The TextInputMapper component follows WAI-ARIA guidelines:
|
|
20
|
+
|
|
21
|
+
- Uses semantic form controls for key-value inputs
|
|
22
|
+
- Provides clear labeling for all interactive elements
|
|
23
|
+
- Supports keyboard navigation between fields and actions
|
|
24
|
+
- Announces changes when mappings are added or removed
|
|
25
|
+
- Associates labels with input elements using appropriate ARIA attributes
|
|
26
|
+
|
|
27
|
+
## Best Practices
|
|
28
|
+
|
|
29
|
+
- Use descriptive labels that clearly indicate the purpose of the key-value pairs
|
|
30
|
+
- Provide appropriate `actionLabel` text for the add button
|
|
31
|
+
- Consider using custom components for specialized input types
|
|
32
|
+
- Set appropriate validation on both key and value inputs
|
|
33
|
+
- Use `allowsCustomValue` when users need flexibility in value selection
|
|
34
|
+
- Provide clear feedback when validation fails on individual pairs
|