@astryxdesign/core 0.7.7-canary.550ff21 → 0.7.7-canary.58c5b8a
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/AlertDialog/AlertDialog.d.ts +4 -1
- package/dist/AlertDialog/AlertDialog.d.ts.map +1 -1
- package/dist/AlertDialog/AlertDialog.js +36 -6
- package/dist/AppShell/useCloseMobileDrawerOnActivate.d.ts +13 -0
- package/dist/AppShell/useCloseMobileDrawerOnActivate.d.ts.map +1 -0
- package/dist/AppShell/useCloseMobileDrawerOnActivate.js +45 -0
- package/dist/Avatar/Avatar.d.ts.map +1 -1
- package/dist/Avatar/Avatar.js +1 -1
- package/dist/BottomSheet/BottomSheet.d.ts.map +1 -1
- package/dist/BottomSheet/BottomSheet.js +79 -9
- package/dist/BottomSheet/BottomSheetPanel.d.ts.map +1 -1
- package/dist/BottomSheet/BottomSheetPanel.js +23 -4
- package/dist/BottomSheet/bottomSheetStack.d.ts.map +1 -1
- package/dist/BottomSheet/bottomSheetStack.js +5 -4
- package/dist/BottomSheet/useSheetGestures.d.ts.map +1 -1
- package/dist/BottomSheet/useSheetGestures.js +3 -1
- package/dist/Breadcrumbs/BreadcrumbItem.d.ts +2 -1
- package/dist/Breadcrumbs/BreadcrumbItem.d.ts.map +1 -1
- package/dist/Breadcrumbs/BreadcrumbItem.js +9 -4
- package/dist/Button/Button.d.ts.map +1 -1
- package/dist/Button/Button.js +50 -5
- package/dist/CheckboxList/CheckboxList.d.ts.map +1 -1
- package/dist/CheckboxList/CheckboxList.js +7 -1
- package/dist/CheckboxList/CheckboxListContext.d.ts +6 -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 -2
- package/dist/ComplexSelector/ComplexSelector.d.ts +4 -1
- package/dist/ComplexSelector/ComplexSelector.d.ts.map +1 -1
- package/dist/ComplexSelector/ComplexSelector.js +14 -4
- package/dist/DateInput/DateInput.d.ts.map +1 -1
- package/dist/DateInput/DateInput.js +5 -2
- package/dist/DateInput/MonthScroller.d.ts.map +1 -1
- package/dist/DateInput/MonthScroller.js +13 -27
- package/dist/DateInput/Wheel.d.ts +17 -1
- package/dist/DateInput/Wheel.d.ts.map +1 -1
- package/dist/DateInput/Wheel.js +161 -20
- package/dist/DateRangeInput/DateRangeInput.d.ts.map +1 -1
- package/dist/DateRangeInput/DateRangeInput.js +63 -49
- package/dist/DateTimeInput/DateTimeInput.d.ts.map +1 -1
- package/dist/DateTimeInput/DateTimeInput.js +5 -2
- package/dist/Dialog/Dialog.d.ts.map +1 -1
- package/dist/Dialog/Dialog.js +53 -15
- package/dist/Drawer/Drawer.d.ts.map +1 -1
- package/dist/Drawer/Drawer.js +15 -11
- package/dist/Drawer/useDrawerDialogPresence.d.ts.map +1 -1
- package/dist/Drawer/useDrawerDialogPresence.js +9 -1
- package/dist/DropdownMenu/DropdownMenu.d.ts.map +1 -1
- package/dist/DropdownMenu/DropdownMenu.js +20 -4
- package/dist/Field/Field.js +2 -2
- package/dist/Field/PanelSearchInput.d.ts +9 -1
- package/dist/Field/PanelSearchInput.d.ts.map +1 -1
- package/dist/Field/PanelSearchInput.js +3 -1
- package/dist/HoverCard/HoverCard.d.ts.map +1 -1
- package/dist/HoverCard/HoverCard.js +27 -2
- package/dist/Icon/Icon.d.ts +5 -1
- package/dist/Icon/Icon.d.ts.map +1 -1
- package/dist/Icon/Icon.js +5 -2
- package/dist/InfoTip/InfoTip.d.ts +63 -0
- package/dist/InfoTip/InfoTip.d.ts.map +1 -0
- package/dist/InfoTip/InfoTip.js +126 -0
- package/dist/InfoTip/index.d.ts +10 -0
- package/dist/InfoTip/index.d.ts.map +1 -0
- package/dist/InfoTip/index.js +12 -0
- package/dist/Layer/layerAnimations.stylex.d.ts +7 -8
- package/dist/Layer/layerAnimations.stylex.d.ts.map +1 -1
- package/dist/Layer/layerAnimations.stylex.js +25 -20
- package/dist/Layer/layerClickBoundary.d.ts +7 -1
- package/dist/Layer/layerClickBoundary.d.ts.map +1 -1
- package/dist/Layer/layerClickBoundary.js +2 -2
- package/dist/Layer/useBackdropPress.d.ts +27 -0
- package/dist/Layer/useBackdropPress.d.ts.map +1 -0
- package/dist/Layer/useBackdropPress.js +53 -0
- package/dist/Layer/usePressPin.d.ts +105 -0
- package/dist/Layer/usePressPin.d.ts.map +1 -0
- package/dist/Layer/usePressPin.js +413 -0
- package/dist/Layer/useTouchTrigger.d.ts +23 -1
- package/dist/Layer/useTouchTrigger.d.ts.map +1 -1
- package/dist/Layer/useTouchTrigger.js +45 -7
- package/dist/Lightbox/Lightbox.d.ts.map +1 -1
- package/dist/Lightbox/Lightbox.js +2 -1
- package/dist/MobileNav/MobileNav.js +0 -1
- package/dist/MultiSelector/hooks.d.ts.map +1 -1
- package/dist/MultiSelector/hooks.js +2 -4
- package/dist/Outline/Outline.d.ts +2 -4
- package/dist/Outline/Outline.d.ts.map +1 -1
- package/dist/Outline/Outline.js +4 -52
- package/dist/Outline/useOutlineFromMarkdown.d.ts.map +1 -1
- package/dist/Outline/useOutlineFromMarkdown.js +1 -0
- package/dist/Outline/useScrollSpy.js +3 -3
- package/dist/Popover/usePopover.d.ts.map +1 -1
- package/dist/Popover/usePopover.js +56 -7
- package/dist/PowerSearch/PowerSearch.d.ts +36 -3
- package/dist/PowerSearch/PowerSearch.d.ts.map +1 -1
- package/dist/PowerSearch/PowerSearch.js +571 -302
- package/dist/PowerSearch/PowerSearchBottomSheet.d.ts +100 -0
- package/dist/PowerSearch/PowerSearchBottomSheet.d.ts.map +1 -0
- package/dist/PowerSearch/PowerSearchBottomSheet.js +1913 -0
- package/dist/PowerSearch/PowerSearchEditPopover.d.ts +32 -1
- package/dist/PowerSearch/PowerSearchEditPopover.d.ts.map +1 -1
- package/dist/PowerSearch/PowerSearchEditPopover.js +17 -6
- package/dist/PowerSearch/PowerSearchValueEditor.d.ts +38 -3
- package/dist/PowerSearch/PowerSearchValueEditor.d.ts.map +1 -1
- package/dist/PowerSearch/PowerSearchValueEditor.js +170 -61
- package/dist/PowerSearch/formatFilterValue.d.ts +7 -0
- package/dist/PowerSearch/formatFilterValue.d.ts.map +1 -1
- package/dist/PowerSearch/formatFilterValue.js +11 -1
- package/dist/PowerSearch/formatTokenValue.d.ts +28 -0
- package/dist/PowerSearch/formatTokenValue.d.ts.map +1 -0
- package/dist/PowerSearch/formatTokenValue.js +160 -0
- package/dist/PowerSearch/powerSearchSheetUtils.d.ts +65 -0
- package/dist/PowerSearch/powerSearchSheetUtils.d.ts.map +1 -0
- package/dist/PowerSearch/powerSearchSheetUtils.js +168 -0
- package/dist/ProgressBar/ProgressBar.d.ts +1 -1
- package/dist/ProgressBar/ProgressBar.d.ts.map +1 -1
- package/dist/ProgressBar/ProgressBar.js +33 -6
- package/dist/RadioList/RadioList.d.ts.map +1 -1
- package/dist/RadioList/RadioList.js +8 -2
- package/dist/RadioList/RadioListItem.d.ts +1 -1
- package/dist/RadioList/RadioListItem.d.ts.map +1 -1
- package/dist/RadioList/RadioListItem.js +5 -3
- package/dist/Resizable/ResizeHandle.d.ts.map +1 -1
- package/dist/Resizable/ResizeHandle.js +118 -260
- package/dist/Resizable/resizeGesture.d.ts +91 -0
- package/dist/Resizable/resizeGesture.d.ts.map +1 -0
- package/dist/Resizable/resizeGesture.js +251 -0
- package/dist/SegmentedControl/SegmentedControl.d.ts +3 -1
- package/dist/SegmentedControl/SegmentedControl.d.ts.map +1 -1
- package/dist/SegmentedControl/SegmentedControl.js +115 -8
- package/dist/SegmentedControl/SegmentedControlContext.d.ts +6 -0
- package/dist/SegmentedControl/SegmentedControlContext.d.ts.map +1 -1
- package/dist/SegmentedControl/SegmentedControlItem.d.ts +1 -0
- package/dist/SegmentedControl/SegmentedControlItem.d.ts.map +1 -1
- package/dist/SegmentedControl/SegmentedControlItem.js +10 -2
- package/dist/SegmentedControl/useSegmentedSelectionMotion.d.ts +357 -0
- package/dist/SegmentedControl/useSegmentedSelectionMotion.d.ts.map +1 -0
- package/dist/SegmentedControl/useSegmentedSelectionMotion.js +1349 -0
- package/dist/SegmentedControl/useSegmentedTouchTracking.d.ts +70 -0
- package/dist/SegmentedControl/useSegmentedTouchTracking.d.ts.map +1 -0
- package/dist/SegmentedControl/useSegmentedTouchTracking.js +264 -0
- package/dist/Selector/Selector.d.ts.map +1 -1
- package/dist/Selector/Selector.js +96 -67
- package/dist/Selector/optionShape.d.ts +24 -0
- package/dist/Selector/optionShape.d.ts.map +1 -0
- package/dist/Selector/optionShape.js +48 -0
- package/dist/Selector/selectableOptionEntries.d.ts +20 -0
- package/dist/Selector/selectableOptionEntries.d.ts.map +1 -0
- package/dist/Selector/selectableOptionEntries.js +38 -0
- package/dist/Selector/utils.d.ts +2 -17
- package/dist/Selector/utils.d.ts.map +1 -1
- package/dist/Selector/utils.js +3 -51
- package/dist/SideNav/SideNavItem.d.ts.map +1 -1
- package/dist/SideNav/SideNavItem.js +3 -9
- package/dist/Slider/sliderTouchController.js +2 -2
- package/dist/Switch/Switch.d.ts +1 -1
- package/dist/Switch/Switch.d.ts.map +1 -1
- package/dist/Switch/Switch.js +200 -46
- package/dist/Switch/switchFill.d.ts +31 -0
- package/dist/Switch/switchFill.d.ts.map +1 -0
- package/dist/Switch/switchFill.js +88 -0
- package/dist/Switch/switchTouch.d.ts +74 -0
- package/dist/Switch/switchTouch.d.ts.map +1 -0
- package/dist/Switch/switchTouch.js +125 -0
- package/dist/Switch/useSwitchTouch.d.ts +276 -0
- package/dist/Switch/useSwitchTouch.d.ts.map +1 -0
- package/dist/Switch/useSwitchTouch.js +939 -0
- package/dist/TabList/Tab.d.ts.map +1 -1
- package/dist/TabList/Tab.js +4 -3
- package/dist/Table/BaseTable.d.ts.map +1 -1
- package/dist/Table/BaseTable.js +29 -8
- package/dist/TextInput/TextInput.d.ts +2 -2
- package/dist/TextInput/TextInput.d.ts.map +1 -1
- package/dist/TextInput/TextInput.js +10 -7
- package/dist/Toast/Toast.d.ts.map +1 -1
- package/dist/Toast/Toast.js +5 -0
- package/dist/Token/Token.d.ts +2 -2
- package/dist/Token/Token.d.ts.map +1 -1
- package/dist/Token/Token.js +13 -4
- package/dist/Token/TokenNamingContext.d.ts +14 -0
- package/dist/Token/TokenNamingContext.d.ts.map +1 -0
- package/dist/Token/TokenNamingContext.js +23 -0
- package/dist/Tokenizer/Tokenizer.d.ts +46 -59
- package/dist/Tokenizer/Tokenizer.d.ts.map +1 -1
- package/dist/Tokenizer/Tokenizer.js +44 -60
- package/dist/Tokenizer/TokenizerBottomSheet.d.ts +25 -28
- package/dist/Tokenizer/TokenizerBottomSheet.d.ts.map +1 -1
- package/dist/Tokenizer/TokenizerBottomSheet.js +157 -54
- package/dist/Tokenizer/TokenizerItemRemovableContext.d.ts +3 -0
- package/dist/Tokenizer/TokenizerItemRemovableContext.d.ts.map +1 -0
- package/dist/Tokenizer/TokenizerItemRemovableContext.js +19 -0
- package/dist/Tooltip/Tooltip.d.ts +24 -5
- package/dist/Tooltip/Tooltip.d.ts.map +1 -1
- package/dist/Tooltip/Tooltip.js +29 -5
- package/dist/Tooltip/useTooltip.d.ts +48 -5
- package/dist/Tooltip/useTooltip.d.ts.map +1 -1
- package/dist/Tooltip/useTooltip.js +90 -20
- package/dist/TopNav/TopNavItem.d.ts.map +1 -1
- package/dist/TopNav/TopNavItem.js +4 -7
- package/dist/TopNav/TopNavMegaMenuItem.d.ts.map +1 -1
- package/dist/TopNav/TopNavMegaMenuItem.js +4 -7
- package/dist/TopNav/TopNavMenu.d.ts.map +1 -1
- package/dist/TopNav/TopNavMenu.js +4 -7
- package/dist/Typeahead/Typeahead.d.ts.map +1 -1
- package/dist/Typeahead/Typeahead.js +26 -15
- package/dist/animator/createAnimator.d.ts +98 -0
- package/dist/animator/createAnimator.d.ts.map +1 -0
- package/dist/animator/createAnimator.js +259 -0
- package/dist/astryx.css +142 -7
- package/dist/gestures/GestureHost.d.ts +27 -1
- package/dist/gestures/GestureHost.d.ts.map +1 -1
- package/dist/gestures/GestureHost.js +161 -22
- package/dist/gestures/PressTracker.d.ts +6 -0
- package/dist/gestures/PressTracker.d.ts.map +1 -1
- package/dist/gestures/PressTracker.js +3 -0
- package/dist/gestures/types.d.ts +6 -0
- package/dist/gestures/types.d.ts.map +1 -1
- package/dist/gestures/usePressTracker.d.ts.map +1 -1
- package/dist/gestures/usePressTracker.js +1 -0
- package/dist/gestures/wheelSegmenter.d.ts +14 -3
- package/dist/gestures/wheelSegmenter.d.ts.map +1 -1
- package/dist/gestures/wheelSegmenter.js +32 -8
- package/dist/hooks/actionGroupTracker.d.ts +7 -4
- package/dist/hooks/actionGroupTracker.d.ts.map +1 -1
- package/dist/hooks/actionGroupTracker.js +19 -56
- package/dist/hooks/index.d.ts +1 -0
- package/dist/hooks/index.d.ts.map +1 -1
- package/dist/hooks/index.js +1 -0
- package/dist/hooks/pressGroupContext.d.ts +6 -0
- package/dist/hooks/pressGroupContext.d.ts.map +1 -0
- package/dist/hooks/pressGroupContext.js +20 -0
- package/dist/hooks/useActionGroupTracking.d.ts +53 -0
- package/dist/hooks/useActionGroupTracking.d.ts.map +1 -0
- package/dist/hooks/useActionGroupTracking.js +174 -0
- package/dist/hooks/useAnimator.d.ts +41 -0
- package/dist/hooks/useAnimator.d.ts.map +1 -0
- package/dist/hooks/useAnimator.js +70 -0
- package/dist/hooks/useAttachment.d.ts +16 -8
- package/dist/hooks/useAttachment.d.ts.map +1 -1
- package/dist/hooks/useAttachment.js +35 -15
- package/dist/hooks/useFocusTrap.d.ts +15 -0
- package/dist/hooks/useFocusTrap.d.ts.map +1 -1
- package/dist/hooks/useFocusTrap.js +13 -2
- package/dist/hooks/useHighlightedOptionScroll.d.ts +11 -1
- package/dist/hooks/useHighlightedOptionScroll.d.ts.map +1 -1
- package/dist/hooks/useHighlightedOptionScroll.js +112 -11
- package/dist/hooks/useInputStatusIcon.d.ts +1 -1
- package/dist/hooks/useInputStatusIcon.d.ts.map +1 -1
- package/dist/hooks/useInputStatusIcon.js +2 -2
- package/dist/hooks/useMediaQuery.d.ts +2 -1
- package/dist/hooks/useMediaQuery.d.ts.map +1 -1
- package/dist/hooks/useMediaQuery.js +7 -4
- package/dist/hooks/useMenuPress.d.ts.map +1 -1
- package/dist/hooks/useMenuPress.js +4 -2
- package/dist/hooks/usePager.d.ts +261 -0
- package/dist/hooks/usePager.d.ts.map +1 -0
- package/dist/hooks/usePager.js +1169 -0
- package/dist/i18n/generated-english/InfoTip/InfoTip.generated.d.ts +8 -0
- package/dist/i18n/generated-english/InfoTip/InfoTip.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/InfoTip/InfoTip.generated.js +12 -0
- package/dist/i18n/generated-english/PowerSearch/PowerSearch.generated.d.ts.map +1 -1
- package/dist/i18n/generated-english/PowerSearch/PowerSearch.generated.js +1 -0
- package/dist/i18n/generated-english/PowerSearch/PowerSearchBottomSheet.generated.d.ts +8 -0
- package/dist/i18n/generated-english/PowerSearch/PowerSearchBottomSheet.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/PowerSearch/PowerSearchBottomSheet.generated.js +42 -0
- package/dist/i18n/generated-english/PowerSearch/PowerSearchValueEditor.generated.d.ts.map +1 -1
- package/dist/i18n/generated-english/PowerSearch/PowerSearchValueEditor.generated.js +6 -0
- package/dist/i18n/generated-english/PowerSearch/formatTokenValue.generated.d.ts +8 -0
- package/dist/i18n/generated-english/PowerSearch/formatTokenValue.generated.d.ts.map +1 -0
- package/dist/i18n/generated-english/PowerSearch/formatTokenValue.generated.js +14 -0
- package/dist/i18n/generated-english/Tokenizer/TokenizerBottomSheet.generated.d.ts.map +1 -1
- package/dist/i18n/generated-english/Tokenizer/TokenizerBottomSheet.generated.js +7 -1
- package/dist/i18n/generated-locales/en.generated.d.ts.map +1 -1
- package/dist/i18n/generated-locales/en.generated.js +33 -1
- package/dist/i18n/generated-locales/pseudo.generated.d.ts.map +1 -1
- package/dist/i18n/generated-locales/pseudo.generated.js +33 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -0
- package/dist/internal/SheetConfirmation.d.ts +11 -0
- package/dist/internal/SheetConfirmation.d.ts.map +1 -0
- package/dist/internal/SheetConfirmation.js +92 -0
- package/dist/internal/sheetDraft.d.ts +35 -0
- package/dist/internal/sheetDraft.d.ts.map +1 -0
- package/dist/internal/sheetDraft.js +65 -0
- package/dist/internal/touch-sheet.d.ts +21 -0
- package/dist/internal/touch-sheet.d.ts.map +1 -0
- package/dist/internal/touch-sheet.js +19 -0
- package/dist/internal/useDismissSearchOnTouchDrag.d.ts +24 -0
- package/dist/internal/useDismissSearchOnTouchDrag.d.ts.map +1 -0
- package/dist/internal/useDismissSearchOnTouchDrag.js +56 -0
- package/dist/motion/animator.d.ts +14 -14
- package/dist/motion/animator.d.ts.map +1 -1
- package/dist/motion/animator.js +41 -18
- package/dist/motion/paging.d.ts +16 -5
- package/dist/motion/paging.d.ts.map +1 -1
- package/dist/motion/paging.js +34 -14
- package/dist/motion/reducedMotion.d.ts +24 -0
- package/dist/motion/reducedMotion.d.ts.map +1 -1
- package/dist/motion/reducedMotion.js +78 -1
- package/dist/motion/roles.d.ts +7 -1
- package/dist/motion/roles.d.ts.map +1 -1
- package/dist/motion/roles.js +20 -1
- package/dist/motion/uikit/alert.d.ts +41 -0
- package/dist/motion/uikit/alert.d.ts.map +1 -0
- package/dist/motion/uikit/alert.js +43 -0
- package/dist/motion/uikit/index.d.ts +7 -4
- package/dist/motion/uikit/index.d.ts.map +1 -1
- package/dist/motion/uikit/index.js +7 -4
- package/dist/motion/uikit/paging.d.ts +31 -20
- package/dist/motion/uikit/paging.d.ts.map +1 -1
- package/dist/motion/uikit/paging.js +41 -11
- package/dist/motion/uikit/progressBar.d.ts +27 -7
- package/dist/motion/uikit/progressBar.d.ts.map +1 -1
- package/dist/motion/uikit/progressBar.js +31 -11
- package/dist/motion/uikit/segmented.d.ts +55 -0
- package/dist/motion/uikit/segmented.d.ts.map +1 -0
- package/dist/motion/uikit/segmented.js +77 -0
- package/dist/motion/uikit/springs.d.ts +8 -42
- package/dist/motion/uikit/springs.d.ts.map +1 -1
- package/dist/motion/uikit/springs.js +12 -42
- package/dist/motion/uikit/switch.d.ts +166 -0
- package/dist/motion/uikit/switch.d.ts.map +1 -0
- package/dist/motion/uikit/switch.js +186 -0
- package/dist/privateAttributes/pressGroupItem.stylex.d.ts +15 -0
- package/dist/privateAttributes/pressGroupItem.stylex.d.ts.map +1 -0
- package/dist/privateAttributes/pressGroupItem.stylex.js +23 -0
- package/dist/privateAttributes/pressHoldsDrag.stylex.d.ts +18 -0
- package/dist/privateAttributes/pressHoldsDrag.stylex.d.ts.map +1 -0
- package/dist/privateAttributes/pressHoldsDrag.stylex.js +28 -0
- package/dist/privateAttributes/segmentTitle.stylex.d.ts +5 -0
- package/dist/privateAttributes/segmentTitle.stylex.d.ts.map +1 -0
- package/dist/privateAttributes/segmentTitle.stylex.js +22 -0
- package/dist/utils/browserClickWait.d.ts +35 -0
- package/dist/utils/browserClickWait.d.ts.map +1 -0
- package/dist/utils/browserClickWait.js +123 -0
- package/dist/utils/clickGuard.d.ts +14 -1
- package/dist/utils/clickGuard.d.ts.map +1 -1
- package/dist/utils/clickGuard.js +46 -1
- package/dist/utils/dateParser.d.ts.map +1 -1
- package/dist/utils/dateParser.js +12 -0
- package/dist/utils/interactionOverlay.stylex.d.ts +3 -2
- package/dist/utils/interactionOverlay.stylex.d.ts.map +1 -1
- package/dist/utils/interactionOverlay.stylex.js +3 -2
- package/dist/utils/pressFeedback.d.ts.map +1 -1
- package/dist/utils/pressFeedback.js +24 -6
- package/locales/en.json +128 -0
- package/locales/pseudo.json +96 -0
- package/package.json +13 -8
- package/src/AlertDialog/AlertDialog.doc.mjs +2 -2
- package/src/AlertDialog/AlertDialog.tsx +37 -5
- package/src/AppShell/useCloseMobileDrawerOnActivate.ts +52 -0
- package/src/Avatar/Avatar.tsx +3 -1
- package/src/BottomSheet/BottomSheet.tsx +95 -10
- package/src/BottomSheet/BottomSheetPanel.tsx +40 -5
- package/src/BottomSheet/bottomSheetStack.ts +8 -4
- package/src/BottomSheet/useSheetGestures.ts +3 -1
- package/src/Breadcrumbs/BreadcrumbItem.tsx +17 -4
- package/src/Button/Button.tsx +66 -7
- package/src/CheckboxList/CheckboxList.doc.mjs +4 -2
- package/src/CheckboxList/CheckboxList.tsx +6 -0
- package/src/CheckboxList/CheckboxListContext.tsx +6 -0
- package/src/CheckboxList/CheckboxListItem.tsx +11 -2
- package/src/ComplexSelector/ComplexSelector.tsx +20 -5
- package/src/DateInput/DateInput.tsx +8 -2
- package/src/DateInput/MonthScroller.tsx +18 -22
- package/src/DateInput/Wheel.tsx +172 -14
- package/src/DateRangeInput/DateRangeInput.doc.mjs +3 -2
- package/src/DateRangeInput/DateRangeInput.tsx +117 -71
- package/src/DateTimeInput/DateTimeInput.tsx +8 -2
- package/src/Dialog/Dialog.tsx +81 -15
- package/src/Drawer/Drawer.tsx +28 -11
- package/src/Drawer/useDrawerDialogPresence.ts +9 -1
- package/src/DropdownMenu/DropdownMenu.tsx +28 -6
- package/src/Field/Field.tsx +2 -2
- package/src/Field/PanelSearchInput.tsx +11 -0
- package/src/HoverCard/HoverCard.tsx +31 -1
- package/src/Icon/Icon.doc.mjs +49 -8
- package/src/Icon/Icon.tsx +15 -7
- package/src/InfoTip/InfoTip.doc.mjs +192 -0
- package/src/InfoTip/InfoTip.tsx +186 -0
- package/src/InfoTip/index.ts +14 -0
- package/src/Layer/layerAnimations.stylex.ts +24 -16
- package/src/Layer/layerClickBoundary.ts +2 -2
- package/src/Layer/useBackdropPress.ts +81 -0
- package/src/Layer/usePressPin.ts +576 -0
- package/src/Layer/useTouchTrigger.ts +56 -6
- package/src/Lightbox/Lightbox.tsx +2 -1
- package/src/MobileNav/MobileNav.tsx +1 -1
- package/src/MultiSelector/hooks.ts +2 -4
- package/src/Outline/Outline.doc.mjs +177 -51
- package/src/Outline/Outline.tsx +5 -57
- package/src/Outline/useOutlineFromMarkdown.doc.mjs +157 -0
- package/src/Outline/useOutlineFromMarkdown.ts +1 -0
- package/src/Outline/useScrollSpy.ts +3 -3
- package/src/Popover/usePopover.tsx +71 -9
- package/src/PowerSearch/PowerSearch.doc.mjs +55 -6
- package/src/PowerSearch/PowerSearch.tsx +798 -324
- package/src/PowerSearch/PowerSearchBottomSheet.tsx +2515 -0
- package/src/PowerSearch/PowerSearchEditPopover.tsx +28 -6
- package/src/PowerSearch/PowerSearchValueEditor.tsx +203 -38
- package/src/PowerSearch/formatFilterValue.ts +18 -1
- package/src/PowerSearch/formatTokenValue.ts +215 -0
- package/src/PowerSearch/powerSearchSheetUtils.ts +224 -0
- package/src/ProgressBar/ProgressBar.doc.mjs +4 -2
- package/src/ProgressBar/ProgressBar.tsx +67 -7
- package/src/RadioList/RadioList.doc.mjs +4 -2
- package/src/RadioList/RadioList.tsx +7 -2
- package/src/RadioList/RadioListItem.tsx +5 -3
- package/src/Resizable/ResizeHandle.tsx +133 -328
- package/src/Resizable/resizeGesture.ts +368 -0
- package/src/SegmentedControl/SegmentedControl.doc.mjs +3 -3
- package/src/SegmentedControl/SegmentedControl.tsx +179 -5
- package/src/SegmentedControl/SegmentedControlContext.ts +6 -0
- package/src/SegmentedControl/SegmentedControlItem.tsx +14 -2
- package/src/SegmentedControl/useSegmentedSelectionMotion.ts +1640 -0
- package/src/SegmentedControl/useSegmentedTouchTracking.ts +308 -0
- package/src/Selector/Selector.tsx +136 -89
- package/src/Selector/optionShape.ts +64 -0
- package/src/Selector/selectableOptionEntries.ts +39 -0
- package/src/Selector/utils.ts +9 -68
- package/src/SideNav/SideNavItem.tsx +3 -7
- package/src/Slider/sliderTouchController.ts +2 -2
- package/src/Switch/Switch.doc.mjs +3 -3
- package/src/Switch/Switch.tsx +412 -86
- package/src/Switch/switchFill.ts +106 -0
- package/src/Switch/switchTouch.ts +186 -0
- package/src/Switch/useSwitchTouch.ts +1051 -0
- package/src/TabList/Tab.tsx +5 -3
- package/src/Table/BaseTable.tsx +46 -12
- package/src/TextInput/TextInput.tsx +11 -10
- package/src/Toast/Toast.tsx +5 -0
- package/src/Token/Token.tsx +15 -4
- package/src/Token/TokenNamingContext.ts +28 -0
- package/src/Tokenizer/Tokenizer.doc.mjs +16 -0
- package/src/Tokenizer/Tokenizer.tsx +93 -88
- package/src/Tokenizer/TokenizerBottomSheet.tsx +219 -93
- package/src/Tokenizer/TokenizerItemRemovableContext.ts +24 -0
- package/src/Tooltip/Tooltip.doc.mjs +123 -39
- package/src/Tooltip/Tooltip.tsx +43 -9
- package/src/Tooltip/useTooltip.doc.mjs +171 -31
- package/src/Tooltip/useTooltip.tsx +137 -22
- package/src/TopNav/TopNavItem.tsx +6 -5
- package/src/TopNav/TopNavMegaMenuItem.tsx +6 -5
- package/src/TopNav/TopNavMenu.tsx +6 -5
- package/src/Typeahead/Typeahead.tsx +29 -15
- package/src/animator/createAnimator.doc.mjs +153 -0
- package/src/animator/createAnimator.ts +324 -0
- package/src/gestures/GestureHost.ts +205 -21
- package/src/gestures/PressTracker.ts +10 -0
- package/src/gestures/types.ts +6 -0
- package/src/gestures/usePressTracker.ts +2 -0
- package/src/gestures/wheelSegmenter.ts +36 -7
- package/src/hooks/actionGroupTracker.ts +32 -61
- package/src/hooks/index.ts +2 -0
- package/src/hooks/pressGroupContext.ts +21 -0
- package/src/hooks/useActionGroupTracking.ts +224 -0
- package/src/hooks/useAnimator.doc.mjs +109 -0
- package/src/hooks/useAnimator.ts +67 -0
- package/src/hooks/useAttachment.ts +56 -14
- package/src/hooks/useFocusTrap.ts +26 -2
- package/src/hooks/useHighlightedOptionScroll.ts +123 -15
- package/src/hooks/useInputStatusIcon.tsx +3 -2
- package/src/hooks/useMediaQuery.doc.mjs +2 -2
- package/src/hooks/useMediaQuery.ts +13 -4
- package/src/hooks/useMenuPress.ts +8 -2
- package/src/hooks/usePager.ts +1446 -0
- package/src/i18n/generated-english/InfoTip/InfoTip.generated.ts +13 -0
- package/src/i18n/generated-english/PowerSearch/PowerSearch.generated.ts +1 -0
- package/src/i18n/generated-english/PowerSearch/PowerSearchBottomSheet.generated.ts +43 -0
- package/src/i18n/generated-english/PowerSearch/PowerSearchValueEditor.generated.ts +6 -0
- package/src/i18n/generated-english/PowerSearch/formatTokenValue.generated.ts +15 -0
- package/src/i18n/generated-english/Tokenizer/TokenizerBottomSheet.generated.ts +7 -1
- package/src/i18n/generated-locales/en.generated.ts +43 -0
- package/src/i18n/generated-locales/pseudo.generated.ts +44 -0
- package/src/index.ts +14 -0
- package/src/internal/SheetConfirmation.tsx +101 -0
- package/src/internal/sheetDraft.ts +80 -0
- package/src/internal/touch-sheet.ts +21 -0
- package/src/internal/useDismissSearchOnTouchDrag.ts +69 -0
- package/src/motion/MEASUREMENTS.md +36 -27
- package/src/motion/README.md +11 -6
- package/src/motion/animator.ts +61 -29
- package/src/motion/paging.ts +37 -14
- package/src/motion/reducedMotion.ts +79 -1
- package/src/motion/roles.ts +20 -1
- package/src/motion/uikit/alert.ts +43 -0
- package/src/motion/uikit/index.ts +6 -5
- package/src/motion/uikit/paging.ts +41 -10
- package/src/motion/uikit/progressBar.ts +31 -11
- package/src/motion/uikit/segmented.ts +74 -0
- package/src/motion/uikit/springs.ts +12 -42
- package/src/motion/uikit/switch.ts +174 -0
- package/src/privateAttributes/pressGroupItem.stylex.ts +23 -0
- package/src/privateAttributes/pressHoldsDrag.stylex.ts +28 -0
- package/src/privateAttributes/segmentTitle.stylex.ts +22 -0
- package/src/utils/browserClickWait.ts +133 -0
- package/src/utils/clickGuard.ts +64 -1
- package/src/utils/dateParser.ts +16 -0
- package/src/utils/interactionOverlay.stylex.ts +3 -2
- package/src/utils/pressFeedback.ts +24 -6
- package/dist/internal/tokenizer-presentation.d.ts +0 -21
- package/dist/internal/tokenizer-presentation.d.ts.map +0 -1
- package/dist/internal/tokenizer-presentation.js +0 -21
- package/src/internal/tokenizer-presentation.ts +0 -25
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
// Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @generated by scripts/generate-i18n-runtime.mjs from packages/core/locales/en.json,
|
|
5
|
+
* holding the English for the catalog keys named in packages/core/src/InfoTip/InfoTip.tsx.
|
|
6
|
+
* Do not edit by hand. Run `pnpm generate:i18n-runtime` instead.
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
const english: Readonly<Record<string, string>> = {
|
|
10
|
+
"@astryx.infoTip.label": "More information"
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
export default english;
|
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
const english: Readonly<Record<string, string>> = {
|
|
10
10
|
"@astryx.powersearch.allFiltersRemoved": "All filters removed",
|
|
11
|
+
"@astryx.powersearch.editableFiltersRemoved": "Editable filters removed",
|
|
11
12
|
"@astryx.powersearch.editor.apply": "Apply",
|
|
12
13
|
"@astryx.powersearch.label": "Search",
|
|
13
14
|
"@astryx.powersearch.placeholder": "Search…",
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
// Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @generated by scripts/generate-i18n-runtime.mjs from packages/core/locales/en.json,
|
|
5
|
+
* holding the English for the catalog keys named in packages/core/src/PowerSearch/PowerSearchBottomSheet.tsx.
|
|
6
|
+
* Do not edit by hand. Run `pnpm generate:i18n-runtime` instead.
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
const english: Readonly<Record<string, string>> = {
|
|
10
|
+
"@astryx.powersearch.allFiltersRemoved": "All filters removed",
|
|
11
|
+
"@astryx.powersearch.editableFiltersRemoved": "Editable filters removed",
|
|
12
|
+
"@astryx.powersearch.editor.apply": "Apply",
|
|
13
|
+
"@astryx.powersearch.editor.cancel": "Cancel",
|
|
14
|
+
"@astryx.powersearch.editor.operator": "Operator",
|
|
15
|
+
"@astryx.powersearch.sheet.addFilter": "Add filter",
|
|
16
|
+
"@astryx.powersearch.sheet.clearAll": "Clear all",
|
|
17
|
+
"@astryx.powersearch.sheet.clearAllCancel": "Keep filters",
|
|
18
|
+
"@astryx.powersearch.sheet.clearAllConfirm": "Clear filters",
|
|
19
|
+
"@astryx.powersearch.sheet.clearAllDescription": "This removes all editable filters from this search.",
|
|
20
|
+
"@astryx.powersearch.sheet.clearAllTitle": "Clear all filters?",
|
|
21
|
+
"@astryx.powersearch.sheet.done": "Done",
|
|
22
|
+
"@astryx.powersearch.sheet.editableFiltersClearedWithCount": "Editable filters removed. {resultCount}",
|
|
23
|
+
"@astryx.powersearch.sheet.fieldOperator": "{field} {operator}",
|
|
24
|
+
"@astryx.powersearch.sheet.filterUnavailable": "This filter is no longer available",
|
|
25
|
+
"@astryx.powersearch.sheet.filtersClearedWithCount": "All filters removed. {resultCount}",
|
|
26
|
+
"@astryx.powersearch.sheet.filtersTitle": "Filters",
|
|
27
|
+
"@astryx.powersearch.sheet.labelValue": "{label} {value}",
|
|
28
|
+
"@astryx.powersearch.sheet.noFilters": "No filters applied",
|
|
29
|
+
"@astryx.powersearch.sheet.noFiltersDescription": "Add a filter to narrow your results and find what you need faster.",
|
|
30
|
+
"@astryx.powersearch.sheet.noMatchingFields": "No filters match your search",
|
|
31
|
+
"@astryx.powersearch.sheet.noResults": "No results found",
|
|
32
|
+
"@astryx.powersearch.sheet.removeFilter": "Remove {field} filter",
|
|
33
|
+
"@astryx.powersearch.sheet.search": "Search",
|
|
34
|
+
"@astryx.powersearch.sheet.searchFields": "Search filters",
|
|
35
|
+
"@astryx.powersearch.sheet.searchFieldsPlaceholder": "Search filters…",
|
|
36
|
+
"@astryx.powersearch.sheet.searchResults": "Search results",
|
|
37
|
+
"@astryx.powersearch.sheet.tryDifferentSearch": "Try a different search.",
|
|
38
|
+
"@astryx.powersearch.sheet.ungroupedFields": "General",
|
|
39
|
+
"@astryx.tokenizer.tokenAdded": "Added {label}",
|
|
40
|
+
"@astryx.tokenizer.tokenRemoved": "Removed {label}"
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
export default english;
|
|
@@ -7,6 +7,12 @@
|
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
9
|
const english: Readonly<Record<string, string>> = {
|
|
10
|
+
"@astryx.powersearch.sheet.relativeDaysAgo": "{count, number} {count, plural, one {day} other {days}} ago",
|
|
11
|
+
"@astryx.powersearch.sheet.relativeDaysFromNow": "{count, number} {count, plural, one {day} other {days}} from now",
|
|
12
|
+
"@astryx.powersearch.sheet.relativeMonthsAgo": "{count, number} {count, plural, one {month} other {months}} ago",
|
|
13
|
+
"@astryx.powersearch.sheet.relativeMonthsFromNow": "{count, number} {count, plural, one {month} other {months}} from now",
|
|
14
|
+
"@astryx.powersearch.sheet.relativeWeeksAgo": "{count, number} {count, plural, one {week} other {weeks}} ago",
|
|
15
|
+
"@astryx.powersearch.sheet.relativeWeeksFromNow": "{count, number} {count, plural, one {week} other {weeks}} from now",
|
|
10
16
|
"@astryx.powersearch.valueEditor.addValuesPlaceholder": "Add values…",
|
|
11
17
|
"@astryx.powersearch.valueEditor.date": "Date",
|
|
12
18
|
"@astryx.powersearch.valueEditor.dateRange": "date range",
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
// Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @generated by scripts/generate-i18n-runtime.mjs from packages/core/locales/en.json,
|
|
5
|
+
* holding the English for the catalog keys named in packages/core/src/PowerSearch/formatTokenValue.ts.
|
|
6
|
+
* Do not edit by hand. Run `pnpm generate:i18n-runtime` instead.
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
const english: Readonly<Record<string, string>> = {
|
|
10
|
+
"@astryx.powersearch.valueEditor.dateRange": "date range",
|
|
11
|
+
"@astryx.powersearch.valueEditor.filtersCount": "{count, number} {count, plural, one {filter} other {filters}}",
|
|
12
|
+
"@astryx.powersearch.valueEditor.itemsCount": "{count, number} {count, plural, one {item} other {items}}"
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
export default english;
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
9
|
const english: Readonly<Record<string, string>> = {
|
|
10
|
+
"@astryx.alertDialog.cancel": "Cancel",
|
|
10
11
|
"@astryx.textInput.clearLabel": "Clear {label}",
|
|
11
12
|
"@astryx.tokenizer.add": "Add",
|
|
12
13
|
"@astryx.tokenizer.addValue": "Add {value}",
|
|
@@ -16,11 +17,16 @@ const english: Readonly<Record<string, string>> = {
|
|
|
16
17
|
"@astryx.tokenizer.clearAllTitle": "Clear all selected items?",
|
|
17
18
|
"@astryx.tokenizer.clearSelection": "Clear selection",
|
|
18
19
|
"@astryx.tokenizer.create": "Create \"{value}\"",
|
|
19
|
-
"@astryx.tokenizer.
|
|
20
|
+
"@astryx.tokenizer.discardChanges": "Discard changes",
|
|
21
|
+
"@astryx.tokenizer.discardChangesDescription": "Your changes to {label} haven't been saved.",
|
|
22
|
+
"@astryx.tokenizer.discardChangesTitle": "Discard changes?",
|
|
23
|
+
"@astryx.tokenizer.keepEditing": "Keep editing",
|
|
20
24
|
"@astryx.tokenizer.noResultsDescription": "Try a different search.",
|
|
21
25
|
"@astryx.tokenizer.nothingToClear": "Nothing selected",
|
|
26
|
+
"@astryx.tokenizer.save": "Save",
|
|
22
27
|
"@astryx.tokenizer.search": "Search {label}",
|
|
23
28
|
"@astryx.tokenizer.searchPlaceholder": "Search…",
|
|
29
|
+
"@astryx.tokenizer.selectionLimit": "Select up to {count, plural, one {# item} other {# items}}",
|
|
24
30
|
"@astryx.tokenizer.tokenAdded": "Added {label}",
|
|
25
31
|
"@astryx.tokenizer.tokenRemoved": "Removed {label}",
|
|
26
32
|
"@astryx.typeahead.emptySearchResults": "No results found",
|
|
@@ -78,6 +78,47 @@ const runtimeCatalog: Readonly<Record<string, string>> = {
|
|
|
78
78
|
'{count, number} {count, plural, one {filter} other {filters}}',
|
|
79
79
|
'@astryx.powersearch.resultCount':
|
|
80
80
|
'{count, number} {count, plural, one {result} other {results}}',
|
|
81
|
+
'@astryx.powersearch.sheet.filtersTitle': 'Filters',
|
|
82
|
+
'@astryx.powersearch.sheet.addFilter': 'Add filter',
|
|
83
|
+
'@astryx.powersearch.sheet.noFilters': 'No filters applied',
|
|
84
|
+
'@astryx.powersearch.sheet.noFiltersDescription':
|
|
85
|
+
'Add a filter to narrow your results and find what you need faster.',
|
|
86
|
+
'@astryx.powersearch.sheet.clearAll': 'Clear all',
|
|
87
|
+
'@astryx.powersearch.sheet.clearAllTitle': 'Clear all filters?',
|
|
88
|
+
'@astryx.powersearch.sheet.clearAllDescription':
|
|
89
|
+
'This removes all editable filters from this search.',
|
|
90
|
+
'@astryx.powersearch.sheet.clearAllConfirm': 'Clear filters',
|
|
91
|
+
'@astryx.powersearch.sheet.clearAllCancel': 'Keep filters',
|
|
92
|
+
'@astryx.powersearch.sheet.done': 'Done',
|
|
93
|
+
'@astryx.powersearch.sheet.search': 'Search',
|
|
94
|
+
'@astryx.powersearch.sheet.searchResults': 'Search results',
|
|
95
|
+
'@astryx.powersearch.sheet.searchFields': 'Search filters',
|
|
96
|
+
'@astryx.powersearch.sheet.searchFieldsPlaceholder': 'Search filters…',
|
|
97
|
+
'@astryx.powersearch.sheet.ungroupedFields': 'General',
|
|
98
|
+
'@astryx.powersearch.sheet.noMatchingFields': 'No filters match your search',
|
|
99
|
+
'@astryx.powersearch.sheet.tryDifferentSearch': 'Try a different search.',
|
|
100
|
+
'@astryx.powersearch.sheet.noResults': 'No results found',
|
|
101
|
+
'@astryx.powersearch.sheet.filterUnavailable':
|
|
102
|
+
'This filter is no longer available',
|
|
103
|
+
'@astryx.powersearch.sheet.removeFilter': 'Remove {field} filter',
|
|
104
|
+
'@astryx.powersearch.sheet.relativeDaysAgo':
|
|
105
|
+
'{count, number} {count, plural, one {day} other {days}} ago',
|
|
106
|
+
'@astryx.powersearch.sheet.relativeDaysFromNow':
|
|
107
|
+
'{count, number} {count, plural, one {day} other {days}} from now',
|
|
108
|
+
'@astryx.powersearch.sheet.relativeWeeksAgo':
|
|
109
|
+
'{count, number} {count, plural, one {week} other {weeks}} ago',
|
|
110
|
+
'@astryx.powersearch.sheet.relativeWeeksFromNow':
|
|
111
|
+
'{count, number} {count, plural, one {week} other {weeks}} from now',
|
|
112
|
+
'@astryx.powersearch.sheet.relativeMonthsAgo':
|
|
113
|
+
'{count, number} {count, plural, one {month} other {months}} ago',
|
|
114
|
+
'@astryx.powersearch.sheet.relativeMonthsFromNow':
|
|
115
|
+
'{count, number} {count, plural, one {month} other {months}} from now',
|
|
116
|
+
'@astryx.powersearch.sheet.fieldOperator': '{field} {operator}',
|
|
117
|
+
'@astryx.powersearch.sheet.labelValue': '{label} {value}',
|
|
118
|
+
'@astryx.powersearch.sheet.filtersClearedWithCount':
|
|
119
|
+
'All filters removed. {resultCount}',
|
|
120
|
+
'@astryx.powersearch.sheet.editableFiltersClearedWithCount':
|
|
121
|
+
'Editable filters removed. {resultCount}',
|
|
81
122
|
'@astryx.alertDialog.cancel': 'Cancel',
|
|
82
123
|
'@astryx.appShell.mobileNavigation': 'Mobile navigation',
|
|
83
124
|
'@astryx.appShell.skipToContent': 'Skip to content',
|
|
@@ -315,6 +356,7 @@ const runtimeCatalog: Readonly<Record<string, string>> = {
|
|
|
315
356
|
'@astryx.powersearch.label': 'Search',
|
|
316
357
|
'@astryx.powersearch.placeholder': 'Search…',
|
|
317
358
|
'@astryx.powersearch.allFiltersRemoved': 'All filters removed',
|
|
359
|
+
'@astryx.powersearch.editableFiltersRemoved': 'Editable filters removed',
|
|
318
360
|
'@astryx.resizable.collapsed': 'Collapsed',
|
|
319
361
|
'@astryx.resizable.handle.label': 'Resize handle',
|
|
320
362
|
'@astryx.selector.placeholder': 'Select…',
|
|
@@ -632,6 +674,7 @@ const runtimeCatalog: Readonly<Record<string, string>> = {
|
|
|
632
674
|
'@astryx.comments.loading': 'Loading comments',
|
|
633
675
|
'@astryx.comments.olderFailed': "Earlier comments couldn't load",
|
|
634
676
|
'@astryx.comments.postFailed': "Your comment couldn't be posted.",
|
|
677
|
+
'@astryx.infoTip.label': 'More information',
|
|
635
678
|
};
|
|
636
679
|
|
|
637
680
|
export default runtimeCatalog;
|
|
@@ -80,6 +80,48 @@ const runtimeCatalog: Readonly<Record<string, string>> = {
|
|
|
80
80
|
'⟦{count, number} {count, plural, one {filter} other {filters}}⟧',
|
|
81
81
|
'@astryx.powersearch.resultCount':
|
|
82
82
|
'⟦{count, number} {count, plural, one {result} other {results}}⟧',
|
|
83
|
+
'@astryx.powersearch.sheet.filtersTitle': '⟦Ƒíłţéřš⟧',
|
|
84
|
+
'@astryx.powersearch.sheet.addFilter': '⟦Àðð ƒíłţéř⟧',
|
|
85
|
+
'@astryx.powersearch.sheet.noFilters': '⟦Ñó ƒíłţéřš àþþłíéð⟧',
|
|
86
|
+
'@astryx.powersearch.sheet.noFiltersDescription':
|
|
87
|
+
'⟦Àðð à ƒíłţéř ţó ñàřřóŵ ýóúř řéšúłţš àñð ƒíñð ŵĥàţ ýóú ñééð ƒàšţéř.⟧',
|
|
88
|
+
'@astryx.powersearch.sheet.clearAll': '⟦Çłéàř àłł⟧',
|
|
89
|
+
'@astryx.powersearch.sheet.clearAllTitle': '⟦Çłéàř àłł ƒíłţéřš?⟧',
|
|
90
|
+
'@astryx.powersearch.sheet.clearAllDescription':
|
|
91
|
+
'⟦Ţĥíš řéɱóṽéš àłł éðíţàƀłé ƒíłţéřš ƒřóɱ ţĥíš šéàřçĥ.⟧',
|
|
92
|
+
'@astryx.powersearch.sheet.clearAllConfirm': '⟦Çłéàř ƒíłţéřš⟧',
|
|
93
|
+
'@astryx.powersearch.sheet.clearAllCancel': '⟦Ķééþ ƒíłţéřš⟧',
|
|
94
|
+
'@astryx.powersearch.sheet.done': '⟦Ðóñé⟧',
|
|
95
|
+
'@astryx.powersearch.sheet.search': '⟦Šéàřçĥ⟧',
|
|
96
|
+
'@astryx.powersearch.sheet.searchResults': '⟦Šéàřçĥ řéšúłţš⟧',
|
|
97
|
+
'@astryx.powersearch.sheet.searchFields': '⟦Šéàřçĥ ƒíłţéřš⟧',
|
|
98
|
+
'@astryx.powersearch.sheet.searchFieldsPlaceholder': '⟦Šéàřçĥ ƒíłţéřš…⟧',
|
|
99
|
+
'@astryx.powersearch.sheet.ungroupedFields': '⟦Ĝéñéřàł⟧',
|
|
100
|
+
'@astryx.powersearch.sheet.noMatchingFields':
|
|
101
|
+
'⟦Ñó ƒíłţéřš ɱàţçĥ ýóúř šéàřçĥ⟧',
|
|
102
|
+
'@astryx.powersearch.sheet.tryDifferentSearch': '⟦Ţřý à ð탃éřéñţ šéàřçĥ.⟧',
|
|
103
|
+
'@astryx.powersearch.sheet.noResults': '⟦Ñó řéšúłţš ƒóúñð⟧',
|
|
104
|
+
'@astryx.powersearch.sheet.filterUnavailable':
|
|
105
|
+
'⟦Ţĥíš ƒíłţéř íš ñó łóñĝéř àṽàíłàƀłé⟧',
|
|
106
|
+
'@astryx.powersearch.sheet.removeFilter': '⟦Řéɱóṽé {field} ƒíłţéř⟧',
|
|
107
|
+
'@astryx.powersearch.sheet.relativeDaysAgo':
|
|
108
|
+
'⟦{count, number} {count, plural, one {day} other {days}} àĝó⟧',
|
|
109
|
+
'@astryx.powersearch.sheet.relativeDaysFromNow':
|
|
110
|
+
'⟦{count, number} {count, plural, one {day} other {days}} ƒřóɱ ñóŵ⟧',
|
|
111
|
+
'@astryx.powersearch.sheet.relativeWeeksAgo':
|
|
112
|
+
'⟦{count, number} {count, plural, one {week} other {weeks}} àĝó⟧',
|
|
113
|
+
'@astryx.powersearch.sheet.relativeWeeksFromNow':
|
|
114
|
+
'⟦{count, number} {count, plural, one {week} other {weeks}} ƒřóɱ ñóŵ⟧',
|
|
115
|
+
'@astryx.powersearch.sheet.relativeMonthsAgo':
|
|
116
|
+
'⟦{count, number} {count, plural, one {month} other {months}} àĝó⟧',
|
|
117
|
+
'@astryx.powersearch.sheet.relativeMonthsFromNow':
|
|
118
|
+
'⟦{count, number} {count, plural, one {month} other {months}} ƒřóɱ ñóŵ⟧',
|
|
119
|
+
'@astryx.powersearch.sheet.fieldOperator': '⟦{field} {operator}⟧',
|
|
120
|
+
'@astryx.powersearch.sheet.labelValue': '⟦{label} {value}⟧',
|
|
121
|
+
'@astryx.powersearch.sheet.filtersClearedWithCount':
|
|
122
|
+
'⟦Àłł ƒíłţéřš řéɱóṽéð. {resultCount}⟧',
|
|
123
|
+
'@astryx.powersearch.sheet.editableFiltersClearedWithCount':
|
|
124
|
+
'⟦Éðíţàƀłé ƒíłţéřš řéɱóṽéð. {resultCount}⟧',
|
|
83
125
|
'@astryx.alertDialog.cancel': '⟦Çàñçéł⟧',
|
|
84
126
|
'@astryx.appShell.mobileNavigation': '⟦Ṁóƀíłé ñàṽíĝàţíóñ⟧',
|
|
85
127
|
'@astryx.appShell.skipToContent': '⟦Šķíþ ţó çóñţéñţ⟧',
|
|
@@ -322,6 +364,7 @@ const runtimeCatalog: Readonly<Record<string, string>> = {
|
|
|
322
364
|
'@astryx.powersearch.label': '⟦Šéàřçĥ⟧',
|
|
323
365
|
'@astryx.powersearch.placeholder': '⟦Šéàřçĥ…⟧',
|
|
324
366
|
'@astryx.powersearch.allFiltersRemoved': '⟦Àłł ƒíłţéřš řéɱóṽéð⟧',
|
|
367
|
+
'@astryx.powersearch.editableFiltersRemoved': '⟦Éðíţàƀłé ƒíłţéřš řéɱóṽéð⟧',
|
|
325
368
|
'@astryx.resizable.collapsed': '⟦Çółłàþšéð⟧',
|
|
326
369
|
'@astryx.resizable.handle.label': '⟦Řéšížé ĥàñðłé⟧',
|
|
327
370
|
'@astryx.selector.placeholder': '⟦Šéłéçţ…⟧',
|
|
@@ -643,6 +686,7 @@ const runtimeCatalog: Readonly<Record<string, string>> = {
|
|
|
643
686
|
'@astryx.comments.loading': '⟦Łóàðíñĝ çóɱɱéñţš⟧',
|
|
644
687
|
'@astryx.comments.olderFailed': "⟦Éàřłíéř çóɱɱéñţš çóúłðñ'ţ łóàð⟧",
|
|
645
688
|
'@astryx.comments.postFailed': "⟦Ýóúř çóɱɱéñţ çóúłðñ'ţ ƀé þóšţéð.⟧",
|
|
689
|
+
'@astryx.infoTip.label': '⟦Ṁóřé íñƒóřɱàţíóñ⟧',
|
|
646
690
|
};
|
|
647
691
|
|
|
648
692
|
export default runtimeCatalog;
|
package/src/index.ts
CHANGED
|
@@ -71,6 +71,7 @@ export * from './SelectableCard';
|
|
|
71
71
|
export * from './Selector';
|
|
72
72
|
export * from './MultiSelector';
|
|
73
73
|
export * from './Icon';
|
|
74
|
+
export * from './InfoTip';
|
|
74
75
|
export * from './Indicator';
|
|
75
76
|
export * from './InputGroup';
|
|
76
77
|
export * from './Item';
|
|
@@ -172,6 +173,19 @@ export * from './Outline';
|
|
|
172
173
|
// Overflow list
|
|
173
174
|
export * from './OverflowList';
|
|
174
175
|
|
|
176
|
+
// Animating one element: from the package root only, since one API has one
|
|
177
|
+
// entry. Its hook ships from './hooks'.
|
|
178
|
+
export {
|
|
179
|
+
createAnimator,
|
|
180
|
+
type Animator,
|
|
181
|
+
type AnimatorAnimateOptions,
|
|
182
|
+
type AnimatorChannel,
|
|
183
|
+
type AnimatorDecayVelocity,
|
|
184
|
+
type AnimatorHandle,
|
|
185
|
+
type AnimatorSnapshot,
|
|
186
|
+
type AnimatorValues,
|
|
187
|
+
} from './animator/createAnimator';
|
|
188
|
+
|
|
175
189
|
// Hooks
|
|
176
190
|
export * from './hooks';
|
|
177
191
|
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
// Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
2
|
+
|
|
3
|
+
'use client';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* @file SheetConfirmation.tsx
|
|
7
|
+
* @input Dialog, Layout, Heading, Text, Button; caller-owned copy
|
|
8
|
+
* @output SheetConfirmation — the confirmation a touch sheet opens over
|
|
9
|
+
* itself for Clear all and for discarding a changed draft
|
|
10
|
+
* @position Core-internal, shared by the Tokenizer sheet and the PowerSearch
|
|
11
|
+
* sheets; not a public export
|
|
12
|
+
*
|
|
13
|
+
* AlertDialog fixes its purpose to form and its safe action to ghost. A touch
|
|
14
|
+
* sheet's confirmation allows scrim dismissal. Its two full-width large
|
|
15
|
+
* actions are stacked and separated: the destructive action first in reading
|
|
16
|
+
* order, the safe action focused first. The alert-dialog theme target stays.
|
|
17
|
+
*/
|
|
18
|
+
|
|
19
|
+
import {useId} from 'react';
|
|
20
|
+
import * as stylex from '@stylexjs/stylex';
|
|
21
|
+
import {Button} from '../Button/Button';
|
|
22
|
+
import {Dialog} from '../Dialog/Dialog';
|
|
23
|
+
import {Heading} from '../Heading/Heading';
|
|
24
|
+
import {Layout} from '../Layout/Layout';
|
|
25
|
+
import {LayoutContent} from '../Layout/LayoutContent';
|
|
26
|
+
import {LayoutFooter} from '../Layout/LayoutFooter';
|
|
27
|
+
import {Stack} from '../Stack/Stack';
|
|
28
|
+
import {Text} from '../Text/Text';
|
|
29
|
+
import {themeProps} from '../utils/themeProps';
|
|
30
|
+
|
|
31
|
+
export interface SheetConfirmationProps {
|
|
32
|
+
isOpen: boolean;
|
|
33
|
+
onOpenChange: (isOpen: boolean) => void;
|
|
34
|
+
title: string;
|
|
35
|
+
description: string;
|
|
36
|
+
cancelLabel: string;
|
|
37
|
+
actionLabel: string;
|
|
38
|
+
onAction: () => void;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
const styles = stylex.create({
|
|
42
|
+
action: {width: '100%'},
|
|
43
|
+
});
|
|
44
|
+
|
|
45
|
+
export function SheetConfirmation({
|
|
46
|
+
isOpen,
|
|
47
|
+
onOpenChange,
|
|
48
|
+
title,
|
|
49
|
+
description,
|
|
50
|
+
cancelLabel,
|
|
51
|
+
actionLabel,
|
|
52
|
+
onAction,
|
|
53
|
+
}: SheetConfirmationProps) {
|
|
54
|
+
const titleId = useId();
|
|
55
|
+
const descriptionId = useId();
|
|
56
|
+
return (
|
|
57
|
+
<Dialog
|
|
58
|
+
{...themeProps('alert-dialog')}
|
|
59
|
+
isOpen={isOpen}
|
|
60
|
+
onOpenChange={onOpenChange}
|
|
61
|
+
purpose="info"
|
|
62
|
+
role="alertdialog"
|
|
63
|
+
aria-labelledby={titleId}
|
|
64
|
+
aria-describedby={descriptionId}
|
|
65
|
+
width={400}>
|
|
66
|
+
<Layout
|
|
67
|
+
content={
|
|
68
|
+
<LayoutContent>
|
|
69
|
+
<Heading level={2} id={titleId}>
|
|
70
|
+
{title}
|
|
71
|
+
</Heading>
|
|
72
|
+
<Text type="body" color="secondary" id={descriptionId}>
|
|
73
|
+
{description}
|
|
74
|
+
</Text>
|
|
75
|
+
</LayoutContent>
|
|
76
|
+
}
|
|
77
|
+
footer={
|
|
78
|
+
<LayoutFooter>
|
|
79
|
+
<Stack direction="vertical" gap={4} hAlign="stretch">
|
|
80
|
+
<Button
|
|
81
|
+
label={actionLabel}
|
|
82
|
+
variant="destructive"
|
|
83
|
+
size="lg"
|
|
84
|
+
onClick={onAction}
|
|
85
|
+
xstyle={styles.action}
|
|
86
|
+
/>
|
|
87
|
+
<Button
|
|
88
|
+
label={cancelLabel}
|
|
89
|
+
variant="secondary"
|
|
90
|
+
size="lg"
|
|
91
|
+
onClick={() => onOpenChange(false)}
|
|
92
|
+
data-autofocus
|
|
93
|
+
xstyle={styles.action}
|
|
94
|
+
/>
|
|
95
|
+
</Stack>
|
|
96
|
+
</LayoutFooter>
|
|
97
|
+
}
|
|
98
|
+
/>
|
|
99
|
+
</Dialog>
|
|
100
|
+
);
|
|
101
|
+
}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
// Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
2
|
+
/**
|
|
3
|
+
* @file sheetDraft.ts
|
|
4
|
+
* @input A sheet's selection at open, its draft, and the last edit made
|
|
5
|
+
* @output SheetDraftChange, hasSameSelection, nameSheetDraftChange — the
|
|
6
|
+
* rules a touch sheet's Save and dismissal share
|
|
7
|
+
* @position Core-internal, shared by the Tokenizer sheet and the Lab sheets
|
|
8
|
+
* through `internal/touch-sheet`; not a public export
|
|
9
|
+
*
|
|
10
|
+
* A touch sheet edits a draft and reports it once, on Save, with one change:
|
|
11
|
+
* the last edit that still holds, else the nearest net add or remove. A
|
|
12
|
+
* dismissal asks before discarding only while the draft differs from the
|
|
13
|
+
* selection at open, as a set: a row unchecked and checked again is no change.
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
interface SheetDraftItem {
|
|
17
|
+
id: string | number;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
/** An edit of a sheet's draft, and the shape Save reports. */
|
|
21
|
+
export type SheetDraftChange<T> = {
|
|
22
|
+
item: T;
|
|
23
|
+
type: 'add' | 'create' | 'remove';
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
/** Whether two selections hold the same items, in any order. */
|
|
27
|
+
export function hasSameSelection<T extends SheetDraftItem>(
|
|
28
|
+
a: ReadonlyArray<T>,
|
|
29
|
+
b: ReadonlyArray<T>,
|
|
30
|
+
): boolean {
|
|
31
|
+
if (a.length !== b.length) {
|
|
32
|
+
return false;
|
|
33
|
+
}
|
|
34
|
+
const ids = new Set(a.map(item => item.id));
|
|
35
|
+
return b.every(item => ids.has(item.id));
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* The change Save reports for a draft that differs from the selection at
|
|
40
|
+
* open, or `null` when nothing differs. The last edit names it when it still
|
|
41
|
+
* holds: its item is in the draft and was not selected at open, or was
|
|
42
|
+
* selected at open and is gone. Otherwise, after a removal, a `remove` names
|
|
43
|
+
* an item that is gone; otherwise an `add` (`create` when the last edit
|
|
44
|
+
* created that item) names an item that is new; otherwise a `remove` names
|
|
45
|
+
* an item that is gone.
|
|
46
|
+
*/
|
|
47
|
+
export function nameSheetDraftChange<T extends SheetDraftItem>(
|
|
48
|
+
valueAtOpen: ReadonlyArray<T>,
|
|
49
|
+
draftValue: ReadonlyArray<T>,
|
|
50
|
+
lastDraftChange: SheetDraftChange<T> | null,
|
|
51
|
+
): SheetDraftChange<T> | null {
|
|
52
|
+
const wasSelected = (id: T['id']) => valueAtOpen.some(item => item.id === id);
|
|
53
|
+
const isSelected = (id: T['id']) => draftValue.some(item => item.id === id);
|
|
54
|
+
const added = draftValue.find(item => !wasSelected(item.id));
|
|
55
|
+
const removed = valueAtOpen.find(item => !isSelected(item.id));
|
|
56
|
+
const lastChangeIsNet =
|
|
57
|
+
lastDraftChange != null &&
|
|
58
|
+
(lastDraftChange.type === 'remove'
|
|
59
|
+
? wasSelected(lastDraftChange.item.id) &&
|
|
60
|
+
!isSelected(lastDraftChange.item.id)
|
|
61
|
+
: isSelected(lastDraftChange.item.id) &&
|
|
62
|
+
!wasSelected(lastDraftChange.item.id));
|
|
63
|
+
if (lastChangeIsNet) {
|
|
64
|
+
return lastDraftChange;
|
|
65
|
+
}
|
|
66
|
+
if (lastDraftChange?.type === 'remove' && removed != null) {
|
|
67
|
+
return {item: removed, type: 'remove'};
|
|
68
|
+
}
|
|
69
|
+
if (added != null) {
|
|
70
|
+
const type: SheetDraftChange<T>['type'] =
|
|
71
|
+
lastDraftChange?.item.id === added.id && lastDraftChange.type === 'create'
|
|
72
|
+
? 'create'
|
|
73
|
+
: 'add';
|
|
74
|
+
return {item: added, type};
|
|
75
|
+
}
|
|
76
|
+
if (removed != null) {
|
|
77
|
+
return {item: removed, type: 'remove'};
|
|
78
|
+
}
|
|
79
|
+
return null;
|
|
80
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
// Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
2
|
+
/**
|
|
3
|
+
* @file touch-sheet.ts
|
|
4
|
+
* @input The touch sheets' shared confirmation, search-drag dismissal and
|
|
5
|
+
* draft rules
|
|
6
|
+
* @output `@astryxdesign/core/internal/touch-sheet`: SheetConfirmation,
|
|
7
|
+
* useDismissSearchOnTouchDrag, hasSameSelection and nameSheetDraftChange,
|
|
8
|
+
* re-exported by name for Lab's sheets
|
|
9
|
+
* @position An internal entry reserved for Astryx's own packages:
|
|
10
|
+
* undocumented, outside the public API and its compatibility promise,
|
|
11
|
+
* versioned in lockstep with Core, and allowed only in Core and Lab by the
|
|
12
|
+
* `@astryx/no-core-internal-import` lint rule. Core components import the
|
|
13
|
+
* same modules by relative path. Named re-exports only.
|
|
14
|
+
*
|
|
15
|
+
* SYNC: When modified, update scripts/sync-exports.js.
|
|
16
|
+
*/
|
|
17
|
+
export {SheetConfirmation} from './SheetConfirmation';
|
|
18
|
+
export type {SheetConfirmationProps} from './SheetConfirmation';
|
|
19
|
+
export {useDismissSearchOnTouchDrag} from './useDismissSearchOnTouchDrag';
|
|
20
|
+
export {hasSameSelection, nameSheetDraftChange} from './sheetDraft';
|
|
21
|
+
export type {SheetDraftChange} from './sheetDraft';
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
// Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
2
|
+
|
|
3
|
+
'use client';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* @file useDismissSearchOnTouchDrag.ts
|
|
7
|
+
* @input Caller-owned search inputs, a focus target, and touch events from a
|
|
8
|
+
* separate results list
|
|
9
|
+
* @output useDismissSearchOnTouchDrag — touch handlers for the results list
|
|
10
|
+
* @position Core-internal, shared by the touch sheets; not a public export
|
|
11
|
+
*
|
|
12
|
+
* A direct vertical touch drag on the results moves focus off a focused
|
|
13
|
+
* search input. The on-screen keyboard then leaves and the rows come into
|
|
14
|
+
* view; the query stays. Focus goes to the caller's target (the sheet's
|
|
15
|
+
* panel), never to the page body behind an open modal. Scroll events are not
|
|
16
|
+
* observed: filtering can clamp scrollTop and fire scroll while someone is
|
|
17
|
+
* typing. Small moves, taps and multi-touch gestures leave focus alone.
|
|
18
|
+
*/
|
|
19
|
+
|
|
20
|
+
import {useRef, type TouchEvent} from 'react';
|
|
21
|
+
|
|
22
|
+
const DRAG_THRESHOLD_PX = 8;
|
|
23
|
+
|
|
24
|
+
type SearchInput = HTMLInputElement | null | undefined;
|
|
25
|
+
|
|
26
|
+
export function useDismissSearchOnTouchDrag(
|
|
27
|
+
getSearchInputs: () => ReadonlyArray<SearchInput>,
|
|
28
|
+
getFocusTarget?: () => HTMLElement | null | undefined,
|
|
29
|
+
) {
|
|
30
|
+
const startYRef = useRef<number | null>(null);
|
|
31
|
+
const reset = () => {
|
|
32
|
+
startYRef.current = null;
|
|
33
|
+
};
|
|
34
|
+
|
|
35
|
+
return {
|
|
36
|
+
onTouchStart: (event: TouchEvent<HTMLElement>) => {
|
|
37
|
+
startYRef.current =
|
|
38
|
+
event.touches.length === 1 ? event.touches[0].clientY : null;
|
|
39
|
+
},
|
|
40
|
+
onTouchMove: (event: TouchEvent<HTMLElement>) => {
|
|
41
|
+
if (event.touches.length !== 1) {
|
|
42
|
+
reset();
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
const startY = startYRef.current;
|
|
46
|
+
if (
|
|
47
|
+
startY == null ||
|
|
48
|
+
Math.abs(event.touches[0].clientY - startY) < DRAG_THRESHOLD_PX
|
|
49
|
+
) {
|
|
50
|
+
return;
|
|
51
|
+
}
|
|
52
|
+
reset();
|
|
53
|
+
const focusedSearch = getSearchInputs().find(
|
|
54
|
+
input => input != null && input === document.activeElement,
|
|
55
|
+
);
|
|
56
|
+
if (focusedSearch == null) {
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
59
|
+
const target = getFocusTarget?.();
|
|
60
|
+
if (target != null) {
|
|
61
|
+
target.focus({preventScroll: true});
|
|
62
|
+
} else {
|
|
63
|
+
focusedSearch.blur();
|
|
64
|
+
}
|
|
65
|
+
},
|
|
66
|
+
onTouchEnd: reset,
|
|
67
|
+
onTouchCancel: reset,
|
|
68
|
+
};
|
|
69
|
+
}
|