@astryxdesign/core 0.7.4 → 0.7.5-canary.0418c47

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 (1568) hide show
  1. package/README.md +12 -9
  2. package/dist/AlertDialog/AlertDialog.d.ts +2 -2
  3. package/dist/AlertDialog/AlertDialog.js +1 -1
  4. package/dist/AlertDialog/index.d.ts +4 -4
  5. package/dist/AlertDialog/useImperativeAlertDialog.d.ts +1 -1
  6. package/dist/AppShell/AppShell.d.ts +4 -4
  7. package/dist/AppShell/index.d.ts +4 -4
  8. package/dist/AspectRatio/AspectRatio.d.ts +1 -1
  9. package/dist/AspectRatio/index.d.ts +2 -2
  10. package/dist/Avatar/Avatar.d.ts +2 -2
  11. package/dist/Avatar/AvatarStatusDot.d.ts +2 -2
  12. package/dist/Avatar/AvatarStatusDot.js +2 -2
  13. package/dist/Avatar/index.d.ts +4 -4
  14. package/dist/AvatarGroup/AvatarGroup.d.ts +2 -2
  15. package/dist/AvatarGroup/AvatarGroupContext.d.ts +1 -1
  16. package/dist/AvatarGroup/AvatarGroupOverflow.d.ts +1 -1
  17. package/dist/AvatarGroup/index.d.ts +6 -6
  18. package/dist/Badge/Badge.d.ts +2 -2
  19. package/dist/Badge/Badge.d.ts.map +1 -1
  20. package/dist/Badge/Badge.js +18 -2
  21. package/dist/Badge/index.d.ts +2 -2
  22. package/dist/Banner/Banner.d.ts +5 -4
  23. package/dist/Banner/Banner.d.ts.map +1 -1
  24. package/dist/Banner/Banner.js +64 -9
  25. package/dist/Banner/index.d.ts +2 -2
  26. package/dist/Blockquote/Blockquote.d.ts +1 -1
  27. package/dist/Blockquote/index.d.ts +2 -2
  28. package/dist/BottomSheet/BottomSheet.d.ts +58 -10
  29. package/dist/BottomSheet/BottomSheet.d.ts.map +1 -1
  30. package/dist/BottomSheet/BottomSheet.js +435 -198
  31. package/dist/BottomSheet/BottomSheetHostContext.d.ts +8 -0
  32. package/dist/BottomSheet/BottomSheetHostContext.d.ts.map +1 -0
  33. package/dist/BottomSheet/BottomSheetHostContext.js +35 -0
  34. package/dist/BottomSheet/BottomSheetPanel.d.ts +12 -4
  35. package/dist/BottomSheet/BottomSheetPanel.d.ts.map +1 -1
  36. package/dist/BottomSheet/BottomSheetPanel.js +76 -22
  37. package/dist/BottomSheet/BottomSheetSwitcher.d.ts +54 -15
  38. package/dist/BottomSheet/BottomSheetSwitcher.d.ts.map +1 -1
  39. package/dist/BottomSheet/BottomSheetSwitcher.js +229 -27
  40. package/dist/BottomSheet/BottomSheetSwitcherContext.d.ts +8 -2
  41. package/dist/BottomSheet/BottomSheetSwitcherContext.d.ts.map +1 -1
  42. package/dist/BottomSheet/bottomSheetEscape.d.ts +3 -0
  43. package/dist/BottomSheet/bottomSheetEscape.d.ts.map +1 -0
  44. package/dist/BottomSheet/bottomSheetEscape.js +20 -0
  45. package/dist/BottomSheet/bottomSheetStack.d.ts +262 -0
  46. package/dist/BottomSheet/bottomSheetStack.d.ts.map +1 -0
  47. package/dist/BottomSheet/bottomSheetStack.js +1652 -0
  48. package/dist/BottomSheet/index.d.ts +4 -4
  49. package/dist/BottomSheet/useSheetGestures.d.ts +19 -3
  50. package/dist/BottomSheet/useSheetGestures.d.ts.map +1 -1
  51. package/dist/BottomSheet/useSheetGestures.js +43 -14
  52. package/dist/Breadcrumbs/BreadcrumbItem.d.ts +4 -4
  53. package/dist/Breadcrumbs/BreadcrumbItem.d.ts.map +1 -1
  54. package/dist/Breadcrumbs/BreadcrumbItem.js +5 -0
  55. package/dist/Breadcrumbs/Breadcrumbs.d.ts +2 -2
  56. package/dist/Breadcrumbs/index.d.ts +12 -12
  57. package/dist/Button/Button.d.ts +4 -4
  58. package/dist/Button/Button.d.ts.map +1 -1
  59. package/dist/Button/Button.js +18 -7
  60. package/dist/Button/index.d.ts +2 -2
  61. package/dist/ButtonGroup/ButtonGroup.d.ts +4 -4
  62. package/dist/ButtonGroup/index.d.ts +4 -4
  63. package/dist/Calendar/Calendar.d.ts +3 -3
  64. package/dist/Calendar/dayCellUtils.d.ts +1 -1
  65. package/dist/Calendar/getInitialFocusDate.d.ts +2 -2
  66. package/dist/Calendar/getStandaloneShortWeekdayNames.d.ts +1 -1
  67. package/dist/Calendar/hooks/index.d.ts +6 -6
  68. package/dist/Calendar/hooks/useCalendarConstraints.d.ts +2 -2
  69. package/dist/Calendar/hooks/useCalendarDays.d.ts +2 -2
  70. package/dist/Calendar/hooks/useCalendarNavigation.d.ts +2 -2
  71. package/dist/Calendar/index.d.ts +5 -5
  72. package/dist/Calendar/utils.d.ts +1 -1
  73. package/dist/Card/Card.d.ts +4 -4
  74. package/dist/Card/index.d.ts +2 -2
  75. package/dist/Carousel/Carousel.d.ts +2 -2
  76. package/dist/Carousel/index.d.ts +2 -2
  77. package/dist/Center/Center.d.ts +2 -2
  78. package/dist/Center/index.d.ts +2 -2
  79. package/dist/Chat/ChatComposer.d.ts +1 -1
  80. package/dist/Chat/ChatComposer.d.ts.map +1 -1
  81. package/dist/Chat/ChatComposer.js +25 -32
  82. package/dist/Chat/ChatComposerDrawer.d.ts +1 -1
  83. package/dist/Chat/ChatComposerInput.d.ts +4 -4
  84. package/dist/Chat/ChatComposerInput.d.ts.map +1 -1
  85. package/dist/Chat/ChatComposerInput.js +55 -16
  86. package/dist/Chat/ChatDictationButton.d.ts +2 -2
  87. package/dist/Chat/ChatLayout.d.ts +1 -1
  88. package/dist/Chat/ChatLayoutScrollButton.d.ts +1 -1
  89. package/dist/Chat/ChatMessage.d.ts +2 -2
  90. package/dist/Chat/ChatMessageBubble.d.ts +2 -2
  91. package/dist/Chat/ChatMessageList.d.ts +3 -3
  92. package/dist/Chat/ChatMessageMetadata.d.ts +1 -1
  93. package/dist/Chat/ChatMessageMetadata.js +2 -2
  94. package/dist/Chat/ChatPastedTextToken.d.ts.map +1 -1
  95. package/dist/Chat/ChatPastedTextToken.js +7 -6
  96. package/dist/Chat/ChatSendButton.d.ts +1 -1
  97. package/dist/Chat/ChatSystemMessage.d.ts +1 -1
  98. package/dist/Chat/ChatTokenizedText.d.ts +2 -2
  99. package/dist/Chat/ChatToolCalls.d.ts +1 -1
  100. package/dist/Chat/ChatToolCalls.js +4 -4
  101. package/dist/Chat/index.d.ts +43 -43
  102. package/dist/Chat/useChatComposerTokens.d.ts +1 -1
  103. package/dist/Chat/useChatDictation.d.ts +1 -1
  104. package/dist/Chat/useChatPasteAsToken.d.ts +1 -1
  105. package/dist/Chat/useTriggerMenu.d.ts +2 -2
  106. package/dist/CheckboxInput/CheckboxInput.d.ts +4 -4
  107. package/dist/CheckboxInput/index.d.ts +2 -2
  108. package/dist/CheckboxList/CheckboxList.d.ts +4 -4
  109. package/dist/CheckboxList/CheckboxListItem.d.ts +2 -2
  110. package/dist/CheckboxList/index.d.ts +4 -4
  111. package/dist/Citation/Citation.d.ts +1 -1
  112. package/dist/Citation/index.d.ts +2 -2
  113. package/dist/ClickableCard/ClickableCard.d.ts +3 -3
  114. package/dist/ClickableCard/ClickableCard.d.ts.map +1 -1
  115. package/dist/ClickableCard/ClickableCard.js +10 -6
  116. package/dist/ClickableCard/index.d.ts +2 -2
  117. package/dist/Code/Code.d.ts +1 -1
  118. package/dist/Code/index.d.ts +1 -1
  119. package/dist/CodeBlock/CodeBlock.d.ts +27 -4
  120. package/dist/CodeBlock/CodeBlock.d.ts.map +1 -1
  121. package/dist/CodeBlock/CodeBlock.js +58 -19
  122. package/dist/CodeBlock/grammar.d.ts +134 -0
  123. package/dist/CodeBlock/grammar.d.ts.map +1 -0
  124. package/dist/CodeBlock/grammar.js +219 -0
  125. package/dist/CodeBlock/highlightRanges.d.ts +1 -1
  126. package/dist/CodeBlock/index.d.ts +10 -8
  127. package/dist/CodeBlock/index.d.ts.map +1 -1
  128. package/dist/CodeBlock/index.js +1 -0
  129. package/dist/CodeBlock/languages/dockerfile.d.ts +3 -0
  130. package/dist/CodeBlock/languages/dockerfile.d.ts.map +1 -0
  131. package/dist/CodeBlock/languages/dockerfile.js +45 -0
  132. package/dist/CodeBlock/languages/graphql.d.ts +3 -0
  133. package/dist/CodeBlock/languages/graphql.d.ts.map +1 -0
  134. package/dist/CodeBlock/languages/graphql.js +27 -0
  135. package/dist/CodeBlock/languages/java.d.ts +3 -0
  136. package/dist/CodeBlock/languages/java.d.ts.map +1 -0
  137. package/dist/CodeBlock/languages/java.js +24 -0
  138. package/dist/CodeBlock/languages/lua.d.ts +3 -0
  139. package/dist/CodeBlock/languages/lua.d.ts.map +1 -0
  140. package/dist/CodeBlock/languages/lua.js +21 -0
  141. package/dist/CodeBlock/languages/objective-c.d.ts +3 -0
  142. package/dist/CodeBlock/languages/objective-c.d.ts.map +1 -0
  143. package/dist/CodeBlock/languages/objective-c.js +27 -0
  144. package/dist/CodeBlock/languages/powershell.d.ts +3 -0
  145. package/dist/CodeBlock/languages/powershell.d.ts.map +1 -0
  146. package/dist/CodeBlock/languages/powershell.js +30 -0
  147. package/dist/CodeBlock/languages/ruby.d.ts +3 -0
  148. package/dist/CodeBlock/languages/ruby.d.ts.map +1 -0
  149. package/dist/CodeBlock/languages/ruby.js +24 -0
  150. package/dist/CodeBlock/languages/thrift.d.ts +3 -0
  151. package/dist/CodeBlock/languages/thrift.d.ts.map +1 -0
  152. package/dist/CodeBlock/languages/thrift.js +18 -0
  153. package/dist/CodeBlock/languages/toml.d.ts +3 -0
  154. package/dist/CodeBlock/languages/toml.d.ts.map +1 -0
  155. package/dist/CodeBlock/languages/toml.js +53 -0
  156. package/dist/CodeBlock/tokenizer.d.ts +8 -4
  157. package/dist/CodeBlock/tokenizer.d.ts.map +1 -1
  158. package/dist/CodeBlock/tokenizer.js +158 -8
  159. package/dist/Collapsible/Collapsible.d.ts +10 -3
  160. package/dist/Collapsible/Collapsible.d.ts.map +1 -1
  161. package/dist/Collapsible/Collapsible.js +84 -2
  162. package/dist/Collapsible/CollapsibleGroup.d.ts +2 -2
  163. package/dist/Collapsible/index.d.ts +7 -7
  164. package/dist/CommandPalette/CommandPalette.d.ts +2 -2
  165. package/dist/CommandPalette/CommandPalette.d.ts.map +1 -1
  166. package/dist/CommandPalette/CommandPalette.js +15 -1
  167. package/dist/CommandPalette/CommandPaletteContext.d.ts +1 -1
  168. package/dist/CommandPalette/CommandPaletteEmpty.d.ts +1 -1
  169. package/dist/CommandPalette/CommandPaletteEmpty.d.ts.map +1 -1
  170. package/dist/CommandPalette/CommandPaletteEmpty.js +1 -0
  171. package/dist/CommandPalette/CommandPaletteFooter.d.ts +1 -1
  172. package/dist/CommandPalette/CommandPaletteGroup.d.ts +1 -1
  173. package/dist/CommandPalette/CommandPaletteInput.d.ts +1 -1
  174. package/dist/CommandPalette/CommandPaletteInput.d.ts.map +1 -1
  175. package/dist/CommandPalette/CommandPaletteInput.js +14 -2
  176. package/dist/CommandPalette/CommandPaletteItem.d.ts +1 -1
  177. package/dist/CommandPalette/CommandPaletteList.d.ts +1 -1
  178. package/dist/CommandPalette/busyStartSettle.d.ts +4 -0
  179. package/dist/CommandPalette/busyStartSettle.d.ts.map +1 -0
  180. package/dist/CommandPalette/busyStartSettle.js +23 -0
  181. package/dist/CommandPalette/index.d.ts +16 -16
  182. package/dist/ComplexSelector/ComplexSelector.d.ts +25 -7
  183. package/dist/ComplexSelector/ComplexSelector.d.ts.map +1 -1
  184. package/dist/ComplexSelector/ComplexSelector.js +42 -7
  185. package/dist/ComplexSelector/index.d.ts +1 -1
  186. package/dist/ContextMenu/ContextMenu.d.ts +4 -4
  187. package/dist/ContextMenu/ContextMenu.d.ts.map +1 -1
  188. package/dist/ContextMenu/ContextMenu.js +48 -13
  189. package/dist/ContextMenu/index.d.ts +9 -9
  190. package/dist/DateInput/DateInput.d.ts +7 -7
  191. package/dist/DateInput/DateInput.d.ts.map +1 -1
  192. package/dist/DateInput/DateInput.js +12 -5
  193. package/dist/DateInput/MonthScroller.d.ts +1 -1
  194. package/dist/DateInput/NativeDateField.d.ts +1 -1
  195. package/dist/DateInput/NativeDateField.d.ts.map +1 -1
  196. package/dist/DateInput/NativeDateField.js +2 -1
  197. package/dist/DateInput/TouchDateField.d.ts +1 -1
  198. package/dist/DateInput/TouchDateField.d.ts.map +1 -1
  199. package/dist/DateInput/TouchDateField.js +2 -1
  200. package/dist/DateInput/Wheel.d.ts.map +1 -1
  201. package/dist/DateInput/Wheel.js +1 -1
  202. package/dist/DateInput/index.d.ts +2 -2
  203. package/dist/DateInput/monthGeometry.d.ts +1 -1
  204. package/dist/DateRangeInput/DateRangeInput.d.ts +6 -6
  205. package/dist/DateRangeInput/index.d.ts +2 -2
  206. package/dist/DateTimeInput/DateTimeInput.d.ts +6 -6
  207. package/dist/DateTimeInput/NativeDateSegment.d.ts +3 -3
  208. package/dist/DateTimeInput/NativeTimeSegment.d.ts +4 -4
  209. package/dist/DateTimeInput/TouchDateTimeField.d.ts +1 -1
  210. package/dist/DateTimeInput/index.d.ts +2 -2
  211. package/dist/Dialog/Dialog.d.ts +7 -3
  212. package/dist/Dialog/Dialog.d.ts.map +1 -1
  213. package/dist/Dialog/Dialog.js +20 -8
  214. package/dist/Dialog/DialogHeader.d.ts +1 -1
  215. package/dist/Dialog/index.d.ts +6 -6
  216. package/dist/Dialog/useImperativeDialog.d.ts +1 -1
  217. package/dist/Divider/Divider.d.ts +2 -2
  218. package/dist/Divider/index.d.ts +2 -2
  219. package/dist/Drawer/Drawer.d.ts +3 -3
  220. package/dist/Drawer/Drawer.d.ts.map +1 -1
  221. package/dist/Drawer/Drawer.js +18 -13
  222. package/dist/Drawer/DrawerHeader.d.ts +1 -1
  223. package/dist/Drawer/index.d.ts +4 -4
  224. package/dist/DropdownMenu/DropdownMenu.d.ts +5 -5
  225. package/dist/DropdownMenu/DropdownMenu.d.ts.map +1 -1
  226. package/dist/DropdownMenu/DropdownMenu.js +32 -20
  227. package/dist/DropdownMenu/DropdownMenuCheckboxItem.d.ts +2 -2
  228. package/dist/DropdownMenu/DropdownMenuDivider.d.ts +1 -1
  229. package/dist/DropdownMenu/DropdownMenuGroup.d.ts +1 -1
  230. package/dist/DropdownMenu/DropdownMenuItem.d.ts +2 -2
  231. package/dist/DropdownMenu/DropdownMenuItem.js +3 -3
  232. package/dist/DropdownMenu/DropdownMenuRadioGroup.d.ts +1 -1
  233. package/dist/DropdownMenu/DropdownMenuRadioItem.d.ts +12 -7
  234. package/dist/DropdownMenu/DropdownMenuRadioItem.d.ts.map +1 -1
  235. package/dist/DropdownMenu/DropdownMenuRadioItem.js +13 -5
  236. package/dist/DropdownMenu/DropdownMenuSubMenu.d.ts +8 -8
  237. package/dist/DropdownMenu/DropdownMenuSubMenu.d.ts.map +1 -1
  238. package/dist/DropdownMenu/DropdownMenuSubMenu.js +0 -3
  239. package/dist/DropdownMenu/MenuBottomSheet.d.ts +11 -4
  240. package/dist/DropdownMenu/MenuBottomSheet.d.ts.map +1 -1
  241. package/dist/DropdownMenu/MenuBottomSheet.js +35 -9
  242. package/dist/DropdownMenu/MenuBottomSheetActionList.d.ts +1 -1
  243. package/dist/DropdownMenu/MenuBottomSheetActionList.js +3 -3
  244. package/dist/DropdownMenu/index.d.ts +10 -10
  245. package/dist/DropdownMenu/lazyMenuBottomSheet.d.ts +4 -2
  246. package/dist/DropdownMenu/lazyMenuBottomSheet.d.ts.map +1 -1
  247. package/dist/DropdownMenu/lazyMenuBottomSheet.js +25 -3
  248. package/dist/DropdownMenu/menuBottomSheet.stylex.d.ts +23 -0
  249. package/dist/DropdownMenu/menuBottomSheet.stylex.d.ts.map +1 -0
  250. package/dist/DropdownMenu/menuBottomSheet.stylex.js +29 -0
  251. package/dist/DropdownMenu/menuItemHover.d.ts +3 -0
  252. package/dist/DropdownMenu/menuItemHover.d.ts.map +1 -1
  253. package/dist/DropdownMenu/menuItemHover.js +14 -1
  254. package/dist/DropdownMenu/renderDropdownItems.d.ts +1 -1
  255. package/dist/DropdownMenu/useMenuDrillIn.d.ts +1 -1
  256. package/dist/DropdownMenu/useMenuDrillIn.d.ts.map +1 -1
  257. package/dist/DropdownMenu/useMenuDrillIn.js +7 -5
  258. package/dist/EmptyState/EmptyState.d.ts +5 -3
  259. package/dist/EmptyState/EmptyState.d.ts.map +1 -1
  260. package/dist/EmptyState/EmptyState.js +6 -4
  261. package/dist/EmptyState/index.d.ts +2 -2
  262. package/dist/Field/Field.d.ts +5 -5
  263. package/dist/Field/Field.js +1 -1
  264. package/dist/Field/FieldLabel.d.ts +2 -2
  265. package/dist/Field/FieldLabel.js +1 -1
  266. package/dist/Field/PanelSearchInput.d.ts +10 -2
  267. package/dist/Field/PanelSearchInput.d.ts.map +1 -1
  268. package/dist/Field/PanelSearchInput.js +31 -22
  269. package/dist/Field/fieldInputFamily.testing.d.ts +1 -1
  270. package/dist/Field/fieldParts.d.ts +1 -1
  271. package/dist/Field/index.d.ts +10 -10
  272. package/dist/Field/inputDisabledFocus.d.ts +14 -0
  273. package/dist/Field/inputDisabledFocus.d.ts.map +1 -0
  274. package/dist/Field/inputDisabledFocus.js +19 -0
  275. package/dist/Field/inputStyles.stylex.d.ts +9 -9
  276. package/dist/Field/inputStyles.stylex.js +9 -9
  277. package/dist/FieldStatus/FieldStatus.d.ts +3 -3
  278. package/dist/FieldStatus/FieldStatus.d.ts.map +1 -1
  279. package/dist/FieldStatus/FieldStatus.js +7 -3
  280. package/dist/FieldStatus/index.d.ts +2 -2
  281. package/dist/FieldStatus/useFieldStatusAnnouncement.d.ts +1 -1
  282. package/dist/FileInput/FileInput.d.ts +4 -4
  283. package/dist/FileInput/FileInput.d.ts.map +1 -1
  284. package/dist/FileInput/FileInput.js +15 -9
  285. package/dist/FileInput/index.d.ts +2 -2
  286. package/dist/FormLayout/FormLayout.d.ts +2 -2
  287. package/dist/FormLayout/index.d.ts +4 -4
  288. package/dist/Grid/Grid.d.ts +3 -3
  289. package/dist/Grid/GridSpan.d.ts +1 -1
  290. package/dist/Grid/index.d.ts +4 -4
  291. package/dist/HStack/HStack.d.ts +2 -2
  292. package/dist/HStack/index.d.ts +1 -1
  293. package/dist/Heading/Heading.d.ts +4 -4
  294. package/dist/Heading/index.d.ts +1 -1
  295. package/dist/HoverCard/HoverCard.d.ts +4 -4
  296. package/dist/HoverCard/index.d.ts +4 -4
  297. package/dist/HoverCard/useHoverCard.d.ts +2 -2
  298. package/dist/Icon/Icon.d.ts +18 -6
  299. package/dist/Icon/Icon.d.ts.map +1 -1
  300. package/dist/Icon/Icon.js +55 -9
  301. package/dist/Icon/IconDefaultSizeContext.d.ts +1 -1
  302. package/dist/Icon/IconSize.stylex.d.ts +16 -11
  303. package/dist/Icon/IconSize.stylex.d.ts.map +1 -1
  304. package/dist/Icon/IconSize.stylex.js +27 -11
  305. package/dist/Icon/defaultIcons.d.ts +1 -1
  306. package/dist/Icon/globalIconRegistry.d.ts +69 -5
  307. package/dist/Icon/globalIconRegistry.d.ts.map +1 -1
  308. package/dist/Icon/globalIconRegistry.js +108 -24
  309. package/dist/Icon/index.d.ts +30 -6
  310. package/dist/Icon/index.d.ts.map +1 -1
  311. package/dist/Icon/index.js +24 -1
  312. package/dist/Icon/useIcon.d.ts +6 -2
  313. package/dist/Icon/useIcon.d.ts.map +1 -1
  314. package/dist/Icon/useIcon.js +5 -1
  315. package/dist/IconButton/IconButton.d.ts +1 -1
  316. package/dist/IconButton/index.d.ts +2 -2
  317. package/dist/Indicator/CheckIndicator.d.ts +1 -1
  318. package/dist/Indicator/CheckboxIndicator.d.ts +1 -1
  319. package/dist/Indicator/RadioIndicator.d.ts +1 -1
  320. package/dist/Indicator/index.d.ts +8 -8
  321. package/dist/Indicator/indicatorRegistry.d.ts +2 -2
  322. package/dist/Indicator/types.d.ts +1 -1
  323. package/dist/Indicator/useIndicator.d.ts +2 -2
  324. package/dist/InputGroup/InputGroup.d.ts +3 -3
  325. package/dist/InputGroup/InputGroup.d.ts.map +1 -1
  326. package/dist/InputGroup/InputGroup.js +46 -36
  327. package/dist/InputGroup/InputGroupInternalContext.d.ts +4 -0
  328. package/dist/InputGroup/InputGroupInternalContext.d.ts.map +1 -0
  329. package/dist/InputGroup/InputGroupInternalContext.js +15 -0
  330. package/dist/InputGroup/InputGroupText.d.ts +1 -1
  331. package/dist/InputGroup/InputGroupText.d.ts.map +1 -1
  332. package/dist/InputGroup/InputGroupText.js +2 -0
  333. package/dist/InputGroup/groupStyles.d.ts +9 -0
  334. package/dist/InputGroup/groupStyles.d.ts.map +1 -1
  335. package/dist/InputGroup/groupStyles.js +28 -14
  336. package/dist/InputGroup/index.d.ts +6 -6
  337. package/dist/InteractiveRoleContext/InteractiveRoleContext.d.ts +1 -1
  338. package/dist/InteractiveRoleContext/index.d.ts +1 -1
  339. package/dist/Item/Item.d.ts +1 -1
  340. package/dist/Item/Item.d.ts.map +1 -1
  341. package/dist/Item/Item.js +1 -1
  342. package/dist/Item/ItemSwipeLayer.d.ts +2 -2
  343. package/dist/Item/ItemSwipeLayer.d.ts.map +1 -1
  344. package/dist/Item/ItemSwipeLayer.js +3 -0
  345. package/dist/Item/index.d.ts +2 -2
  346. package/dist/Item/useSwipeAction.d.ts.map +1 -1
  347. package/dist/Item/useSwipeAction.js +60 -5
  348. package/dist/Kbd/Kbd.d.ts +3 -3
  349. package/dist/Kbd/Kbd.d.ts.map +1 -1
  350. package/dist/Kbd/Kbd.js +18 -11
  351. package/dist/Kbd/index.d.ts +2 -2
  352. package/dist/Layer/LayerProvider.d.ts +1 -1
  353. package/dist/Layer/index.d.ts +18 -18
  354. package/dist/Layer/layerAnimations.stylex.d.ts +9 -5
  355. package/dist/Layer/layerAnimations.stylex.d.ts.map +1 -1
  356. package/dist/Layer/layerAnimations.stylex.js +23 -10
  357. package/dist/Layer/layerInset.d.ts +1 -1
  358. package/dist/Layer/layerSlideRules.d.ts +63 -3
  359. package/dist/Layer/layerSlideRules.d.ts.map +1 -1
  360. package/dist/Layer/layerSlideRules.js +124 -3
  361. package/dist/Layer/layerStack.d.ts +12 -9
  362. package/dist/Layer/layerStack.d.ts.map +1 -1
  363. package/dist/Layer/layerStack.js +116 -53
  364. package/dist/Layer/modalOutlet.d.ts +44 -6
  365. package/dist/Layer/modalOutlet.d.ts.map +1 -1
  366. package/dist/Layer/modalOutlet.js +150 -14
  367. package/dist/Layer/preserveAnimations.d.ts +11 -0
  368. package/dist/Layer/preserveAnimations.d.ts.map +1 -0
  369. package/dist/Layer/preserveAnimations.js +245 -0
  370. package/dist/Layer/useLayer.d.ts +19 -2
  371. package/dist/Layer/useLayer.d.ts.map +1 -1
  372. package/dist/Layer/useLayer.js +500 -43
  373. package/dist/Layer/useLayerDismissal.d.ts +11 -8
  374. package/dist/Layer/useLayerDismissal.d.ts.map +1 -1
  375. package/dist/Layer/useLayerDismissal.js +8 -8
  376. package/dist/Layer/useTouchTrigger.d.ts +14 -1
  377. package/dist/Layer/useTouchTrigger.d.ts.map +1 -1
  378. package/dist/Layer/useTouchTrigger.js +72 -17
  379. package/dist/Layout/Layout.d.ts +2 -2
  380. package/dist/Layout/Layout.d.ts.map +1 -1
  381. package/dist/Layout/Layout.js +4 -0
  382. package/dist/Layout/LayoutContent.d.ts +2 -2
  383. package/dist/Layout/LayoutContent.d.ts.map +1 -1
  384. package/dist/Layout/LayoutContent.js +2 -2
  385. package/dist/Layout/LayoutFooter.d.ts +2 -2
  386. package/dist/Layout/LayoutFooter.d.ts.map +1 -1
  387. package/dist/Layout/LayoutFooter.js +2 -1
  388. package/dist/Layout/LayoutHeader.d.ts +2 -2
  389. package/dist/Layout/LayoutHeader.d.ts.map +1 -1
  390. package/dist/Layout/LayoutHeader.js +2 -1
  391. package/dist/Layout/LayoutPanel.d.ts +3 -3
  392. package/dist/Layout/index.d.ts +29 -29
  393. package/dist/Layout/layoutEdges.stylex.d.ts +20 -0
  394. package/dist/Layout/layoutEdges.stylex.d.ts.map +1 -0
  395. package/dist/Layout/layoutEdges.stylex.js +28 -0
  396. package/dist/Layout/padding.stylex.d.ts +1 -1
  397. package/dist/Lightbox/Lightbox.d.ts +6 -3
  398. package/dist/Lightbox/Lightbox.d.ts.map +1 -1
  399. package/dist/Lightbox/Lightbox.js +111 -89
  400. package/dist/Lightbox/LightboxKeyboard.a11y.browser.spec.d.ts +2 -0
  401. package/dist/Lightbox/LightboxKeyboard.a11y.browser.spec.d.ts.map +1 -0
  402. package/dist/Lightbox/LightboxKeyboard.a11y.browser.spec.js +78 -0
  403. package/dist/Lightbox/LightboxViewport.a11y.browser.spec.d.ts +2 -0
  404. package/dist/Lightbox/LightboxViewport.a11y.browser.spec.d.ts.map +1 -0
  405. package/dist/Lightbox/LightboxViewport.a11y.browser.spec.js +65 -0
  406. package/dist/Lightbox/index.d.ts +4 -4
  407. package/dist/Lightbox/useLightbox.d.ts +1 -1
  408. package/dist/Link/Link.d.ts +3 -3
  409. package/dist/Link/LinkContext.d.ts +1 -1
  410. package/dist/Link/LinkProvider.d.ts +1 -1
  411. package/dist/Link/index.d.ts +8 -8
  412. package/dist/Link/useLinkComponent.d.ts +1 -1
  413. package/dist/List/List.d.ts +3 -3
  414. package/dist/List/ListItem.d.ts +2 -2
  415. package/dist/List/index.d.ts +4 -4
  416. package/dist/Markdown/Markdown.d.ts +15 -5
  417. package/dist/Markdown/Markdown.d.ts.map +1 -1
  418. package/dist/Markdown/Markdown.fr23.bench.js +3 -1
  419. package/dist/Markdown/Markdown.fr23.sampling.d.ts +16 -0
  420. package/dist/Markdown/Markdown.fr23.sampling.d.ts.map +1 -1
  421. package/dist/Markdown/Markdown.fr23.sampling.js +13 -4
  422. package/dist/Markdown/Markdown.js +23 -9
  423. package/dist/Markdown/MarkdownTable.a11y.chromium.spec.js +1 -0
  424. package/dist/Markdown/headingProjection.d.ts +3 -3
  425. package/dist/Markdown/index.d.ts +7 -7
  426. package/dist/Markdown/parser/index.d.ts +3 -3
  427. package/dist/Markdown/parser.d.ts +3 -3
  428. package/dist/Markdown/plugin-renderer/MarkdownPluginNodeRenderer.d.ts +1 -1
  429. package/dist/Markdown/plugin-renderer/index.d.ts +2 -2
  430. package/dist/Markdown/plugins/frontmatter.d.ts +2 -2
  431. package/dist/Markdown/plugins/headingLinks.d.ts +2 -2
  432. package/dist/Markdown/plugins/index.d.ts +14 -14
  433. package/dist/Markdown/plugins/protocol.d.ts +1 -1
  434. package/dist/Markdown/plugins/semanticFence.d.ts +2 -2
  435. package/dist/Markdown/plugins/softBreaks.d.ts +1 -1
  436. package/dist/Markdown/plugins/sourceDecoration.d.ts +2 -2
  437. package/dist/Markdown/plugins/sourceLines.d.ts +1 -1
  438. package/dist/Markdown/plugins/textTransform.d.ts +2 -2
  439. package/dist/Markdown/remark.d.ts +1 -1
  440. package/dist/Markdown/utils.d.ts +4 -4
  441. package/dist/MetadataList/MetadataList.d.ts +2 -2
  442. package/dist/MetadataList/MetadataListItem.d.ts +1 -1
  443. package/dist/MetadataList/index.d.ts +5 -5
  444. package/dist/MobileNav/MobileNav.d.ts +3 -2
  445. package/dist/MobileNav/MobileNav.d.ts.map +1 -1
  446. package/dist/MobileNav/MobileNav.js +46 -37
  447. package/dist/MobileNav/MobileNavPinchZoom.a11y.chromium.spec.js +1 -0
  448. package/dist/MobileNav/MobileNavToggle.d.ts +1 -1
  449. package/dist/MobileNav/index.d.ts +4 -4
  450. package/dist/MoreMenu/MoreMenu.d.ts +4 -4
  451. package/dist/MoreMenu/index.d.ts +1 -1
  452. package/dist/MultiSelector/CreateRow.a11y.chromium.spec.js +1 -0
  453. package/dist/MultiSelector/MultiSelector.d.ts +8 -8
  454. package/dist/MultiSelector/MultiSelector.d.ts.map +1 -1
  455. package/dist/MultiSelector/MultiSelector.disabledFocus.a11y.chromium.spec.js +1 -0
  456. package/dist/MultiSelector/MultiSelector.js +21 -5
  457. package/dist/MultiSelector/OptionActions.a11y.chromium.spec.js +1 -0
  458. package/dist/MultiSelector/hooks.d.ts +1 -1
  459. package/dist/MultiSelector/index.d.ts +3 -3
  460. package/dist/MultiSelector/types.d.ts +1 -1
  461. package/dist/NavIcon/NavIcon.d.ts +1 -1
  462. package/dist/NavIcon/index.d.ts +2 -2
  463. package/dist/NavMenu/NavHeadingMenu.d.ts +2 -2
  464. package/dist/NavMenu/NavHeadingMenuItem.d.ts +2 -2
  465. package/dist/NavMenu/NavHeadingMenuItem.d.ts.map +1 -1
  466. package/dist/NavMenu/NavHeadingMenuItem.js +46 -7
  467. package/dist/NavMenu/index.d.ts +6 -6
  468. package/dist/NumberInput/NumberInput.d.ts +9 -9
  469. package/dist/NumberInput/NumberInput.d.ts.map +1 -1
  470. package/dist/NumberInput/NumberInput.js +61 -24
  471. package/dist/NumberInput/index.d.ts +2 -2
  472. package/dist/NumberInput/numberInputCommit.d.ts +1 -1
  473. package/dist/NumberInput/numberParser.d.ts +1 -1
  474. package/dist/Outline/Outline.d.ts +3 -3
  475. package/dist/Outline/index.d.ts +7 -7
  476. package/dist/Outline/parseOutlineFromMarkdown.d.ts +2 -2
  477. package/dist/Outline/useOutlineFromDOM.d.ts +1 -1
  478. package/dist/Outline/useOutlineFromMarkdown.d.ts +3 -3
  479. package/dist/Outline/useScrollSpy.d.ts +1 -1
  480. package/dist/OverflowList/OverflowList.d.ts +2 -2
  481. package/dist/OverflowList/index.d.ts +2 -2
  482. package/dist/Overlay/Overlay.d.ts +2 -2
  483. package/dist/Overlay/index.d.ts +5 -5
  484. package/dist/Overlay/useOverlay.d.ts +1 -1
  485. package/dist/Pagination/Pagination.d.ts +2 -2
  486. package/dist/Pagination/index.d.ts +2 -2
  487. package/dist/Popover/Popover.d.ts +44 -5
  488. package/dist/Popover/Popover.d.ts.map +1 -1
  489. package/dist/Popover/Popover.js +276 -44
  490. package/dist/Popover/index.d.ts +4 -4
  491. package/dist/Popover/index.d.ts.map +1 -1
  492. package/dist/Popover/lazyPopoverBottomSheet.d.ts +23 -0
  493. package/dist/Popover/lazyPopoverBottomSheet.d.ts.map +1 -0
  494. package/dist/Popover/lazyPopoverBottomSheet.js +40 -0
  495. package/dist/Popover/usePopover.d.ts +2 -2
  496. package/dist/Popover/usePopover.d.ts.map +1 -1
  497. package/dist/Popover/usePopover.js +11 -5
  498. package/dist/PowerSearch/PowerSearch.d.ts +5 -5
  499. package/dist/PowerSearch/PowerSearch.d.ts.map +1 -1
  500. package/dist/PowerSearch/PowerSearch.js +7 -5
  501. package/dist/PowerSearch/PowerSearchEditPopover.d.ts +2 -2
  502. package/dist/PowerSearch/PowerSearchFilterEditor.d.ts +1 -1
  503. package/dist/PowerSearch/PowerSearchToken.d.ts +1 -1
  504. package/dist/PowerSearch/PowerSearchValueEditor.d.ts +2 -2
  505. package/dist/PowerSearch/formatFilterValue.d.ts +3 -3
  506. package/dist/PowerSearch/index.d.ts +8 -8
  507. package/dist/PowerSearch/resolveDateTimeRangePart.d.ts +1 -1
  508. package/dist/PowerSearch/resolveOperatorLabel.d.ts +2 -2
  509. package/dist/PowerSearch/types.d.ts +1 -1
  510. package/dist/PowerSearch/useInternalConfig.d.ts +1 -1
  511. package/dist/PowerSearch/usePowerSearchConfig.d.ts +1 -1
  512. package/dist/PowerSearch/usePowerSearchSource.d.ts +3 -3
  513. package/dist/PowerSearch/utils.d.ts +3 -3
  514. package/dist/ProgressBar/ProgressBar.d.ts +2 -2
  515. package/dist/ProgressBar/ProgressBar.d.ts.map +1 -1
  516. package/dist/ProgressBar/ProgressBar.js +8 -0
  517. package/dist/ProgressBar/index.d.ts +2 -2
  518. package/dist/RadioList/RadioList.d.ts +3 -3
  519. package/dist/RadioList/RadioListItem.d.ts +2 -2
  520. package/dist/RadioList/RadioListItem.d.ts.map +1 -1
  521. package/dist/RadioList/RadioListItem.js +10 -2
  522. package/dist/RadioList/index.d.ts +4 -4
  523. package/dist/Resizable/ResizeHandle.d.ts +2 -2
  524. package/dist/Resizable/index.d.ts +6 -6
  525. package/dist/Resizable/useResizable.d.ts +2 -2
  526. package/dist/Resizable/utils.d.ts +3 -3
  527. package/dist/ScrollableArea/ScrollableArea.d.ts +3 -3
  528. package/dist/ScrollableArea/ScrollableArea.d.ts.map +1 -1
  529. package/dist/ScrollableArea/ScrollableArea.js +1 -1
  530. package/dist/ScrollableArea/index.d.ts +4 -4
  531. package/dist/Section/Section.d.ts +3 -3
  532. package/dist/Section/index.d.ts +2 -2
  533. package/dist/SegmentedControl/SegmentedControl.d.ts +2 -2
  534. package/dist/SegmentedControl/SegmentedControlItem.d.ts +1 -1
  535. package/dist/SegmentedControl/index.d.ts +5 -5
  536. package/dist/SelectableCard/SelectableCard.d.ts +8 -8
  537. package/dist/SelectableCard/SelectableCard.d.ts.map +1 -1
  538. package/dist/SelectableCard/SelectableCard.js +15 -11
  539. package/dist/SelectableCard/index.d.ts +2 -2
  540. package/dist/Selector/Selector.d.ts +8 -8
  541. package/dist/Selector/Selector.d.ts.map +1 -1
  542. package/dist/Selector/Selector.js +16 -5
  543. package/dist/Selector/SelectorOption.d.ts +1 -1
  544. package/dist/Selector/hooks.d.ts +1 -1
  545. package/dist/Selector/index.d.ts +4 -4
  546. package/dist/Selector/types.d.ts +1 -1
  547. package/dist/Selector/useSelectorPresentation.d.ts +2 -2
  548. package/dist/Selector/utils.d.ts +1 -1
  549. package/dist/SideNav/SideNav.d.ts +3 -3
  550. package/dist/SideNav/SideNavCollapseButton.d.ts +3 -3
  551. package/dist/SideNav/SideNavHeading.d.ts +2 -2
  552. package/dist/SideNav/SideNavHeading.d.ts.map +1 -1
  553. package/dist/SideNav/SideNavHeading.js +34 -0
  554. package/dist/SideNav/SideNavItem.d.ts +9 -5
  555. package/dist/SideNav/SideNavItem.d.ts.map +1 -1
  556. package/dist/SideNav/SideNavItem.js +36 -13
  557. package/dist/SideNav/SideNavSection.d.ts +1 -1
  558. package/dist/SideNav/index.d.ts +14 -14
  559. package/dist/SizeContext/index.d.ts +1 -1
  560. package/dist/Skeleton/Skeleton.d.ts +1 -1
  561. package/dist/Skeleton/Skeleton.d.ts.map +1 -1
  562. package/dist/Skeleton/Skeleton.js +12 -3
  563. package/dist/Skeleton/index.d.ts +2 -2
  564. package/dist/Slider/Slider.d.ts +3 -3
  565. package/dist/Slider/Slider.d.ts.map +1 -1
  566. package/dist/Slider/Slider.js +45 -12
  567. package/dist/Slider/index.d.ts +2 -2
  568. package/dist/Spinner/Spinner.d.ts +1 -1
  569. package/dist/Spinner/index.d.ts +2 -2
  570. package/dist/Stack/Stack.d.ts +3 -3
  571. package/dist/Stack/StackItem.d.ts +2 -2
  572. package/dist/Stack/index.d.ts +6 -6
  573. package/dist/Stack/stack.stylex.d.ts +1 -1
  574. package/dist/StatusDot/StatusDot.d.ts +2 -2
  575. package/dist/StatusDot/StatusDot.d.ts.map +1 -1
  576. package/dist/StatusDot/StatusDot.js +12 -0
  577. package/dist/StatusDot/index.d.ts +2 -2
  578. package/dist/Stepper/Step.d.ts +2 -2
  579. package/dist/Stepper/Step.d.ts.map +1 -1
  580. package/dist/Stepper/Step.js +10 -6
  581. package/dist/Stepper/Stepper.d.ts +2 -2
  582. package/dist/Stepper/index.d.ts +7 -7
  583. package/dist/Switch/Switch.d.ts +4 -4
  584. package/dist/Switch/Switch.d.ts.map +1 -1
  585. package/dist/Switch/Switch.js +5 -5
  586. package/dist/Switch/index.d.ts +2 -2
  587. package/dist/Switch/switch.markers.stylex.d.ts +7 -2
  588. package/dist/Switch/switch.markers.stylex.d.ts.map +1 -1
  589. package/dist/Switch/switch.markers.stylex.js +8 -3
  590. package/dist/TabList/Tab.d.ts +2 -2
  591. package/dist/TabList/Tab.d.ts.map +1 -1
  592. package/dist/TabList/Tab.js +5 -1
  593. package/dist/TabList/TabList.d.ts +3 -3
  594. package/dist/TabList/TabMenu.d.ts +2 -2
  595. package/dist/TabList/TabMenu.d.ts.map +1 -1
  596. package/dist/TabList/TabMenu.js +1 -0
  597. package/dist/TabList/index.d.ts +8 -8
  598. package/dist/Table/BaseTable.d.ts +1 -1
  599. package/dist/Table/Table.d.ts +1 -1
  600. package/dist/Table/TableBody.d.ts +1 -1
  601. package/dist/Table/TableCell.d.ts +3 -3
  602. package/dist/Table/TableCell.d.ts.map +1 -1
  603. package/dist/Table/TableCell.js +1 -0
  604. package/dist/Table/TableContext.d.ts +1 -1
  605. package/dist/Table/TableFooter.d.ts +1 -1
  606. package/dist/Table/TableHeader.d.ts +1 -1
  607. package/dist/Table/TableHeaderCell.d.ts +3 -3
  608. package/dist/Table/TableHeaderCell.d.ts.map +1 -1
  609. package/dist/Table/TableHeaderCell.js +1 -0
  610. package/dist/Table/TableRow.d.ts +2 -2
  611. package/dist/Table/TableSelectionToolbar.d.ts +2 -2
  612. package/dist/Table/columnUtils.d.ts +1 -1
  613. package/dist/Table/index.d.ts +54 -54
  614. package/dist/Table/plugins/columnResize/index.d.ts +2 -2
  615. package/dist/Table/plugins/columnResize/useTableColumnResize.d.ts +1 -1
  616. package/dist/Table/plugins/columnResize/useTableColumnResize.d.ts.map +1 -1
  617. package/dist/Table/plugins/columnResize/useTableColumnResize.js +11 -2
  618. package/dist/Table/plugins/columnSettings/index.d.ts +4 -4
  619. package/dist/Table/plugins/columnSettings/useTableColumnSettings.d.ts +2 -2
  620. package/dist/Table/plugins/columnSettings/useTableColumnSettingsState.d.ts +1 -1
  621. package/dist/Table/plugins/filtering/index.d.ts +4 -4
  622. package/dist/Table/plugins/filtering/useTableFilterState.d.ts +1 -1
  623. package/dist/Table/plugins/filtering/useTableFiltering.d.ts +2 -2
  624. package/dist/Table/plugins/groupedRows/index.d.ts +2 -2
  625. package/dist/Table/plugins/groupedRows/useTableGroupedRows.d.ts +1 -1
  626. package/dist/Table/plugins/pagination/index.d.ts +3 -3
  627. package/dist/Table/plugins/pagination/useTablePagination.d.ts +1 -1
  628. package/dist/Table/plugins/rowExpansion/index.d.ts +2 -2
  629. package/dist/Table/plugins/rowExpansion/useTableRowExpansion.d.ts +1 -1
  630. package/dist/Table/plugins/rowExpansion/useTableRowExpansion.d.ts.map +1 -1
  631. package/dist/Table/plugins/rowExpansion/useTableRowExpansion.js +103 -4
  632. package/dist/Table/plugins/rowIndex/index.d.ts +2 -2
  633. package/dist/Table/plugins/rowIndex/useTableRowIndex.d.ts +1 -1
  634. package/dist/Table/plugins/rowStatus/index.d.ts +2 -2
  635. package/dist/Table/plugins/rowStatus/useTableRowStatus.d.ts +2 -2
  636. package/dist/Table/plugins/selection/index.d.ts +4 -4
  637. package/dist/Table/plugins/selection/useTableSelection.d.ts +1 -1
  638. package/dist/Table/plugins/selection/useTableSelectionState.d.ts +1 -1
  639. package/dist/Table/plugins/sortable/index.d.ts +4 -4
  640. package/dist/Table/plugins/sortable/useTableSortable.d.ts +1 -1
  641. package/dist/Table/plugins/sortable/useTableSortableState.d.ts +1 -1
  642. package/dist/Table/plugins/stickyColumns/index.d.ts +2 -2
  643. package/dist/Table/plugins/stickyColumns/useTableStickyColumns.d.ts +1 -1
  644. package/dist/Table/plugins/stickyColumns/useTableStickyColumns.d.ts.map +1 -1
  645. package/dist/Table/plugins/stickyColumns/useTableStickyColumns.js +233 -6
  646. package/dist/Table/plugins/tree/index.d.ts +4 -4
  647. package/dist/Table/plugins/tree/useTableTreeData.d.ts +1 -1
  648. package/dist/Table/plugins/tree/useTableTreeState.d.ts +1 -1
  649. package/dist/Table/rowDivider.d.ts +34 -0
  650. package/dist/Table/rowDivider.d.ts.map +1 -0
  651. package/dist/Table/rowDivider.js +118 -0
  652. package/dist/Table/tableContextMenu.d.ts +2 -2
  653. package/dist/Table/types.d.ts +3 -3
  654. package/dist/Table/useBaseTablePlugins.d.ts +1 -1
  655. package/dist/Table/useTableCellStyles.d.ts +2 -2
  656. package/dist/Table/utils.d.ts +2 -2
  657. package/dist/Text/Text.d.ts +3 -3
  658. package/dist/Text/index.d.ts +4 -4
  659. package/dist/TextArea/TextArea.d.ts +10 -8
  660. package/dist/TextArea/TextArea.d.ts.map +1 -1
  661. package/dist/TextArea/TextArea.js +15 -12
  662. package/dist/TextArea/index.d.ts +2 -2
  663. package/dist/TextInput/TextInput.d.ts +12 -10
  664. package/dist/TextInput/TextInput.d.ts.map +1 -1
  665. package/dist/TextInput/TextInput.js +35 -21
  666. package/dist/TextInput/index.d.ts +2 -2
  667. package/dist/Thumbnail/Thumbnail.d.ts +1 -1
  668. package/dist/Thumbnail/Thumbnail.d.ts.map +1 -1
  669. package/dist/Thumbnail/Thumbnail.js +45 -11
  670. package/dist/Thumbnail/index.d.ts +2 -2
  671. package/dist/TimeInput/TimeInput.d.ts +6 -6
  672. package/dist/TimeInput/TimeInput.d.ts.map +1 -1
  673. package/dist/TimeInput/TimeInput.js +12 -4
  674. package/dist/TimeInput/TouchTimeField.d.ts +1 -1
  675. package/dist/TimeInput/TouchTimeField.d.ts.map +1 -1
  676. package/dist/TimeInput/TouchTimeField.js +2 -1
  677. package/dist/TimeInput/index.d.ts +3 -3
  678. package/dist/Timer/Timer.d.ts +2 -2
  679. package/dist/Timer/index.d.ts +2 -2
  680. package/dist/Timestamp/Timestamp.d.ts +3 -3
  681. package/dist/Timestamp/TimestampHoverCard.d.ts +1 -1
  682. package/dist/Timestamp/formatInstant.d.ts +2 -2
  683. package/dist/Timestamp/formatRelativeTime.d.ts +1 -1
  684. package/dist/Timestamp/index.d.ts +3 -3
  685. package/dist/Timestamp/tooltipEntries.d.ts +2 -2
  686. package/dist/Toast/Toast.d.ts +2 -2
  687. package/dist/Toast/ToastContext.d.ts +1 -1
  688. package/dist/Toast/ToastViewport.d.ts +2 -2
  689. package/dist/Toast/ToastViewport.d.ts.map +1 -1
  690. package/dist/Toast/ToastViewport.js +28 -2
  691. package/dist/Toast/index.d.ts +6 -6
  692. package/dist/Toast/useToast.d.ts +1 -1
  693. package/dist/ToggleButton/ToggleButton.d.ts +3 -3
  694. package/dist/ToggleButton/ToggleButtonGroup.d.ts +1 -1
  695. package/dist/ToggleButton/index.d.ts +4 -4
  696. package/dist/Token/Token.d.ts +2 -2
  697. package/dist/Token/TokenLink.d.ts +1 -1
  698. package/dist/Token/index.d.ts +2 -2
  699. package/dist/Tokenizer/Tokenizer.d.ts +77 -10
  700. package/dist/Tokenizer/Tokenizer.d.ts.map +1 -1
  701. package/dist/Tokenizer/Tokenizer.js +474 -85
  702. package/dist/Tokenizer/TokenizerBottomSheet.d.ts +98 -0
  703. package/dist/Tokenizer/TokenizerBottomSheet.d.ts.map +1 -0
  704. package/dist/Tokenizer/TokenizerBottomSheet.js +721 -0
  705. package/dist/Tokenizer/index.d.ts +2 -2
  706. package/dist/Tokenizer/useEndLaneReserve.d.ts +3 -2
  707. package/dist/Tokenizer/useEndLaneReserve.d.ts.map +1 -1
  708. package/dist/Tokenizer/useEndLaneReserve.js +3 -2
  709. package/dist/Toolbar/Toolbar.d.ts +4 -4
  710. package/dist/Toolbar/index.d.ts +2 -2
  711. package/dist/Tooltip/Tooltip.d.ts +3 -3
  712. package/dist/Tooltip/index.d.ts +4 -4
  713. package/dist/Tooltip/useTooltip.d.ts +2 -2
  714. package/dist/Tooltip/useTooltip.d.ts.map +1 -1
  715. package/dist/Tooltip/useTooltip.js +9 -3
  716. package/dist/TopNav/TopNav.d.ts +1 -1
  717. package/dist/TopNav/TopNavHeading.d.ts +2 -2
  718. package/dist/TopNav/TopNavItem.d.ts +3 -3
  719. package/dist/TopNav/TopNavMegaMenu.d.ts +1 -1
  720. package/dist/TopNav/TopNavMegaMenu.d.ts.map +1 -1
  721. package/dist/TopNav/TopNavMegaMenu.js +4 -4
  722. package/dist/TopNav/TopNavMegaMenuFeaturedCard.d.ts +1 -1
  723. package/dist/TopNav/TopNavMegaMenuItem.d.ts +2 -2
  724. package/dist/TopNav/TopNavMenu.d.ts +1 -1
  725. package/dist/TopNav/index.d.ts +16 -16
  726. package/dist/TreeList/TreeList.d.ts +11 -26
  727. package/dist/TreeList/TreeList.d.ts.map +1 -1
  728. package/dist/TreeList/TreeList.js +175 -3
  729. package/dist/TreeList/TreeListItem.d.ts +8 -2
  730. package/dist/TreeList/TreeListItem.d.ts.map +1 -1
  731. package/dist/TreeList/TreeListItem.js +3 -1
  732. package/dist/TreeList/TreeListTypes.d.ts +1 -1
  733. package/dist/TreeList/index.d.ts +3 -3
  734. package/dist/Typeahead/BaseTypeahead.d.ts +2 -2
  735. package/dist/Typeahead/BaseTypeahead.d.ts.map +1 -1
  736. package/dist/Typeahead/BaseTypeahead.js +16 -4
  737. package/dist/Typeahead/Typeahead.d.ts +7 -7
  738. package/dist/Typeahead/Typeahead.d.ts.map +1 -1
  739. package/dist/Typeahead/Typeahead.js +31 -14
  740. package/dist/Typeahead/TypeaheadItem.d.ts +2 -2
  741. package/dist/Typeahead/createStaticSource.d.ts +1 -1
  742. package/dist/Typeahead/index.d.ts +9 -9
  743. package/dist/Typeahead/utils.d.ts +3 -3
  744. package/dist/VStack/VStack.d.ts +2 -2
  745. package/dist/VStack/index.d.ts +1 -1
  746. package/dist/VisuallyHidden/VisuallyHidden.d.ts +24 -6
  747. package/dist/VisuallyHidden/VisuallyHidden.d.ts.map +1 -1
  748. package/dist/VisuallyHidden/VisuallyHidden.js +24 -5
  749. package/dist/VisuallyHidden/index.d.ts +2 -2
  750. package/dist/astryx.css +138 -51
  751. package/dist/gestures/GestureArena.d.ts +175 -0
  752. package/dist/gestures/GestureArena.d.ts.map +1 -0
  753. package/dist/gestures/GestureArena.js +816 -0
  754. package/dist/gestures/GestureRecognizer.d.ts +239 -0
  755. package/dist/gestures/GestureRecognizer.d.ts.map +1 -0
  756. package/dist/gestures/GestureRecognizer.js +487 -0
  757. package/dist/gestures/LongPressGestureRecognizer.d.ts +32 -0
  758. package/dist/gestures/LongPressGestureRecognizer.d.ts.map +1 -0
  759. package/dist/gestures/LongPressGestureRecognizer.js +135 -0
  760. package/dist/gestures/PanGestureRecognizer.d.ts +117 -0
  761. package/dist/gestures/PanGestureRecognizer.d.ts.map +1 -0
  762. package/dist/gestures/PanGestureRecognizer.js +349 -0
  763. package/dist/gestures/TapGestureRecognizer.d.ts +39 -0
  764. package/dist/gestures/TapGestureRecognizer.d.ts.map +1 -0
  765. package/dist/gestures/TapGestureRecognizer.js +151 -0
  766. package/dist/gestures/VelocityTracker.d.ts +51 -0
  767. package/dist/gestures/VelocityTracker.d.ts.map +1 -0
  768. package/dist/gestures/VelocityTracker.js +186 -0
  769. package/dist/gestures/geometry.d.ts +17 -0
  770. package/dist/gestures/geometry.d.ts.map +1 -0
  771. package/dist/gestures/geometry.js +55 -0
  772. package/dist/gestures/types.d.ts +139 -0
  773. package/dist/gestures/types.d.ts.map +1 -0
  774. package/dist/gestures/types.js +67 -0
  775. package/dist/hooks/AnnounceRenderedText.d.ts +17 -0
  776. package/dist/hooks/AnnounceRenderedText.d.ts.map +1 -0
  777. package/dist/hooks/AnnounceRenderedText.js +32 -0
  778. package/dist/hooks/ModalAnnounceProvider.d.ts +41 -0
  779. package/dist/hooks/ModalAnnounceProvider.d.ts.map +1 -0
  780. package/dist/hooks/ModalAnnounceProvider.js +133 -0
  781. package/dist/hooks/actionGroupTracker.d.ts +98 -0
  782. package/dist/hooks/actionGroupTracker.d.ts.map +1 -0
  783. package/dist/hooks/actionGroupTracker.js +338 -0
  784. package/dist/hooks/index.d.ts +54 -52
  785. package/dist/hooks/index.d.ts.map +1 -1
  786. package/dist/hooks/index.js +1 -0
  787. package/dist/hooks/modalAnnounce.d.ts +18 -0
  788. package/dist/hooks/modalAnnounce.d.ts.map +1 -0
  789. package/dist/hooks/modalAnnounce.js +382 -0
  790. package/dist/hooks/useAdaptivePresentation.d.ts +9 -1
  791. package/dist/hooks/useAdaptivePresentation.d.ts.map +1 -1
  792. package/dist/hooks/useAdaptivePresentation.js +33 -8
  793. package/dist/hooks/useAnimatedLayout.d.ts +42 -0
  794. package/dist/hooks/useAnimatedLayout.d.ts.map +1 -0
  795. package/dist/hooks/useAnimatedLayout.js +46 -0
  796. package/dist/hooks/useAnnounce.d.ts +132 -1
  797. package/dist/hooks/useAnnounce.d.ts.map +1 -1
  798. package/dist/hooks/useAnnounce.js +356 -27
  799. package/dist/hooks/useAnnounceRenderedText.d.ts +19 -2
  800. package/dist/hooks/useAnnounceRenderedText.d.ts.map +1 -1
  801. package/dist/hooks/useAnnounceRenderedText.js +52 -11
  802. package/dist/hooks/useAutoMediaMode.d.ts +1 -1
  803. package/dist/hooks/useBusyAnnouncement.d.ts +9 -5
  804. package/dist/hooks/useBusyAnnouncement.d.ts.map +1 -1
  805. package/dist/hooks/useBusyAnnouncement.js +58 -46
  806. package/dist/hooks/useFocusTrap.d.ts +1 -1
  807. package/dist/hooks/useFocusTrap.d.ts.map +1 -1
  808. package/dist/hooks/useFocusTrap.js +57 -26
  809. package/dist/hooks/useInputContainer.d.ts +1 -1
  810. package/dist/hooks/useInputStatusIcon.d.ts +3 -3
  811. package/dist/hooks/useMenuPress.d.ts +5 -3
  812. package/dist/hooks/useMenuPress.d.ts.map +1 -1
  813. package/dist/hooks/useMenuPress.js +58 -33
  814. package/dist/hooks/usePressFeedback.d.ts +1 -1
  815. package/dist/hooks/useScrollableArea.d.ts +1 -1
  816. package/dist/hooks/useScrollableArea.d.ts.map +1 -1
  817. package/dist/hooks/useScrollableArea.js +37 -5
  818. package/dist/i18n/InternationalizationContext.d.ts +2 -2
  819. package/dist/i18n/InternationalizationProvider.d.ts +1 -1
  820. package/dist/i18n/generated-locales/en.generated.d.ts.map +1 -1
  821. package/dist/i18n/generated-locales/en.generated.js +33 -0
  822. package/dist/i18n/generated-locales/pseudo.generated.d.ts.map +1 -1
  823. package/dist/i18n/generated-locales/pseudo.generated.js +33 -0
  824. package/dist/i18n/index.d.ts +12 -12
  825. package/dist/i18n/resolve.d.ts +1 -1
  826. package/dist/i18n/useLocale.d.ts +1 -1
  827. package/dist/index.d.ts +111 -111
  828. package/dist/internal/tokenizer-presentation.d.ts +21 -0
  829. package/dist/internal/tokenizer-presentation.d.ts.map +1 -0
  830. package/dist/internal/tokenizer-presentation.js +21 -0
  831. package/dist/internal/touch.d.ts +26 -0
  832. package/dist/internal/touch.d.ts.map +1 -0
  833. package/dist/internal/touch.js +28 -0
  834. package/dist/motion/LayoutChangeSnapshot.d.ts +33 -0
  835. package/dist/motion/LayoutChangeSnapshot.d.ts.map +1 -0
  836. package/dist/motion/LayoutChangeSnapshot.js +37 -0
  837. package/dist/motion/animatedLayout.d.ts +94 -0
  838. package/dist/motion/animatedLayout.d.ts.map +1 -0
  839. package/dist/motion/animatedLayout.js +1096 -0
  840. package/dist/motion/animator.d.ts +240 -0
  841. package/dist/motion/animator.d.ts.map +1 -0
  842. package/dist/motion/animator.js +2203 -0
  843. package/dist/motion/bezier.d.ts +18 -0
  844. package/dist/motion/bezier.d.ts.map +1 -0
  845. package/dist/motion/bezier.js +60 -0
  846. package/dist/motion/coast.d.ts +61 -0
  847. package/dist/motion/coast.d.ts.map +1 -0
  848. package/dist/motion/coast.js +107 -0
  849. package/dist/motion/decay.d.ts +41 -0
  850. package/dist/motion/decay.d.ts.map +1 -0
  851. package/dist/motion/decay.js +90 -0
  852. package/dist/motion/projection.d.ts +36 -0
  853. package/dist/motion/projection.d.ts.map +1 -0
  854. package/dist/motion/projection.js +92 -0
  855. package/dist/motion/reducedMotion.d.ts +25 -0
  856. package/dist/motion/reducedMotion.d.ts.map +1 -0
  857. package/dist/motion/reducedMotion.js +85 -0
  858. package/dist/motion/reducedMotion.stylex.d.ts +19 -0
  859. package/dist/motion/reducedMotion.stylex.d.ts.map +1 -0
  860. package/dist/motion/reducedMotion.stylex.js +37 -0
  861. package/dist/motion/reducedMotionPlan.d.ts +89 -0
  862. package/dist/motion/reducedMotionPlan.d.ts.map +1 -0
  863. package/dist/motion/reducedMotionPlan.js +194 -0
  864. package/dist/motion/resolveSnapPoint.d.ts +52 -0
  865. package/dist/motion/resolveSnapPoint.d.ts.map +1 -0
  866. package/dist/motion/resolveSnapPoint.js +135 -0
  867. package/dist/motion/roleValue.d.ts +33 -0
  868. package/dist/motion/roleValue.d.ts.map +1 -0
  869. package/dist/motion/roleValue.js +84 -0
  870. package/dist/motion/roles.d.ts +79 -0
  871. package/dist/motion/roles.d.ts.map +1 -0
  872. package/dist/motion/roles.js +199 -0
  873. package/dist/motion/rubberBand.d.ts +20 -0
  874. package/dist/motion/rubberBand.d.ts.map +1 -0
  875. package/dist/motion/rubberBand.js +91 -0
  876. package/dist/motion/selectPage.d.ts +26 -0
  877. package/dist/motion/selectPage.d.ts.map +1 -0
  878. package/dist/motion/selectPage.js +55 -0
  879. package/dist/motion/spring.d.ts +193 -0
  880. package/dist/motion/spring.d.ts.map +1 -0
  881. package/dist/motion/spring.js +442 -0
  882. package/dist/motion/uikit/gestures.d.ts +642 -0
  883. package/dist/motion/uikit/gestures.d.ts.map +1 -0
  884. package/dist/motion/uikit/gestures.js +428 -0
  885. package/dist/motion/uikit/index.d.ts +24 -0
  886. package/dist/motion/uikit/index.d.ts.map +1 -0
  887. package/dist/motion/uikit/index.js +26 -0
  888. package/dist/motion/uikit/navigation.d.ts +54 -0
  889. package/dist/motion/uikit/navigation.d.ts.map +1 -0
  890. package/dist/motion/uikit/navigation.js +83 -0
  891. package/dist/motion/uikit/scroll.d.ts +116 -0
  892. package/dist/motion/uikit/scroll.d.ts.map +1 -0
  893. package/dist/motion/uikit/scroll.js +146 -0
  894. package/dist/motion/uikit/springs.d.ts +545 -0
  895. package/dist/motion/uikit/springs.d.ts.map +1 -0
  896. package/dist/motion/uikit/springs.js +548 -0
  897. package/dist/motion/uikit/timing.d.ts +202 -0
  898. package/dist/motion/uikit/timing.d.ts.map +1 -0
  899. package/dist/motion/uikit/timing.js +201 -0
  900. package/dist/reset.a11y.chromium.spec.js +1 -0
  901. package/dist/reset.until-found.a11y.browser.spec.js +1 -0
  902. package/dist/theme/Theme.d.ts +2 -2
  903. package/dist/theme/contrast.d.ts +1 -1
  904. package/dist/theme/declarationBoundary.d.ts +13 -0
  905. package/dist/theme/declarationBoundary.d.ts.map +1 -1
  906. package/dist/theme/declarationBoundary.js +264 -1
  907. package/dist/theme/defineTheme.d.ts +113 -22
  908. package/dist/theme/defineTheme.d.ts.map +1 -1
  909. package/dist/theme/defineTheme.js +66 -7
  910. package/dist/theme/derivedVarRegistry.d.ts.map +1 -1
  911. package/dist/theme/derivedVarRegistry.js +9 -0
  912. package/dist/theme/domainTokens/index.d.ts +6 -6
  913. package/dist/theme/generateThemeRules.d.ts +7 -3
  914. package/dist/theme/generateThemeRules.d.ts.map +1 -1
  915. package/dist/theme/generateThemeRules.js +468 -24
  916. package/dist/theme/index.d.ts +31 -31
  917. package/dist/theme/index.d.ts.map +1 -1
  918. package/dist/theme/index.js +1 -1
  919. package/dist/theme/localTokens.d.ts +1 -1
  920. package/dist/theme/mergeComponents.d.ts +1 -1
  921. package/dist/theme/onMediaTokens.d.ts +1 -1
  922. package/dist/theme/resolveThemeValues.d.ts +7 -7
  923. package/dist/theme/statusColor.d.ts +48 -0
  924. package/dist/theme/statusColor.d.ts.map +1 -0
  925. package/dist/theme/statusColor.js +203 -0
  926. package/dist/theme/statusRoleDerivation.d.ts +11 -0
  927. package/dist/theme/statusRoleDerivation.d.ts.map +1 -0
  928. package/dist/theme/statusRoleDerivation.js +236 -0
  929. package/dist/theme/syntax/SyntaxTheme.d.ts +1 -1
  930. package/dist/theme/syntax/index.d.ts +7 -7
  931. package/dist/theme/syntax/presets.d.ts +1 -1
  932. package/dist/theme/themeAdaptations.d.ts +30 -6
  933. package/dist/theme/themeAdaptations.d.ts.map +1 -1
  934. package/dist/theme/themeAdaptations.js +30 -1
  935. package/dist/theme/themeRegistry.d.ts +1 -1
  936. package/dist/theme/tokens.d.ts +1 -1
  937. package/dist/theme/tokens.d.ts.map +1 -1
  938. package/dist/theme/tokens.js +16 -1
  939. package/dist/theme/tokens.stylex.d.ts +40 -2
  940. package/dist/theme/tokens.stylex.d.ts.map +1 -1
  941. package/dist/theme/tokens.stylex.js +47 -2
  942. package/dist/theme/types.d.ts +1 -1
  943. package/dist/theme/useTheme.d.ts +6 -4
  944. package/dist/theme/useTheme.d.ts.map +1 -1
  945. package/dist/theme/useTheme.js +10 -4
  946. package/dist/utils/dateParser.d.ts +3 -3
  947. package/dist/utils/edgeAutoscroll.d.ts +53 -0
  948. package/dist/utils/edgeAutoscroll.d.ts.map +1 -0
  949. package/dist/utils/edgeAutoscroll.js +81 -0
  950. package/dist/utils/groupItems.d.ts +1 -1
  951. package/dist/utils/hitArea.d.ts +72 -0
  952. package/dist/utils/hitArea.d.ts.map +1 -0
  953. package/dist/utils/hitArea.js +681 -0
  954. package/dist/utils/index.d.ts +29 -29
  955. package/dist/utils/plainDate.d.ts +3 -3
  956. package/dist/utils/touchPresentation.d.ts +48 -0
  957. package/dist/utils/touchPresentation.d.ts.map +1 -0
  958. package/dist/utils/touchPresentation.js +133 -0
  959. package/locales/af-ZA.json +1 -1
  960. package/locales/ar-SA.json +1 -1
  961. package/locales/ca-ES.json +1 -1
  962. package/locales/cs-CZ.json +1 -1
  963. package/locales/da-DK.json +1 -1
  964. package/locales/de-DE.json +1 -1
  965. package/locales/el-GR.json +1 -1
  966. package/locales/en.json +132 -0
  967. package/locales/es-ES.json +1 -1
  968. package/locales/fi-FI.json +1 -1
  969. package/locales/fr-FR.json +1 -1
  970. package/locales/he-IL.json +1 -1
  971. package/locales/hu-HU.json +1 -1
  972. package/locales/it-IT.json +1 -1
  973. package/locales/ja-JP.json +1 -1
  974. package/locales/ko-KR.json +1 -1
  975. package/locales/nl-NL.json +1 -1
  976. package/locales/no-NO.json +1 -1
  977. package/locales/pl-PL.json +1 -1
  978. package/locales/pseudo.json +99 -0
  979. package/locales/pt-BR.json +1 -1
  980. package/locales/pt-PT.json +1 -1
  981. package/locales/ro-RO.json +1 -1
  982. package/locales/ru-RU.json +1 -1
  983. package/locales/sr-SP.json +1 -1
  984. package/locales/sv-SE.json +1 -1
  985. package/locales/tr-TR.json +1 -1
  986. package/locales/uk-UA.json +1 -1
  987. package/locales/vi-VN.json +1 -1
  988. package/locales/zh-CN.json +1 -1
  989. package/locales/zh-TW.json +1 -1
  990. package/package.json +61 -6
  991. package/src/AlertDialog/AlertDialog.tsx +1 -1
  992. package/src/AlertDialog/__tests__/AlertDialog.a11y.chromium.spec.ts +1 -0
  993. package/src/AppShell/AppShell.spec.md +337 -0
  994. package/src/AspectRatio/AspectRatio.spec.md +179 -0
  995. package/src/AspectRatio/__tests__/AspectRatioFitLayers.a11y.browser.spec.ts +1 -0
  996. package/src/Avatar/Avatar.spec.md +253 -0
  997. package/src/Avatar/AvatarStatusDot.spec.md +93 -79
  998. package/src/Avatar/AvatarStatusDot.test.tsx +22 -0
  999. package/src/Avatar/AvatarStatusDot.tsx +2 -2
  1000. package/src/AvatarGroup/AvatarGroup.spec.md +205 -0
  1001. package/src/AvatarGroup/AvatarGroupOverflow.spec.md +123 -120
  1002. package/src/Badge/Badge.doc.mjs +2 -1
  1003. package/src/Badge/Badge.spec.md +207 -0
  1004. package/src/Badge/Badge.test.tsx +13 -0
  1005. package/src/Badge/Badge.tsx +38 -2
  1006. package/src/Banner/Banner.spec.md +38 -27
  1007. package/src/Banner/Banner.test.tsx +118 -16
  1008. package/src/Banner/Banner.tsx +94 -7
  1009. package/src/Blockquote/Blockquote.spec.md +171 -0
  1010. package/src/BottomSheet/BottomSheet.doc.mjs +106 -24
  1011. package/src/BottomSheet/BottomSheet.spec.md +269 -40
  1012. package/src/BottomSheet/BottomSheet.test.tsx +491 -5
  1013. package/src/BottomSheet/BottomSheet.tsx +544 -145
  1014. package/src/BottomSheet/BottomSheetHostContext.ts +44 -0
  1015. package/src/BottomSheet/BottomSheetPanel.test.tsx +21 -10
  1016. package/src/BottomSheet/BottomSheetPanel.tsx +166 -57
  1017. package/src/BottomSheet/BottomSheetReplace.test.tsx +1526 -0
  1018. package/src/BottomSheet/BottomSheetStacking.announce.test.tsx +246 -0
  1019. package/src/BottomSheet/BottomSheetStacking.test.tsx +3184 -0
  1020. package/src/BottomSheet/BottomSheetSwitcher.doc.mjs +27 -31
  1021. package/src/BottomSheet/BottomSheetSwitcher.spec.md +138 -43
  1022. package/src/BottomSheet/BottomSheetSwitcher.tsx +275 -26
  1023. package/src/BottomSheet/BottomSheetSwitcherContext.ts +6 -0
  1024. package/src/BottomSheet/__tests__/BottomSheetDrag.a11y.chromium.spec.ts +1 -0
  1025. package/src/BottomSheet/__tests__/BottomSheetFocusReturn.a11y.browser.spec.ts +1 -0
  1026. package/src/BottomSheet/__tests__/BottomSheetKeyboard.a11y.browser.spec.ts +1 -0
  1027. package/src/BottomSheet/__tests__/BottomSheetNativeModal.a11y.browser.spec.ts +1 -0
  1028. package/src/BottomSheet/__tests__/BottomSheetPinchZoom.a11y.chromium.spec.ts +1 -0
  1029. package/src/BottomSheet/__tests__/BottomSheetToastOutlet.a11y.chromium.spec.ts +83 -0
  1030. package/src/BottomSheet/bottomSheetEscape.ts +21 -0
  1031. package/src/BottomSheet/bottomSheetStack.ts +2031 -0
  1032. package/src/BottomSheet/useSheetGestures.ts +68 -12
  1033. package/src/Breadcrumbs/BreadcrumbItem.spec.md +96 -59
  1034. package/src/Breadcrumbs/BreadcrumbItem.tsx +5 -0
  1035. package/src/Breadcrumbs/Breadcrumbs.spec.md +165 -0
  1036. package/src/Breadcrumbs/Breadcrumbs.test.tsx +22 -0
  1037. package/src/Breadcrumbs/__tests__/Breadcrumbs.a11y.chromium.spec.ts +1 -0
  1038. package/src/Button/Button.spec.md +322 -0
  1039. package/src/Button/Button.test.tsx +8 -1
  1040. package/src/Button/Button.tsx +36 -7
  1041. package/src/Button/__tests__/Button.a11y.chromium.spec.ts +1 -0
  1042. package/src/ButtonGroup/ButtonGroup.spec.md +218 -0
  1043. package/src/Calendar/__tests__/Calendar.a11y.chromium.spec.ts +1 -0
  1044. package/src/Card/Card.spec.md +205 -0
  1045. package/src/Carousel/__tests__/Carousel.a11y.chromium.spec.ts +1 -0
  1046. package/src/Chat/ChatComposer.test.tsx +54 -0
  1047. package/src/Chat/ChatComposer.tsx +41 -27
  1048. package/src/Chat/ChatComposerInput.test.tsx +165 -21
  1049. package/src/Chat/ChatComposerInput.tsx +73 -16
  1050. package/src/Chat/ChatMessageMetadata.tsx +1 -1
  1051. package/src/Chat/ChatPastedTextToken.test.tsx +71 -0
  1052. package/src/Chat/ChatPastedTextToken.tsx +8 -7
  1053. package/src/Chat/ChatToolCalls.tsx +5 -5
  1054. package/src/Chat/__tests__/ChatLayoutScrollButton.a11y.chromium.spec.ts +1 -0
  1055. package/src/Chat/__tests__/ChatLayoutScrollButtonSurface.a11y.chromium.spec.ts +1 -0
  1056. package/src/Chat/__tests__/ChatMessageList.a11y.chromium.spec.ts +1 -0
  1057. package/src/Chat/__tests__/ChatMessageMetadata.a11y.chromium.spec.ts +1 -0
  1058. package/src/Chat/__tests__/ChatSendButton.a11y.chromium.spec.ts +1 -0
  1059. package/src/Chat/__tests__/ChatSystemMessage.a11y.chromium.spec.ts +1 -0
  1060. package/src/Chat/__tests__/ChatTokenizedText.a11y.chromium.spec.ts +1 -0
  1061. package/src/Chat/__tests__/useChatStreamScroll.a11y.chromium.spec.ts +1 -0
  1062. package/src/CheckboxInput/CheckboxInput.spec.md +97 -66
  1063. package/src/CheckboxInput/__tests__/Checkbox.a11y.chromium.spec.ts +1 -0
  1064. package/src/CheckboxList/CheckboxList.spec.md +92 -78
  1065. package/src/CheckboxList/CheckboxListItem.spec.md +86 -60
  1066. package/src/CheckboxList/__tests__/CheckboxList.a11y.chromium.spec.ts +1 -0
  1067. package/src/ClickableCard/ClickableCard.doc.mjs +1 -2
  1068. package/src/ClickableCard/ClickableCard.test.tsx +14 -3
  1069. package/src/ClickableCard/ClickableCard.tsx +44 -28
  1070. package/src/Code/Code.spec.md +30 -32
  1071. package/src/CodeBlock/CodeBlock.doc.mjs +21 -4
  1072. package/src/CodeBlock/CodeBlock.spec.md +96 -61
  1073. package/src/CodeBlock/CodeBlock.test.tsx +97 -1
  1074. package/src/CodeBlock/CodeBlock.tsx +132 -22
  1075. package/src/CodeBlock/CodeLanguage.test.tsx +173 -0
  1076. package/src/CodeBlock/__tests__/CodeBlockCopyClearance.a11y.chromium.spec.ts +290 -0
  1077. package/src/CodeBlock/__tests__/CodeBlockLanguages.a11y.chromium.spec.ts +64 -0
  1078. package/src/CodeBlock/__tests__/CodeBlockOverflowStop.a11y.chromium.spec.ts +1 -0
  1079. package/src/CodeBlock/__tests__/DiffRowPaint.a11y.chromium.spec.ts +1 -0
  1080. package/src/CodeBlock/grammar.ts +291 -0
  1081. package/src/CodeBlock/index.ts +7 -0
  1082. package/src/CodeBlock/languages/dockerfile.ts +43 -0
  1083. package/src/CodeBlock/languages/graphql.ts +30 -0
  1084. package/src/CodeBlock/languages/java.ts +28 -0
  1085. package/src/CodeBlock/languages/lua.ts +21 -0
  1086. package/src/CodeBlock/languages/objective-c.ts +26 -0
  1087. package/src/CodeBlock/languages/powershell.ts +31 -0
  1088. package/src/CodeBlock/languages/ruby.ts +29 -0
  1089. package/src/CodeBlock/languages/thrift.ts +32 -0
  1090. package/src/CodeBlock/languages/toml.ts +36 -0
  1091. package/src/CodeBlock/languages.test.ts +402 -0
  1092. package/src/CodeBlock/tokenizer.ts +176 -16
  1093. package/src/CodeBlock/tokenizerBudget.test.ts +112 -0
  1094. package/src/Collapsible/Collapsible.doc.mjs +6 -0
  1095. package/src/Collapsible/Collapsible.spec.md +26 -23
  1096. package/src/Collapsible/Collapsible.tsx +121 -2
  1097. package/src/Collapsible/__tests__/Collapsible.a11y.chromium.spec.ts +1 -0
  1098. package/src/Collapsible/__tests__/CollapsibleGroup.a11y.chromium.spec.ts +1 -0
  1099. package/src/Collapsible/__tests__/CollapsibleGroupAccordion.a11y.chromium.spec.ts +1 -0
  1100. package/src/CommandPalette/CommandPalette.perf.test.ts +8 -4
  1101. package/src/CommandPalette/CommandPalette.tsx +17 -1
  1102. package/src/CommandPalette/CommandPaletteEmpty.doc.mjs +6 -3
  1103. package/src/CommandPalette/CommandPaletteEmpty.spec.md +190 -0
  1104. package/src/CommandPalette/CommandPaletteEmpty.tsx +4 -0
  1105. package/src/CommandPalette/CommandPaletteInput.tsx +21 -2
  1106. package/src/CommandPalette/__tests__/CommandPalette.a11y.chromium.spec.ts +1 -0
  1107. package/src/CommandPalette/__tests__/CommandPaletteEmptyAudit.a11y.chromium.spec.ts +715 -0
  1108. package/src/CommandPalette/__tests__/CommandPaletteFooter.a11y.chromium.spec.ts +1 -0
  1109. package/src/CommandPalette/__tests__/CommandPaletteInputAudit.a11y.chromium.spec.ts +1 -0
  1110. package/src/CommandPalette/__tests__/CommandPaletteItemAudit.a11y.chromium.spec.ts +1 -0
  1111. package/src/CommandPalette/busyStartSettle.ts +26 -0
  1112. package/src/ComplexSelector/ComplexSelector.doc.mjs +1 -1
  1113. package/src/ComplexSelector/ComplexSelector.focusableDisabled.test.tsx +1 -1
  1114. package/src/ComplexSelector/ComplexSelector.fr10.test.tsx +9 -9
  1115. package/src/ComplexSelector/ComplexSelector.spec.md +161 -107
  1116. package/src/ComplexSelector/ComplexSelector.test.tsx +236 -17
  1117. package/src/ComplexSelector/ComplexSelector.tsx +69 -4
  1118. package/src/ComplexSelector/__tests__/ComplexSelector.a11y.chromium.spec.ts +965 -0
  1119. package/src/ContextMenu/ContextMenu.doc.mjs +1 -1
  1120. package/src/ContextMenu/ContextMenu.spec.md +38 -30
  1121. package/src/ContextMenu/ContextMenu.test.tsx +189 -11
  1122. package/src/ContextMenu/ContextMenu.tsx +75 -17
  1123. package/src/ContextMenu/__tests__/ContextMenuAudit.a11y.chromium.spec.ts +1 -0
  1124. package/src/ContextMenu/__tests__/ContextMenuCursorAnchor.a11y.browser.spec.ts +1 -0
  1125. package/src/ContextMenu/__tests__/ContextMenuLongPress.a11y.chromium.spec.ts +117 -0
  1126. package/src/DateInput/DateInput.tsx +9 -4
  1127. package/src/DateInput/DateInputTouch.test.tsx +10 -1
  1128. package/src/DateInput/NativeDateField.tsx +2 -1
  1129. package/src/DateInput/TouchDateField.tsx +2 -1
  1130. package/src/DateInput/Wheel.tsx +4 -1
  1131. package/src/DateInput/__tests__/DateInputAudit.a11y.chromium.spec.ts +1 -0
  1132. package/src/DateInput/__tests__/WheelPinchZoom.a11y.chromium.spec.ts +171 -0
  1133. package/src/Dialog/Dialog.doc.mjs +201 -47
  1134. package/src/Dialog/Dialog.tsx +37 -10
  1135. package/src/Dialog/__tests__/Dialog.a11y.browser.spec.ts +1 -0
  1136. package/src/Dialog/__tests__/Dialog.a11y.chromium.spec.ts +1 -0
  1137. package/src/Dialog/__tests__/Dialog.reduced-motion.a11y.browser.spec.ts +191 -0
  1138. package/src/Divider/Divider.spec.md +79 -70
  1139. package/src/Drawer/Drawer.tsx +38 -35
  1140. package/src/Drawer/__tests__/DrawerAudit.a11y.chromium.spec.ts +1 -0
  1141. package/src/Drawer/__tests__/DrawerHeaderAudit.a11y.chromium.spec.ts +1 -0
  1142. package/src/DropdownMenu/DropdownMenu.spec.md +14 -6
  1143. package/src/DropdownMenu/DropdownMenu.ssr.test.tsx +44 -8
  1144. package/src/DropdownMenu/DropdownMenu.test.tsx +64 -5
  1145. package/src/DropdownMenu/DropdownMenu.tsx +47 -21
  1146. package/src/DropdownMenu/DropdownMenuItem.tsx +5 -5
  1147. package/src/DropdownMenu/DropdownMenuRadioItem.doc.mjs +5 -2
  1148. package/src/DropdownMenu/DropdownMenuRadioItem.spec.md +226 -0
  1149. package/src/DropdownMenu/DropdownMenuRadioItem.tsx +32 -16
  1150. package/src/DropdownMenu/DropdownMenuSelectable.test.tsx +158 -0
  1151. package/src/DropdownMenu/DropdownMenuSheetFirstOpen.test.tsx +72 -0
  1152. package/src/DropdownMenu/DropdownMenuSubMenu.doc.mjs +9 -0
  1153. package/src/DropdownMenu/DropdownMenuSubMenu.spec.md +225 -0
  1154. package/src/DropdownMenu/DropdownMenuSubMenu.test.tsx +105 -0
  1155. package/src/DropdownMenu/DropdownMenuSubMenu.tsx +6 -6
  1156. package/src/DropdownMenu/MenuBottomSheet.tsx +42 -7
  1157. package/src/DropdownMenu/MenuBottomSheetActionList.tsx +3 -3
  1158. package/src/DropdownMenu/__tests__/DropdownMenuDividerAudit.a11y.chromium.spec.ts +1 -0
  1159. package/src/DropdownMenu/__tests__/DropdownMenuDrillIn.a11y.chromium.spec.ts +1 -0
  1160. package/src/DropdownMenu/__tests__/DropdownMenuFocusReturn.a11y.browser.spec.ts +1 -0
  1161. package/src/DropdownMenu/__tests__/DropdownMenuGroupAudit.a11y.chromium.spec.ts +1 -0
  1162. package/src/DropdownMenu/__tests__/DropdownMenuItemAudit.a11y.chromium.spec.ts +1 -0
  1163. package/src/DropdownMenu/__tests__/DropdownMenuRadioGroupAudit.a11y.chromium.spec.ts +1 -0
  1164. package/src/DropdownMenu/__tests__/DropdownMenuRadioItemAudit.a11y.chromium.spec.ts +540 -0
  1165. package/src/DropdownMenu/__tests__/DropdownMenuSubMenuAudit.a11y.chromium.spec.ts +671 -0
  1166. package/src/DropdownMenu/__tests__/Menu.a11y.chromium.spec.ts +1 -0
  1167. package/src/DropdownMenu/__tests__/MenuButton.a11y.chromium.spec.ts +1 -0
  1168. package/src/DropdownMenu/__tests__/MenuHeaderFooter.a11y.chromium.spec.ts +1 -0
  1169. package/src/DropdownMenu/__tests__/MenuHoverFocus.a11y.chromium.spec.ts +238 -0
  1170. package/src/DropdownMenu/__tests__/MenuPinchZoom.a11y.chromium.spec.ts +1 -0
  1171. package/src/DropdownMenu/__tests__/MenuPress.a11y.chromium.spec.ts +1 -0
  1172. package/src/DropdownMenu/__tests__/SubMenuHeaderFooter.a11y.chromium.spec.ts +1 -0
  1173. package/src/DropdownMenu/lazyMenuBottomSheet.ts +28 -2
  1174. package/src/DropdownMenu/menuBottomSheet.stylex.ts +33 -0
  1175. package/src/DropdownMenu/menuItemHover.ts +13 -1
  1176. package/src/DropdownMenu/modules/useMenuPress.spec.md +90 -62
  1177. package/src/DropdownMenu/useMenuDrillIn.tsx +7 -5
  1178. package/src/EmptyState/EmptyState.announce.test.tsx +227 -0
  1179. package/src/EmptyState/EmptyState.doc.mjs +1 -1
  1180. package/src/EmptyState/EmptyState.spec.md +22 -14
  1181. package/src/EmptyState/EmptyState.test.tsx +8 -8
  1182. package/src/EmptyState/EmptyState.tsx +7 -5
  1183. package/src/Field/Field.tsx +1 -1
  1184. package/src/Field/FieldLabel.tsx +1 -1
  1185. package/src/Field/PanelSearchInput.tsx +23 -13
  1186. package/src/Field/__tests__/FieldLabelAudit.a11y.chromium.spec.ts +1 -0
  1187. package/src/Field/inputDisabledFocus.ts +28 -0
  1188. package/src/Field/inputStyles.stylex.ts +15 -15
  1189. package/src/FieldStatus/FieldStatus.test.tsx +12 -0
  1190. package/src/FieldStatus/FieldStatus.tsx +12 -3
  1191. package/src/FieldStatus/__tests__/StatusMessage.a11y.chromium.spec.ts +1 -0
  1192. package/src/FileInput/FileInput.test.tsx +78 -0
  1193. package/src/FileInput/FileInput.tsx +11 -9
  1194. package/src/Heading/Heading.spec.md +198 -0
  1195. package/src/HoverCard/HoverCard.test.tsx +93 -3
  1196. package/src/Icon/Icon.doc.mjs +53 -5
  1197. package/src/Icon/Icon.spec.md +40 -29
  1198. package/src/Icon/Icon.test.tsx +266 -9
  1199. package/src/Icon/Icon.tsx +51 -13
  1200. package/src/Icon/IconSize.stylex.ts +27 -11
  1201. package/src/Icon/globalIconRegistry.test.tsx +326 -3
  1202. package/src/Icon/globalIconRegistry.tsx +137 -36
  1203. package/src/Icon/index.ts +29 -1
  1204. package/src/Icon/useIcon.ts +5 -1
  1205. package/src/IconButton/IconButton.spec.md +197 -0
  1206. package/src/IconButton/IconButton.test.tsx +5 -2
  1207. package/src/InputGroup/InputGroup.spec.md +199 -0
  1208. package/src/InputGroup/InputGroup.test.tsx +120 -0
  1209. package/src/InputGroup/InputGroup.tsx +59 -52
  1210. package/src/InputGroup/InputGroupInternalContext.ts +15 -0
  1211. package/src/InputGroup/InputGroupText.spec.md +139 -0
  1212. package/src/InputGroup/InputGroupText.tsx +2 -0
  1213. package/src/InputGroup/groupStyles.ts +22 -11
  1214. package/src/Item/Item.test.tsx +118 -0
  1215. package/src/Item/Item.tsx +5 -3
  1216. package/src/Item/ItemSwipeLayer.tsx +9 -0
  1217. package/src/Item/__tests__/ItemSwipeActions.a11y.chromium.spec.ts +1 -0
  1218. package/src/Item/__tests__/ItemSwipePinchZoom.a11y.chromium.spec.ts +186 -0
  1219. package/src/Item/useSwipeAction.ts +71 -5
  1220. package/src/Kbd/Kbd.test.tsx +95 -0
  1221. package/src/Kbd/Kbd.tsx +30 -23
  1222. package/src/Layer/__tests__/LayerReducedMotion.a11y.chromium.spec.ts +176 -0
  1223. package/src/Layer/__tests__/TouchTrigger.a11y.chromium.spec.ts +200 -0
  1224. package/src/Layer/layerAnimations.stylex.ts +22 -2
  1225. package/src/Layer/layerDismissalInvariants.test.tsx +9 -0
  1226. package/src/Layer/layerSlideRules.ts +141 -8
  1227. package/src/Layer/layerStack.ts +129 -62
  1228. package/src/Layer/modalOutlet.ts +156 -15
  1229. package/src/Layer/preserveAnimations.ts +304 -0
  1230. package/src/Layer/useLayer.doc.mjs +1 -1
  1231. package/src/Layer/useLayer.test.tsx +743 -0
  1232. package/src/Layer/useLayer.tsx +592 -53
  1233. package/src/Layer/useLayerDismissal.test.tsx +85 -2
  1234. package/src/Layer/useLayerDismissal.ts +12 -9
  1235. package/src/Layer/useTouchTrigger.ts +95 -41
  1236. package/src/Layout/Layout.tsx +18 -0
  1237. package/src/Layout/LayoutContent.tsx +5 -14
  1238. package/src/Layout/LayoutFooter.tsx +2 -0
  1239. package/src/Layout/LayoutHeader.tsx +2 -0
  1240. package/src/Layout/__tests__/Layout.a11y.chromium.spec.ts +1 -0
  1241. package/src/Layout/layoutEdges.stylex.ts +25 -0
  1242. package/src/Lightbox/Lightbox.test.tsx +83 -0
  1243. package/src/Lightbox/Lightbox.tsx +149 -125
  1244. package/src/Lightbox/LightboxKeyboard.a11y.browser.spec.ts +78 -0
  1245. package/src/Lightbox/LightboxViewport.a11y.browser.spec.ts +70 -0
  1246. package/src/Link/Link.spec.md +229 -0
  1247. package/src/Link/LinkProvider.spec.md +167 -0
  1248. package/src/Link/__tests__/Link.a11y.chromium.spec.ts +1 -0
  1249. package/src/Link/__tests__/Link.navigation.a11y.chromium.spec.ts +1 -0
  1250. package/src/List/List.spec.md +90 -33
  1251. package/src/List/ListItem.doc.mjs +3 -3
  1252. package/src/Markdown/Markdown.codeLanguages.test.tsx +137 -0
  1253. package/src/Markdown/Markdown.doc.mjs +12 -0
  1254. package/src/Markdown/Markdown.fr23.bench.ts +3 -1
  1255. package/src/Markdown/Markdown.fr23.perf.test.ts +45 -3
  1256. package/src/Markdown/Markdown.fr23.sampling.ts +13 -4
  1257. package/src/Markdown/Markdown.spec.md +71 -59
  1258. package/src/Markdown/Markdown.tsx +32 -2
  1259. package/src/Markdown/MarkdownTable.a11y.chromium.spec.ts +1 -0
  1260. package/src/Markdown/__tests__/MarkdownNesting.a11y.chromium.spec.ts +1 -0
  1261. package/src/MobileNav/MobileNav.spec.md +161 -64
  1262. package/src/MobileNav/MobileNav.test.tsx +27 -10
  1263. package/src/MobileNav/MobileNav.tsx +51 -38
  1264. package/src/MobileNav/MobileNavPinchZoom.a11y.chromium.spec.ts +1 -0
  1265. package/src/MobileNav/__tests__/MobileNavWidth.a11y.chromium.spec.ts +103 -0
  1266. package/src/MoreMenu/MoreMenu.doc.mjs +2 -2
  1267. package/src/MoreMenu/MoreMenu.spec.md +88 -53
  1268. package/src/MultiSelector/CreateRow.a11y.chromium.spec.ts +1 -0
  1269. package/src/MultiSelector/MultiSelector.disabledFocus.a11y.chromium.spec.ts +1 -0
  1270. package/src/MultiSelector/MultiSelector.test.tsx +122 -10
  1271. package/src/MultiSelector/MultiSelector.tsx +24 -4
  1272. package/src/MultiSelector/OptionActions.a11y.chromium.spec.ts +1 -0
  1273. package/src/MultiSelector/__tests__/MultiSelector.a11y.chromium.spec.ts +1 -0
  1274. package/src/NavIcon/NavIcon.spec.md +66 -38
  1275. package/src/NavMenu/NavHeadingMenu.spec.md +100 -44
  1276. package/src/NavMenu/NavHeadingMenu.test.tsx +199 -1
  1277. package/src/NavMenu/NavHeadingMenuItem.tsx +54 -6
  1278. package/src/NumberInput/NumberInput.doc.mjs +6 -6
  1279. package/src/NumberInput/NumberInput.spec.md +248 -0
  1280. package/src/NumberInput/NumberInput.test.tsx +187 -14
  1281. package/src/NumberInput/NumberInput.tsx +86 -24
  1282. package/src/NumberInput/__tests__/NumberInput.a11y.chromium.spec.ts +1 -0
  1283. package/src/Pagination/Pagination.test.tsx +2 -2
  1284. package/src/Popover/Popover.doc.mjs +38 -2
  1285. package/src/Popover/Popover.spec.md +89 -10
  1286. package/src/Popover/Popover.test.tsx +340 -2
  1287. package/src/Popover/Popover.tsx +401 -35
  1288. package/src/Popover/PopoverPresentation.test.tsx +952 -0
  1289. package/src/Popover/__tests__/PopoverSecondDocument.a11y.chromium.spec.ts +205 -0
  1290. package/src/Popover/index.ts +5 -1
  1291. package/src/Popover/lazyPopoverBottomSheet.ts +57 -0
  1292. package/src/Popover/usePopover.tsx +11 -5
  1293. package/src/PowerSearch/PowerSearch.spec.md +423 -53
  1294. package/src/PowerSearch/PowerSearch.test.tsx +77 -1
  1295. package/src/PowerSearch/PowerSearch.tsx +7 -5
  1296. package/src/ProgressBar/ProgressBar.test.tsx +12 -0
  1297. package/src/ProgressBar/ProgressBar.tsx +18 -0
  1298. package/src/ProgressBar/__tests__/ProgressBar.a11y.chromium.spec.ts +1 -0
  1299. package/src/RadioList/RadioList.test.tsx +34 -7
  1300. package/src/RadioList/RadioListItem.press.source-build.test.mjs +80 -0
  1301. package/src/RadioList/RadioListItem.tsx +26 -12
  1302. package/src/RadioList/__tests__/RadioGroup.a11y.chromium.spec.ts +1 -0
  1303. package/src/Resizable/__tests__/ResizeHandle.a11y.chromium.spec.ts +1 -0
  1304. package/src/ScrollableArea/ScrollableArea.spec.md +6 -5
  1305. package/src/ScrollableArea/ScrollableArea.test.tsx +5 -0
  1306. package/src/ScrollableArea/ScrollableArea.tsx +4 -0
  1307. package/src/SelectableCard/SelectableCard.doc.mjs +7 -6
  1308. package/src/SelectableCard/SelectableCard.test.tsx +11 -1
  1309. package/src/SelectableCard/SelectableCard.tsx +49 -33
  1310. package/src/Selector/Selector.spec.md +12 -4
  1311. package/src/Selector/Selector.test.tsx +114 -8
  1312. package/src/Selector/Selector.tsx +19 -4
  1313. package/src/Selector/__tests__/EmptyStateAnnouncement.a11y.chromium.spec.ts +1 -0
  1314. package/src/Selector/__tests__/Listbox.a11y.chromium.spec.ts +1 -0
  1315. package/src/Selector/__tests__/Selector.a11y.chromium.spec.ts +1 -0
  1316. package/src/Selector/__tests__/Selector.combobox.a11y.chromium.spec.ts +1 -0
  1317. package/src/SideNav/SideNav.spec.md +51 -30
  1318. package/src/SideNav/SideNav.test.tsx +290 -25
  1319. package/src/SideNav/SideNavCollapseButton.spec.md +161 -0
  1320. package/src/SideNav/SideNavHeading.spec.md +219 -0
  1321. package/src/SideNav/SideNavHeading.tsx +41 -0
  1322. package/src/SideNav/SideNavItem.spec.md +246 -0
  1323. package/src/SideNav/SideNavItem.tsx +40 -9
  1324. package/src/SideNav/SideNavSection.spec.md +153 -0
  1325. package/src/Skeleton/Skeleton.spec.md +99 -42
  1326. package/src/Skeleton/Skeleton.test.tsx +108 -1
  1327. package/src/Skeleton/Skeleton.tsx +30 -2
  1328. package/src/Slider/Slider.test.tsx +172 -0
  1329. package/src/Slider/Slider.tsx +60 -12
  1330. package/src/Slider/__tests__/Slider.a11y.chromium.spec.ts +1 -0
  1331. package/src/Spinner/Spinner.spec.md +231 -0
  1332. package/src/StatusDot/StatusDot.spec.md +139 -51
  1333. package/src/StatusDot/StatusDot.test.tsx +13 -0
  1334. package/src/StatusDot/StatusDot.tsx +27 -0
  1335. package/src/Stepper/Step.spec.md +206 -0
  1336. package/src/Stepper/Step.tsx +19 -3
  1337. package/src/Stepper/Stepper.test.tsx +50 -0
  1338. package/src/Switch/Switch.focusRing.source-build.test.mjs +81 -0
  1339. package/src/Switch/Switch.tsx +11 -9
  1340. package/src/Switch/__tests__/Switch.a11y.chromium.spec.ts +1 -0
  1341. package/src/Switch/switch.markers.stylex.ts +7 -2
  1342. package/src/TabList/Tab.spec.md +201 -0
  1343. package/src/TabList/Tab.tsx +7 -1
  1344. package/src/TabList/TabList.doc.mjs +3 -3
  1345. package/src/TabList/TabMenu.spec.md +196 -0
  1346. package/src/TabList/TabMenu.tsx +2 -0
  1347. package/src/TabList/__tests__/TabListOverflow.interaction.browser.spec.ts +99 -0
  1348. package/src/TabList/__tests__/Tabs.a11y.chromium.spec.ts +1 -0
  1349. package/src/Table/Table.spec.md +54 -30
  1350. package/src/Table/TableCell.tsx +6 -0
  1351. package/src/Table/TableHeaderCell.tsx +2 -0
  1352. package/src/Table/__tests__/Table.a11y.chromium.spec.ts +129 -0
  1353. package/src/Table/__tests__/Table.a11y.contracts.ts +35 -0
  1354. package/src/Table/__tests__/Table.a11y.renders.tsx +112 -0
  1355. package/src/Table/__tests__/Table.a11y.states.ts +140 -0
  1356. package/src/Table/__tests__/Table.a11y.test.tsx +198 -0
  1357. package/src/Table/__tests__/TableMinWidth.a11y.chromium.spec.ts +1 -0
  1358. package/src/Table/__tests__/TableScroll.a11y.chromium.spec.ts +1 -0
  1359. package/src/Table/__tests__/TableStickyDividers.a11y.browser.spec.ts +560 -0
  1360. package/src/Table/plugins/columnResize/useTableColumnResize.tsx +23 -8
  1361. package/src/Table/plugins/rowExpansion/useTableRowExpansion.test.tsx +91 -9
  1362. package/src/Table/plugins/rowExpansion/useTableRowExpansion.tsx +120 -5
  1363. package/src/Table/plugins/sortable/__tests__/useTableSortable.a11y.test.tsx +174 -0
  1364. package/src/Table/plugins/sortable/__tests__/useTableSortable.a11y.ts +86 -0
  1365. package/src/Table/plugins/sortable/useTableSortable.test.tsx +0 -12
  1366. package/src/Table/plugins/stickyColumns/useTableStickyColumns.test.tsx +51 -1
  1367. package/src/Table/plugins/stickyColumns/useTableStickyColumns.tsx +291 -12
  1368. package/src/Table/rowDivider.ts +154 -0
  1369. package/src/Text/Text.spec.md +114 -127
  1370. package/src/TextArea/TextArea.doc.mjs +6 -6
  1371. package/src/TextArea/TextArea.spec.md +164 -64
  1372. package/src/TextArea/TextArea.test.tsx +65 -6
  1373. package/src/TextArea/TextArea.tsx +27 -15
  1374. package/src/TextInput/TextInput.doc.mjs +8 -8
  1375. package/src/TextInput/TextInput.spec.md +258 -0
  1376. package/src/TextInput/TextInput.test.tsx +83 -10
  1377. package/src/TextInput/TextInput.tsx +46 -22
  1378. package/src/TextInput/__tests__/TextInput.a11y.chromium.spec.ts +1 -0
  1379. package/src/Thumbnail/Thumbnail.doc.mjs +1 -2
  1380. package/src/Thumbnail/Thumbnail.spec.md +244 -0
  1381. package/src/Thumbnail/Thumbnail.test.tsx +120 -7
  1382. package/src/Thumbnail/Thumbnail.tsx +77 -31
  1383. package/src/TimeInput/TimeInput.spec.md +273 -0
  1384. package/src/TimeInput/TimeInput.tsx +12 -4
  1385. package/src/TimeInput/TouchTimeField.tsx +2 -1
  1386. package/src/Timestamp/Timestamp.spec.md +252 -0
  1387. package/src/Toast/ToastViewport.modalHost.test.tsx +630 -5
  1388. package/src/Toast/ToastViewport.tsx +27 -2
  1389. package/src/ToggleButton/ToggleButton.spec.md +256 -0
  1390. package/src/ToggleButton/ToggleButtonGroup.spec.md +194 -0
  1391. package/src/ToggleButton/__tests__/ToggleButton.a11y.chromium.spec.ts +1 -0
  1392. package/src/Token/Token.spec.md +271 -0
  1393. package/src/Token/__tests__/TokenRemoveTarget.a11y.chromium.spec.ts +1 -0
  1394. package/src/Tokenizer/Tokenizer.props-type.test.tsx +126 -0
  1395. package/src/Tokenizer/Tokenizer.spec.md +312 -71
  1396. package/src/Tokenizer/Tokenizer.ssr.test.tsx +196 -0
  1397. package/src/Tokenizer/Tokenizer.test.tsx +70 -16
  1398. package/src/Tokenizer/Tokenizer.tsx +651 -113
  1399. package/src/Tokenizer/TokenizerBottomSheet.test.tsx +2719 -0
  1400. package/src/Tokenizer/TokenizerBottomSheet.tsx +957 -0
  1401. package/src/Tokenizer/__tests__/TokenizerEndLane.a11y.chromium.spec.ts +505 -0
  1402. package/src/Tokenizer/useEndLaneReserve.ts +3 -2
  1403. package/src/Toolbar/Toolbar.spec.md +101 -48
  1404. package/src/Toolbar/__tests__/Toolbar.a11y.chromium.spec.ts +1 -0
  1405. package/src/Tooltip/Tooltip.test.tsx +171 -3
  1406. package/src/Tooltip/__tests__/Tooltip.a11y.chromium.spec.ts +1 -0
  1407. package/src/Tooltip/__tests__/Tooltip.a11y.states.ts +2 -2
  1408. package/src/Tooltip/__tests__/TooltipFocusReturn.a11y.chromium.spec.ts +1 -0
  1409. package/src/Tooltip/__tests__/TooltipHoverBridge.a11y.chromium.spec.ts +1 -0
  1410. package/src/Tooltip/__tests__/TooltipTallContent.a11y.browser.spec.ts +646 -0
  1411. package/src/Tooltip/__tests__/TooltipTallContentTracking.a11y.browser.spec.ts +1162 -0
  1412. package/src/Tooltip/useTooltip.tsx +7 -2
  1413. package/src/TopNav/TopNav.spec.md +190 -0
  1414. package/src/TopNav/TopNavHeading.spec.md +204 -0
  1415. package/src/TopNav/TopNavItem.spec.md +189 -0
  1416. package/src/TopNav/TopNavMegaMenu.reduced-motion.source-build.test.mjs +83 -0
  1417. package/src/TopNav/TopNavMegaMenu.spec.md +190 -0
  1418. package/src/TopNav/TopNavMegaMenu.tsx +21 -4
  1419. package/src/TopNav/TopNavMegaMenuFeaturedCard.spec.md +150 -0
  1420. package/src/TopNav/TopNavMegaMenuItem.spec.md +155 -0
  1421. package/src/TopNav/TopNavMenu.spec.md +195 -0
  1422. package/src/TopNav/__tests__/TopNavMobileLongHeading.a11y.chromium.spec.ts +1 -0
  1423. package/src/TreeList/TreeList.doc.mjs +13 -0
  1424. package/src/TreeList/TreeList.spec.md +51 -35
  1425. package/src/TreeList/TreeList.tsx +234 -2
  1426. package/src/TreeList/TreeListItem.tsx +12 -2
  1427. package/src/TreeList/__tests__/TreeList.a11y.chromium.spec.ts +1 -0
  1428. package/src/TreeList/__tests__/TreeListRowNames.a11y.chromium.spec.ts +1 -0
  1429. package/src/Typeahead/BaseTypeahead.tsx +14 -2
  1430. package/src/Typeahead/Typeahead.test.tsx +114 -1
  1431. package/src/Typeahead/Typeahead.tsx +34 -16
  1432. package/src/VisuallyHidden/VisuallyHidden.doc.mjs +1 -1
  1433. package/src/VisuallyHidden/VisuallyHidden.spec.md +170 -0
  1434. package/src/VisuallyHidden/VisuallyHidden.test.tsx +39 -0
  1435. package/src/VisuallyHidden/VisuallyHidden.tsx +38 -5
  1436. package/src/__tests__/BusyOwnerAnnouncement.test.tsx +66 -5
  1437. package/src/__tests__/CardPress.a11y.chromium.spec.ts +353 -0
  1438. package/src/__tests__/DisabledTriggerFocus.a11y.chromium.spec.ts +2 -1
  1439. package/src/__tests__/PressedState.a11y.chromium.spec.ts +1 -0
  1440. package/src/__tests__/pressState.ts +43 -1
  1441. package/src/__tests__/unthemedLength.ts +34 -0
  1442. package/src/gestures/GestureArena.ts +966 -0
  1443. package/src/gestures/GestureRecognizer.ts +626 -0
  1444. package/src/gestures/LongPressGestureRecognizer.ts +186 -0
  1445. package/src/gestures/PanGestureRecognizer.ts +410 -0
  1446. package/src/gestures/TapGestureRecognizer.ts +192 -0
  1447. package/src/gestures/VelocityTracker.ts +194 -0
  1448. package/src/gestures/__tests__/LongPressGestureRecognizer.test.ts +141 -0
  1449. package/src/gestures/__tests__/PanGestureRecognizer.test.ts +327 -0
  1450. package/src/gestures/__tests__/TapGestureRecognizer.test.ts +154 -0
  1451. package/src/gestures/__tests__/VelocityTracker.test.ts +261 -0
  1452. package/src/gestures/__tests__/arena.test.ts +824 -0
  1453. package/src/gestures/__tests__/arenaContinuous.test.ts +207 -0
  1454. package/src/gestures/__tests__/arenaTapLongPress.test.ts +211 -0
  1455. package/src/gestures/__tests__/harness.ts +204 -0
  1456. package/src/gestures/geometry.ts +55 -0
  1457. package/src/gestures/types.ts +161 -0
  1458. package/src/hooks/AnnounceRenderedText.tsx +27 -0
  1459. package/src/hooks/ModalAnnounceProvider.tsx +155 -0
  1460. package/src/hooks/__tests__/MenuPressShadowRoot.a11y.chromium.spec.ts +98 -4
  1461. package/src/hooks/actionGroupTracker.exports.test.ts +28 -0
  1462. package/src/hooks/actionGroupTracker.test.ts +510 -0
  1463. package/src/hooks/actionGroupTracker.ts +449 -0
  1464. package/src/hooks/index.ts +6 -0
  1465. package/src/hooks/modalAnnounce.ts +439 -0
  1466. package/src/hooks/useAdaptivePresentation.ts +46 -9
  1467. package/src/hooks/useAnimatedLayout.doc.mjs +101 -0
  1468. package/src/hooks/useAnimatedLayout.ts +61 -0
  1469. package/src/hooks/useAnnounce.doc.mjs +4 -4
  1470. package/src/hooks/useAnnounce.modal.test.tsx +1291 -0
  1471. package/src/hooks/useAnnounce.test.tsx +64 -4
  1472. package/src/hooks/useAnnounce.ts +452 -28
  1473. package/src/hooks/useAnnounceRenderedText.adopters.test.tsx +226 -0
  1474. package/src/hooks/useAnnounceRenderedText.ts +81 -11
  1475. package/src/hooks/useBusyAnnouncement.adopters.test.tsx +69 -0
  1476. package/src/hooks/useBusyAnnouncement.test.tsx +112 -0
  1477. package/src/hooks/useBusyAnnouncement.ts +64 -54
  1478. package/src/hooks/useFocusTrap.doc.mjs +3 -3
  1479. package/src/hooks/useFocusTrap.test.tsx +135 -2
  1480. package/src/hooks/useFocusTrap.ts +59 -27
  1481. package/src/hooks/useMenuPress.doc.mjs +2 -2
  1482. package/src/hooks/useMenuPress.test.tsx +5 -2
  1483. package/src/hooks/useMenuPress.ts +72 -37
  1484. package/src/hooks/useScrollableArea.test.tsx +159 -0
  1485. package/src/hooks/useScrollableArea.ts +39 -5
  1486. package/src/i18n/generated-locales/en.generated.ts +35 -0
  1487. package/src/i18n/generated-locales/pseudo.generated.ts +37 -0
  1488. package/src/internal/tokenizer-presentation.test.ts +29 -0
  1489. package/src/internal/tokenizer-presentation.ts +25 -0
  1490. package/src/internal/touch.test.ts +44 -0
  1491. package/src/internal/touch.ts +41 -0
  1492. package/src/motion/LayoutChangeSnapshot.tsx +50 -0
  1493. package/src/motion/MEASUREMENTS.md +271 -0
  1494. package/src/motion/README.md +218 -0
  1495. package/src/motion/__tests__/animatedLayout.interaction.browser.spec.ts +1507 -0
  1496. package/src/motion/__tests__/animatedLayoutAdopters.interaction.browser.spec.ts +217 -0
  1497. package/src/motion/__tests__/animatedLayoutBundle.ts +17 -0
  1498. package/src/motion/animatedLayout.boundary.test.ts +139 -0
  1499. package/src/motion/animatedLayout.test.ts +965 -0
  1500. package/src/motion/animatedLayout.ts +1322 -0
  1501. package/src/motion/animatedLayoutAdopters.test.tsx +500 -0
  1502. package/src/motion/animator.test.ts +2653 -0
  1503. package/src/motion/animator.ts +2794 -0
  1504. package/src/motion/bezier.test.ts +52 -0
  1505. package/src/motion/bezier.ts +64 -0
  1506. package/src/motion/coast.test.ts +99 -0
  1507. package/src/motion/coast.ts +150 -0
  1508. package/src/motion/decay.test.ts +120 -0
  1509. package/src/motion/decay.ts +126 -0
  1510. package/src/motion/projection.test.ts +107 -0
  1511. package/src/motion/projection.ts +116 -0
  1512. package/src/motion/reducedMotion.stylex.ts +41 -0
  1513. package/src/motion/reducedMotion.test.ts +129 -0
  1514. package/src/motion/reducedMotion.ts +94 -0
  1515. package/src/motion/reducedMotionPlan.test.ts +182 -0
  1516. package/src/motion/reducedMotionPlan.ts +263 -0
  1517. package/src/motion/resolveSnapPoint.test.ts +189 -0
  1518. package/src/motion/resolveSnapPoint.ts +169 -0
  1519. package/src/motion/roleValue.ts +105 -0
  1520. package/src/motion/roles.test.ts +256 -0
  1521. package/src/motion/roles.ts +262 -0
  1522. package/src/motion/rubberBand.test.ts +88 -0
  1523. package/src/motion/rubberBand.ts +115 -0
  1524. package/src/motion/selectPage.test.ts +31 -0
  1525. package/src/motion/selectPage.ts +55 -0
  1526. package/src/motion/spring.test.ts +650 -0
  1527. package/src/motion/spring.ts +551 -0
  1528. package/src/motion/uikit/gestures.test.ts +89 -0
  1529. package/src/motion/uikit/gestures.ts +359 -0
  1530. package/src/motion/uikit/index.ts +80 -0
  1531. package/src/motion/uikit/navigation.ts +83 -0
  1532. package/src/motion/uikit/scroll.ts +141 -0
  1533. package/src/motion/uikit/springRows.test.ts +71 -0
  1534. package/src/motion/uikit/springs.ts +514 -0
  1535. package/src/motion/uikit/timing.ts +210 -0
  1536. package/src/motion/uikit/uikit.test.ts +364 -0
  1537. package/src/motion/uikit/values.test.ts +110 -0
  1538. package/src/reset.a11y.chromium.spec.ts +1 -0
  1539. package/src/reset.until-found.a11y.browser.spec.ts +1 -0
  1540. package/src/serverSafeComponents.test.ts +10 -0
  1541. package/src/tailwind-theme.css +51 -1
  1542. package/src/tailwind-theme.test.ts +51 -0
  1543. package/src/theme/Theme.test.tsx +28 -0
  1544. package/src/theme/__tests__/SpacingRootFontSize.a11y.chromium.spec.ts +1 -0
  1545. package/src/theme/declarationBoundary.ts +282 -1
  1546. package/src/theme/defineTheme.test.ts +529 -12
  1547. package/src/theme/defineTheme.ts +175 -19
  1548. package/src/theme/derivedVarRegistry.test.ts +28 -5
  1549. package/src/theme/derivedVarRegistry.ts +4 -0
  1550. package/src/theme/expandMotionScale.test.ts +17 -0
  1551. package/src/theme/generateThemeRules.ts +772 -35
  1552. package/src/theme/index.ts +3 -0
  1553. package/src/theme/onMediaTokens.test.ts +186 -0
  1554. package/src/theme/statusColor.ts +189 -0
  1555. package/src/theme/statusRoleDerivation.ts +289 -0
  1556. package/src/theme/themeAdaptations.test.ts +412 -0
  1557. package/src/theme/themeAdaptations.ts +43 -1
  1558. package/src/theme/tokens.stylex.ts +31 -2
  1559. package/src/theme/tokens.test.ts +96 -1
  1560. package/src/theme/tokens.ts +23 -1
  1561. package/src/theme/useTheme.ts +10 -4
  1562. package/src/utils/customPropertyArmLayering.test.ts +131 -0
  1563. package/src/utils/edgeAutoscroll.test.ts +192 -0
  1564. package/src/utils/edgeAutoscroll.ts +111 -0
  1565. package/src/utils/hitArea.test.ts +628 -0
  1566. package/src/utils/hitArea.ts +770 -0
  1567. package/src/utils/touchPresentation.test.ts +323 -0
  1568. package/src/utils/touchPresentation.ts +153 -0
