@astryxdesign/core 0.7.4 → 0.7.5-canary.04434e7

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 (546) hide show
  1. package/dist/AlertDialog/AlertDialog.d.ts +2 -2
  2. package/dist/AlertDialog/index.d.ts +4 -4
  3. package/dist/AlertDialog/useImperativeAlertDialog.d.ts +1 -1
  4. package/dist/AppShell/AppShell.d.ts +4 -4
  5. package/dist/AppShell/index.d.ts +4 -4
  6. package/dist/AspectRatio/AspectRatio.d.ts +1 -1
  7. package/dist/AspectRatio/index.d.ts +2 -2
  8. package/dist/Avatar/Avatar.d.ts +2 -2
  9. package/dist/Avatar/AvatarStatusDot.d.ts +2 -2
  10. package/dist/Avatar/index.d.ts +4 -4
  11. package/dist/AvatarGroup/AvatarGroup.d.ts +2 -2
  12. package/dist/AvatarGroup/AvatarGroupContext.d.ts +1 -1
  13. package/dist/AvatarGroup/AvatarGroupOverflow.d.ts +1 -1
  14. package/dist/AvatarGroup/index.d.ts +6 -6
  15. package/dist/Badge/Badge.d.ts +2 -2
  16. package/dist/Badge/index.d.ts +2 -2
  17. package/dist/Banner/Banner.d.ts +4 -4
  18. package/dist/Banner/index.d.ts +2 -2
  19. package/dist/Blockquote/Blockquote.d.ts +1 -1
  20. package/dist/Blockquote/index.d.ts +2 -2
  21. package/dist/BottomSheet/BottomSheet.d.ts +10 -6
  22. package/dist/BottomSheet/BottomSheet.d.ts.map +1 -1
  23. package/dist/BottomSheet/BottomSheet.js +12 -1
  24. package/dist/BottomSheet/BottomSheetPanel.d.ts +3 -3
  25. package/dist/BottomSheet/BottomSheetSwitcher.d.ts +1 -1
  26. package/dist/BottomSheet/BottomSheetSwitcherContext.d.ts +2 -2
  27. package/dist/BottomSheet/index.d.ts +4 -4
  28. package/dist/Breadcrumbs/BreadcrumbItem.d.ts +4 -4
  29. package/dist/Breadcrumbs/Breadcrumbs.d.ts +2 -2
  30. package/dist/Breadcrumbs/index.d.ts +12 -12
  31. package/dist/Button/Button.d.ts +4 -4
  32. package/dist/Button/index.d.ts +2 -2
  33. package/dist/ButtonGroup/ButtonGroup.d.ts +4 -4
  34. package/dist/ButtonGroup/index.d.ts +4 -4
  35. package/dist/Calendar/Calendar.d.ts +3 -3
  36. package/dist/Calendar/dayCellUtils.d.ts +1 -1
  37. package/dist/Calendar/getInitialFocusDate.d.ts +2 -2
  38. package/dist/Calendar/getStandaloneShortWeekdayNames.d.ts +1 -1
  39. package/dist/Calendar/hooks/index.d.ts +6 -6
  40. package/dist/Calendar/hooks/useCalendarConstraints.d.ts +2 -2
  41. package/dist/Calendar/hooks/useCalendarDays.d.ts +2 -2
  42. package/dist/Calendar/hooks/useCalendarNavigation.d.ts +2 -2
  43. package/dist/Calendar/index.d.ts +5 -5
  44. package/dist/Calendar/utils.d.ts +1 -1
  45. package/dist/Card/Card.d.ts +4 -4
  46. package/dist/Card/index.d.ts +2 -2
  47. package/dist/Carousel/Carousel.d.ts +2 -2
  48. package/dist/Carousel/index.d.ts +2 -2
  49. package/dist/Center/Center.d.ts +2 -2
  50. package/dist/Center/index.d.ts +2 -2
  51. package/dist/Chat/ChatComposer.d.ts +1 -1
  52. package/dist/Chat/ChatComposerDrawer.d.ts +1 -1
  53. package/dist/Chat/ChatComposerInput.d.ts +4 -4
  54. package/dist/Chat/ChatDictationButton.d.ts +2 -2
  55. package/dist/Chat/ChatLayout.d.ts +1 -1
  56. package/dist/Chat/ChatLayoutScrollButton.d.ts +1 -1
  57. package/dist/Chat/ChatMessage.d.ts +2 -2
  58. package/dist/Chat/ChatMessageBubble.d.ts +2 -2
  59. package/dist/Chat/ChatMessageList.d.ts +3 -3
  60. package/dist/Chat/ChatMessageMetadata.d.ts +1 -1
  61. package/dist/Chat/ChatSendButton.d.ts +1 -1
  62. package/dist/Chat/ChatSystemMessage.d.ts +1 -1
  63. package/dist/Chat/ChatTokenizedText.d.ts +2 -2
  64. package/dist/Chat/ChatToolCalls.d.ts +1 -1
  65. package/dist/Chat/index.d.ts +43 -43
  66. package/dist/Chat/useChatComposerTokens.d.ts +1 -1
  67. package/dist/Chat/useChatDictation.d.ts +1 -1
  68. package/dist/Chat/useChatPasteAsToken.d.ts +1 -1
  69. package/dist/Chat/useTriggerMenu.d.ts +2 -2
  70. package/dist/CheckboxInput/CheckboxInput.d.ts +4 -4
  71. package/dist/CheckboxInput/index.d.ts +2 -2
  72. package/dist/CheckboxList/CheckboxList.d.ts +4 -4
  73. package/dist/CheckboxList/CheckboxListItem.d.ts +2 -2
  74. package/dist/CheckboxList/index.d.ts +4 -4
  75. package/dist/Citation/Citation.d.ts +1 -1
  76. package/dist/Citation/index.d.ts +2 -2
  77. package/dist/ClickableCard/ClickableCard.d.ts +3 -3
  78. package/dist/ClickableCard/index.d.ts +2 -2
  79. package/dist/Code/Code.d.ts +1 -1
  80. package/dist/Code/index.d.ts +1 -1
  81. package/dist/CodeBlock/CodeBlock.d.ts +2 -2
  82. package/dist/CodeBlock/highlightRanges.d.ts +1 -1
  83. package/dist/CodeBlock/index.d.ts +8 -8
  84. package/dist/Collapsible/Collapsible.d.ts +2 -2
  85. package/dist/Collapsible/CollapsibleGroup.d.ts +2 -2
  86. package/dist/Collapsible/index.d.ts +7 -7
  87. package/dist/CommandPalette/CommandPalette.d.ts +2 -2
  88. package/dist/CommandPalette/CommandPaletteContext.d.ts +1 -1
  89. package/dist/CommandPalette/CommandPaletteEmpty.d.ts +1 -1
  90. package/dist/CommandPalette/CommandPaletteFooter.d.ts +1 -1
  91. package/dist/CommandPalette/CommandPaletteGroup.d.ts +1 -1
  92. package/dist/CommandPalette/CommandPaletteInput.d.ts +1 -1
  93. package/dist/CommandPalette/CommandPaletteItem.d.ts +1 -1
  94. package/dist/CommandPalette/CommandPaletteList.d.ts +1 -1
  95. package/dist/CommandPalette/index.d.ts +16 -16
  96. package/dist/ComplexSelector/ComplexSelector.d.ts +5 -5
  97. package/dist/ComplexSelector/index.d.ts +1 -1
  98. package/dist/ContextMenu/ContextMenu.d.ts +4 -4
  99. package/dist/ContextMenu/index.d.ts +9 -9
  100. package/dist/DateInput/DateInput.d.ts +7 -7
  101. package/dist/DateInput/MonthScroller.d.ts +1 -1
  102. package/dist/DateInput/NativeDateField.d.ts +1 -1
  103. package/dist/DateInput/TouchDateField.d.ts +1 -1
  104. package/dist/DateInput/Wheel.d.ts.map +1 -1
  105. package/dist/DateInput/Wheel.js +1 -1
  106. package/dist/DateInput/index.d.ts +2 -2
  107. package/dist/DateInput/monthGeometry.d.ts +1 -1
  108. package/dist/DateRangeInput/DateRangeInput.d.ts +6 -6
  109. package/dist/DateRangeInput/index.d.ts +2 -2
  110. package/dist/DateTimeInput/DateTimeInput.d.ts +6 -6
  111. package/dist/DateTimeInput/NativeDateSegment.d.ts +3 -3
  112. package/dist/DateTimeInput/NativeTimeSegment.d.ts +4 -4
  113. package/dist/DateTimeInput/TouchDateTimeField.d.ts +1 -1
  114. package/dist/DateTimeInput/index.d.ts +2 -2
  115. package/dist/Dialog/Dialog.d.ts +3 -3
  116. package/dist/Dialog/DialogHeader.d.ts +1 -1
  117. package/dist/Dialog/index.d.ts +6 -6
  118. package/dist/Dialog/useImperativeDialog.d.ts +1 -1
  119. package/dist/Divider/Divider.d.ts +2 -2
  120. package/dist/Divider/index.d.ts +2 -2
  121. package/dist/Drawer/Drawer.d.ts +3 -3
  122. package/dist/Drawer/DrawerHeader.d.ts +1 -1
  123. package/dist/Drawer/index.d.ts +4 -4
  124. package/dist/DropdownMenu/DropdownMenu.d.ts +5 -5
  125. package/dist/DropdownMenu/DropdownMenuCheckboxItem.d.ts +2 -2
  126. package/dist/DropdownMenu/DropdownMenuDivider.d.ts +1 -1
  127. package/dist/DropdownMenu/DropdownMenuGroup.d.ts +1 -1
  128. package/dist/DropdownMenu/DropdownMenuItem.d.ts +2 -2
  129. package/dist/DropdownMenu/DropdownMenuRadioGroup.d.ts +1 -1
  130. package/dist/DropdownMenu/DropdownMenuRadioItem.d.ts +12 -7
  131. package/dist/DropdownMenu/DropdownMenuRadioItem.d.ts.map +1 -1
  132. package/dist/DropdownMenu/DropdownMenuRadioItem.js +13 -5
  133. package/dist/DropdownMenu/DropdownMenuSubMenu.d.ts +2 -2
  134. package/dist/DropdownMenu/MenuBottomSheetActionList.d.ts +1 -1
  135. package/dist/DropdownMenu/index.d.ts +10 -10
  136. package/dist/DropdownMenu/lazyMenuBottomSheet.d.ts +2 -2
  137. package/dist/DropdownMenu/renderDropdownItems.d.ts +1 -1
  138. package/dist/DropdownMenu/useMenuDrillIn.d.ts +1 -1
  139. package/dist/EmptyState/EmptyState.d.ts +1 -1
  140. package/dist/EmptyState/index.d.ts +2 -2
  141. package/dist/Field/Field.d.ts +5 -5
  142. package/dist/Field/FieldLabel.d.ts +2 -2
  143. package/dist/Field/PanelSearchInput.d.ts +1 -1
  144. package/dist/Field/fieldInputFamily.testing.d.ts +1 -1
  145. package/dist/Field/fieldParts.d.ts +1 -1
  146. package/dist/Field/index.d.ts +10 -10
  147. package/dist/Field/inputDisabledFocus.d.ts +14 -0
  148. package/dist/Field/inputDisabledFocus.d.ts.map +1 -0
  149. package/dist/Field/inputDisabledFocus.js +19 -0
  150. package/dist/FieldStatus/FieldStatus.d.ts +3 -3
  151. package/dist/FieldStatus/index.d.ts +2 -2
  152. package/dist/FieldStatus/useFieldStatusAnnouncement.d.ts +1 -1
  153. package/dist/FileInput/FileInput.d.ts +4 -4
  154. package/dist/FileInput/index.d.ts +2 -2
  155. package/dist/FormLayout/FormLayout.d.ts +2 -2
  156. package/dist/FormLayout/index.d.ts +4 -4
  157. package/dist/Grid/Grid.d.ts +3 -3
  158. package/dist/Grid/GridSpan.d.ts +1 -1
  159. package/dist/Grid/index.d.ts +4 -4
  160. package/dist/HStack/HStack.d.ts +2 -2
  161. package/dist/HStack/index.d.ts +1 -1
  162. package/dist/Heading/Heading.d.ts +4 -4
  163. package/dist/Heading/index.d.ts +1 -1
  164. package/dist/HoverCard/HoverCard.d.ts +4 -4
  165. package/dist/HoverCard/index.d.ts +4 -4
  166. package/dist/HoverCard/useHoverCard.d.ts +2 -2
  167. package/dist/Icon/Icon.d.ts +3 -3
  168. package/dist/Icon/IconDefaultSizeContext.d.ts +1 -1
  169. package/dist/Icon/defaultIcons.d.ts +1 -1
  170. package/dist/Icon/globalIconRegistry.d.ts +1 -1
  171. package/dist/Icon/index.d.ts +5 -5
  172. package/dist/Icon/useIcon.d.ts +1 -1
  173. package/dist/IconButton/IconButton.d.ts +1 -1
  174. package/dist/IconButton/index.d.ts +2 -2
  175. package/dist/Indicator/CheckIndicator.d.ts +1 -1
  176. package/dist/Indicator/CheckboxIndicator.d.ts +1 -1
  177. package/dist/Indicator/RadioIndicator.d.ts +1 -1
  178. package/dist/Indicator/index.d.ts +8 -8
  179. package/dist/Indicator/indicatorRegistry.d.ts +2 -2
  180. package/dist/Indicator/types.d.ts +1 -1
  181. package/dist/Indicator/useIndicator.d.ts +2 -2
  182. package/dist/InputGroup/InputGroup.d.ts +2 -2
  183. package/dist/InputGroup/InputGroupText.d.ts +1 -1
  184. package/dist/InputGroup/index.d.ts +6 -6
  185. package/dist/InteractiveRoleContext/InteractiveRoleContext.d.ts +1 -1
  186. package/dist/InteractiveRoleContext/index.d.ts +1 -1
  187. package/dist/Item/Item.d.ts +1 -1
  188. package/dist/Item/ItemSwipeLayer.d.ts +2 -2
  189. package/dist/Item/index.d.ts +2 -2
  190. package/dist/Kbd/Kbd.d.ts +1 -1
  191. package/dist/Kbd/index.d.ts +2 -2
  192. package/dist/Layer/LayerProvider.d.ts +1 -1
  193. package/dist/Layer/index.d.ts +18 -18
  194. package/dist/Layer/layerInset.d.ts +1 -1
  195. package/dist/Layer/layerSlideRules.d.ts +1 -1
  196. package/dist/Layer/modalOutlet.d.ts +1 -1
  197. package/dist/Layer/modalOutlet.js +1 -1
  198. package/dist/Layer/useLayerDismissal.d.ts +1 -1
  199. package/dist/Layer/useTouchTrigger.d.ts +14 -1
  200. package/dist/Layer/useTouchTrigger.d.ts.map +1 -1
  201. package/dist/Layer/useTouchTrigger.js +72 -17
  202. package/dist/Layout/Layout.d.ts +2 -2
  203. package/dist/Layout/LayoutContent.d.ts +2 -2
  204. package/dist/Layout/LayoutFooter.d.ts +2 -2
  205. package/dist/Layout/LayoutHeader.d.ts +2 -2
  206. package/dist/Layout/LayoutPanel.d.ts +3 -3
  207. package/dist/Layout/index.d.ts +29 -29
  208. package/dist/Layout/padding.stylex.d.ts +1 -1
  209. package/dist/Lightbox/Lightbox.d.ts +1 -1
  210. package/dist/Lightbox/index.d.ts +4 -4
  211. package/dist/Lightbox/useLightbox.d.ts +1 -1
  212. package/dist/Link/Link.d.ts +3 -3
  213. package/dist/Link/LinkContext.d.ts +1 -1
  214. package/dist/Link/LinkProvider.d.ts +1 -1
  215. package/dist/Link/index.d.ts +8 -8
  216. package/dist/Link/useLinkComponent.d.ts +1 -1
  217. package/dist/List/List.d.ts +3 -3
  218. package/dist/List/ListItem.d.ts +2 -2
  219. package/dist/List/index.d.ts +4 -4
  220. package/dist/Markdown/Markdown.d.ts +4 -4
  221. package/dist/Markdown/headingProjection.d.ts +3 -3
  222. package/dist/Markdown/index.d.ts +7 -7
  223. package/dist/Markdown/parser/index.d.ts +3 -3
  224. package/dist/Markdown/parser.d.ts +3 -3
  225. package/dist/Markdown/plugin-renderer/MarkdownPluginNodeRenderer.d.ts +1 -1
  226. package/dist/Markdown/plugin-renderer/index.d.ts +2 -2
  227. package/dist/Markdown/plugins/frontmatter.d.ts +2 -2
  228. package/dist/Markdown/plugins/headingLinks.d.ts +2 -2
  229. package/dist/Markdown/plugins/index.d.ts +14 -14
  230. package/dist/Markdown/plugins/protocol.d.ts +1 -1
  231. package/dist/Markdown/plugins/semanticFence.d.ts +2 -2
  232. package/dist/Markdown/plugins/softBreaks.d.ts +1 -1
  233. package/dist/Markdown/plugins/sourceDecoration.d.ts +2 -2
  234. package/dist/Markdown/plugins/sourceLines.d.ts +1 -1
  235. package/dist/Markdown/plugins/textTransform.d.ts +2 -2
  236. package/dist/Markdown/remark.d.ts +1 -1
  237. package/dist/Markdown/utils.d.ts +4 -4
  238. package/dist/MetadataList/MetadataList.d.ts +2 -2
  239. package/dist/MetadataList/MetadataListItem.d.ts +1 -1
  240. package/dist/MetadataList/index.d.ts +5 -5
  241. package/dist/MobileNav/MobileNav.d.ts +1 -1
  242. package/dist/MobileNav/MobileNavToggle.d.ts +1 -1
  243. package/dist/MobileNav/index.d.ts +4 -4
  244. package/dist/MoreMenu/MoreMenu.d.ts +4 -4
  245. package/dist/MoreMenu/index.d.ts +1 -1
  246. package/dist/MultiSelector/MultiSelector.d.ts +7 -7
  247. package/dist/MultiSelector/hooks.d.ts +1 -1
  248. package/dist/MultiSelector/index.d.ts +3 -3
  249. package/dist/MultiSelector/types.d.ts +1 -1
  250. package/dist/NavIcon/NavIcon.d.ts +1 -1
  251. package/dist/NavIcon/index.d.ts +2 -2
  252. package/dist/NavMenu/NavHeadingMenu.d.ts +2 -2
  253. package/dist/NavMenu/NavHeadingMenuItem.d.ts +2 -2
  254. package/dist/NavMenu/index.d.ts +6 -6
  255. package/dist/NumberInput/NumberInput.d.ts +8 -8
  256. package/dist/NumberInput/NumberInput.d.ts.map +1 -1
  257. package/dist/NumberInput/NumberInput.js +46 -20
  258. package/dist/NumberInput/index.d.ts +2 -2
  259. package/dist/NumberInput/numberInputCommit.d.ts +1 -1
  260. package/dist/NumberInput/numberParser.d.ts +1 -1
  261. package/dist/Outline/Outline.d.ts +3 -3
  262. package/dist/Outline/index.d.ts +7 -7
  263. package/dist/Outline/parseOutlineFromMarkdown.d.ts +2 -2
  264. package/dist/Outline/useOutlineFromDOM.d.ts +1 -1
  265. package/dist/Outline/useOutlineFromMarkdown.d.ts +3 -3
  266. package/dist/Outline/useScrollSpy.d.ts +1 -1
  267. package/dist/OverflowList/OverflowList.d.ts +2 -2
  268. package/dist/OverflowList/index.d.ts +2 -2
  269. package/dist/Overlay/Overlay.d.ts +2 -2
  270. package/dist/Overlay/index.d.ts +5 -5
  271. package/dist/Overlay/useOverlay.d.ts +1 -1
  272. package/dist/Pagination/Pagination.d.ts +2 -2
  273. package/dist/Pagination/index.d.ts +2 -2
  274. package/dist/Popover/Popover.d.ts +3 -3
  275. package/dist/Popover/index.d.ts +4 -4
  276. package/dist/Popover/usePopover.d.ts +2 -2
  277. package/dist/PowerSearch/PowerSearch.d.ts +5 -5
  278. package/dist/PowerSearch/PowerSearchEditPopover.d.ts +2 -2
  279. package/dist/PowerSearch/PowerSearchFilterEditor.d.ts +1 -1
  280. package/dist/PowerSearch/PowerSearchToken.d.ts +1 -1
  281. package/dist/PowerSearch/PowerSearchValueEditor.d.ts +2 -2
  282. package/dist/PowerSearch/formatFilterValue.d.ts +3 -3
  283. package/dist/PowerSearch/index.d.ts +8 -8
  284. package/dist/PowerSearch/resolveDateTimeRangePart.d.ts +1 -1
  285. package/dist/PowerSearch/resolveOperatorLabel.d.ts +2 -2
  286. package/dist/PowerSearch/types.d.ts +1 -1
  287. package/dist/PowerSearch/useInternalConfig.d.ts +1 -1
  288. package/dist/PowerSearch/usePowerSearchConfig.d.ts +1 -1
  289. package/dist/PowerSearch/usePowerSearchSource.d.ts +3 -3
  290. package/dist/PowerSearch/utils.d.ts +3 -3
  291. package/dist/ProgressBar/ProgressBar.d.ts +2 -2
  292. package/dist/ProgressBar/index.d.ts +2 -2
  293. package/dist/RadioList/RadioList.d.ts +3 -3
  294. package/dist/RadioList/RadioListItem.d.ts +2 -2
  295. package/dist/RadioList/index.d.ts +4 -4
  296. package/dist/Resizable/ResizeHandle.d.ts +2 -2
  297. package/dist/Resizable/index.d.ts +6 -6
  298. package/dist/Resizable/useResizable.d.ts +2 -2
  299. package/dist/Resizable/utils.d.ts +3 -3
  300. package/dist/ScrollableArea/ScrollableArea.d.ts +3 -3
  301. package/dist/ScrollableArea/index.d.ts +4 -4
  302. package/dist/Section/Section.d.ts +3 -3
  303. package/dist/Section/index.d.ts +2 -2
  304. package/dist/SegmentedControl/SegmentedControl.d.ts +2 -2
  305. package/dist/SegmentedControl/SegmentedControlItem.d.ts +1 -1
  306. package/dist/SegmentedControl/index.d.ts +5 -5
  307. package/dist/SelectableCard/SelectableCard.d.ts +3 -3
  308. package/dist/SelectableCard/index.d.ts +2 -2
  309. package/dist/Selector/Selector.d.ts +8 -8
  310. package/dist/Selector/SelectorOption.d.ts +1 -1
  311. package/dist/Selector/hooks.d.ts +1 -1
  312. package/dist/Selector/index.d.ts +4 -4
  313. package/dist/Selector/types.d.ts +1 -1
  314. package/dist/Selector/useSelectorPresentation.d.ts +2 -2
  315. package/dist/Selector/utils.d.ts +1 -1
  316. package/dist/SideNav/SideNav.d.ts +3 -3
  317. package/dist/SideNav/SideNavCollapseButton.d.ts +3 -3
  318. package/dist/SideNav/SideNavHeading.d.ts +2 -2
  319. package/dist/SideNav/SideNavHeading.d.ts.map +1 -1
  320. package/dist/SideNav/SideNavHeading.js +34 -0
  321. package/dist/SideNav/SideNavItem.d.ts +4 -4
  322. package/dist/SideNav/SideNavSection.d.ts +1 -1
  323. package/dist/SideNav/index.d.ts +14 -14
  324. package/dist/SizeContext/index.d.ts +1 -1
  325. package/dist/Skeleton/Skeleton.d.ts +1 -1
  326. package/dist/Skeleton/Skeleton.d.ts.map +1 -1
  327. package/dist/Skeleton/Skeleton.js +12 -3
  328. package/dist/Skeleton/index.d.ts +2 -2
  329. package/dist/Slider/Slider.d.ts +3 -3
  330. package/dist/Slider/index.d.ts +2 -2
  331. package/dist/Spinner/Spinner.d.ts +1 -1
  332. package/dist/Spinner/index.d.ts +2 -2
  333. package/dist/Stack/Stack.d.ts +3 -3
  334. package/dist/Stack/StackItem.d.ts +2 -2
  335. package/dist/Stack/index.d.ts +6 -6
  336. package/dist/Stack/stack.stylex.d.ts +1 -1
  337. package/dist/StatusDot/StatusDot.d.ts +2 -2
  338. package/dist/StatusDot/index.d.ts +2 -2
  339. package/dist/Stepper/Step.d.ts +2 -2
  340. package/dist/Stepper/Step.d.ts.map +1 -1
  341. package/dist/Stepper/Step.js +3 -3
  342. package/dist/Stepper/Stepper.d.ts +2 -2
  343. package/dist/Stepper/index.d.ts +7 -7
  344. package/dist/Switch/Switch.d.ts +4 -4
  345. package/dist/Switch/index.d.ts +2 -2
  346. package/dist/TabList/Tab.d.ts +2 -2
  347. package/dist/TabList/TabList.d.ts +3 -3
  348. package/dist/TabList/TabMenu.d.ts +2 -2
  349. package/dist/TabList/index.d.ts +8 -8
  350. package/dist/Table/BaseTable.d.ts +1 -1
  351. package/dist/Table/Table.d.ts +1 -1
  352. package/dist/Table/TableBody.d.ts +1 -1
  353. package/dist/Table/TableCell.d.ts +3 -3
  354. package/dist/Table/TableContext.d.ts +1 -1
  355. package/dist/Table/TableFooter.d.ts +1 -1
  356. package/dist/Table/TableHeader.d.ts +1 -1
  357. package/dist/Table/TableHeaderCell.d.ts +3 -3
  358. package/dist/Table/TableRow.d.ts +2 -2
  359. package/dist/Table/TableSelectionToolbar.d.ts +2 -2
  360. package/dist/Table/columnUtils.d.ts +1 -1
  361. package/dist/Table/index.d.ts +54 -54
  362. package/dist/Table/plugins/columnResize/index.d.ts +2 -2
  363. package/dist/Table/plugins/columnResize/useTableColumnResize.d.ts +1 -1
  364. package/dist/Table/plugins/columnSettings/index.d.ts +4 -4
  365. package/dist/Table/plugins/columnSettings/useTableColumnSettings.d.ts +2 -2
  366. package/dist/Table/plugins/columnSettings/useTableColumnSettingsState.d.ts +1 -1
  367. package/dist/Table/plugins/filtering/index.d.ts +4 -4
  368. package/dist/Table/plugins/filtering/useTableFilterState.d.ts +1 -1
  369. package/dist/Table/plugins/filtering/useTableFiltering.d.ts +2 -2
  370. package/dist/Table/plugins/groupedRows/index.d.ts +2 -2
  371. package/dist/Table/plugins/groupedRows/useTableGroupedRows.d.ts +1 -1
  372. package/dist/Table/plugins/pagination/index.d.ts +3 -3
  373. package/dist/Table/plugins/pagination/useTablePagination.d.ts +1 -1
  374. package/dist/Table/plugins/rowExpansion/index.d.ts +2 -2
  375. package/dist/Table/plugins/rowExpansion/useTableRowExpansion.d.ts +1 -1
  376. package/dist/Table/plugins/rowIndex/index.d.ts +2 -2
  377. package/dist/Table/plugins/rowIndex/useTableRowIndex.d.ts +1 -1
  378. package/dist/Table/plugins/rowStatus/index.d.ts +2 -2
  379. package/dist/Table/plugins/rowStatus/useTableRowStatus.d.ts +2 -2
  380. package/dist/Table/plugins/selection/index.d.ts +4 -4
  381. package/dist/Table/plugins/selection/useTableSelection.d.ts +1 -1
  382. package/dist/Table/plugins/selection/useTableSelectionState.d.ts +1 -1
  383. package/dist/Table/plugins/sortable/index.d.ts +4 -4
  384. package/dist/Table/plugins/sortable/useTableSortable.d.ts +1 -1
  385. package/dist/Table/plugins/sortable/useTableSortableState.d.ts +1 -1
  386. package/dist/Table/plugins/stickyColumns/index.d.ts +2 -2
  387. package/dist/Table/plugins/stickyColumns/useTableStickyColumns.d.ts +1 -1
  388. package/dist/Table/plugins/tree/index.d.ts +4 -4
  389. package/dist/Table/plugins/tree/useTableTreeData.d.ts +1 -1
  390. package/dist/Table/plugins/tree/useTableTreeState.d.ts +1 -1
  391. package/dist/Table/tableContextMenu.d.ts +2 -2
  392. package/dist/Table/types.d.ts +3 -3
  393. package/dist/Table/useBaseTablePlugins.d.ts +1 -1
  394. package/dist/Table/useTableCellStyles.d.ts +2 -2
  395. package/dist/Table/utils.d.ts +2 -2
  396. package/dist/Text/Text.d.ts +3 -3
  397. package/dist/Text/index.d.ts +4 -4
  398. package/dist/TextArea/TextArea.d.ts +10 -8
  399. package/dist/TextArea/TextArea.d.ts.map +1 -1
  400. package/dist/TextArea/TextArea.js +14 -11
  401. package/dist/TextArea/index.d.ts +2 -2
  402. package/dist/TextInput/TextInput.d.ts +11 -9
  403. package/dist/TextInput/TextInput.d.ts.map +1 -1
  404. package/dist/TextInput/TextInput.js +27 -17
  405. package/dist/TextInput/index.d.ts +2 -2
  406. package/dist/Thumbnail/Thumbnail.d.ts +1 -1
  407. package/dist/Thumbnail/index.d.ts +2 -2
  408. package/dist/TimeInput/TimeInput.d.ts +6 -6
  409. package/dist/TimeInput/TouchTimeField.d.ts +1 -1
  410. package/dist/TimeInput/index.d.ts +3 -3
  411. package/dist/Timer/Timer.d.ts +2 -2
  412. package/dist/Timer/index.d.ts +2 -2
  413. package/dist/Timestamp/Timestamp.d.ts +3 -3
  414. package/dist/Timestamp/TimestampHoverCard.d.ts +1 -1
  415. package/dist/Timestamp/formatInstant.d.ts +2 -2
  416. package/dist/Timestamp/formatRelativeTime.d.ts +1 -1
  417. package/dist/Timestamp/index.d.ts +3 -3
  418. package/dist/Timestamp/tooltipEntries.d.ts +2 -2
  419. package/dist/Toast/Toast.d.ts +2 -2
  420. package/dist/Toast/ToastContext.d.ts +1 -1
  421. package/dist/Toast/ToastViewport.d.ts +2 -2
  422. package/dist/Toast/index.d.ts +6 -6
  423. package/dist/Toast/useToast.d.ts +1 -1
  424. package/dist/ToggleButton/ToggleButton.d.ts +3 -3
  425. package/dist/ToggleButton/ToggleButtonGroup.d.ts +1 -1
  426. package/dist/ToggleButton/index.d.ts +4 -4
  427. package/dist/Token/Token.d.ts +2 -2
  428. package/dist/Token/TokenLink.d.ts +1 -1
  429. package/dist/Token/index.d.ts +2 -2
  430. package/dist/Tokenizer/Tokenizer.d.ts +6 -6
  431. package/dist/Tokenizer/Tokenizer.d.ts.map +1 -1
  432. package/dist/Tokenizer/Tokenizer.js +44 -40
  433. package/dist/Tokenizer/index.d.ts +2 -2
  434. package/dist/Tokenizer/useEndLaneReserve.d.ts +3 -2
  435. package/dist/Tokenizer/useEndLaneReserve.d.ts.map +1 -1
  436. package/dist/Tokenizer/useEndLaneReserve.js +3 -2
  437. package/dist/Toolbar/Toolbar.d.ts +4 -4
  438. package/dist/Toolbar/index.d.ts +2 -2
  439. package/dist/Tooltip/Tooltip.d.ts +3 -3
  440. package/dist/Tooltip/index.d.ts +4 -4
  441. package/dist/Tooltip/useTooltip.d.ts +2 -2
  442. package/dist/TopNav/TopNav.d.ts +1 -1
  443. package/dist/TopNav/TopNavHeading.d.ts +2 -2
  444. package/dist/TopNav/TopNavItem.d.ts +3 -3
  445. package/dist/TopNav/TopNavMegaMenu.d.ts +1 -1
  446. package/dist/TopNav/TopNavMegaMenuFeaturedCard.d.ts +1 -1
  447. package/dist/TopNav/TopNavMegaMenuItem.d.ts +2 -2
  448. package/dist/TopNav/TopNavMenu.d.ts +1 -1
  449. package/dist/TopNav/index.d.ts +16 -16
  450. package/dist/TreeList/TreeList.d.ts +3 -3
  451. package/dist/TreeList/TreeListItem.d.ts +1 -1
  452. package/dist/TreeList/TreeListTypes.d.ts +1 -1
  453. package/dist/TreeList/index.d.ts +3 -3
  454. package/dist/Typeahead/BaseTypeahead.d.ts +2 -2
  455. package/dist/Typeahead/Typeahead.d.ts +6 -6
  456. package/dist/Typeahead/TypeaheadItem.d.ts +2 -2
  457. package/dist/Typeahead/createStaticSource.d.ts +1 -1
  458. package/dist/Typeahead/index.d.ts +9 -9
  459. package/dist/Typeahead/utils.d.ts +3 -3
  460. package/dist/VStack/VStack.d.ts +2 -2
  461. package/dist/VStack/index.d.ts +1 -1
  462. package/dist/VisuallyHidden/VisuallyHidden.d.ts +24 -6
  463. package/dist/VisuallyHidden/VisuallyHidden.d.ts.map +1 -1
  464. package/dist/VisuallyHidden/VisuallyHidden.js +24 -5
  465. package/dist/VisuallyHidden/index.d.ts +2 -2
  466. package/dist/astryx.css +8 -16
  467. package/dist/hooks/index.d.ts +52 -52
  468. package/dist/hooks/useAutoMediaMode.d.ts +1 -1
  469. package/dist/hooks/useInputContainer.d.ts +1 -1
  470. package/dist/hooks/useInputStatusIcon.d.ts +3 -3
  471. package/dist/hooks/useMenuPress.d.ts +1 -1
  472. package/dist/hooks/usePressFeedback.d.ts +1 -1
  473. package/dist/hooks/useScrollableArea.d.ts +1 -1
  474. package/dist/i18n/InternationalizationContext.d.ts +2 -2
  475. package/dist/i18n/InternationalizationProvider.d.ts +1 -1
  476. package/dist/i18n/index.d.ts +12 -12
  477. package/dist/i18n/resolve.d.ts +1 -1
  478. package/dist/i18n/useLocale.d.ts +1 -1
  479. package/dist/index.d.ts +111 -111
  480. package/dist/theme/Theme.d.ts +2 -2
  481. package/dist/theme/contrast.d.ts +1 -1
  482. package/dist/theme/defineTheme.d.ts +12 -12
  483. package/dist/theme/domainTokens/index.d.ts +6 -6
  484. package/dist/theme/generateThemeRules.d.ts +1 -1
  485. package/dist/theme/index.d.ts +31 -31
  486. package/dist/theme/localTokens.d.ts +1 -1
  487. package/dist/theme/mergeComponents.d.ts +1 -1
  488. package/dist/theme/onMediaTokens.d.ts +1 -1
  489. package/dist/theme/resolveThemeValues.d.ts +7 -7
  490. package/dist/theme/syntax/SyntaxTheme.d.ts +1 -1
  491. package/dist/theme/syntax/index.d.ts +7 -7
  492. package/dist/theme/syntax/presets.d.ts +1 -1
  493. package/dist/theme/themeAdaptations.d.ts +5 -5
  494. package/dist/theme/themeRegistry.d.ts +1 -1
  495. package/dist/theme/tokens.d.ts +1 -1
  496. package/dist/theme/types.d.ts +1 -1
  497. package/dist/theme/useTheme.d.ts +2 -2
  498. package/dist/utils/dateParser.d.ts +3 -3
  499. package/dist/utils/groupItems.d.ts +1 -1
  500. package/dist/utils/index.d.ts +29 -29
  501. package/dist/utils/plainDate.d.ts +3 -3
  502. package/package.json +5 -5
  503. package/src/Badge/Badge.doc.mjs +2 -1
  504. package/src/BottomSheet/BottomSheet.tsx +12 -1
  505. package/src/BottomSheet/__tests__/BottomSheetToastOutlet.a11y.chromium.spec.ts +82 -0
  506. package/src/DateInput/DateInputTouch.test.tsx +9 -0
  507. package/src/DateInput/Wheel.tsx +4 -1
  508. package/src/DateInput/__tests__/WheelPinchZoom.a11y.chromium.spec.ts +158 -0
  509. package/src/DropdownMenu/DropdownMenuRadioItem.doc.mjs +5 -2
  510. package/src/DropdownMenu/DropdownMenuRadioItem.spec.md +226 -0
  511. package/src/DropdownMenu/DropdownMenuRadioItem.tsx +32 -16
  512. package/src/DropdownMenu/DropdownMenuSelectable.test.tsx +158 -0
  513. package/src/DropdownMenu/__tests__/DropdownMenuRadioItemAudit.a11y.chromium.spec.ts +539 -0
  514. package/src/Field/inputDisabledFocus.ts +28 -0
  515. package/src/HoverCard/HoverCard.test.tsx +93 -3
  516. package/src/Icon/Icon.spec.md +40 -29
  517. package/src/Layer/__tests__/TouchTrigger.a11y.chromium.spec.ts +199 -0
  518. package/src/Layer/modalOutlet.ts +1 -1
  519. package/src/Layer/useTouchTrigger.ts +95 -41
  520. package/src/NumberInput/NumberInput.doc.mjs +6 -6
  521. package/src/NumberInput/NumberInput.test.tsx +144 -14
  522. package/src/NumberInput/NumberInput.tsx +68 -21
  523. package/src/Pagination/Pagination.test.tsx +2 -2
  524. package/src/SideNav/SideNav.test.tsx +15 -6
  525. package/src/SideNav/SideNavHeading.tsx +41 -0
  526. package/src/Skeleton/Skeleton.test.tsx +108 -1
  527. package/src/Skeleton/Skeleton.tsx +30 -2
  528. package/src/Stepper/Step.tsx +7 -0
  529. package/src/Stepper/Stepper.test.tsx +33 -0
  530. package/src/TextArea/TextArea.doc.mjs +6 -6
  531. package/src/TextArea/TextArea.test.tsx +65 -6
  532. package/src/TextArea/TextArea.tsx +26 -14
  533. package/src/TextInput/TextInput.doc.mjs +8 -8
  534. package/src/TextInput/TextInput.test.tsx +83 -10
  535. package/src/TextInput/TextInput.tsx +38 -19
  536. package/src/Toast/ToastViewport.modalHost.test.tsx +139 -4
  537. package/src/Tokenizer/Tokenizer.test.tsx +26 -8
  538. package/src/Tokenizer/Tokenizer.tsx +65 -72
  539. package/src/Tokenizer/__tests__/TokenizerEndLane.a11y.chromium.spec.ts +471 -0
  540. package/src/Tokenizer/useEndLaneReserve.ts +3 -2
  541. package/src/Tooltip/Tooltip.test.tsx +148 -3
  542. package/src/Tooltip/__tests__/Tooltip.a11y.states.ts +2 -2
  543. package/src/VisuallyHidden/VisuallyHidden.doc.mjs +1 -1
  544. package/src/VisuallyHidden/VisuallyHidden.test.tsx +39 -0
  545. package/src/VisuallyHidden/VisuallyHidden.tsx +38 -5
  546. package/src/theme/tokens.test.ts +60 -0
