@astryxdesign/core 0.7.5 → 0.7.6-canary.0d71e8d

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.
Files changed (912) hide show
  1. package/dist/AlertDialog/AlertDialog.d.ts +1 -1
  2. package/dist/AlertDialog/AlertDialog.d.ts.map +1 -1
  3. package/dist/AlertDialog/AlertDialog.js +5 -5
  4. package/dist/AppShell/AppShell.d.ts.map +1 -1
  5. package/dist/AppShell/AppShell.js +183 -5
  6. package/dist/AppShell/observeMainOverflow.d.ts +9 -0
  7. package/dist/AppShell/observeMainOverflow.d.ts.map +1 -0
  8. package/dist/AppShell/observeMainOverflow.js +125 -0
  9. package/dist/Avatar/Avatar.d.ts.map +1 -1
  10. package/dist/Avatar/Avatar.js +12 -3
  11. package/dist/Badge/Badge.d.ts.map +1 -1
  12. package/dist/Badge/Badge.js +7 -1
  13. package/dist/BottomSheet/BottomSheet.js +1 -1
  14. package/dist/BottomSheet/BottomSheetPanel.d.ts.map +1 -1
  15. package/dist/BottomSheet/BottomSheetPanel.js +2 -1
  16. package/dist/BottomSheet/useSheetGestures.d.ts +12 -0
  17. package/dist/BottomSheet/useSheetGestures.d.ts.map +1 -1
  18. package/dist/BottomSheet/useSheetGestures.js +30 -3
  19. package/dist/Button/Button.js +4 -4
  20. package/dist/Carousel/Carousel.d.ts +3 -1
  21. package/dist/Carousel/Carousel.d.ts.map +1 -1
  22. package/dist/Carousel/Carousel.js +12 -3
  23. package/dist/CheckboxInput/CheckboxInput.d.ts.map +1 -1
  24. package/dist/CheckboxInput/CheckboxInput.js +6 -5
  25. package/dist/ClickableCard/ClickableCard.d.ts.map +1 -1
  26. package/dist/ClickableCard/ClickableCard.js +37 -4
  27. package/dist/ComplexSelector/ComplexSelector.d.ts.map +1 -1
  28. package/dist/ComplexSelector/ComplexSelector.js +41 -4
  29. package/dist/DateInput/DateInput.d.ts.map +1 -1
  30. package/dist/DateInput/DateInput.js +12 -4
  31. package/dist/DateInput/MonthScroller.d.ts.map +1 -1
  32. package/dist/DateInput/MonthScroller.js +101 -15
  33. package/dist/DateInput/TouchDateField.d.ts.map +1 -1
  34. package/dist/DateInput/TouchDateField.js +8 -3
  35. package/dist/DateInput/Wheel.d.ts.map +1 -1
  36. package/dist/DateInput/Wheel.js +11 -7
  37. package/dist/DateInput/usePointerDragScroll.d.ts +10 -1
  38. package/dist/DateInput/usePointerDragScroll.d.ts.map +1 -1
  39. package/dist/DateInput/usePointerDragScroll.js +25 -9
  40. package/dist/DateInput/useScrollSettle.d.ts +3 -1
  41. package/dist/DateInput/useScrollSettle.d.ts.map +1 -1
  42. package/dist/DateInput/useScrollSettle.js +37 -8
  43. package/dist/DateRangeInput/DateRangeInput.d.ts.map +1 -1
  44. package/dist/DateRangeInput/DateRangeInput.js +1 -1
  45. package/dist/DateTimeInput/DateTimeInput.d.ts +5 -2
  46. package/dist/DateTimeInput/DateTimeInput.d.ts.map +1 -1
  47. package/dist/DateTimeInput/DateTimeInput.js +23 -12
  48. package/dist/DateTimeInput/NativeTimeSegment.d.ts.map +1 -1
  49. package/dist/DateTimeInput/NativeTimeSegment.js +5 -4
  50. package/dist/DateTimeInput/TouchDateTimeField.d.ts.map +1 -1
  51. package/dist/DateTimeInput/TouchDateTimeField.js +4 -3
  52. package/dist/Dialog/Dialog.d.ts.map +1 -1
  53. package/dist/Dialog/Dialog.js +34 -9
  54. package/dist/Dialog/DialogHeader.d.ts.map +1 -1
  55. package/dist/Dialog/DialogHeader.js +5 -4
  56. package/dist/Divider/Divider.d.ts.map +1 -1
  57. package/dist/Divider/Divider.js +2 -1
  58. package/dist/Drawer/Drawer.d.ts +1 -0
  59. package/dist/Drawer/Drawer.d.ts.map +1 -1
  60. package/dist/Drawer/Drawer.js +7 -2
  61. package/dist/DropdownMenu/DropdownMenu.d.ts.map +1 -1
  62. package/dist/DropdownMenu/DropdownMenu.js +35 -22
  63. package/dist/DropdownMenu/MenuBottomSheetActionList.d.ts.map +1 -1
  64. package/dist/DropdownMenu/MenuBottomSheetActionList.js +6 -5
  65. package/dist/DropdownMenu/lazyMenuBottomSheet.d.ts +20 -2
  66. package/dist/DropdownMenu/lazyMenuBottomSheet.d.ts.map +1 -1
  67. package/dist/DropdownMenu/lazyMenuBottomSheet.js +31 -3
  68. package/dist/DropdownMenu/renderDropdownItems.d.ts.map +1 -1
  69. package/dist/DropdownMenu/renderDropdownItems.js +21 -16
  70. package/dist/EmptyState/EmptyState.d.ts.map +1 -1
  71. package/dist/EmptyState/EmptyState.js +2 -1
  72. package/dist/Field/FieldLabel.d.ts +1 -1
  73. package/dist/Field/FieldLabel.d.ts.map +1 -1
  74. package/dist/Field/FieldLabel.js +4 -4
  75. package/dist/Field/InputClearButton.js +3 -3
  76. package/dist/Field/PanelSearchInput.js +2 -2
  77. package/dist/FieldStatus/FieldStatus.d.ts +3 -0
  78. package/dist/FieldStatus/FieldStatus.d.ts.map +1 -1
  79. package/dist/FieldStatus/FieldStatus.js +3 -2
  80. package/dist/FileInput/FileInput.d.ts +3 -0
  81. package/dist/FileInput/FileInput.d.ts.map +1 -1
  82. package/dist/FileInput/FileInput.js +34 -13
  83. package/dist/Heading/Heading.js +1 -1
  84. package/dist/Icon/Icon.js +1 -1
  85. package/dist/Indicator/CheckIndicator.d.ts.map +1 -1
  86. package/dist/Indicator/CheckIndicator.js +2 -1
  87. package/dist/Indicator/CheckboxIndicator.d.ts.map +1 -1
  88. package/dist/Indicator/CheckboxIndicator.js +3 -1
  89. package/dist/Indicator/RadioIndicator.d.ts.map +1 -1
  90. package/dist/Indicator/RadioIndicator.js +3 -1
  91. package/dist/Item/Item.d.ts.map +1 -1
  92. package/dist/Item/Item.js +21 -7
  93. package/dist/Item/ItemSwipeLayer.js +1 -1
  94. package/dist/Layer/popoverOperations.d.ts +27 -0
  95. package/dist/Layer/popoverOperations.d.ts.map +1 -0
  96. package/dist/Layer/popoverOperations.js +159 -0
  97. package/dist/Layer/useLayer.d.ts +1 -1
  98. package/dist/Layer/useLayer.d.ts.map +1 -1
  99. package/dist/Layer/useLayer.js +120 -65
  100. package/dist/Layout/Layout.js +1 -1
  101. package/dist/Layout/LayoutContent.js +1 -1
  102. package/dist/Layout/LayoutFooter.js +1 -1
  103. package/dist/Layout/LayoutHeader.js +1 -1
  104. package/dist/Lightbox/Lightbox.d.ts.map +1 -1
  105. package/dist/Lightbox/Lightbox.js +5 -0
  106. package/dist/Lightbox/LightboxViewport.a11y.browser.spec.js +5 -4
  107. package/dist/Link/Link.d.ts.map +1 -1
  108. package/dist/Link/Link.js +8 -3
  109. package/dist/List/List.js +1 -1
  110. package/dist/List/ListItem.js +3 -3
  111. package/dist/Markdown/plugins/headingLinks.a11y.chromium.spec.js +1 -1
  112. package/dist/MobileNav/MobileNav.d.ts.map +1 -1
  113. package/dist/MobileNav/MobileNav.js +7 -2
  114. package/dist/MultiSelector/CreateRow.a11y.chromium.spec.js +7 -6
  115. package/dist/MultiSelector/MultiSelector.d.ts +1 -1
  116. package/dist/MultiSelector/MultiSelector.d.ts.map +1 -1
  117. package/dist/MultiSelector/MultiSelector.js +26 -10
  118. package/dist/NavMenu/NavHeadingMenuItem.d.ts.map +1 -1
  119. package/dist/NavMenu/NavHeadingMenuItem.js +5 -29
  120. package/dist/NumberInput/NumberInput.d.ts +3 -1
  121. package/dist/NumberInput/NumberInput.d.ts.map +1 -1
  122. package/dist/NumberInput/NumberInput.js +26 -5
  123. package/dist/NumberInput/numberParser.d.ts +3 -0
  124. package/dist/NumberInput/numberParser.d.ts.map +1 -1
  125. package/dist/NumberInput/numberParser.js +7 -44
  126. package/dist/Outline/Outline.d.ts.map +1 -1
  127. package/dist/Outline/Outline.js +27 -0
  128. package/dist/Popover/Popover.d.ts.map +1 -1
  129. package/dist/Popover/Popover.js +32 -12
  130. package/dist/Popover/usePopover.d.ts.map +1 -1
  131. package/dist/Popover/usePopover.js +10 -3
  132. package/dist/PowerSearch/PowerSearch.d.ts.map +1 -1
  133. package/dist/PowerSearch/PowerSearch.js +37 -30
  134. package/dist/ProgressBar/ProgressBar.d.ts.map +1 -1
  135. package/dist/ProgressBar/ProgressBar.js +16 -12
  136. package/dist/RadioList/RadioListItem.d.ts.map +1 -1
  137. package/dist/RadioList/RadioListItem.js +11 -3
  138. package/dist/Resizable/useResizable.d.ts.map +1 -1
  139. package/dist/Resizable/useResizable.js +28 -2
  140. package/dist/SegmentedControl/SegmentedControlItem.d.ts.map +1 -1
  141. package/dist/SegmentedControl/SegmentedControlItem.js +4 -1
  142. package/dist/Selector/useSelectorPresentation.d.ts +8 -1
  143. package/dist/Selector/useSelectorPresentation.d.ts.map +1 -1
  144. package/dist/Selector/useSelectorPresentation.js +20 -4
  145. package/dist/SideNav/SideNavItem.d.ts +2 -2
  146. package/dist/SideNav/SideNavItem.d.ts.map +1 -1
  147. package/dist/SideNav/SideNavItem.js +18 -7
  148. package/dist/Skeleton/Skeleton.d.ts.map +1 -1
  149. package/dist/Skeleton/Skeleton.js +1 -1
  150. package/dist/Slider/Slider.d.ts.map +1 -1
  151. package/dist/Slider/Slider.js +10 -2
  152. package/dist/Spinner/Spinner.d.ts.map +1 -1
  153. package/dist/Spinner/Spinner.js +3 -3
  154. package/dist/Stack/Stack.js +1 -1
  155. package/dist/Stack/StackItem.js +1 -1
  156. package/dist/Stepper/Step.d.ts.map +1 -1
  157. package/dist/Stepper/Step.js +26 -6
  158. package/dist/Switch/Switch.d.ts.map +1 -1
  159. package/dist/Switch/Switch.js +10 -3
  160. package/dist/TabList/TabList.d.ts.map +1 -1
  161. package/dist/TabList/TabList.js +16 -1
  162. package/dist/Table/Table.d.ts.map +1 -1
  163. package/dist/Table/Table.js +36 -10
  164. package/dist/Table/plugins/columnResize/useTableColumnResize.d.ts.map +1 -1
  165. package/dist/Table/plugins/columnResize/useTableColumnResize.js +9 -1
  166. package/dist/Table/plugins/sortable/useTableSortable.d.ts.map +1 -1
  167. package/dist/Table/plugins/sortable/useTableSortable.js +46 -58
  168. package/dist/Text/Text.js +1 -1
  169. package/dist/Text/useTruncation.d.ts.map +1 -1
  170. package/dist/Text/useTruncation.js +23 -5
  171. package/dist/TextArea/TextArea.d.ts +1 -1
  172. package/dist/TextArea/TextArea.d.ts.map +1 -1
  173. package/dist/TextArea/TextArea.js +13 -2
  174. package/dist/TextInput/TextInput.d.ts.map +1 -1
  175. package/dist/TextInput/TextInput.js +3 -3
  176. package/dist/TimeInput/TimeInput.d.ts +6 -2
  177. package/dist/TimeInput/TimeInput.d.ts.map +1 -1
  178. package/dist/TimeInput/TimeInput.js +21 -14
  179. package/dist/TimeInput/TouchTimeField.d.ts.map +1 -1
  180. package/dist/TimeInput/TouchTimeField.js +5 -4
  181. package/dist/Timestamp/Timestamp.d.ts.map +1 -1
  182. package/dist/Timestamp/Timestamp.js +2 -2
  183. package/dist/Timestamp/TimestampHoverCard.js +4 -4
  184. package/dist/Toast/Toast.d.ts.map +1 -1
  185. package/dist/Toast/Toast.js +60 -20
  186. package/dist/Toast/ToastViewport.d.ts.map +1 -1
  187. package/dist/Toast/ToastViewport.js +101 -54
  188. package/dist/ToggleButton/ToggleButtonGroup.d.ts +7 -1
  189. package/dist/ToggleButton/ToggleButtonGroup.d.ts.map +1 -1
  190. package/dist/ToggleButton/ToggleButtonGroup.js +16 -2
  191. package/dist/Token/Token.d.ts +1 -1
  192. package/dist/Token/Token.d.ts.map +1 -1
  193. package/dist/Token/Token.js +52 -5
  194. package/dist/Token/TokenLink.d.ts.map +1 -1
  195. package/dist/Token/TokenLink.js +14 -2
  196. package/dist/Tokenizer/Tokenizer.d.ts.map +1 -1
  197. package/dist/Tokenizer/Tokenizer.js +44 -7
  198. package/dist/Tokenizer/TokenizerBottomSheet.js +3 -3
  199. package/dist/Tokenizer/TokenizerClearAllMessageContext.d.ts +2 -0
  200. package/dist/Tokenizer/TokenizerClearAllMessageContext.d.ts.map +1 -0
  201. package/dist/Tokenizer/TokenizerClearAllMessageContext.js +17 -0
  202. package/dist/Toolbar/Toolbar.d.ts.map +1 -1
  203. package/dist/Toolbar/Toolbar.js +2 -1
  204. package/dist/TopNav/TopNavMegaMenu.d.ts.map +1 -1
  205. package/dist/TopNav/TopNavMegaMenu.js +3 -0
  206. package/dist/TopNav/TopNavMenu.d.ts.map +1 -1
  207. package/dist/TopNav/TopNavMenu.js +1 -0
  208. package/dist/TreeList/TreeListItem.d.ts.map +1 -1
  209. package/dist/TreeList/TreeListItem.js +27 -4
  210. package/dist/Typeahead/BaseTypeahead.d.ts +4 -4
  211. package/dist/Typeahead/BaseTypeahead.d.ts.map +1 -1
  212. package/dist/Typeahead/BaseTypeahead.js +43 -7
  213. package/dist/Typeahead/Typeahead.d.ts +1 -1
  214. package/dist/Typeahead/Typeahead.d.ts.map +1 -1
  215. package/dist/Typeahead/Typeahead.js +43 -9
  216. package/dist/astryx.css +25 -4
  217. package/dist/gestures/GestureArena.d.ts +32 -1
  218. package/dist/gestures/GestureArena.d.ts.map +1 -1
  219. package/dist/gestures/GestureArena.js +110 -9
  220. package/dist/gestures/GestureHost.d.ts +351 -0
  221. package/dist/gestures/GestureHost.d.ts.map +1 -0
  222. package/dist/gestures/GestureHost.js +1773 -0
  223. package/dist/gestures/GestureRecognizer.d.ts +13 -1
  224. package/dist/gestures/GestureRecognizer.d.ts.map +1 -1
  225. package/dist/gestures/GestureRecognizer.js +19 -1
  226. package/dist/gestures/LongPressGestureRecognizer.d.ts +1 -0
  227. package/dist/gestures/LongPressGestureRecognizer.d.ts.map +1 -1
  228. package/dist/gestures/LongPressGestureRecognizer.js +3 -0
  229. package/dist/gestures/PanGestureRecognizer.d.ts +1 -0
  230. package/dist/gestures/PanGestureRecognizer.d.ts.map +1 -1
  231. package/dist/gestures/PanGestureRecognizer.js +3 -0
  232. package/dist/gestures/PinchGestureRecognizer.d.ts +31 -0
  233. package/dist/gestures/PinchGestureRecognizer.d.ts.map +1 -0
  234. package/dist/gestures/PinchGestureRecognizer.js +128 -0
  235. package/dist/gestures/PressTracker.d.ts +112 -0
  236. package/dist/gestures/PressTracker.d.ts.map +1 -0
  237. package/dist/gestures/PressTracker.js +267 -0
  238. package/dist/gestures/ScreenEdgePanGestureRecognizer.d.ts +71 -0
  239. package/dist/gestures/ScreenEdgePanGestureRecognizer.d.ts.map +1 -0
  240. package/dist/gestures/ScreenEdgePanGestureRecognizer.js +223 -0
  241. package/dist/gestures/SwipeGestureRecognizer.d.ts +37 -0
  242. package/dist/gestures/SwipeGestureRecognizer.d.ts.map +1 -0
  243. package/dist/gestures/SwipeGestureRecognizer.js +148 -0
  244. package/dist/gestures/TapGestureRecognizer.d.ts +1 -0
  245. package/dist/gestures/TapGestureRecognizer.d.ts.map +1 -1
  246. package/dist/gestures/TapGestureRecognizer.js +3 -0
  247. package/dist/gestures/VelocityTracker.d.ts +6 -2
  248. package/dist/gestures/VelocityTracker.d.ts.map +1 -1
  249. package/dist/gestures/VelocityTracker.js +7 -3
  250. package/dist/gestures/haptics.d.ts +65 -0
  251. package/dist/gestures/haptics.d.ts.map +1 -0
  252. package/dist/gestures/haptics.js +182 -0
  253. package/dist/gestures/index.d.ts +37 -0
  254. package/dist/gestures/index.d.ts.map +1 -0
  255. package/dist/gestures/index.js +25 -0
  256. package/dist/gestures/nativeScroll.d.ts +42 -0
  257. package/dist/gestures/nativeScroll.d.ts.map +1 -0
  258. package/dist/gestures/nativeScroll.js +228 -0
  259. package/dist/gestures/touchAction.d.ts +60 -0
  260. package/dist/gestures/touchAction.d.ts.map +1 -0
  261. package/dist/gestures/touchAction.js +157 -0
  262. package/dist/gestures/touchActionRule.d.ts +34 -0
  263. package/dist/gestures/touchActionRule.d.ts.map +1 -0
  264. package/dist/gestures/touchActionRule.js +140 -0
  265. package/dist/gestures/types.d.ts +18 -7
  266. package/dist/gestures/types.d.ts.map +1 -1
  267. package/dist/gestures/types.js +22 -2
  268. package/dist/gestures/useGestureRecognizer.d.ts +56 -0
  269. package/dist/gestures/useGestureRecognizer.d.ts.map +1 -0
  270. package/dist/gestures/useGestureRecognizer.js +226 -0
  271. package/dist/hooks/index.d.ts +1 -1
  272. package/dist/hooks/index.d.ts.map +1 -1
  273. package/dist/hooks/modalAnnounce.d.ts.map +1 -1
  274. package/dist/hooks/modalAnnounce.js +107 -61
  275. package/dist/hooks/scrollKeyboardDelegation.d.ts.map +1 -1
  276. package/dist/hooks/scrollKeyboardDelegation.js +7 -3
  277. package/dist/hooks/useAdaptivePresentation.d.ts.map +1 -1
  278. package/dist/hooks/useAdaptivePresentation.js +4 -1
  279. package/dist/hooks/useAnnounce.d.ts +101 -42
  280. package/dist/hooks/useAnnounce.d.ts.map +1 -1
  281. package/dist/hooks/useAnnounce.js +161 -75
  282. package/dist/hooks/useAnnounceRenderedText.d.ts +11 -3
  283. package/dist/hooks/useAnnounceRenderedText.d.ts.map +1 -1
  284. package/dist/hooks/useAnnounceRenderedText.js +5 -3
  285. package/dist/hooks/useBusyAnnouncement.d.ts.map +1 -1
  286. package/dist/hooks/useBusyAnnouncement.js +6 -12
  287. package/dist/hooks/useMenuHover.d.ts.map +1 -1
  288. package/dist/hooks/useMenuHover.js +12 -1
  289. package/dist/hooks/useScrollOverflow.d.ts +2 -1
  290. package/dist/hooks/useScrollOverflow.d.ts.map +1 -1
  291. package/dist/hooks/useScrollOverflow.js +56 -10
  292. package/dist/i18n/generated-locales/af-ZA.generated.d.ts.map +1 -1
  293. package/dist/i18n/generated-locales/af-ZA.generated.js +0 -5
  294. package/dist/i18n/generated-locales/ar-SA.generated.d.ts.map +1 -1
  295. package/dist/i18n/generated-locales/ar-SA.generated.js +0 -5
  296. package/dist/i18n/generated-locales/ca-ES.generated.d.ts.map +1 -1
  297. package/dist/i18n/generated-locales/ca-ES.generated.js +0 -5
  298. package/dist/i18n/generated-locales/cs-CZ.generated.d.ts.map +1 -1
  299. package/dist/i18n/generated-locales/cs-CZ.generated.js +0 -5
  300. package/dist/i18n/generated-locales/da-DK.generated.d.ts.map +1 -1
  301. package/dist/i18n/generated-locales/da-DK.generated.js +0 -5
  302. package/dist/i18n/generated-locales/de-DE.generated.d.ts.map +1 -1
  303. package/dist/i18n/generated-locales/de-DE.generated.js +0 -5
  304. package/dist/i18n/generated-locales/el-GR.generated.d.ts.map +1 -1
  305. package/dist/i18n/generated-locales/el-GR.generated.js +0 -5
  306. package/dist/i18n/generated-locales/en.generated.d.ts.map +1 -1
  307. package/dist/i18n/generated-locales/en.generated.js +8 -5
  308. package/dist/i18n/generated-locales/es-ES.generated.d.ts.map +1 -1
  309. package/dist/i18n/generated-locales/es-ES.generated.js +0 -5
  310. package/dist/i18n/generated-locales/fi-FI.generated.d.ts.map +1 -1
  311. package/dist/i18n/generated-locales/fi-FI.generated.js +0 -5
  312. package/dist/i18n/generated-locales/fr-FR.generated.d.ts.map +1 -1
  313. package/dist/i18n/generated-locales/fr-FR.generated.js +0 -5
  314. package/dist/i18n/generated-locales/he-IL.generated.d.ts.map +1 -1
  315. package/dist/i18n/generated-locales/he-IL.generated.js +0 -5
  316. package/dist/i18n/generated-locales/hu-HU.generated.d.ts.map +1 -1
  317. package/dist/i18n/generated-locales/hu-HU.generated.js +0 -5
  318. package/dist/i18n/generated-locales/it-IT.generated.d.ts.map +1 -1
  319. package/dist/i18n/generated-locales/it-IT.generated.js +0 -5
  320. package/dist/i18n/generated-locales/ja-JP.generated.d.ts.map +1 -1
  321. package/dist/i18n/generated-locales/ja-JP.generated.js +0 -5
  322. package/dist/i18n/generated-locales/ko-KR.generated.d.ts.map +1 -1
  323. package/dist/i18n/generated-locales/ko-KR.generated.js +0 -5
  324. package/dist/i18n/generated-locales/nl-NL.generated.d.ts.map +1 -1
  325. package/dist/i18n/generated-locales/nl-NL.generated.js +0 -5
  326. package/dist/i18n/generated-locales/no-NO.generated.d.ts.map +1 -1
  327. package/dist/i18n/generated-locales/no-NO.generated.js +0 -5
  328. package/dist/i18n/generated-locales/pl-PL.generated.d.ts.map +1 -1
  329. package/dist/i18n/generated-locales/pl-PL.generated.js +0 -5
  330. package/dist/i18n/generated-locales/pseudo.generated.d.ts.map +1 -1
  331. package/dist/i18n/generated-locales/pseudo.generated.js +8 -5
  332. package/dist/i18n/generated-locales/pt-BR.generated.d.ts.map +1 -1
  333. package/dist/i18n/generated-locales/pt-BR.generated.js +0 -5
  334. package/dist/i18n/generated-locales/pt-PT.generated.d.ts.map +1 -1
  335. package/dist/i18n/generated-locales/pt-PT.generated.js +0 -5
  336. package/dist/i18n/generated-locales/ro-RO.generated.d.ts.map +1 -1
  337. package/dist/i18n/generated-locales/ro-RO.generated.js +0 -5
  338. package/dist/i18n/generated-locales/ru-RU.generated.d.ts.map +1 -1
  339. package/dist/i18n/generated-locales/ru-RU.generated.js +0 -5
  340. package/dist/i18n/generated-locales/sr-SP.generated.d.ts.map +1 -1
  341. package/dist/i18n/generated-locales/sr-SP.generated.js +0 -5
  342. package/dist/i18n/generated-locales/sv-SE.generated.d.ts.map +1 -1
  343. package/dist/i18n/generated-locales/sv-SE.generated.js +0 -5
  344. package/dist/i18n/generated-locales/tr-TR.generated.d.ts.map +1 -1
  345. package/dist/i18n/generated-locales/tr-TR.generated.js +0 -5
  346. package/dist/i18n/generated-locales/uk-UA.generated.d.ts.map +1 -1
  347. package/dist/i18n/generated-locales/uk-UA.generated.js +0 -5
  348. package/dist/i18n/generated-locales/vi-VN.generated.d.ts.map +1 -1
  349. package/dist/i18n/generated-locales/vi-VN.generated.js +0 -5
  350. package/dist/i18n/generated-locales/zh-CN.generated.d.ts.map +1 -1
  351. package/dist/i18n/generated-locales/zh-CN.generated.js +0 -5
  352. package/dist/i18n/generated-locales/zh-TW.generated.d.ts.map +1 -1
  353. package/dist/i18n/generated-locales/zh-TW.generated.js +0 -5
  354. package/dist/i18n/useListFormatter.d.ts +9 -0
  355. package/dist/i18n/useListFormatter.d.ts.map +1 -0
  356. package/dist/i18n/useListFormatter.js +41 -0
  357. package/dist/motion/animator.d.ts +83 -8
  358. package/dist/motion/animator.d.ts.map +1 -1
  359. package/dist/motion/animator.js +701 -119
  360. package/dist/motion/coast.d.ts +4 -1
  361. package/dist/motion/coast.d.ts.map +1 -1
  362. package/dist/motion/coast.js +4 -2
  363. package/dist/motion/reducedMotion.d.ts.map +1 -1
  364. package/dist/motion/reducedMotion.js +6 -2
  365. package/dist/motion/reducedMotionPlan.d.ts +7 -0
  366. package/dist/motion/reducedMotionPlan.d.ts.map +1 -1
  367. package/dist/motion/reducedMotionPlan.js +14 -1
  368. package/dist/motion/resolveMotion.d.ts +42 -0
  369. package/dist/motion/resolveMotion.d.ts.map +1 -0
  370. package/dist/motion/resolveMotion.js +43 -0
  371. package/dist/motion/roleValue.d.ts +2 -1
  372. package/dist/motion/roleValue.d.ts.map +1 -1
  373. package/dist/motion/roleValue.js +2 -1
  374. package/dist/motion/uikit/timing.d.ts +7 -1
  375. package/dist/motion/uikit/timing.d.ts.map +1 -1
  376. package/dist/motion/uikit/timing.js +19 -1
  377. package/dist/theme/defineTheme.d.ts +19 -5
  378. package/dist/theme/defineTheme.d.ts.map +1 -1
  379. package/dist/theme/defineTheme.js +64 -4
  380. package/dist/theme/domainTokens/domainTokenDefaults.d.ts +3 -0
  381. package/dist/theme/domainTokens/domainTokenDefaults.d.ts.map +1 -0
  382. package/dist/theme/domainTokens/domainTokenDefaults.js +19 -0
  383. package/dist/theme/domainTokens/index.d.ts +5 -4
  384. package/dist/theme/domainTokens/index.d.ts.map +1 -1
  385. package/dist/theme/domainTokens/index.js +5 -9
  386. package/dist/theme/index.d.ts +1 -0
  387. package/dist/theme/index.d.ts.map +1 -1
  388. package/dist/theme/motionKnobs.d.ts +56 -0
  389. package/dist/theme/motionKnobs.d.ts.map +1 -0
  390. package/dist/theme/motionKnobs.js +48 -0
  391. package/dist/theme/resolveThemeValues.d.ts +11 -4
  392. package/dist/theme/resolveThemeValues.d.ts.map +1 -1
  393. package/dist/theme/resolveThemeValues.js +40 -4
  394. package/dist/theme/themeAdaptations.d.ts +7 -3
  395. package/dist/theme/themeAdaptations.d.ts.map +1 -1
  396. package/dist/theme/themeAdaptations.js +36 -7
  397. package/dist/theme/themeMotion.d.ts +96 -0
  398. package/dist/theme/themeMotion.d.ts.map +1 -0
  399. package/dist/theme/themeMotion.js +177 -0
  400. package/dist/theme/tokenReferences.d.ts +31 -0
  401. package/dist/theme/tokenReferences.d.ts.map +1 -0
  402. package/dist/theme/tokenReferences.js +132 -0
  403. package/dist/theme/tokens.d.ts +1 -0
  404. package/dist/theme/tokens.d.ts.map +1 -1
  405. package/dist/theme/tokens.js +9 -129
  406. package/dist/theme/tokens.stylex.d.ts +12 -0
  407. package/dist/theme/tokens.stylex.d.ts.map +1 -1
  408. package/dist/theme/tokens.stylex.js +12 -0
  409. package/dist/utils/focusOutline.stylex.d.ts +6 -0
  410. package/dist/utils/focusOutline.stylex.d.ts.map +1 -1
  411. package/dist/utils/focusOutline.stylex.js +7 -0
  412. package/dist/utils/focusReturn.d.ts +17 -1
  413. package/dist/utils/focusReturn.d.ts.map +1 -1
  414. package/dist/utils/focusReturn.js +11 -4
  415. package/dist/utils/getNodeText.d.ts +8 -0
  416. package/dist/utils/getNodeText.d.ts.map +1 -0
  417. package/dist/utils/getNodeText.js +37 -0
  418. package/dist/utils/interactionModality.d.ts +11 -2
  419. package/dist/utils/interactionModality.d.ts.map +1 -1
  420. package/dist/utils/interactionModality.js +58 -5
  421. package/dist/utils/interactionOverlay.stylex.d.ts.map +1 -1
  422. package/dist/utils/interactionOverlay.stylex.js +17 -8
  423. package/dist/utils/plainDate.d.ts +2 -0
  424. package/dist/utils/plainDate.d.ts.map +1 -1
  425. package/dist/utils/plainDate.js +46 -3
  426. package/dist/utils/presentation.d.ts +50 -0
  427. package/dist/utils/presentation.d.ts.map +1 -0
  428. package/dist/utils/presentation.js +125 -0
  429. package/dist/utils/pressFeedback.d.ts.map +1 -1
  430. package/dist/utils/pressFeedback.js +20 -1
  431. package/dist/utils/primaryClick.d.ts +11 -0
  432. package/dist/utils/primaryClick.d.ts.map +1 -0
  433. package/dist/utils/primaryClick.js +25 -0
  434. package/dist/utils/sharedMutationObserver.d.ts +19 -11
  435. package/dist/utils/sharedMutationObserver.d.ts.map +1 -1
  436. package/dist/utils/sharedMutationObserver.js +66 -26
  437. package/dist/utils/timeFormat.d.ts +47 -0
  438. package/dist/utils/timeFormat.d.ts.map +1 -0
  439. package/dist/utils/timeFormat.js +240 -0
  440. package/dist/utils/touchPresentation.d.ts +2 -2
  441. package/dist/utils/touchPresentation.d.ts.map +1 -1
  442. package/dist/utils/touchPresentation.js +13 -8
  443. package/dist/utils/touchPresentation.stylex.d.ts +15 -0
  444. package/dist/utils/touchPresentation.stylex.d.ts.map +1 -0
  445. package/dist/utils/touchPresentation.stylex.js +33 -0
  446. package/dist/utils/touchQueries.d.ts +13 -0
  447. package/dist/utils/touchQueries.d.ts.map +1 -0
  448. package/dist/utils/touchQueries.js +15 -0
  449. package/dist/utils/unicodeDigits.d.ts +20 -0
  450. package/dist/utils/unicodeDigits.d.ts.map +1 -0
  451. package/dist/utils/unicodeDigits.js +70 -0
  452. package/dist/utils/useFocusAcrossSwap.d.ts +19 -0
  453. package/dist/utils/useFocusAcrossSwap.d.ts.map +1 -0
  454. package/dist/utils/useFocusAcrossSwap.js +41 -0
  455. package/locales/af-ZA.json +0 -21
  456. package/locales/ar-SA.json +0 -21
  457. package/locales/ca-ES.json +0 -21
  458. package/locales/cs-CZ.json +0 -21
  459. package/locales/da-DK.json +0 -21
  460. package/locales/de-DE.json +0 -21
  461. package/locales/el-GR.json +0 -21
  462. package/locales/en.json +35 -23
  463. package/locales/es-ES.json +0 -21
  464. package/locales/fi-FI.json +0 -21
  465. package/locales/fr-FR.json +0 -21
  466. package/locales/he-IL.json +0 -21
  467. package/locales/hu-HU.json +0 -21
  468. package/locales/it-IT.json +0 -21
  469. package/locales/ja-JP.json +0 -21
  470. package/locales/ko-KR.json +0 -21
  471. package/locales/nl-NL.json +0 -21
  472. package/locales/no-NO.json +0 -21
  473. package/locales/pl-PL.json +0 -21
  474. package/locales/pseudo.json +23 -14
  475. package/locales/pt-BR.json +0 -21
  476. package/locales/pt-PT.json +0 -21
  477. package/locales/ro-RO.json +0 -21
  478. package/locales/ru-RU.json +0 -21
  479. package/locales/sr-SP.json +0 -21
  480. package/locales/sv-SE.json +0 -21
  481. package/locales/tr-TR.json +0 -21
  482. package/locales/uk-UA.json +0 -21
  483. package/locales/vi-VN.json +0 -21
  484. package/locales/zh-CN.json +0 -21
  485. package/locales/zh-TW.json +0 -21
  486. package/package.json +5 -4
  487. package/src/AlertDialog/AlertDialog.tsx +6 -5
  488. package/src/AlertDialog/__tests__/AlertDialog.a11y.chromium.spec.ts +18 -6
  489. package/src/AppShell/AppShell.doc.mjs +1 -1
  490. package/src/AppShell/AppShell.spec.md +9 -12
  491. package/src/AppShell/AppShell.test.tsx +164 -2
  492. package/src/AppShell/AppShell.tsx +225 -5
  493. package/src/AppShell/__tests__/AppShellMainKeyboard.a11y.browser.spec.ts +534 -0
  494. package/src/AppShell/observeMainOverflow.test.ts +173 -0
  495. package/src/AppShell/observeMainOverflow.ts +143 -0
  496. package/src/Avatar/Avatar.spec.md +22 -22
  497. package/src/Avatar/Avatar.tsx +18 -1
  498. package/src/Avatar/__tests__/AvatarForcedColors.a11y.chromium.spec.ts +126 -0
  499. package/src/Badge/Badge.doc.mjs +1 -1
  500. package/src/Badge/Badge.tsx +19 -2
  501. package/src/Badge/__tests__/BadgeLargerText.a11y.chromium.spec.ts +260 -0
  502. package/src/BottomSheet/BottomSheet.test.tsx +46 -0
  503. package/src/BottomSheet/BottomSheet.tsx +1 -1
  504. package/src/BottomSheet/BottomSheetPanel.tsx +2 -1
  505. package/src/BottomSheet/useSheetGestures.test.ts +52 -0
  506. package/src/BottomSheet/useSheetGestures.ts +37 -6
  507. package/src/Breadcrumbs/__tests__/Breadcrumbs.a11y.chromium.spec.ts +18 -6
  508. package/src/Button/Button.tsx +4 -4
  509. package/src/Calendar/Calendar.spec.md +87 -48
  510. package/src/Calendar/__tests__/Calendar.a11y.chromium.spec.ts +21 -7
  511. package/src/Carousel/Carousel.doc.mjs +1 -1
  512. package/src/Carousel/Carousel.spec.md +9 -9
  513. package/src/Carousel/Carousel.test.tsx +124 -3
  514. package/src/Carousel/Carousel.tsx +10 -2
  515. package/src/Carousel/__tests__/Carousel.a11y.chromium.spec.ts +21 -7
  516. package/src/Carousel/__tests__/Carousel.a11y.known-failures.ts +1 -16
  517. package/src/Chat/ChatComposer.spec.md +75 -59
  518. package/src/Chat/ChatComposerTokenElement.spec.md +45 -33
  519. package/src/Chat/ChatDictationButton.spec.md +126 -81
  520. package/src/Chat/ChatLayout.spec.md +41 -36
  521. package/src/Chat/ChatLayoutScrollButton.spec.md +87 -103
  522. package/src/Chat/ChatMessage.spec.md +64 -65
  523. package/src/Chat/ChatSendButton.spec.md +78 -67
  524. package/src/CheckboxInput/CheckboxInput.tsx +6 -5
  525. package/src/Citation/Citation.spec.md +60 -47
  526. package/src/ClickableCard/ClickableCard.test.tsx +96 -0
  527. package/src/ClickableCard/ClickableCard.tsx +48 -4
  528. package/src/CodeBlock/__tests__/CodeBlockCopyClearance.a11y.chromium.spec.ts +38 -3
  529. package/src/Collapsible/Collapsible.spec.md +2 -0
  530. package/src/Collapsible/CollapsibleGroup.spec.md +57 -29
  531. package/src/Collapsible/__tests__/Collapsible.a11y.chromium.spec.ts +18 -7
  532. package/src/Collapsible/__tests__/CollapsibleGroupAccordion.a11y.chromium.spec.ts +18 -6
  533. package/src/ComplexSelector/ComplexSelector.test.tsx +148 -0
  534. package/src/ComplexSelector/ComplexSelector.tsx +41 -4
  535. package/src/ContextMenu/ContextMenu.spec.md +84 -56
  536. package/src/ContextMenu/ContextMenu.test.tsx +35 -0
  537. package/src/ContextMenu/ContextMenuItem.spec.md +132 -0
  538. package/src/DateInput/DateInput.spec.md +74 -57
  539. package/src/DateInput/DateInput.test.tsx +115 -3
  540. package/src/DateInput/DateInput.tsx +29 -14
  541. package/src/DateInput/DateInputTouch.test.tsx +120 -0
  542. package/src/DateInput/MonthScroller.tsx +106 -20
  543. package/src/DateInput/MonthScrollerSettle.test.tsx +165 -0
  544. package/src/DateInput/TouchDateField.tsx +14 -3
  545. package/src/DateInput/Wheel.tsx +9 -6
  546. package/src/DateInput/__tests__/MonthScrollerSteps.interaction.browser.spec.ts +312 -0
  547. package/src/DateInput/usePointerDragScroll.ts +34 -10
  548. package/src/DateInput/useScrollSettle.ts +38 -7
  549. package/src/DateRangeInput/DateRangeInput.test.tsx +46 -3
  550. package/src/DateRangeInput/DateRangeInput.tsx +16 -12
  551. package/src/DateTimeInput/DateTimeInput.doc.mjs +10 -8
  552. package/src/DateTimeInput/DateTimeInput.spec.md +75 -51
  553. package/src/DateTimeInput/DateTimeInput.test.tsx +81 -0
  554. package/src/DateTimeInput/DateTimeInput.tsx +46 -24
  555. package/src/DateTimeInput/NativeTimeSegment.tsx +4 -6
  556. package/src/DateTimeInput/TouchDateTimeField.tsx +3 -7
  557. package/src/Dialog/Dialog.test.tsx +216 -2
  558. package/src/Dialog/Dialog.tsx +42 -9
  559. package/src/Dialog/DialogHeader.tsx +5 -4
  560. package/src/Dialog/__tests__/DialogSecondDocument.a11y.browser.spec.ts +202 -0
  561. package/src/Divider/Divider.tsx +2 -1
  562. package/src/Drawer/Drawer.spec.md +111 -80
  563. package/src/Drawer/Drawer.test.tsx +35 -0
  564. package/src/Drawer/Drawer.tsx +13 -2
  565. package/src/Drawer/DrawerHeader.spec.md +181 -0
  566. package/src/Drawer/__tests__/DrawerNonModalPageScroll.a11y.chromium.spec.ts +267 -0
  567. package/src/DropdownMenu/DropdownMenu.spec.md +198 -218
  568. package/src/DropdownMenu/DropdownMenu.test.tsx +158 -0
  569. package/src/DropdownMenu/DropdownMenu.tsx +43 -21
  570. package/src/DropdownMenu/DropdownMenuCheckboxItem.spec.md +192 -0
  571. package/src/DropdownMenu/DropdownMenuDivider.spec.md +25 -31
  572. package/src/DropdownMenu/DropdownMenuGroup.spec.md +145 -0
  573. package/src/DropdownMenu/DropdownMenuItem.spec.md +48 -42
  574. package/src/DropdownMenu/DropdownMenuRadioGroup.spec.md +34 -37
  575. package/src/DropdownMenu/DropdownMenuRadioItem.spec.md +54 -53
  576. package/src/DropdownMenu/DropdownMenuSubMenu.spec.md +47 -41
  577. package/src/DropdownMenu/DropdownMenuSubMenu.test.tsx +34 -0
  578. package/src/DropdownMenu/MenuBottomSheetActionList.tsx +6 -5
  579. package/src/DropdownMenu/__tests__/Menu.a11y.chromium.spec.ts +19 -7
  580. package/src/DropdownMenu/__tests__/MenuButton.a11y.chromium.spec.ts +21 -9
  581. package/src/DropdownMenu/lazyMenuBottomSheet.test.ts +60 -0
  582. package/src/DropdownMenu/lazyMenuBottomSheet.ts +36 -7
  583. package/src/DropdownMenu/renderDropdownItems.tsx +24 -19
  584. package/src/EmptyState/EmptyState.spec.md +35 -29
  585. package/src/EmptyState/EmptyState.tsx +2 -1
  586. package/src/Field/FieldLabel.tsx +5 -4
  587. package/src/Field/InputClearButton.tsx +3 -3
  588. package/src/Field/PanelSearchInput.tsx +2 -2
  589. package/src/FieldStatus/FieldStatus.tsx +9 -2
  590. package/src/FieldStatus/__tests__/FieldStatusAudit.a11y.chromium.spec.ts +477 -0
  591. package/src/FileInput/FileInput.test.tsx +159 -0
  592. package/src/FileInput/FileInput.tsx +34 -6
  593. package/src/FileInput/__tests__/FileInputAudit.a11y.chromium.spec.ts +796 -0
  594. package/src/FormLayout/FormLayout.spec.md +11 -20
  595. package/src/Heading/Heading.tsx +1 -1
  596. package/src/Icon/Icon.tsx +1 -1
  597. package/src/Indicator/CheckIndicator.spec.md +47 -42
  598. package/src/Indicator/CheckIndicator.tsx +2 -1
  599. package/src/Indicator/CheckboxIndicator.spec.md +40 -37
  600. package/src/Indicator/CheckboxIndicator.tsx +3 -1
  601. package/src/Indicator/Indicator.spec.md +188 -0
  602. package/src/Indicator/RadioIndicator.tsx +3 -1
  603. package/src/Item/Item.test.tsx +60 -0
  604. package/src/Item/Item.tsx +16 -8
  605. package/src/Item/ItemSwipeLayer.tsx +1 -1
  606. package/src/Kbd/Kbd.spec.md +81 -38
  607. package/src/Layer/__tests__/LayerBrowserHide.a11y.chromium.spec.ts +126 -0
  608. package/src/Layer/popoverOperations.test.ts +205 -0
  609. package/src/Layer/popoverOperations.ts +172 -0
  610. package/src/Layer/useLayer.test.tsx +426 -4
  611. package/src/Layer/useLayer.tsx +145 -77
  612. package/src/Layout/Layout.spec.md +127 -131
  613. package/src/Layout/Layout.tsx +1 -1
  614. package/src/Layout/LayoutContent.spec.md +205 -0
  615. package/src/Layout/LayoutContent.tsx +1 -1
  616. package/src/Layout/LayoutFooter.spec.md +190 -0
  617. package/src/Layout/LayoutFooter.tsx +1 -1
  618. package/src/Layout/LayoutHeader.spec.md +193 -0
  619. package/src/Layout/LayoutHeader.tsx +1 -1
  620. package/src/Layout/LayoutPanel.spec.md +194 -0
  621. package/src/Layout/__tests__/Layout.a11y.chromium.spec.ts +18 -6
  622. package/src/Lightbox/Lightbox.test.tsx +18 -0
  623. package/src/Lightbox/Lightbox.tsx +5 -0
  624. package/src/Lightbox/LightboxViewport.a11y.browser.spec.ts +8 -4
  625. package/src/Link/Link.spec.md +3 -2
  626. package/src/Link/Link.tsx +11 -0
  627. package/src/Link/__tests__/Link.a11y.chromium.spec.ts +18 -8
  628. package/src/Link/__tests__/Link.truncation.a11y.chromium.spec.ts +58 -0
  629. package/src/List/List.tsx +1 -1
  630. package/src/List/ListItem.spec.md +205 -0
  631. package/src/List/ListItem.tsx +3 -3
  632. package/src/Markdown/plugins/headingLinks.a11y.chromium.spec.ts +1 -1
  633. package/src/MetadataList/MetadataList.spec.md +187 -0
  634. package/src/MetadataList/MetadataListItem.spec.md +165 -0
  635. package/src/MobileNav/MobileNav.test.tsx +15 -0
  636. package/src/MobileNav/MobileNav.tsx +9 -1
  637. package/src/MobileNav/__tests__/MobileNavHeader.a11y.chromium.spec.ts +89 -0
  638. package/src/MoreMenu/MoreMenu.test.tsx +11 -0
  639. package/src/MultiSelector/CreateRow.a11y.chromium.spec.ts +7 -8
  640. package/src/MultiSelector/MultiSelector.spec.md +7 -4
  641. package/src/MultiSelector/MultiSelector.test.tsx +270 -1
  642. package/src/MultiSelector/MultiSelector.tsx +25 -10
  643. package/src/MultiSelector/__tests__/MultiSelector.listbox.a11y.test.tsx +8 -1
  644. package/src/NavMenu/NavHeadingMenu.spec.md +1 -5
  645. package/src/NavMenu/NavHeadingMenuItem.tsx +5 -39
  646. package/src/NumberInput/NumberInput.doc.mjs +13 -7
  647. package/src/NumberInput/NumberInput.spec.md +59 -37
  648. package/src/NumberInput/NumberInput.test.tsx +68 -7
  649. package/src/NumberInput/NumberInput.tsx +44 -4
  650. package/src/NumberInput/__tests__/NumberInput.coarse-pointer.a11y.chromium.spec.ts +102 -0
  651. package/src/NumberInput/numberParser.ts +7 -45
  652. package/src/Outline/Outline.spec.md +165 -69
  653. package/src/Outline/Outline.test.tsx +67 -2
  654. package/src/Outline/Outline.tsx +23 -0
  655. package/src/Outline/modules/parseOutlineFromMarkdown.spec.md +3 -4
  656. package/src/OverflowList/OverflowList.spec.md +102 -55
  657. package/src/Pagination/Pagination.spec.md +158 -84
  658. package/src/Popover/Popover.test.tsx +84 -0
  659. package/src/Popover/Popover.tsx +34 -14
  660. package/src/Popover/__tests__/PopoverSecondDocument.a11y.chromium.spec.ts +70 -8
  661. package/src/Popover/usePopover.tsx +10 -3
  662. package/src/PowerSearch/PowerSearch.test.tsx +24 -0
  663. package/src/PowerSearch/PowerSearch.tsx +42 -31
  664. package/src/ProgressBar/ProgressBar.spec.md +143 -119
  665. package/src/ProgressBar/ProgressBar.test.tsx +108 -32
  666. package/src/ProgressBar/ProgressBar.tsx +58 -10
  667. package/src/ProgressBar/__tests__/ProgressBar.a11y.chromium.spec.ts +21 -9
  668. package/src/ProgressBar/__tests__/ProgressBarMotion.a11y.chromium.spec.ts +831 -0
  669. package/src/RadioList/RadioList.spec.md +1 -1
  670. package/src/RadioList/RadioList.test.tsx +84 -0
  671. package/src/RadioList/RadioListItem.tsx +11 -2
  672. package/src/Resizable/Resizable.spec.md +144 -124
  673. package/src/Resizable/__tests__/ResizeHandle.a11y.chromium.spec.ts +21 -14
  674. package/src/Resizable/useResizable.test.ts +43 -0
  675. package/src/Resizable/useResizable.ts +32 -9
  676. package/src/SegmentedControl/SegmentedControl.test.tsx +84 -0
  677. package/src/SegmentedControl/SegmentedControlItem.tsx +11 -5
  678. package/src/Selector/Selector.test.tsx +90 -1
  679. package/src/Selector/__tests__/Selector.combobox.a11y.test.tsx +8 -1
  680. package/src/Selector/__tests__/Selector.listbox.a11y.test.tsx +8 -1
  681. package/src/Selector/useSelectorPresentation.ts +31 -3
  682. package/src/SideNav/SideNav.test.tsx +151 -4
  683. package/src/SideNav/SideNavItem.spec.md +14 -24
  684. package/src/SideNav/SideNavItem.tsx +27 -10
  685. package/src/SideNav/__tests__/SideNavRailMotion.interaction.browser.spec.ts +176 -51
  686. package/src/Skeleton/Skeleton.tsx +3 -1
  687. package/src/Slider/Slider.test.tsx +31 -0
  688. package/src/Slider/Slider.tsx +8 -3
  689. package/src/Slider/__tests__/Slider.a11y.chromium.spec.ts +19 -7
  690. package/src/Spinner/Spinner.tsx +5 -3
  691. package/src/Stack/Stack.tsx +1 -1
  692. package/src/Stack/StackItem.tsx +1 -1
  693. package/src/Stepper/Step.spec.md +36 -42
  694. package/src/Stepper/Step.tsx +33 -6
  695. package/src/Stepper/Stepper.doc.mjs +1 -1
  696. package/src/Stepper/Stepper.test.tsx +69 -7
  697. package/src/Switch/Switch.spec.md +1 -1
  698. package/src/Switch/Switch.test.tsx +66 -1
  699. package/src/Switch/Switch.tsx +11 -3
  700. package/src/TabList/TabList.test.tsx +58 -4
  701. package/src/TabList/TabList.tsx +16 -1
  702. package/src/TabList/__tests__/TabPressPointer.interaction.browser.spec.ts +163 -0
  703. package/src/Table/Table.spec.md +1 -1
  704. package/src/Table/Table.test.tsx +32 -0
  705. package/src/Table/Table.tsx +43 -11
  706. package/src/Table/__tests__/Table.a11y.chromium.spec.ts +18 -6
  707. package/src/Table/__tests__/Table.a11y.states.ts +1 -5
  708. package/src/Table/plugins/columnResize/useTableColumnResize.test.tsx +22 -0
  709. package/src/Table/plugins/columnResize/useTableColumnResize.tsx +8 -4
  710. package/src/Table/plugins/sortable/useTableSortable.test.tsx +73 -144
  711. package/src/Table/plugins/sortable/useTableSortable.tsx +44 -73
  712. package/src/Table/plugins/sortable/useTableSortableState.test.tsx +9 -21
  713. package/src/Text/Text.tsx +1 -1
  714. package/src/Text/useTruncation.test.tsx +128 -1
  715. package/src/Text/useTruncation.ts +23 -5
  716. package/src/TextArea/TextArea.spec.md +10 -13
  717. package/src/TextArea/TextArea.test.tsx +60 -0
  718. package/src/TextArea/TextArea.tsx +15 -1
  719. package/src/TextInput/TextInput.test.tsx +21 -0
  720. package/src/TextInput/TextInput.tsx +3 -1
  721. package/src/TimeInput/NativeTimeInput.test.tsx +17 -0
  722. package/src/TimeInput/Presentation.test.tsx +21 -0
  723. package/src/TimeInput/TimeInput.doc.mjs +8 -8
  724. package/src/TimeInput/TimeInput.spec.md +58 -61
  725. package/src/TimeInput/TimeInput.test.tsx +76 -0
  726. package/src/TimeInput/TimeInput.tsx +36 -18
  727. package/src/TimeInput/TouchTimeField.tsx +4 -6
  728. package/src/Timestamp/Timestamp.spec.md +6 -12
  729. package/src/Timestamp/Timestamp.test.tsx +30 -5
  730. package/src/Timestamp/Timestamp.tsx +6 -2
  731. package/src/Timestamp/TimestampHoverCard.tsx +4 -4
  732. package/src/Toast/Toast.spec.md +15 -24
  733. package/src/Toast/Toast.tsx +104 -36
  734. package/src/Toast/ToastViewport.test.tsx +798 -1
  735. package/src/Toast/ToastViewport.tsx +121 -53
  736. package/src/ToggleButton/ToggleButton.test.tsx +27 -0
  737. package/src/ToggleButton/ToggleButtonGroup.tsx +20 -1
  738. package/src/Token/Token.doc.mjs +2 -2
  739. package/src/Token/Token.spec.md +52 -61
  740. package/src/Token/Token.test.tsx +104 -0
  741. package/src/Token/Token.tsx +75 -5
  742. package/src/Token/TokenLink.tsx +21 -7
  743. package/src/Tokenizer/Tokenizer.spec.md +18 -4
  744. package/src/Tokenizer/Tokenizer.test.tsx +176 -0
  745. package/src/Tokenizer/Tokenizer.tsx +48 -12
  746. package/src/Tokenizer/TokenizerBottomSheet.test.tsx +23 -4
  747. package/src/Tokenizer/TokenizerBottomSheet.tsx +3 -3
  748. package/src/Tokenizer/TokenizerClearAllMessageContext.ts +21 -0
  749. package/src/Toolbar/Toolbar.spec.md +5 -6
  750. package/src/Toolbar/Toolbar.test.tsx +30 -0
  751. package/src/Toolbar/Toolbar.tsx +2 -1
  752. package/src/Toolbar/__tests__/Toolbar.a11y.chromium.spec.ts +18 -6
  753. package/src/Tooltip/__tests__/Tooltip.a11y.chromium.spec.ts +18 -7
  754. package/src/TopNav/TopNav.test.tsx +27 -0
  755. package/src/TopNav/TopNavMegaMenu.test.tsx +21 -0
  756. package/src/TopNav/TopNavMegaMenu.tsx +4 -1
  757. package/src/TopNav/TopNavMenu.test.tsx +17 -0
  758. package/src/TopNav/TopNavMenu.tsx +1 -0
  759. package/src/TreeList/TreeList.test.tsx +26 -0
  760. package/src/TreeList/TreeListItem.tsx +26 -4
  761. package/src/Typeahead/BaseTypeahead.doc.mjs +3 -3
  762. package/src/Typeahead/BaseTypeahead.spec.md +45 -45
  763. package/src/Typeahead/BaseTypeahead.tsx +48 -9
  764. package/src/Typeahead/Typeahead.test.tsx +294 -11
  765. package/src/Typeahead/Typeahead.tsx +51 -9
  766. package/src/__tests__/internalModulesNotExperimental.test.ts +88 -0
  767. package/src/__tests__/pressState.ts +8 -4
  768. package/src/gestures/GestureArena.ts +111 -11
  769. package/src/gestures/GestureHost.ts +2064 -0
  770. package/src/gestures/GestureRecognizer.ts +21 -1
  771. package/src/gestures/LongPressGestureRecognizer.ts +4 -0
  772. package/src/gestures/PanGestureRecognizer.ts +4 -0
  773. package/src/gestures/PinchGestureRecognizer.ts +148 -0
  774. package/src/gestures/PressTracker.ts +386 -0
  775. package/src/gestures/README.md +420 -0
  776. package/src/gestures/ScreenEdgePanGestureRecognizer.ts +256 -0
  777. package/src/gestures/SwipeGestureRecognizer.ts +197 -0
  778. package/src/gestures/TapGestureRecognizer.ts +4 -0
  779. package/src/gestures/VelocityTracker.ts +10 -3
  780. package/src/gestures/__tests__/GestureHost.test.ts +2136 -0
  781. package/src/gestures/__tests__/PanGestureRecognizer.test.ts +4 -4
  782. package/src/gestures/__tests__/PinchGestureRecognizer.test.ts +74 -0
  783. package/src/gestures/__tests__/PressTracker.test.ts +275 -0
  784. package/src/gestures/__tests__/ScreenEdgePanGestureRecognizer.test.ts +498 -0
  785. package/src/gestures/__tests__/SwipeGestureRecognizer.test.ts +108 -0
  786. package/src/gestures/__tests__/arena.test.ts +40 -0
  787. package/src/gestures/__tests__/arenaPinchSwipeEdge.test.ts +193 -0
  788. package/src/gestures/__tests__/browser/build-fixture.mjs +46 -0
  789. package/src/gestures/__tests__/browser/fixture.ts +307 -0
  790. package/src/gestures/__tests__/browser/gestures.interaction.browser.spec.ts +1137 -0
  791. package/src/gestures/__tests__/browserNegotiation.test.ts +293 -0
  792. package/src/gestures/__tests__/haptics.test.ts +187 -0
  793. package/src/gestures/__tests__/harness.ts +52 -4
  794. package/src/gestures/__tests__/pressTrackerFactory.test.ts +59 -0
  795. package/src/gestures/__tests__/recognizerKind.test.ts +78 -0
  796. package/src/gestures/__tests__/touchActionRule.test.ts +54 -0
  797. package/src/gestures/__tests__/useGestureRecognizer.test.tsx +570 -0
  798. package/src/gestures/haptics.ts +203 -0
  799. package/src/gestures/index.ts +79 -0
  800. package/src/gestures/nativeScroll.ts +277 -0
  801. package/src/gestures/touchAction.ts +191 -0
  802. package/src/gestures/touchActionRule.ts +157 -0
  803. package/src/gestures/types.ts +30 -9
  804. package/src/gestures/useGestureRecognizer.ts +305 -0
  805. package/src/hooks/index.ts +5 -1
  806. package/src/hooks/modalAnnounce.ts +129 -72
  807. package/src/hooks/scrollKeyboardDelegation.test.ts +33 -0
  808. package/src/hooks/scrollKeyboardDelegation.ts +9 -3
  809. package/src/hooks/useAdaptivePresentation.ts +4 -1
  810. package/src/hooks/useAnnounce.doc.mjs +35 -3
  811. package/src/hooks/useAnnounce.replace.test.tsx +516 -0
  812. package/src/hooks/useAnnounce.ts +209 -102
  813. package/src/hooks/useAnnounceRenderedText.adopters.test.tsx +10 -1
  814. package/src/hooks/useAnnounceRenderedText.ts +17 -3
  815. package/src/hooks/useBusyAnnouncement.ts +7 -10
  816. package/src/hooks/useMenuHover.ts +15 -1
  817. package/src/hooks/useScrollOverflow.doc.mjs +1 -1
  818. package/src/hooks/useScrollOverflow.test.tsx +102 -1
  819. package/src/hooks/useScrollOverflow.ts +59 -10
  820. package/src/i18n/__tests__/useListFormatter.test.tsx +58 -0
  821. package/src/i18n/generated-locales/af-ZA.generated.ts +0 -7
  822. package/src/i18n/generated-locales/ar-SA.generated.ts +0 -6
  823. package/src/i18n/generated-locales/ca-ES.generated.ts +0 -7
  824. package/src/i18n/generated-locales/cs-CZ.generated.ts +0 -6
  825. package/src/i18n/generated-locales/da-DK.generated.ts +0 -6
  826. package/src/i18n/generated-locales/de-DE.generated.ts +0 -6
  827. package/src/i18n/generated-locales/el-GR.generated.ts +0 -7
  828. package/src/i18n/generated-locales/en.generated.ts +9 -6
  829. package/src/i18n/generated-locales/es-ES.generated.ts +0 -7
  830. package/src/i18n/generated-locales/fi-FI.generated.ts +0 -6
  831. package/src/i18n/generated-locales/fr-FR.generated.ts +0 -7
  832. package/src/i18n/generated-locales/he-IL.generated.ts +0 -6
  833. package/src/i18n/generated-locales/hu-HU.generated.ts +0 -6
  834. package/src/i18n/generated-locales/it-IT.generated.ts +0 -7
  835. package/src/i18n/generated-locales/ja-JP.generated.ts +0 -6
  836. package/src/i18n/generated-locales/ko-KR.generated.ts +0 -6
  837. package/src/i18n/generated-locales/nl-NL.generated.ts +0 -6
  838. package/src/i18n/generated-locales/no-NO.generated.ts +0 -6
  839. package/src/i18n/generated-locales/pl-PL.generated.ts +0 -7
  840. package/src/i18n/generated-locales/pseudo.generated.ts +9 -6
  841. package/src/i18n/generated-locales/pt-BR.generated.ts +0 -7
  842. package/src/i18n/generated-locales/pt-PT.generated.ts +0 -7
  843. package/src/i18n/generated-locales/ro-RO.generated.ts +0 -6
  844. package/src/i18n/generated-locales/ru-RU.generated.ts +0 -7
  845. package/src/i18n/generated-locales/sr-SP.generated.ts +0 -6
  846. package/src/i18n/generated-locales/sv-SE.generated.ts +0 -6
  847. package/src/i18n/generated-locales/tr-TR.generated.ts +0 -7
  848. package/src/i18n/generated-locales/uk-UA.generated.ts +0 -7
  849. package/src/i18n/generated-locales/vi-VN.generated.ts +0 -6
  850. package/src/i18n/generated-locales/zh-CN.generated.ts +0 -6
  851. package/src/i18n/generated-locales/zh-TW.generated.ts +0 -6
  852. package/src/i18n/useListFormatter.ts +42 -0
  853. package/src/motion/MEASUREMENTS.md +2 -1
  854. package/src/motion/README.md +113 -33
  855. package/src/motion/__tests__/animator.interaction.browser.spec.ts +843 -0
  856. package/src/motion/__tests__/motionBundle.ts +14 -0
  857. package/src/motion/animator.test.ts +1125 -32
  858. package/src/motion/animator.ts +932 -130
  859. package/src/motion/coast.ts +10 -3
  860. package/src/motion/reducedMotion.ts +12 -2
  861. package/src/motion/reducedMotionPlan.test.ts +26 -0
  862. package/src/motion/reducedMotionPlan.ts +20 -1
  863. package/src/motion/resolveMotion.test.ts +123 -0
  864. package/src/motion/resolveMotion.ts +68 -0
  865. package/src/motion/roleValue.ts +2 -1
  866. package/src/motion/roles.test.ts +21 -4
  867. package/src/motion/uikit/tableImports.test.ts +293 -0
  868. package/src/motion/uikit/timing.ts +15 -1
  869. package/src/motion/uikit/values.test.ts +23 -12
  870. package/src/theme/Theme.doc.mjs +1 -1
  871. package/src/theme/defineTheme.ts +117 -8
  872. package/src/theme/derivedVarRegistry.test.ts +4 -0
  873. package/src/theme/domainTokens/domainTokenDefaults.ts +19 -0
  874. package/src/theme/domainTokens/index.ts +6 -10
  875. package/src/theme/expandMotionScale.test.ts +1 -1
  876. package/src/theme/index.ts +5 -0
  877. package/src/theme/motionKnobs.ts +82 -0
  878. package/src/theme/resolveThemeValues.ts +68 -6
  879. package/src/theme/themeAdaptations.ts +52 -12
  880. package/src/theme/themeMotion.test.ts +620 -0
  881. package/src/theme/themeMotion.ts +221 -0
  882. package/src/theme/tokenReferences.ts +149 -0
  883. package/src/theme/tokens.stylex.ts +10 -0
  884. package/src/theme/tokens.ts +15 -158
  885. package/src/utils/focusOutline.stylex.ts +28 -0
  886. package/src/utils/focusReturn.ts +17 -6
  887. package/src/utils/getNodeText.test.ts +24 -0
  888. package/src/utils/getNodeText.ts +37 -0
  889. package/src/utils/interactionModality.test.ts +45 -1
  890. package/src/utils/interactionModality.ts +64 -5
  891. package/src/utils/interactionOverlay.stylex.ts +12 -3
  892. package/src/utils/plainDate.test.ts +90 -0
  893. package/src/utils/plainDate.ts +58 -3
  894. package/src/utils/presentation.test.ts +380 -0
  895. package/src/utils/presentation.ts +180 -0
  896. package/src/utils/pressFeedback.test.ts +138 -0
  897. package/src/utils/pressFeedback.ts +34 -11
  898. package/src/utils/pressGesture.test.ts +9 -0
  899. package/src/utils/pressPaintPriority.test.ts +80 -0
  900. package/src/utils/primaryClick.test.ts +38 -0
  901. package/src/utils/primaryClick.ts +28 -0
  902. package/src/utils/sharedMutationObserver.test.ts +54 -1
  903. package/src/utils/sharedMutationObserver.ts +87 -29
  904. package/src/utils/timeFormat.test.ts +204 -0
  905. package/src/utils/timeFormat.ts +314 -0
  906. package/src/utils/touchPresentation.stylex.ts +43 -0
  907. package/src/utils/touchPresentation.test.ts +140 -1
  908. package/src/utils/touchPresentation.ts +13 -8
  909. package/src/utils/touchQueries.ts +15 -0
  910. package/src/utils/unicodeDigits.test.ts +44 -0
  911. package/src/utils/unicodeDigits.ts +71 -0
  912. package/src/utils/useFocusAcrossSwap.ts +55 -0