@@ -1,23 +1,34 @@
1
1
  ---
2
2
  schema_version: 3
3
- template_version: 6
3
+ template_version: 7
4
4
  kind: component
5
5
  id: component:CheckboxListItem
6
- authority: draft
6
+ authority: current
7
7
  archive_reason: null
8
8
  superseded_by: null
9
- approved_by: null
10
- approved_at: null
9
+ approved_by: cixzhang
10
+ approved_at: 2026-10-28
11
11
  owners: [cixzhang]
12
12
  review_triggers:
13
- [public-api, behavior, interaction, theming, accessibility, visual]
13
+ [
14
+ public-api,
15
+ behavior,
16
+ layout,
17
+ interaction,
18
+ motion,
19
+ theming,
20
+ styling,
21
+ accessibility,
22
+ visual,
23
+ react-runtime,
24
+ compatibility,
25
+ ]
14
26
  verified_by:
15
27
  [
16
28
  packages/core/src/CheckboxList/CheckboxList.test.tsx,
17
29
  packages/core/src/CheckboxList/__tests__/CheckboxList.a11y.chromium.spec.ts,
18
30
  packages/core/src/CheckboxInput/__tests__/Checkbox.a11y.test.tsx,
19
31
  packages/core/src/CheckboxInput/__tests__/Checkbox.a11y.chromium.spec.ts,
20
- apps/storybook/stories/CheckboxList.stories.tsx,
21
32
  apps/storybook/rtl-audit/targets.json,
22
33
  scripts/check-knowledge.mjs,
23
34
  ]
