@astryxdesign/core 0.3.0 → 0.4.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/CHANGELOG.md +156 -0
- package/dist/AlertDialog/AlertDialog.d.ts +10 -2
- package/dist/AlertDialog/AlertDialog.d.ts.map +1 -1
- package/dist/AlertDialog/AlertDialog.js +22 -3
- package/dist/AppShell/AppShell.d.ts +2 -2
- package/dist/AppShell/AppShell.d.ts.map +1 -1
- package/dist/AppShell/AppShell.js +40 -9
- package/dist/AspectRatio/AspectRatio.d.ts +13 -0
- package/dist/AspectRatio/AspectRatio.d.ts.map +1 -1
- package/dist/AspectRatio/AspectRatio.js +9 -0
- package/dist/Avatar/Avatar.d.ts.map +1 -1
- package/dist/Avatar/Avatar.js +33 -20
- package/dist/AvatarGroup/AvatarGroupOverflow.d.ts.map +1 -1
- package/dist/AvatarGroup/AvatarGroupOverflow.js +2 -3
- package/dist/Banner/Banner.d.ts.map +1 -1
- package/dist/Banner/Banner.js +15 -14
- package/dist/Breadcrumbs/BreadcrumbItem.d.ts.map +1 -1
- package/dist/Breadcrumbs/BreadcrumbItem.js +21 -8
- package/dist/Breadcrumbs/index.d.ts +2 -1
- package/dist/Breadcrumbs/index.d.ts.map +1 -1
- package/dist/Breadcrumbs/index.js +1 -0
- package/dist/Button/Button.d.ts.map +1 -1
- package/dist/Button/Button.js +11 -15
- package/dist/Calendar/Calendar.d.ts.map +1 -1
- package/dist/Calendar/Calendar.js +2 -1
- package/dist/Calendar/styles.d.ts +0 -2
- package/dist/Calendar/styles.d.ts.map +1 -1
- package/dist/Calendar/styles.js +0 -2
- package/dist/Carousel/Carousel.d.ts.map +1 -1
- package/dist/Carousel/Carousel.js +8 -12
- package/dist/Chat/ChatDictationButton.d.ts.map +1 -1
- package/dist/Chat/ChatDictationButton.js +2 -1
- package/dist/Chat/ChatLayoutScrollButton.d.ts.map +1 -1
- package/dist/Chat/ChatLayoutScrollButton.js +3 -1
- package/dist/Chat/ChatSendButton.d.ts.map +1 -1
- package/dist/Chat/ChatSendButton.js +4 -3
- package/dist/Chat/ChatToolCalls.d.ts.map +1 -1
- package/dist/Chat/ChatToolCalls.js +17 -17
- package/dist/Chat/useTriggerMenu.d.ts.map +1 -1
- package/dist/Chat/useTriggerMenu.js +2 -6
- package/dist/CheckboxInput/CheckboxInput.d.ts.map +1 -1
- package/dist/CheckboxInput/CheckboxInput.js +36 -125
- package/dist/ClickableCard/ClickableCard.d.ts.map +1 -1
- package/dist/ClickableCard/ClickableCard.js +3 -11
- package/dist/CodeBlock/CodeBlock.d.ts.map +1 -1
- package/dist/CodeBlock/CodeBlock.js +84 -67
- package/dist/Collapsible/Collapsible.d.ts.map +1 -1
- package/dist/Collapsible/Collapsible.js +35 -15
- package/dist/CommandPalette/CommandPaletteItem.d.ts +1 -1
- package/dist/CommandPalette/CommandPaletteItem.d.ts.map +1 -1
- package/dist/CommandPalette/CommandPaletteItem.js +6 -3
- package/dist/CommandPalette/CommandPaletteList.js +1 -1
- package/dist/ComplexSelector/ComplexSelector.d.ts +1 -1
- package/dist/ComplexSelector/ComplexSelector.d.ts.map +1 -1
- package/dist/ComplexSelector/ComplexSelector.js +35 -33
- package/dist/ContextMenu/ContextMenu.d.ts +2 -2
- package/dist/ContextMenu/ContextMenu.d.ts.map +1 -1
- package/dist/ContextMenu/ContextMenu.js +1 -1
- package/dist/ContextMenu/index.d.ts +2 -1
- package/dist/ContextMenu/index.d.ts.map +1 -1
- package/dist/ContextMenu/index.js +1 -0
- package/dist/DateInput/DateInput.d.ts +9 -2
- package/dist/DateInput/DateInput.d.ts.map +1 -1
- package/dist/DateInput/DateInput.js +24 -23
- package/dist/DateRangeInput/DateRangeInput.d.ts +9 -2
- package/dist/DateRangeInput/DateRangeInput.d.ts.map +1 -1
- package/dist/DateRangeInput/DateRangeInput.js +11 -16
- package/dist/DateTimeInput/DateTimeInput.d.ts +9 -1
- package/dist/DateTimeInput/DateTimeInput.d.ts.map +1 -1
- package/dist/DateTimeInput/DateTimeInput.js +22 -17
- package/dist/Dialog/Dialog.d.ts.map +1 -1
- package/dist/Dialog/Dialog.js +4 -4
- package/dist/DropdownMenu/DropdownMenu.d.ts +33 -8
- package/dist/DropdownMenu/DropdownMenu.d.ts.map +1 -1
- package/dist/DropdownMenu/DropdownMenu.js +62 -20
- package/dist/DropdownMenu/DropdownMenuCheckboxItem.d.ts +8 -11
- package/dist/DropdownMenu/DropdownMenuCheckboxItem.d.ts.map +1 -1
- package/dist/DropdownMenu/DropdownMenuCheckboxItem.js +32 -31
- package/dist/DropdownMenu/DropdownMenuDivider.d.ts +25 -0
- package/dist/DropdownMenu/DropdownMenuDivider.d.ts.map +1 -0
- package/dist/DropdownMenu/DropdownMenuDivider.js +66 -0
- package/dist/DropdownMenu/DropdownMenuItem.d.ts +15 -2
- package/dist/DropdownMenu/DropdownMenuItem.d.ts.map +1 -1
- package/dist/DropdownMenu/DropdownMenuItem.js +20 -8
- package/dist/DropdownMenu/DropdownMenuRadioItem.d.ts +5 -5
- package/dist/DropdownMenu/DropdownMenuRadioItem.d.ts.map +1 -1
- package/dist/DropdownMenu/DropdownMenuRadioItem.js +24 -67
- package/dist/DropdownMenu/DropdownMenuSubMenu.d.ts.map +1 -1
- package/dist/DropdownMenu/DropdownMenuSubMenu.js +2 -8
- package/dist/DropdownMenu/index.d.ts +2 -1
- package/dist/DropdownMenu/index.d.ts.map +1 -1
- package/dist/DropdownMenu/index.js +4 -0
- package/dist/DropdownMenu/renderDropdownItems.d.ts.map +1 -1
- package/dist/DropdownMenu/renderDropdownItems.js +35 -27
- package/dist/EmptyState/EmptyState.d.ts.map +1 -1
- package/dist/EmptyState/EmptyState.js +9 -5
- package/dist/Field/InputClearButton.d.ts +16 -3
- package/dist/Field/InputClearButton.d.ts.map +1 -1
- package/dist/Field/InputClearButton.js +15 -4
- package/dist/HoverCard/useHoverCard.d.ts.map +1 -1
- package/dist/HoverCard/useHoverCard.js +3 -19
- package/dist/Indicator/CheckIndicator.d.ts +25 -0
- package/dist/Indicator/CheckIndicator.d.ts.map +1 -0
- package/dist/Indicator/CheckIndicator.js +155 -0
- package/dist/Indicator/CheckboxIndicator.d.ts +22 -0
- package/dist/Indicator/CheckboxIndicator.d.ts.map +1 -0
- package/dist/Indicator/CheckboxIndicator.js +173 -0
- package/dist/Indicator/RadioIndicator.d.ts +23 -0
- package/dist/Indicator/RadioIndicator.d.ts.map +1 -0
- package/dist/Indicator/RadioIndicator.js +137 -0
- package/dist/Indicator/index.d.ts +24 -0
- package/dist/Indicator/index.d.ts.map +1 -0
- package/dist/Indicator/index.js +26 -0
- package/dist/Indicator/indicator.markers.stylex.d.ts +16 -0
- package/dist/Indicator/indicator.markers.stylex.d.ts.map +1 -0
- package/dist/Indicator/indicator.markers.stylex.js +21 -0
- package/dist/Indicator/indicatorRegistry.d.ts +71 -0
- package/dist/Indicator/indicatorRegistry.d.ts.map +1 -0
- package/dist/Indicator/indicatorRegistry.js +93 -0
- package/dist/Indicator/types.d.ts +167 -0
- package/dist/Indicator/types.d.ts.map +1 -0
- package/dist/Indicator/types.js +1 -0
- package/dist/Indicator/useIndicator.d.ts +18 -0
- package/dist/Indicator/useIndicator.d.ts.map +1 -0
- package/dist/Indicator/useIndicator.js +30 -0
- package/dist/Item/Item.d.ts.map +1 -1
- package/dist/Item/Item.js +4 -8
- package/dist/Layer/useLayer.d.ts +14 -0
- package/dist/Layer/useLayer.d.ts.map +1 -1
- package/dist/Layer/useLayer.js +25 -2
- package/dist/Lightbox/Lightbox.d.ts.map +1 -1
- package/dist/Lightbox/Lightbox.js +56 -53
- package/dist/Link/Link.d.ts.map +1 -1
- package/dist/Link/Link.js +4 -5
- package/dist/MobileNav/MobileNav.js +8 -8
- package/dist/MoreMenu/MoreMenu.d.ts +14 -1
- package/dist/MoreMenu/MoreMenu.d.ts.map +1 -1
- package/dist/MoreMenu/MoreMenu.js +4 -0
- package/dist/MultiSelector/MultiSelector.d.ts.map +1 -1
- package/dist/MultiSelector/MultiSelector.js +78 -75
- package/dist/NumberInput/NumberInput.d.ts +27 -1
- package/dist/NumberInput/NumberInput.d.ts.map +1 -1
- package/dist/NumberInput/NumberInput.js +230 -42
- package/dist/Outline/Outline.d.ts.map +1 -1
- package/dist/Outline/Outline.js +2 -3
- package/dist/Pagination/Pagination.d.ts.map +1 -1
- package/dist/Pagination/Pagination.js +61 -63
- package/dist/Popover/Popover.d.ts.map +1 -1
- package/dist/Popover/Popover.js +6 -8
- package/dist/PowerSearch/PowerSearch.d.ts.map +1 -1
- package/dist/PowerSearch/PowerSearch.js +1 -1
- package/dist/PowerSearch/PowerSearchEditPopover.d.ts.map +1 -1
- package/dist/PowerSearch/PowerSearchEditPopover.js +7 -0
- package/dist/ProgressBar/ProgressBar.d.ts +11 -4
- package/dist/ProgressBar/ProgressBar.d.ts.map +1 -1
- package/dist/ProgressBar/ProgressBar.js +96 -6
- package/dist/RadioList/RadioListItem.d.ts.map +1 -1
- package/dist/RadioList/RadioListItem.js +29 -84
- package/dist/Resizable/ResizeHandle.d.ts.map +1 -1
- package/dist/Resizable/ResizeHandle.js +2 -3
- package/dist/SegmentedControl/SegmentedControlItem.d.ts.map +1 -1
- package/dist/SegmentedControl/SegmentedControlItem.js +2 -3
- package/dist/SelectableCard/SelectableCard.d.ts.map +1 -1
- package/dist/SelectableCard/SelectableCard.js +3 -11
- package/dist/Selector/Selector.d.ts +2 -1
- package/dist/Selector/Selector.d.ts.map +1 -1
- package/dist/Selector/Selector.js +164 -94
- package/dist/Selector/hooks.d.ts +18 -6
- package/dist/Selector/hooks.d.ts.map +1 -1
- package/dist/Selector/hooks.js +57 -40
- package/dist/SideNav/SideNav.d.ts.map +1 -1
- package/dist/SideNav/SideNav.js +1 -1
- package/dist/SideNav/SideNavCollapseButton.d.ts +1 -1
- package/dist/SideNav/SideNavCollapseButton.d.ts.map +1 -1
- package/dist/SideNav/SideNavCollapseButton.js +29 -14
- package/dist/SideNav/SideNavHeading.d.ts.map +1 -1
- package/dist/SideNav/SideNavHeading.js +56 -20
- package/dist/SideNav/SideNavItem.d.ts.map +1 -1
- package/dist/SideNav/SideNavItem.js +28 -22
- package/dist/Stack/stack.stylex.d.ts +3 -3
- package/dist/Switch/Switch.js +11 -10
- package/dist/TabList/Tab.d.ts.map +1 -1
- package/dist/TabList/Tab.js +2 -3
- package/dist/TabList/TabMenu.d.ts.map +1 -1
- package/dist/TabList/TabMenu.js +41 -19
- package/dist/Table/BaseTable.d.ts.map +1 -1
- package/dist/Table/BaseTable.js +8 -0
- package/dist/Table/index.d.ts +1 -1
- package/dist/Table/index.d.ts.map +1 -1
- package/dist/Table/index.js +1 -1
- package/dist/Table/plugins/groupedRows/useTableGroupedRows.d.ts +1 -1
- package/dist/Table/plugins/groupedRows/useTableGroupedRows.d.ts.map +1 -1
- package/dist/Table/plugins/groupedRows/useTableGroupedRows.js +22 -18
- package/dist/Table/plugins/rowExpansion/index.d.ts +1 -1
- package/dist/Table/plugins/rowExpansion/index.d.ts.map +1 -1
- package/dist/Table/plugins/rowExpansion/index.js +1 -1
- package/dist/Table/plugins/rowExpansion/useTableRowExpansion.d.ts +41 -76
- package/dist/Table/plugins/rowExpansion/useTableRowExpansion.d.ts.map +1 -1
- package/dist/Table/plugins/rowExpansion/useTableRowExpansion.js +94 -345
- package/dist/Table/plugins/sortable/useTableSortable.d.ts.map +1 -1
- package/dist/Table/plugins/sortable/useTableSortable.js +23 -4
- package/dist/Table/plugins/tree/useTableTreeData.d.ts.map +1 -1
- package/dist/Table/plugins/tree/useTableTreeData.js +29 -33
- package/dist/Table/tableContextMenu.d.ts.map +1 -1
- package/dist/Table/tableContextMenu.js +2 -1
- package/dist/Table/types.d.ts +11 -0
- package/dist/Table/types.d.ts.map +1 -1
- package/dist/TextArea/TextArea.d.ts +10 -1
- package/dist/TextArea/TextArea.d.ts.map +1 -1
- package/dist/TextArea/TextArea.js +16 -6
- package/dist/TextInput/TextInput.d.ts +10 -1
- package/dist/TextInput/TextInput.d.ts.map +1 -1
- package/dist/TextInput/TextInput.js +13 -19
- package/dist/Thumbnail/Thumbnail.d.ts.map +1 -1
- package/dist/Thumbnail/Thumbnail.js +32 -26
- package/dist/TimeInput/TimeInput.d.ts.map +1 -1
- package/dist/TimeInput/TimeInput.js +7 -15
- package/dist/Timestamp/TimestampHoverCard.d.ts.map +1 -1
- package/dist/Timestamp/TimestampHoverCard.js +16 -34
- package/dist/Token/Token.d.ts.map +1 -1
- package/dist/Token/Token.js +20 -11
- package/dist/Tokenizer/Tokenizer.d.ts.map +1 -1
- package/dist/Tokenizer/Tokenizer.js +4 -2
- package/dist/Tooltip/useTooltip.d.ts.map +1 -1
- package/dist/Tooltip/useTooltip.js +3 -19
- package/dist/TopNav/TopNav.d.ts.map +1 -1
- package/dist/TopNav/TopNav.js +6 -5
- package/dist/TopNav/TopNavHeading.d.ts.map +1 -1
- package/dist/TopNav/TopNavHeading.js +54 -16
- package/dist/TopNav/TopNavItem.d.ts.map +1 -1
- package/dist/TopNav/TopNavItem.js +3 -9
- package/dist/TopNav/TopNavMegaMenu.d.ts +7 -0
- package/dist/TopNav/TopNavMegaMenu.d.ts.map +1 -1
- package/dist/TopNav/TopNavMegaMenu.js +146 -60
- package/dist/TopNav/TopNavMegaMenuItem.d.ts.map +1 -1
- package/dist/TopNav/TopNavMegaMenuItem.js +22 -3
- package/dist/TopNav/TopNavMenu.d.ts.map +1 -1
- package/dist/TopNav/TopNavMenu.js +83 -38
- package/dist/TreeList/TreeList.d.ts.map +1 -1
- package/dist/TreeList/TreeList.js +13 -0
- package/dist/TreeList/TreeListBranches.d.ts +1 -1
- package/dist/TreeList/TreeListBranches.d.ts.map +1 -1
- package/dist/TreeList/TreeListBranches.js +14 -4
- package/dist/TreeList/TreeListItem.d.ts +11 -1
- package/dist/TreeList/TreeListItem.d.ts.map +1 -1
- package/dist/TreeList/TreeListItem.js +57 -30
- package/dist/Typeahead/BaseTypeahead.d.ts.map +1 -1
- package/dist/Typeahead/BaseTypeahead.js +16 -8
- package/dist/astryx.css +74 -85
- package/dist/astryx.umd.js +56 -56
- package/dist/astryx.umd.js.map +4 -4
- package/dist/hooks/containerReveal.stylex.d.ts +61 -0
- package/dist/hooks/containerReveal.stylex.d.ts.map +1 -0
- package/dist/hooks/containerReveal.stylex.js +63 -0
- package/dist/hooks/index.d.ts +3 -0
- package/dist/hooks/index.d.ts.map +1 -1
- package/dist/hooks/index.js +2 -0
- package/dist/hooks/useClipboard.d.ts +59 -0
- package/dist/hooks/useClipboard.d.ts.map +1 -0
- package/dist/hooks/useClipboard.js +106 -0
- package/dist/hooks/useContainerReveal.d.ts +14 -8
- package/dist/hooks/useContainerReveal.d.ts.map +1 -1
- package/dist/hooks/useContainerReveal.js +28 -69
- package/dist/hooks/useIndicatorFocusRing.d.ts +28 -0
- package/dist/hooks/useIndicatorFocusRing.d.ts.map +1 -0
- package/dist/hooks/useIndicatorFocusRing.js +96 -0
- package/dist/hooks/useLongPress.d.ts.map +1 -1
- package/dist/hooks/useLongPress.js +12 -2
- package/dist/hooks/useScrollLock.d.ts.map +1 -1
- package/dist/hooks/useScrollLock.js +33 -18
- package/dist/hooks/useStreamingText.d.ts +18 -3
- package/dist/hooks/useStreamingText.d.ts.map +1 -1
- package/dist/hooks/useStreamingText.js +47 -7
- package/dist/hooks/useTreeFocus.d.ts.map +1 -1
- package/dist/hooks/useTreeFocus.js +9 -3
- package/dist/hooks/useTypeahead.d.ts +3 -2
- package/dist/hooks/useTypeahead.d.ts.map +1 -1
- package/dist/hooks/useTypeahead.js +19 -7
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/theme/defineTheme.d.ts +16 -0
- package/dist/theme/defineTheme.d.ts.map +1 -1
- package/dist/theme/defineTheme.js +8 -0
- package/dist/theme/derivedVarRegistry.d.ts +8 -0
- package/dist/theme/derivedVarRegistry.d.ts.map +1 -1
- package/dist/theme/derivedVarRegistry.js +14 -13
- package/dist/theme/expandColorScale.d.ts +3 -1
- package/dist/theme/expandColorScale.d.ts.map +1 -1
- package/dist/theme/expandColorScale.js +17 -7
- package/dist/theme/expandTypeScale.d.ts.map +1 -1
- package/dist/theme/expandTypeScale.js +17 -0
- package/dist/theme/generateThemeRules.d.ts.map +1 -1
- package/dist/theme/generateThemeRules.js +11 -0
- package/dist/theme/index.d.ts +1 -0
- package/dist/theme/index.d.ts.map +1 -1
- package/dist/utils/focusOutline.stylex.d.ts +107 -0
- package/dist/utils/focusOutline.stylex.d.ts.map +1 -0
- package/dist/utils/focusOutline.stylex.js +130 -0
- package/dist/utils/focusReturn.d.ts +24 -0
- package/dist/utils/focusReturn.d.ts.map +1 -0
- package/dist/utils/focusReturn.js +29 -0
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +1 -0
- package/dist/utils/mergeRefs.d.ts.map +1 -1
- package/dist/utils/mergeRefs.js +7 -5
- package/dist/utils/rtlStyles.d.ts +2 -2
- package/dist/utils/rtlStyles.js +2 -2
- package/dist/utils/themeProps.d.ts +20 -1
- package/dist/utils/themeProps.d.ts.map +1 -1
- package/dist/utils/themeProps.js +8 -2
- package/locales/en.json +12 -0
- package/locales/pseudo.json +9 -0
- package/package.json +7 -2
- package/src/AlertDialog/AlertDialog.doc.mjs +16 -3
- package/src/AlertDialog/AlertDialog.test.tsx +208 -1
- package/src/AlertDialog/AlertDialog.tsx +21 -3
- package/src/AppShell/AppShell.doc.mjs +11 -0
- package/src/AppShell/AppShell.test.tsx +139 -0
- package/src/AppShell/AppShell.tsx +32 -22
- package/src/AspectRatio/AspectRatio.doc.mjs +27 -3
- package/src/AspectRatio/AspectRatio.test.tsx +30 -0
- package/src/AspectRatio/AspectRatio.tsx +13 -0
- package/src/Avatar/Avatar.doc.mjs +2 -13
- package/src/Avatar/Avatar.test.tsx +33 -8
- package/src/Avatar/Avatar.tsx +52 -50
- package/src/AvatarGroup/AvatarGroupOverflow.tsx +2 -9
- package/src/Banner/Banner.tsx +9 -6
- package/src/Breadcrumbs/BreadcrumbItem.tsx +16 -6
- package/src/Breadcrumbs/index.ts +5 -1
- package/src/Button/Button.tsx +21 -41
- package/src/Calendar/Calendar.tsx +2 -1
- package/src/Calendar/styles.ts +0 -8
- package/src/Carousel/Carousel.doc.mjs +3 -0
- package/src/Carousel/Carousel.tsx +10 -6
- package/src/Chat/Chat.doc.mjs +2 -0
- package/src/Chat/ChatDictationButton.tsx +7 -1
- package/src/Chat/ChatLayoutScrollButton.test.tsx +22 -0
- package/src/Chat/ChatLayoutScrollButton.tsx +8 -1
- package/src/Chat/ChatSendButton.tsx +2 -3
- package/src/Chat/ChatToolCalls.test.tsx +35 -0
- package/src/Chat/ChatToolCalls.tsx +36 -16
- package/src/Chat/useTriggerMenu.tsx +2 -5
- package/src/CheckboxInput/CheckboxInput.doc.mjs +4 -2
- package/src/CheckboxInput/CheckboxInput.test.tsx +115 -0
- package/src/CheckboxInput/CheckboxInput.tsx +45 -202
- package/src/ClickableCard/ClickableCard.tsx +6 -11
- package/src/CodeBlock/CodeBlock.doc.mjs +3 -0
- package/src/CodeBlock/CodeBlock.test.tsx +91 -0
- package/src/CodeBlock/CodeBlock.tsx +57 -80
- package/src/Collapsible/Collapsible.tsx +22 -18
- package/src/CommandPalette/CommandPalette.test.tsx +29 -0
- package/src/CommandPalette/CommandPaletteItem.tsx +7 -4
- package/src/CommandPalette/CommandPaletteList.tsx +2 -2
- package/src/ComplexSelector/ComplexSelector.doc.mjs +42 -0
- package/src/ComplexSelector/ComplexSelector.test.tsx +64 -0
- package/src/ComplexSelector/ComplexSelector.tsx +46 -29
- package/src/ContextMenu/ContextMenu.doc.mjs +1 -1
- package/src/ContextMenu/ContextMenu.test.tsx +41 -0
- package/src/ContextMenu/ContextMenu.tsx +3 -3
- package/src/ContextMenu/index.ts +5 -1
- package/src/DateInput/DateInput.doc.mjs +18 -3
- package/src/DateInput/DateInput.test.tsx +93 -11
- package/src/DateInput/DateInput.tsx +41 -19
- package/src/DateRangeInput/DateRangeInput.doc.mjs +10 -2
- package/src/DateRangeInput/DateRangeInput.test.tsx +110 -14
- package/src/DateRangeInput/DateRangeInput.tsx +24 -12
- package/src/DateTimeInput/DateTimeInput.doc.mjs +16 -2
- package/src/DateTimeInput/DateTimeInput.test.tsx +75 -0
- package/src/DateTimeInput/DateTimeInput.tsx +35 -8
- package/src/Dialog/Dialog.tsx +2 -9
- package/src/DropdownMenu/DropdownMenu.doc.mjs +5 -9
- package/src/DropdownMenu/DropdownMenu.test.tsx +534 -4
- package/src/DropdownMenu/DropdownMenu.tsx +113 -52
- package/src/DropdownMenu/DropdownMenuCheckboxItem.tsx +27 -30
- package/src/DropdownMenu/DropdownMenuDivider.doc.mjs +34 -0
- package/src/DropdownMenu/DropdownMenuDivider.tsx +81 -0
- package/src/DropdownMenu/DropdownMenuItem.doc.mjs +39 -4
- package/src/DropdownMenu/DropdownMenuItem.tsx +48 -10
- package/src/DropdownMenu/DropdownMenuRadioItem.tsx +30 -76
- package/src/DropdownMenu/DropdownMenuSelectable.test.tsx +25 -19
- package/src/DropdownMenu/DropdownMenuSubMenu.test.tsx +44 -14
- package/src/DropdownMenu/DropdownMenuSubMenu.tsx +1 -5
- package/src/DropdownMenu/index.ts +8 -1
- package/src/DropdownMenu/renderDropdownItems.tsx +33 -34
- package/src/EmptyState/EmptyState.doc.mjs +4 -0
- package/src/EmptyState/EmptyState.test.tsx +62 -0
- package/src/EmptyState/EmptyState.tsx +16 -6
- package/src/Field/Field.doc.mjs +1 -0
- package/src/Field/InputClearButton.test.tsx +117 -0
- package/src/Field/InputClearButton.tsx +30 -3
- package/src/HoverCard/useHoverCard.tsx +2 -23
- package/src/Icon/Icon.doc.mjs +2 -1
- package/src/Indicator/CheckIndicator.tsx +174 -0
- package/src/Indicator/CheckboxIndicator.tsx +257 -0
- package/src/Indicator/Indicator.doc.mjs +344 -0
- package/src/Indicator/Indicator.test.tsx +393 -0
- package/src/Indicator/RadioIndicator.tsx +206 -0
- package/src/Indicator/index.ts +45 -0
- package/src/Indicator/indicator.markers.stylex.ts +19 -0
- package/src/Indicator/indicatorRegistry.test.tsx +106 -0
- package/src/Indicator/indicatorRegistry.ts +120 -0
- package/src/Indicator/types.ts +186 -0
- package/src/Indicator/useIndicator.ts +39 -0
- package/src/Item/Item.doc.mjs +1 -1
- package/src/Item/Item.tsx +7 -14
- package/src/Layer/useLayer.doc.mjs +2 -2
- package/src/Layer/useLayer.test.tsx +85 -0
- package/src/Layer/useLayer.tsx +39 -1
- package/src/Lightbox/Lightbox.doc.mjs +1 -1
- package/src/Lightbox/Lightbox.tsx +43 -38
- package/src/Link/Link.tsx +4 -11
- package/src/MobileNav/MobileNav.tsx +3 -3
- package/src/MoreMenu/MoreMenu.doc.mjs +31 -0
- package/src/MoreMenu/MoreMenu.test.tsx +68 -1
- package/src/MoreMenu/MoreMenu.tsx +19 -0
- package/src/MultiSelector/MultiSelector.doc.mjs +9 -1
- package/src/MultiSelector/MultiSelector.test.tsx +255 -16
- package/src/MultiSelector/MultiSelector.tsx +103 -99
- package/src/NumberInput/NumberInput.doc.mjs +265 -50
- package/src/NumberInput/NumberInput.test.tsx +726 -21
- package/src/NumberInput/NumberInput.tsx +353 -59
- package/src/Outline/Outline.tsx +2 -5
- package/src/Pagination/Pagination.doc.mjs +1 -1
- package/src/Pagination/Pagination.test.tsx +22 -7
- package/src/Pagination/Pagination.tsx +38 -35
- package/src/Popover/Popover.tsx +6 -7
- package/src/PowerSearch/PowerSearch.tsx +1 -1
- package/src/PowerSearch/PowerSearchEditPopover.test.tsx +42 -0
- package/src/PowerSearch/PowerSearchEditPopover.tsx +7 -0
- package/src/ProgressBar/ProgressBar.doc.mjs +27 -5
- package/src/ProgressBar/ProgressBar.test.tsx +224 -1
- package/src/ProgressBar/ProgressBar.tsx +124 -22
- package/src/RadioList/RadioList.doc.mjs +4 -2
- package/src/RadioList/RadioListItem.tsx +31 -130
- package/src/Resizable/ResizeHandle.tsx +2 -9
- package/src/SegmentedControl/SegmentedControlItem.tsx +2 -9
- package/src/SelectableCard/SelectableCard.tsx +4 -9
- package/src/Selector/Selector.doc.mjs +7 -4
- package/src/Selector/Selector.test.tsx +935 -25
- package/src/Selector/Selector.tsx +189 -106
- package/src/Selector/hooks.ts +77 -50
- package/src/SideNav/SideNav.test.tsx +46 -0
- package/src/SideNav/SideNav.tsx +1 -0
- package/src/SideNav/SideNavCollapseButton.tsx +15 -10
- package/src/SideNav/SideNavHeading.tsx +48 -10
- package/src/SideNav/SideNavItem.tsx +20 -12
- package/src/Stack/Stack.doc.mjs +110 -0
- package/src/StatusDot/StatusDot.doc.mjs +12 -3
- package/src/Switch/Switch.test.tsx +32 -0
- package/src/Switch/Switch.tsx +8 -8
- package/src/TabList/Tab.tsx +2 -9
- package/src/TabList/TabMenu.tsx +14 -21
- package/src/Table/BaseTable.tsx +11 -0
- package/src/Table/index.ts +1 -4
- package/src/Table/plugins/groupedRows/useTableGroupedRows.tsx +30 -14
- package/src/Table/plugins/rowExpansion/index.ts +1 -4
- package/src/Table/plugins/rowExpansion/useTableRowExpansion.test.tsx +125 -175
- package/src/Table/plugins/rowExpansion/useTableRowExpansion.tsx +115 -458
- package/src/Table/plugins/sortable/useTableSortable.tsx +2 -6
- package/src/Table/plugins/tree/useTableTreeData.tsx +43 -24
- package/src/Table/tableContextMenu.test.tsx +27 -0
- package/src/Table/tableContextMenu.tsx +1 -0
- package/src/Table/types.ts +11 -0
- package/src/Table/useTableGroupedRows.doc.mjs +1 -1
- package/src/Table/useTableRowExpansion.doc.mjs +43 -66
- package/src/TextArea/TextArea.doc.mjs +42 -2
- package/src/TextArea/TextArea.test.tsx +219 -0
- package/src/TextArea/TextArea.tsx +34 -7
- package/src/TextInput/TextInput.doc.mjs +18 -2
- package/src/TextInput/TextInput.test.tsx +189 -0
- package/src/TextInput/TextInput.tsx +25 -31
- package/src/Thumbnail/Thumbnail.tsx +2 -9
- package/src/TimeInput/TimeInput.doc.mjs +2 -2
- package/src/TimeInput/TimeInput.test.tsx +30 -3
- package/src/TimeInput/TimeInput.tsx +9 -26
- package/src/Timestamp/Timestamp.doc.mjs +4 -3
- package/src/Timestamp/TimestampHoverCard.tsx +13 -35
- package/src/Token/Token.tsx +5 -28
- package/src/Tokenizer/Tokenizer.doc.mjs +2 -2
- package/src/Tokenizer/Tokenizer.test.tsx +45 -3
- package/src/Tokenizer/Tokenizer.tsx +10 -2
- package/src/Tooltip/useTooltip.tsx +2 -23
- package/src/TopNav/TopNav.tsx +1 -3
- package/src/TopNav/TopNavHeading.tsx +42 -13
- package/src/TopNav/TopNavItem.tsx +3 -21
- package/src/TopNav/TopNavMegaMenu.test.tsx +433 -33
- package/src/TopNav/TopNavMegaMenu.tsx +118 -53
- package/src/TopNav/TopNavMegaMenuItem.tsx +2 -9
- package/src/TopNav/TopNavMenu.tsx +34 -37
- package/src/TreeList/TreeList.doc.mjs +5 -0
- package/src/TreeList/TreeList.test.tsx +206 -7
- package/src/TreeList/TreeList.tsx +22 -0
- package/src/TreeList/TreeListBranches.tsx +25 -2
- package/src/TreeList/TreeListItem.tsx +89 -52
- package/src/Typeahead/BaseTypeahead.tsx +19 -6
- package/src/Typeahead/Typeahead.doc.mjs +1 -0
- package/src/Typeahead/Typeahead.test.tsx +76 -3
- package/src/hooks/containerReveal.stylex.ts +102 -0
- package/src/hooks/index.ts +4 -0
- package/src/hooks/useClipboard.doc.mjs +87 -0
- package/src/hooks/useClipboard.test.tsx +151 -0
- package/src/hooks/useClipboard.ts +135 -0
- package/src/hooks/useContainerReveal.doc.mjs +7 -7
- package/src/hooks/useContainerReveal.test.tsx +42 -62
- package/src/hooks/useContainerReveal.ts +36 -91
- package/src/hooks/useImageMode.test.ts +1 -1
- package/src/hooks/useIndicatorFocusRing.tsx +120 -0
- package/src/hooks/useLongPress.test.tsx +18 -0
- package/src/hooks/useLongPress.ts +12 -2
- package/src/hooks/useScrollLock.test.ts +72 -0
- package/src/hooks/useScrollLock.ts +51 -19
- package/src/hooks/useStreamingText.test.ts +46 -1
- package/src/hooks/useStreamingText.ts +49 -7
- package/src/hooks/useTreeFocus.test.tsx +50 -0
- package/src/hooks/useTreeFocus.ts +14 -3
- package/src/hooks/useTypeahead.test.tsx +150 -0
- package/src/hooks/useTypeahead.ts +24 -9
- package/src/i18n/InternationalizationProvider.doc.mjs +7 -2
- package/src/index.ts +1 -0
- package/src/theme/defineTheme.ts +24 -0
- package/src/theme/derivedVarRegistry.test.ts +21 -1
- package/src/theme/derivedVarRegistry.ts +19 -6
- package/src/theme/expandColorScale.test.ts +14 -0
- package/src/theme/expandColorScale.ts +24 -9
- package/src/theme/expandTypeScale.test.ts +43 -0
- package/src/theme/expandTypeScale.ts +17 -0
- package/src/theme/generateThemeRules.test.ts +61 -20
- package/src/theme/generateThemeRules.ts +11 -0
- package/src/theme/index.ts +13 -0
- package/src/utils/focusOutline.stylex.ts +163 -0
- package/src/utils/focusReturn.test.ts +42 -0
- package/src/utils/focusReturn.ts +31 -0
- package/src/utils/index.ts +1 -0
- package/src/utils/mergeRefs.test.ts +48 -0
- package/src/utils/mergeRefs.ts +12 -6
- package/src/utils/rtlStyles.ts +2 -2
- package/src/utils/themeProps.ts +26 -4
- package/dist/CheckboxInput/checkbox.markers.stylex.d.ts +0 -9
- package/dist/CheckboxInput/checkbox.markers.stylex.d.ts.map +0 -1
- package/dist/CheckboxInput/checkbox.markers.stylex.js +0 -14
- package/dist/RadioList/radio.markers.stylex.d.ts +0 -7
- package/dist/RadioList/radio.markers.stylex.d.ts.map +0 -1
- package/dist/RadioList/radio.markers.stylex.js +0 -12
- package/dist/hooks/containerReveal.pool.stylex.d.ts +0 -303
- package/dist/hooks/containerReveal.pool.stylex.d.ts.map +0 -1
- package/dist/hooks/containerReveal.pool.stylex.js +0 -292
- package/src/CheckboxInput/checkbox.markers.stylex.ts +0 -12
- package/src/RadioList/radio.markers.stylex.ts +0 -10
- package/src/hooks/containerReveal.pool.stylex.ts +0 -571
|
@@ -6,7 +6,17 @@ export const docs = {
|
|
|
6
6
|
name: 'NumberInput',
|
|
7
7
|
displayName: 'Number Input',
|
|
8
8
|
category: 'Data Input',
|
|
9
|
-
keywords: [
|
|
9
|
+
keywords: [
|
|
10
|
+
'numberinput',
|
|
11
|
+
'numberfield',
|
|
12
|
+
'stepper',
|
|
13
|
+
'spinner',
|
|
14
|
+
'counter',
|
|
15
|
+
'increment',
|
|
16
|
+
'decrement',
|
|
17
|
+
'quantity',
|
|
18
|
+
'numberpicker',
|
|
19
|
+
],
|
|
10
20
|
props: [
|
|
11
21
|
{
|
|
12
22
|
name: 'label',
|
|
@@ -62,6 +72,13 @@ export const docs = {
|
|
|
62
72
|
type: 'boolean',
|
|
63
73
|
description: 'Whether the input is disabled.',
|
|
64
74
|
},
|
|
75
|
+
{
|
|
76
|
+
name: 'isReadOnly',
|
|
77
|
+
type: 'boolean',
|
|
78
|
+
description:
|
|
79
|
+
'Makes the input read-only: the value is shown at full opacity and still submits with the form, but cannot be edited. Unlike isDisabled, a read-only input is not dimmed and stays in the tab order. Stepping is off in every form while read-only: arrow keys, the wheel, and the number steppers. isDisabled takes precedence when both are set.',
|
|
80
|
+
default: 'false',
|
|
81
|
+
},
|
|
65
82
|
{
|
|
66
83
|
name: 'disabledMessage',
|
|
67
84
|
type: 'string',
|
|
@@ -82,12 +99,14 @@ export const docs = {
|
|
|
82
99
|
{
|
|
83
100
|
name: 'startIcon',
|
|
84
101
|
type: 'IconType',
|
|
85
|
-
description:
|
|
102
|
+
description:
|
|
103
|
+
'Icon to display at the start of the input. See `astryx docs icons` for valid semantic names.',
|
|
86
104
|
},
|
|
87
105
|
{
|
|
88
106
|
name: 'labelIcon',
|
|
89
107
|
type: 'IconType',
|
|
90
|
-
description:
|
|
108
|
+
description:
|
|
109
|
+
'Icon to display before the label text. See `astryx docs icons` for valid semantic names.',
|
|
91
110
|
},
|
|
92
111
|
{
|
|
93
112
|
name: 'status',
|
|
@@ -117,6 +136,26 @@ export const docs = {
|
|
|
117
136
|
description: 'Step increment for the input.',
|
|
118
137
|
default: '1',
|
|
119
138
|
},
|
|
139
|
+
{
|
|
140
|
+
name: 'formatValue',
|
|
141
|
+
type: '(value: number) => string',
|
|
142
|
+
description:
|
|
143
|
+
'Formats the committed value while the input is not focused. The raw numeric value is shown on focus for editing and the formatted value is exposed through aria-valuetext.',
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
name: 'isWheelEnabled',
|
|
147
|
+
type: 'boolean',
|
|
148
|
+
description:
|
|
149
|
+
'Whether scrolling the wheel over the focused input steps the value. Disable this when page scrolling should always take priority.',
|
|
150
|
+
default: 'true',
|
|
151
|
+
},
|
|
152
|
+
{
|
|
153
|
+
name: 'hasNumberSteppers',
|
|
154
|
+
type: 'boolean',
|
|
155
|
+
description:
|
|
156
|
+
'Shows increment and decrement buttons at the end of the input.',
|
|
157
|
+
default: 'false',
|
|
158
|
+
},
|
|
120
159
|
{
|
|
121
160
|
name: 'units',
|
|
122
161
|
type: 'string | null',
|
|
@@ -174,24 +213,74 @@ export const docs = {
|
|
|
174
213
|
],
|
|
175
214
|
theming: {
|
|
176
215
|
targets: [
|
|
177
|
-
{
|
|
216
|
+
{
|
|
217
|
+
className: 'astryx-number-input',
|
|
218
|
+
visualProps: ['size', 'status'],
|
|
219
|
+
states: ['disabled', 'readonly'],
|
|
220
|
+
},
|
|
178
221
|
],
|
|
179
222
|
},
|
|
180
223
|
usage: {
|
|
181
224
|
description:
|
|
182
225
|
'A form input for numeric values with built-in validation, min/max constraints, and step controls. Use NumberInput for quantities, measurements, percentages, and similar inputs.',
|
|
183
226
|
bestPractices: [
|
|
184
|
-
{
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
227
|
+
{
|
|
228
|
+
guidance: true,
|
|
229
|
+
description:
|
|
230
|
+
'Set min, max, and step to guide users toward valid values.',
|
|
231
|
+
},
|
|
232
|
+
{
|
|
233
|
+
guidance: true,
|
|
234
|
+
description:
|
|
235
|
+
'Show units (e.g. "%" or "GB") so users know what the number represents.',
|
|
236
|
+
},
|
|
237
|
+
{
|
|
238
|
+
guidance: true,
|
|
239
|
+
description:
|
|
240
|
+
'Set isWheelEnabled={false} when the input appears in a scrolling surface where wheel gestures should always scroll the page.',
|
|
241
|
+
},
|
|
242
|
+
{
|
|
243
|
+
guidance: false,
|
|
244
|
+
description:
|
|
245
|
+
'Use NumberInput for free-form text that happens to contain numbers; use TextInput instead.',
|
|
246
|
+
},
|
|
247
|
+
{
|
|
248
|
+
guidance: false,
|
|
249
|
+
description: 'Set both isOptional and isRequired on the same field.',
|
|
250
|
+
},
|
|
251
|
+
{
|
|
252
|
+
guidance: false,
|
|
253
|
+
description:
|
|
254
|
+
"Wrap a disabled NumberInput in Tooltip to explain why it's disabled; disabled controls swallow the hover events the wrapper needs. Use the disabledMessage prop instead.",
|
|
255
|
+
},
|
|
189
256
|
],
|
|
190
257
|
anatomy: [
|
|
191
|
-
{
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
258
|
+
{
|
|
259
|
+
name: 'Label',
|
|
260
|
+
required: true,
|
|
261
|
+
description: 'The label for the number input.',
|
|
262
|
+
},
|
|
263
|
+
{
|
|
264
|
+
name: 'Description',
|
|
265
|
+
required: false,
|
|
266
|
+
description: 'Additional description text below the label.',
|
|
267
|
+
},
|
|
268
|
+
{
|
|
269
|
+
name: 'Icon',
|
|
270
|
+
required: false,
|
|
271
|
+
description: 'An optional icon within the input.',
|
|
272
|
+
},
|
|
273
|
+
{
|
|
274
|
+
name: 'Placeholder',
|
|
275
|
+
required: false,
|
|
276
|
+
description: 'Placeholder text shown when the input is empty.',
|
|
277
|
+
},
|
|
278
|
+
{
|
|
279
|
+
name: 'Number steppers',
|
|
280
|
+
required: false,
|
|
281
|
+
description:
|
|
282
|
+
'Optional buttons that increment or decrement by the configured step.',
|
|
283
|
+
},
|
|
195
284
|
],
|
|
196
285
|
},
|
|
197
286
|
};
|
|
@@ -204,8 +293,7 @@ export const docsZh = {
|
|
|
204
293
|
{
|
|
205
294
|
name: 'label',
|
|
206
295
|
type: 'string',
|
|
207
|
-
description:
|
|
208
|
-
'输入框的标签文本(始终渲染以确保无障碍访问)。',
|
|
296
|
+
description: '输入框的标签文本(始终渲染以确保无障碍访问)。',
|
|
209
297
|
required: true,
|
|
210
298
|
},
|
|
211
299
|
{
|
|
@@ -217,8 +305,7 @@ export const docsZh = {
|
|
|
217
305
|
{
|
|
218
306
|
name: 'onChange',
|
|
219
307
|
type: '(value: number) => void',
|
|
220
|
-
description:
|
|
221
|
-
'输入值变化时触发的回调(仅在输入有效时触发)。',
|
|
308
|
+
description: '输入值变化时触发的回调(仅在输入有效时触发)。',
|
|
222
309
|
required: true,
|
|
223
310
|
},
|
|
224
311
|
{
|
|
@@ -230,8 +317,7 @@ export const docsZh = {
|
|
|
230
317
|
{
|
|
231
318
|
name: 'isLabelHidden',
|
|
232
319
|
type: 'boolean',
|
|
233
|
-
description:
|
|
234
|
-
'视觉隐藏标签(屏幕阅读器仍可访问)。',
|
|
320
|
+
description: '视觉隐藏标签(屏幕阅读器仍可访问)。',
|
|
235
321
|
},
|
|
236
322
|
{
|
|
237
323
|
name: 'description',
|
|
@@ -241,20 +327,25 @@ export const docsZh = {
|
|
|
241
327
|
{
|
|
242
328
|
name: 'isOptional',
|
|
243
329
|
type: 'boolean',
|
|
244
|
-
description:
|
|
245
|
-
'字段是否可选(与 isRequired 互斥)。',
|
|
330
|
+
description: '字段是否可选(与 isRequired 互斥)。',
|
|
246
331
|
},
|
|
247
332
|
{
|
|
248
333
|
name: 'isRequired',
|
|
249
334
|
type: 'boolean',
|
|
250
|
-
description:
|
|
251
|
-
'字段是否必填(与 isOptional 互斥)。',
|
|
335
|
+
description: '字段是否必填(与 isOptional 互斥)。',
|
|
252
336
|
},
|
|
253
337
|
{
|
|
254
338
|
name: 'isDisabled',
|
|
255
339
|
type: 'boolean',
|
|
256
340
|
description: '输入框是否禁用。',
|
|
257
341
|
},
|
|
342
|
+
{
|
|
343
|
+
name: 'isReadOnly',
|
|
344
|
+
type: 'boolean',
|
|
345
|
+
description:
|
|
346
|
+
'将输入框设为只读:值以完整不透明度显示并仍随表单提交,但无法编辑。与 isDisabled 不同,只读输入框不会变暗,并保留在 Tab 顺序中。只读时所有步进方式均被禁用:方向键、滚轮和步进按钮。同时设置时 isDisabled 优先。',
|
|
347
|
+
default: 'false',
|
|
348
|
+
},
|
|
258
349
|
{
|
|
259
350
|
name: 'disabledMessage',
|
|
260
351
|
type: 'string',
|
|
@@ -269,8 +360,7 @@ export const docsZh = {
|
|
|
269
360
|
{
|
|
270
361
|
name: 'labelTooltip',
|
|
271
362
|
type: 'string',
|
|
272
|
-
description:
|
|
273
|
-
'在标签末尾的信息图标中显示的工具提示文本。',
|
|
363
|
+
description: '在标签末尾的信息图标中显示的工具提示文本。',
|
|
274
364
|
},
|
|
275
365
|
{
|
|
276
366
|
name: 'startIcon',
|
|
@@ -310,11 +400,29 @@ export const docsZh = {
|
|
|
310
400
|
description: '输入框的步进增量。',
|
|
311
401
|
default: '1',
|
|
312
402
|
},
|
|
403
|
+
{
|
|
404
|
+
name: 'formatValue',
|
|
405
|
+
type: '(value: number) => string',
|
|
406
|
+
description:
|
|
407
|
+
'输入框未聚焦时格式化已提交的值。聚焦编辑时显示原始数值,并通过 aria-valuetext 提供格式化值。',
|
|
408
|
+
},
|
|
409
|
+
{
|
|
410
|
+
name: 'isWheelEnabled',
|
|
411
|
+
type: 'boolean',
|
|
412
|
+
description:
|
|
413
|
+
'是否允许在已聚焦的输入框上滚动滚轮来步进数值。当页面滚动应始终优先时请禁用。',
|
|
414
|
+
default: 'true',
|
|
415
|
+
},
|
|
416
|
+
{
|
|
417
|
+
name: 'hasNumberSteppers',
|
|
418
|
+
type: 'boolean',
|
|
419
|
+
description: '是否在输入框末尾显示递增和递减按钮。',
|
|
420
|
+
default: 'false',
|
|
421
|
+
},
|
|
313
422
|
{
|
|
314
423
|
name: 'units',
|
|
315
424
|
type: 'string | null',
|
|
316
|
-
description:
|
|
317
|
-
'在输入框末尾显示的单位文本(例如"%"或"GB")。',
|
|
425
|
+
description: '在输入框末尾显示的单位文本(例如"%"或"GB")。',
|
|
318
426
|
},
|
|
319
427
|
{
|
|
320
428
|
name: 'isIntegerOnly',
|
|
@@ -324,7 +432,8 @@ export const docsZh = {
|
|
|
324
432
|
{
|
|
325
433
|
name: 'hasClear',
|
|
326
434
|
type: 'boolean',
|
|
327
|
-
description:
|
|
435
|
+
description:
|
|
436
|
+
'输入有值时显示清除 (×) 按鈕。启用后, onChange 回调还接受 null 表示用户已清空输入。',
|
|
328
437
|
default: 'false',
|
|
329
438
|
},
|
|
330
439
|
{
|
|
@@ -360,46 +469,143 @@ export const docsZh = {
|
|
|
360
469
|
],
|
|
361
470
|
theming: {
|
|
362
471
|
targets: [
|
|
363
|
-
{
|
|
472
|
+
{
|
|
473
|
+
className: 'astryx-number-input',
|
|
474
|
+
visualProps: ['size', 'status'],
|
|
475
|
+
states: ['disabled', 'readonly'],
|
|
476
|
+
},
|
|
364
477
|
],
|
|
365
478
|
},
|
|
366
479
|
usage: {
|
|
367
480
|
description:
|
|
368
481
|
'A form input for numeric values with built-in validation, min/max constraints, and step controls. Use NumberInput for quantities, measurements, percentages, and similar inputs.',
|
|
369
482
|
bestPractices: [
|
|
370
|
-
{
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
483
|
+
{
|
|
484
|
+
guidance: true,
|
|
485
|
+
description:
|
|
486
|
+
'Set min, max, and step to guide users toward valid values.',
|
|
487
|
+
},
|
|
488
|
+
{
|
|
489
|
+
guidance: true,
|
|
490
|
+
description:
|
|
491
|
+
'Show units (e.g. "%" or "GB") so users know what the number represents.',
|
|
492
|
+
},
|
|
493
|
+
{
|
|
494
|
+
guidance: true,
|
|
495
|
+
description:
|
|
496
|
+
'Set isWheelEnabled={false} when the input appears in a scrolling surface where wheel gestures should always scroll the page.',
|
|
497
|
+
},
|
|
498
|
+
{
|
|
499
|
+
guidance: false,
|
|
500
|
+
description:
|
|
501
|
+
'Use NumberInput for free-form text that happens to contain numbers; use TextInput instead.',
|
|
502
|
+
},
|
|
503
|
+
{
|
|
504
|
+
guidance: false,
|
|
505
|
+
description: 'Set both isOptional and isRequired on the same field.',
|
|
506
|
+
},
|
|
507
|
+
{
|
|
508
|
+
guidance: false,
|
|
509
|
+
description:
|
|
510
|
+
"Wrap a disabled NumberInput in Tooltip to explain why it's disabled; disabled controls swallow the hover events the wrapper needs. Use the disabledMessage prop instead.",
|
|
511
|
+
},
|
|
375
512
|
],
|
|
376
513
|
anatomy: [
|
|
377
|
-
{
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
514
|
+
{
|
|
515
|
+
name: 'Label',
|
|
516
|
+
required: true,
|
|
517
|
+
description: 'The label for the number input.',
|
|
518
|
+
},
|
|
519
|
+
{
|
|
520
|
+
name: 'Description',
|
|
521
|
+
required: false,
|
|
522
|
+
description: 'Additional description text below the label.',
|
|
523
|
+
},
|
|
524
|
+
{
|
|
525
|
+
name: 'Icon',
|
|
526
|
+
required: false,
|
|
527
|
+
description: 'An optional icon within the input.',
|
|
528
|
+
},
|
|
529
|
+
{
|
|
530
|
+
name: 'Placeholder',
|
|
531
|
+
required: false,
|
|
532
|
+
description: 'Placeholder text shown when the input is empty.',
|
|
533
|
+
},
|
|
534
|
+
{
|
|
535
|
+
name: 'Number steppers',
|
|
536
|
+
required: false,
|
|
537
|
+
description:
|
|
538
|
+
'Optional buttons that increment or decrement by the configured step.',
|
|
539
|
+
},
|
|
381
540
|
],
|
|
382
541
|
},
|
|
383
542
|
};
|
|
384
543
|
|
|
385
544
|
/** @type {import('@astryxdesign/cli/authoring').ComponentTranslationDoc} */
|
|
386
545
|
export const docsDense = {
|
|
387
|
-
description:
|
|
546
|
+
description:
|
|
547
|
+
'Number input component for collecting numeric user input w/ validation.',
|
|
388
548
|
usage: {
|
|
389
549
|
description:
|
|
390
550
|
'A form input for numeric values with built-in validation, min/max constraints, and step controls. Use NumberInput for quantities, measurements, percentages, and similar inputs.',
|
|
391
551
|
bestPractices: [
|
|
392
|
-
{
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
552
|
+
{
|
|
553
|
+
guidance: true,
|
|
554
|
+
description:
|
|
555
|
+
'Set min, max, and step to guide users toward valid values.',
|
|
556
|
+
},
|
|
557
|
+
{
|
|
558
|
+
guidance: true,
|
|
559
|
+
description:
|
|
560
|
+
'Show units (e.g. "%" or "GB") so users know what the number represents.',
|
|
561
|
+
},
|
|
562
|
+
{
|
|
563
|
+
guidance: true,
|
|
564
|
+
description:
|
|
565
|
+
'Set isWheelEnabled={false} when the input appears in a scrolling surface where wheel gestures should always scroll the page.',
|
|
566
|
+
},
|
|
567
|
+
{
|
|
568
|
+
guidance: false,
|
|
569
|
+
description:
|
|
570
|
+
'Use NumberInput for free-form text that happens to contain numbers; use TextInput instead.',
|
|
571
|
+
},
|
|
572
|
+
{
|
|
573
|
+
guidance: false,
|
|
574
|
+
description: 'Set both isOptional and isRequired on the same field.',
|
|
575
|
+
},
|
|
576
|
+
{
|
|
577
|
+
guidance: false,
|
|
578
|
+
description:
|
|
579
|
+
"Wrap a disabled NumberInput in Tooltip to explain why it's disabled; disabled controls swallow the hover events the wrapper needs. Use the disabledMessage prop instead.",
|
|
580
|
+
},
|
|
397
581
|
],
|
|
398
582
|
anatomy: [
|
|
399
|
-
{
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
583
|
+
{
|
|
584
|
+
name: 'Label',
|
|
585
|
+
required: true,
|
|
586
|
+
description: 'The label for the number input.',
|
|
587
|
+
},
|
|
588
|
+
{
|
|
589
|
+
name: 'Description',
|
|
590
|
+
required: false,
|
|
591
|
+
description: 'Additional description text below the label.',
|
|
592
|
+
},
|
|
593
|
+
{
|
|
594
|
+
name: 'Icon',
|
|
595
|
+
required: false,
|
|
596
|
+
description: 'An optional icon within the input.',
|
|
597
|
+
},
|
|
598
|
+
{
|
|
599
|
+
name: 'Placeholder',
|
|
600
|
+
required: false,
|
|
601
|
+
description: 'Placeholder text shown when the input is empty.',
|
|
602
|
+
},
|
|
603
|
+
{
|
|
604
|
+
name: 'Number steppers',
|
|
605
|
+
required: false,
|
|
606
|
+
description:
|
|
607
|
+
'Optional buttons that increment or decrement by the configured step.',
|
|
608
|
+
},
|
|
403
609
|
],
|
|
404
610
|
},
|
|
405
611
|
propDescriptions: {
|
|
@@ -412,6 +618,8 @@ export const docsDense = {
|
|
|
412
618
|
isOptional: 'Field optional (mutually exclusive w/ isRequired).',
|
|
413
619
|
isRequired: 'Field required (mutually exclusive w/ isOptional).',
|
|
414
620
|
isDisabled: 'Input disabled.',
|
|
621
|
+
isReadOnly:
|
|
622
|
+
'Read-only: value visible + still submits, but not editable. Unlike isDisabled: not dimmed, stays in tab order.',
|
|
415
623
|
disabledMessage:
|
|
416
624
|
'Explains why input is disabled. With isDisabled, shows tooltip on hover/focus + keeps input focusable via aria-disabled (field becomes read-only). Use instead of wrapping a disabled NumberInput in Tooltip.',
|
|
417
625
|
placeholder: 'Placeholder text.',
|
|
@@ -419,13 +627,20 @@ export const docsDense = {
|
|
|
419
627
|
startIcon: 'Icon at input start.',
|
|
420
628
|
labelIcon: 'Icon before label text.',
|
|
421
629
|
status: 'Validation status w/ optional message.',
|
|
422
|
-
statusVariant:
|
|
630
|
+
statusVariant:
|
|
631
|
+
'How status message is placed: attached overlaps below input; detached floats below w/ spacing; tooltip hides the box and shows it on the status icon.',
|
|
423
632
|
min: 'Minimum value allowed.',
|
|
424
633
|
max: 'Maximum value allowed.',
|
|
425
634
|
step: 'Step increment.',
|
|
635
|
+
formatValue:
|
|
636
|
+
'Formats committed value at rest; raw number is shown while editing.',
|
|
637
|
+
isWheelEnabled:
|
|
638
|
+
'Allow focused wheel gestures to step value. Defaults to true.',
|
|
639
|
+
hasNumberSteppers: 'Show increment + decrement buttons. Defaults to false.',
|
|
426
640
|
units: 'Units suffix (e.g. "%" or "GB").',
|
|
427
641
|
isIntegerOnly: 'Only allow integer values.',
|
|
428
|
-
hasClear:
|
|
642
|
+
hasClear:
|
|
643
|
+
'Shows clear button when input has value. onChange also accepts null on clear.',
|
|
429
644
|
htmlName: 'HTML name for form submissions.',
|
|
430
645
|
autoComplete: 'HTML autocomplete attribute.',
|
|
431
646
|
hasAutoFocus: 'Focus input on mount.',
|