@cube-dev/ui-kit 0.166.0 → 0.167.0
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/README.md +4 -7
- package/dist/CHANGELOG.md +33 -0
- package/dist/README.md +4 -7
- 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 +4 -4
- package/dist/components/GlobalStyles.js.map +1 -1
- package/dist/components/GridProvider.js +1 -1
- package/dist/components/HiddenInput.js +1 -1
- package/dist/components/Root.js +1 -2
- package/dist/components/Root.js.map +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.d.ts +7 -3
- package/dist/components/actions/use-anchored-menu.js +17 -12
- package/dist/components/actions/use-anchored-menu.js.map +1 -1
- package/dist/components/actions/use-context-menu.d.ts +6 -3
- package/dist/components/actions/use-context-menu.js +25 -13
- package/dist/components/actions/use-context-menu.js.map +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/InfoBadge/InfoBadge.js +1 -1
- package/dist/components/content/InlineInput/InlineInput.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.d.ts +14 -14
- 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/Tree/Tree.js +1 -1
- package/dist/components/content/Tree/TreeNode.js +1 -1
- package/dist/components/content/Tree/styled.js +1 -1
- package/dist/components/content/Tree/tree-index.js +1 -1
- package/dist/components/content/Tree/use-checkbox-tree.js +1 -1
- package/dist/components/content/Tree/use-load-data.js +1 -1
- package/dist/components/content/highlightText.js +1 -1
- package/dist/components/content/use-auto-tooltip.js +1 -1
- package/dist/components/data/DataTable/DataTable.js +1 -1
- package/dist/components/data/ItemTable/ItemTable.js +1 -1
- package/dist/components/data/ItemTable/ItemTableBulkBar.js +1 -1
- package/dist/components/data/ItemTable/ItemTableDragPreview.js +1 -1
- package/dist/components/data/ItemTable/ItemTableFooter.js +1 -1
- package/dist/components/data/ItemTable/ItemTableToolbar.js +1 -1
- package/dist/components/data/TableBase/ColumnResizer.js +1 -1
- package/dist/components/data/TableBase/RowCollection.js +1 -1
- package/dist/components/data/TableBase/TableHeaderCell.js +1 -1
- package/dist/components/data/TableBase/TableRow.js +1 -1
- package/dist/components/data/TableBase/TableView.js +1 -1
- package/dist/components/data/TableBase/column-menu.js +1 -1
- package/dist/components/data/TableBase/column-tint.js +1 -1
- package/dist/components/data/TableBase/row-menu.js +1 -1
- package/dist/components/data/TableBase/styled.js +1 -1
- package/dist/components/data/TableBase/table-tree.js +1 -1
- package/dist/components/data/TableBase/types.js +1 -1
- package/dist/components/data/TableBase/use-cell-selection.js +0 -0
- package/dist/components/data/TableBase/use-column-order.js +1 -1
- package/dist/components/data/TableBase/use-container-width.js +1 -1
- package/dist/components/data/TableBase/use-row-move-animation.js +1 -1
- package/dist/components/data/TableBase/use-scrollability.js +1 -1
- package/dist/components/data/TableBase/use-table-columns.js +1 -1
- package/dist/components/data/TableBase/use-table-search.js +1 -1
- package/dist/components/data/TableBase/use-table-selection.js +1 -1
- package/dist/components/data/TableBase/use-table-sort.js +1 -1
- package/dist/components/data/TableBase/use-table-sorts.js +1 -1
- package/dist/components/data/TableBase/use-table-storage.js +1 -1
- package/dist/components/data/TableBase/use-table-tree-state.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/ColorInput/ColorInput.js +1 -1
- package/dist/components/fields/ColorPicker/ColorPicker.js +1 -1
- package/dist/components/fields/ColorSwatch/ColorSwatch.js +1 -1
- package/dist/components/fields/ColorSwatchGroup/ColorSwatchGroup.js +1 -1
- package/dist/components/fields/ComboBox/ComboBox.js +1 -1
- package/dist/components/fields/CommandTextArea/CommandTextArea.js +1 -1
- package/dist/components/fields/CommandTextArea/caretPosition.js +1 -1
- package/dist/components/fields/CommandTextArea/useCaretAnchor.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/MonthPicker.js +1 -1
- package/dist/components/fields/DatePicker/PeriodPicker.js +1 -1
- package/dist/components/fields/DatePicker/QuarterPicker.js +1 -1
- package/dist/components/fields/DatePicker/TimeInput.js +1 -1
- package/dist/components/fields/DatePicker/WeekPicker.js +1 -1
- package/dist/components/fields/DatePicker/YearPicker.js +1 -1
- package/dist/components/fields/DatePicker/parseDate.js +1 -1
- package/dist/components/fields/DatePicker/period.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/DraggableListBox.js +1 -1
- package/dist/components/fields/ListBox/ListBox.js +1 -1
- package/dist/components/fields/ListBoxPopover/ListBoxPopover.js +1 -1
- package/dist/components/fields/ListBoxPopover/listNavigation.js +1 -1
- package/dist/components/fields/ListBoxPopover/useCompositeFocus.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/SearchComboBox/SearchComboBox.js +1 -1
- package/dist/components/fields/SearchInput/SearchInput.js +1 -1
- package/dist/components/fields/Select/Select.js +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/TextInput/useAutoSizeTextArea.js +1 -1
- package/dist/components/fields/TextInputMapper/TextInputMapper.js +1 -1
- package/dist/components/fields/color/ColorPanel.js +1 -1
- package/dist/components/fields/color/channels.js +1 -1
- package/dist/components/fields/color/color.js +1 -1
- package/dist/components/fields/color/context.js +1 -1
- package/dist/components/form/FieldWrapper/FieldWrapper.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/validation/ValidationIndicator.js +1 -1
- package/dist/components/form/validation/resolve-validation-props.js +1 -1
- package/dist/components/form/validation/use-validation-props.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/Board/Board.d.ts +11 -5
- package/dist/components/layout/Board/Board.js +15 -7
- package/dist/components/layout/Board/Board.js.map +1 -1
- package/dist/components/layout/Board/BoardProvider.js +1 -1
- package/dist/components/layout/Board/BoardResponsive.d.ts +6 -3
- package/dist/components/layout/Board/BoardResponsive.js +3 -3
- package/dist/components/layout/Board/BoardResponsive.js.map +1 -1
- package/dist/components/layout/Board/Widget.d.ts +29 -1
- package/dist/components/layout/Board/Widget.js +5 -2
- package/dist/components/layout/Board/Widget.js.map +1 -1
- package/dist/components/layout/Board/WidgetHost.js +67 -17
- package/dist/components/layout/Board/WidgetHost.js.map +1 -1
- package/dist/components/layout/Board/board-context.js +1 -1
- package/dist/components/layout/Board/board-context.js.map +1 -1
- package/dist/components/layout/Board/board-store.js +2 -2
- package/dist/components/layout/Board/board-store.js.map +1 -1
- package/dist/components/layout/Board/grid-core/calculate.js +1 -1
- package/dist/components/layout/Board/grid-core/collision-modes.js +1 -1
- package/dist/components/layout/Board/grid-core/collision.js +1 -1
- package/dist/components/layout/Board/grid-core/compactors.js +1 -1
- package/dist/components/layout/Board/grid-core/constraints.js +1 -1
- package/dist/components/layout/Board/grid-core/group-move.js +1 -1
- package/dist/components/layout/Board/grid-core/layout.js +1 -1
- package/dist/components/layout/Board/grid-core/placement.js +1 -1
- package/dist/components/layout/Board/grid-core/sort.js +1 -1
- package/dist/components/layout/Board/index.d.ts +2 -1
- package/dist/components/layout/Board/index.js +1 -1
- package/dist/components/layout/Board/index.js.map +1 -1
- package/dist/components/layout/Board/responsive-utils.js +1 -1
- package/dist/components/layout/Board/use-board-layout.d.ts +26 -0
- package/dist/components/layout/Board/use-board-layout.js +4 -4
- package/dist/components/layout/Board/use-board-layout.js.map +1 -1
- package/dist/components/layout/Board/use-board-registry.js +4 -4
- package/dist/components/layout/Board/use-board-registry.js.map +1 -1
- package/dist/components/layout/Board/use-board-select-modifier-key.js +1 -1
- package/dist/components/layout/Board/use-board-selection.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/Pagination/Pagination.js +1 -1
- package/dist/components/navigation/Pagination/use-pagination.js +1 -1
- package/dist/components/navigation/Tabs/DraggableTabList.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/popover-placement.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/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/CalendarHeader.js +1 -1
- package/dist/components/other/Calendar/CalendarPanel.js +1 -1
- package/dist/components/other/Calendar/PeriodCalendar.js +1 -1
- package/dist/components/other/Calendar/PeriodGrid.js +1 -1
- package/dist/components/other/Calendar/RangeCalendar.js +1 -1
- package/dist/components/other/Calendar/styled.js +1 -1
- package/dist/components/other/CubeLogo/CubeLogo.js +1 -1
- package/dist/components/other/NoDataIcon/NoDataIcon.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/OpenTransitionContext.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/DraggableCollection.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/eslint-plugin/defaults.generated.js +21 -1
- package/dist/eslint-plugin/defaults.generated.js.map +1 -1
- package/dist/eslint-plugin/index.js +1 -1
- package/dist/eslint-plugin/rules/no-redundant-default-prop.js +1 -1
- package/dist/i18n/I18nProvider.js +1 -1
- package/dist/i18n/createFormatter.js +1 -1
- package/dist/i18n/index.js +1 -1
- package/dist/i18n/instance.js +1 -1
- package/dist/i18n/locales/de-DE/uikit.js +1 -1
- package/dist/i18n/locales/en-US/uikit.js +1 -1
- package/dist/i18n/locales/es-ES/uikit.js +1 -1
- package/dist/i18n/locales/es-MX/uikit.js +1 -1
- package/dist/i18n/locales/fr-FR/uikit.js +1 -1
- package/dist/i18n/locales/it-IT/uikit.js +1 -1
- package/dist/i18n/locales/ja-JP/uikit.js +1 -1
- package/dist/i18n/locales/nb-NO/uikit.js +1 -1
- package/dist/i18n/locales/pt-BR/uikit.js +1 -1
- package/dist/i18n/locales/pt-PT/uikit.js +1 -1
- package/dist/i18n/locales/sv-SE/uikit.js +1 -1
- package/dist/i18n/locales/vi-VN/uikit.js +1 -1
- package/dist/i18n/locales.js +1 -1
- package/dist/i18n/useFormatter.js +1 -1
- package/dist/i18n/useI18n.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/ArrowNarrowDownIcon.js +1 -1
- package/dist/icons/ArrowNarrowUpIcon.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/GripVerticalIcon.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/PipetteIcon.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.d.ts +6 -3
- package/dist/index.js +4 -3
- package/dist/index.js.map +1 -1
- package/dist/probe/canonicalize.js +1 -1
- package/dist/probe/css.js +1 -1
- package/dist/probe/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/all-tokens.d.ts +10 -0
- package/dist/tokens/{index.js → all-tokens.js} +7 -25
- package/dist/tokens/all-tokens.js.map +1 -0
- package/dist/tokens/base.js +2 -1
- package/dist/tokens/base.js.map +1 -1
- package/dist/tokens/color-seed.js +1 -1
- package/dist/tokens/color-theme.js +1 -1
- package/dist/tokens/colors.js +1 -1
- package/dist/tokens/index.d.ts +3 -10
- package/dist/tokens/layout.js +1 -1
- package/dist/tokens/lazy-styles.js +1 -1
- package/dist/tokens/palette-config.js +1 -1
- package/dist/tokens/palette.js +1 -1
- package/dist/tokens/resolve.d.ts +113 -0
- package/dist/tokens/resolve.js +403 -0
- package/dist/tokens/resolve.js.map +1 -0
- package/dist/tokens/shadows.js +1 -1
- package/dist/tokens/sizes.js +1 -1
- package/dist/tokens/spacing.js +1 -1
- package/dist/tokens/typography.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/disabledProps.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/useBufferedValue.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.d.ts +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/usePopoverSync.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/selection.js +1 -1
- package/dist/utils/styles.js +1 -1
- package/dist/utils/tree.js +1 -1
- package/dist/utils/warnings.js +1 -1
- package/dist/version.js +3 -3
- package/docs/Colors.md +16 -40
- package/docs/ComplexLayout.md +8 -0
- package/docs/CreateComponent.md +15 -8
- package/docs/Introduction.md +15 -36
- package/docs/RenderCache.md +8 -6
- package/docs/Theming.md +164 -497
- package/docs/Usage.md +129 -138
- package/docs/Utilities.md +2 -2
- package/docs/components/CollectionItem.md +1 -0
- package/docs/components/actions/Banner.md +1 -0
- package/docs/components/actions/Button.md +8 -36
- package/docs/components/actions/ButtonSplit.md +2 -0
- package/docs/components/actions/CommandMenu.md +8 -8
- package/docs/components/actions/ItemButton.md +6 -20
- package/docs/components/actions/Link.md +10 -5
- package/docs/components/actions/Menu.md +24 -11
- package/docs/components/actions/MenuTrigger.md +3 -12
- package/docs/components/actions/use-anchored-menu.md +5 -5
- package/docs/components/actions/use-context-menu.md +11 -7
- package/docs/components/content/Badge.md +3 -0
- package/docs/components/content/HotKeys.md +21 -14
- package/docs/components/content/InlineInput.md +14 -14
- package/docs/components/content/Item.md +25 -17
- package/docs/components/content/ItemCard.md +1 -0
- package/docs/components/content/Layout.md +12 -1
- package/docs/components/content/PrismCode.md +13 -18
- package/docs/components/content/Tag.md +1 -1
- package/docs/components/content/TextItem.md +5 -3
- package/docs/components/content/Tree.md +69 -154
- package/docs/components/data/DataTable.md +56 -168
- package/docs/components/data/ItemTable.md +182 -485
- package/docs/components/fields/Checkbox.md +2 -0
- package/docs/components/fields/ColorInput.md +38 -79
- package/docs/components/fields/ColorPicker.md +17 -39
- package/docs/components/fields/ColorSwatch.md +11 -30
- package/docs/components/fields/ColorSwatchGroup.md +18 -42
- package/docs/components/fields/ComboBox.md +13 -1
- package/docs/components/fields/CommandTextArea.md +10 -37
- package/docs/components/fields/DatePicker.md +3 -0
- package/docs/components/fields/FileInput.md +3 -0
- package/docs/components/fields/FilterListBox.md +34 -14
- package/docs/components/fields/FilterPicker.md +33 -16
- package/docs/components/fields/HueSlider.md +5 -5
- package/docs/components/fields/ListBox.md +35 -9
- package/docs/components/fields/NumberInput.md +3 -0
- package/docs/components/fields/PasswordInput.md +3 -0
- package/docs/components/fields/PeriodPicker.md +7 -17
- package/docs/components/fields/Picker.md +54 -29
- package/docs/components/fields/RadioGroup.md +13 -5
- package/docs/components/fields/SearchComboBox.md +3 -0
- package/docs/components/fields/SearchInput.md +4 -2
- package/docs/components/fields/Select.md +23 -13
- package/docs/components/fields/Switch.md +3 -0
- package/docs/components/fields/TextInput.md +3 -0
- package/docs/components/fields/TextInputMapper.md +1 -2
- package/docs/components/form/Field.md +5 -2
- package/docs/components/form/Form.md +5 -0
- package/docs/components/form/FormInstance.md +1 -1
- package/docs/components/helpers/DisplayTransition.md +10 -6
- package/docs/components/helpers/IconSwitch.md +1 -0
- package/docs/components/layout/Board.md +79 -213
- package/docs/components/navigation/Pagination.md +36 -75
- package/docs/components/navigation/Tabs.md +3 -15
- package/docs/components/other/Calendar.md +22 -39
- package/docs/components/other/CubeLogo.md +1 -1
- package/docs/components/overlays/Dialog.md +3 -0
- package/docs/components/overlays/DialogContainer.md +2 -0
- package/docs/components/overlays/DialogForm.md +6 -2
- package/docs/components/overlays/DialogTrigger.md +4 -2
- package/docs/components/overlays/Notifications.md +7 -0
- package/docs/components/overlays/Toast.md +12 -8
- package/docs/components/overlays/Tooltip.md +7 -3
- package/docs/components/overlays/UseDialogContainer.md +16 -10
- package/docs/components/status/LoadingAnimation.md +3 -9
- package/docs/tasty/configuration.md +195 -15
- package/docs/tasty/dsl.md +40 -5
- package/docs/tasty/injector.md +11 -0
- package/docs/tasty/methodology.md +1 -1
- package/docs/tasty/pipeline.md +1 -4
- package/docs/tasty/react-api.md +1 -1
- package/docs/tasty/styles.md +8 -1
- package/package.json +4 -4
- package/dist/tokens/index.js.map +0 -1
|
@@ -1,9 +1,6 @@
|
|
|
1
1
|
# CommandTextArea
|
|
2
2
|
|
|
3
|
-
A multiline free-form field with inline token autocomplete. Typing a configured
|
|
4
|
-
trigger such as `/` or `@` opens suggestions at the caret; choosing one inserts
|
|
5
|
-
its literal value into the text and fires `onCommand`. The field value remains
|
|
6
|
-
the complete textarea string rather than a selected option key.
|
|
3
|
+
A multiline free-form field with inline token autocomplete. Typing a configured trigger such as `/` or `@` opens suggestions at the caret; choosing one inserts its literal value into the text and fires `onCommand`. The field value remains the complete textarea string rather than a selected option key.
|
|
7
4
|
|
|
8
5
|
## When to Use
|
|
9
6
|
|
|
@@ -39,34 +36,13 @@ Choose a different component when the interaction has another outcome:
|
|
|
39
36
|
- **`rows`** `number` (default: `3`) — Visible rows.
|
|
40
37
|
- **`maxRows`** `number` (default: `10`) — Max visible rows when `autoSize` is true.
|
|
41
38
|
|
|
42
|
-
Each option's value is the **literal string to insert**. For commands, set the
|
|
43
|
-
|
|
44
|
-
the active token and the
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
> **
|
|
49
|
-
> token before matching (so `/co` searches for `co`), and the query is matched
|
|
50
|
-
> against each option's `textValue`, its plain-text `children`, and its
|
|
51
|
-
> plain-text `description`. This means an option can match by its description
|
|
52
|
-
> even though the description doesn't contain the trigger char (e.g. typing
|
|
53
|
-
> `/co` keeps `/clear` because its description "Clear conversation" contains
|
|
54
|
-
> "co"). A recommended layout is to put the command in `children` (e.g.
|
|
55
|
-
> `/clear`) and the human-readable text in the `description` prop (e.g.
|
|
56
|
-
> `Clear conversation`), keeping `textValue` equal to the command so it inserts
|
|
57
|
-
> correctly.
|
|
58
|
-
|
|
59
|
-
The matched substring (the query with the trigger char stripped) is highlighted
|
|
60
|
-
within each option's plain-text `children` **and** `description`, so wherever the
|
|
61
|
-
query matched is visible.
|
|
62
|
-
|
|
63
|
-
> **Popover anchors to the caret.** The autocomplete popover tracks the text
|
|
64
|
-
> caret on both axes — it opens at the caret's horizontal position and on the
|
|
65
|
-
> caret's current line (not pinned to the textarea's top/bottom edge). This
|
|
66
|
-
> matters for multiline inputs, where the caret can be on any line. The popover
|
|
67
|
-
> is clamped to the viewport, so it flips or shifts when the caret is near an
|
|
68
|
-
> edge. `direction` still controls whether it prefers to open above (`top`) or
|
|
69
|
-
> below (`bottom`) the caret.
|
|
39
|
+
Each option's value is the **literal string to insert**. For commands, set the item's `textValue` (and `key`) to the full `/clear` — the slash is part of both the active token and the inserted value, so `/cle` becomes `/clear ` with no duplication. This decouples insertion from the trigger, so non-command autocomplete (e.g. a `@mention` resolving to `@john`) works the same way.
|
|
40
|
+
|
|
41
|
+
> **What the filter matches.** The trigger char is stripped from the active token before matching (so `/co` searches for `co`), and the query is matched against each option's `textValue`, its plain-text `children`, and its plain-text `description`. This means an option can match by its description even though the description doesn't contain the trigger char (e.g. typing `/co` keeps `/clear` because its description "Clear conversation" contains "co"). A recommended layout is to put the command in `children` (e.g. `/clear`) and the human-readable text in the `description` prop (e.g. `Clear conversation`), keeping `textValue` equal to the command so it inserts correctly.
|
|
42
|
+
|
|
43
|
+
The matched substring (the query with the trigger char stripped) is highlighted within each option's plain-text `children` **and** `description`, so wherever the query matched is visible.
|
|
44
|
+
|
|
45
|
+
> **Popover anchors to the caret.** The autocomplete popover tracks the text caret on both axes — it opens at the caret's horizontal position and on the caret's current line (not pinned to the textarea's top/bottom edge). This matters for multiline inputs, where the caret can be on any line. The popover is clamped to the viewport, so it flips or shifts when the caret is near an edge. `direction` still controls whether it prefers to open above (`top`) or below (`bottom`) the caret.
|
|
70
46
|
|
|
71
47
|
### Base Properties
|
|
72
48
|
|
|
@@ -74,9 +50,7 @@ Supports [Base properties](../../BaseProperties.md).
|
|
|
74
50
|
|
|
75
51
|
### Field Properties
|
|
76
52
|
|
|
77
|
-
Supports all [Field properties](../../FieldProperties.md)
|
|
78
|
-
(`label`, `name`, `isRequired`, `isDisabled`, `isReadOnly`, `isInvalid`,
|
|
79
|
-
`description`, `rules`, etc.).
|
|
53
|
+
Supports all [Field properties](../../FieldProperties.md) (`label`, `name`, `isRequired`, `isDisabled`, `isReadOnly`, `isInvalid`, `description`, `rules`, etc.).
|
|
80
54
|
|
|
81
55
|
### Styling Properties
|
|
82
56
|
|
|
@@ -144,8 +118,7 @@ These properties allow direct style application without using the `styles` prop:
|
|
|
144
118
|
### Screen Reader Support
|
|
145
119
|
|
|
146
120
|
- The textarea is announced as a `combobox` with `aria-autocomplete="list"`.
|
|
147
|
-
- `aria-expanded`, `aria-controls`, and `aria-activedescendant` track the
|
|
148
|
-
popover and the highlighted option.
|
|
121
|
+
- `aria-expanded`, `aria-controls`, and `aria-activedescendant` track the popover and the highlighted option.
|
|
149
122
|
|
|
150
123
|
## Integration with Forms
|
|
151
124
|
|
|
@@ -54,6 +54,7 @@ Supports all [Field properties](../../FieldProperties.md)
|
|
|
54
54
|
Customizes the root wrapper element of the component.
|
|
55
55
|
|
|
56
56
|
**Sub-elements:**
|
|
57
|
+
|
|
57
58
|
- `Prefix` - Element displayed before the input (icon area)
|
|
58
59
|
- `Suffix` - Element displayed after the input (calendar button area)
|
|
59
60
|
- `State` - Container for validation state indicators
|
|
@@ -193,6 +194,7 @@ The `mods` property accepts the following modifiers you can override:
|
|
|
193
194
|
## Best Practices
|
|
194
195
|
|
|
195
196
|
1. **Do**: Provide clear labels and format hints
|
|
197
|
+
|
|
196
198
|
```jsx
|
|
197
199
|
<DatePicker
|
|
198
200
|
label="Event date"
|
|
@@ -201,6 +203,7 @@ The `mods` property accepts the following modifiers you can override:
|
|
|
201
203
|
```
|
|
202
204
|
|
|
203
205
|
2. **Don't**: Use date picker for approximate dates
|
|
206
|
+
|
|
204
207
|
```jsx
|
|
205
208
|
<DatePicker label="Approximately when?" /> {/* Use text input instead */}
|
|
206
209
|
```
|
|
@@ -41,6 +41,7 @@ Supports all [Field properties](../../FieldProperties.md)
|
|
|
41
41
|
Customizes the root element of the component.
|
|
42
42
|
|
|
43
43
|
**Sub-elements:**
|
|
44
|
+
|
|
44
45
|
- `Button` - The clickable button element for file selection
|
|
45
46
|
- `Placeholder` - Text shown when no file is selected
|
|
46
47
|
- `Value` - Text showing the selected file name(s)
|
|
@@ -143,6 +144,7 @@ Pass `isValid` or `isInvalid` to tint the border and show the matching state ico
|
|
|
143
144
|
## Best Practices
|
|
144
145
|
|
|
145
146
|
1. **Do**: Provide clear file type and size requirements
|
|
147
|
+
|
|
146
148
|
```jsx
|
|
147
149
|
<FileInput
|
|
148
150
|
label="Upload resume"
|
|
@@ -152,6 +154,7 @@ Pass `isValid` or `isInvalid` to tint the border and show the matching state ico
|
|
|
152
154
|
```
|
|
153
155
|
|
|
154
156
|
2. **Don't**: Use unclear or missing labels
|
|
157
|
+
|
|
155
158
|
```jsx
|
|
156
159
|
<FileInput /> {/* What should be uploaded? */}
|
|
157
160
|
```
|
|
@@ -64,6 +64,7 @@ Supports all [Field properties](../../FieldProperties.md)
|
|
|
64
64
|
Customizes the root wrapper element of the component.
|
|
65
65
|
|
|
66
66
|
**Sub-elements:**
|
|
67
|
+
|
|
67
68
|
- `ValidationState` - Container for validation and loading indicators
|
|
68
69
|
|
|
69
70
|
#### searchInputStyles
|
|
@@ -71,6 +72,7 @@ Customizes the root wrapper element of the component.
|
|
|
71
72
|
Customizes the search input field appearance.
|
|
72
73
|
|
|
73
74
|
**Sub-elements:**
|
|
75
|
+
|
|
74
76
|
- `Prefix` - Container for search icon
|
|
75
77
|
- `InputIcon` - The search or loading icon
|
|
76
78
|
|
|
@@ -79,6 +81,7 @@ Customizes the search input field appearance.
|
|
|
79
81
|
Customizes the list container element that holds the filtered options.
|
|
80
82
|
|
|
81
83
|
**Sub-elements:**
|
|
84
|
+
|
|
82
85
|
- Same as ListBox component sub-elements
|
|
83
86
|
|
|
84
87
|
#### optionStyles
|
|
@@ -86,6 +89,7 @@ Customizes the list container element that holds the filtered options.
|
|
|
86
89
|
Customizes individual option elements.
|
|
87
90
|
|
|
88
91
|
**Sub-elements:**
|
|
92
|
+
|
|
89
93
|
- `Label` - The main text of each option
|
|
90
94
|
- `Description` - Secondary descriptive text for options
|
|
91
95
|
- `Content` - Container for label and description
|
|
@@ -97,6 +101,7 @@ Customizes individual option elements.
|
|
|
97
101
|
Customizes section wrapper elements.
|
|
98
102
|
|
|
99
103
|
**Sub-elements:**
|
|
104
|
+
|
|
100
105
|
- Same as ListBox component sub-elements
|
|
101
106
|
|
|
102
107
|
#### headingStyles
|
|
@@ -104,6 +109,7 @@ Customizes section wrapper elements.
|
|
|
104
109
|
Customizes section heading elements.
|
|
105
110
|
|
|
106
111
|
**Sub-elements:**
|
|
112
|
+
|
|
107
113
|
- Same as ListBox component sub-elements
|
|
108
114
|
|
|
109
115
|
#### listBoxStyles
|
|
@@ -115,6 +121,7 @@ Customizes the inner ListBox component.
|
|
|
115
121
|
Customizes the header area when header prop is provided.
|
|
116
122
|
|
|
117
123
|
**Sub-elements:**
|
|
124
|
+
|
|
118
125
|
- None - styles apply directly to the header container
|
|
119
126
|
|
|
120
127
|
#### footerStyles
|
|
@@ -122,6 +129,7 @@ Customizes the header area when header prop is provided.
|
|
|
122
129
|
Customizes the footer area when footer prop is provided.
|
|
123
130
|
|
|
124
131
|
**Sub-elements:**
|
|
132
|
+
|
|
125
133
|
- None - styles apply directly to the footer container
|
|
126
134
|
|
|
127
135
|
### Style Properties
|
|
@@ -261,14 +269,14 @@ const categories = [
|
|
|
261
269
|
|
|
262
270
|
```jsx
|
|
263
271
|
<FilterListBox label="Choose a fruit" searchPlaceholder="Search fruits...">
|
|
264
|
-
<FilterListBox.Item
|
|
265
|
-
key="apple"
|
|
272
|
+
<FilterListBox.Item
|
|
273
|
+
key="apple"
|
|
266
274
|
description="Crisp and sweet red fruit"
|
|
267
275
|
>
|
|
268
276
|
Apple
|
|
269
277
|
</FilterListBox.Item>
|
|
270
|
-
<FilterListBox.Item
|
|
271
|
-
key="banana"
|
|
278
|
+
<FilterListBox.Item
|
|
279
|
+
key="banana"
|
|
272
280
|
description="Yellow tropical fruit rich in potassium"
|
|
273
281
|
>
|
|
274
282
|
Banana
|
|
@@ -341,7 +349,7 @@ const categories = [
|
|
|
341
349
|
<FilterListBox
|
|
342
350
|
label="Programming Language"
|
|
343
351
|
searchPlaceholder="Type first letters..."
|
|
344
|
-
filter={(text, search) =>
|
|
352
|
+
filter={(text, search) =>
|
|
345
353
|
text.toLowerCase().startsWith(search.toLowerCase())
|
|
346
354
|
}
|
|
347
355
|
>
|
|
@@ -462,6 +470,7 @@ const categories = [
|
|
|
462
470
|
## Best Practices
|
|
463
471
|
|
|
464
472
|
1. **Do**: Use for lists with more than 10-15 options
|
|
473
|
+
|
|
465
474
|
```jsx
|
|
466
475
|
<FilterListBox label="Choose Country" searchPlaceholder="Search countries...">
|
|
467
476
|
{countries.map(country => (
|
|
@@ -471,6 +480,7 @@ const categories = [
|
|
|
471
480
|
```
|
|
472
481
|
|
|
473
482
|
2. **Don't**: Use for very small lists (under 5-7 options)
|
|
483
|
+
|
|
474
484
|
```jsx
|
|
475
485
|
// ❌ Avoid for small lists - use ListBox instead
|
|
476
486
|
<FilterListBox>
|
|
@@ -480,6 +490,7 @@ const categories = [
|
|
|
480
490
|
```
|
|
481
491
|
|
|
482
492
|
3. **Do**: Provide `textValue` for complex option content
|
|
493
|
+
|
|
483
494
|
```jsx
|
|
484
495
|
<FilterListBox.Item key="user1" textValue="John Doe john.doe@company.com">
|
|
485
496
|
<Avatar src="/john.jpg" />
|
|
@@ -491,10 +502,11 @@ const categories = [
|
|
|
491
502
|
```
|
|
492
503
|
|
|
493
504
|
4. **Do**: Use `showSelectAll` for efficient multiple selection from filtered lists
|
|
505
|
+
|
|
494
506
|
```jsx
|
|
495
|
-
<FilterListBox
|
|
496
|
-
selectionMode="multiple"
|
|
497
|
-
showSelectAll
|
|
507
|
+
<FilterListBox
|
|
508
|
+
selectionMode="multiple"
|
|
509
|
+
showSelectAll
|
|
498
510
|
selectAllLabel="Select All Visible"
|
|
499
511
|
searchPlaceholder="Filter items..."
|
|
500
512
|
>
|
|
@@ -503,9 +515,10 @@ const categories = [
|
|
|
503
515
|
```
|
|
504
516
|
|
|
505
517
|
5. **Do**: Use `isCheckable` for visual clarity in multiple selection mode
|
|
518
|
+
|
|
506
519
|
```jsx
|
|
507
|
-
<FilterListBox
|
|
508
|
-
selectionMode="multiple"
|
|
520
|
+
<FilterListBox
|
|
521
|
+
selectionMode="multiple"
|
|
509
522
|
isCheckable={true}
|
|
510
523
|
searchPlaceholder="Search options..."
|
|
511
524
|
>
|
|
@@ -551,7 +564,7 @@ FilterListBox supports custom filter functions for specialized search behavior:
|
|
|
551
564
|
|
|
552
565
|
```jsx
|
|
553
566
|
// Starts-with filter
|
|
554
|
-
const startsWithFilter = (text, search) =>
|
|
567
|
+
const startsWithFilter = (text, search) =>
|
|
555
568
|
text.toLowerCase().startsWith(search.toLowerCase());
|
|
556
569
|
|
|
557
570
|
// Fuzzy search filter
|
|
@@ -559,7 +572,7 @@ const fuzzyFilter = (text, search) => {
|
|
|
559
572
|
const searchChars = search.toLowerCase().split('');
|
|
560
573
|
const textLower = text.toLowerCase();
|
|
561
574
|
let searchIndex = 0;
|
|
562
|
-
|
|
575
|
+
|
|
563
576
|
for (const char of textLower) {
|
|
564
577
|
if (char === searchChars[searchIndex]) {
|
|
565
578
|
searchIndex++;
|
|
@@ -589,6 +602,7 @@ When `allowsCustomValue={true}`, users can add new options by typing:
|
|
|
589
602
|
```
|
|
590
603
|
|
|
591
604
|
Custom values:
|
|
605
|
+
|
|
592
606
|
- Are automatically added when selected
|
|
593
607
|
- Persist across searches
|
|
594
608
|
- Appear in the list with selected items
|
|
@@ -621,6 +635,7 @@ Use `customValueProps` to style existing custom values and `newCustomValueProps`
|
|
|
621
635
|
```
|
|
622
636
|
|
|
623
637
|
**Key differences:**
|
|
638
|
+
|
|
624
639
|
- `customValueProps` - Applied to custom values that are already selected
|
|
625
640
|
- `newCustomValueProps` - Applied to new custom values appearing when typing in search (merged with `customValueProps`)
|
|
626
641
|
|
|
@@ -655,6 +670,7 @@ const handleSearchChange = useCallback((value) => {
|
|
|
655
670
|
```
|
|
656
671
|
|
|
657
672
|
**How it works:**
|
|
673
|
+
|
|
658
674
|
- **`filter={false}`** disables client-side filtering so items appear exactly as the server returns them
|
|
659
675
|
- **`searchValue` + `onSearchChange`** give you control over the search input; debounce and fetch on your side
|
|
660
676
|
- **`items`** is reactive — replace it with server results and the list updates automatically
|
|
@@ -682,6 +698,7 @@ Use the `onEscape` prop to handle custom behavior when Escape is pressed with em
|
|
|
682
698
|
```
|
|
683
699
|
|
|
684
700
|
**Key behaviors:**
|
|
701
|
+
|
|
685
702
|
- If search has text: Escape clears the search
|
|
686
703
|
- If search is empty: Escape calls `onEscape` callback
|
|
687
704
|
- Useful for closing parent modals or dialogs
|
|
@@ -711,6 +728,7 @@ useEffect(() => {
|
|
|
711
728
|
```
|
|
712
729
|
|
|
713
730
|
**Use cases:**
|
|
731
|
+
|
|
714
732
|
- Debouncing search input
|
|
715
733
|
- Synchronizing with external UI
|
|
716
734
|
- Tracking search analytics
|
|
@@ -738,12 +756,14 @@ const items = Array.from({ length: 1000 }, (_, i) => ({
|
|
|
738
756
|
```
|
|
739
757
|
|
|
740
758
|
**Key features:**
|
|
759
|
+
|
|
741
760
|
- Automatically enabled for large lists without sections
|
|
742
761
|
- Handles items with varying heights
|
|
743
762
|
- Works seamlessly with filtering
|
|
744
763
|
- Maintains performance with thousands of items
|
|
745
764
|
|
|
746
765
|
**Limitations:**
|
|
766
|
+
|
|
747
767
|
- Virtualization is disabled when sections are present
|
|
748
768
|
- For sectioned large lists, consider flattening or alternative approaches
|
|
749
769
|
|
|
@@ -759,8 +779,8 @@ const items = Array.from({ length: 1000 }, (_, i) => ({
|
|
|
759
779
|
|
|
760
780
|
```jsx
|
|
761
781
|
// Optimized for performance
|
|
762
|
-
<FilterListBox.Item
|
|
763
|
-
key="complex"
|
|
782
|
+
<FilterListBox.Item
|
|
783
|
+
key="complex"
|
|
764
784
|
textValue="John Doe - Senior Developer - Engineering Team"
|
|
765
785
|
>
|
|
766
786
|
<ComplexUserCard user={user} />
|
|
@@ -91,6 +91,7 @@ Supports all [Field properties](../../FieldProperties.md)
|
|
|
91
91
|
Customizes the main wrapper element of the FilterPicker component.
|
|
92
92
|
|
|
93
93
|
**Sub-elements:**
|
|
94
|
+
|
|
94
95
|
- None - styles apply directly to the wrapper
|
|
95
96
|
|
|
96
97
|
#### triggerStyles
|
|
@@ -98,6 +99,7 @@ Customizes the main wrapper element of the FilterPicker component.
|
|
|
98
99
|
Customizes the trigger button element.
|
|
99
100
|
|
|
100
101
|
**Sub-elements:**
|
|
102
|
+
|
|
101
103
|
- None - styles apply directly to the trigger button
|
|
102
104
|
|
|
103
105
|
#### listBoxStyles
|
|
@@ -105,6 +107,7 @@ Customizes the trigger button element.
|
|
|
105
107
|
Customizes the dropdown list container within the popover.
|
|
106
108
|
|
|
107
109
|
**Sub-elements:**
|
|
110
|
+
|
|
108
111
|
- Same as FilterListBox: `Label`, `Description`, `Content`, `Checkbox`, `CheckboxWrapper`
|
|
109
112
|
|
|
110
113
|
#### popoverStyles
|
|
@@ -112,6 +115,7 @@ Customizes the dropdown list container within the popover.
|
|
|
112
115
|
Customizes the popover dialog that contains the FilterListBox.
|
|
113
116
|
|
|
114
117
|
**Sub-elements:**
|
|
118
|
+
|
|
115
119
|
- Same as Dialog component sub-elements
|
|
116
120
|
|
|
117
121
|
#### searchInputStyles
|
|
@@ -185,16 +189,16 @@ For detailed information about all available item properties, see [Item document
|
|
|
185
189
|
|
|
186
190
|
```jsx
|
|
187
191
|
<FilterPicker label="Team Filters" selectionMode="multiple">
|
|
188
|
-
<FilterPicker.Item
|
|
189
|
-
key="active-users"
|
|
192
|
+
<FilterPicker.Item
|
|
193
|
+
key="active-users"
|
|
190
194
|
icon={<IconUsers />}
|
|
191
195
|
description="Filter by active users"
|
|
192
196
|
suffix="12 users"
|
|
193
197
|
>
|
|
194
198
|
Active Users
|
|
195
199
|
</FilterPicker.Item>
|
|
196
|
-
<FilterPicker.Item
|
|
197
|
-
key="recent-activity"
|
|
200
|
+
<FilterPicker.Item
|
|
201
|
+
key="recent-activity"
|
|
198
202
|
icon={<IconClock />}
|
|
199
203
|
description="Recent activity in the last week"
|
|
200
204
|
rightIcon={<IconBadge />}
|
|
@@ -279,6 +283,7 @@ const categories = [
|
|
|
279
283
|
```
|
|
280
284
|
|
|
281
285
|
**Key Benefits:**
|
|
286
|
+
|
|
282
287
|
- **Virtualization**: Automatically enabled for large lists without sections
|
|
283
288
|
- **Performance**: Only renders visible items in the DOM
|
|
284
289
|
- **Dynamic Content**: Perfect for data fetched from APIs or changing datasets
|
|
@@ -286,6 +291,7 @@ const categories = [
|
|
|
286
291
|
- **Selected Items Sorting**: When using the `items` prop, selected items are automatically sorted to the top when the popover reopens (can be controlled with `sortSelectedToTop`)
|
|
287
292
|
|
|
288
293
|
**When to Use:**
|
|
294
|
+
|
|
289
295
|
- Lists with 50+ items
|
|
290
296
|
- Dynamic data from APIs
|
|
291
297
|
- Content that changes frequently
|
|
@@ -315,8 +321,8 @@ const categories = [
|
|
|
315
321
|
### Basic Usage
|
|
316
322
|
|
|
317
323
|
```jsx
|
|
318
|
-
<FilterPicker
|
|
319
|
-
label="Select Options"
|
|
324
|
+
<FilterPicker
|
|
325
|
+
label="Select Options"
|
|
320
326
|
placeholder="Choose items..."
|
|
321
327
|
searchPlaceholder="Search options..."
|
|
322
328
|
>
|
|
@@ -488,7 +494,7 @@ Use `isLoadingItems` to indicate that items are currently being fetched. Unlike
|
|
|
488
494
|
isCheckable={true}
|
|
489
495
|
renderSummary={({ selectedKeys, selectedLabels }) => {
|
|
490
496
|
if (selectedKeys.length === 0) return null;
|
|
491
|
-
if (selectedKeys.length <= 3)
|
|
497
|
+
if (selectedKeys.length <= 3)
|
|
492
498
|
return `${selectedKeys.length} filters: ${selectedLabels.join(', ')}`;
|
|
493
499
|
return `${selectedKeys.length} filters applied`;
|
|
494
500
|
}}
|
|
@@ -563,6 +569,7 @@ const [keyOrder, setKeyOrder] = useState([
|
|
|
563
569
|
## Best Practices
|
|
564
570
|
|
|
565
571
|
1. **Do**: Provide clear, descriptive labels for the trigger
|
|
572
|
+
|
|
566
573
|
```jsx
|
|
567
574
|
<FilterPicker label="Filter by Category" placeholder="Choose categories...">
|
|
568
575
|
<FilterPicker.Item key="electronics">Electronics</FilterPicker.Item>
|
|
@@ -570,6 +577,7 @@ const [keyOrder, setKeyOrder] = useState([
|
|
|
570
577
|
```
|
|
571
578
|
|
|
572
579
|
2. **Don't**: Use overly long option texts that will be truncated
|
|
580
|
+
|
|
573
581
|
```jsx
|
|
574
582
|
// ❌ Avoid very long option text
|
|
575
583
|
<FilterPicker.Item key="long">
|
|
@@ -578,6 +586,7 @@ const [keyOrder, setKeyOrder] = useState([
|
|
|
578
586
|
```
|
|
579
587
|
|
|
580
588
|
3. **Do**: Use sections for logical grouping of small to medium lists
|
|
589
|
+
|
|
581
590
|
```jsx
|
|
582
591
|
<FilterPicker.Section title="Categories">
|
|
583
592
|
<FilterPicker.Item key="tech">Technology</FilterPicker.Item>
|
|
@@ -585,6 +594,7 @@ const [keyOrder, setKeyOrder] = useState([
|
|
|
585
594
|
```
|
|
586
595
|
|
|
587
596
|
4. **Do**: Use dynamic content pattern for large datasets
|
|
597
|
+
|
|
588
598
|
```jsx
|
|
589
599
|
// ✅ For large lists (50+ items)
|
|
590
600
|
<FilterPicker items={largeDataset}>
|
|
@@ -593,10 +603,11 @@ const [keyOrder, setKeyOrder] = useState([
|
|
|
593
603
|
```
|
|
594
604
|
|
|
595
605
|
5. **Do**: Use `showSelectAll` for efficient multiple selection in compact interfaces
|
|
606
|
+
|
|
596
607
|
```jsx
|
|
597
|
-
<FilterPicker
|
|
598
|
-
selectionMode="multiple"
|
|
599
|
-
showSelectAll
|
|
608
|
+
<FilterPicker
|
|
609
|
+
selectionMode="multiple"
|
|
610
|
+
showSelectAll
|
|
600
611
|
selectAllLabel="Select All Options"
|
|
601
612
|
placeholder="Choose items..."
|
|
602
613
|
>
|
|
@@ -605,9 +616,10 @@ const [keyOrder, setKeyOrder] = useState([
|
|
|
605
616
|
```
|
|
606
617
|
|
|
607
618
|
6. **Do**: Use `isClearable` when users need to quickly clear selections
|
|
619
|
+
|
|
608
620
|
```jsx
|
|
609
|
-
<FilterPicker
|
|
610
|
-
isClearable
|
|
621
|
+
<FilterPicker
|
|
622
|
+
isClearable
|
|
611
623
|
selectionMode="single"
|
|
612
624
|
label="Choose option"
|
|
613
625
|
>
|
|
@@ -657,7 +669,7 @@ const renderSummary = ({ selectedLabels, selectedKeys, selectionMode }) => {
|
|
|
657
669
|
if (selectionMode === 'single') {
|
|
658
670
|
return selectedLabels[0] ? `Selected: ${selectedLabels[0]}` : null;
|
|
659
671
|
}
|
|
660
|
-
|
|
672
|
+
|
|
661
673
|
if (selectedKeys.length === 0) return null;
|
|
662
674
|
if (selectedKeys.length === 1) return selectedLabels[0];
|
|
663
675
|
if (selectedKeys.length <= 3) return selectedLabels.join(', ');
|
|
@@ -684,8 +696,9 @@ When `allowsCustomValue={true}`, users can add new options:
|
|
|
684
696
|
```
|
|
685
697
|
|
|
686
698
|
Custom values:
|
|
699
|
+
|
|
687
700
|
- Are automatically added when typed and selected
|
|
688
|
-
- Persist across popover sessions
|
|
701
|
+
- Persist across popover sessions
|
|
689
702
|
- Appear in the selection summary
|
|
690
703
|
- Can be removed like any other selection
|
|
691
704
|
|
|
@@ -719,6 +732,7 @@ When using the `items` prop, FilterPicker automatically sorts selected items to
|
|
|
719
732
|
```
|
|
720
733
|
|
|
721
734
|
**Key behaviors:**
|
|
735
|
+
|
|
722
736
|
- Sorting only works when using the `items` prop
|
|
723
737
|
- Selected items move to the top when the popover reopens
|
|
724
738
|
- Within sections, selected items sort to the top of their section
|
|
@@ -757,6 +771,7 @@ Add a clear button to quickly reset selection:
|
|
|
757
771
|
```
|
|
758
772
|
|
|
759
773
|
The clear button:
|
|
774
|
+
|
|
760
775
|
- Appears in the `rightIcon` slot when there's a selection
|
|
761
776
|
- Only shows when `isClearable={true}` and a selection exists
|
|
762
777
|
- Closes the popover when clicked
|
|
@@ -805,6 +820,7 @@ const handleSearchChange = useCallback((value) => {
|
|
|
805
820
|
```
|
|
806
821
|
|
|
807
822
|
**How it works:**
|
|
823
|
+
|
|
808
824
|
- **`filter={false}`** disables client-side filtering so items are shown exactly as the server returns them
|
|
809
825
|
- **`searchValue` + `onSearchChange`** give you control over the search input; debounce and fetch on your side
|
|
810
826
|
- **`items`** is a reactive prop — replace it with server results and the list updates automatically
|
|
@@ -815,6 +831,7 @@ const handleSearchChange = useCallback((value) => {
|
|
|
815
831
|
- **Reset on close** — use `onOpenChange` to restore the initial item set and clear the search when the popover closes, ensuring the trigger label resolves correctly
|
|
816
832
|
|
|
817
833
|
**Tips:**
|
|
834
|
+
|
|
818
835
|
- Debouncing is the consumer's responsibility (300-500ms is typical)
|
|
819
836
|
- During the debounce delay, old items remain visible — if you want instant client-side feedback while waiting, use a filter function instead of `false`
|
|
820
837
|
|
|
@@ -851,8 +868,8 @@ When using the dynamic content pattern (`items` prop) without sections, FilterPi
|
|
|
851
868
|
|
|
852
869
|
```jsx
|
|
853
870
|
// Optimized for performance
|
|
854
|
-
<FilterPicker.Item
|
|
855
|
-
key="complex"
|
|
871
|
+
<FilterPicker.Item
|
|
872
|
+
key="complex"
|
|
856
873
|
textValue="John Doe - Senior Developer"
|
|
857
874
|
>
|
|
858
875
|
<UserCard user={user} />
|
|
@@ -96,8 +96,8 @@ The `mods` property accepts the following modifiers you can override:
|
|
|
96
96
|
### Custom Value Formatting
|
|
97
97
|
|
|
98
98
|
```jsx
|
|
99
|
-
<HueSlider
|
|
100
|
-
label="Hue"
|
|
99
|
+
<HueSlider
|
|
100
|
+
label="Hue"
|
|
101
101
|
defaultValue={180}
|
|
102
102
|
getValueLabel={(val) => `${val}°`}
|
|
103
103
|
/>
|
|
@@ -129,9 +129,9 @@ function ColorPicker() {
|
|
|
129
129
|
### Vertical Orientation
|
|
130
130
|
|
|
131
131
|
```jsx
|
|
132
|
-
<HueSlider
|
|
133
|
-
orientation="vertical"
|
|
134
|
-
fieldStyles={{ height: '200px' }}
|
|
132
|
+
<HueSlider
|
|
133
|
+
orientation="vertical"
|
|
134
|
+
fieldStyles={{ height: '200px' }}
|
|
135
135
|
/>
|
|
136
136
|
```
|
|
137
137
|
|