@@ -32,7 +43,7 @@ architecture:
32
43
  architecture:interaction-modality,
33
44
  ]
34
45
  contributing: []
35
- system_specs: [spec:AST-011, spec:AST-021, spec:AST-038]
46
+ system_specs: [spec:AST-011, spec:AST-021, spec:AST-038, spec:AST-085]
36
47
  ---
37
48
 
38
49
  # CheckboxListItem component contract
@@ -44,12 +55,12 @@ system_specs: [spec:AST-011, spec:AST-021, spec:AST-038]
44
55
  | Public contract | One option row: a native checkbox named by `label` or `aria-label`, described by `description`, with optional `endContent`, rendered through ListItem. Inside a CheckboxList with a `value` array (collection mode), checked state comes from membership and `value` is required. Inside List, or inside a CheckboxList without `value` (standalone mode), the item reads `isChecked` and calls `onCheck`. |
45
56
  | Behavior | The checkbox is the option's only tab stop. Row-surface clicks delegate to it when the item is editable and sits in a CheckboxList or has `onCheck`, or when it has `onClick`; an item `onClick` fires once per direct, keyboard, or row-surface click. Disabled, read-only, and busy states refuse toggling. |
46
57
  | End-user impact | People can operate each option by pointer, touch, and keyboard, hear its name, description, and checked, mixed, disabled, read-only, or busy state, and see a spinner while it saves. |