@@ -8,9 +8,9 @@
8
8
  * - /packages/core/src/utils/dateParser.test.ts
9
9
  * - /packages/core/src/utils/index.ts
10
10
  */
11
- import { type PlainDate } from './plainDate';
12
- import type { Locale } from '../i18n/types';
13
- export { plainDateFromISO as parseISO, plainDateToISO as dateToISO, } from './plainDate';
11
+ import { type PlainDate } from './plainDate.js';
12
+ import type { Locale } from '../i18n/types.js';
13
+ export { plainDateFromISO as parseISO, plainDateToISO as dateToISO, } from './plainDate.js';
14
14
  /**
15
15
  * Detects if the locale uses day-first date format (DD/MM/YYYY).
16
16
  * US and a few others use month-first (MM/DD/YYYY).
@@ -5,7 +5,7 @@
5
5
  * @position Shared utility; used by CommandPalette, trigger menu, and
6
6
  * any future component that needs to group search results by category.
7
7
  */
8
- import type { SearchableItem } from '../Typeahead/types';
8
+ import type { SearchableItem } from '../Typeahead/types.js';
9
9
  /**
10
10
  * A group of items with an optional heading.
11
11
  * `heading` is null for ungrouped items.
@@ -4,33 +4,33 @@
4
4
  * @output Re-exports all utility functions and shared types
5
5
  * @position Package entry point for utils
6
6
  */
