@astryxdesign/core 0.7.6-canary.fdabeba → 0.7.6
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 +270 -0
- package/dist/AlertDialog/AlertDialog.d.ts.map +1 -1
- package/dist/AlertDialog/AlertDialog.js +4 -2
- package/dist/AppShell/AppShell.d.ts.map +1 -1
- package/dist/AppShell/AppShell.js +48 -36
- package/dist/Avatar/Avatar.d.ts +1 -1
- package/dist/Avatar/Avatar.d.ts.map +1 -1
- package/dist/Avatar/Avatar.js +6 -4
- package/dist/AvatarGroup/AvatarGroup.d.ts.map +1 -1
- package/dist/AvatarGroup/AvatarGroup.js +4 -2
- package/dist/AvatarGroup/AvatarGroupOverflow.d.ts +1 -1
- package/dist/AvatarGroup/AvatarGroupOverflow.d.ts.map +1 -1
- package/dist/AvatarGroup/AvatarGroupOverflow.js +5 -3
- package/dist/Banner/Banner.d.ts.map +1 -1
- package/dist/Banner/Banner.js +10 -7
- package/dist/BottomSheet/BottomSheet.d.ts +3 -51
- package/dist/BottomSheet/BottomSheet.d.ts.map +1 -1
- package/dist/BottomSheet/BottomSheet.js +95 -91
- package/dist/BottomSheet/BottomSheetEdgeTint.d.ts.map +1 -1
- package/dist/BottomSheet/BottomSheetEdgeTint.js +10 -21
- package/dist/BottomSheet/BottomSheetHostContext.d.ts.map +1 -1
- package/dist/BottomSheet/BottomSheetHostContext.js +6 -10
- package/dist/BottomSheet/BottomSheetPanel.d.ts +14 -8
- package/dist/BottomSheet/BottomSheetPanel.d.ts.map +1 -1
- package/dist/BottomSheet/BottomSheetPanel.js +73 -50
- package/dist/BottomSheet/BottomSheetSwitcher.d.ts +16 -62
- package/dist/BottomSheet/BottomSheetSwitcher.d.ts.map +1 -1
- package/dist/BottomSheet/BottomSheetSwitcher.js +54 -72
- package/dist/BottomSheet/BottomSheetSwitcherContext.d.ts +8 -0
- package/dist/BottomSheet/BottomSheetSwitcherContext.d.ts.map +1 -1
- package/dist/BottomSheet/bottomSheetEscape.js +3 -3
- package/dist/BottomSheet/bottomSheetStack.d.ts.map +1 -1
- package/dist/BottomSheet/bottomSheetStack.js +42 -96
- package/dist/BottomSheet/useMobileKeyboard.d.ts +0 -14
- package/dist/BottomSheet/useMobileKeyboard.d.ts.map +1 -1
- package/dist/BottomSheet/useMobileKeyboard.js +56 -22
- package/dist/BottomSheet/useSheetGestures.d.ts +34 -68
- package/dist/BottomSheet/useSheetGestures.d.ts.map +1 -1
- package/dist/BottomSheet/useSheetGestures.js +111 -100
- package/dist/Breadcrumbs/BreadcrumbItem.js +4 -2
- package/dist/Breadcrumbs/Breadcrumbs.d.ts.map +1 -1
- package/dist/Breadcrumbs/Breadcrumbs.js +6 -3
- package/dist/Button/Button.d.ts +1 -1
- package/dist/Button/Button.d.ts.map +1 -1
- package/dist/Button/Button.js +19 -10
- package/dist/Calendar/Calendar.d.ts.map +1 -1
- package/dist/Calendar/Calendar.js +14 -12
- package/dist/Calendar/hooks/useCalendarNavigation.d.ts.map +1 -1
- package/dist/Calendar/hooks/useCalendarNavigation.js +4 -7
- package/dist/Carousel/Carousel.d.ts.map +1 -1
- package/dist/Carousel/Carousel.js +6 -3
- package/dist/Center/Center.d.ts +1 -1
- package/dist/Center/Center.js +1 -1
- package/dist/Chat/ChatComposer.d.ts.map +1 -1
- package/dist/Chat/ChatComposer.js +16 -8
- package/dist/Chat/ChatComposerDrawer.d.ts +1 -1
- package/dist/Chat/ChatComposerDrawer.d.ts.map +1 -1
- package/dist/Chat/ChatComposerDrawer.js +5 -3
- package/dist/Chat/ChatComposerInput.d.ts +1 -1
- package/dist/Chat/ChatComposerInput.d.ts.map +1 -1
- package/dist/Chat/ChatComposerInput.js +16 -4
- package/dist/Chat/ChatDictationButton.d.ts.map +1 -1
- package/dist/Chat/ChatDictationButton.js +6 -3
- package/dist/Chat/ChatLayout.d.ts.map +1 -1
- package/dist/Chat/ChatLayout.js +7 -4
- package/dist/Chat/ChatLayoutScrollButton.d.ts.map +1 -1
- package/dist/Chat/ChatLayoutScrollButton.js +6 -3
- package/dist/Chat/ChatMessage.d.ts.map +1 -1
- package/dist/Chat/ChatMessage.js +12 -4
- package/dist/Chat/ChatMessageList.d.ts.map +1 -1
- package/dist/Chat/ChatMessageList.js +7 -3
- package/dist/Chat/ChatMessageMetadata.d.ts.map +1 -1
- package/dist/Chat/ChatMessageMetadata.js +4 -2
- package/dist/Chat/ChatPastedTextToken.d.ts.map +1 -1
- package/dist/Chat/ChatPastedTextToken.js +23 -7
- package/dist/Chat/ChatSendButton.d.ts.map +1 -1
- package/dist/Chat/ChatSendButton.js +6 -3
- package/dist/Chat/ChatSystemMessage.d.ts.map +1 -1
- package/dist/Chat/ChatSystemMessage.js +2 -1
- package/dist/Chat/ChatToolCalls.d.ts.map +1 -1
- package/dist/Chat/ChatToolCalls.js +7 -4
- package/dist/Chat/chatMessage.vars.stylex.d.ts +16 -0
- package/dist/Chat/chatMessage.vars.stylex.d.ts.map +1 -0
- package/dist/Chat/chatMessage.vars.stylex.js +19 -0
- package/dist/Chat/useSpeechRecognition.d.ts.map +1 -1
- package/dist/Chat/useSpeechRecognition.js +5 -2
- package/dist/Chat/useTriggerMenu.d.ts +1 -1
- package/dist/Chat/useTriggerMenu.d.ts.map +1 -1
- package/dist/Chat/useTriggerMenu.js +37 -35
- package/dist/CheckboxInput/CheckboxInput.d.ts.map +1 -1
- package/dist/CheckboxInput/CheckboxInput.js +5 -3
- package/dist/CheckboxList/CheckboxList.d.ts.map +1 -1
- package/dist/CheckboxList/CheckboxList.js +5 -2
- package/dist/CheckboxList/CheckboxListContext.d.ts +8 -0
- package/dist/CheckboxList/CheckboxListContext.d.ts.map +1 -1
- package/dist/CheckboxList/CheckboxListItem.d.ts.map +1 -1
- package/dist/CheckboxList/CheckboxListItem.js +10 -4
- package/dist/Citation/Citation.d.ts.map +1 -1
- package/dist/Citation/Citation.js +4 -2
- package/dist/Code/Code.d.ts +1 -1
- package/dist/Code/Code.js +1 -1
- package/dist/CodeBlock/CodeBlock.d.ts.map +1 -1
- package/dist/CodeBlock/CodeBlock.js +30 -8
- package/dist/Collapsible/Collapsible.d.ts.map +1 -1
- package/dist/Collapsible/Collapsible.js +23 -3
- package/dist/CommandPalette/CommandPalette.d.ts.map +1 -1
- package/dist/CommandPalette/CommandPalette.js +24 -8
- package/dist/CommandPalette/CommandPaletteEmpty.d.ts.map +1 -1
- package/dist/CommandPalette/CommandPaletteEmpty.js +1 -0
- package/dist/CommandPalette/CommandPaletteFooter.d.ts.map +1 -1
- package/dist/CommandPalette/CommandPaletteFooter.js +4 -2
- package/dist/CommandPalette/CommandPaletteInput.d.ts.map +1 -1
- package/dist/CommandPalette/CommandPaletteInput.js +12 -7
- package/dist/CommandPalette/CommandPaletteList.d.ts.map +1 -1
- package/dist/CommandPalette/CommandPaletteList.js +4 -2
- package/dist/ComplexSelector/ComplexSelector.d.ts +2 -2
- package/dist/ComplexSelector/ComplexSelector.d.ts.map +1 -1
- package/dist/ComplexSelector/ComplexSelector.js +5 -3
- package/dist/ContextMenu/ContextMenu.d.ts +6 -0
- package/dist/ContextMenu/ContextMenu.d.ts.map +1 -1
- package/dist/ContextMenu/ContextMenu.js +35 -9
- package/dist/DateInput/DateInput.d.ts +3 -2
- package/dist/DateInput/DateInput.d.ts.map +1 -1
- package/dist/DateInput/DateInput.js +60 -15
- package/dist/DateInput/MonthScroller.d.ts.map +1 -1
- package/dist/DateInput/MonthScroller.js +4 -3
- package/dist/DateInput/NativeDateField.d.ts.map +1 -1
- package/dist/DateInput/NativeDateField.js +7 -8
- package/dist/DateInput/TouchDateField.d.ts.map +1 -1
- package/dist/DateInput/TouchDateField.js +12 -12
- package/dist/DateRangeInput/DateRangeInput.d.ts +3 -2
- package/dist/DateRangeInput/DateRangeInput.d.ts.map +1 -1
- package/dist/DateRangeInput/DateRangeInput.js +7 -8
- package/dist/DateTimeInput/DateTimeInput.d.ts.map +1 -1
- package/dist/DateTimeInput/DateTimeInput.js +41 -26
- package/dist/DateTimeInput/NativeDateSegment.d.ts.map +1 -1
- package/dist/DateTimeInput/NativeDateSegment.js +5 -2
- package/dist/DateTimeInput/NativeTimeSegment.d.ts.map +1 -1
- package/dist/DateTimeInput/NativeTimeSegment.js +5 -2
- package/dist/DateTimeInput/TouchDateTimeField.d.ts.map +1 -1
- package/dist/DateTimeInput/TouchDateTimeField.js +12 -12
- package/dist/Dialog/Dialog.d.ts +1 -1
- package/dist/Dialog/Dialog.d.ts.map +1 -1
- package/dist/Dialog/Dialog.js +35 -19
- package/dist/Dialog/DialogHeader.d.ts.map +1 -1
- package/dist/Dialog/DialogHeader.js +4 -2
- package/dist/Drawer/Drawer.d.ts +2 -2
- package/dist/Drawer/Drawer.d.ts.map +1 -1
- package/dist/Drawer/Drawer.js +27 -5
- package/dist/Drawer/DrawerHeader.d.ts.map +1 -1
- package/dist/Drawer/DrawerHeader.js +4 -2
- package/dist/DropdownMenu/DropdownMenu.d.ts +1 -1
- package/dist/DropdownMenu/DropdownMenu.d.ts.map +1 -1
- package/dist/DropdownMenu/DropdownMenu.js +31 -73
- package/dist/DropdownMenu/DropdownMenuCheckboxItem.d.ts +3 -2
- package/dist/DropdownMenu/DropdownMenuCheckboxItem.d.ts.map +1 -1
- package/dist/DropdownMenu/DropdownMenuCheckboxItem.js +4 -3
- package/dist/DropdownMenu/DropdownMenuItem.d.ts.map +1 -1
- package/dist/DropdownMenu/DropdownMenuItem.js +4 -3
- package/dist/DropdownMenu/DropdownMenuRadioItem.d.ts +4 -3
- package/dist/DropdownMenu/DropdownMenuRadioItem.d.ts.map +1 -1
- package/dist/DropdownMenu/DropdownMenuRadioItem.js +4 -3
- package/dist/DropdownMenu/DropdownMenuSubMenu.d.ts.map +1 -1
- package/dist/DropdownMenu/DropdownMenuSubMenu.js +15 -9
- package/dist/DropdownMenu/MenuBottomSheetActionList.d.ts.map +1 -1
- package/dist/DropdownMenu/MenuBottomSheetActionList.js +9 -3
- package/dist/Field/Field.d.ts +2 -2
- package/dist/Field/Field.d.ts.map +1 -1
- package/dist/Field/FieldLabel.d.ts +1 -1
- package/dist/Field/FieldLabel.d.ts.map +1 -1
- package/dist/Field/FieldLabel.js +10 -16
- package/dist/Field/InputClearButton.d.ts.map +1 -1
- package/dist/Field/InputClearButton.js +5 -3
- package/dist/Field/PanelSearchInput.d.ts.map +1 -1
- package/dist/Field/PanelSearchInput.js +10 -5
- package/dist/Field/fieldStatusPlacement.d.ts +15 -0
- package/dist/Field/fieldStatusPlacement.d.ts.map +1 -0
- package/dist/Field/fieldStatusPlacement.js +1 -0
- package/dist/Field/index.d.ts +4 -1
- package/dist/Field/index.d.ts.map +1 -1
- package/dist/Field/index.js +2 -1
- package/dist/Field/inputDisabledFocus.d.ts +16 -3
- package/dist/Field/inputDisabledFocus.d.ts.map +1 -1
- package/dist/Field/inputDisabledFocus.js +19 -3
- package/dist/Field/inputStyles.stylex.d.ts +12 -9
- package/dist/Field/inputStyles.stylex.d.ts.map +1 -1
- package/dist/Field/inputStyles.stylex.js +12 -9
- package/dist/Field/textEntryTraits.d.ts +86 -0
- package/dist/Field/textEntryTraits.d.ts.map +1 -0
- package/dist/Field/textEntryTraits.js +81 -0
- package/dist/FieldStatus/FieldStatus.d.ts +13 -28
- package/dist/FieldStatus/FieldStatus.d.ts.map +1 -1
- package/dist/FieldStatus/FieldStatus.js +25 -3
- package/dist/FieldStatus/index.d.ts +7 -0
- package/dist/FieldStatus/index.d.ts.map +1 -1
- package/dist/FileInput/FileInput.d.ts +7 -2
- package/dist/FileInput/FileInput.d.ts.map +1 -1
- package/dist/FileInput/FileInput.js +31 -4
- package/dist/Grid/Grid.d.ts +6 -4
- package/dist/Grid/Grid.d.ts.map +1 -1
- package/dist/Grid/GridSpan.d.ts +2 -0
- package/dist/Grid/GridSpan.d.ts.map +1 -1
- package/dist/Grid/GridSpan.js +2 -0
- package/dist/HStack/HStack.d.ts +2 -1
- package/dist/HStack/HStack.d.ts.map +1 -1
- package/dist/HStack/HStack.js +2 -1
- package/dist/Heading/Heading.d.ts +5 -3
- package/dist/Heading/Heading.d.ts.map +1 -1
- package/dist/Heading/Heading.js +5 -3
- package/dist/HoverCard/HoverCard.d.ts +8 -5
- package/dist/HoverCard/HoverCard.d.ts.map +1 -1
- package/dist/HoverCard/HoverCard.js +1 -0
- package/dist/HoverCard/useHoverCard.d.ts +3 -2
- package/dist/HoverCard/useHoverCard.d.ts.map +1 -1
- package/dist/HoverCard/useHoverCard.js +7 -0
- package/dist/InputGroup/groupStyles.d.ts.map +1 -1
- package/dist/InputGroup/groupStyles.js +12 -6
- package/dist/Item/Item.js +5 -5
- package/dist/Item/ItemSwipeLayer.d.ts.map +1 -1
- package/dist/Item/ItemSwipeLayer.js +8 -2
- package/dist/Kbd/Kbd.d.ts.map +1 -1
- package/dist/Kbd/Kbd.js +7 -3
- package/dist/Layer/layerClickBoundary.d.ts +35 -0
- package/dist/Layer/layerClickBoundary.d.ts.map +1 -0
- package/dist/Layer/layerClickBoundary.js +61 -0
- package/dist/Layer/layerStructureReset.stylex.d.ts +1 -0
- package/dist/Layer/layerStructureReset.stylex.d.ts.map +1 -1
- package/dist/Layer/layerStructureReset.stylex.js +1 -0
- package/dist/Layer/layerSurfacePress.d.ts +9 -0
- package/dist/Layer/layerSurfacePress.d.ts.map +1 -0
- package/dist/Layer/layerSurfacePress.js +35 -0
- package/dist/Layer/outsidePress.d.ts +45 -0
- package/dist/Layer/outsidePress.d.ts.map +1 -0
- package/dist/Layer/outsidePress.js +132 -0
- package/dist/Layer/useLayer.d.ts +8 -0
- package/dist/Layer/useLayer.d.ts.map +1 -1
- package/dist/Layer/useLayer.js +17 -6
- package/dist/Layer/useTouchTrigger.d.ts +26 -3
- package/dist/Layer/useTouchTrigger.d.ts.map +1 -1
- package/dist/Layer/useTouchTrigger.js +79 -10
- package/dist/Layout/LayoutSlotsContext.d.ts +5 -0
- package/dist/Layout/LayoutSlotsContext.d.ts.map +1 -1
- package/dist/Layout/LayoutSlotsContext.js +3 -2
- package/dist/Layout/layoutReset.d.ts +44 -0
- package/dist/Layout/layoutReset.d.ts.map +1 -0
- package/dist/Layout/layoutReset.js +40 -0
- package/dist/Lightbox/Lightbox.d.ts.map +1 -1
- package/dist/Lightbox/Lightbox.js +14 -7
- package/dist/Link/Link.d.ts.map +1 -1
- package/dist/Link/Link.js +5 -3
- package/dist/Markdown/Markdown.d.ts.map +1 -1
- package/dist/Markdown/Markdown.js +5 -2
- package/dist/Markdown/plugins/HeadingLinksRenderer.d.ts.map +1 -1
- package/dist/Markdown/plugins/HeadingLinksRenderer.js +4 -2
- package/dist/MetadataList/MetadataList.d.ts +1 -1
- package/dist/MetadataList/MetadataList.d.ts.map +1 -1
- package/dist/MetadataList/MetadataList.js +9 -5
- package/dist/MetadataList/MetadataListItem.d.ts.map +1 -1
- package/dist/MetadataList/MetadataListItem.js +2 -1
- package/dist/MobileNav/MobileNav.d.ts.map +1 -1
- package/dist/MobileNav/MobileNav.js +15 -5
- package/dist/MobileNav/MobileNavToggle.d.ts.map +1 -1
- package/dist/MobileNav/MobileNavToggle.js +4 -2
- package/dist/MoreMenu/MoreMenu.d.ts.map +1 -1
- package/dist/MoreMenu/MoreMenu.js +4 -2
- package/dist/MultiSelector/MultiSelector.d.ts +2 -2
- package/dist/MultiSelector/MultiSelector.d.ts.map +1 -1
- package/dist/MultiSelector/MultiSelector.js +22 -23
- package/dist/MultiSelector/hooks.d.ts.map +1 -1
- package/dist/MultiSelector/hooks.js +4 -2
- package/dist/NavMenu/NavHeadingMenuItem.d.ts.map +1 -1
- package/dist/NavMenu/NavHeadingMenuItem.js +2 -1
- package/dist/NumberInput/NumberInput.d.ts +3 -2
- package/dist/NumberInput/NumberInput.d.ts.map +1 -1
- package/dist/NumberInput/NumberInput.js +7 -3
- package/dist/Outline/Outline.d.ts.map +1 -1
- package/dist/Outline/Outline.js +4 -2
- package/dist/OverflowList/OverflowList.d.ts.map +1 -1
- package/dist/OverflowList/OverflowList.js +2 -1
- package/dist/Pagination/Pagination.d.ts.map +1 -1
- package/dist/Pagination/Pagination.js +6 -3
- package/dist/Popover/Popover.d.ts.map +1 -1
- package/dist/Popover/Popover.js +8 -5
- package/dist/Popover/usePopover.d.ts +7 -1
- package/dist/Popover/usePopover.d.ts.map +1 -1
- package/dist/Popover/usePopover.js +12 -4
- package/dist/PowerSearch/PowerSearch.d.ts +3 -2
- package/dist/PowerSearch/PowerSearch.d.ts.map +1 -1
- package/dist/PowerSearch/PowerSearch.js +8 -4
- package/dist/PowerSearch/PowerSearchEditPopover.d.ts.map +1 -1
- package/dist/PowerSearch/PowerSearchEditPopover.js +7 -4
- package/dist/PowerSearch/PowerSearchToken.d.ts.map +1 -1
- package/dist/PowerSearch/PowerSearchToken.js +2 -2
- package/dist/PowerSearch/PowerSearchValueEditor.d.ts.map +1 -1
- package/dist/PowerSearch/PowerSearchValueEditor.js +16 -13
- package/dist/PowerSearch/formatFilterValue.d.ts.map +1 -1
- package/dist/PowerSearch/formatFilterValue.js +3 -0
- package/dist/PowerSearch/resolveOperatorLabel.d.ts +4 -1
- package/dist/PowerSearch/resolveOperatorLabel.d.ts.map +1 -1
- package/dist/PowerSearch/resolveOperatorLabel.js +5 -0
- package/dist/PowerSearch/usePowerSearchConfig.d.ts.map +1 -1
- package/dist/PowerSearch/usePowerSearchConfig.js +3 -0
- package/dist/PowerSearch/usePowerSearchSource.d.ts.map +1 -1
- package/dist/PowerSearch/usePowerSearchSource.js +3 -2
- package/dist/ProgressBar/ProgressBar.d.ts.map +1 -1
- package/dist/ProgressBar/ProgressBar.js +3 -1
- package/dist/RadioList/RadioList.d.ts.map +1 -1
- package/dist/RadioList/RadioList.js +7 -2
- package/dist/RadioList/RadioListItem.d.ts.map +1 -1
- package/dist/RadioList/RadioListItem.js +8 -2
- package/dist/RadioList/RadioListReasonContext.d.ts +2 -0
- package/dist/RadioList/RadioListReasonContext.d.ts.map +1 -0
- package/dist/RadioList/RadioListReasonContext.js +22 -0
- package/dist/Resizable/ResizeHandle.d.ts.map +1 -1
- package/dist/Resizable/ResizeHandle.js +4 -2
- package/dist/Resizable/resizableModel.d.ts +64 -0
- package/dist/Resizable/resizableModel.d.ts.map +1 -0
- package/dist/Resizable/resizableModel.js +287 -0
- package/dist/Resizable/useResizable.d.ts +2 -2
- package/dist/Resizable/useResizable.d.ts.map +1 -1
- package/dist/Resizable/useResizable.js +1 -284
- package/dist/SegmentedControl/SegmentedControl.d.ts +7 -5
- package/dist/SegmentedControl/SegmentedControl.d.ts.map +1 -1
- package/dist/SegmentedControl/SegmentedControl.js +26 -16
- package/dist/SegmentedControl/SegmentedControlContext.d.ts +4 -5
- package/dist/SegmentedControl/SegmentedControlContext.d.ts.map +1 -1
- package/dist/SegmentedControl/SegmentedControlItem.d.ts +1 -1
- package/dist/SegmentedControl/SegmentedControlItem.d.ts.map +1 -1
- package/dist/SegmentedControl/SegmentedControlItem.js +16 -13
- package/dist/SelectableCard/SelectableCard.d.ts.map +1 -1
- package/dist/SelectableCard/SelectableCard.js +59 -0
- package/dist/Selector/Selector.d.ts +3 -3
- package/dist/Selector/Selector.d.ts.map +1 -1
- package/dist/Selector/Selector.js +11 -10
- package/dist/Selector/useSelectorPresentation.d.ts +7 -1
- package/dist/Selector/useSelectorPresentation.d.ts.map +1 -1
- package/dist/Selector/useSelectorPresentation.js +2 -1
- package/dist/SideNav/SideNav.d.ts.map +1 -1
- package/dist/SideNav/SideNav.js +156 -23
- package/dist/SideNav/SideNavCollapseButton.d.ts.map +1 -1
- package/dist/SideNav/SideNavCollapseButton.js +16 -4
- package/dist/SideNav/SideNavFocusTargetsContext.d.ts +11 -0
- package/dist/SideNav/SideNavFocusTargetsContext.d.ts.map +1 -0
- package/dist/SideNav/SideNavFocusTargetsContext.js +16 -0
- package/dist/SideNav/SideNavHeading.d.ts.map +1 -1
- package/dist/SideNav/SideNavHeading.js +26 -17
- package/dist/SideNav/SideNavItem.d.ts.map +1 -1
- package/dist/SideNav/SideNavItem.js +21 -5
- package/dist/SideNav/SideNavSection.d.ts.map +1 -1
- package/dist/SideNav/SideNavSection.js +2 -1
- package/dist/SideNav/railMotion.d.ts +5 -5
- package/dist/SideNav/railMotion.d.ts.map +1 -1
- package/dist/SideNav/railMotion.js +69 -177
- package/dist/Slider/Slider.d.ts.map +1 -1
- package/dist/Slider/Slider.js +16 -10
- package/dist/Spinner/Spinner.d.ts +1 -1
- package/dist/Spinner/Spinner.d.ts.map +1 -1
- package/dist/Spinner/Spinner.js +6 -4
- package/dist/Stack/Stack.d.ts +1 -1
- package/dist/Stack/stack.stylex.d.ts +1 -1
- package/dist/Stack/stack.stylex.js +1 -1
- package/dist/Stepper/Step.d.ts.map +1 -1
- package/dist/Stepper/Step.js +6 -3
- package/dist/Stepper/Stepper.d.ts.map +1 -1
- package/dist/Stepper/Stepper.js +5 -3
- package/dist/Switch/Switch.d.ts +1 -1
- package/dist/Switch/Switch.d.ts.map +1 -1
- package/dist/Switch/Switch.js +5 -3
- package/dist/TabList/TabList.d.ts.map +1 -1
- package/dist/TabList/TabList.js +5 -3
- package/dist/Table/BaseTable.d.ts.map +1 -1
- package/dist/Table/BaseTable.js +11 -8
- package/dist/Table/Table.d.ts.map +1 -1
- package/dist/Table/Table.js +6 -3
- package/dist/Table/TableSelectionToolbar.d.ts.map +1 -1
- package/dist/Table/TableSelectionToolbar.js +4 -2
- package/dist/Table/glidingDivider.d.ts +8 -1
- package/dist/Table/glidingDivider.d.ts.map +1 -1
- package/dist/Table/glidingDivider.js +8 -3
- package/dist/Table/plugins/columnResize/useTableColumnResize.d.ts.map +1 -1
- package/dist/Table/plugins/columnResize/useTableColumnResize.js +6 -3
- package/dist/Table/plugins/filtering/useTableFiltering.d.ts.map +1 -1
- package/dist/Table/plugins/filtering/useTableFiltering.js +14 -10
- package/dist/Table/plugins/groupedRows/useTableGroupedRows.d.ts.map +1 -1
- package/dist/Table/plugins/groupedRows/useTableGroupedRows.js +5 -3
- package/dist/Table/plugins/pagination/useTablePagination.d.ts.map +1 -1
- package/dist/Table/plugins/pagination/useTablePagination.js +6 -3
- package/dist/Table/plugins/rowExpansion/useTableRowExpansion.d.ts +1 -1
- package/dist/Table/plugins/rowExpansion/useTableRowExpansion.d.ts.map +1 -1
- package/dist/Table/plugins/rowExpansion/useTableRowExpansion.js +8 -5
- package/dist/Table/plugins/rowStatus/useTableRowStatus.d.ts.map +1 -1
- package/dist/Table/plugins/rowStatus/useTableRowStatus.js +6 -3
- package/dist/Table/plugins/selection/useTableSelection.d.ts.map +1 -1
- package/dist/Table/plugins/selection/useTableSelection.js +7 -4
- package/dist/Table/plugins/sortable/useTableSortable.d.ts.map +1 -1
- package/dist/Table/plugins/sortable/useTableSortable.js +8 -5
- package/dist/Table/plugins/stickyColumns/useTableStickyColumns.d.ts.map +1 -1
- package/dist/Table/plugins/stickyColumns/useTableStickyColumns.js +1 -2
- package/dist/Table/plugins/tree/useTableTreeData.d.ts.map +1 -1
- package/dist/Table/plugins/tree/useTableTreeData.js +8 -5
- package/dist/Text/text.stylex.d.ts +2 -0
- package/dist/Text/text.stylex.d.ts.map +1 -1
- package/dist/Text/text.stylex.js +11 -0
- package/dist/TextArea/TextArea.d.ts +7 -5
- package/dist/TextArea/TextArea.d.ts.map +1 -1
- package/dist/TextArea/TextArea.js +25 -7
- package/dist/TextInput/TextInput.d.ts +23 -8
- package/dist/TextInput/TextInput.d.ts.map +1 -1
- package/dist/TextInput/TextInput.js +30 -5
- package/dist/Thumbnail/Thumbnail.d.ts.map +1 -1
- package/dist/Thumbnail/Thumbnail.js +4 -2
- package/dist/TimeInput/TimeInput.d.ts +3 -2
- package/dist/TimeInput/TimeInput.d.ts.map +1 -1
- package/dist/TimeInput/TimeInput.js +7 -10
- package/dist/TimeInput/TouchTimeField.d.ts.map +1 -1
- package/dist/TimeInput/TouchTimeField.js +8 -9
- package/dist/Timer/Timer.js +1 -1
- package/dist/Timestamp/Timestamp.d.ts.map +1 -1
- package/dist/Timestamp/Timestamp.js +5 -3
- package/dist/Timestamp/TimestampHoverCard.d.ts.map +1 -1
- package/dist/Timestamp/TimestampHoverCard.js +4 -2
- package/dist/Toast/Toast.d.ts.map +1 -1
- package/dist/Toast/Toast.js +5 -3
- package/dist/Toast/ToastViewport.d.ts.map +1 -1
- package/dist/Toast/ToastViewport.js +6 -2
- package/dist/Toast/useToast.d.ts.map +1 -1
- package/dist/Toast/useToast.js +8 -2
- package/dist/ToggleButton/ToggleButton.d.ts.map +1 -1
- package/dist/ToggleButton/ToggleButton.js +11 -3
- package/dist/Token/Token.d.ts.map +1 -1
- package/dist/Token/Token.js +8 -3
- package/dist/Token/TokenLink.d.ts +9 -2
- package/dist/Token/TokenLink.d.ts.map +1 -1
- package/dist/Token/TokenLink.js +2 -0
- package/dist/Tokenizer/Tokenizer.d.ts +12 -5
- package/dist/Tokenizer/Tokenizer.d.ts.map +1 -1
- package/dist/Tokenizer/Tokenizer.js +81 -54
- package/dist/Tokenizer/TokenizerBottomSheet.d.ts +1 -1
- package/dist/Tokenizer/TokenizerBottomSheet.d.ts.map +1 -1
- package/dist/Tokenizer/TokenizerBottomSheet.js +6 -4
- package/dist/Tooltip/Tooltip.d.ts +4 -3
- package/dist/Tooltip/Tooltip.d.ts.map +1 -1
- package/dist/Tooltip/useTooltip.d.ts +4 -3
- package/dist/Tooltip/useTooltip.d.ts.map +1 -1
- package/dist/Tooltip/useTooltip.js +40 -8
- package/dist/TopNav/TopNav.d.ts.map +1 -1
- package/dist/TopNav/TopNav.js +19 -13
- package/dist/TopNav/TopNavHeading.d.ts.map +1 -1
- package/dist/TopNav/TopNavHeading.js +23 -13
- package/dist/TopNav/TopNavMegaMenu.d.ts.map +1 -1
- package/dist/TopNav/TopNavMegaMenu.js +4 -3
- package/dist/TopNav/TopNavMegaMenuFeaturedCard.d.ts.map +1 -1
- package/dist/TopNav/TopNavMegaMenuFeaturedCard.js +9 -2
- package/dist/TopNav/TopNavMegaMenuItem.d.ts.map +1 -1
- package/dist/TopNav/TopNavMegaMenuItem.js +3 -2
- package/dist/TopNav/TopNavMenu.d.ts.map +1 -1
- package/dist/TopNav/TopNavMenu.js +2 -1
- package/dist/TreeList/TreeList.d.ts.map +1 -1
- package/dist/TreeList/TreeList.js +68 -7
- package/dist/TreeList/TreeListItem.d.ts.map +1 -1
- package/dist/TreeList/TreeListItem.js +10 -6
- package/dist/Typeahead/BaseTypeahead.d.ts +8 -5
- package/dist/Typeahead/BaseTypeahead.d.ts.map +1 -1
- package/dist/Typeahead/BaseTypeahead.js +432 -68
- package/dist/Typeahead/Typeahead.d.ts +13 -8
- package/dist/Typeahead/Typeahead.d.ts.map +1 -1
- package/dist/Typeahead/Typeahead.disabled.a11y.chromium.spec.d.ts.map +1 -0
- package/dist/Typeahead/Typeahead.js +13 -9
- package/dist/Typeahead/committedChoicesKey.d.ts +12 -0
- package/dist/Typeahead/committedChoicesKey.d.ts.map +1 -0
- package/dist/Typeahead/committedChoicesKey.js +24 -0
- package/dist/Typeahead/index.d.ts +1 -1
- package/dist/Typeahead/index.d.ts.map +1 -1
- package/dist/Typeahead/types.d.ts +26 -3
- package/dist/Typeahead/types.d.ts.map +1 -1
- package/dist/astryx.css +27 -7
- package/dist/gestures/GestureArena.d.ts +17 -3
- package/dist/gestures/GestureArena.d.ts.map +1 -1
- package/dist/gestures/GestureArena.js +70 -38
- package/dist/gestures/GestureHost.d.ts +330 -95
- package/dist/gestures/GestureHost.d.ts.map +1 -1
- package/dist/gestures/GestureHost.js +1304 -475
- package/dist/gestures/GestureRecognizer.d.ts +56 -17
- package/dist/gestures/GestureRecognizer.d.ts.map +1 -1
- package/dist/gestures/GestureRecognizer.js +28 -2
- package/dist/gestures/LongPressGestureRecognizer.d.ts +2 -0
- package/dist/gestures/LongPressGestureRecognizer.d.ts.map +1 -1
- package/dist/gestures/LongPressGestureRecognizer.js +14 -1
- package/dist/gestures/PanGestureRecognizer.d.ts +11 -0
- package/dist/gestures/PanGestureRecognizer.d.ts.map +1 -1
- package/dist/gestures/PanGestureRecognizer.js +25 -0
- package/dist/gestures/PinchGestureRecognizer.d.ts +3 -2
- package/dist/gestures/PinchGestureRecognizer.d.ts.map +1 -1
- package/dist/gestures/PinchGestureRecognizer.js +10 -8
- package/dist/gestures/PressTracker.d.ts +31 -3
- package/dist/gestures/PressTracker.d.ts.map +1 -1
- package/dist/gestures/PressTracker.js +25 -6
- package/dist/gestures/TapGestureRecognizer.d.ts +2 -0
- package/dist/gestures/TapGestureRecognizer.d.ts.map +1 -1
- package/dist/gestures/TapGestureRecognizer.js +5 -0
- package/dist/gestures/VelocityTracker.d.ts +12 -0
- package/dist/gestures/VelocityTracker.d.ts.map +1 -1
- package/dist/gestures/VelocityTracker.js +38 -0
- package/dist/gestures/fingerScroll.d.ts +14 -0
- package/dist/gestures/fingerScroll.d.ts.map +1 -0
- package/dist/gestures/fingerScroll.js +181 -0
- package/dist/gestures/gestureSync.d.ts +12 -0
- package/dist/gestures/gestureSync.d.ts.map +1 -0
- package/dist/gestures/gestureSync.js +59 -0
- package/dist/gestures/haptics.d.ts +6 -3
- package/dist/gestures/haptics.d.ts.map +1 -1
- package/dist/gestures/haptics.js +9 -10
- package/dist/gestures/hostRegistry.d.ts +15 -0
- package/dist/gestures/hostRegistry.d.ts.map +1 -0
- package/dist/gestures/hostRegistry.js +16 -0
- package/dist/gestures/index.d.ts +6 -2
- package/dist/gestures/index.d.ts.map +1 -1
- package/dist/gestures/index.js +3 -1
- package/dist/gestures/nativeScroll.d.ts +2 -32
- package/dist/gestures/nativeScroll.d.ts.map +1 -1
- package/dist/gestures/nativeScroll.js +5 -17
- package/dist/gestures/pageHold.d.ts +21 -0
- package/dist/gestures/pageHold.d.ts.map +1 -0
- package/dist/gestures/pageHold.js +216 -0
- package/dist/gestures/recognizerInternals.d.ts +52 -0
- package/dist/gestures/recognizerInternals.d.ts.map +1 -0
- package/dist/gestures/recognizerInternals.js +33 -0
- package/dist/gestures/selectionLock.d.ts +10 -0
- package/dist/gestures/selectionLock.d.ts.map +1 -0
- package/dist/gestures/selectionLock.js +12 -0
- package/dist/gestures/touchAction.d.ts +10 -12
- package/dist/gestures/touchAction.d.ts.map +1 -1
- package/dist/gestures/touchAction.js +13 -21
- package/dist/gestures/types.d.ts +17 -0
- package/dist/gestures/types.d.ts.map +1 -1
- package/dist/gestures/useFingerScroll.d.ts +35 -0
- package/dist/gestures/useFingerScroll.d.ts.map +1 -0
- package/dist/gestures/useFingerScroll.js +70 -0
- package/dist/gestures/useGestureRecognizer.d.ts +23 -15
- package/dist/gestures/useGestureRecognizer.d.ts.map +1 -1
- package/dist/gestures/useGestureRecognizer.js +51 -160
- package/dist/gestures/usePressTracker.d.ts +34 -0
- package/dist/gestures/usePressTracker.d.ts.map +1 -0
- package/dist/gestures/usePressTracker.js +168 -0
- package/dist/hooks/ModalAnnounceProvider.d.ts +5 -6
- package/dist/hooks/ModalAnnounceProvider.d.ts.map +1 -1
- package/dist/hooks/ModalAnnounceProvider.js +13 -13
- package/dist/hooks/actionGroupTracker.d.ts +12 -0
- package/dist/hooks/actionGroupTracker.d.ts.map +1 -1
- package/dist/hooks/actionGroupTracker.js +23 -55
- package/dist/hooks/menuPressGesture.d.ts +21 -26
- package/dist/hooks/menuPressGesture.d.ts.map +1 -1
- package/dist/hooks/menuPressGesture.js +25 -30
- package/dist/hooks/menuPressMarker.d.ts +13 -0
- package/dist/hooks/menuPressMarker.d.ts.map +1 -0
- package/dist/hooks/menuPressMarker.js +15 -0
- package/dist/hooks/menuPressOnItems.d.ts +2 -9
- package/dist/hooks/menuPressOnItems.d.ts.map +1 -1
- package/dist/hooks/menuPressOnItems.js +7 -9
- package/dist/hooks/modalAnnounce.d.ts +1 -1
- package/dist/hooks/modalAnnounce.d.ts.map +1 -1
- package/dist/hooks/modalAnnounce.js +20 -39
- package/dist/hooks/scrollbarGutter.d.ts.map +1 -1
- package/dist/hooks/scrollbarGutter.js +9 -16
- package/dist/hooks/useAnimatedLayout.d.ts +2 -3
- package/dist/hooks/useAnimatedLayout.d.ts.map +1 -1
- package/dist/hooks/useAnimatedLayout.js +2 -3
- package/dist/hooks/useAnnounce.d.ts +16 -37
- package/dist/hooks/useAnnounce.d.ts.map +1 -1
- package/dist/hooks/useAnnounce.js +56 -92
- package/dist/hooks/useAnnounceRenderedText.d.ts +17 -48
- package/dist/hooks/useAnnounceRenderedText.d.ts.map +1 -1
- package/dist/hooks/useAnnounceRenderedText.js +22 -42
- package/dist/hooks/useAttachment.d.ts +22 -0
- package/dist/hooks/useAttachment.d.ts.map +1 -0
- package/dist/hooks/useAttachment.js +50 -0
- package/dist/hooks/useAutoMediaMode.d.ts.map +1 -1
- package/dist/hooks/useAutoMediaMode.js +29 -54
- package/dist/hooks/useBusyAnnouncement.d.ts +2 -16
- package/dist/hooks/useBusyAnnouncement.d.ts.map +1 -1
- package/dist/hooks/useBusyAnnouncement.js +13 -20
- package/dist/hooks/useClickableContainer.d.ts +30 -13
- package/dist/hooks/useClickableContainer.d.ts.map +1 -1
- package/dist/hooks/useClickableContainer.js +59 -34
- package/dist/hooks/useContainerReveal.d.ts +9 -36
- package/dist/hooks/useContainerReveal.d.ts.map +1 -1
- package/dist/hooks/useContainerReveal.js +9 -36
- package/dist/hooks/useDevWarning.d.ts.map +1 -1
- package/dist/hooks/useDevWarning.js +3 -8
- package/dist/hooks/useEntryAnimation.d.ts.map +1 -1
- package/dist/hooks/useEntryAnimation.js +1 -3
- package/dist/hooks/useFocusReturnVisibility.d.ts +8 -1
- package/dist/hooks/useFocusReturnVisibility.d.ts.map +1 -1
- package/dist/hooks/useFocusReturnVisibility.js +14 -8
- package/dist/hooks/useFocusTrap.d.ts.map +1 -1
- package/dist/hooks/useFocusTrap.js +2 -3
- package/dist/hooks/useHighlightedOptionScroll.d.ts +2 -4
- package/dist/hooks/useHighlightedOptionScroll.d.ts.map +1 -1
- package/dist/hooks/useHighlightedOptionScroll.js +1 -1
- package/dist/hooks/useHotkeys.d.ts.map +1 -1
- package/dist/hooks/useHotkeys.js +4 -16
- package/dist/hooks/useImageMode.d.ts.map +1 -1
- package/dist/hooks/useImageMode.js +6 -45
- package/dist/hooks/useIndicatorFocusRing.d.ts.map +1 -1
- package/dist/hooks/useIndicatorFocusRing.js +13 -38
- package/dist/hooks/useInputStatusIcon.d.ts +11 -3
- package/dist/hooks/useInputStatusIcon.d.ts.map +1 -1
- package/dist/hooks/useInputStatusIcon.js +21 -35
- package/dist/hooks/useInteractiveRole.d.ts.map +1 -1
- package/dist/hooks/useInteractiveRole.js +6 -24
- package/dist/hooks/useKeyboardHint.d.ts +1 -1
- package/dist/hooks/useKeyboardHint.d.ts.map +1 -1
- package/dist/hooks/useKeyboardHint.js +14 -5
- package/dist/hooks/useListFocus.d.ts +29 -0
- package/dist/hooks/useListFocus.d.ts.map +1 -1
- package/dist/hooks/useListFocus.js +53 -10
- package/dist/hooks/useLongPress.d.ts +21 -0
- package/dist/hooks/useLongPress.d.ts.map +1 -1
- package/dist/hooks/useLongPress.js +55 -28
- package/dist/hooks/useMenuHover.d.ts.map +1 -1
- package/dist/hooks/useMenuHover.js +38 -52
- package/dist/hooks/useMenuPress.d.ts +33 -40
- package/dist/hooks/useMenuPress.d.ts.map +1 -1
- package/dist/hooks/useMenuPress.js +108 -182
- package/dist/hooks/useOverflow.d.ts.map +1 -1
- package/dist/hooks/useOverflow.js +3 -8
- package/dist/hooks/useRenamedProp.d.ts.map +1 -1
- package/dist/hooks/useRenamedProp.js +8 -17
- package/dist/hooks/useScrollOverflow.d.ts.map +1 -1
- package/dist/hooks/useScrollOverflow.js +9 -27
- package/dist/hooks/useScrollableArea.d.ts +2 -4
- package/dist/hooks/useScrollableArea.d.ts.map +1 -1
- package/dist/hooks/useScrollableArea.js +14 -21
- package/dist/hooks/useSettledOpen.d.ts +16 -0
- package/dist/hooks/useSettledOpen.d.ts.map +1 -0
- package/dist/hooks/useSettledOpen.js +44 -0
- package/dist/hooks/useStreamingText.d.ts.map +1 -1
- package/dist/hooks/useStreamingText.js +14 -36
- package/dist/hooks/useTreeFocus.d.ts +11 -1
- package/dist/hooks/useTreeFocus.d.ts.map +1 -1
- package/dist/hooks/useTreeFocus.js +32 -8
- package/dist/hooks/useTypeahead.d.ts +3 -1
- package/dist/hooks/useTypeahead.d.ts.map +1 -1
- package/dist/hooks/useTypeahead.js +21 -15
- package/dist/i18n/InternationalizationContext.d.ts +1 -1
- package/dist/i18n/InternationalizationContext.js +1 -1
- package/dist/i18n/englishFallback.d.ts +32 -0
- package/dist/i18n/englishFallback.d.ts.map +1 -0
- package/dist/i18n/englishFallback.js +38 -0
- package/dist/i18n/fullEnglishFallback.d.ts +3 -0
- package/dist/i18n/fullEnglishFallback.d.ts.map +1 -0
- package/dist/i18n/fullEnglishFallback.js +26 -0
- package/dist/i18n/generated-english/AlertDialog/AlertDialog.generated.d.ts +8 -0
- package/dist/i18n/generated-english/AlertDialog/AlertDialog.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/AlertDialog/AlertDialog.generated.js +12 -0
- package/dist/i18n/generated-english/AppShell/AppShell.generated.d.ts +8 -0
- package/dist/i18n/generated-english/AppShell/AppShell.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/AppShell/AppShell.generated.js +13 -0
- package/dist/i18n/generated-english/Avatar/Avatar.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Avatar/Avatar.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Avatar/Avatar.generated.js +12 -0
- package/dist/i18n/generated-english/AvatarGroup/AvatarGroup.generated.d.ts +8 -0
- package/dist/i18n/generated-english/AvatarGroup/AvatarGroup.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/AvatarGroup/AvatarGroup.generated.js +13 -0
- package/dist/i18n/generated-english/AvatarGroup/AvatarGroupOverflow.generated.d.ts +8 -0
- package/dist/i18n/generated-english/AvatarGroup/AvatarGroupOverflow.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/AvatarGroup/AvatarGroupOverflow.generated.js +12 -0
- package/dist/i18n/generated-english/Banner/Banner.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Banner/Banner.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Banner/Banner.generated.js +15 -0
- package/dist/i18n/generated-english/Breadcrumbs/Breadcrumbs.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Breadcrumbs/Breadcrumbs.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Breadcrumbs/Breadcrumbs.generated.js +12 -0
- package/dist/i18n/generated-english/Button/Button.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Button/Button.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Button/Button.generated.js +12 -0
- package/dist/i18n/generated-english/Calendar/Calendar.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Calendar/Calendar.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Calendar/Calendar.generated.js +21 -0
- package/dist/i18n/generated-english/Carousel/Carousel.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Carousel/Carousel.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Carousel/Carousel.generated.js +15 -0
- package/dist/i18n/generated-english/Chat/ChatComposer.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Chat/ChatComposer.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Chat/ChatComposer.generated.js +12 -0
- package/dist/i18n/generated-english/Chat/ChatComposerDrawer.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Chat/ChatComposerDrawer.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Chat/ChatComposerDrawer.generated.js +14 -0
- package/dist/i18n/generated-english/Chat/ChatComposerInput.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Chat/ChatComposerInput.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Chat/ChatComposerInput.generated.js +13 -0
- package/dist/i18n/generated-english/Chat/ChatDictationButton.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Chat/ChatDictationButton.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Chat/ChatDictationButton.generated.js +13 -0
- package/dist/i18n/generated-english/Chat/ChatLayout.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Chat/ChatLayout.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Chat/ChatLayout.generated.js +12 -0
- package/dist/i18n/generated-english/Chat/ChatLayoutScrollButton.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Chat/ChatLayoutScrollButton.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Chat/ChatLayoutScrollButton.generated.js +12 -0
- package/dist/i18n/generated-english/Chat/ChatMessage.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Chat/ChatMessage.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Chat/ChatMessage.generated.js +12 -0
- package/dist/i18n/generated-english/Chat/ChatMessageList.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Chat/ChatMessageList.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Chat/ChatMessageList.generated.js +12 -0
- package/dist/i18n/generated-english/Chat/ChatMessageMetadata.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Chat/ChatMessageMetadata.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Chat/ChatMessageMetadata.generated.js +17 -0
- package/dist/i18n/generated-english/Chat/ChatPastedTextToken.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Chat/ChatPastedTextToken.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Chat/ChatPastedTextToken.generated.js +13 -0
- package/dist/i18n/generated-english/Chat/ChatSendButton.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Chat/ChatSendButton.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Chat/ChatSendButton.generated.js +13 -0
- package/dist/i18n/generated-english/Chat/ChatToolCalls.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Chat/ChatToolCalls.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Chat/ChatToolCalls.generated.js +17 -0
- package/dist/i18n/generated-english/Chat/useSpeechRecognition.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Chat/useSpeechRecognition.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Chat/useSpeechRecognition.generated.js +12 -0
- package/dist/i18n/generated-english/Chat/useTriggerMenu.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Chat/useTriggerMenu.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Chat/useTriggerMenu.generated.js +13 -0
- package/dist/i18n/generated-english/CheckboxInput/CheckboxInput.generated.d.ts +8 -0
- package/dist/i18n/generated-english/CheckboxInput/CheckboxInput.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/CheckboxInput/CheckboxInput.generated.js +12 -0
- package/dist/i18n/generated-english/CheckboxList/CheckboxListItem.generated.d.ts +8 -0
- package/dist/i18n/generated-english/CheckboxList/CheckboxListItem.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/CheckboxList/CheckboxListItem.generated.js +12 -0
- package/dist/i18n/generated-english/Citation/Citation.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Citation/Citation.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Citation/Citation.generated.js +12 -0
- package/dist/i18n/generated-english/CodeBlock/CodeBlock.generated.d.ts +8 -0
- package/dist/i18n/generated-english/CodeBlock/CodeBlock.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/CodeBlock/CodeBlock.generated.js +14 -0
- package/dist/i18n/generated-english/CommandPalette/CommandPalette.generated.d.ts +8 -0
- package/dist/i18n/generated-english/CommandPalette/CommandPalette.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/CommandPalette/CommandPalette.generated.js +15 -0
- package/dist/i18n/generated-english/CommandPalette/CommandPaletteFooter.generated.d.ts +8 -0
- package/dist/i18n/generated-english/CommandPalette/CommandPaletteFooter.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/CommandPalette/CommandPaletteFooter.generated.js +14 -0
- package/dist/i18n/generated-english/CommandPalette/CommandPaletteInput.generated.d.ts +8 -0
- package/dist/i18n/generated-english/CommandPalette/CommandPaletteInput.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/CommandPalette/CommandPaletteInput.generated.js +14 -0
- package/dist/i18n/generated-english/CommandPalette/CommandPaletteList.generated.d.ts +8 -0
- package/dist/i18n/generated-english/CommandPalette/CommandPaletteList.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/CommandPalette/CommandPaletteList.generated.js +12 -0
- package/dist/i18n/generated-english/ComplexSelector/ComplexSelector.generated.d.ts +8 -0
- package/dist/i18n/generated-english/ComplexSelector/ComplexSelector.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/ComplexSelector/ComplexSelector.generated.js +13 -0
- package/dist/i18n/generated-english/ContextMenu/ContextMenu.generated.d.ts +8 -0
- package/dist/i18n/generated-english/ContextMenu/ContextMenu.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/ContextMenu/ContextMenu.generated.js +13 -0
- package/dist/i18n/generated-english/DateInput/DateInput.generated.d.ts +8 -0
- package/dist/i18n/generated-english/DateInput/DateInput.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/DateInput/DateInput.generated.js +19 -0
- package/dist/i18n/generated-english/DateInput/NativeDateField.generated.d.ts +8 -0
- package/dist/i18n/generated-english/DateInput/NativeDateField.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/DateInput/NativeDateField.generated.js +16 -0
- package/dist/i18n/generated-english/DateInput/TouchDateField.generated.d.ts +8 -0
- package/dist/i18n/generated-english/DateInput/TouchDateField.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/DateInput/TouchDateField.generated.js +24 -0
- package/dist/i18n/generated-english/DateRangeInput/DateRangeInput.generated.d.ts +8 -0
- package/dist/i18n/generated-english/DateRangeInput/DateRangeInput.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/DateRangeInput/DateRangeInput.generated.js +20 -0
- package/dist/i18n/generated-english/DateTimeInput/DateTimeInput.generated.d.ts +8 -0
- package/dist/i18n/generated-english/DateTimeInput/DateTimeInput.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/DateTimeInput/DateTimeInput.generated.js +26 -0
- package/dist/i18n/generated-english/DateTimeInput/NativeDateSegment.generated.d.ts +8 -0
- package/dist/i18n/generated-english/DateTimeInput/NativeDateSegment.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/DateTimeInput/NativeDateSegment.generated.js +13 -0
- package/dist/i18n/generated-english/DateTimeInput/NativeTimeSegment.generated.d.ts +8 -0
- package/dist/i18n/generated-english/DateTimeInput/NativeTimeSegment.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/DateTimeInput/NativeTimeSegment.generated.js +12 -0
- package/dist/i18n/generated-english/DateTimeInput/TouchDateTimeField.generated.d.ts +8 -0
- package/dist/i18n/generated-english/DateTimeInput/TouchDateTimeField.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/DateTimeInput/TouchDateTimeField.generated.js +37 -0
- package/dist/i18n/generated-english/Dialog/DialogHeader.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Dialog/DialogHeader.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Dialog/DialogHeader.generated.js +12 -0
- package/dist/i18n/generated-english/Drawer/DrawerHeader.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Drawer/DrawerHeader.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Drawer/DrawerHeader.generated.js +12 -0
- package/dist/i18n/generated-english/DropdownMenu/DropdownMenu.generated.d.ts +8 -0
- package/dist/i18n/generated-english/DropdownMenu/DropdownMenu.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/DropdownMenu/DropdownMenu.generated.js +13 -0
- package/dist/i18n/generated-english/DropdownMenu/DropdownMenuSubMenu.generated.d.ts +8 -0
- package/dist/i18n/generated-english/DropdownMenu/DropdownMenuSubMenu.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/DropdownMenu/DropdownMenuSubMenu.generated.js +14 -0
- package/dist/i18n/generated-english/Field/FieldLabel.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Field/FieldLabel.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Field/FieldLabel.generated.js +13 -0
- package/dist/i18n/generated-english/Field/InputClearButton.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Field/InputClearButton.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Field/InputClearButton.generated.js +12 -0
- package/dist/i18n/generated-english/FileInput/FileInput.generated.d.ts +8 -0
- package/dist/i18n/generated-english/FileInput/FileInput.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/FileInput/FileInput.generated.js +26 -0
- package/dist/i18n/generated-english/Kbd/Kbd.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Kbd/Kbd.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Kbd/Kbd.generated.js +27 -0
- package/dist/i18n/generated-english/Lightbox/Lightbox.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Lightbox/Lightbox.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Lightbox/Lightbox.generated.js +20 -0
- package/dist/i18n/generated-english/Link/Link.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Link/Link.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Link/Link.generated.js +12 -0
- package/dist/i18n/generated-english/Markdown/Markdown.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Markdown/Markdown.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Markdown/Markdown.generated.js +12 -0
- package/dist/i18n/generated-english/Markdown/plugins/HeadingLinksRenderer.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Markdown/plugins/HeadingLinksRenderer.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Markdown/plugins/HeadingLinksRenderer.generated.js +13 -0
- package/dist/i18n/generated-english/MetadataList/MetadataList.generated.d.ts +8 -0
- package/dist/i18n/generated-english/MetadataList/MetadataList.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/MetadataList/MetadataList.generated.js +13 -0
- package/dist/i18n/generated-english/MobileNav/MobileNav.generated.d.ts +8 -0
- package/dist/i18n/generated-english/MobileNav/MobileNav.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/MobileNav/MobileNav.generated.js +13 -0
- package/dist/i18n/generated-english/MobileNav/MobileNavToggle.generated.d.ts +8 -0
- package/dist/i18n/generated-english/MobileNav/MobileNavToggle.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/MobileNav/MobileNavToggle.generated.js +12 -0
- package/dist/i18n/generated-english/MoreMenu/MoreMenu.generated.d.ts +8 -0
- package/dist/i18n/generated-english/MoreMenu/MoreMenu.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/MoreMenu/MoreMenu.generated.js +12 -0
- package/dist/i18n/generated-english/MultiSelector/MultiSelector.generated.d.ts +8 -0
- package/dist/i18n/generated-english/MultiSelector/MultiSelector.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/MultiSelector/MultiSelector.generated.js +32 -0
- package/dist/i18n/generated-english/NumberInput/NumberInput.generated.d.ts +8 -0
- package/dist/i18n/generated-english/NumberInput/NumberInput.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/NumberInput/NumberInput.generated.js +15 -0
- package/dist/i18n/generated-english/Outline/Outline.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Outline/Outline.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Outline/Outline.generated.js +12 -0
- package/dist/i18n/generated-english/Pagination/Pagination.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Pagination/Pagination.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Pagination/Pagination.generated.js +27 -0
- package/dist/i18n/generated-english/Popover/Popover.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Popover/Popover.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Popover/Popover.generated.js +12 -0
- package/dist/i18n/generated-english/Popover/usePopover.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Popover/usePopover.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Popover/usePopover.generated.js +12 -0
- package/dist/i18n/generated-english/PowerSearch/PowerSearch.generated.d.ts +8 -0
- package/dist/i18n/generated-english/PowerSearch/PowerSearch.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/PowerSearch/PowerSearch.generated.js +16 -0
- package/dist/i18n/generated-english/PowerSearch/PowerSearchEditPopover.generated.d.ts +8 -0
- package/dist/i18n/generated-english/PowerSearch/PowerSearchEditPopover.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/PowerSearch/PowerSearchEditPopover.generated.js +20 -0
- package/dist/i18n/generated-english/PowerSearch/PowerSearchValueEditor.generated.d.ts +8 -0
- package/dist/i18n/generated-english/PowerSearch/PowerSearchValueEditor.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/PowerSearch/PowerSearchValueEditor.generated.js +23 -0
- package/dist/i18n/generated-english/PowerSearch/formatFilterValue.generated.d.ts +8 -0
- package/dist/i18n/generated-english/PowerSearch/formatFilterValue.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/PowerSearch/formatFilterValue.generated.js +15 -0
- package/dist/i18n/generated-english/PowerSearch/usePowerSearchConfig.generated.d.ts +8 -0
- package/dist/i18n/generated-english/PowerSearch/usePowerSearchConfig.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/PowerSearch/usePowerSearchConfig.generated.js +32 -0
- package/dist/i18n/generated-english/Resizable/ResizeHandle.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Resizable/ResizeHandle.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Resizable/ResizeHandle.generated.js +13 -0
- package/dist/i18n/generated-english/Selector/Selector.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Selector/Selector.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Selector/Selector.generated.js +24 -0
- package/dist/i18n/generated-english/SideNav/SideNav.generated.d.ts +8 -0
- package/dist/i18n/generated-english/SideNav/SideNav.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/SideNav/SideNav.generated.js +13 -0
- package/dist/i18n/generated-english/SideNav/SideNavCollapseButton.generated.d.ts +8 -0
- package/dist/i18n/generated-english/SideNav/SideNavCollapseButton.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/SideNav/SideNavCollapseButton.generated.js +13 -0
- package/dist/i18n/generated-english/SideNav/SideNavHeading.generated.d.ts +8 -0
- package/dist/i18n/generated-english/SideNav/SideNavHeading.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/SideNav/SideNavHeading.generated.js +13 -0
- package/dist/i18n/generated-english/SideNav/SideNavItem.generated.d.ts +8 -0
- package/dist/i18n/generated-english/SideNav/SideNavItem.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/SideNav/SideNavItem.generated.js +14 -0
- package/dist/i18n/generated-english/Slider/Slider.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Slider/Slider.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Slider/Slider.generated.js +13 -0
- package/dist/i18n/generated-english/Spinner/Spinner.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Spinner/Spinner.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Spinner/Spinner.generated.js +12 -0
- package/dist/i18n/generated-english/Stepper/Step.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Stepper/Step.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Stepper/Step.generated.js +17 -0
- package/dist/i18n/generated-english/Stepper/Stepper.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Stepper/Stepper.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Stepper/Stepper.generated.js +14 -0
- package/dist/i18n/generated-english/Switch/Switch.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Switch/Switch.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Switch/Switch.generated.js +12 -0
- package/dist/i18n/generated-english/TabList/TabList.generated.d.ts +8 -0
- package/dist/i18n/generated-english/TabList/TabList.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/TabList/TabList.generated.js +12 -0
- package/dist/i18n/generated-english/Table/BaseTable.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Table/BaseTable.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Table/BaseTable.generated.js +12 -0
- package/dist/i18n/generated-english/Table/Table.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Table/Table.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Table/Table.generated.js +12 -0
- package/dist/i18n/generated-english/Table/TableSelectionToolbar.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Table/TableSelectionToolbar.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Table/TableSelectionToolbar.generated.js +14 -0
- package/dist/i18n/generated-english/Table/plugins/columnResize/useTableColumnResize.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Table/plugins/columnResize/useTableColumnResize.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Table/plugins/columnResize/useTableColumnResize.generated.js +12 -0
- package/dist/i18n/generated-english/Table/plugins/filtering/useTableFiltering.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Table/plugins/filtering/useTableFiltering.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Table/plugins/filtering/useTableFiltering.generated.js +15 -0
- package/dist/i18n/generated-english/Table/plugins/groupedRows/useTableGroupedRows.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Table/plugins/groupedRows/useTableGroupedRows.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Table/plugins/groupedRows/useTableGroupedRows.generated.js +13 -0
- package/dist/i18n/generated-english/Table/plugins/pagination/useTablePagination.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Table/plugins/pagination/useTablePagination.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Table/plugins/pagination/useTablePagination.generated.js +14 -0
- package/dist/i18n/generated-english/Table/plugins/rowExpansion/useTableRowExpansion.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Table/plugins/rowExpansion/useTableRowExpansion.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Table/plugins/rowExpansion/useTableRowExpansion.generated.js +14 -0
- package/dist/i18n/generated-english/Table/plugins/rowStatus/useTableRowStatus.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Table/plugins/rowStatus/useTableRowStatus.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Table/plugins/rowStatus/useTableRowStatus.generated.js +12 -0
- package/dist/i18n/generated-english/Table/plugins/selection/useTableSelection.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Table/plugins/selection/useTableSelection.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Table/plugins/selection/useTableSelection.generated.js +14 -0
- package/dist/i18n/generated-english/Table/plugins/sortable/useTableSortable.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Table/plugins/sortable/useTableSortable.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Table/plugins/sortable/useTableSortable.generated.js +15 -0
- package/dist/i18n/generated-english/Table/plugins/tree/useTableTreeData.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Table/plugins/tree/useTableTreeData.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Table/plugins/tree/useTableTreeData.generated.js +15 -0
- package/dist/i18n/generated-english/TextArea/TextArea.generated.d.ts +8 -0
- package/dist/i18n/generated-english/TextArea/TextArea.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/TextArea/TextArea.generated.js +15 -0
- package/dist/i18n/generated-english/TextInput/TextInput.generated.d.ts +8 -0
- package/dist/i18n/generated-english/TextInput/TextInput.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/TextInput/TextInput.generated.js +13 -0
- package/dist/i18n/generated-english/Thumbnail/Thumbnail.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Thumbnail/Thumbnail.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Thumbnail/Thumbnail.generated.js +15 -0
- package/dist/i18n/generated-english/TimeInput/TimeInput.generated.d.ts +8 -0
- package/dist/i18n/generated-english/TimeInput/TimeInput.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/TimeInput/TimeInput.generated.js +18 -0
- package/dist/i18n/generated-english/TimeInput/TouchTimeField.generated.d.ts +8 -0
- package/dist/i18n/generated-english/TimeInput/TouchTimeField.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/TimeInput/TouchTimeField.generated.js +22 -0
- package/dist/i18n/generated-english/Timestamp/Timestamp.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Timestamp/Timestamp.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Timestamp/Timestamp.generated.js +12 -0
- package/dist/i18n/generated-english/Timestamp/TimestampHoverCard.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Timestamp/TimestampHoverCard.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Timestamp/TimestampHoverCard.generated.js +14 -0
- package/dist/i18n/generated-english/Toast/Toast.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Toast/Toast.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Toast/Toast.generated.js +12 -0
- package/dist/i18n/generated-english/Toast/ToastViewport.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Toast/ToastViewport.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Toast/ToastViewport.generated.js +12 -0
- package/dist/i18n/generated-english/Token/Token.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Token/Token.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Token/Token.generated.js +12 -0
- package/dist/i18n/generated-english/Tokenizer/Tokenizer.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Tokenizer/Tokenizer.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Tokenizer/Tokenizer.generated.js +18 -0
- package/dist/i18n/generated-english/Tokenizer/TokenizerBottomSheet.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Tokenizer/TokenizerBottomSheet.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Tokenizer/TokenizerBottomSheet.generated.js +30 -0
- package/dist/i18n/generated-english/TopNav/TopNav.generated.d.ts +8 -0
- package/dist/i18n/generated-english/TopNav/TopNav.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/TopNav/TopNav.generated.js +12 -0
- package/dist/i18n/generated-english/TopNav/TopNavHeading.generated.d.ts +8 -0
- package/dist/i18n/generated-english/TopNav/TopNavHeading.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/TopNav/TopNavHeading.generated.js +13 -0
- package/dist/i18n/generated-english/TreeList/TreeListItem.generated.d.ts +8 -0
- package/dist/i18n/generated-english/TreeList/TreeListItem.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/TreeList/TreeListItem.generated.js +12 -0
- package/dist/i18n/generated-english/Typeahead/BaseTypeahead.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Typeahead/BaseTypeahead.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Typeahead/BaseTypeahead.generated.js +16 -0
- package/dist/i18n/generated-english/Typeahead/Typeahead.generated.d.ts +8 -0
- package/dist/i18n/generated-english/Typeahead/Typeahead.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/Typeahead/Typeahead.generated.js +13 -0
- package/dist/i18n/generated-english/hooks/useInputStatusIcon.generated.d.ts +8 -0
- package/dist/i18n/generated-english/hooks/useInputStatusIcon.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/hooks/useInputStatusIcon.generated.js +14 -0
- package/dist/i18n/generated-english/hooks/useKeyboardHint.generated.d.ts +8 -0
- package/dist/i18n/generated-english/hooks/useKeyboardHint.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/hooks/useKeyboardHint.generated.js +12 -0
- package/dist/i18n/generated-locales/af-ZA.generated.d.ts.map +1 -1
- package/dist/i18n/generated-locales/af-ZA.generated.js +2 -2
- package/dist/i18n/generated-locales/ar-SA.generated.d.ts.map +1 -1
- package/dist/i18n/generated-locales/ar-SA.generated.js +2 -2
- package/dist/i18n/generated-locales/ca-ES.generated.d.ts.map +1 -1
- package/dist/i18n/generated-locales/ca-ES.generated.js +2 -2
- package/dist/i18n/generated-locales/cs-CZ.generated.d.ts.map +1 -1
- package/dist/i18n/generated-locales/cs-CZ.generated.js +2 -2
- package/dist/i18n/generated-locales/da-DK.generated.d.ts.map +1 -1
- package/dist/i18n/generated-locales/da-DK.generated.js +2 -2
- package/dist/i18n/generated-locales/de-DE.generated.d.ts.map +1 -1
- package/dist/i18n/generated-locales/de-DE.generated.js +2 -2
- package/dist/i18n/generated-locales/el-GR.generated.d.ts.map +1 -1
- package/dist/i18n/generated-locales/el-GR.generated.js +2 -2
- package/dist/i18n/generated-locales/en.generated.d.ts.map +1 -1
- package/dist/i18n/generated-locales/en.generated.js +11 -2
- package/dist/i18n/generated-locales/es-ES.generated.d.ts.map +1 -1
- package/dist/i18n/generated-locales/es-ES.generated.js +2 -2
- package/dist/i18n/generated-locales/fi-FI.generated.d.ts.map +1 -1
- package/dist/i18n/generated-locales/fi-FI.generated.js +2 -2
- package/dist/i18n/generated-locales/fr-FR.generated.d.ts.map +1 -1
- package/dist/i18n/generated-locales/fr-FR.generated.js +2 -2
- package/dist/i18n/generated-locales/he-IL.generated.d.ts.map +1 -1
- package/dist/i18n/generated-locales/he-IL.generated.js +2 -2
- package/dist/i18n/generated-locales/hu-HU.generated.d.ts.map +1 -1
- package/dist/i18n/generated-locales/hu-HU.generated.js +2 -2
- package/dist/i18n/generated-locales/it-IT.generated.d.ts.map +1 -1
- package/dist/i18n/generated-locales/it-IT.generated.js +2 -2
- package/dist/i18n/generated-locales/ja-JP.generated.d.ts.map +1 -1
- package/dist/i18n/generated-locales/ja-JP.generated.js +2 -2
- package/dist/i18n/generated-locales/ko-KR.generated.d.ts.map +1 -1
- package/dist/i18n/generated-locales/ko-KR.generated.js +2 -2
- package/dist/i18n/generated-locales/nl-NL.generated.d.ts.map +1 -1
- package/dist/i18n/generated-locales/nl-NL.generated.js +2 -2
- package/dist/i18n/generated-locales/no-NO.generated.d.ts.map +1 -1
- package/dist/i18n/generated-locales/no-NO.generated.js +2 -2
- package/dist/i18n/generated-locales/pl-PL.generated.d.ts.map +1 -1
- package/dist/i18n/generated-locales/pl-PL.generated.js +2 -2
- package/dist/i18n/generated-locales/pseudo.generated.d.ts.map +1 -1
- package/dist/i18n/generated-locales/pseudo.generated.js +11 -2
- package/dist/i18n/generated-locales/pt-BR.generated.d.ts.map +1 -1
- package/dist/i18n/generated-locales/pt-BR.generated.js +2 -2
- package/dist/i18n/generated-locales/pt-PT.generated.d.ts.map +1 -1
- package/dist/i18n/generated-locales/pt-PT.generated.js +2 -2
- package/dist/i18n/generated-locales/ro-RO.generated.d.ts.map +1 -1
- package/dist/i18n/generated-locales/ro-RO.generated.js +2 -2
- package/dist/i18n/generated-locales/ru-RU.generated.d.ts.map +1 -1
- package/dist/i18n/generated-locales/ru-RU.generated.js +2 -2
- package/dist/i18n/generated-locales/sr-SP.generated.d.ts.map +1 -1
- package/dist/i18n/generated-locales/sr-SP.generated.js +2 -2
- package/dist/i18n/generated-locales/sv-SE.generated.d.ts.map +1 -1
- package/dist/i18n/generated-locales/sv-SE.generated.js +2 -2
- package/dist/i18n/generated-locales/tr-TR.generated.d.ts.map +1 -1
- package/dist/i18n/generated-locales/tr-TR.generated.js +2 -2
- package/dist/i18n/generated-locales/uk-UA.generated.d.ts.map +1 -1
- package/dist/i18n/generated-locales/uk-UA.generated.js +2 -2
- package/dist/i18n/generated-locales/vi-VN.generated.d.ts.map +1 -1
- package/dist/i18n/generated-locales/vi-VN.generated.js +2 -2
- package/dist/i18n/generated-locales/zh-CN.generated.d.ts.map +1 -1
- package/dist/i18n/generated-locales/zh-CN.generated.js +2 -2
- package/dist/i18n/generated-locales/zh-TW.generated.d.ts.map +1 -1
- package/dist/i18n/generated-locales/zh-TW.generated.js +2 -2
- package/dist/i18n/index.d.ts +6 -1
- package/dist/i18n/index.d.ts.map +1 -1
- package/dist/i18n/index.js +6 -1
- package/dist/i18n/publicContext.d.ts +2 -0
- package/dist/i18n/publicContext.d.ts.map +1 -0
- package/dist/i18n/publicContext.js +26 -0
- package/dist/i18n/resolve.d.ts +6 -2
- package/dist/i18n/resolve.d.ts.map +1 -1
- package/dist/i18n/resolve.js +12 -4
- package/dist/i18n/useComponentTranslator.d.ts +8 -0
- package/dist/i18n/useComponentTranslator.d.ts.map +1 -0
- package/dist/i18n/useComponentTranslator.js +42 -0
- package/dist/i18n/useTranslator.d.ts.map +1 -1
- package/dist/i18n/useTranslator.js +7 -1
- package/dist/motion/animatedLayout.d.ts +130 -5
- package/dist/motion/animatedLayout.d.ts.map +1 -1
- package/dist/motion/animatedLayout.js +867 -47
- package/dist/motion/animator.d.ts.map +1 -1
- package/dist/motion/animator.js +197 -5
- package/dist/motion/presentation.d.ts +44 -0
- package/dist/motion/presentation.d.ts.map +1 -0
- package/dist/motion/presentation.js +127 -0
- package/dist/motion/uikit/gestures.d.ts +9 -18
- package/dist/motion/uikit/gestures.d.ts.map +1 -1
- package/dist/motion/uikit/gestures.js +14 -9
- package/dist/motion/uikit/index.d.ts +1 -1
- package/dist/motion/uikit/index.d.ts.map +1 -1
- package/dist/motion/uikit/index.js +1 -1
- package/dist/motion/uikit/longPress.d.ts +26 -0
- package/dist/motion/uikit/longPress.d.ts.map +1 -0
- package/dist/motion/uikit/longPress.js +29 -0
- package/dist/motion/uikit/springs.d.ts +18 -0
- package/dist/motion/uikit/springs.d.ts.map +1 -1
- package/dist/motion/uikit/springs.js +20 -1
- package/dist/privateAttributes/hapticSwitch.stylex.d.ts +5 -0
- package/dist/privateAttributes/hapticSwitch.stylex.d.ts.map +1 -0
- package/dist/privateAttributes/hapticSwitch.stylex.js +27 -0
- package/dist/privateAttributes/layerRoot.stylex.d.ts +9 -0
- package/dist/privateAttributes/layerRoot.stylex.d.ts.map +1 -0
- package/dist/privateAttributes/layerRoot.stylex.js +28 -0
- package/dist/privateAttributes/segmentDisabled.stylex.d.ts +5 -0
- package/dist/privateAttributes/segmentDisabled.stylex.d.ts.map +1 -0
- package/dist/privateAttributes/segmentDisabled.stylex.js +28 -0
- package/dist/theme/Theme.d.ts +10 -0
- package/dist/theme/Theme.d.ts.map +1 -1
- package/dist/theme/Theme.js +8 -4
- package/dist/theme/useTheme.d.ts.map +1 -1
- package/dist/theme/useTheme.js +7 -1
- package/dist/utils/accessibleName.d.ts +8 -0
- package/dist/utils/accessibleName.d.ts.map +1 -0
- package/dist/utils/accessibleName.js +72 -0
- package/dist/utils/clickGuard.d.ts +33 -0
- package/dist/utils/clickGuard.d.ts.map +1 -0
- package/dist/utils/clickGuard.js +141 -0
- package/dist/utils/coarsePointer.d.ts +8 -0
- package/dist/utils/coarsePointer.d.ts.map +1 -0
- package/dist/utils/coarsePointer.js +45 -0
- package/dist/utils/devWarning.d.ts.map +1 -1
- package/dist/utils/devWarning.js +4 -9
- package/dist/utils/flatTree.d.ts +17 -0
- package/dist/utils/flatTree.d.ts.map +1 -0
- package/dist/utils/flatTree.js +38 -0
- package/dist/utils/focusOutline.stylex.d.ts +0 -16
- package/dist/utils/focusOutline.stylex.d.ts.map +1 -1
- package/dist/utils/focusOutline.stylex.js +7 -16
- package/dist/utils/focusReturn.d.ts +41 -7
- package/dist/utils/focusReturn.d.ts.map +1 -1
- package/dist/utils/focusReturn.js +60 -8
- package/dist/utils/getNodeText.d.ts.map +1 -1
- package/dist/utils/getNodeText.js +2 -1
- package/dist/utils/hitArea.d.ts.map +1 -1
- package/dist/utils/hitArea.js +14 -17
- package/dist/utils/ime.d.ts.map +1 -1
- package/dist/utils/ime.js +23 -51
- package/dist/utils/inputPresentation.d.ts +5 -5
- package/dist/utils/inputPresentation.d.ts.map +1 -1
- package/dist/utils/inputPresentation.js +5 -5
- package/dist/utils/inputStream.d.ts +17 -0
- package/dist/utils/inputStream.d.ts.map +1 -0
- package/dist/utils/inputStream.js +136 -0
- package/dist/utils/interactionModality.d.ts +49 -7
- package/dist/utils/interactionModality.d.ts.map +1 -1
- package/dist/utils/interactionModality.js +133 -66
- package/dist/utils/interactionOverlay.stylex.d.ts +26 -92
- package/dist/utils/interactionOverlay.stylex.d.ts.map +1 -1
- package/dist/utils/interactionOverlay.stylex.js +58 -85
- package/dist/utils/plainDate.d.ts +9 -0
- package/dist/utils/plainDate.d.ts.map +1 -1
- package/dist/utils/plainDate.js +26 -1
- package/dist/utils/presentation.d.ts +3 -4
- package/dist/utils/presentation.d.ts.map +1 -1
- package/dist/utils/presentation.js +30 -45
- package/dist/utils/pressDisabled.d.ts +21 -0
- package/dist/utils/pressDisabled.d.ts.map +1 -0
- package/dist/utils/pressDisabled.js +32 -0
- package/dist/utils/pressFeedback.d.ts.map +1 -1
- package/dist/utils/pressFeedback.js +117 -112
- package/dist/utils/pressGesture.d.ts.map +1 -1
- package/dist/utils/pressGesture.js +11 -21
- package/dist/utils/rtlStyles.d.ts +0 -24
- package/dist/utils/rtlStyles.d.ts.map +1 -1
- package/dist/utils/rtlStyles.js +13 -24
- package/dist/utils/selectionLock.d.ts +13 -0
- package/dist/utils/selectionLock.d.ts.map +1 -0
- package/dist/utils/selectionLock.js +159 -0
- package/dist/utils/sharedMutationObserver.d.ts +2 -2
- package/dist/utils/sharedMutationObserver.js +2 -2
- package/dist/utils/standaloneMonthCapitals.generated.d.ts +7 -0
- package/dist/utils/standaloneMonthCapitals.generated.d.ts.map +1 -0
- package/dist/utils/standaloneMonthCapitals.generated.js +9 -0
- package/dist/utils/timeFormat.d.ts +5 -13
- package/dist/utils/timeFormat.d.ts.map +1 -1
- package/dist/utils/timeFormat.js +5 -13
- package/dist/utils/touchPresentation.d.ts +6 -11
- package/dist/utils/touchPresentation.d.ts.map +1 -1
- package/dist/utils/touchPresentation.js +37 -62
- package/dist/utils/touchPresentation.stylex.d.ts +1 -1
- package/dist/utils/touchPresentation.stylex.d.ts.map +1 -1
- package/dist/utils/touchPresentation.stylex.js +7 -13
- package/dist/utils/touchQueries.d.ts +17 -1
- package/dist/utils/touchQueries.d.ts.map +1 -1
- package/dist/utils/touchQueries.js +20 -2
- package/dist/utils/typeaheadMatch.d.ts +24 -0
- package/dist/utils/typeaheadMatch.d.ts.map +1 -0
- package/dist/utils/typeaheadMatch.js +113 -0
- package/dist/utils/useFocusLeavingChange.d.ts +13 -0
- package/dist/utils/useFocusLeavingChange.d.ts.map +1 -0
- package/dist/utils/useFocusLeavingChange.js +48 -0
- package/locales/af-ZA.json +2 -2
- package/locales/ar-SA.json +2 -2
- package/locales/ca-ES.json +2 -2
- package/locales/cs-CZ.json +2 -2
- package/locales/da-DK.json +2 -2
- package/locales/de-DE.json +2 -2
- package/locales/el-GR.json +2 -2
- package/locales/en.json +41 -5
- package/locales/es-ES.json +2 -2
- package/locales/fi-FI.json +2 -2
- package/locales/fr-FR.json +2 -2
- package/locales/he-IL.json +2 -2
- package/locales/hu-HU.json +2 -2
- package/locales/it-IT.json +2 -2
- package/locales/ja-JP.json +2 -2
- package/locales/ko-KR.json +2 -2
- package/locales/nl-NL.json +2 -2
- package/locales/no-NO.json +2 -2
- package/locales/pl-PL.json +2 -2
- package/locales/pseudo.json +29 -2
- package/locales/pt-BR.json +2 -2
- package/locales/pt-PT.json +2 -2
- package/locales/ro-RO.json +2 -2
- package/locales/ru-RU.json +2 -2
- package/locales/sr-SP.json +2 -2
- package/locales/sv-SE.json +2 -2
- package/locales/tr-TR.json +2 -2
- package/locales/uk-UA.json +2 -2
- package/locales/vi-VN.json +2 -2
- package/locales/zh-CN.json +2 -2
- package/locales/zh-TW.json +2 -2
- package/package.json +6 -5
- package/src/AlertDialog/AlertDialog.tsx +8 -2
- package/src/AppShell/AppShell.tsx +73 -57
- package/src/Avatar/Avatar.tsx +10 -3
- package/src/AvatarGroup/AvatarGroup.tsx +8 -2
- package/src/AvatarGroup/AvatarGroupOverflow.tsx +9 -3
- package/src/Banner/Banner.tsx +12 -2
- package/src/BottomSheet/BottomSheet.tsx +106 -104
- package/src/BottomSheet/BottomSheetEdgeTint.tsx +10 -21
- package/src/BottomSheet/BottomSheetHostContext.ts +6 -10
- package/src/BottomSheet/BottomSheetPanel.tsx +109 -86
- package/src/BottomSheet/BottomSheetSwitcher.tsx +64 -78
- package/src/BottomSheet/BottomSheetSwitcherContext.ts +8 -0
- package/src/BottomSheet/bottomSheetEscape.ts +3 -3
- package/src/BottomSheet/bottomSheetStack.ts +42 -96
- package/src/BottomSheet/useMobileKeyboard.ts +63 -24
- package/src/BottomSheet/useSheetGestures.ts +138 -108
- package/src/Breadcrumbs/BreadcrumbItem.tsx +2 -1
- package/src/Breadcrumbs/Breadcrumbs.tsx +8 -2
- package/src/Button/Button.tsx +19 -6
- package/src/Calendar/Calendar.tsx +21 -13
- package/src/Calendar/hooks/useCalendarNavigation.ts +9 -10
- package/src/Carousel/Carousel.tsx +8 -2
- package/src/Center/Center.tsx +1 -1
- package/src/Chat/ChatComposer.tsx +14 -11
- package/src/Chat/ChatComposerDrawer.tsx +9 -3
- package/src/Chat/ChatComposerInput.tsx +18 -3
- package/src/Chat/ChatDictationButton.tsx +8 -2
- package/src/Chat/ChatLayout.tsx +9 -8
- package/src/Chat/ChatLayoutScrollButton.tsx +8 -2
- package/src/Chat/ChatMessage.tsx +21 -5
- package/src/Chat/ChatMessageList.tsx +9 -2
- package/src/Chat/ChatMessageMetadata.tsx +8 -2
- package/src/Chat/ChatPastedTextToken.tsx +23 -6
- package/src/Chat/ChatSendButton.tsx +8 -2
- package/src/Chat/ChatSystemMessage.tsx +4 -1
- package/src/Chat/ChatToolCalls.tsx +15 -4
- package/src/Chat/chatMessage.vars.stylex.ts +18 -0
- package/src/Chat/useSpeechRecognition.ts +9 -2
- package/src/Chat/useTriggerMenu.tsx +46 -33
- package/src/CheckboxInput/CheckboxInput.tsx +8 -2
- package/src/CheckboxList/CheckboxList.tsx +7 -1
- package/src/CheckboxList/CheckboxListContext.tsx +8 -0
- package/src/CheckboxList/CheckboxListItem.tsx +16 -4
- package/src/Citation/Citation.tsx +8 -2
- package/src/Code/Code.tsx +1 -1
- package/src/CodeBlock/CodeBlock.tsx +14 -4
- package/src/Collapsible/Collapsible.tsx +33 -4
- package/src/CommandPalette/CommandPalette.tsx +28 -8
- package/src/CommandPalette/CommandPaletteEmpty.tsx +2 -0
- package/src/CommandPalette/CommandPaletteFooter.tsx +8 -2
- package/src/CommandPalette/CommandPaletteInput.tsx +13 -10
- package/src/CommandPalette/CommandPaletteList.tsx +8 -2
- package/src/ComplexSelector/ComplexSelector.tsx +11 -4
- package/src/ContextMenu/ContextMenu.tsx +38 -8
- package/src/DateInput/DateInput.tsx +86 -25
- package/src/DateInput/MonthScroller.tsx +2 -3
- package/src/DateInput/NativeDateField.tsx +11 -15
- package/src/DateInput/TouchDateField.tsx +13 -18
- package/src/DateRangeInput/DateRangeInput.tsx +13 -17
- package/src/DateTimeInput/DateTimeInput.tsx +56 -38
- package/src/DateTimeInput/NativeDateSegment.tsx +9 -2
- package/src/DateTimeInput/NativeTimeSegment.tsx +9 -2
- package/src/DateTimeInput/TouchDateTimeField.tsx +14 -18
- package/src/Dialog/Dialog.tsx +36 -28
- package/src/Dialog/DialogHeader.tsx +8 -2
- package/src/Drawer/Drawer.tsx +32 -4
- package/src/Drawer/DrawerHeader.tsx +8 -2
- package/src/DropdownMenu/DropdownMenu.doc.mjs +2 -2
- package/src/DropdownMenu/DropdownMenu.tsx +38 -87
- package/src/DropdownMenu/DropdownMenuCheckboxItem.doc.mjs +2 -2
- package/src/DropdownMenu/DropdownMenuCheckboxItem.tsx +15 -5
- package/src/DropdownMenu/DropdownMenuItem.tsx +7 -1
- package/src/DropdownMenu/DropdownMenuRadioItem.doc.mjs +2 -2
- package/src/DropdownMenu/DropdownMenuRadioItem.tsx +16 -6
- package/src/DropdownMenu/DropdownMenuSubMenu.tsx +19 -6
- package/src/DropdownMenu/MenuBottomSheetActionList.tsx +6 -3
- package/src/Field/Field.tsx +2 -2
- package/src/Field/FieldLabel.tsx +13 -25
- package/src/Field/InputClearButton.tsx +9 -3
- package/src/Field/PanelSearchInput.tsx +7 -8
- package/src/Field/fieldStatusPlacement.ts +18 -0
- package/src/Field/index.ts +4 -1
- package/src/Field/inputDisabledFocus.ts +62 -4
- package/src/Field/inputStyles.stylex.ts +46 -9
- package/src/Field/textEntryTraits.ts +116 -0
- package/src/FieldStatus/FieldStatus.tsx +28 -3
- package/src/FieldStatus/index.ts +7 -0
- package/src/FileInput/FileInput.doc.mjs +3 -3
- package/src/FileInput/FileInput.tsx +42 -10
- package/src/Grid/Grid.doc.mjs +4 -4
- package/src/Grid/Grid.tsx +6 -4
- package/src/Grid/GridSpan.doc.mjs +51 -2
- package/src/Grid/GridSpan.tsx +2 -0
- package/src/HStack/HStack.tsx +2 -1
- package/src/Heading/Heading.tsx +5 -3
- package/src/HoverCard/HoverCard.doc.mjs +61 -10
- package/src/HoverCard/HoverCard.tsx +8 -5
- package/src/HoverCard/useHoverCard.doc.mjs +1 -1
- package/src/HoverCard/useHoverCard.tsx +10 -2
- package/src/InputGroup/groupStyles.ts +9 -2
- package/src/Item/Item.tsx +5 -5
- package/src/Item/ItemSwipeLayer.tsx +8 -1
- package/src/Kbd/Kbd.tsx +12 -3
- package/src/Layer/layerClickBoundary.ts +97 -0
- package/src/Layer/layerStructureReset.stylex.ts +5 -0
- package/src/Layer/layerSurfacePress.ts +35 -0
- package/src/Layer/outsidePress.ts +179 -0
- package/src/Layer/useLayer.tsx +32 -6
- package/src/Layer/useTouchTrigger.ts +106 -17
- package/src/Layout/LayoutSlotsContext.ts +4 -2
- package/src/Layout/layoutReset.ts +45 -0
- package/src/Lightbox/Lightbox.tsx +19 -7
- package/src/Link/Link.tsx +8 -2
- package/src/Markdown/Markdown.tsx +10 -2
- package/src/Markdown/plugins/HeadingLinksRenderer.tsx +8 -2
- package/src/MetadataList/MetadataList.tsx +13 -5
- package/src/MetadataList/MetadataListItem.tsx +2 -1
- package/src/MobileNav/MobileNav.tsx +15 -3
- package/src/MobileNav/MobileNavToggle.tsx +8 -2
- package/src/MoreMenu/MoreMenu.tsx +8 -2
- package/src/MultiSelector/MultiSelector.tsx +48 -49
- package/src/MultiSelector/hooks.ts +7 -5
- package/src/NavMenu/NavHeadingMenuItem.tsx +2 -1
- package/src/NumberInput/NumberInput.tsx +11 -4
- package/src/Outline/Outline.tsx +8 -2
- package/src/OverflowList/OverflowList.tsx +2 -1
- package/src/Pagination/Pagination.tsx +9 -2
- package/src/Popover/Popover.tsx +10 -4
- package/src/Popover/usePopover.tsx +15 -4
- package/src/PowerSearch/PowerSearch.tsx +12 -4
- package/src/PowerSearch/PowerSearchEditPopover.tsx +10 -4
- package/src/PowerSearch/PowerSearchToken.tsx +2 -2
- package/src/PowerSearch/PowerSearchValueEditor.tsx +20 -13
- package/src/PowerSearch/formatFilterValue.ts +4 -0
- package/src/PowerSearch/resolveOperatorLabel.ts +7 -1
- package/src/PowerSearch/usePowerSearchConfig.ts +4 -0
- package/src/PowerSearch/usePowerSearchSource.ts +2 -2
- package/src/ProgressBar/ProgressBar.tsx +3 -1
- package/src/RadioList/RadioList.tsx +13 -2
- package/src/RadioList/RadioListItem.tsx +9 -1
- package/src/RadioList/RadioListReasonContext.ts +25 -0
- package/src/Resizable/ResizeHandle.tsx +8 -2
- package/src/Resizable/resizableModel.ts +364 -0
- package/src/Resizable/useResizable.ts +17 -348
- package/src/SegmentedControl/SegmentedControl.doc.mjs +5 -5
- package/src/SegmentedControl/SegmentedControl.tsx +58 -30
- package/src/SegmentedControl/SegmentedControlContext.ts +4 -5
- package/src/SegmentedControl/SegmentedControlItem.doc.mjs +1 -1
- package/src/SegmentedControl/SegmentedControlItem.tsx +12 -14
- package/src/SelectableCard/SelectableCard.tsx +66 -1
- package/src/Selector/Selector.tsx +17 -21
- package/src/Selector/useSelectorPresentation.ts +8 -1
- package/src/SideNav/SideNav.tsx +230 -33
- package/src/SideNav/SideNavCollapseButton.tsx +26 -4
- package/src/SideNav/SideNavFocusTargetsContext.ts +29 -0
- package/src/SideNav/SideNavHeading.tsx +33 -16
- package/src/SideNav/SideNavItem.tsx +29 -6
- package/src/SideNav/SideNavSection.tsx +2 -1
- package/src/SideNav/railMotion.ts +73 -179
- package/src/Slider/Slider.tsx +15 -12
- package/src/Spinner/Spinner.tsx +9 -3
- package/src/Stack/Stack.doc.mjs +83 -11
- package/src/Stack/Stack.tsx +1 -1
- package/src/Stack/stack.stylex.ts +1 -1
- package/src/Stepper/Step.tsx +8 -2
- package/src/Stepper/Stepper.tsx +8 -2
- package/src/Switch/Switch.tsx +9 -3
- package/src/TabList/TabList.tsx +8 -2
- package/src/Table/BaseTable.tsx +18 -8
- package/src/Table/Table.tsx +8 -2
- package/src/Table/TableSelectionToolbar.tsx +8 -2
- package/src/Table/glidingDivider.ts +8 -3
- package/src/Table/plugins/columnResize/useTableColumnResize.tsx +8 -2
- package/src/Table/plugins/filtering/useTableFiltering.tsx +16 -9
- package/src/Table/plugins/groupedRows/useTableGroupedRows.tsx +8 -2
- package/src/Table/plugins/pagination/useTablePagination.tsx +8 -2
- package/src/Table/plugins/rowExpansion/useTableRowExpansion.tsx +10 -4
- package/src/Table/plugins/rowStatus/useTableRowStatus.tsx +8 -2
- package/src/Table/plugins/selection/useTableSelection.tsx +9 -3
- package/src/Table/plugins/sortable/useTableSortable.tsx +12 -4
- package/src/Table/plugins/stickyColumns/useTableStickyColumns.tsx +1 -2
- package/src/Table/plugins/tree/useTableTreeData.tsx +10 -4
- package/src/Text/Heading.doc.mjs +52 -3
- package/src/Text/Text.doc.mjs +1 -1
- package/src/Text/text.stylex.ts +12 -0
- package/src/TextArea/TextArea.doc.mjs +65 -1
- package/src/TextArea/TextArea.tsx +38 -11
- package/src/TextInput/TextInput.doc.mjs +70 -6
- package/src/TextInput/TextInput.tsx +55 -13
- package/src/Thumbnail/Thumbnail.tsx +8 -2
- package/src/TimeInput/TimeInput.tsx +13 -17
- package/src/TimeInput/TouchTimeField.tsx +12 -15
- package/src/Timer/Timer.tsx +1 -1
- package/src/Timestamp/Timestamp.tsx +8 -2
- package/src/Timestamp/TimestampHoverCard.tsx +8 -2
- package/src/Toast/Toast.tsx +10 -2
- package/src/Toast/ToastViewport.tsx +12 -3
- package/src/Toast/useToast.tsx +8 -3
- package/src/ToggleButton/ToggleButton.tsx +10 -3
- package/src/Token/Token.tsx +10 -2
- package/src/Token/TokenLink.tsx +16 -1
- package/src/Tokenizer/Tokenizer.doc.mjs +16 -11
- package/src/Tokenizer/Tokenizer.tsx +117 -70
- package/src/Tokenizer/TokenizerBottomSheet.tsx +9 -3
- package/src/Tooltip/Tooltip.doc.mjs +3 -3
- package/src/Tooltip/Tooltip.tsx +4 -3
- package/src/Tooltip/useTooltip.doc.mjs +3 -3
- package/src/Tooltip/useTooltip.tsx +58 -15
- package/src/TopNav/TopNav.tsx +24 -13
- package/src/TopNav/TopNavHeading.tsx +31 -12
- package/src/TopNav/TopNavMegaMenu.tsx +4 -3
- package/src/TopNav/TopNavMegaMenuFeaturedCard.tsx +9 -2
- package/src/TopNav/TopNavMegaMenuItem.tsx +7 -2
- package/src/TopNav/TopNavMenu.tsx +2 -1
- package/src/TreeList/TreeList.tsx +91 -11
- package/src/TreeList/TreeListItem.tsx +13 -5
- package/src/Typeahead/BaseTypeahead.doc.mjs +7 -4
- package/src/Typeahead/BaseTypeahead.tsx +523 -68
- package/src/Typeahead/Typeahead.doc.mjs +24 -6
- package/src/Typeahead/Typeahead.tsx +27 -15
- package/src/Typeahead/TypeaheadItem.doc.mjs +6 -3
- package/src/Typeahead/committedChoicesKey.tsx +37 -0
- package/src/Typeahead/index.ts +1 -1
- package/src/Typeahead/types.ts +27 -3
- package/src/gestures/GestureArena.ts +91 -38
- package/src/gestures/GestureHost.ts +1561 -561
- package/src/gestures/GestureRecognizer.ts +69 -18
- package/src/gestures/LongPressGestureRecognizer.ts +20 -1
- package/src/gestures/PanGestureRecognizer.ts +35 -0
- package/src/gestures/PinchGestureRecognizer.ts +13 -8
- package/src/gestures/PressTracker.ts +55 -8
- package/src/gestures/README.md +313 -51
- package/src/gestures/TapGestureRecognizer.ts +5 -0
- package/src/gestures/VelocityTracker.ts +35 -0
- package/src/gestures/fingerScroll.ts +208 -0
- package/src/gestures/gestureSync.ts +60 -0
- package/src/gestures/haptics.ts +9 -13
- package/src/gestures/hostRegistry.ts +18 -0
- package/src/gestures/index.ts +6 -5
- package/src/gestures/nativeScroll.ts +6 -20
- package/src/gestures/pageHold.ts +265 -0
- package/src/gestures/recognizerInternals.ts +77 -0
- package/src/gestures/selectionLock.ts +12 -0
- package/src/gestures/touchAction.ts +12 -24
- package/src/gestures/types.ts +18 -0
- package/src/gestures/useFingerScroll.ts +78 -0
- package/src/gestures/useGestureRecognizer.ts +70 -209
- package/src/gestures/usePressTracker.ts +212 -0
- package/src/hooks/ModalAnnounceProvider.tsx +19 -19
- package/src/hooks/actionGroupTracker.ts +23 -55
- package/src/hooks/menuPressGesture.ts +25 -30
- package/src/hooks/menuPressMarker.ts +15 -0
- package/src/hooks/menuPressOnItems.ts +7 -9
- package/src/hooks/modalAnnounce.ts +20 -39
- package/src/hooks/scrollbarGutter.ts +9 -16
- package/src/hooks/useAnimatedLayout.ts +2 -3
- package/src/hooks/useAnnounce.ts +65 -106
- package/src/hooks/useAnnounceRenderedText.ts +32 -53
- package/src/hooks/useAttachment.ts +59 -0
- package/src/hooks/useAutoMediaMode.ts +29 -54
- package/src/hooks/useBusyAnnouncement.ts +13 -20
- package/src/hooks/useClickableContainer.ts +66 -34
- package/src/hooks/useContainerReveal.ts +9 -36
- package/src/hooks/useDevWarning.ts +3 -8
- package/src/hooks/useEntryAnimation.ts +1 -3
- package/src/hooks/useFocusReturnVisibility.ts +15 -12
- package/src/hooks/useFocusTrap.ts +2 -8
- package/src/hooks/useHighlightedOptionScroll.ts +2 -4
- package/src/hooks/useHotkeys.ts +4 -16
- package/src/hooks/useImageMode.ts +6 -43
- package/src/hooks/useIndicatorFocusRing.tsx +13 -38
- package/src/hooks/useInputStatusIcon.tsx +29 -42
- package/src/hooks/useInteractiveRole.ts +6 -22
- package/src/hooks/useKeyboardHint.tsx +16 -4
- package/src/hooks/useListFocus.ts +87 -8
- package/src/hooks/useLongPress.ts +69 -28
- package/src/hooks/useMenuHover.ts +38 -52
- package/src/hooks/useMenuPress.ts +117 -186
- package/src/hooks/useOverflow.ts +3 -8
- package/src/hooks/useRenamedProp.ts +8 -17
- package/src/hooks/useScrollOverflow.ts +9 -27
- package/src/hooks/useScrollableArea.ts +14 -21
- package/src/hooks/useSettledOpen.ts +51 -0
- package/src/hooks/useStreamingText.ts +14 -33
- package/src/hooks/useTreeFocus.doc.mjs +2 -2
- package/src/hooks/useTreeFocus.ts +49 -13
- package/src/hooks/useTypeahead.doc.mjs +2 -2
- package/src/hooks/useTypeahead.ts +21 -20
- package/src/i18n/InternationalizationContext.ts +1 -1
- package/src/i18n/englishFallback.ts +40 -0
- package/src/i18n/fullEnglishFallback.ts +26 -0
- package/src/i18n/generated-english/AlertDialog/AlertDialog.generated.ts +13 -0
- package/src/i18n/generated-english/AppShell/AppShell.generated.ts +14 -0
- package/src/i18n/generated-english/Avatar/Avatar.generated.ts +13 -0
- package/src/i18n/generated-english/AvatarGroup/AvatarGroup.generated.ts +14 -0
- package/src/i18n/generated-english/AvatarGroup/AvatarGroupOverflow.generated.ts +13 -0
- package/src/i18n/generated-english/Banner/Banner.generated.ts +16 -0
- package/src/i18n/generated-english/Breadcrumbs/Breadcrumbs.generated.ts +13 -0
- package/src/i18n/generated-english/Button/Button.generated.ts +13 -0
- package/src/i18n/generated-english/Calendar/Calendar.generated.ts +22 -0
- package/src/i18n/generated-english/Carousel/Carousel.generated.ts +16 -0
- package/src/i18n/generated-english/Chat/ChatComposer.generated.ts +13 -0
- package/src/i18n/generated-english/Chat/ChatComposerDrawer.generated.ts +15 -0
- package/src/i18n/generated-english/Chat/ChatComposerInput.generated.ts +14 -0
- package/src/i18n/generated-english/Chat/ChatDictationButton.generated.ts +14 -0
- package/src/i18n/generated-english/Chat/ChatLayout.generated.ts +13 -0
- package/src/i18n/generated-english/Chat/ChatLayoutScrollButton.generated.ts +13 -0
- package/src/i18n/generated-english/Chat/ChatMessage.generated.ts +13 -0
- package/src/i18n/generated-english/Chat/ChatMessageList.generated.ts +13 -0
- package/src/i18n/generated-english/Chat/ChatMessageMetadata.generated.ts +18 -0
- package/src/i18n/generated-english/Chat/ChatPastedTextToken.generated.ts +14 -0
- package/src/i18n/generated-english/Chat/ChatSendButton.generated.ts +14 -0
- package/src/i18n/generated-english/Chat/ChatToolCalls.generated.ts +18 -0
- package/src/i18n/generated-english/Chat/useSpeechRecognition.generated.ts +13 -0
- package/src/i18n/generated-english/Chat/useTriggerMenu.generated.ts +14 -0
- package/src/i18n/generated-english/CheckboxInput/CheckboxInput.generated.ts +13 -0
- package/src/i18n/generated-english/CheckboxList/CheckboxListItem.generated.ts +13 -0
- package/src/i18n/generated-english/Citation/Citation.generated.ts +13 -0
- package/src/i18n/generated-english/CodeBlock/CodeBlock.generated.ts +15 -0
- package/src/i18n/generated-english/CommandPalette/CommandPalette.generated.ts +16 -0
- package/src/i18n/generated-english/CommandPalette/CommandPaletteFooter.generated.ts +15 -0
- package/src/i18n/generated-english/CommandPalette/CommandPaletteInput.generated.ts +15 -0
- package/src/i18n/generated-english/CommandPalette/CommandPaletteList.generated.ts +13 -0
- package/src/i18n/generated-english/ComplexSelector/ComplexSelector.generated.ts +14 -0
- package/src/i18n/generated-english/ContextMenu/ContextMenu.generated.ts +14 -0
- package/src/i18n/generated-english/DateInput/DateInput.generated.ts +20 -0
- package/src/i18n/generated-english/DateInput/NativeDateField.generated.ts +17 -0
- package/src/i18n/generated-english/DateInput/TouchDateField.generated.ts +25 -0
- package/src/i18n/generated-english/DateRangeInput/DateRangeInput.generated.ts +21 -0
- package/src/i18n/generated-english/DateTimeInput/DateTimeInput.generated.ts +27 -0
- package/src/i18n/generated-english/DateTimeInput/NativeDateSegment.generated.ts +14 -0
- package/src/i18n/generated-english/DateTimeInput/NativeTimeSegment.generated.ts +13 -0
- package/src/i18n/generated-english/DateTimeInput/TouchDateTimeField.generated.ts +38 -0
- package/src/i18n/generated-english/Dialog/DialogHeader.generated.ts +13 -0
- package/src/i18n/generated-english/Drawer/DrawerHeader.generated.ts +13 -0
- package/src/i18n/generated-english/DropdownMenu/DropdownMenu.generated.ts +14 -0
- package/src/i18n/generated-english/DropdownMenu/DropdownMenuSubMenu.generated.ts +15 -0
- package/src/i18n/generated-english/Field/FieldLabel.generated.ts +14 -0
- package/src/i18n/generated-english/Field/InputClearButton.generated.ts +13 -0
- package/src/i18n/generated-english/FileInput/FileInput.generated.ts +27 -0
- package/src/i18n/generated-english/Kbd/Kbd.generated.ts +28 -0
- package/src/i18n/generated-english/Lightbox/Lightbox.generated.ts +21 -0
- package/src/i18n/generated-english/Link/Link.generated.ts +13 -0
- package/src/i18n/generated-english/Markdown/Markdown.generated.ts +13 -0
- package/src/i18n/generated-english/Markdown/plugins/HeadingLinksRenderer.generated.ts +14 -0
- package/src/i18n/generated-english/MetadataList/MetadataList.generated.ts +14 -0
- package/src/i18n/generated-english/MobileNav/MobileNav.generated.ts +14 -0
- package/src/i18n/generated-english/MobileNav/MobileNavToggle.generated.ts +13 -0
- package/src/i18n/generated-english/MoreMenu/MoreMenu.generated.ts +13 -0
- package/src/i18n/generated-english/MultiSelector/MultiSelector.generated.ts +33 -0
- package/src/i18n/generated-english/NumberInput/NumberInput.generated.ts +16 -0
- package/src/i18n/generated-english/Outline/Outline.generated.ts +13 -0
- package/src/i18n/generated-english/Pagination/Pagination.generated.ts +28 -0
- package/src/i18n/generated-english/Popover/Popover.generated.ts +13 -0
- package/src/i18n/generated-english/Popover/usePopover.generated.ts +13 -0
- package/src/i18n/generated-english/PowerSearch/PowerSearch.generated.ts +17 -0
- package/src/i18n/generated-english/PowerSearch/PowerSearchEditPopover.generated.ts +21 -0
- package/src/i18n/generated-english/PowerSearch/PowerSearchValueEditor.generated.ts +24 -0
- package/src/i18n/generated-english/PowerSearch/formatFilterValue.generated.ts +16 -0
- package/src/i18n/generated-english/PowerSearch/usePowerSearchConfig.generated.ts +33 -0
- package/src/i18n/generated-english/Resizable/ResizeHandle.generated.ts +14 -0
- package/src/i18n/generated-english/Selector/Selector.generated.ts +25 -0
- package/src/i18n/generated-english/SideNav/SideNav.generated.ts +14 -0
- package/src/i18n/generated-english/SideNav/SideNavCollapseButton.generated.ts +14 -0
- package/src/i18n/generated-english/SideNav/SideNavHeading.generated.ts +14 -0
- package/src/i18n/generated-english/SideNav/SideNavItem.generated.ts +15 -0
- package/src/i18n/generated-english/Slider/Slider.generated.ts +14 -0
- package/src/i18n/generated-english/Spinner/Spinner.generated.ts +13 -0
- package/src/i18n/generated-english/Stepper/Step.generated.ts +18 -0
- package/src/i18n/generated-english/Stepper/Stepper.generated.ts +15 -0
- package/src/i18n/generated-english/Switch/Switch.generated.ts +13 -0
- package/src/i18n/generated-english/TabList/TabList.generated.ts +13 -0
- package/src/i18n/generated-english/Table/BaseTable.generated.ts +13 -0
- package/src/i18n/generated-english/Table/Table.generated.ts +13 -0
- package/src/i18n/generated-english/Table/TableSelectionToolbar.generated.ts +15 -0
- package/src/i18n/generated-english/Table/plugins/columnResize/useTableColumnResize.generated.ts +13 -0
- package/src/i18n/generated-english/Table/plugins/filtering/useTableFiltering.generated.ts +16 -0
- package/src/i18n/generated-english/Table/plugins/groupedRows/useTableGroupedRows.generated.ts +14 -0
- package/src/i18n/generated-english/Table/plugins/pagination/useTablePagination.generated.ts +15 -0
- package/src/i18n/generated-english/Table/plugins/rowExpansion/useTableRowExpansion.generated.ts +15 -0
- package/src/i18n/generated-english/Table/plugins/rowStatus/useTableRowStatus.generated.ts +13 -0
- package/src/i18n/generated-english/Table/plugins/selection/useTableSelection.generated.ts +15 -0
- package/src/i18n/generated-english/Table/plugins/sortable/useTableSortable.generated.ts +16 -0
- package/src/i18n/generated-english/Table/plugins/tree/useTableTreeData.generated.ts +16 -0
- package/src/i18n/generated-english/TextArea/TextArea.generated.ts +16 -0
- package/src/i18n/generated-english/TextInput/TextInput.generated.ts +14 -0
- package/src/i18n/generated-english/Thumbnail/Thumbnail.generated.ts +16 -0
- package/src/i18n/generated-english/TimeInput/TimeInput.generated.ts +19 -0
- package/src/i18n/generated-english/TimeInput/TouchTimeField.generated.ts +23 -0
- package/src/i18n/generated-english/Timestamp/Timestamp.generated.ts +13 -0
- package/src/i18n/generated-english/Timestamp/TimestampHoverCard.generated.ts +15 -0
- package/src/i18n/generated-english/Toast/Toast.generated.ts +13 -0
- package/src/i18n/generated-english/Toast/ToastViewport.generated.ts +13 -0
- package/src/i18n/generated-english/Token/Token.generated.ts +13 -0
- package/src/i18n/generated-english/Tokenizer/Tokenizer.generated.ts +19 -0
- package/src/i18n/generated-english/Tokenizer/TokenizerBottomSheet.generated.ts +31 -0
- package/src/i18n/generated-english/TopNav/TopNav.generated.ts +13 -0
- package/src/i18n/generated-english/TopNav/TopNavHeading.generated.ts +14 -0
- package/src/i18n/generated-english/TreeList/TreeListItem.generated.ts +13 -0
- package/src/i18n/generated-english/Typeahead/BaseTypeahead.generated.ts +17 -0
- package/src/i18n/generated-english/Typeahead/Typeahead.generated.ts +14 -0
- package/src/i18n/generated-english/hooks/useInputStatusIcon.generated.ts +15 -0
- package/src/i18n/generated-english/hooks/useKeyboardHint.generated.ts +13 -0
- package/src/i18n/generated-locales/af-ZA.generated.ts +3 -2
- package/src/i18n/generated-locales/ar-SA.generated.ts +3 -2
- package/src/i18n/generated-locales/ca-ES.generated.ts +3 -2
- package/src/i18n/generated-locales/cs-CZ.generated.ts +3 -2
- package/src/i18n/generated-locales/da-DK.generated.ts +3 -2
- package/src/i18n/generated-locales/de-DE.generated.ts +3 -2
- package/src/i18n/generated-locales/el-GR.generated.ts +3 -2
- package/src/i18n/generated-locales/en.generated.ts +15 -2
- package/src/i18n/generated-locales/es-ES.generated.ts +3 -2
- package/src/i18n/generated-locales/fi-FI.generated.ts +3 -2
- package/src/i18n/generated-locales/fr-FR.generated.ts +3 -2
- package/src/i18n/generated-locales/he-IL.generated.ts +3 -2
- package/src/i18n/generated-locales/hu-HU.generated.ts +3 -2
- package/src/i18n/generated-locales/it-IT.generated.ts +3 -2
- package/src/i18n/generated-locales/ja-JP.generated.ts +3 -2
- package/src/i18n/generated-locales/ko-KR.generated.ts +3 -2
- package/src/i18n/generated-locales/nl-NL.generated.ts +3 -2
- package/src/i18n/generated-locales/no-NO.generated.ts +3 -2
- package/src/i18n/generated-locales/pl-PL.generated.ts +3 -2
- package/src/i18n/generated-locales/pseudo.generated.ts +15 -2
- package/src/i18n/generated-locales/pt-BR.generated.ts +3 -2
- package/src/i18n/generated-locales/pt-PT.generated.ts +3 -2
- package/src/i18n/generated-locales/ro-RO.generated.ts +3 -2
- package/src/i18n/generated-locales/ru-RU.generated.ts +3 -2
- package/src/i18n/generated-locales/sr-SP.generated.ts +3 -2
- package/src/i18n/generated-locales/sv-SE.generated.ts +3 -2
- package/src/i18n/generated-locales/tr-TR.generated.ts +3 -2
- package/src/i18n/generated-locales/uk-UA.generated.ts +3 -2
- package/src/i18n/generated-locales/vi-VN.generated.ts +3 -2
- package/src/i18n/generated-locales/zh-CN.generated.ts +3 -2
- package/src/i18n/generated-locales/zh-TW.generated.ts +3 -2
- package/src/i18n/index.ts +6 -1
- package/src/i18n/publicContext.ts +29 -0
- package/src/i18n/resolve.ts +17 -4
- package/src/i18n/useComponentTranslator.ts +45 -0
- package/src/i18n/useTranslator.ts +8 -1
- package/src/motion/MEASUREMENTS.md +1 -1
- package/src/motion/README.md +11 -0
- package/src/motion/animatedLayout.ts +1079 -48
- package/src/motion/animator.ts +225 -13
- package/src/motion/presentation.ts +149 -0
- package/src/motion/uikit/gestures.ts +15 -8
- package/src/motion/uikit/index.ts +1 -0
- package/src/motion/uikit/longPress.ts +29 -0
- package/src/motion/uikit/springs.ts +19 -0
- package/src/privateAttributes/hapticSwitch.stylex.ts +27 -0
- package/src/privateAttributes/layerRoot.stylex.ts +28 -0
- package/src/privateAttributes/segmentDisabled.stylex.ts +28 -0
- package/src/theme/Theme.tsx +8 -4
- package/src/theme/useTheme.ts +6 -1
- package/src/utils/accessibleName.ts +87 -0
- package/src/utils/clickGuard.ts +157 -0
- package/src/utils/coarsePointer.ts +51 -0
- package/src/utils/devWarning.ts +4 -9
- package/src/utils/flatTree.ts +40 -0
- package/src/utils/focusOutline.stylex.ts +9 -19
- package/src/utils/focusReturn.ts +74 -8
- package/src/utils/getNodeText.ts +2 -1
- package/src/utils/hitArea.ts +14 -17
- package/src/utils/ime.ts +23 -51
- package/src/utils/inputPresentation.ts +5 -5
- package/src/utils/inputStream.ts +155 -0
- package/src/utils/interactionModality.ts +173 -68
- package/src/utils/interactionOverlay.stylex.ts +72 -88
- package/src/utils/plainDate.ts +29 -1
- package/src/utils/presentation.ts +31 -47
- package/src/utils/pressDisabled.ts +32 -0
- package/src/utils/pressFeedback.ts +118 -107
- package/src/utils/pressGesture.ts +11 -21
- package/src/utils/rtlStyles.ts +13 -24
- package/src/utils/selectionLock.ts +188 -0
- package/src/utils/sharedMutationObserver.ts +2 -2
- package/src/utils/standaloneMonthCapitals.generated.ts +17 -0
- package/src/utils/timeFormat.ts +5 -13
- package/src/utils/touchPresentation.stylex.ts +8 -14
- package/src/utils/touchPresentation.ts +37 -62
- package/src/utils/touchQueries.ts +24 -1
- package/src/utils/typeaheadMatch.ts +142 -0
- package/src/utils/useFocusLeavingChange.ts +53 -0
- package/src/AlertDialog/AlertDialog.spec.md +0 -259
- package/src/AppShell/AppShell.spec.md +0 -331
- package/src/AspectRatio/AspectRatio.spec.md +0 -179
- package/src/Avatar/Avatar.spec.md +0 -253
- package/src/Avatar/AvatarStatusDot.spec.md +0 -208
- package/src/AvatarGroup/AvatarGroup.spec.md +0 -205
- package/src/AvatarGroup/AvatarGroupOverflow.spec.md +0 -210
- package/src/Badge/Badge.spec.md +0 -207
- package/src/Banner/Banner.spec.md +0 -282
- package/src/Blockquote/Blockquote.spec.md +0 -171
- package/src/BottomSheet/BottomSheet.spec.md +0 -457
- package/src/BottomSheet/BottomSheetSwitcher.spec.md +0 -367
- package/src/Breadcrumbs/BreadcrumbItem.spec.md +0 -269
- package/src/Breadcrumbs/Breadcrumbs.spec.md +0 -165
- package/src/Button/Button.spec.md +0 -322
- package/src/ButtonGroup/ButtonGroup.spec.md +0 -220
- package/src/Calendar/Calendar.spec.md +0 -248
- package/src/Card/Card.spec.md +0 -205
- package/src/Carousel/Carousel.spec.md +0 -146
- package/src/Center/Center.spec.md +0 -205
- package/src/Chat/ChatComposer.spec.md +0 -246
- package/src/Chat/ChatComposerDrawer.spec.md +0 -267
- package/src/Chat/ChatComposerInput.spec.md +0 -224
- package/src/Chat/ChatComposerTokenElement.spec.md +0 -164
- package/src/Chat/ChatDictationButton.spec.md +0 -205
- package/src/Chat/ChatLayout.spec.md +0 -276
- package/src/Chat/ChatLayoutScrollButton.spec.md +0 -322
- package/src/Chat/ChatMessage.spec.md +0 -264
- package/src/Chat/ChatMessageBubble.spec.md +0 -263
- package/src/Chat/ChatMessageList.spec.md +0 -222
- package/src/Chat/ChatMessageMetadata.spec.md +0 -220
- package/src/Chat/ChatSendButton.spec.md +0 -238
- package/src/Chat/ChatSystemMessage.spec.md +0 -224
- package/src/Chat/ChatTokenizedText.spec.md +0 -190
- package/src/Chat/ChatToolCalls.spec.md +0 -194
- package/src/CheckboxInput/CheckboxInput.spec.md +0 -218
- package/src/CheckboxList/CheckboxList.spec.md +0 -332
- package/src/CheckboxList/CheckboxListItem.spec.md +0 -302
- package/src/Citation/Citation.spec.md +0 -192
- package/src/ClickableCard/ClickableCard.spec.md +0 -241
- package/src/Code/Code.spec.md +0 -170
- package/src/CodeBlock/CodeBlock.spec.md +0 -243
- package/src/Collapsible/Collapsible.spec.md +0 -247
- package/src/Collapsible/CollapsibleGroup.spec.md +0 -229
- package/src/CommandPalette/CommandPalette.spec.md +0 -278
- package/src/CommandPalette/CommandPaletteEmpty.spec.md +0 -190
- package/src/CommandPalette/CommandPaletteInput.spec.md +0 -215
- package/src/CommandPalette/CommandPaletteItem.spec.md +0 -223
- package/src/CommandPalette/CommandPaletteList.spec.md +0 -194
- package/src/ComplexSelector/ComplexSelector.spec.md +0 -266
- package/src/ContextMenu/ContextMenu.spec.md +0 -279
- package/src/ContextMenu/ContextMenuItem.spec.md +0 -132
- package/src/DateInput/DateInput.spec.md +0 -336
- package/src/DateRangeInput/DateRangeInput.spec.md +0 -203
- package/src/DateTimeInput/DateTimeInput.spec.md +0 -270
- package/src/Dialog/Dialog.spec.md +0 -189
- package/src/Dialog/modules/DialogHeader.spec.md +0 -211
- package/src/Divider/Divider.spec.md +0 -252
- package/src/Drawer/Drawer.spec.md +0 -388
- package/src/Drawer/DrawerHeader.spec.md +0 -181
- package/src/DropdownMenu/DropdownMenu.spec.md +0 -562
- package/src/DropdownMenu/DropdownMenuCheckboxItem.spec.md +0 -192
- package/src/DropdownMenu/DropdownMenuDivider.spec.md +0 -186
- package/src/DropdownMenu/DropdownMenuGroup.spec.md +0 -145
- package/src/DropdownMenu/DropdownMenuItem.spec.md +0 -215
- package/src/DropdownMenu/DropdownMenuRadioGroup.spec.md +0 -187
- package/src/DropdownMenu/DropdownMenuRadioItem.spec.md +0 -227
- package/src/DropdownMenu/DropdownMenuSubMenu.spec.md +0 -231
- package/src/DropdownMenu/modules/useMenuHover.spec.md +0 -283
- package/src/DropdownMenu/modules/useMenuPress.spec.md +0 -348
- package/src/EmptyState/EmptyState.spec.md +0 -203
- package/src/Field/Field.spec.md +0 -226
- package/src/Field/FieldLabel.spec.md +0 -192
- package/src/FieldStatus/FieldStatus.spec.md +0 -224
- package/src/FileInput/FileInput.spec.md +0 -199
- package/src/FormLayout/FormLayout.spec.md +0 -201
- package/src/Grid/Grid.spec.md +0 -193
- package/src/Grid/GridSpan.spec.md +0 -158
- package/src/Heading/Heading.spec.md +0 -198
- package/src/HoverCard/HoverCard.spec.md +0 -244
- package/src/Icon/Icon.spec.md +0 -244
- package/src/IconButton/IconButton.spec.md +0 -197
- package/src/Indicator/CheckIndicator.spec.md +0 -164
- package/src/Indicator/CheckboxIndicator.spec.md +0 -164
- package/src/Indicator/Indicator.spec.md +0 -188
- package/src/InputGroup/InputGroup.spec.md +0 -199
- package/src/InputGroup/InputGroupText.spec.md +0 -139
- package/src/Item/Item.spec.md +0 -226
- package/src/Kbd/Kbd.spec.md +0 -185
- package/src/Layer/LayerProvider.spec.md +0 -149
- package/src/Layout/Layout.spec.md +0 -243
- package/src/Layout/LayoutContent.spec.md +0 -205
- package/src/Layout/LayoutFooter.spec.md +0 -190
- package/src/Layout/LayoutHeader.spec.md +0 -193
- package/src/Layout/LayoutPanel.spec.md +0 -194
- package/src/Lightbox/Lightbox.spec.md +0 -387
- package/src/Link/Link.spec.md +0 -230
- package/src/Link/LinkProvider.spec.md +0 -167
- package/src/List/List.spec.md +0 -336
- package/src/List/ListItem.spec.md +0 -205
- package/src/Markdown/Markdown.spec.md +0 -595
- package/src/Markdown/modules/headingLinks.spec.md +0 -262
- package/src/Markdown/modules/remark.spec.md +0 -269
- package/src/Markdown/modules/softBreaks.spec.md +0 -137
- package/src/Markdown/modules/sourceLines.spec.md +0 -162
- package/src/MetadataList/MetadataList.spec.md +0 -187
- package/src/MetadataList/MetadataListItem.spec.md +0 -165
- package/src/MobileNav/MobileNav.spec.md +0 -306
- package/src/MoreMenu/MoreMenu.spec.md +0 -268
- package/src/MultiSelector/MultiSelector.spec.md +0 -364
- package/src/NavIcon/NavIcon.spec.md +0 -158
- package/src/NavMenu/NavHeadingMenu.spec.md +0 -264
- package/src/NumberInput/NumberInput.spec.md +0 -270
- package/src/Outline/Outline.spec.md +0 -258
- package/src/Outline/modules/parseOutlineFromMarkdown.spec.md +0 -150
- package/src/OverflowList/OverflowList.spec.md +0 -204
- package/src/Overlay/Overlay.spec.md +0 -304
- package/src/Pagination/Pagination.spec.md +0 -300
- package/src/Popover/Popover.spec.md +0 -525
- package/src/PowerSearch/PowerSearch.spec.md +0 -661
- package/src/ProgressBar/ProgressBar.spec.md +0 -285
- package/src/RadioList/RadioList.spec.md +0 -227
- package/src/RadioList/RadioListItem.spec.md +0 -223
- package/src/Resizable/Resizable.spec.md +0 -298
- package/src/ScrollableArea/ScrollableArea.spec.md +0 -190
- package/src/ScrollableArea/modules/useScrollableArea.spec.md +0 -149
- package/src/Section/Section.spec.md +0 -197
- package/src/SegmentedControl/SegmentedControl.spec.md +0 -261
- package/src/SegmentedControl/SegmentedControlItem.spec.md +0 -206
- package/src/SelectableCard/SelectableCard.spec.md +0 -230
- package/src/Selector/Selector.spec.md +0 -379
- package/src/SideNav/SideNav.spec.md +0 -247
- package/src/SideNav/SideNavCollapseButton.spec.md +0 -161
- package/src/SideNav/SideNavHeading.spec.md +0 -226
- package/src/SideNav/SideNavItem.spec.md +0 -236
- package/src/SideNav/SideNavSection.spec.md +0 -153
- package/src/Skeleton/Skeleton.spec.md +0 -184
- package/src/Slider/Slider.spec.md +0 -287
- package/src/Spinner/Spinner.spec.md +0 -231
- package/src/Stack/Stack.spec.md +0 -203
- package/src/StatusDot/StatusDot.spec.md +0 -224
- package/src/Stepper/Step.spec.md +0 -200
- package/src/Stepper/Stepper.spec.md +0 -327
- package/src/Switch/Switch.spec.md +0 -277
- package/src/TabList/Tab.spec.md +0 -201
- package/src/TabList/TabList.spec.md +0 -217
- package/src/TabList/TabMenu.spec.md +0 -198
- package/src/Table/Table.spec.md +0 -395
- package/src/Table/plugins/activation/useTableActivation.spec.md +0 -254
- package/src/Table/plugins/columnResize/useTableColumnResize.spec.md +0 -373
- package/src/Table/plugins/infiniteScroll/useTableInfiniteScroll.spec.md +0 -244
- package/src/Table/plugins/rowStatus/useTableRowStatus.spec.md +0 -355
- package/src/Table/plugins/virtualization/useTableVirtualization.spec.md +0 -266
- package/src/Text/Text.spec.md +0 -193
- package/src/TextArea/TextArea.spec.md +0 -300
- package/src/TextInput/TextInput.spec.md +0 -260
- package/src/Thumbnail/Thumbnail.spec.md +0 -244
- package/src/TimeInput/TimeInput.spec.md +0 -270
- package/src/Timer/Timer.spec.md +0 -215
- package/src/Timestamp/Timestamp.spec.md +0 -246
- package/src/Toast/Toast.spec.md +0 -291
- package/src/ToggleButton/ToggleButton.spec.md +0 -256
- package/src/ToggleButton/ToggleButtonGroup.spec.md +0 -195
- package/src/Token/Token.spec.md +0 -262
- package/src/Tokenizer/Tokenizer.spec.md +0 -615
- package/src/Toolbar/Toolbar.spec.md +0 -227
- package/src/Tooltip/Tooltip.spec.md +0 -267
- package/src/TopNav/TopNav.spec.md +0 -190
- package/src/TopNav/TopNavHeading.spec.md +0 -211
- package/src/TopNav/TopNavItem.spec.md +0 -189
- package/src/TopNav/TopNavMegaMenu.spec.md +0 -190
- package/src/TopNav/TopNavMegaMenuFeaturedCard.spec.md +0 -150
- package/src/TopNav/TopNavMegaMenuItem.spec.md +0 -155
- package/src/TopNav/TopNavMenu.spec.md +0 -202
- package/src/TreeList/TreeList.spec.md +0 -328
- package/src/Typeahead/BaseTypeahead.spec.md +0 -270
- package/src/Typeahead/Typeahead.spec.md +0 -257
- package/src/VisuallyHidden/VisuallyHidden.spec.md +0 -170
- package/src/i18n/InternationalizationProvider.spec.md +0 -252
|
@@ -5,7 +5,10 @@
|
|
|
5
5
|
/**
|
|
6
6
|
* @file BaseTypeahead.tsx
|
|
7
7
|
* @input Uses React, StyleX, usePopover, TypeaheadItem
|
|
8
|
-
* @output Exports BaseTypeahead; empty feedback belongs to the current settled query
|
|
8
|
+
* @output Exports BaseTypeahead; empty feedback belongs to the current settled query;
|
|
9
|
+
* focus bootstraps a replaced search source; a source shows partial lists
|
|
10
|
+
* for a query through context.update, and later lists only append
|
|
11
|
+
* (spec:AST-092)
|
|
9
12
|
* @position Core implementation; used by Typeahead and Tokenizer
|
|
10
13
|
*
|
|
11
14
|
* Pure combobox engine: input, search, keyboard navigation, dropdown.
|
|
@@ -21,6 +24,7 @@ import React, {
|
|
|
21
24
|
useCallback,
|
|
22
25
|
useEffect,
|
|
23
26
|
useId,
|
|
27
|
+
useMemo,
|
|
24
28
|
useRef,
|
|
25
29
|
useState,
|
|
26
30
|
type ReactNode,
|
|
@@ -29,12 +33,18 @@ import React, {
|
|
|
29
33
|
import * as stylex from '@stylexjs/stylex';
|
|
30
34
|
import {useBusyIndicatorLane} from './busyIndicatorLane';
|
|
31
35
|
import {useTrailingKeyDown} from './trailingKeyDown';
|
|
36
|
+
import {useCommittedChoices} from './committedChoicesKey';
|
|
32
37
|
import type {StyleXStyles} from '@stylexjs/stylex';
|
|
33
38
|
import {usePopover} from '../Popover/usePopover';
|
|
34
39
|
import {useAnnounce} from '../hooks/useAnnounce';
|
|
35
40
|
import {useAnnounceRenderedText} from '../hooks/useAnnounceRenderedText';
|
|
36
41
|
import {useHighlightedOptionScroll} from '../hooks/useHighlightedOptionScroll';
|
|
37
42
|
import {useIsomorphicLayoutEffect} from '../hooks/useIsomorphicLayoutEffect';
|
|
43
|
+
import {
|
|
44
|
+
isFocusInsideOwnedLayer,
|
|
45
|
+
isPressInsideOwnedLayer,
|
|
46
|
+
useOutsidePress,
|
|
47
|
+
} from '../Layer/outsidePress';
|
|
38
48
|
import {isImeKeyEvent} from '../utils/ime';
|
|
39
49
|
import {TypeaheadItem} from './TypeaheadItem';
|
|
40
50
|
import {Icon} from '../Icon';
|
|
@@ -57,14 +67,20 @@ import {
|
|
|
57
67
|
} from '../utils';
|
|
58
68
|
import {warnOnce} from '../utils/devWarning';
|
|
59
69
|
import type {BaseProps} from '../BaseProps';
|
|
60
|
-
import type {SearchableItem, SearchSource} from './types';
|
|
70
|
+
import type {SearchContext, SearchableItem, SearchSource} from './types';
|
|
61
71
|
import {themeProps} from '../utils/themeProps';
|
|
62
|
-
import {useTranslator} from '../i18n';
|
|
63
72
|
|
|
64
73
|
import {useMergedRefs} from '../hooks/useMergedRefs';
|
|
65
74
|
import {useBusyAnnouncement} from '../hooks/useBusyAnnouncement';
|
|
66
75
|
import {layerViewportInset} from '../Layer/layerViewportInset.stylex';
|
|
67
76
|
import {clampInlineSize} from '../Layer/clampInlineSize';
|
|
77
|
+
import {
|
|
78
|
+
registerEnglishFallback,
|
|
79
|
+
useComponentTranslator,
|
|
80
|
+
} from '../i18n/useComponentTranslator';
|
|
81
|
+
import english from '../i18n/generated-english/Typeahead/BaseTypeahead.generated';
|
|
82
|
+
|
|
83
|
+
registerEnglishFallback(english);
|
|
68
84
|
// =============================================================================
|
|
69
85
|
// Types
|
|
70
86
|
// =============================================================================
|
|
@@ -150,10 +166,10 @@ export interface BaseTypeaheadProps<T extends SearchableItem> extends Omit<
|
|
|
150
166
|
isDisabled?: boolean;
|
|
151
167
|
|
|
152
168
|
/**
|
|
153
|
-
* When disabled
|
|
154
|
-
*
|
|
155
|
-
*
|
|
156
|
-
* assistive technology. Query and text mutation, opening the list, and a
|
|
169
|
+
* When disabled, keeps the input focusable via `aria-disabled` (instead of
|
|
170
|
+
* the native `disabled` attribute) and `readOnly`, so the field keeps its
|
|
171
|
+
* tab stop and any disabled-reason tooltip stays discoverable by keyboard
|
|
172
|
+
* and assistive technology (`spec:AST-085` FR1). Query and text mutation, opening the list, and a
|
|
157
173
|
* pick by Enter or a press are blocked, also from a list that was open
|
|
158
174
|
* before this state applied; Escape or Tab still closes it. Consumers
|
|
159
175
|
* (Typeahead) own the tooltip and wrapper.
|
|
@@ -296,10 +312,16 @@ const styles = stylex.create({
|
|
|
296
312
|
},
|
|
297
313
|
dropdown: {
|
|
298
314
|
boxSizing: 'border-box',
|
|
315
|
+
// Matches DROPDOWN_MAX_HEIGHT, which the room-below cap uses.
|
|
299
316
|
maxHeight: '300px',
|
|
300
317
|
overflowY: 'auto',
|
|
301
318
|
padding: spacingVars['--spacing-1'],
|
|
302
319
|
},
|
|
320
|
+
// Once a later list for the same query arrives, the popup holds its height
|
|
321
|
+
// above the field, or the room below it (spec:AST-092 FR6).
|
|
322
|
+
dropdownHeld: (height: number) => ({
|
|
323
|
+
maxHeight: `${height}px`,
|
|
324
|
+
}),
|
|
303
325
|
// The menu prefers the input's width and renders an explicit menuWidth at
|
|
304
326
|
// its size, both clamped to the layer runtime's viewport cap rather than to
|
|
305
327
|
// the room beside the input (spec:AST-059 FR2, FR7).
|
|
@@ -409,6 +431,42 @@ const itemSizeStyles = stylex.create({
|
|
|
409
431
|
// Helpers
|
|
410
432
|
// =============================================================================
|
|
411
433
|
|
|
434
|
+
/** The result popup's maximum height in CSS pixels (`styles.dropdown`). */
|
|
435
|
+
const DROPDOWN_MAX_HEIGHT = 300;
|
|
436
|
+
|
|
437
|
+
/**
|
|
438
|
+
* Rows in the order the popup displays them: ungrouped source rows, then each
|
|
439
|
+
* group, then the trailing entries derived from the typed text (Tokenizer's
|
|
440
|
+
* create row), which always follow the rows (spec:AST-092 FR1).
|
|
441
|
+
*/
|
|
442
|
+
function displayOrder<T extends SearchableItem>(
|
|
443
|
+
list: T[],
|
|
444
|
+
queryEntryCount = 0,
|
|
445
|
+
): T[] {
|
|
446
|
+
const end = list.length - queryEntryCount;
|
|
447
|
+
return [
|
|
448
|
+
...groupItems(list.slice(0, end), {ungroupedFirst: true}).flatMap(
|
|
449
|
+
group => group.items,
|
|
450
|
+
),
|
|
451
|
+
...list.slice(end),
|
|
452
|
+
];
|
|
453
|
+
}
|
|
454
|
+
|
|
455
|
+
/**
|
|
456
|
+
* Whether `next` starts with `shown`, item by item and in order, by `id`: the
|
|
457
|
+
* append-only rule a later list for the same query follows, applied to
|
|
458
|
+
* displayed order (spec:AST-092 FR2).
|
|
459
|
+
*/
|
|
460
|
+
function startsWithRows<T extends SearchableItem>(
|
|
461
|
+
next: ReadonlyArray<T>,
|
|
462
|
+
shown: ReadonlyArray<T>,
|
|
463
|
+
): boolean {
|
|
464
|
+
return (
|
|
465
|
+
next.length >= shown.length &&
|
|
466
|
+
shown.every((item, index) => next[index].id === item.id)
|
|
467
|
+
);
|
|
468
|
+
}
|
|
469
|
+
|
|
412
470
|
/**
|
|
413
471
|
* A query that has been typed but is still shorter than the caller's
|
|
414
472
|
* threshold. An empty query is not "below the minimum" — it is the
|
|
@@ -483,7 +541,7 @@ export const BaseTypeahead = function BaseTypeahead<T extends SearchableItem>({
|
|
|
483
541
|
ref,
|
|
484
542
|
...rest
|
|
485
543
|
}: BaseTypeaheadProps<T>) {
|
|
486
|
-
const t =
|
|
544
|
+
const t = useComponentTranslator();
|
|
487
545
|
const placeholder =
|
|
488
546
|
placeholderFromProps ?? t('@astryx.typeahead.searchPlaceholder');
|
|
489
547
|
const emptySearchText =
|
|
@@ -529,6 +587,95 @@ export const BaseTypeahead = function BaseTypeahead<T extends SearchableItem>({
|
|
|
529
587
|
}
|
|
530
588
|
}, [results]);
|
|
531
589
|
const [highlightedIndex, setHighlightedIndex] = useState(-1);
|
|
590
|
+
// Bumped whenever the rows are replaced rather than appended to, so the
|
|
591
|
+
// highlighted-row scroll runs for a new list but not when a later list for
|
|
592
|
+
// the same query appends rows below (spec:AST-092 FR6).
|
|
593
|
+
const [listKey, setListKey] = useState(0);
|
|
594
|
+
// How many trailing rows are entries derived from the typed text rather
|
|
595
|
+
// than source results; they display after every group.
|
|
596
|
+
const [queryEntryCount, setQueryEntryCount] = useState(0);
|
|
597
|
+
const replaceResults = useCallback((next: T[], entryCount = 0) => {
|
|
598
|
+
setResults(next);
|
|
599
|
+
setQueryEntryCount(entryCount);
|
|
600
|
+
setListKey(key => key + 1);
|
|
601
|
+
}, []);
|
|
602
|
+
// Highlight indexes count rows in displayed order (ungrouped first, then
|
|
603
|
+
// groups), which is how the popup renders them.
|
|
604
|
+
const displayedResults = useMemo(
|
|
605
|
+
() => displayOrder(results, queryEntryCount),
|
|
606
|
+
[results, queryEntryCount],
|
|
607
|
+
);
|
|
608
|
+
// Committed values (Tokenizer's tokens) leave the shown rows in the same
|
|
609
|
+
// render that commits them, before any reload answers, so a list never
|
|
610
|
+
// offers a token (component:Tokenizer FR13). The highlight stays on its item
|
|
611
|
+
// when that item remains. The previous key is remembered in state, like
|
|
612
|
+
// `sourceOfState` below.
|
|
613
|
+
const committedChoices = useCommittedChoices();
|
|
614
|
+
const committedChoicesKey = committedChoices?.key;
|
|
615
|
+
const isAtCommitLimit = committedChoices?.isAtLimit === true;
|
|
616
|
+
const [committedKeyOfState, setCommittedKeyOfState] =
|
|
617
|
+
useState(committedChoicesKey);
|
|
618
|
+
if (committedKeyOfState !== committedChoicesKey) {
|
|
619
|
+
setCommittedKeyOfState(committedChoicesKey);
|
|
620
|
+
const committedIds = committedChoices?.ids;
|
|
621
|
+
const kept =
|
|
622
|
+
committedIds == null
|
|
623
|
+
? results
|
|
624
|
+
: results.filter(item => !committedIds.has(item.id));
|
|
625
|
+
if (kept.length !== results.length) {
|
|
626
|
+
const highlightedId = displayedResults[highlightedIndex]?.id;
|
|
627
|
+
const keptOrder = displayOrder(kept, queryEntryCount);
|
|
628
|
+
const keptIndex =
|
|
629
|
+
highlightedId == null
|
|
630
|
+
? -1
|
|
631
|
+
: keptOrder.findIndex(item => item.id === highlightedId);
|
|
632
|
+
setResults(kept);
|
|
633
|
+
setHighlightedIndex(
|
|
634
|
+
keptIndex >= 0 ? keptIndex : keptOrder.length > 0 ? 0 : -1,
|
|
635
|
+
);
|
|
636
|
+
}
|
|
637
|
+
}
|
|
638
|
+
// The popup's listbox, measured when a later list arrives so the appended
|
|
639
|
+
// rows scroll instead of moving the shown rows or flipping the popup to
|
|
640
|
+
// the other side of the field (spec:AST-092 FR6).
|
|
641
|
+
const dropdownRef = useRef<HTMLDivElement>(null);
|
|
642
|
+
const [heldHeight, setHeldHeight] = useState<number | null>(null);
|
|
643
|
+
// The search generation the popup's close cancelled, so that search's
|
|
644
|
+
// rejection settles silently (spec:AST-092 FR9).
|
|
645
|
+
const closedGenRef = useRef(-1);
|
|
646
|
+
const isMountedRef = useRef(false);
|
|
647
|
+
const holdPopupInPlace = useCallback(() => {
|
|
648
|
+
const dropdown = dropdownRef.current;
|
|
649
|
+
const anchor = anchorRef?.current ?? fallbackAnchorRef.current;
|
|
650
|
+
if (dropdown == null || anchor == null) {
|
|
651
|
+
return;
|
|
652
|
+
}
|
|
653
|
+
const box = dropdown.getBoundingClientRect();
|
|
654
|
+
if (box.height <= 0) {
|
|
655
|
+
return;
|
|
656
|
+
}
|
|
657
|
+
if (box.bottom <= anchor.getBoundingClientRect().top + 1) {
|
|
658
|
+
// Above the field the popup grows upward, so any growth moves the
|
|
659
|
+
// shown rows: keep the height it has.
|
|
660
|
+
setHeldHeight(current => current ?? box.height);
|
|
661
|
+
return;
|
|
662
|
+
}
|
|
663
|
+
// Below the field, grow only within the room below, so the layer runtime
|
|
664
|
+
// never flips the popup above the field.
|
|
665
|
+
const layer = dropdown.closest<HTMLElement>('[popover]') ?? dropdown;
|
|
666
|
+
const layerBox = layer.getBoundingClientRect();
|
|
667
|
+
const gutter = parseFloat(getComputedStyle(layer).marginBlockEnd) || 0;
|
|
668
|
+
const viewportHeight = window.visualViewport?.height ?? window.innerHeight;
|
|
669
|
+
const room =
|
|
670
|
+
viewportHeight -
|
|
671
|
+
box.top -
|
|
672
|
+
Math.max(0, layerBox.bottom - box.bottom) -
|
|
673
|
+
gutter;
|
|
674
|
+
setHeldHeight(
|
|
675
|
+
current =>
|
|
676
|
+
current ?? Math.min(DROPDOWN_MAX_HEIGHT, Math.max(box.height, room)),
|
|
677
|
+
);
|
|
678
|
+
}, [anchorRef]);
|
|
532
679
|
const [isLoading, setIsLoading] = useState(false);
|
|
533
680
|
const [hasSearched, setHasSearched] = useState(false);
|
|
534
681
|
// `isLoading` starts with the request, after debouncing. Until then the
|
|
@@ -587,10 +734,9 @@ export const BaseTypeahead = function BaseTypeahead<T extends SearchableItem>({
|
|
|
587
734
|
onLoadingChangeRef.current?.(next);
|
|
588
735
|
}, []);
|
|
589
736
|
|
|
590
|
-
// Track active pointer to defer popover.show() past click events
|
|
591
|
-
//
|
|
592
|
-
//
|
|
593
|
-
// close it (the click is seen as "outside" the newly-opened popover).
|
|
737
|
+
// Track active pointer to defer popover.show() past click events, so a
|
|
738
|
+
// list that opens during a press starts its outside-press watch after that
|
|
739
|
+
// press ends and never judges it.
|
|
594
740
|
const pointerActiveRef = useRef(false);
|
|
595
741
|
|
|
596
742
|
// Whether the input was ALREADY the active element the moment the current
|
|
@@ -647,6 +793,17 @@ export const BaseTypeahead = function BaseTypeahead<T extends SearchableItem>({
|
|
|
647
793
|
}
|
|
648
794
|
loadingRef.current = false;
|
|
649
795
|
}
|
|
796
|
+
// A field that becomes disabled stops showing a search as busy in the same
|
|
797
|
+
// render, and the dropped query shows no outcome, so no empty state; the
|
|
798
|
+
// layout effect below drops the work itself.
|
|
799
|
+
const [disabledOfState, setDisabledOfState] = useState(isDisabled);
|
|
800
|
+
if (disabledOfState !== isDisabled) {
|
|
801
|
+
setDisabledOfState(isDisabled);
|
|
802
|
+
if (isDisabled && isLoading) {
|
|
803
|
+
setIsLoading(false);
|
|
804
|
+
setHasSearched(false);
|
|
805
|
+
}
|
|
806
|
+
}
|
|
650
807
|
|
|
651
808
|
// When the search source is replaced, any in-flight load from the previous
|
|
652
809
|
// source is abandoned (generation bumped above). Notify the wrapper's busy lane
|
|
@@ -662,21 +819,62 @@ export const BaseTypeahead = function BaseTypeahead<T extends SearchableItem>({
|
|
|
662
819
|
}
|
|
663
820
|
}, [searchSource]);
|
|
664
821
|
|
|
665
|
-
//
|
|
822
|
+
// True from the moment the list is asked to open until it closes, including
|
|
823
|
+
// a show deferred past the active click, so committed values that change in
|
|
824
|
+
// the same event that opened the list still reload it.
|
|
825
|
+
const isShowingRef = useRef(false);
|
|
826
|
+
|
|
827
|
+
// Layer for dropdown. The list is a manual popover (see usePopover below):
|
|
828
|
+
// while it is open, a press on the combobox itself (its input or its
|
|
829
|
+
// buttons) or in the list is inside, and a press anywhere else closes it
|
|
830
|
+
// (component:BaseTypeahead FR12). The watch starts when the list shows and
|
|
831
|
+
// stops when it hides or the field unmounts (useOutsidePress owns that).
|
|
832
|
+
// An outside press hides the
|
|
833
|
+
// popover element directly, which useLayer reconciles like the browser's
|
|
834
|
+
// own light dismiss.
|
|
835
|
+
const outsidePress = useOutsidePress();
|
|
666
836
|
const handleLayerShow = useCallback(() => {
|
|
837
|
+
isShowingRef.current = true;
|
|
667
838
|
onOpenChange?.(true);
|
|
668
|
-
|
|
839
|
+
const anchorEl = anchorRef?.current ?? fallbackAnchorRef.current;
|
|
840
|
+
if (anchorEl == null) {
|
|
841
|
+
outsidePress.stop();
|
|
842
|
+
return;
|
|
843
|
+
}
|
|
844
|
+
// The list's own element sits inside the popover element.
|
|
845
|
+
const findLayer = () =>
|
|
846
|
+
dropdownRef.current?.closest<HTMLElement>('[popover]') ?? null;
|
|
847
|
+
outsidePress.start(
|
|
848
|
+
anchorEl,
|
|
849
|
+
path =>
|
|
850
|
+
isPressInsideOwnedLayer(
|
|
851
|
+
path,
|
|
852
|
+
anchorRef?.current ?? fallbackAnchorRef.current ?? anchorEl,
|
|
853
|
+
findLayer()?.id ?? '',
|
|
854
|
+
),
|
|
855
|
+
() => findLayer()?.hidePopover(),
|
|
856
|
+
);
|
|
857
|
+
}, [onOpenChange, anchorRef, outsidePress]);
|
|
669
858
|
|
|
670
859
|
const handleLayerHide = useCallback(() => {
|
|
860
|
+
isShowingRef.current = false;
|
|
861
|
+
outsidePress.stop();
|
|
671
862
|
onOpenChange?.(false);
|
|
672
863
|
setHighlightedIndex(-1);
|
|
864
|
+
closedGenRef.current = searchGenRef.current;
|
|
865
|
+
setHeldHeight(null);
|
|
673
866
|
searchSource.cancel?.();
|
|
674
|
-
}, [onOpenChange, searchSource]);
|
|
867
|
+
}, [onOpenChange, searchSource, outsidePress]);
|
|
675
868
|
|
|
676
869
|
const popover = usePopover({
|
|
677
870
|
onShow: handleLayerShow,
|
|
678
871
|
onHide: handleLayerHide,
|
|
679
|
-
|
|
872
|
+
// A manual popover: the browser's light dismiss counts a press in the
|
|
873
|
+
// input as outside (a text input cannot be an invoker), so it would close
|
|
874
|
+
// the list on every press in the field. handleLayerShow watches for a
|
|
875
|
+
// press outside instead (architecture:layer-runtime); Escape stays on the
|
|
876
|
+
// shared layer stack.
|
|
877
|
+
hasLightDismiss: false,
|
|
680
878
|
hasCloseButton: false,
|
|
681
879
|
hasAutoFocus: false,
|
|
682
880
|
// The popup's own role="listbox" is the exposed semantics; the input keeps
|
|
@@ -684,19 +882,36 @@ export const BaseTypeahead = function BaseTypeahead<T extends SearchableItem>({
|
|
|
684
882
|
role: 'none',
|
|
685
883
|
});
|
|
686
884
|
|
|
687
|
-
// Show the layer, deferring past the active click if a pointer is down
|
|
688
|
-
//
|
|
689
|
-
// dropdown when it opens between pointerdown and pointerup/click.
|
|
885
|
+
// Show the layer, deferring past the active click if a pointer is down
|
|
886
|
+
// (see pointerActiveRef).
|
|
690
887
|
// Read at show time, so a search or bootstrap that settles after the field
|
|
691
888
|
// became disabled does not open the list (spec:AST-085 FR2).
|
|
692
889
|
const isDisabledRef = useRef(isDisabled);
|
|
693
890
|
useIsomorphicLayoutEffect(() => {
|
|
694
891
|
isDisabledRef.current = isDisabled;
|
|
892
|
+
if (!isDisabled) {
|
|
893
|
+
return;
|
|
894
|
+
}
|
|
895
|
+
// Search work scheduled or in flight when the field became disabled is
|
|
896
|
+
// dropped: a later answer lists, announces and spins nothing
|
|
897
|
+
// (spec:AST-085 FR2). Bumping the generation fails its checks.
|
|
898
|
+
searchGenRef.current++;
|
|
899
|
+
if (searchTimeoutRef.current) {
|
|
900
|
+
clearTimeout(searchTimeoutRef.current);
|
|
901
|
+
searchTimeoutRef.current = null;
|
|
902
|
+
}
|
|
903
|
+
prevSearchSourceRef.current.cancel?.();
|
|
904
|
+
// The busy state itself cleared in the render that disabled the field.
|
|
905
|
+
if (loadingRef.current) {
|
|
906
|
+
loadingRef.current = false;
|
|
907
|
+
onLoadingChangeRef.current?.(false);
|
|
908
|
+
}
|
|
695
909
|
}, [isDisabled]);
|
|
696
910
|
const showLayer = useCallback(() => {
|
|
697
911
|
if (isDisabledRef.current) {
|
|
698
912
|
return;
|
|
699
913
|
}
|
|
914
|
+
isShowingRef.current = true;
|
|
700
915
|
if (pointerActiveRef.current) {
|
|
701
916
|
document.addEventListener(
|
|
702
917
|
'click',
|
|
@@ -724,7 +939,12 @@ export const BaseTypeahead = function BaseTypeahead<T extends SearchableItem>({
|
|
|
724
939
|
};
|
|
725
940
|
}, [popover, anchorRef]);
|
|
726
941
|
|
|
727
|
-
// Perform search
|
|
942
|
+
// Perform search. A source may show lists for the query before it settles
|
|
943
|
+
// through `context.update`, and the value it returns is the final list
|
|
944
|
+
// (spec:AST-092). The first list shown for a query may replace the rows;
|
|
945
|
+
// every later one keeps the shown rows first, so nothing moves under the
|
|
946
|
+
// pointer or the highlight. Merging is the source's work: a later list that
|
|
947
|
+
// breaks that rule is shown as given, with a development warning.
|
|
728
948
|
const performSearch = useCallback(
|
|
729
949
|
async (searchQuery: string) => {
|
|
730
950
|
searchSource.cancel?.();
|
|
@@ -735,41 +955,142 @@ export const BaseTypeahead = function BaseTypeahead<T extends SearchableItem>({
|
|
|
735
955
|
setLastSearchedQuery(searchQuery);
|
|
736
956
|
setLoading(true);
|
|
737
957
|
setHasSearched(true);
|
|
958
|
+
let isSettled = false;
|
|
959
|
+
// The capped source rows last shown for this query, and the array handed
|
|
960
|
+
// to React for them. Null until the query's first non-empty list.
|
|
961
|
+
let shownRows: T[] | null = null;
|
|
962
|
+
let shownState: T[] | null = null;
|
|
963
|
+
let shownEntryCount = 0;
|
|
964
|
+
|
|
965
|
+
const showList = (list: T[], isFinal: boolean): T[] => {
|
|
966
|
+
const fetched = list.slice(0, maxMenuItems);
|
|
967
|
+
if (
|
|
968
|
+
shownRows != null &&
|
|
969
|
+
!startsWithRows(displayOrder(fetched), displayOrder(shownRows))
|
|
970
|
+
) {
|
|
971
|
+
warnOnce(
|
|
972
|
+
'base-typeahead:append-only',
|
|
973
|
+
'BaseTypeahead',
|
|
974
|
+
'A later list for the same query moved, removed, or inserted ' +
|
|
975
|
+
'above rows already shown. After the first list for a query, ' +
|
|
976
|
+
'a search source keeps the shown rows first and in order and ' +
|
|
977
|
+
'adds new rows after them (spec:AST-092 FR2).',
|
|
978
|
+
);
|
|
979
|
+
}
|
|
980
|
+
// Entries derived from the typed text (Tokenizer's create row) wait
|
|
981
|
+
// for the query to settle: before then a pending server result may
|
|
982
|
+
// still show the value they would offer to create.
|
|
983
|
+
const entries = isFinal
|
|
984
|
+
? (__queryEntries?.(searchQuery, fetched) ?? [])
|
|
985
|
+
: [];
|
|
986
|
+
const shown = [...fetched, ...entries];
|
|
987
|
+
resultsGenRef.current = gen;
|
|
988
|
+
const firstRow = shown.length > 0 ? 0 : -1;
|
|
989
|
+
const previous = shownState;
|
|
990
|
+
const previousEntryCount = shownEntryCount;
|
|
991
|
+
if (previous == null) {
|
|
992
|
+
setHeldHeight(null);
|
|
993
|
+
replaceResults(shown, entries.length);
|
|
994
|
+
setHighlightedIndex(firstRow);
|
|
995
|
+
} else {
|
|
996
|
+
holdPopupInPlace();
|
|
997
|
+
const previousOrder = displayOrder(previous, previousEntryCount);
|
|
998
|
+
const nextOrder = displayOrder(shown, entries.length);
|
|
999
|
+
if (startsWithRows(nextOrder, previousOrder)) {
|
|
1000
|
+
setResults(shown);
|
|
1001
|
+
setQueryEntryCount(entries.length);
|
|
1002
|
+
} else {
|
|
1003
|
+
replaceResults(shown, entries.length);
|
|
1004
|
+
}
|
|
1005
|
+
// Within one query only this function sets the rows, so the index
|
|
1006
|
+
// the updater receives points into `previous`: the highlighted item
|
|
1007
|
+
// keeps its highlight wherever it now sits (spec:AST-092 FR6).
|
|
1008
|
+
setHighlightedIndex(index => {
|
|
1009
|
+
const id = previousOrder[index]?.id;
|
|
1010
|
+
const kept =
|
|
1011
|
+
id == null ? -1 : nextOrder.findIndex(item => item.id === id);
|
|
1012
|
+
return kept >= 0 ? kept : firstRow;
|
|
1013
|
+
});
|
|
1014
|
+
}
|
|
1015
|
+
if (fetched.length > 0) {
|
|
1016
|
+
shownRows = fetched;
|
|
1017
|
+
shownState = shown;
|
|
1018
|
+
shownEntryCount = entries.length;
|
|
1019
|
+
}
|
|
1020
|
+
return shown;
|
|
1021
|
+
};
|
|
1022
|
+
|
|
1023
|
+
const announceCount = (count: number) => {
|
|
1024
|
+
// Announce the outcome only for an active query (not the initial
|
|
1025
|
+
// focus-open), so screen-reader users hear result counts / no-results.
|
|
1026
|
+
// An empty result is announced from the rendered row instead, so the
|
|
1027
|
+
// region speaks whatever the caller put there.
|
|
1028
|
+
if (isMountedRef.current && searchQuery.length > 0 && count > 0) {
|
|
1029
|
+
announce(t('@astryx.typeahead.resultCount', {count}));
|
|
1030
|
+
}
|
|
1031
|
+
};
|
|
1032
|
+
|
|
1033
|
+
const context: SearchContext<T> = {
|
|
1034
|
+
update(items) {
|
|
1035
|
+
// An empty list leaves the shown rows in place; a list for a query
|
|
1036
|
+
// that is no longer current, or after it settled, is dropped.
|
|
1037
|
+
if (isSettled || searchGenRef.current !== gen || items.length === 0) {
|
|
1038
|
+
return;
|
|
1039
|
+
}
|
|
1040
|
+
showList(items, false);
|
|
1041
|
+
showLayer();
|
|
1042
|
+
},
|
|
1043
|
+
};
|
|
1044
|
+
|
|
738
1045
|
try {
|
|
739
|
-
const searchResults = await searchSource.search(searchQuery);
|
|
1046
|
+
const searchResults = await searchSource.search(searchQuery, context);
|
|
740
1047
|
if (searchGenRef.current !== gen) {
|
|
741
1048
|
return;
|
|
742
1049
|
}
|
|
743
|
-
|
|
744
|
-
const
|
|
745
|
-
const shown = [
|
|
746
|
-
...fetched,
|
|
747
|
-
...(__queryEntries?.(searchQuery, fetched) ?? []),
|
|
748
|
-
];
|
|
749
|
-
setResults(shown);
|
|
750
|
-
setHighlightedIndex(shown.length > 0 ? 0 : -1);
|
|
1050
|
+
isSettled = true;
|
|
1051
|
+
const shown = showList(searchResults, true);
|
|
751
1052
|
if (searchResults.length > 0 || searchQuery.length > 0) {
|
|
752
1053
|
showLayer();
|
|
753
1054
|
}
|
|
754
|
-
// Announce the outcome only for an active query (not the initial
|
|
755
|
-
// focus-open), so screen-reader users hear result counts / no-results.
|
|
756
1055
|
if (searchQuery.length > 0) {
|
|
757
1056
|
// This query's outcome is announced now (a count) or from the
|
|
758
1057
|
// rendered row (an empty result); a busy start not yet announced
|
|
759
1058
|
// would follow it, so it is dropped (spec:AST-086 FR8).
|
|
760
1059
|
settleBusyAnnouncement();
|
|
761
1060
|
}
|
|
762
|
-
|
|
763
|
-
announce(t('@astryx.typeahead.resultCount', {count: shown.length}));
|
|
764
|
-
}
|
|
765
|
-
// An empty result is announced from the rendered row instead, so the
|
|
766
|
-
// region speaks whatever the caller put there.
|
|
1061
|
+
announceCount(shown.length);
|
|
767
1062
|
} catch {
|
|
768
1063
|
if (searchGenRef.current !== gen) {
|
|
769
1064
|
return;
|
|
770
1065
|
}
|
|
771
|
-
|
|
772
|
-
|
|
1066
|
+
isSettled = true;
|
|
1067
|
+
if (closedGenRef.current === gen) {
|
|
1068
|
+
// The popup closed and cancelled this search, so its rejection is
|
|
1069
|
+
// not a failed answer: announce nothing, and keep only this query's
|
|
1070
|
+
// own rows (spec:AST-092 FR9).
|
|
1071
|
+
if (shownRows != null) {
|
|
1072
|
+
showList(shownRows, true);
|
|
1073
|
+
} else {
|
|
1074
|
+
replaceResults([]);
|
|
1075
|
+
setHighlightedIndex(-1);
|
|
1076
|
+
setHasSearched(false);
|
|
1077
|
+
}
|
|
1078
|
+
} else {
|
|
1079
|
+
// A failure settles this query: its outcome is announced now (the
|
|
1080
|
+
// kept rows' count) or from the rendered empty row, so a busy start
|
|
1081
|
+
// not yet announced is dropped, as on success (spec:AST-086 FR8).
|
|
1082
|
+
if (searchQuery.length > 0) {
|
|
1083
|
+
settleBusyAnnouncement();
|
|
1084
|
+
}
|
|
1085
|
+
if (shownRows != null) {
|
|
1086
|
+
// A failed server answer keeps the last non-empty list the source
|
|
1087
|
+
// showed for this query, which settles it.
|
|
1088
|
+
announceCount(showList(shownRows, true).length);
|
|
1089
|
+
} else {
|
|
1090
|
+
replaceResults([]);
|
|
1091
|
+
setHighlightedIndex(-1);
|
|
1092
|
+
}
|
|
1093
|
+
}
|
|
773
1094
|
} finally {
|
|
774
1095
|
if (searchGenRef.current === gen) {
|
|
775
1096
|
setLoading(false);
|
|
@@ -785,6 +1106,8 @@ export const BaseTypeahead = function BaseTypeahead<T extends SearchableItem>({
|
|
|
785
1106
|
setLoading,
|
|
786
1107
|
settleBusyAnnouncement,
|
|
787
1108
|
t,
|
|
1109
|
+
holdPopupInPlace,
|
|
1110
|
+
replaceResults,
|
|
788
1111
|
],
|
|
789
1112
|
);
|
|
790
1113
|
|
|
@@ -803,13 +1126,28 @@ export const BaseTypeahead = function BaseTypeahead<T extends SearchableItem>({
|
|
|
803
1126
|
) {
|
|
804
1127
|
return;
|
|
805
1128
|
}
|
|
806
|
-
|
|
1129
|
+
setHeldHeight(null);
|
|
1130
|
+
replaceResults(shown);
|
|
807
1131
|
setHighlightedIndex(nextHighlightedIndex);
|
|
808
1132
|
if (bootstrapResults.length > 0) {
|
|
809
1133
|
showLayer();
|
|
1134
|
+
} else if (committedChoices != null) {
|
|
1135
|
+
// A Tokenizer list left with no eligible choice (its focus entries
|
|
1136
|
+
// all committed, or the request failed) closes rather than staying
|
|
1137
|
+
// open and empty (component:Tokenizer FR15). A plain Typeahead
|
|
1138
|
+
// provides no committed choices and keeps its current behavior.
|
|
1139
|
+
popover.hide();
|
|
810
1140
|
}
|
|
811
1141
|
},
|
|
812
|
-
[
|
|
1142
|
+
[
|
|
1143
|
+
highlightedIndex,
|
|
1144
|
+
maxMenuItems,
|
|
1145
|
+
results.length,
|
|
1146
|
+
showLayer,
|
|
1147
|
+
replaceResults,
|
|
1148
|
+
popover,
|
|
1149
|
+
committedChoices,
|
|
1150
|
+
],
|
|
813
1151
|
);
|
|
814
1152
|
|
|
815
1153
|
// Perform bootstrap
|
|
@@ -819,8 +1157,9 @@ export const BaseTypeahead = function BaseTypeahead<T extends SearchableItem>({
|
|
|
819
1157
|
try {
|
|
820
1158
|
bootstrapResult = searchSource.bootstrap();
|
|
821
1159
|
} catch {
|
|
1160
|
+
// A failed request offers nothing: an open list closes (FR15).
|
|
1161
|
+
applyBootstrapResults([], gen);
|
|
822
1162
|
if (searchGenRef.current === gen) {
|
|
823
|
-
setResults([]);
|
|
824
1163
|
setLoading(false);
|
|
825
1164
|
}
|
|
826
1165
|
return;
|
|
@@ -836,9 +1175,7 @@ export const BaseTypeahead = function BaseTypeahead<T extends SearchableItem>({
|
|
|
836
1175
|
try {
|
|
837
1176
|
applyBootstrapResults(await bootstrapResult, gen);
|
|
838
1177
|
} catch {
|
|
839
|
-
|
|
840
|
-
setResults([]);
|
|
841
|
-
}
|
|
1178
|
+
applyBootstrapResults([], gen);
|
|
842
1179
|
} finally {
|
|
843
1180
|
if (searchGenRef.current === gen) {
|
|
844
1181
|
setLoading(false);
|
|
@@ -846,6 +1183,83 @@ export const BaseTypeahead = function BaseTypeahead<T extends SearchableItem>({
|
|
|
846
1183
|
}
|
|
847
1184
|
}, [searchSource, applyBootstrapResults, setLoading]);
|
|
848
1185
|
|
|
1186
|
+
// A list shown before the caller's committed values changed is no longer
|
|
1187
|
+
// current (component:Tokenizer FR13, spec:AST-092 FR4). While the list is
|
|
1188
|
+
// open, it reloads the same query, its typed text or the focus list, from
|
|
1189
|
+
// the source those values now filter. A closed list stays closed; opening it
|
|
1190
|
+
// loads that source.
|
|
1191
|
+
// Decided from the state at the moment the committed values change, with
|
|
1192
|
+
// no remembered outcome (the state table in the pull request):
|
|
1193
|
+
// - at the limit: close, whatever the query (FR15);
|
|
1194
|
+
// - a closed list with no search waiting: stays closed, and opening it
|
|
1195
|
+
// loads the current source;
|
|
1196
|
+
// - typed text: search it again, also replacing a search still waiting
|
|
1197
|
+
// for its debounce; an empty answer shows the empty-search message;
|
|
1198
|
+
// - a focus list the commit emptied (no row left, no load waiting): close
|
|
1199
|
+
// (FR15); with rows left, or a load waiting: load the focus list again;
|
|
1200
|
+
// an empty or failed answer closes (FR15);
|
|
1201
|
+
// - a focus list with focus entries off: close.
|
|
1202
|
+
const reloadForCommittedChoices = useCallback(() => {
|
|
1203
|
+
// A search waiting for its debounce would use the source from before the
|
|
1204
|
+
// commit, so the reload replaces it.
|
|
1205
|
+
const hadPendingSearch = searchTimeoutRef.current != null;
|
|
1206
|
+
if (searchTimeoutRef.current != null) {
|
|
1207
|
+
clearTimeout(searchTimeoutRef.current);
|
|
1208
|
+
searchTimeoutRef.current = null;
|
|
1209
|
+
}
|
|
1210
|
+
if (isDisabled || !isMountedRef.current) {
|
|
1211
|
+
return;
|
|
1212
|
+
}
|
|
1213
|
+
if (isAtCommitLimit) {
|
|
1214
|
+
popover.hide();
|
|
1215
|
+
return;
|
|
1216
|
+
}
|
|
1217
|
+
if (!isShowingRef.current && !hadPendingSearch) {
|
|
1218
|
+
return;
|
|
1219
|
+
}
|
|
1220
|
+
if (query.length > 0) {
|
|
1221
|
+
if (!isBelowMinQueryLength(query, minQueryLength)) {
|
|
1222
|
+
void performSearch(query);
|
|
1223
|
+
}
|
|
1224
|
+
return;
|
|
1225
|
+
}
|
|
1226
|
+
if (!hasEntriesOnFocus || (results.length === 0 && !hadPendingSearch)) {
|
|
1227
|
+
popover.hide();
|
|
1228
|
+
return;
|
|
1229
|
+
}
|
|
1230
|
+
void performBootstrap();
|
|
1231
|
+
}, [
|
|
1232
|
+
isDisabled,
|
|
1233
|
+
isAtCommitLimit,
|
|
1234
|
+
query,
|
|
1235
|
+
minQueryLength,
|
|
1236
|
+
hasEntriesOnFocus,
|
|
1237
|
+
results.length,
|
|
1238
|
+
performSearch,
|
|
1239
|
+
performBootstrap,
|
|
1240
|
+
popover,
|
|
1241
|
+
]);
|
|
1242
|
+
// The latest reload, read when the key changes, as an effect event.
|
|
1243
|
+
const reloadForCommittedChoicesRef = useRef(reloadForCommittedChoices);
|
|
1244
|
+
useIsomorphicLayoutEffect(() => {
|
|
1245
|
+
reloadForCommittedChoicesRef.current = reloadForCommittedChoices;
|
|
1246
|
+
});
|
|
1247
|
+
const reloadedKeyRef = useRef(committedChoicesKey);
|
|
1248
|
+
useIsomorphicLayoutEffect(() => {
|
|
1249
|
+
if (reloadedKeyRef.current === committedChoicesKey) {
|
|
1250
|
+
return;
|
|
1251
|
+
}
|
|
1252
|
+
reloadedKeyRef.current = committedChoicesKey;
|
|
1253
|
+
// The reload is a source request, started after the commit like one a
|
|
1254
|
+
// keystroke starts. Queued from a layout effect, it runs before paint, so
|
|
1255
|
+
// a list the commit emptied closes without showing empty.
|
|
1256
|
+
queueMicrotask(() => {
|
|
1257
|
+
if (reloadedKeyRef.current === committedChoicesKey) {
|
|
1258
|
+
reloadForCommittedChoicesRef.current();
|
|
1259
|
+
}
|
|
1260
|
+
});
|
|
1261
|
+
}, [committedChoicesKey]);
|
|
1262
|
+
|
|
849
1263
|
// Handle query change
|
|
850
1264
|
const handleQueryChange = useCallback(
|
|
851
1265
|
(newQuery: string) => {
|
|
@@ -870,7 +1284,8 @@ export const BaseTypeahead = function BaseTypeahead<T extends SearchableItem>({
|
|
|
870
1284
|
// the text itself. `hasSearched` stays false either way, so the menu
|
|
871
1285
|
// never reports "no results" for a query nobody looked for.
|
|
872
1286
|
const derived = __queryEntries?.(newQuery, []) ?? [];
|
|
873
|
-
|
|
1287
|
+
replaceResults(derived, derived.length);
|
|
1288
|
+
setHeldHeight(null);
|
|
874
1289
|
setHighlightedIndex(derived.length > 0 ? 0 : -1);
|
|
875
1290
|
setHasSearched(false);
|
|
876
1291
|
// Bumping the generation abandons any in-flight search, which means
|
|
@@ -899,10 +1314,14 @@ export const BaseTypeahead = function BaseTypeahead<T extends SearchableItem>({
|
|
|
899
1314
|
if (debounceMs <= 0) {
|
|
900
1315
|
triggerSearch();
|
|
901
1316
|
} else {
|
|
902
|
-
searchTimeoutRef.current = setTimeout(
|
|
1317
|
+
searchTimeoutRef.current = setTimeout(() => {
|
|
1318
|
+
searchTimeoutRef.current = null;
|
|
1319
|
+
triggerSearch();
|
|
1320
|
+
}, debounceMs);
|
|
903
1321
|
}
|
|
904
1322
|
},
|
|
905
1323
|
[
|
|
1324
|
+
replaceResults,
|
|
906
1325
|
onChangeQuery,
|
|
907
1326
|
hasEntriesOnFocus,
|
|
908
1327
|
minQueryLength,
|
|
@@ -943,7 +1362,8 @@ export const BaseTypeahead = function BaseTypeahead<T extends SearchableItem>({
|
|
|
943
1362
|
searchSource.cancel?.();
|
|
944
1363
|
onChange(item);
|
|
945
1364
|
setQuery('');
|
|
946
|
-
|
|
1365
|
+
replaceResults([]);
|
|
1366
|
+
setHeldHeight(null);
|
|
947
1367
|
setHasSearched(false);
|
|
948
1368
|
// Same reason as in handleQueryChange: the invalidated search will not
|
|
949
1369
|
// clear this itself. Selecting a stale result while the next search is
|
|
@@ -952,7 +1372,7 @@ export const BaseTypeahead = function BaseTypeahead<T extends SearchableItem>({
|
|
|
952
1372
|
popover.hide();
|
|
953
1373
|
inputRef.current?.focus();
|
|
954
1374
|
},
|
|
955
|
-
[isDisabled, onChange, popover, searchSource, setLoading],
|
|
1375
|
+
[isDisabled, onChange, popover, searchSource, setLoading, replaceResults],
|
|
956
1376
|
);
|
|
957
1377
|
|
|
958
1378
|
// Shared by handleFocus and handleClick: bootstrap entries if none are
|
|
@@ -1026,10 +1446,10 @@ export const BaseTypeahead = function BaseTypeahead<T extends SearchableItem>({
|
|
|
1026
1446
|
|
|
1027
1447
|
// Handle blur — close the dropdown when focus leaves the input for an
|
|
1028
1448
|
// element that is neither inside the field wrapper (anchor) nor inside the
|
|
1029
|
-
// dropdown popover. The
|
|
1030
|
-
//
|
|
1031
|
-
// via the keyboard (Tab) or programmatically, which would
|
|
1032
|
-
// orphaned open menu. Clicking a result moves focus onto the option (it is
|
|
1449
|
+
// dropdown popover. The outside-press watch only answers pointer presses
|
|
1450
|
+
// and Escape stays on the layer stack; neither closes the list when focus
|
|
1451
|
+
// moves away via the keyboard (Tab) or programmatically, which would
|
|
1452
|
+
// otherwise leave an orphaned open menu. Clicking a result moves focus onto the option (it is
|
|
1033
1453
|
// tabIndex={-1}, so it lives inside the popover) and selection re-focuses the
|
|
1034
1454
|
// input, so this only closes on a genuine focus-out of the whole field.
|
|
1035
1455
|
const handleBlur = useCallback(
|
|
@@ -1037,13 +1457,9 @@ export const BaseTypeahead = function BaseTypeahead<T extends SearchableItem>({
|
|
|
1037
1457
|
if (!popover.isOpen) {
|
|
1038
1458
|
return;
|
|
1039
1459
|
}
|
|
1040
|
-
const
|
|
1041
|
-
if (
|
|
1042
|
-
|
|
1043
|
-
const popoverEl = document.getElementById(popover.id);
|
|
1044
|
-
if (anchorEl?.contains(next) || popoverEl?.contains(next)) {
|
|
1045
|
-
return;
|
|
1046
|
-
}
|
|
1460
|
+
const anchorEl = anchorRef?.current ?? fallbackAnchorRef.current;
|
|
1461
|
+
if (isFocusInsideOwnedLayer(e.relatedTarget, anchorEl, popover.id)) {
|
|
1462
|
+
return;
|
|
1047
1463
|
}
|
|
1048
1464
|
popover.hide();
|
|
1049
1465
|
},
|
|
@@ -1142,7 +1558,7 @@ export const BaseTypeahead = function BaseTypeahead<T extends SearchableItem>({
|
|
|
1142
1558
|
case 'Enter':
|
|
1143
1559
|
e.preventDefault();
|
|
1144
1560
|
if (highlightedIndex >= 0 && highlightedIndex < results.length) {
|
|
1145
|
-
handleSelect(
|
|
1561
|
+
handleSelect(displayedResults[highlightedIndex]);
|
|
1146
1562
|
}
|
|
1147
1563
|
break;
|
|
1148
1564
|
case 'Escape':
|
|
@@ -1179,6 +1595,7 @@ export const BaseTypeahead = function BaseTypeahead<T extends SearchableItem>({
|
|
|
1179
1595
|
isDisabled,
|
|
1180
1596
|
popover,
|
|
1181
1597
|
results,
|
|
1598
|
+
displayedResults,
|
|
1182
1599
|
highlightedIndex,
|
|
1183
1600
|
handleSelect,
|
|
1184
1601
|
hasEntriesOnFocus,
|
|
@@ -1190,28 +1607,53 @@ export const BaseTypeahead = function BaseTypeahead<T extends SearchableItem>({
|
|
|
1190
1607
|
],
|
|
1191
1608
|
);
|
|
1192
1609
|
|
|
1193
|
-
//
|
|
1610
|
+
// Option ids follow the item, not the row, so the active descendant keeps
|
|
1611
|
+
// naming the same option while rows are added after it and a screen reader
|
|
1612
|
+
// does not re-read it (spec:AST-092 FR7). A repeated id in one list falls
|
|
1613
|
+
// back to its row so DOM ids stay unique.
|
|
1614
|
+
const optionIds = useMemo(() => {
|
|
1615
|
+
const seen = new Set<string>();
|
|
1616
|
+
return displayedResults.map((item, index) => {
|
|
1617
|
+
const byItem = `${listboxId}-option-${encodeURIComponent(item.id)}`;
|
|
1618
|
+
const id = seen.has(byItem) ? `${byItem}-${index}` : byItem;
|
|
1619
|
+
seen.add(byItem);
|
|
1620
|
+
return id;
|
|
1621
|
+
});
|
|
1622
|
+
}, [displayedResults, listboxId]);
|
|
1194
1623
|
const getItemId = useCallback(
|
|
1195
|
-
(index: number) => `${listboxId}-option-${index}`,
|
|
1196
|
-
[listboxId],
|
|
1624
|
+
(index: number) => optionIds[index] ?? `${listboxId}-option-${index}`,
|
|
1625
|
+
[optionIds, listboxId],
|
|
1197
1626
|
);
|
|
1198
1627
|
|
|
1199
1628
|
// Keep the highlighted option visible during keyboard navigation; hover
|
|
1200
1629
|
// highlights never scroll (#6077). Both sides live in useHighlightedOptionScroll.
|
|
1630
|
+
// The scroll follows the highlighted option's id and the list it belongs
|
|
1631
|
+
// to, so rows a later list appends below do not scroll a list the person
|
|
1632
|
+
// has scrolled (spec:AST-092 FR6, FR7).
|
|
1633
|
+
const highlightedOptionId = optionIds[highlightedIndex];
|
|
1634
|
+
const getHighlightedOptionId = useCallback(
|
|
1635
|
+
(index: number) => highlightedOptionId ?? `${listboxId}-option-${index}`,
|
|
1636
|
+
[highlightedOptionId, listboxId],
|
|
1637
|
+
);
|
|
1201
1638
|
const highlightOnHover = useHighlightedOptionScroll({
|
|
1202
1639
|
isOpen: popover.isOpen,
|
|
1203
1640
|
highlightedIndex,
|
|
1204
1641
|
setHighlightedIndex,
|
|
1205
|
-
getOptionId:
|
|
1206
|
-
itemCount:
|
|
1642
|
+
getOptionId: getHighlightedOptionId,
|
|
1643
|
+
itemCount: listKey,
|
|
1207
1644
|
});
|
|
1208
1645
|
|
|
1209
1646
|
const selectedKey =
|
|
1210
1647
|
value == null ? null : getKey(value.id, () => results.indexOf(value));
|
|
1211
1648
|
|
|
1212
|
-
// Unmount: clear the pending debounce and cancel in-flight work
|
|
1649
|
+
// Unmount: clear the pending debounce and cancel in-flight work, and stop
|
|
1650
|
+
// announcing for a field that is gone (spec:AST-092 FR4). A flag rather than
|
|
1651
|
+
// a generation bump, so StrictMode's simulated unmount keeps a search or
|
|
1652
|
+
// bootstrap started during mount.
|
|
1213
1653
|
useEffect(() => {
|
|
1654
|
+
isMountedRef.current = true;
|
|
1214
1655
|
return () => {
|
|
1656
|
+
isMountedRef.current = false;
|
|
1215
1657
|
if (searchTimeoutRef.current) {
|
|
1216
1658
|
clearTimeout(searchTimeoutRef.current);
|
|
1217
1659
|
}
|
|
@@ -1302,12 +1744,16 @@ export const BaseTypeahead = function BaseTypeahead<T extends SearchableItem>({
|
|
|
1302
1744
|
)}
|
|
1303
1745
|
{popover.render(
|
|
1304
1746
|
<div
|
|
1747
|
+
ref={dropdownRef}
|
|
1305
1748
|
id={listboxId}
|
|
1306
1749
|
role="listbox"
|
|
1307
1750
|
aria-label={t('@astryx.typeahead.searchResults')}
|
|
1308
1751
|
{...mergeProps(
|
|
1309
1752
|
themeProps('typeahead-dropdown'),
|
|
1310
|
-
stylex.props(
|
|
1753
|
+
stylex.props(
|
|
1754
|
+
styles.dropdown,
|
|
1755
|
+
heldHeight != null && styles.dropdownHeld(heldHeight),
|
|
1756
|
+
),
|
|
1311
1757
|
)}>
|
|
1312
1758
|
{results.length === 0 && hasSearched && !isSearchPending ? (
|
|
1313
1759
|
<div
|
|
@@ -1364,7 +1810,10 @@ export const BaseTypeahead = function BaseTypeahead<T extends SearchableItem>({
|
|
|
1364
1810
|
);
|
|
1365
1811
|
};
|
|
1366
1812
|
|
|
1367
|
-
|
|
1813
|
+
const sourceEnd = results.length - queryEntryCount;
|
|
1814
|
+
const grouped = groupItems(results.slice(0, sourceEnd), {
|
|
1815
|
+
ungroupedFirst: true,
|
|
1816
|
+
}).map(group => {
|
|
1368
1817
|
const options = group.items.map(renderOption);
|
|
1369
1818
|
if (group.heading == null) {
|
|
1370
1819
|
return options;
|
|
@@ -1383,6 +1832,12 @@ export const BaseTypeahead = function BaseTypeahead<T extends SearchableItem>({
|
|
|
1383
1832
|
</div>
|
|
1384
1833
|
);
|
|
1385
1834
|
});
|
|
1835
|
+
// Entries derived from the typed text follow every group
|
|
1836
|
+
// (spec:AST-092 FR1).
|
|
1837
|
+
return [
|
|
1838
|
+
...grouped,
|
|
1839
|
+
...results.slice(sourceEnd).map(renderOption),
|
|
1840
|
+
];
|
|
1386
1841
|
})()
|
|
1387
1842
|
)}
|
|
1388
1843
|
</div>,
|