47
- | Builder impact | Where the item sits, and whether its parent list has `value`, selects the mode; `value` is required only in collection mode. Handlerless meaning, checked-row theming and pointer feedback, consumer DOM-prop targets, and focus-ring ownership remain owner decisions. Read-only click propagation to ancestors is an unscored authority gap routed to the shared clickable-container hook. |
48
- | Compatibility/readiness | Released API, defaults, DOM ownership, and targets are unchanged. This draft records shipped behavior only. |
58
+ | Builder impact | Where the item sits, and whether its parent list has `value`, selects the mode; `value` is required only in collection mode. Handlerless meaning, checked-row theming and pointer feedback, consumer DOM-prop targets, read-only click propagation, and focus-ring ownership stay open questions (OQ1–OQ6). |
59
+ | Compatibility/readiness | Records shipped behavior; no API, default, or DOM change. Handlerless items, checked-row state reflection, and the double focus indicator are listed under Current-state impact. |
49
60
  | Review checks | Reject a second tab stop, a toggle while disabled, read-only, or busy, `isChecked` overriding a parent `value` array, an `onClick` that fires more than once per click, a dropped description relationship, or a new target, state, or event-routing API introduced without an owner decision. |
50
- | Governing rules | `architecture:public-component-api/INV5–INV9`; `architecture:component-theming-surface/INV3–INV6`; `architecture:interaction-modality/INV1–INV5`; `architecture:component-test-sufficiency/INV1–INV7`; `spec:AST-021/FR8–FR10`; `spec:AST-011`; `spec:AST-038/FR7`; WCAG 2.2 1.3.1, 2.1.1, 4.1.2. |
61
+ | Governing rules | `architecture:public-component-api/INV5–INV9`; `architecture:component-theming-surface/INV3–INV6`; `architecture:interaction-modality/INV1–INV5`; `architecture:component-test-sufficiency/INV1–INV7`; `spec:AST-021/FR8–FR10`; `spec:AST-085/FR1, FR7`; `spec:AST-011`; `spec:AST-038/FR7`; WCAG 2.2 1.3.1, 2.1.1, 4.1.2. |
51
62
 