7
- export type { SizeValue } from './types';
8
- export type { ISODateString, DayOfWeek, PlainDate, DateRange } from './dateTypes';
9
- export { parseDateInput, dateToISO, parseISO, isLocaleDayFirst, } from './dateParser';
10
- export { plainDateCreate, plainDateFromISO, plainDateToISO, plainDateToDate, plainDateFromDate, plainDateToday, getDaysInMonth, plainDateDayOfWeek, plainDateAddMonths, plainDateAddDays, plainDateToInstant, plainDateFromInstant, plainDateIsBefore, plainDateIsAfter, plainDateIsEqual, plainDateMax, plainDateMin, plainDateIsInRange, plainDateSetFirstOfMonth, plainDateSetStartOfWeek, plainDateSetEndOfWeekExclusive, plainDateGetWeekNumber, plainDateFormat, formatSharedDate, DATE_FORMAT_WITH_WEEKDAY, DATE_FORMAT_SHORT_WITH_WEEKDAY, DATE_FORMAT_LONG, DATE_FORMAT_MONTH_YEAR, DATE_FORMAT_MONTH_ONLY, DATE_FORMAT_WEEKDAY_ONLY, DATE_FORMAT_SHORT, DATE_FORMAT_SHORT_WITH_YEAR, SHARED_DATE_FORMAT_OPTIONS, } from './plainDate';
11
- export type { SharedDateFormat } from './plainDate';
12
- export { parseISOTime, formatISOTime, formatDisplayTime12h, formatDisplayTime24h, parseTimeInput, compareTime, isTimeInRange, clampTime, adjustTime, createISOTimeString, } from './timeParser';
13
- export type { ISOTimeString, ParsedTime } from './timeParser';
14
- export { parseStyleKey } from './parseStyleKey';
15
- export { getKey, type Key, type KeyFallback } from './getKey';
16
- export { characterCount, firstCharacter, truncateCharacters } from './characters';
17
- export { mergeProps } from './mergeProps';
18
- export { mergeRefs } from './mergeRefs';
19
- export { isFocusDetached } from './focusReturn';
20
- export { composeEventHandlers } from './composeEventHandlers';
21
- export { themeProps, themeDataAttributes } from './themeProps';
22
- export type { ClassValue, ClassProps, ThemeDataAttributes, ThemeProps, } from './themeProps';
23
- export { groupItems, getItemGroup } from './groupItems';
24
- export type { ItemGroup, GroupItemsOptions } from './groupItems';
25
- export { observeResize, unobserveResize } from './sharedResizeObserver';
26
- export { isRenderable } from './isRenderable';
27
- export { getInputARIA } from './inputAria';
28
- export type { InputARIA, InputARIAInputGroup } from './inputAria';
29
- export { parseHex, parseRgb, parseColor, formatHex, formatColor, toGLFloats, } from './color';
30
- export type { RGBA } from './color';
31
- export { devWarn, devError, warnOnce, formatDevMessage } from './devWarning';
32
- export { rtlStyles } from './rtlStyles';
33
- export { focusOutlineStyles, focusOutlineProps } from './focusOutline.stylex';
34
- export { isImeKeyEvent } from './ime';
35
- export { interactionOverlayStyles } from './interactionOverlay.stylex';
7
+ export type { SizeValue } from './types.js';
8
+ export type { ISODateString, DayOfWeek, PlainDate, DateRange } from './dateTypes.js';
9
+ export { parseDateInput, dateToISO, parseISO, isLocaleDayFirst, } from './dateParser.js';
10
+ export { plainDateCreate, plainDateFromISO, plainDateToISO, plainDateToDate, plainDateFromDate, plainDateToday, getDaysInMonth, plainDateDayOfWeek, plainDateAddMonths, plainDateAddDays, plainDateToInstant, plainDateFromInstant, plainDateIsBefore, plainDateIsAfter, plainDateIsEqual, plainDateMax, plainDateMin, plainDateIsInRange, plainDateSetFirstOfMonth, plainDateSetStartOfWeek, plainDateSetEndOfWeekExclusive, plainDateGetWeekNumber, plainDateFormat, formatSharedDate, DATE_FORMAT_WITH_WEEKDAY, DATE_FORMAT_SHORT_WITH_WEEKDAY, DATE_FORMAT_LONG, DATE_FORMAT_MONTH_YEAR, DATE_FORMAT_MONTH_ONLY, DATE_FORMAT_WEEKDAY_ONLY, DATE_FORMAT_SHORT, DATE_FORMAT_SHORT_WITH_YEAR, SHARED_DATE_FORMAT_OPTIONS, } from './plainDate.js';
11
+ export type { SharedDateFormat } from './plainDate.js';
12
+ export { parseISOTime, formatISOTime, formatDisplayTime12h, formatDisplayTime24h, parseTimeInput, compareTime, isTimeInRange, clampTime, adjustTime, createISOTimeString, } from './timeParser.js';
13
+ export type { ISOTimeString, ParsedTime } from './timeParser.js';
14
+ export { parseStyleKey } from './parseStyleKey.js';
15
+ export { getKey, type Key, type KeyFallback } from './getKey.js';
16
+ export { characterCount, firstCharacter, truncateCharacters } from './characters.js';
17
+ export { mergeProps } from './mergeProps.js';
18
+ export { mergeRefs } from './mergeRefs.js';
19
+ export { isFocusDetached } from './focusReturn.js';
20
+ export { composeEventHandlers } from './composeEventHandlers.js';
21
+ export { themeProps, themeDataAttributes } from './themeProps.js';
22
+ export type { ClassValue, ClassProps, ThemeDataAttributes, ThemeProps, } from './themeProps.js';
23
+ export { groupItems, getItemGroup } from './groupItems.js';
24
+ export type { ItemGroup, GroupItemsOptions } from './groupItems.js';
25
+ export { observeResize, unobserveResize } from './sharedResizeObserver.js';
26
+ export { isRenderable } from './isRenderable.js';
27
+ export { getInputARIA } from './inputAria.js';
28
+ export type { InputARIA, InputARIAInputGroup } from './inputAria.js';
29
+ export { parseHex, parseRgb, parseColor, formatHex, formatColor, toGLFloats, } from './color.js';
30
+ export type { RGBA } from './color.js';
31
+ export { devWarn, devError, warnOnce, formatDevMessage } from './devWarning.js';
32
+ export { rtlStyles } from './rtlStyles.js';
33
+ export { focusOutlineStyles, focusOutlineProps } from './focusOutline.stylex.js';
34
+ export { isImeKeyEvent } from './ime.js';
35
+ export { interactionOverlayStyles } from './interactionOverlay.stylex.js';
36
36
  //# sourceMappingURL=index.d.ts.map