@@ -3,7 +3,8 @@
3
3
  /**
4
4
  * @file useScrollOverflow.test.tsx
5
5
  * @input Uses vitest, @testing-library/react, useScrollOverflow
6
- * @output Unit tests for the hook's measurement and its rendered-only gate
6
+ * @output Unit tests for the hook's measurement, what it observes (the
7
+ * container's scroll and size, and its content), and its rendered-only gate
7
8
  * @position Testing; jsdom lays nothing out, so the scroll box is faked and
8
9
  * `checkVisibility` is stubbed per element.
9
10
  */
@@ -18,7 +19,10 @@ import {useScrollOverflow} from './useScrollOverflow';
18
19
  let deliverResize: ((entries: ResizeObserverEntry[]) => void) | null = null;
19
20
 
20
21
  class FakeResizeObserver implements ResizeObserver {
22
+ /** The shared observer, so a test can read what it observes. */
23
+ static last: FakeResizeObserver | null = null;
21
24
  constructor(callback: ResizeObserverCallback) {
25
+ FakeResizeObserver.last = this;
22
26
  deliverResize = entries => callback(entries, this);
23
27
  }
24
28
  observe = vi.fn();
@@ -69,7 +73,9 @@ beforeEach(() => {
69
73
 
70
74
  afterEach(() => {
71
75
  vi.unstubAllGlobals();
76
+ vi.restoreAllMocks();
72
77
  deliverResize = null;
78
+ FakeResizeObserver.last = null;
73
79
  });
74
80
 
75
81
  describe('useScrollOverflow', () => {
@@ -200,6 +206,101 @@ describe('useScrollOverflow', () => {
200
206
  unmount();
201
207
  });
202
208
 
209
+ // The overflow is the content's width against the container's: it changes
210
+ // when the content does, with the container keeping its size.
211
+ it('measures again when a child is added or removed, though the container keeps its size', async () => {
212
+ const el = document.createElement('div');
213
+ fakeScrollBox(el, {scrollWidth: 300, clientWidth: 300});
214
+ stubRendered(el, true);
215
+ const {result, unmount} = renderHook(() => useScrollOverflow());
216
+ act(() => {
217
+ result.current.scrollRef(el);
218
+ });
219
+ expect(result.current.hasOverflow).toBe(false);
220
+
221
+ const child = document.createElement('div');
222
+ fakeScrollBox(el, {scrollWidth: 600, clientWidth: 300});
223
+ await act(async () => {
224
+ el.append(child);
225
+ });
226
+ expect(result.current.hasOverflow).toBe(true);
227
+
228
+ fakeScrollBox(el, {scrollWidth: 300, clientWidth: 300});
229
+ await act(async () => {
230
+ child.remove();
231
+ });
232
+ expect(result.current.hasOverflow).toBe(false);
233
+ unmount();
234
+ });
235
+
236
+ it('measures again when a child resizes, though the container keeps its size', () => {
237
+ const el = document.createElement('div');
238
+ const child = document.createElement('div');
239
+ el.append(child);
240
+ fakeScrollBox(el, {scrollWidth: 300, clientWidth: 300});
241
+ stubRendered(el, true);
242
+ const {result, unmount} = renderHook(() => useScrollOverflow());
243
+ act(() => {
244
+ result.current.scrollRef(el);
245
+ });
246
+ expect(result.current.hasOverflow).toBe(false);
247
+
248
+ // The child's content grows past the container.
249
+ fakeScrollBox(el, {scrollWidth: 600, clientWidth: 300});
250
+ act(() => {
251
+ deliverResize?.([resizeEntry(child)]);
252
+ });
253
+ expect(result.current.hasOverflow).toBe(true);
254
+ unmount();
255
+ });
256
+
257
+ it("measures again when the container's class or style changes, as a new gap does", async () => {
258
+ const el = document.createElement('div');
259
+ fakeScrollBox(el, {scrollWidth: 300, clientWidth: 300});
260
+ stubRendered(el, true);
261
+ const {result, unmount} = renderHook(() => useScrollOverflow());
262
+ act(() => {
263
+ result.current.scrollRef(el);
264
+ });
265
+ expect(result.current.hasOverflow).toBe(false);
266
+
267
+ fakeScrollBox(el, {scrollWidth: 340, clientWidth: 300});
268
+ await act(async () => {
269
+ el.className = 'wider-gap';
270
+ });
271
+ expect(result.current.hasOverflow).toBe(true);
272
+
273
+ fakeScrollBox(el, {scrollWidth: 300, clientWidth: 300});
274
+ await act(async () => {
275
+ el.style.columnGap = '0px';
276
+ });
277
+ expect(result.current.hasOverflow).toBe(false);
278
+ unmount();
279
+ });
280
+
281
+ it('stops observing the content when the container detaches', () => {
282
+ const el = document.createElement('div');
283
+ const child = document.createElement('div');
284
+ el.append(child);
285
+ fakeScrollBox(el, {scrollWidth: 300, clientWidth: 300});
286
+ stubRendered(el, true);
287
+ const disconnect = vi.spyOn(MutationObserver.prototype, 'disconnect');
288
+ const {result, unmount} = renderHook(() => useScrollOverflow());
289
+ act(() => {
290
+ result.current.scrollRef(el);
291
+ });
292
+ const observer = FakeResizeObserver.last;
293
+ expect(observer?.observe).toHaveBeenCalledWith(child);
294
+
295
+ act(() => {
296
+ result.current.scrollRef(null);
297
+ });
298
+ expect(disconnect).toHaveBeenCalled();
299
+ expect(observer?.unobserve).toHaveBeenCalledWith(child);
300
+ expect(observer?.unobserve).toHaveBeenCalledWith(el);
301
+ unmount();
302
+ });
303
+
203
304
  it('follows a scroll on a rendered container', () => {
204
305
  const el = document.createElement('div');
205
306
  fakeScrollBox(el, {scrollWidth: 600, clientWidth: 300});
@@ -10,12 +10,15 @@
10
10
  * state
11
11
  *
12
12
  * Observes a scroll container and reports whether content overflows at the
13
- * start, end, or both edges. Updates on every scroll, and on a resize while
14
- * the container is rendered: a layout read on an element the browser is not
13
+ * start, end, or both edges. Updates on every scroll, and while the container
14
+ * is rendered on what else changes the overflow with or without the
15
+ * container resizing: its own size, a child's size (a slide's content
16
+ * growing), a child added or removed, and its class or style (a new gap or
17
+ * padding). A layout read on an element the browser is not
15
18
  * rendering (an ancestor with `display: none`, or a `content-visibility:
16
19
  * hidden` subtree) either answers zeros or makes the browser lay out that
17
- * whole hidden subtree for the answer, so a resize observation delivered for
18
- * a hidden container, and the measurement at registration inside one, are
20
+ * whole hidden subtree for the answer, so an observation delivered for a
21
+ * hidden container, and the measurement at registration inside one, are
19
22
  * skipped; the hook keeps its last state until the resize observation that
20
23
  * follows the reveal (one frame after it paints). A scroll is measured
21
24
  * whether or not the container is rendered: a scroll of a hidden container
@@ -52,11 +55,57 @@ function isRendered(el: HTMLElement): boolean {
52
55
  return typeof el.checkVisibility !== 'function' || el.checkVisibility();
53
56
  }
54
57
 
58
+ /**
59
+ * Observes what changes `el`'s overflow besides its scroll: its own size,
60
+ * each child's size, the children added or removed, and its class or style.
61
+ * Returns the teardown, which ends every observation.
62
+ */
63
+ function observeContent(el: HTMLElement, measure: () => void): () => void {
64
+ const unobserveContainer = observeResize(el, measure);
65
+ const unobserveChildren = new Map<Element, () => void>();
66
+ const followChildren = () => {
67
+ const children = new Set(el.children);
68
+ for (const [child, unobserve] of unobserveChildren) {
69
+ if (!children.has(child)) {
70
+ unobserve();
71
+ unobserveChildren.delete(child);
72
+ }
73
+ }
74
+ for (const child of children) {
75
+ if (!unobserveChildren.has(child)) {
76
+ unobserveChildren.set(child, observeResize(child, measure));
77
+ }
78
+ }
79
+ };
80
+ followChildren();
81
+ const mutations =
82
+ typeof MutationObserver === 'function'
83
+ ? new MutationObserver(() => {
84
+ followChildren();
85
+ measure();
86
+ })
87
+ : null;
88
+ mutations?.observe(el, {
89
+ childList: true,
90
+ attributes: true,
91
+ attributeFilter: ['class', 'style'],
92
+ });
93
+ return () => {
94
+ mutations?.disconnect();
95
+ for (const unobserve of unobserveChildren.values()) {
96
+ unobserve();
97
+ }
98
+ unobserveChildren.clear();
99
+ unobserveContainer();
100
+ };
101
+ }
102
+
55
103
  /**
56
104
  * Tracks scroll overflow state for a horizontally scrollable container.
57
105
  *
58
106
  * Returns a ref callback to attach to the scroll container and a state
59
- * object that updates as the user scrolls or the container resizes.
107
+ * object that updates as the user scrolls, the container resizes, or its
108
+ * content changes.
60
109
  *
61
110
  * @example
62
111
  * ```
@@ -95,10 +144,10 @@ export function useScrollOverflow() {
95
144
  });
96
145
  }, []);
97
146
 
98
- // Registration and resize: only a rendered container. A hidden one has no
99
- // edges to report, and reading its layout would make the browser render
100
- // the hidden subtree it sits in; the resize observation that follows the
101
- // reveal measures again.
147
+ // Registration, resize and content changes: only a rendered container. A
148
+ // hidden one has no edges to report, and reading its layout would make the
149
+ // browser render the hidden subtree it sits in; the resize observation that
150
+ // follows the reveal measures again.
102
151
  const measure = useCallback(() => {
103
152
  const el = elRef.current;
104
153
  if (el && isRendered(el)) {
@@ -129,7 +178,7 @@ export function useScrollOverflow() {
129
178
 
130
179
  if (el) {
131
180
  el.addEventListener('scroll', measureOnScroll, {passive: true});
132
- unobserveRef.current = observeResize(el, measure);
181
+ unobserveRef.current = observeContent(el, measure);
133
182
  }
134
183
  },
135
184
  [measure, measureOnScroll],
@@ -0,0 +1,58 @@
1
+ // Copyright (c) Meta Platforms, Inc. and affiliates.
2
+
3
+ /**
4
+ * @file useListFormatter.test.tsx
5
+ * @input packages/core/src/i18n/useListFormatter.ts, InternationalizationProvider
6
+ * @output Unit tests for the internal provider-aware list formatter
7
+ * @position Colocated tests; the platform Intl.ListFormat is the independent
8
+ * oracle for each locale.
9
+ */
10
+
11
+ import type {ReactNode} from 'react';
12
+ import {describe, expect, test} from 'vitest';
13
+ import {renderHook} from '@testing-library/react';
14
+ import {useListFormatter} from '../useListFormatter';
15
+ import {InternationalizationProvider} from '../InternationalizationProvider';
16
+
17
+ const items = ['"a.png" is not an accepted file type', '"b.pdf" exceeds 1 MB'];
18
+
19
+ function wrapperFor(locale: string) {
20
+ return ({children}: {children: ReactNode}) => (
21
+ <InternationalizationProvider locale={locale}>
22
+ {children}
23
+ </InternationalizationProvider>
24
+ );
25
+ }
26
+
27
+ const oracle = (locale: string, list: string[]) =>
28
+ new Intl.ListFormat(locale, {type: 'conjunction', style: 'narrow'}).format(
29
+ list,
30
+ );
31
+
32
+ describe('useListFormatter', () => {
33
+ test('joins with the en fallback when rendered without a provider', () => {
34
+ const {result} = renderHook(() => useListFormatter());
35
+ expect(result.current(items)).toBe(oracle('en', items));
36
+ });
37
+
38
+ test('joins in the provider locale', () => {
39
+ const three = ['un', 'deux', 'trois'];
40
+ const {result: zh} = renderHook(() => useListFormatter(), {
41
+ wrapper: wrapperFor('zh-CN'),
42
+ });
43
+ const {result: en} = renderHook(() => useListFormatter(), {
44
+ wrapper: wrapperFor('en'),
45
+ });
46
+ expect(zh.current(three)).toBe(oracle('zh-CN', three));
47
+ expect(zh.current(three)).not.toBe(en.current(three));
48
+ });
49
+
50
+ test('keeps the same function while the locale is unchanged', () => {
51
+ const {result, rerender} = renderHook(() => useListFormatter(), {
52
+ wrapper: wrapperFor('de-DE'),
53
+ });
54
+ const first = result.current;
55
+ rerender();
56
+ expect(result.current).toBe(first);
57
+ });
58
+ });
@@ -189,13 +189,6 @@ const runtimeCatalog: Readonly<Record<string, string>> = {
189
189
  '@astryx.table.sort.ascending': 'Sorteer opgaande',
190
190
  '@astryx.table.sort.descending': 'Sorteer afgaande',
191
191
  '@astryx.table.sort.clear': 'Vee sortering uit',
192
- '@astryx.table.sort.direction.ascending': 'opgaande',
193
- '@astryx.table.sort.direction.descending': 'afgaande',
194
- '@astryx.table.sort.sortBy': 'Sorteer volgens {label}',
195
- '@astryx.table.sort.sortedBy':
196
- 'Sorteer volgens {label}, gesorteer {direction}',
197
- '@astryx.table.sort.sortedByWithPriority':
198
- 'Sorteer volgens {label}, gesorteer {direction}, prioriteit {rank, number} van {total, number}',
199
192
  '@astryx.toast.dismiss': 'Maak kennisgewing toe',
200
193
  '@astryx.toast.viewport': 'Kennisgewings',
201
194
  '@astryx.tokenizer.clearAll': 'Vee alles uit',
@@ -188,12 +188,6 @@ const runtimeCatalog: Readonly<Record<string, string>> = {
188
188
  '@astryx.table.sort.ascending': 'ترتيب تصاعدي',
189
189
  '@astryx.table.sort.descending': 'ترتيب تنازلي',
190
190
  '@astryx.table.sort.clear': 'مسح الترتيب',
191
- '@astryx.table.sort.direction.ascending': 'تصاعدي',
192
- '@astryx.table.sort.direction.descending': 'تنازلي',
193
- '@astryx.table.sort.sortBy': 'الترتيب حسب {label}',
194
- '@astryx.table.sort.sortedBy': 'الترتيب حسب {label}، مُرتَّب {direction}',
195
- '@astryx.table.sort.sortedByWithPriority':
196
- 'الترتيب حسب {label}، مُرتَّب {direction}، الأولوية {rank, number} من {total, number}',
197
191
  '@astryx.toast.dismiss': 'تجاهل الإشعار',
198
192
  '@astryx.toast.viewport': 'الإشعارات',
199
193
  '@astryx.tokenizer.clearAll': 'مسح الكل',
@@ -195,13 +195,6 @@ const runtimeCatalog: Readonly<Record<string, string>> = {
195
195
  '@astryx.table.sort.ascending': 'Ordena ascendentment',
196
196
  '@astryx.table.sort.descending': 'Ordena descendentment',
197
197
  '@astryx.table.sort.clear': 'Esborra l’ordenació',
198
- '@astryx.table.sort.direction.ascending': 'ascendent',
199
- '@astryx.table.sort.direction.descending': 'descendent',
200
- '@astryx.table.sort.sortBy': 'Ordena per {label}',
201
- '@astryx.table.sort.sortedBy':
202
- 'Ordena per {label}, ordenat de manera {direction}',
203
- '@astryx.table.sort.sortedByWithPriority':
204
- 'Ordena per {label}, ordenat de manera {direction}, prioritat {rank, number} de {total, number}',
205
198
  '@astryx.toast.dismiss': 'Descarta la notificació',
206
199
  '@astryx.toast.viewport': 'Notificacions',
207
200
  '@astryx.tokenizer.clearAll': 'Esborra-ho tot',
@@ -189,12 +189,6 @@ const runtimeCatalog: Readonly<Record<string, string>> = {
189
189
  '@astryx.table.sort.ascending': 'Seřadit vzestupně',
190
190
  '@astryx.table.sort.descending': 'Seřadit sestupně',
191
191
  '@astryx.table.sort.clear': 'Vymazat řazení',
192
- '@astryx.table.sort.direction.ascending': 'vzestupně',
193
- '@astryx.table.sort.direction.descending': 'sestupně',
194
- '@astryx.table.sort.sortBy': 'Seřadit podle {label}',
195
- '@astryx.table.sort.sortedBy': 'Seřadit podle {label}, seřazeno {direction}',
196
- '@astryx.table.sort.sortedByWithPriority':
197
- 'Seřadit podle {label}, seřazeno {direction}, priorita {rank, number} z {total, number}',
198
192
  '@astryx.toast.dismiss': 'Zavřít oznámení',
199
193
  '@astryx.toast.viewport': 'Oznámení',
200
194
  '@astryx.tokenizer.clearAll': 'Vymazat vše',
@@ -190,12 +190,6 @@ const runtimeCatalog: Readonly<Record<string, string>> = {
190
190
  '@astryx.table.sort.ascending': 'Sortér stigende',
191
191
  '@astryx.table.sort.descending': 'Sortér faldende',
192
192
  '@astryx.table.sort.clear': 'Ryd sortering',
193
- '@astryx.table.sort.direction.ascending': 'stigende',
194
- '@astryx.table.sort.direction.descending': 'faldende',
195
- '@astryx.table.sort.sortBy': 'Sortér efter {label}',
196
- '@astryx.table.sort.sortedBy': 'Sortér efter {label}, sorteret {direction}',
197
- '@astryx.table.sort.sortedByWithPriority':
198
- 'Sortér efter {label}, sorteret {direction}, prioritet {rank, number} af {total, number}',
199
193
  '@astryx.toast.dismiss': 'Luk notifikation',
200
194
  '@astryx.toast.viewport': 'Notifikationer',
201
195
  '@astryx.tokenizer.clearAll': 'Ryd alle',
@@ -193,12 +193,6 @@ const runtimeCatalog: Readonly<Record<string, string>> = {
193
193
  '@astryx.table.sort.ascending': 'Aufsteigend sortieren',
194
194
  '@astryx.table.sort.descending': 'Absteigend sortieren',
195
195
  '@astryx.table.sort.clear': 'Sortierung aufheben',
196
- '@astryx.table.sort.direction.ascending': 'aufsteigend',
197
- '@astryx.table.sort.direction.descending': 'absteigend',
198
- '@astryx.table.sort.sortBy': 'Nach {label} sortieren',
199
- '@astryx.table.sort.sortedBy': 'Nach {label} sortieren, sortiert {direction}',
200
- '@astryx.table.sort.sortedByWithPriority':
201
- 'Nach {label} sortieren, sortiert {direction}, Priorität {rank, number} von {total, number}',
202
196
  '@astryx.toast.dismiss': 'Benachrichtigung schließen',
203
197
  '@astryx.toast.viewport': 'Benachrichtigungen',
204
198
  '@astryx.tokenizer.clearAll': 'Alle löschen',
@@ -193,13 +193,6 @@ const runtimeCatalog: Readonly<Record<string, string>> = {
193
193
  '@astryx.table.sort.ascending': 'Αύξουσα ταξινόμηση',
194
194
  '@astryx.table.sort.descending': 'Φθίνουσα ταξινόμηση',
195
195
  '@astryx.table.sort.clear': 'Απαλοιφή ταξινόμησης',
196
- '@astryx.table.sort.direction.ascending': 'αύξουσα',
197
- '@astryx.table.sort.direction.descending': 'φθίνουσα',
198
- '@astryx.table.sort.sortBy': 'Ταξινόμηση κατά {label}',
199
- '@astryx.table.sort.sortedBy':
200
- 'Ταξινόμηση κατά {label}, ταξινομημένο σε {direction}',
201
- '@astryx.table.sort.sortedByWithPriority':
202
- 'Ταξινόμηση κατά {label}, ταξινομημένο σε {direction}, προτεραιότητα {rank, number} από {total, number}',
203
196
  '@astryx.toast.dismiss': 'Παράβλεψη ειδοποίησης',
204
197
  '@astryx.toast.viewport': 'Ειδοποιήσεις',
205
198
  '@astryx.tokenizer.clearAll': 'Απαλοιφή όλων',
@@ -230,9 +230,12 @@ const runtimeCatalog: Readonly<Record<string, string>> = {
230
230
  '@astryx.sideNav.label': 'Side navigation',
231
231
  '@astryx.sideNav.resizeSidebar': 'Resize sidebar',
232
232
  '@astryx.sideNav.heading.openMenu': 'Open menu',
233
+ '@astryx.slider.minimumThumb': 'Minimum value',
234
+ '@astryx.slider.maximumThumb': 'Maximum value',
233
235
  '@astryx.tabList.label': 'Tabs',
234
236
  '@astryx.table.label': 'Table',
235
237
  '@astryx.table.noData': 'No data',
238
+ '@astryx.table.columnResize.resizeColumn': 'Resize column {label}',
236
239
  '@astryx.table.filter.allPlaceholder': 'All',
237
240
  '@astryx.table.filter.reset': 'Reset',
238
241
  '@astryx.table.filter.apply': 'Apply',
@@ -246,12 +249,7 @@ const runtimeCatalog: Readonly<Record<string, string>> = {
246
249
  '@astryx.table.sort.ascending': 'Sort ascending',
247
250
  '@astryx.table.sort.descending': 'Sort descending',
248
251
  '@astryx.table.sort.clear': 'Clear sort',
249
- '@astryx.table.sort.direction.ascending': 'ascending',
250
- '@astryx.table.sort.direction.descending': 'descending',
251
- '@astryx.table.sort.sortBy': 'Sort by {label}',
252
- '@astryx.table.sort.sortedBy': 'Sort by {label}, sorted {direction}',
253
- '@astryx.table.sort.sortedByWithPriority':
254
- 'Sort by {label}, sorted {direction}, priority {rank, number} of {total, number}',
252
+ '@astryx.table.sort.priority': 'Priority {rank, number} of {total, number}',
255
253
  '@astryx.toast.dismiss': 'Dismiss notification',
256
254
  '@astryx.toast.viewport': 'Notifications',
257
255
  '@astryx.tokenizer.clearAll': 'Clear all',
@@ -311,6 +309,7 @@ const runtimeCatalog: Readonly<Record<string, string>> = {
311
309
  '@astryx.outline.label': 'Table of contents',
312
310
  '@astryx.powersearch.label': 'Search',
313
311
  '@astryx.powersearch.placeholder': 'Search…',
312
+ '@astryx.powersearch.allFiltersRemoved': 'All filters removed',
314
313
  '@astryx.resizable.collapsed': 'Collapsed',
315
314
  '@astryx.resizable.handle.label': 'Resize handle',
316
315
  '@astryx.selector.placeholder': 'Select…',
@@ -427,6 +426,7 @@ const runtimeCatalog: Readonly<Record<string, string>> = {
427
426
  '@astryx.tableTree.expandRow': 'Expand row',
428
427
  '@astryx.tableTree.collapseAllRows': 'Collapse all rows',
429
428
  '@astryx.tableTree.expandAllRows': 'Expand all rows',
429
+ '@astryx.textArea.counter': '{count, number}/{limit, number}',
430
430
  '@astryx.textArea.charactersRemaining':
431
431
  '{count, number} {count, plural, one {character} other {characters}} remaining',
432
432
  '@astryx.textArea.charactersOverLimit':
@@ -449,6 +449,8 @@ const runtimeCatalog: Readonly<Record<string, string>> = {
449
449
  '@astryx.multiSelector.allSelected': 'All selected',
450
450
  '@astryx.multiSelector.selectionCount':
451
451
  '{count, number} of {total, number} selected',
452
+ '@astryx.multiSelector.selectedCount':
453
+ '{count, plural, one {# selected} other {# selected}}',
452
454
  '@astryx.multiSelector.createOption': 'Create "{query}"',
453
455
  '@astryx.multiSelector.optionCreated': '{label} created',
454
456
  '@astryx.multiSelector.emptySearchResults': 'No results found',
@@ -595,6 +597,7 @@ const runtimeCatalog: Readonly<Record<string, string>> = {
595
597
  '@astryx.comments.resolveFailed': "This thread couldn't be resolved.",
596
598
  '@astryx.comments.resolved': 'Resolved',
597
599
  '@astryx.comments.resolvedBy': 'Resolved by {name}',
600
+ '@astryx.comments.errorAnnouncement': '{title} {description}',
598
601
  '@astryx.comments.retryFailed': "Retrying didn't work.",
599
602
  '@astryx.comments.sendFailed': "Couldn't send this comment.",
600
603
  '@astryx.comments.threadLabel': 'Thread by {name}',
@@ -197,13 +197,6 @@ const runtimeCatalog: Readonly<Record<string, string>> = {
197
197
  '@astryx.table.sort.ascending': 'Ordenar ascendente',
198
198
  '@astryx.table.sort.descending': 'Ordenar descendente',
199
199
  '@astryx.table.sort.clear': 'Quitar el orden',
200
- '@astryx.table.sort.direction.ascending': 'ascendente',
201
- '@astryx.table.sort.direction.descending': 'descendente',
202
- '@astryx.table.sort.sortBy': 'Ordenar por {label}',
203
- '@astryx.table.sort.sortedBy':
204
- 'Ordenar por {label}, ordenado en orden {direction}',
205
- '@astryx.table.sort.sortedByWithPriority':
206
- 'Ordenar por {label}, ordenado en orden {direction}, prioridad {rank, number} de {total, number}',
207
200
  '@astryx.toast.dismiss': 'Descartar la notificación',
208
201
  '@astryx.toast.viewport': 'Notificaciones',
209
202
  '@astryx.tokenizer.clearAll': 'Borrar todo',
@@ -191,12 +191,6 @@ const runtimeCatalog: Readonly<Record<string, string>> = {
191
191
  '@astryx.table.sort.ascending': 'Järjestä nousevasti',
192
192
  '@astryx.table.sort.descending': 'Järjestä laskevasti',
193
193
  '@astryx.table.sort.clear': 'Tyhjennä järjestys',
194
- '@astryx.table.sort.direction.ascending': 'nouseva',
195
- '@astryx.table.sort.direction.descending': 'laskeva',
196
- '@astryx.table.sort.sortBy': 'Järjestä: {label}',
197
- '@astryx.table.sort.sortedBy': 'Järjestä: {label}, järjestys {direction}',
198
- '@astryx.table.sort.sortedByWithPriority':
199
- 'Järjestä: {label}, järjestys {direction}, prioriteetti {rank, number} / {total, number}',
200
194
  '@astryx.toast.dismiss': 'Hylkää ilmoitus',
201
195
  '@astryx.toast.viewport': 'Ilmoitukset',
202
196
  '@astryx.tokenizer.clearAll': 'Tyhjennä kaikki',
@@ -194,13 +194,6 @@ const runtimeCatalog: Readonly<Record<string, string>> = {
194
194
  '@astryx.table.sort.ascending': 'Trier par ordre croissant',
195
195
  '@astryx.table.sort.descending': 'Trier par ordre décroissant',
196
196
  '@astryx.table.sort.clear': 'Effacer le tri',
197
- '@astryx.table.sort.direction.ascending': 'croissant',
198
- '@astryx.table.sort.direction.descending': 'décroissant',
199
- '@astryx.table.sort.sortBy': 'Trier par {label}',
200
- '@astryx.table.sort.sortedBy':
201
- 'Trier par {label}, trié par ordre {direction}',
202
- '@astryx.table.sort.sortedByWithPriority':
203
- 'Trier par {label}, trié par ordre {direction}, priorité {rank, number} sur {total, number}',
204
197
  '@astryx.toast.dismiss': 'Ignorer la notification',
205
198
  '@astryx.toast.viewport': 'Notifications',
206
199
  '@astryx.tokenizer.clearAll': 'Tout effacer',
@@ -186,12 +186,6 @@ const runtimeCatalog: Readonly<Record<string, string>> = {
186
186
  '@astryx.table.sort.ascending': 'מיון בסדר עולה',
187
187
  '@astryx.table.sort.descending': 'מיון בסדר יורד',
188
188
  '@astryx.table.sort.clear': 'נקה את המיון',
189
- '@astryx.table.sort.direction.ascending': 'עולה',
190
- '@astryx.table.sort.direction.descending': 'יורד',
191
- '@astryx.table.sort.sortBy': 'מיון לפי {label}',
192
- '@astryx.table.sort.sortedBy': 'מיון לפי {label}, ממוין {direction}',
193
- '@astryx.table.sort.sortedByWithPriority':
194
- 'מיון לפי {label}, ממוין {direction}, עדיפות {rank, number} מתוך {total, number}',
195
189
  '@astryx.toast.dismiss': 'סגור את ההתראה',
196
190
  '@astryx.toast.viewport': 'התראות',
197
191
  '@astryx.tokenizer.clearAll': 'נקה הכול',
@@ -195,12 +195,6 @@ const runtimeCatalog: Readonly<Record<string, string>> = {
195
195
  '@astryx.table.sort.ascending': 'Növekvő rendezés',
196
196
  '@astryx.table.sort.descending': 'Csökkenő rendezés',
197
197
  '@astryx.table.sort.clear': 'Rendezés törlése',
198
- '@astryx.table.sort.direction.ascending': 'növekvő',
199
- '@astryx.table.sort.direction.descending': 'csökkenő',
200
- '@astryx.table.sort.sortBy': 'Rendezés: {label}',
201
- '@astryx.table.sort.sortedBy': 'Rendezés: {label}, rendezve: {direction}',
202
- '@astryx.table.sort.sortedByWithPriority':
203
- 'Rendezés: {label}, rendezve: {direction}, prioritás: {rank, number} / {total, number}',
204
198
  '@astryx.toast.dismiss': 'Értesítés elvetése',
205
199
  '@astryx.toast.viewport': 'Értesítések',
206
200
  '@astryx.tokenizer.clearAll': 'Összes törlése',
@@ -193,13 +193,6 @@ const runtimeCatalog: Readonly<Record<string, string>> = {
193
193
  '@astryx.table.sort.ascending': 'Ordina in modo crescente',
194
194
  '@astryx.table.sort.descending': 'Ordina in modo decrescente',
195
195
  '@astryx.table.sort.clear': 'Rimuovi l’ordinamento',
196
- '@astryx.table.sort.direction.ascending': 'crescente',
197
- '@astryx.table.sort.direction.descending': 'decrescente',
198
- '@astryx.table.sort.sortBy': 'Ordina per {label}',
199
- '@astryx.table.sort.sortedBy':
200
- 'Ordina per {label}, ordinato in modo {direction}',
201
- '@astryx.table.sort.sortedByWithPriority':
202
- 'Ordina per {label}, ordinato in modo {direction}, priorità {rank, number} di {total, number}',
203
196
  '@astryx.toast.dismiss': 'Ignora la notifica',
204
197
  '@astryx.toast.viewport': 'Notifiche',
205
198
  '@astryx.tokenizer.clearAll': 'Cancella tutto',
@@ -189,12 +189,6 @@ const runtimeCatalog: Readonly<Record<string, string>> = {
189
189
  '@astryx.table.sort.ascending': '昇順で並べ替え',
190
190
  '@astryx.table.sort.descending': '降順で並べ替え',
191
191
  '@astryx.table.sort.clear': '並べ替えをクリア',
192
- '@astryx.table.sort.direction.ascending': '昇順',
193
- '@astryx.table.sort.direction.descending': '降順',
194
- '@astryx.table.sort.sortBy': '{label} で並べ替え',
195
- '@astryx.table.sort.sortedBy': '{label} で並べ替え、{direction}',
196
- '@astryx.table.sort.sortedByWithPriority':
197
- '{label} で並べ替え、{direction}、優先度 {total, number} 中 {rank, number}',
198
192
  '@astryx.toast.dismiss': '通知を閉じる',
199
193
  '@astryx.toast.viewport': '通知',
200
194
  '@astryx.tokenizer.clearAll': 'すべてクリア',
@@ -187,12 +187,6 @@ const runtimeCatalog: Readonly<Record<string, string>> = {
187
187
  '@astryx.table.sort.ascending': '오름차순 정렬',
188
188
  '@astryx.table.sort.descending': '내림차순 정렬',
189
189
  '@astryx.table.sort.clear': '정렬 지우기',
190
- '@astryx.table.sort.direction.ascending': '오름차순',
191
- '@astryx.table.sort.direction.descending': '내림차순',
192
- '@astryx.table.sort.sortBy': '{label} 기준 정렬',
193
- '@astryx.table.sort.sortedBy': '{label} 기준 정렬, {direction}',
194
- '@astryx.table.sort.sortedByWithPriority':
195
- '{label} 기준 정렬, {direction}, 우선순위 {total, number} 중 {rank, number}',
196
190
  '@astryx.toast.dismiss': '알림 닫기',
197
191
  '@astryx.toast.viewport': '알림',
198
192
  '@astryx.tokenizer.clearAll': '모두 지우기',
@@ -194,12 +194,6 @@ const runtimeCatalog: Readonly<Record<string, string>> = {
194
194
  '@astryx.table.sort.ascending': 'Oplopend sorteren',
195
195
  '@astryx.table.sort.descending': 'Aflopend sorteren',
196
196
  '@astryx.table.sort.clear': 'Sortering wissen',
197
- '@astryx.table.sort.direction.ascending': 'oplopend',
198
- '@astryx.table.sort.direction.descending': 'aflopend',
199
- '@astryx.table.sort.sortBy': 'Sorteren op {label}',
200
- '@astryx.table.sort.sortedBy': 'Sorteren op {label}, gesorteerd {direction}',
201
- '@astryx.table.sort.sortedByWithPriority':
202
- 'Sorteren op {label}, gesorteerd {direction}, prioriteit {rank, number} van {total, number}',
203
197
  '@astryx.toast.dismiss': 'Melding sluiten',
204
198
  '@astryx.toast.viewport': 'Meldingen',
205
199
  '@astryx.tokenizer.clearAll': 'Alles wissen',
@@ -190,12 +190,6 @@ const runtimeCatalog: Readonly<Record<string, string>> = {
190
190
  '@astryx.table.sort.ascending': 'Sorter stigende',
191
191
  '@astryx.table.sort.descending': 'Sorter synkende',
192
192
  '@astryx.table.sort.clear': 'Fjern sortering',
193
- '@astryx.table.sort.direction.ascending': 'stigende',
194
- '@astryx.table.sort.direction.descending': 'synkende',
195
- '@astryx.table.sort.sortBy': 'Sorter etter {label}',
196
- '@astryx.table.sort.sortedBy': 'Sorter etter {label}, sortert {direction}',
197
- '@astryx.table.sort.sortedByWithPriority':
198
- 'Sorter etter {label}, sortert {direction}, prioritet {rank, number} av {total, number}',
199
193
  '@astryx.toast.dismiss': 'Lukk varsel',
200
194
  '@astryx.toast.viewport': 'Varsler',
201
195
  '@astryx.tokenizer.clearAll': 'Fjern alle',
@@ -190,13 +190,6 @@ const runtimeCatalog: Readonly<Record<string, string>> = {
190
190
  '@astryx.table.sort.ascending': 'Sortuj rosnąco',
191
191
  '@astryx.table.sort.descending': 'Sortuj malejąco',
192
192
  '@astryx.table.sort.clear': 'Wyczyść sortowanie',
193
- '@astryx.table.sort.direction.ascending': 'rosnąco',
194
- '@astryx.table.sort.direction.descending': 'malejąco',
195
- '@astryx.table.sort.sortBy': 'Sortuj według {label}',
196
- '@astryx.table.sort.sortedBy':
197
- 'Sortuj według {label}, posortowano {direction}',
198
- '@astryx.table.sort.sortedByWithPriority':
199
- 'Sortuj według {label}, posortowano {direction}, priorytet {rank, number} z {total, number}',
200
193
  '@astryx.toast.dismiss': 'Zamknij powiadomienie',
201
194
  '@astryx.toast.viewport': 'Powiadomienia',
202
195
  '@astryx.tokenizer.clearAll': 'Wyczyść wszystko',