52
- This table is a review projection; the body below becomes authoritative only after owner approval.
63
+ This table is a review projection; the body below is authoritative.
53
64
 
54
65
  ## Intent
55
66
 
@@ -60,7 +71,8 @@ read-only, and busy state, inside a CheckboxList or a plain List.
60
71
  ## Compatibility and migration
61
72
 
62
73
  - Released default preserved: `yes`
63
- - Compatibility class: observational record; no runtime change
74
+ - Compatibility class: records shipped behavior; no public prop, default,
75
+ export, or DOM change
64
76
  - Controlled/uncontrolled behavior: controlled only — by the parent list's
65
77
  `value` in collection mode, by `isChecked` in standalone mode
66
78
  - Migration decision: none
@@ -92,7 +104,7 @@ Consumer migration instructions belong in consumer docs and release notes.
92
104
  truncation — owned by `component:List` and Item.
93
105
  - The checkbox control, its indicator, focus ring, pressed overlay, and busy,
94
106
  disabled, and read-only semantics — owned by `component:CheckboxInput` and
95
- `component:CheckboxIndicator`.
107
+ CheckboxIndicator.
96
108
  - Loading-indicator presentation — owned by `component:Spinner`; delegation
97
109
  mechanics — owned by the shared clickable-container hook.
98
110
  - New targets, reflected states, or event-routing API.