@@ -4,9 +4,9 @@
4
4
  * @output Immutable PlainDate records and pure date arithmetic
5
5
  * @position Shared utility; replaces scattered Date usage across Calendar hooks
6
6
  */
7
- import type { ISODateString, PlainDate } from './dateTypes';
8
- import type { Locale } from '../i18n/types';
9
- export type { PlainDate } from './dateTypes';
7
+ import type { ISODateString, PlainDate } from './dateTypes.js';
8
+ import type { Locale } from '../i18n/types.js';
9
+ export type { PlainDate } from './dateTypes.js';
10
10
  export declare function plainDateCreate(year: number, month: number, day: number): PlainDate;
11
11
  export declare function plainDateFromISO(str: ISODateString): PlainDate;
12
12
  export declare function plainDateToISO(pd: PlainDate): ISODateString;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@astryxdesign/core",
3
- "version": "0.7.4",
3
+ "version": "0.7.5-canary.04434e7",
4
4
  "displayName": "Astryx Core",
5
5
  "description": "The component library. Accessible, themeable React components with built-in spacing, dark mode, and StyleX styling.",
6
6
  "author": "Meta Open Source",
@@ -792,6 +792,8 @@
792
792
  "react-dom": ">=19.0.0"
793
793
  },
794
794
  "devDependencies": {
795
+ "@astryxdesign/a11y-spec": "0.7.5-canary.04434e7",
796
+ "@astryxdesign/cli": "0.7.5-canary.04434e7",
795
797
  "@babel/cli": "^7.29.7",
796
798
  "@babel/core": "^7.29.7",
797
799
  "@babel/preset-react": "^7.29.7",
@@ -802,16 +804,14 @@
802
804
  "@testing-library/jest-dom": "^6.6.0",
803
805
  "@testing-library/react": "^16.3.2",
804
806
  "@types/babel__core": "^7.20.5",
805
- "tailwindcss": "^4.3.2",
806
- "@astryxdesign/a11y-spec": "0.0.0",
807
- "@astryxdesign/cli": "0.7.4"
807
+ "tailwindcss": "^4.3.2"
808
808
  },