@@ -105,7 +117,7 @@ Consumer migration instructions belong in consumer docs and release notes.
105
117
  | mode | collection (parent has `value`); standalone in CheckboxList without `value`; standalone in List | Collection reads membership and reports through the parent; standalone reads `isChecked` and calls `onCheck`. | Chosen by placement; `isChecked` and `onCheck` are ignored in collection mode. | standalone | component | stable | a collection item without `value` throws |
106
118
  | checked state | unchecked, checked, mixed (standalone only) | Native checkbox state; mixed uses the native `indeterminate` property and proposes `true`. | All modes. | unchecked | caller | stable | rejected by the public type |
107
119
  | change path | parent `onChange`/`changeAction` (collection); `onCheck` (standalone); none | Proposes the next value array or boolean. | Enabled, editable, non-busy items. | none | caller and component | shipped; handlerless meaning unsettled | no handler means no component-owned mutation |
108
- | availability | enabled; item `isDisabled`; group disabled; group disabled with reason | Blocks toggling and the checked-row fill; a group reason keeps the checkbox focusable through `aria-disabled`. | Item and group. | enabled | component | stable | boolean only |
120
+ | availability | enabled; item `isDisabled`; group disabled; group disabled with reason | Blocks toggling and the checked-row fill; the checkbox stays focusable through `aria-disabled`. | Item and group. | enabled | component | stable | boolean only |
109
121
  | read-only | from the group's `isReadOnly` | Keeps the value visible, focusable, and full-opacity while refusing toggles. | Inside CheckboxList only. | false | component | stable | boolean only |