809
809
  "dependencies": {
810
810
  "intl-messageformat": "^11.2.9"
811
811
  },
812
812
  "scripts": {
813
813
  "postinstall": "node scripts/postinstall.mjs",
814
- "build": "node ../../scripts/clean-dist.mjs && pnpm build:i18n && pnpm build:esm && tsc --project tsconfig.build.json && pnpm build:css && node ../../scripts/check-no-dev-jsx.mjs && node ../../scripts/check-fully-specified.mjs",
814
+ "build": "node ../../scripts/clean-dist.mjs && pnpm build:i18n && pnpm build:esm && tsc --project tsconfig.build.json && node ../../scripts/add-declaration-extensions.mjs && pnpm build:css && node ../../scripts/check-no-dev-jsx.mjs && node ../../scripts/check-fully-specified.mjs",
815
815
  "build:i18n": "node ../../scripts/generate-i18n-runtime.mjs && node scripts/build-pseudo-locale.mjs",
816
816
  "build:esm": "babel src --out-dir dist --extensions .ts,.tsx --out-file-extension .js --ignore \"**/*.test.ts,**/*.test.tsx,**/__tests__/**,**/*.perf.test.*,**/*.doc.mjs,**/*.d.ts,**/*.css,**/*.css.d.ts\" --config-file ./babel.config.json",
817
817
  "build:css": "node ../../scripts/build-css.mjs",
@@ -18,6 +18,7 @@ export const docs = {
18
18
  {
19
19
  name: 'label',
20
20
  type: 'ReactNode',
21
+ required: true,
21
22
  description:
22
23
  'Badge text content. A badge is one line, so a label wider than the space available is cut with an ellipsis rather than escaping its container; a string or number label is also set as the badge\'s title so the full text stays reachable on hover.',
23
24
  },
@@ -93,7 +94,7 @@ export const docsZh = {
93
94
  description: '视觉样式变体。语义变体使用实色背景,非语义颜色变体使用浅色背景配彩色文字。',
94
95
  default: "'neutral'",
95
96
  },
96
- {name: 'label', type: 'ReactNode', description: '徽章文本内容。'},
97
+ {name: 'label', type: 'ReactNode', required: true, description: '徽章文本内容。'},
97
98
  {name: 'icon', type: 'ReactNode', description: '可选的前置图标。'},
98
99
  ],
99
100
  theming: {
@@ -4,7 +4,7 @@
4
4
 
5
5
  /**
6
6
  * @file BottomSheet.tsx
7
- * @input Uses React, StyleX, core hooks, shared layer dismissal, the shared interaction modality, named BottomSheetPanel, BottomSheetSwitcherContext
7
+ * @input Uses React, StyleX, core hooks, shared layer dismissal, the modal outlet registry, the shared interaction modality, named BottomSheetPanel, BottomSheetSwitcherContext
8
8
  * @output Exports BottomSheet component and BottomSheetProps
9
9
  * @position Public BottomSheet router plus private standalone/switcher hosts
10
10
  *
@@ -27,6 +27,9 @@
27
27
  * in a switcher, handing one scrim between two dialogs and keeping focus in
28
28
  * the active sheet when a retained dialog closes.
29
29
  *
30
+ * While a standalone modal sheet is open, its dialog is the outlet that
31
+ * app-global surfaces (toasts) render into (Layer/modalOutlet.ts).
32
+ *
30
33
  * SYNC: When modified, update these files to stay in sync:
31
34
  * - /packages/core/src/BottomSheet/BottomSheetPanel.tsx
32
35
  * - /packages/core/src/BottomSheet/BottomSheetEdgeTint.tsx
@@ -36,6 +39,7 @@
36
39
  * - /packages/core/src/BottomSheet/BottomSheetSwitcher.test.tsx
37
40
  * - /packages/core/src/Layer/layerDismissalFamilies.test.tsx
38
41
  * - /packages/core/src/Layer/layerDismissalInvariants.test.tsx
42
+ * - /packages/core/src/Toast/ToastViewport.modalHost.test.tsx
39
43
  * - /apps/storybook/stories/BottomSheet.stories.tsx
40
44
  * - /packages/cli/assets/templates/blocks/components/BottomSheet/BottomSheetShowcase.tsx
41
45
  */
@@ -58,6 +62,7 @@ import {colorVars, durationVars, easeVars} from '../theme/tokens.stylex';
58
62
  import {useDevWarning, useScrollLock} from '../hooks';
59
63
  import {mergeProps} from '../utils';
60
64
  import {LayerDepthProvider} from '../Layer/LayerDepthContext';
65
+ import {useModalOutlet} from '../Layer/modalOutlet';
61
66
  import {useLayerDismissal} from '../Layer/useLayerDismissal';
62
67
  import {focusForLastInput} from '../utils/focusReturn';
63
68
  import {useInteractionModalityTracking} from '../utils/interactionModality';
@@ -373,6 +378,12 @@ function StandaloneBottomSheet({
373
378
  }
374
379
  }, [hasScrim, isOpen]);
375
380
 
381
+ // Host app-global surfaces (toasts) inside this sheet while it is an open
382
+ // modal, so they stay visible and operable above it. A closing sheet stays
383
+ // modal through its exit animation, but inert and hidden, so it hands them
384
+ // back as soon as it starts closing.
385
+ useModalOutlet(dialogRef, isOpen && hasScrim);
386
+
376
387
  useEffect(() => {
377
388
  if (!isOpen && isPresented && hasScrim) {
378
389
  handleScrimOpacity(0);
@@ -0,0 +1,82 @@
1
+ // Copyright (c) Meta Platforms, Inc. and affiliates.
2
+
3
+ /**
4
+ * @file BottomSheetToastOutlet.a11y.chromium.spec.ts
5
+ * @input The built Core/Toast AppToastOverBottomSheet story; real Chromium hit
6
+ * testing and mouse input
7
+ * @output Browser evidence that a toast fired from an open BottomSheet, on its
8
+ * own or over a Dialog, is hit-testable above the sheet and takes a click
9
+ * @position Chromium proof for BottomSheet's modal outlet
10
+ * (Layer/modalOutlet.ts). jsdom has no top layer and no modal inertness, so
11
+ * Toast/ToastViewport.modalHost.test.tsx can only check where the viewport
12
+ * lives.
13
+ */
14
+
15
+ import {expect, test} from '@playwright/test';
16
+ import {holdMotionStill} from '@astryxdesign/a11y-spec/chromium';
17
+ import {
18
+ DEFAULT_STORYBOOK_DIR,
19
+ serveStorybook,
20
+ type StaticServer,
21
+ } from '@astryxdesign/a11y-spec/storybook';
22
+
23
+ let storybook: StaticServer;
24
+ test.beforeAll(async () => {
25
+ storybook = await serveStorybook(
26
+ process.env.ASTRYX_STORYBOOK_DIR ?? DEFAULT_STORYBOOK_DIR,
27
+ );
28
+ });
29
+ test.afterAll(async () => {
30
+ await storybook?.close();
31
+ });
32
+
33
+ // Phone width: where an app presents its dialogs as bottom sheets.
34
+ test.use({viewport: {width: 390, height: 844}});
35
+
36
+ const SCENARIOS = [
37
+ {name: 'on its own', opens: ['Open sheet']},
38
+ {name: 'over a Dialog', opens: ['Open dialog', 'Open sheet from the dialog']},
39
+ ];
40
+
41
+ for (const {name, opens} of SCENARIOS) {
42
+ test(`a toast action above a sheet opened ${name} takes the click`, async ({
43
+ page,
44
+ }) => {
45
+ await page.goto(
46
+ `${storybook.origin}/iframe.html?id=core-toast--app-toast-over-bottom-sheet&viewMode=story`,
47
+ );
48
+ await holdMotionStill(page);
49
+ for (const label of opens) {
50
+ await page.getByRole('button', {name: label, exact: true}).click();
51
+ }
52
+ const sheet = page.getByRole('dialog', {name: 'Item actions'});
53
+ await expect(sheet).toBeVisible();
54
+ await sheet.getByRole('button', {name: 'Archive'}).click();
55
+ await expect(sheet.getByText('The item is archived.')).toBeVisible();
56
+
57
+ const undo = page.locator('[popover] button', {hasText: 'Undo'});
58
+ await expect(undo).toBeVisible();
59
+ const box = await undo.boundingBox();
60
+ if (box == null) {
61
+ throw new Error('the Undo button has no box');
62
+ }
63
+ const x = box.x + box.width / 2;
64
+ const y = box.y + box.height / 2;
65
+
66
+ // Hit testing skips inert content and follows top-layer order: a toast
67
+ // left outside the sheet's modal, or under it, loses this point to the
68
+ // sheet.
69
+ const hit = await page.evaluate(
70
+ ([px, py]) =>
71
+ document.elementFromPoint(px, py)?.closest('button')?.textContent ??
72
+ null,
73
+ [x, y],
74
+ );
75
+ expect(hit).toBe('Undo');
76
+
77
+ await page.mouse.click(x, y);
78
+ await expect(
79
+ sheet.getByText('The item is back in your inbox.'),
80
+ ).toBeVisible();
81
+ });
82
+ }
@@ -2540,6 +2540,15 @@ describe('DateInput — scroll CSS (definition-level)', () => {
2540
2540
  );
2541
2541
  });
2542
2542
 
2543
+ it('leaves a two-finger pinch to the page over the wheels', () => {
2544
+ // `pan-y` alone also refuses the browser's pinch-zoom over the wheel, so
2545
+ // the page could not be zoomed over an open picker. The real-engine proof
2546
+ // is WheelPinchZoom.a11y.chromium.spec.ts; jsdom computes no touch-action.
2547
+ expect(declarations(read('Wheel.tsx'), 'scroller')).toContain(
2548
+ "touchAction: 'pan-y pinch-zoom'",
2549
+ );
2550
+ });
2551
+
2543
2552
  it('guards the scroll-driven falloff behind @supports', () => {
2544
2553
  const source = read('Wheel.tsx');
2545
2554
  // Without the guard, a browser that does not understand animation-timeline
@@ -106,7 +106,10 @@ const styles = stylex.create({
106
106
  transformStyle: 'preserve-3d',
107
107
  scrollbarWidth: 'none',
108
108
  outline: 'none',
109
- touchAction: 'pan-y',
109
+ // Vertical pans scroll the wheel; a two-finger pinch stays the page's, so
110
+ // the page can still zoom over an open picker (WCAG 1.4.4), as it does
111
+ // over the menus and listboxes (`module:DropdownMenu/useMenuPress` FR4).
112
+ touchAction: 'pan-y pinch-zoom',
110
113
  },
111
114
  item: {
112
115
  display: 'flex',
@@ -0,0 +1,158 @@
1
+ // Copyright (c) Meta Platforms, Inc. and affiliates.
2
+
3
+ /**
4
+ * @file WheelPinchZoom.a11y.chromium.spec.ts
5
+ * @input The built TimeInput bottom-sheet story and real Chromium touch input
6
+ * (CDP) on a phone profile
7
+ * @output Browser evidence that a two-finger pinch over an open picker wheel
8
+ * zooms the page (WCAG 1.4.4) and changes no value
9
+ * @position Real-engine proof for the wheel's `touch-action`; jsdom computes
10
+ * no touch-action. The menus and listboxes have the same proof in
11
+ * MenuPinchZoom.a11y.chromium.spec.ts.
12
+ */
13
+
14
+ import {
15
+ expect,
16
+ test,
17
+ type CDPSession,
18
+ type Locator,
19
+ type Page,
20
+ } from '@playwright/test';
21
+ import {
22
+ DEFAULT_STORYBOOK_DIR,
23
+ serveStorybook,
24
+ type StaticServer,
25
+ } from '@astryxdesign/a11y-spec/storybook';
26
+
27
+ let storybook: StaticServer;
28
+ test.beforeAll(async () => {
29
+ storybook = await serveStorybook(
30
+ process.env.ASTRYX_STORYBOOK_DIR ?? DEFAULT_STORYBOOK_DIR,
31
+ );
32
+ });
33
+ test.afterAll(async () => {
34
+ await storybook?.close();
35
+ });
36
+
37
+ // A phone: the viewport meta applies and the page can pinch-zoom.
38
+ test.use({
39
+ hasTouch: true,
40
+ isMobile: true,
41
+ viewport: {width: 390, height: 844},
42
+ deviceScaleFactor: 3,
43
+ });
44
+
45
+ const sleep = async (ms: number) =>
46
+ new Promise(resolve => setTimeout(resolve, ms));
47
+
48
+ async function pageScale(page: Page) {
49
+ return page.evaluate(() => window.visualViewport?.scale ?? 1);
50
+ }
51
+
52
+ async function centerOf(locator: Locator) {
53
+ const box = await locator.boundingBox();
54
+ if (box == null) {
55
+ throw new Error('no rendered bounds');
56
+ }
57
+ return {x: box.x + box.width / 2, y: box.y + box.height / 2};
58
+ }
59
+
60
+ type Point = {x: number; y: number};
61
+
62
+ // Two fingers land one after the other and spread apart sideways, as a person
63
+ // pinches. Sideways, because the wheel pans vertically: a vertical spread would
64
+ // spend its first stretch scrolling the wheel before the zoom takes over.
65
+ async function pinch(cdp: CDPSession, at: Point) {
66
+ const steps = 12;
67
+ const spread = 3;
68
+ const point = (dx: number, k: number, id: number) => ({
69
+ x: at.x + dx * k,
70
+ y: at.y,
71
+ id,
72
+ });
73
+ await cdp.send('Input.dispatchTouchEvent', {
74
+ type: 'touchStart',
75
+ touchPoints: [point(-30, 1, 1)],
76
+ });
77
+ await sleep(30);
78
+ await cdp.send('Input.dispatchTouchEvent', {
79
+ type: 'touchStart',
80
+ touchPoints: [point(-30, 1, 1), point(30, 1, 2)],
81
+ });
82
+ for (let i = 1; i <= steps; i++) {
83
+ await sleep(16);
84
+ const k = 1 + ((spread - 1) * i) / steps;
85
+ await cdp.send('Input.dispatchTouchEvent', {
86
+ type: 'touchMove',
87
+ touchPoints: [point(-30, k, 1), point(30, k, 2)],
88
+ });
89
+ }
90
+ await sleep(16);
91
+ await cdp.send('Input.dispatchTouchEvent', {
92
+ type: 'touchEnd',
93
+ touchPoints: [],
94
+ });
95
+ await sleep(600);
96
+ }
97
+
98
+ test('a pinch over an open picker wheel zooms the page and changes no value', async ({
99
+ page,
100
+ }) => {
101
+ await page.goto(
102
+ `${storybook.origin}/iframe.html?id=core-timeinput--styling-parts&viewMode=story`,
103
+ );
104
+ const field = page.locator('[data-parts-row="control-bottom-sheet"] input');
105
+ await expect(field).toBeVisible();
106
+ await field.tap();
107
+ const wheel = page.getByRole('listbox', {name: 'Minute'});
108
+ await expect(wheel).toBeVisible();
109
+ // Let the sheet finish presenting, so the pinch lands on a wheel at rest.
110
+ await sleep(800);
111
+ const valueBefore = await field.inputValue();
112
+ expect(await pageScale(page)).toBe(1);
113
+
114
+ const cdp = await page.context().newCDPSession(page);
115
+ await pinch(cdp, await centerOf(wheel));
116
+
117
+ expect(await pageScale(page)).toBeGreaterThan(1.2);
118
+ await expect(wheel).toBeVisible();
119
+ expect(await field.inputValue()).toBe(valueBefore);
120
+ });
121
+
122
+ test('one finger dragged up a wheel still scrolls it and leaves the page at scale 1', async ({
123
+ page,
124
+ }) => {
125
+ await page.goto(
126
+ `${storybook.origin}/iframe.html?id=core-timeinput--styling-parts&viewMode=story`,
127
+ );
128
+ const field = page.locator('[data-parts-row="control-bottom-sheet"] input');
129
+ await field.tap();
130
+ const wheel = page.getByRole('listbox', {name: 'Minute'});
131
+ await expect(wheel).toBeVisible();
132
+ await sleep(800);
133
+ const scrollTopBefore = await wheel.evaluate(el => el.scrollTop);
134
+
135
+ const cdp = await page.context().newCDPSession(page);
136
+ const at = await centerOf(wheel);
137
+ await cdp.send('Input.dispatchTouchEvent', {
138
+ type: 'touchStart',
139
+ touchPoints: [{x: at.x, y: at.y + 60, id: 1}],
140
+ });
141
+ for (let i = 1; i <= 12; i++) {
142
+ await sleep(16);
143
+ await cdp.send('Input.dispatchTouchEvent', {
144
+ type: 'touchMove',
145
+ touchPoints: [{x: at.x, y: at.y + 60 - i * 10, id: 1}],
146
+ });
147
+ }
148
+ await cdp.send('Input.dispatchTouchEvent', {
149
+ type: 'touchEnd',
150
+ touchPoints: [],
151
+ });
152
+ await sleep(600);
153
+
154
+ expect(await wheel.evaluate(el => el.scrollTop)).toBeGreaterThan(
155
+ scrollTopBefore + 60,
156
+ );
157
+ expect(await pageScale(page)).toBe(1);
158
+ });
@@ -26,12 +26,14 @@ export const docs = {
26
26
  {
27
27
  name: 'value',
28
28
  type: 'string',
29
+ required: true,
29
30
  description:
30
31
  "The value this item represents within its group. The group's value matches against this to determine the checked state.",
31
32
  },
32
33
  {
33
34
  name: 'label',
34
35
  type: 'ReactNode',
36
+ required: true,
35
37
  description: 'Primary label text identifying the option.',
36
38
  },
37
39
  {
@@ -50,7 +52,7 @@ export const docs = {
50
52
  type: 'boolean',
51
53
  default: 'false',
52
54
  description:
53
- 'Whether this individual radio item is disabled. Disabled items stay focusable (via aria-disabled) so they remain discoverable by keyboard and assistive technology, but selection is blocked.',
55
+ 'Whether this individual radio item is disabled. Disabled items expose aria-disabled, block selection, and are currently skipped by DropdownMenu arrow-key navigation.',
54
56
  },
55
57
  {
56
58
  name: 'endContent',
@@ -94,7 +96,8 @@ export const docsDense = {
94
96
  label: 'primary label text',
95
97
  description: 'secondary text below label',
96
98
  icon: 'icon before label',
97
- isDisabled: 'disabled; stays focusable via aria-disabled',
99
+ isDisabled:
100
+ 'disabled; aria-disabled, blocks selection, skipped by arrow keys',
98
101
  endContent: 'content after label+description',
99
102
  ref: 'forwarded to the row root (the role="menuitemradio" element)',
100
103
  },