110
122
  | busy | `isLoading`; pending parent `changeAction` for the item's `value` | Spinner in the checkbox, busy row and checkbox, toggling refused. | Per item. | idle | component | stable | boolean/transition state only |
111
123
  | content | `description`, `endContent` | Description describes the checkbox; end content stays caller-owned and outside the name. | All states. | none | caller | stable | typed values only |
@@ -114,30 +126,27 @@ Consumer migration instructions belong in consumer docs and release notes.
114
126
 
115
127
  ## Behavioral and layout contract
116
128
 
117
- Draft requirements identify their basis so observed code is not mistaken for an
118
- intentional decision. A `current` contract contains no unresolved rows.
119
-
120
- | ID | Candidate invariant | Basis | Draft review state |
121
- | ---- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------ |
122
- | FR1 | The row MUST render one native CheckboxInput as ListItem start content; that checkbox MUST be the option's only focusable control, and the row itself MUST NOT be focusable. | shipped source; focused tests; WCAG 2.1.1 and 4.1.2 | verify |
123
- | FR2 | A string `label` MUST name the checkbox; a node `label` MUST name it from the visible label element through `aria-labelledby`; `aria-label` MUST replace the derived name on the checkbox and never reach the row. | shipped source and focused tests | verify |
124
- | FR3 | A renderable `description` MUST describe the checkbox through `aria-describedby`; an absent or empty description MUST add none. | shipped source and focused tests; WCAG 1.3.1 | verify |
125
- | FR4 | Inside a CheckboxList with a `value` array, the item MUST read checked state from membership, throw without `value`, and propose the array with its `value` added or removed through the parent's change path; `isChecked` and `onCheck` MUST be ignored. | shipped source and focused tests | verify |
126
- | FR5 | Inside List, or inside a CheckboxList without `value`, the item MUST read `isChecked` and call `onCheck` with the next boolean; a mixed item MUST propose `true`, and `value` MAY be omitted. | shipped source and focused tests | verify |
127
- | FR6 | Item `isDisabled` or a disabled group MUST disable the checkbox, refuse toggling, and omit the checked-row fill; a group reason keeps the checkbox focusable through `aria-disabled` (`component:CheckboxList` FR9). | shipped source, focused tests, and shared checkbox binding | verify |
128
- | FR7 | Item `isLoading`, or a pending parent `changeAction` for the item's `value`, MUST render Spinner inside the checkbox, mark the row and the checkbox busy, and refuse toggling. | shipped source, focused tests, and Chromium receipts | verify |
129
- | FR8 | A read-only group MUST make the checkbox read-only, focusable, and full-opacity, refuse every toggle, and omit the checked-row fill; the row delegates clicks only when the item has `onClick`. | shipped source, focused tests, and shared checkbox binding; `spec:AST-011` | verify |
130
- | FR9 | On an enabled, editable item inside a CheckboxList or with `onCheck`, a row-surface click outside interactive descendants MUST be delegated to the checkbox; links and buttons in the label, description, or end content MUST keep their own behavior. | shipped source and focused tests | verify |
131
- | FR10 | An item `onClick` MUST fire once for each direct, keyboard, or row-surface click, including on read-only items. | shipped source and focused tests; `architecture:public-component-api/INV5` | verify |
132
- | FR11 | `compact` density MUST render the `sm` checkbox; other densities MUST render `md`. | shipped source and focused test | verify |
133
- | FR12 | An enabled, editable, checked row MUST paint the `--color-accent-muted` fill, and consumer `xstyle` MUST compose after it. | shipped source and Chromium receipts | verify |
134
- | FR13 | `ref`, `className`, `style`, `xstyle`, data attributes, ARIA other than `aria-label`, and events other than `onClick` MUST reach the row `<li>`. | shipped source and focused tests | verify |
135
- | GAP1 | A standalone item with `isChecked` and no `onCheck` is inert but exposed as an editable checkbox; inside a CheckboxList without `value`, its row also delegates clicks and shows pointer feedback. | exact `spec:AST-021` known failure `list-item-handlerless-read-only`; WCAG 4.1.2 | owner decision |
136
- | GAP2 | The item paints the checked-row fill itself, but no selection state is reflected on the row's `list-item`/`item` targets, so a theme cannot restyle checked rows apart from unchecked rows. | `architecture:component-theming-surface/INV6` | owner decision |
137
- | GAP3 | Consumer DOM inputs split between two elements: data attributes and ARIA reach the row, while `onClick` runs on the checkbox and is typed for the row, so `event.currentTarget` is the checkbox and does not carry the row's data attributes. | `architecture:public-component-api/INV5`; `INV9` for any retype or move | owner decision |
138
- | GAP4 | On a read-only item with `onClick`, the item stops the click's propagation, so React ancestors never receive those clicks, while they do for enabled items. The stop exists because the shared clickable-container hook would re-delegate a click that came from an `aria-readonly` delegate target back to it. The item's own `onClick` still fires once per click (FR10). | No current authority owns ancestor propagation; shared clickable-container hook behavior (advisory) | authority gap (unscored); shared-module advisory |
139
- | GAP5 | On an enabled, editable, checked row, the checked-row fill replaces the row's hover and pressed overlays, so pointer hover and hold give no row feedback. | Chromium receipts; `design:user-states` leaves hover and selection treatment outside its current claim | authority gap (unscored); owner decision |
140
- | GAP6 | One keyboard focus move paints two indicators: Item's row focus-within outline and CheckboxInput's indicator ring. | Chromium receipts; `architecture:interaction-modality/INV3` | owner decision |
129
+ | ID | Invariant | Basis |
130
+ | ---- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------- |
131
+ | FR1 | The row MUST render one native CheckboxInput as ListItem start content; that checkbox MUST be the option's only focusable control, and the row itself MUST NOT be focusable. | shipped source; focused tests; WCAG 2.1.1 and 4.1.2 |
132
+ | FR2 | A string `label` MUST name the checkbox; a node `label` MUST name it from the visible label element through `aria-labelledby`; `aria-label` MUST replace the derived name on the checkbox and never reach the row. | shipped source and focused tests |
133
+ | FR3 | A renderable `description` MUST describe the checkbox through `aria-describedby`; an absent or empty description MUST add none. | shipped source and focused tests; WCAG 1.3.1 |
134
+ | FR4 | Inside a CheckboxList with a `value` array, the item MUST read checked state from membership, throw without `value`, and propose the array with its `value` added or removed through the parent's change path; `isChecked` and `onCheck` MUST be ignored. | shipped source and focused tests |
135
+ | FR5 | Inside List, or inside a CheckboxList without `value`, the item MUST read `isChecked` and call `onCheck` with the next boolean; a mixed item MUST propose `true`, and `value` MAY be omitted. The mixed-state gap `component:CheckboxInput` FR1 records applies when the mixed value is kept. | shipped source and focused tests |
136
+ | FR6 | Item `isDisabled` or a disabled group MUST make the checkbox focusable-disabled through `aria-disabled` (`component:CheckboxInput` FR4), refuse toggling, and omit the checked-row fill; a group reason adds the group tooltip (`component:CheckboxList` FR9). | shipped source, focused tests, and shared checkbox binding |
137
+ | FR7 | Item `isLoading`, or a pending parent `changeAction` for the item's `value`, MUST render Spinner inside the checkbox, mark the row and the checkbox busy, and refuse toggling. | shipped source, focused tests, and the Chromium accessibility suite |
138
+ | FR8 | A read-only group MUST make the checkbox read-only, focusable, and full-opacity, refuse every toggle, and omit the checked-row fill; the row delegates clicks only when the item has `onClick`. | shipped source, focused tests, and shared checkbox binding; `spec:AST-011` |
139
+ | FR9 | On an enabled, editable item inside a CheckboxList or with `onCheck`, a row-surface click outside interactive descendants MUST be delegated to the checkbox; links and buttons in the label, description, or end content MUST keep their own behavior. | shipped source and focused tests |
140
+ | FR10 | An item `onClick` MUST fire once for each direct, keyboard, or row-surface click, including on read-only items. | shipped source and focused tests; `architecture:public-component-api/INV5` |
141
+ | FR11 | `compact` density MUST render the `sm` checkbox; other densities MUST render `md`. | shipped source and focused test |
142
+ | FR12 | An enabled, editable, checked row MUST paint the `--color-accent-muted` fill, and consumer `xstyle` MUST compose after it. | shipped source and the Chromium accessibility suite |
143
+ | FR13 | `ref`, `className`, `style`, `xstyle`, data attributes, ARIA other than `aria-label`, and events other than `onClick` MUST reach the row `<li>`. | shipped source and focused tests |
144
+ | FR14 | A standalone item with `isChecked` and no `onCheck` changes nothing on activation. Implementation gap: it declares no read-only state, so the checkbox is exposed as editable (WCAG 2.2 4.1.2); inside a CheckboxList without `value`, its row also delegates clicks and shows pointer feedback. Its meaning is OQ1. | exact `spec:AST-021` known failure `list-item-handlerless-read-only`; WCAG 4.1.2 |
145
+ | FR15 | The item paints the checked-row fill itself and reflects no selection state on the row's `list-item` or `item` targets, so a theme cannot restyle checked rows apart from unchecked rows (OQ2). Selection state MUST be reflected on the owning target (`architecture:component-theming-surface` INV6). Implementation gap: no selection state is reflected. | `architecture:component-theming-surface/INV6` |
146
+ | FR16 | Shipped behavior, not a requirement until its open question is ruled: consumer DOM inputs split between two elements: data attributes and ARIA reach the row, while `onClick` runs on the checkbox and is typed for the row, so `event.currentTarget` is the checkbox and does not carry the row's data attributes (OQ3). | `architecture:public-component-api/INV5`; `INV9` for any retype or move |
147
+ | FR17 | Shipped behavior, not a requirement until its open question is ruled: on a read-only item with `onClick`, the item stops the click's propagation, so React ancestors never receive those clicks, while they do for enabled items (OQ4). The item's own `onClick` still fires once per click (FR10). | Current source; shared clickable-container hook behavior |
148
+ | FR18 | Shipped behavior, not a requirement until its open question is ruled: on an enabled, editable, checked row, the checked-row fill replaces the row's hover and pressed overlays, so pointer hover and hold give no row feedback (OQ5). | the Chromium accessibility suite; `design:user-states` leaves hover and selection treatment outside its current claim |
149
+ | FR19 | One keyboard focus move paints two indicators: Item's row focus-within outline and CheckboxInput's indicator ring (OQ6). One focus move MUST have one owning indicator (`architecture:interaction-modality` INV3). Implementation gap: both indicators paint. | the Chromium accessibility suite; `architecture:interaction-modality/INV3` |
141
150
 
142
151
  ### Allowed variation
143
152
 
@@ -159,7 +168,7 @@ intentional decision. A `current` contract contains no unresolved rows.
159
168
  | Busy option | Spinner, busy row and checkbox, toggling refused | Loading source (prop or pending save) |
160
169
  | Read-only option | Visible, focusable, full-opacity, immutable; `onClick` fires once per click | Whether the item has `onClick` |
161
170
  | Disabled option | Inoperable; no checked-row fill | Item or group source; group reason |
162
- | Handlerless standalone option | Inert; read-only, unavailable, or invalid-usage meaning is unsettled | No policy is introduced by this draft |
171
+ | Handlerless standalone option | Inert; declares no read-only state (FR14, OQ1) | — |
163
172
 
164
173
  ### Transformation and precedence order
165
174
 
@@ -195,7 +204,7 @@ durable constraints and their verification target.
195
204
  - **AR4 — Busy perception.** A busy option MUST expose busy state in the
196
205
  accessibility tree and visibly through Spinner.
197
206
  - **AR5 — Focus visibility.** Keyboard focus on the checkbox MUST stay visible;
198
- which element owns the single indicator is open (GAP6).
207
+ two indicators paint today (FR19, OQ6).
199
208
 
200
209
  ## Design relationships
201
210
 
@@ -204,12 +213,12 @@ durable constraints and their verification target.
204
213
  | Option row | Full-width row with start checkbox, label and description, and end content. | List and Item | Supporting | FR1, FR9, FR13 |
205
214
  | Checkbox | Presents the option's selection indicator. | CheckboxInput owner and `design:user-states` for its press | Prominent | FR1, FR6–FR8, FR11 |
206
215
  | Label, description | Name and describe the checkbox. | Item | Primary content | FR2, FR3 |
207
- | Checked-row fill | Supplements the checkbox state on enabled, editable checked rows. | unsettled (GAP2, GAP5) | Supporting | FR12 |
216
+ | Checked-row fill | Supplements the checkbox state on enabled, editable checked rows. | unsettled (FR15, FR18) | Supporting | FR12 |
208
217
  | Spinner | Replaces the mark while the option is busy. | Spinner | Supporting | FR7 |
209
218
 
210
- This draft adds no `anatomy-theming:v1` block. The composed option anatomy and
211
- its target dispositions are recorded in `component:CheckboxList`'s theming
212
- anatomy, and CheckboxListItem owns no target of its own.
219
+ This record carries no anatomy-theming map. The composed option anatomy and its
220
+ target dispositions are recorded in `component:CheckboxList`'s theming anatomy,
221
+ and CheckboxListItem owns no target of its own.
213
222
 
214
223
  ## Family and system relationships
215
224
 
@@ -233,22 +242,39 @@ anatomy, and CheckboxListItem owns no target of its own.
233
242
 
234
243
  ## Verification map
235
244
 
236
- | Contract | Verification | Representative states | Mutation or failure expectation | Audit section |
237
- | ------------------ | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------ | ---------------------------------------- |
238
- | FR1, FR9, AR2, AR3 | `CheckboxList.test.tsx` single-tab-stop, delegation, and interactive-content suites | Collection option; row-surface click; link in a rich label; interactive end content | A second tab stop, lost delegation, or a toggle from an interactive descendant fails the assertions. | `audit:CheckboxListItem/behavior` |
239
- | FR2, FR3, AR1 | `CheckboxList.test.tsx` accessible-name and description suites; shared checkbox bindings | String and rich label; `aria-label` override; string and node description; absent description | A wrong name or description, or `aria-label` on the row, fails the assertions. | `audit:CheckboxListItem/a11y` |
240
- | FR4, FR5 | `CheckboxList.test.tsx` collection, standalone, and select-all suites | add, remove, missing `value`, mixed, select-all, `isChecked` with a parent `value` array | A wrong array or boolean, a missing error, or `isChecked` overriding the parent fails the assertions. | `audit:CheckboxListItem/behavior` |
241
- | FR6–FR8, AR4 | `CheckboxList.test.tsx` disabled, loading, pending, and read-only suites; shared checkbox bindings; Chromium receipts | Item and group disabled; reason; loading; pending; read-only with and without `onClick` | A toggle while disabled, read-only, or busy, a lost busy state, or a read-only toggle fails the tests. | `audit:CheckboxListItem/a11y` |
242
- | FR10 | `CheckboxList.test.tsx` item `onClick` and read-only click tests | Enabled and read-only; direct, keyboard, and row-surface clicks | An `onClick` that fires zero or several times per click fails the assertions. | `audit:CheckboxListItem/behavior` |
243
- | FR11 | `CheckboxList.test.tsx` density test | compact and balanced | A wrong checkbox size fails the assertion. | `audit:CheckboxListItem/behavior` |
244
- | FR12 | Chromium checked, hover, and pressed receipts | light and dark | A missing or misplaced fill fails the receipts' row-paint check. | `audit:CheckboxListItem/design-rendered` |
245
- | FR13 | `CheckboxList.test.tsx` pass-through, data-testid, and ARIA tests | row ref, class, style, data, ARIA | A dropped or misrouted input fails the assertions. | `audit:CheckboxListItem/api` |
246
- | Direction | curated RTL D2 target `core-checkboxlist--rich-descriptions` | LTR and RTL | The checkbox and end content fail to swap inline order. | `audit:CheckboxListItem/i18n-rtl` |
245
+ | Contract | Verification | Representative states | Mutation or failure expectation | Audit section |
246
+ | ------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------- |
247
+ | FR1, FR9, AR2, AR3 | `CheckboxList.test.tsx` single-tab-stop, row-click, link-in-label, and interactive end-content cases | Collection option; row-surface click; link in a rich label; interactive end content | A second tab stop, lost delegation, or a toggle from an interactive descendant fails. | `audit:CheckboxListItem/interaction` |
248
+ | FR2, FR3, AR1 | `CheckboxList.test.tsx` accessible-name and description cases; shared checkbox bindings | String and rich label; `aria-label`; string and node description; absent description | A wrong name or description, or `aria-label` on the row, fails. | `audit:CheckboxListItem/accessibility` |
249
+ | FR4, FR5 | `CheckboxList.test.tsx` collection, standalone, and select-all cases | Add, remove, missing `value`, mixed, select-all, `isChecked` with a parent array | A wrong array or boolean, a missing error, or `isChecked` overriding membership fails. | `audit:CheckboxListItem/behavior` |
250
+ | FR6–FR8, AR4 | `CheckboxList.test.tsx` disabled, loading, pending, and read-only cases; `CheckboxList.a11y.chromium.spec.ts` `disabled-*`, `loading-item`, `pending-*`, and `read-only` cases | Item and group disabled; reason; loading; pending; read-only | A toggle while disabled, read-only, or busy, or a lost busy state, fails. | `audit:CheckboxListItem/accessibility` |
251
+ | FR10, FR17 | `CheckboxList.test.tsx` item `onClick` and read-only click cases | Enabled and read-only; direct, keyboard, and row-surface clicks | An `onClick` that fires zero or several times per click fails. Evidence gap: no test asserts the stopped propagation on read-only items (FR17). | `audit:CheckboxListItem/behavior` |
252
+ | FR11 | `CheckboxList.test.tsx` density case | Compact and balanced | A wrong checkbox size fails. | `audit:CheckboxListItem/layout` |
253
+ | FR12, FR18 | `CheckboxList.a11y.chromium.spec.ts` `checked`, `hover-*`, and `pressed-*` cases | Light and dark; unchecked and checked | A missing or misplaced fill fails the row-paint check. Evidence gap: no assertion that `xstyle` composes after the fill. | `audit:CheckboxListItem/visual` |
254
+ | FR13, FR16 | `CheckboxList.test.tsx` ref and styling, data-testid, and ARIA cases | Row ref, class, style, data, ARIA | A dropped or misrouted input fails. Evidence gap: no test asserts `event.currentTarget` for `onClick` (FR16). | `audit:CheckboxListItem/api` |
255
+ | FR14 | `Checkbox.a11y.test.tsx` known failure `list-item-handlerless-read-only`; `CheckboxList.a11y.chromium.spec.ts` `handlerless` case | Standalone with `isChecked` and no `onCheck` | The recorded known failure stops matching when its gap closes. | `audit:CheckboxListItem/accessibility` |
256
+ | FR15, FR19, AR5 | `CheckboxList.a11y.chromium.spec.ts` `focus-visible` and `forced-colors-focus` cases | Keyboard focus; forced colors | A lost focus indicator fails. Evidence gap: no test asserts the absent selection state (FR15) or counts focus indicators (FR19). | `audit:CheckboxListItem/visual` |
257
+ | Direction | RTL audit target `core-checkboxlist--rich-descriptions` (`apps/storybook/rtl-audit/targets.json`); `CheckboxList.a11y.chromium.spec.ts` `rtl` case | LTR and RTL | The checkbox and end content fail to swap inline order. | `audit:CheckboxListItem/layout` |
258
+ | ORD1–ORD4, PR1 | Covered by the FR4–FR10 and FR13 rows. Evidence gap: no test asserts the absence of observers, timers, or global listeners | — | — | `audit:CheckboxListItem/behavior` |
259
+
260
+ ## Current-state impact
261
+
262
+ - **Handlerless item (FR14).** A standalone item with `isChecked` and no
263
+ `onCheck` is exposed as an editable checkbox though activation changes
264
+ nothing (WCAG 2.2 4.1.2). The shared checkbox suite records this as a known
265
+ failure; the meaning is OQ1.
266
+ - **Mixed state after activation (FR5).** A standalone mixed item whose value
267
+ stays mixed loses its native mixed state on activation, as
268
+ `component:CheckboxInput` records.
269
+ - **Checked-row state (FR15).** No selection state is reflected on the row
270
+ targets, against `architecture:component-theming-surface` INV6.
271
+ - **Two focus indicators (FR19).** Keyboard focus paints both the row outline
272
+ and the checkbox ring, against `architecture:interaction-modality` INV3.
247
273
 
248
274
  ## Decision log
249
275
 
250
- None. This draft records shipped behavior; it introduces no new API, default,
251
- target, or subjective visual decision.
276
+ No component-local decision. CheckboxListItem applies `spec:AST-021` and
277
+ `spec:AST-085`.
252
278
 
253
279
  ## Open questions
254
280
 
@@ -260,9 +286,9 @@ target, or subjective visual decision.
260
286
  - **OQ3 — Which element owns consumer DOM inputs?** (`human-api`) Data and ARIA
261
287
  reach the row while `onClick` runs on the checkbox under a row-typed handler.
262
288
  - **OQ4 — Should read-only item clicks propagate?** (`human-api`) No current
263
- authority owns ancestor propagation, so this is an unscored authority gap.
264
- Removing the stop needs the shared clickable-container hook to stop
265
- re-delegating clicks that already came from its delegate target.
289
+ authority owns ancestor propagation. The stop exists because the shared
290
+ clickable-container hook would otherwise re-delegate a click that came from
291
+ its `aria-readonly` delegate target back to it.
266
292
  - **OQ5 — What hover and pressed feedback should a checked row show?**
267
293
  (`human-design`) The checked-row fill currently replaces both overlays.
268
294
  - **OQ6 — Which element paints the option's focus ring?** (`human-design`)
@@ -1,4 +1,5 @@
1
1
  // Copyright (c) Meta Platforms, Inc. and affiliates.
2
+ // @pr-a11y audit CheckboxList, CheckboxListItem
2
3
 
3
4
  /**
4
5
  * @file CheckboxList.a11y.chromium.spec.ts
@@ -38,8 +38,7 @@ export const docs = {
38
38
  container: true,
39
39
  targets: [{className: 'astryx-clickable-card', visualProps: ['variant']}],
40
40
  vars: [
41
- {name: '--_press-overlay', description: 'Fill of the ::after interaction overlay: transparent at rest, the hover overlay token on hover (hover-capable pointers), the pressed overlay token while pressed (`:active` on a mouse; `data-astryx-press="on"` written by the touch press controller under a finger) and the hover token for the release fade. Set on the card element by its own interaction arms.', default: 'transparent', private: true},
42
- {name: '--_press-overlay-transition', description: 'Duration of the overlay\'s background-color transition: the fast duration token, except 0s while a believed touch press paints so it lands on the first frame.', default: 'var(--duration-fast)', private: true},
41
+ {name: '--_press-overlay', description: 'Colour of the ::after interaction overlay for the hover and mouse states: transparent at rest, the hover overlay token on hover (hover-capable pointers), the pressed overlay token while a mouse holds `:active`. A press the touch press controller paints (`data-astryx-press`) is the overlay\'s image instead, at the press\'s strength, and the colour yields to it. Set on the card element by its own interaction arms.', default: 'transparent', private: true},
43
42
  ],
44
43
  },
45
44
  playground: {
@@ -4,7 +4,12 @@ import {describe, it, expect, vi} from 'vitest';
4
4
  import {render, screen, fireEvent} from '@testing-library/react';
5
5
  import userEvent from '@testing-library/user-event';
6
6
  import {ClickableCard} from './ClickableCard';
7
- import {hasReleaseFade, readsPressStrength} from '../__tests__/pressState';
7
+ import {
8
+ afterPaintsPress,
9
+ hasReleaseFade,
10
+ pressArmsShadowedByDefault,
11
+ readsPressStrength,
12
+ } from '../__tests__/pressState';
8
13
 
9
14
  describe('ClickableCard', () => {
10
15
  it('renders children', () => {
@@ -257,11 +262,17 @@ describe('ClickableCard pressed state (touch)', () => {
257
262
  throw new Error('the card carries no pressable marker');
258
263
  }
259
264
  // The controller writes the card; the card owns the strength and its
260
- // release, and `--_press-overlay` (what the `::after` paints) is the
261
- // pressed token at that strength on both touch arms.
265
+ // release, and its `::after` paints the pressed token at that strength
266
+ // as its image on both arms, its hover and mouse colour yielding.
262
267
  expect(hasReleaseFade(card)).toBe(true);
263
268
  expect(readsPressStrength(card, '[data-astryx-press="on"]')).toBe(true);
264
269
  expect(readsPressStrength(card)).toBe(true);
270
+ expect(afterPaintsPress(card, '[data-astryx-press="on"]')).toBe(true);
271
+ expect(afterPaintsPress(card)).toBe(true);
272
+ // No press arm sits on a custom property the card also declares without
273
+ // it: in a layered stylesheet that declaration wins and the press never
274
+ // paints.
275
+ expect(pressArmsShadowedByDefault(card)).toEqual([]);
265
276
  });
266
277
 
267
278
  it('carries none of it when disabled', () => {
@@ -60,7 +60,11 @@ import {disabledInteractionProps} from '../utils/disabledInteraction';
60
60
  // element the controller writes to (`pressedAlpha`) at the press's strength,
61
61
  // 1 while on and 1 → 0 over the release, and inherited resolved by the
62
62
  // `::after` that paints it. See interactionOverlay.stylex.ts.
63
- const pressedOverlayColor = 'var(--_press-paint)';
63
+ const pressedOverlayImage = 'var(--_press-paint-image)';
64
+ /** Written by the press controller while it paints a press. */
65
+ const PRESSED_ON = '[data-astryx-press="on"]';
66
+ /** Written by the press controller for the press's release. */
67
+ const PRESSED_FADING = '[data-astryx-press="fading"]';
64
68
 
65
69
  const styles = stylex.create({
66
70
  interactive: {
@@ -74,16 +78,18 @@ const styles = stylex.create({
74
78
  },
75
79
  // Hover and pressed overlay. Hover is guarded by @media (hover: hover) so
76
80
  // touch devices don't show a stuck hover state; the press has two arms,
77
- // `:active` for a mouse and `data-astryx-press` for a finger.
81
+ // `:active` for a mouse and `data-astryx-press` for the press controller.
78
82
  overlay: {
79
- // The `::after` layer paints whatever `--_press-overlay` says, and the
80
- // interaction arms set that variable on the element itself. Setting the
81
- // pseudo-element's colour from compound keys (`:active::after`) would
82
- // leave the touch arms unable to outrank the mouse arm: a pseudo-element
83
- // key carries the highest generated priority, and the `data-astryx-press`
84
- // attribute the touch press model writes must win over `:active`, which
85
- // still matches under a finger (see interactionOverlay.stylex.ts). Same
86
- // enabled guard as the shared overlay utility.
83
+ // The `::after` layer paints the hover and mouse states as its colour,
84
+ // `--_press-overlay`, which their arms set on the element itself (same
85
+ // enabled guard as the shared overlay utility). The press the controller
86
+ // paints (a finger's, and on a touch-first device a mouse's or a key's)
87
+ // is the same layer's image, keyed on the `data-astryx-press` attribute
88
+ // the controller writes. Every arm of that press is a plain property of
89
+ // the `::after`, which outranks the layer's own defaults in a layered
90
+ // stylesheet and a flat one alike. A custom property's attribute arm
91
+ // does not: a layered build emits the property's default outside the
92
+ // priority layers its attribute arms land in, and the default wins.
87
93
  '--_press-overlay': {
88
94
  default: 'transparent',
89
95
  ':where(:not(:disabled,[aria-disabled="true"]))': {
@@ -98,32 +104,42 @@ const styles = stylex.create({
98
104
  colorVars['--color-overlay-hover'],
99
105
  ':active': colorVars['--color-overlay-pressed'],
100
106
  },
101
- // The touch arms paint through the press's strength, which the
102
- // card's `pressedAlpha` arms own: 1 on the first frame of a believed
103
- // press, then 1 → 0 over the release. The `::after` inherits the
104
- // resolved colour and repaints with it on every frame of the fade.
105
- '[data-astryx-press="on"]': pressedOverlayColor,
106
- '[data-astryx-press="fading"]': pressedOverlayColor,
107
107
  },
108
108
  },
109
- // A believed touch press paints on the first frame, and the release is the
110
- // strength's own animation, so neither may pass through the layer's colour
111
- // transition (it would fade the onset in, and drag behind the release).
112
- // The mouse states keep the fast fade.
113
- '--_press-overlay-transition': {
114
- default: durationVars['--duration-fast'],
115
- '[data-astryx-press="on"]': '0s',
116
- '[data-astryx-press="fading"]': '0s',
117
- },
118
109
  '::after': {
119
110
  content: '""',
120
111
  position: 'absolute',
121
112
  inset: 0,
122
113
  pointerEvents: 'none',
123
- transitionProperty: 'background-color',
124
- transitionDuration: 'var(--_press-overlay-transition)',
114
+ // A press the controller paints shows on its first frame and fades on
115
+ // its strength's own animation, so the colour it replaces drops out at
116
+ // once rather than crossfading: no transition while it paints. The
117
+ // mouse states keep the fast fade.
118
+ transitionProperty: {
119
+ default: 'background-color',
120
+ [PRESSED_ON]: 'none',
121
+ [PRESSED_FADING]: 'none',
122
+ },
123
+ transitionDuration: durationVars['--duration-fast'],
125
124
  transitionTimingFunction: easeVars['--ease-standard'],
126
- backgroundColor: 'var(--_press-overlay)',
125
+ // While the controller paints, the colour yields to the image: a
126
+ // touchscreen beside a fine pointer still matches `:active` under a
127
+ // finger, and the press would otherwise paint twice.
128
+ backgroundColor: {
129
+ default: 'var(--_press-overlay)',
130
+ [PRESSED_ON]: 'transparent',
131
+ [PRESSED_FADING]: 'transparent',
132
+ },
133
+ // The press at its strength, which the card's `pressedAlpha` arms own:
134
+ // 1 on the first frame of a believed press, then 1 → 0 over the
135
+ // release. The `::after` inherits the resolved paint and repaints with
136
+ // it on every frame of the fade. Read only inside this element's own
137
+ // arms, so a pressed ancestor's strength never paints here.
138
+ backgroundImage: {
139
+ default: null,
140
+ [PRESSED_ON]: pressedOverlayImage,
141
+ [PRESSED_FADING]: pressedOverlayImage,
142
+ },
127
143
  },
128
144
  },
129
145
  // Borderless variants (everything except `default`): drop the transparent