@astryxdesign/core 0.2.0 → 0.3.0

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 (1083) hide show
  1. package/CHANGELOG.md +110 -0
  2. package/README.md +5 -3
  3. package/dist/AlertDialog/AlertDialog.d.ts +1 -1
  4. package/dist/AlertDialog/AlertDialog.js +1 -1
  5. package/dist/AppShell/AppShell.d.ts +2 -20
  6. package/dist/AppShell/AppShell.d.ts.map +1 -1
  7. package/dist/AppShell/AppShell.js +25 -18
  8. package/dist/AppShell/index.d.ts +20 -1
  9. package/dist/AppShell/index.d.ts.map +1 -1
  10. package/dist/AppShell/index.js +14 -0
  11. package/dist/AspectRatio/AspectRatio.d.ts +1 -1
  12. package/dist/AspectRatio/AspectRatio.js +1 -1
  13. package/dist/Avatar/Avatar.d.ts +1 -1
  14. package/dist/Avatar/Avatar.d.ts.map +1 -1
  15. package/dist/Avatar/Avatar.js +4 -4
  16. package/dist/Avatar/AvatarStatusDot.d.ts +2 -26
  17. package/dist/Avatar/AvatarStatusDot.d.ts.map +1 -1
  18. package/dist/Avatar/AvatarStatusDot.js +1 -22
  19. package/dist/Avatar/index.d.ts +26 -1
  20. package/dist/Avatar/index.d.ts.map +1 -1
  21. package/dist/Avatar/index.js +21 -0
  22. package/dist/AvatarGroup/AvatarGroup.d.ts +1 -1
  23. package/dist/AvatarGroup/AvatarGroup.d.ts.map +1 -1
  24. package/dist/AvatarGroup/AvatarGroup.js +4 -8
  25. package/dist/AvatarGroup/AvatarGroupOverflow.d.ts +2 -2
  26. package/dist/AvatarGroup/AvatarGroupOverflow.d.ts.map +1 -1
  27. package/dist/AvatarGroup/AvatarGroupOverflow.js +7 -3
  28. package/dist/Badge/Badge.d.ts +2 -30
  29. package/dist/Badge/Badge.d.ts.map +1 -1
  30. package/dist/Badge/Badge.js +2 -17
  31. package/dist/Badge/index.d.ts +31 -2
  32. package/dist/Badge/index.d.ts.map +1 -1
  33. package/dist/Badge/index.js +15 -1
  34. package/dist/Banner/Banner.d.ts +2 -37
  35. package/dist/Banner/Banner.d.ts.map +1 -1
  36. package/dist/Banner/Banner.js +6 -34
  37. package/dist/Banner/index.d.ts +37 -1
  38. package/dist/Banner/index.d.ts.map +1 -1
  39. package/dist/Banner/index.js +27 -0
  40. package/dist/Blockquote/Blockquote.d.ts +1 -1
  41. package/dist/Blockquote/Blockquote.js +1 -1
  42. package/dist/Breadcrumbs/BreadcrumbItem.d.ts +1 -1
  43. package/dist/Breadcrumbs/BreadcrumbItem.js +4 -3
  44. package/dist/Breadcrumbs/Breadcrumbs.d.ts +2 -18
  45. package/dist/Breadcrumbs/Breadcrumbs.d.ts.map +1 -1
  46. package/dist/Breadcrumbs/Breadcrumbs.js +1 -15
  47. package/dist/Breadcrumbs/index.d.ts +18 -1
  48. package/dist/Breadcrumbs/index.d.ts.map +1 -1
  49. package/dist/Breadcrumbs/index.js +14 -0
  50. package/dist/Button/Button.d.ts +3 -21
  51. package/dist/Button/Button.d.ts.map +1 -1
  52. package/dist/Button/Button.js +6 -19
  53. package/dist/Button/index.d.ts +21 -3
  54. package/dist/Button/index.d.ts.map +1 -1
  55. package/dist/Button/index.js +15 -1
  56. package/dist/ButtonGroup/ButtonGroup.d.ts +1 -1
  57. package/dist/ButtonGroup/ButtonGroup.js +1 -1
  58. package/dist/Calendar/Calendar.js +1 -1
  59. package/dist/Calendar/index.d.ts +1 -1
  60. package/dist/Calendar/index.d.ts.map +1 -1
  61. package/dist/Calendar/index.js +1 -1
  62. package/dist/Calendar/styles.d.ts +2 -2
  63. package/dist/Calendar/styles.js +2 -2
  64. package/dist/Calendar/utils.d.ts +0 -4
  65. package/dist/Calendar/utils.d.ts.map +1 -1
  66. package/dist/Calendar/utils.js +1 -8
  67. package/dist/Card/Card.d.ts +1 -1
  68. package/dist/Card/Card.js +1 -1
  69. package/dist/Carousel/Carousel.d.ts +54 -3
  70. package/dist/Carousel/Carousel.d.ts.map +1 -1
  71. package/dist/Carousel/Carousel.js +82 -15
  72. package/dist/Carousel/index.d.ts +1 -1
  73. package/dist/Carousel/index.d.ts.map +1 -1
  74. package/dist/Center/Center.d.ts +21 -4
  75. package/dist/Center/Center.d.ts.map +1 -1
  76. package/dist/Center/Center.js +11 -3
  77. package/dist/Chat/ChatComposer.d.ts +1 -1
  78. package/dist/Chat/ChatComposer.js +9 -9
  79. package/dist/Chat/ChatComposerDrawer.d.ts +1 -1
  80. package/dist/Chat/ChatComposerDrawer.js +5 -5
  81. package/dist/Chat/ChatComposerInput.d.ts +1 -1
  82. package/dist/Chat/ChatComposerInput.js +1 -1
  83. package/dist/Chat/ChatDictationButton.d.ts +1 -1
  84. package/dist/Chat/ChatDictationButton.js +1 -1
  85. package/dist/Chat/ChatLayout.d.ts +8 -1
  86. package/dist/Chat/ChatLayout.d.ts.map +1 -1
  87. package/dist/Chat/ChatLayout.js +15 -4
  88. package/dist/Chat/ChatLayoutScrollButton.d.ts +1 -1
  89. package/dist/Chat/ChatLayoutScrollButton.js +1 -1
  90. package/dist/Chat/ChatMessage.d.ts +1 -1
  91. package/dist/Chat/ChatMessage.js +1 -1
  92. package/dist/Chat/ChatMessageBubble.d.ts +1 -1
  93. package/dist/Chat/ChatMessageBubble.js +1 -1
  94. package/dist/Chat/ChatMessageList.d.ts +1 -1
  95. package/dist/Chat/ChatMessageList.js +1 -1
  96. package/dist/Chat/ChatSendButton.d.ts.map +1 -1
  97. package/dist/Chat/ChatSendButton.js +4 -2
  98. package/dist/Chat/ChatSystemMessage.d.ts +1 -1
  99. package/dist/Chat/ChatSystemMessage.js +1 -1
  100. package/dist/Chat/ChatTokenizedText.d.ts +1 -1
  101. package/dist/Chat/ChatTokenizedText.js +1 -1
  102. package/dist/CheckboxInput/CheckboxInput.d.ts +1 -1
  103. package/dist/CheckboxInput/CheckboxInput.d.ts.map +1 -1
  104. package/dist/CheckboxInput/CheckboxInput.js +3 -3
  105. package/dist/CheckboxList/CheckboxList.d.ts +1 -1
  106. package/dist/CheckboxList/CheckboxList.js +1 -1
  107. package/dist/CheckboxList/CheckboxListItem.d.ts +1 -1
  108. package/dist/CheckboxList/CheckboxListItem.d.ts.map +1 -1
  109. package/dist/CheckboxList/CheckboxListItem.js +20 -5
  110. package/dist/Citation/Citation.d.ts +1 -1
  111. package/dist/Citation/Citation.js +1 -1
  112. package/dist/ClickableCard/ClickableCard.d.ts +3 -3
  113. package/dist/ClickableCard/ClickableCard.js +3 -3
  114. package/dist/Code/Code.d.ts +2 -2
  115. package/dist/Code/Code.js +2 -2
  116. package/dist/CodeBlock/CodeBlock.js +2 -2
  117. package/dist/Collapsible/Collapsible.d.ts +1 -1
  118. package/dist/Collapsible/Collapsible.js +3 -3
  119. package/dist/Collapsible/CollapsibleGroup.d.ts +1 -1
  120. package/dist/Collapsible/CollapsibleGroup.js +1 -1
  121. package/dist/Collapsible/CollapsibleGroupContext.js +1 -1
  122. package/dist/CommandPalette/CommandPalette.d.ts +1 -1
  123. package/dist/CommandPalette/CommandPalette.js +1 -1
  124. package/dist/CommandPalette/CommandPaletteEmpty.js +1 -1
  125. package/dist/CommandPalette/CommandPaletteFooter.js +1 -1
  126. package/dist/CommandPalette/CommandPaletteGroup.js +1 -1
  127. package/dist/CommandPalette/CommandPaletteInput.d.ts +2 -2
  128. package/dist/CommandPalette/CommandPaletteInput.d.ts.map +1 -1
  129. package/dist/CommandPalette/CommandPaletteInput.js +4 -2
  130. package/dist/CommandPalette/CommandPaletteItem.d.ts +1 -1
  131. package/dist/CommandPalette/CommandPaletteItem.js +1 -1
  132. package/dist/CommandPalette/CommandPaletteList.js +1 -1
  133. package/dist/ComplexSelector/ComplexSelector.d.ts +108 -0
  134. package/dist/ComplexSelector/ComplexSelector.d.ts.map +1 -0
  135. package/dist/ComplexSelector/ComplexSelector.js +316 -0
  136. package/dist/ComplexSelector/index.d.ts +7 -0
  137. package/dist/ComplexSelector/index.d.ts.map +1 -0
  138. package/dist/ComplexSelector/index.js +10 -0
  139. package/dist/ContextMenu/ContextMenu.d.ts +2 -2
  140. package/dist/ContextMenu/ContextMenu.d.ts.map +1 -1
  141. package/dist/ContextMenu/ContextMenu.js +24 -6
  142. package/dist/DateInput/DateInput.js +1 -1
  143. package/dist/DateRangeInput/DateRangeInput.js +1 -1
  144. package/dist/DateTimeInput/DateTimeInput.js +1 -1
  145. package/dist/Dialog/Dialog.d.ts +33 -24
  146. package/dist/Dialog/Dialog.d.ts.map +1 -1
  147. package/dist/Dialog/Dialog.js +47 -31
  148. package/dist/Dialog/DialogHeader.d.ts +1 -1
  149. package/dist/Dialog/DialogHeader.js +1 -1
  150. package/dist/Dialog/index.d.ts +18 -1
  151. package/dist/Dialog/index.d.ts.map +1 -1
  152. package/dist/Dialog/index.js +14 -0
  153. package/dist/Divider/Divider.d.ts +2 -18
  154. package/dist/Divider/Divider.d.ts.map +1 -1
  155. package/dist/Divider/Divider.js +1 -15
  156. package/dist/Divider/index.d.ts +18 -1
  157. package/dist/Divider/index.d.ts.map +1 -1
  158. package/dist/Divider/index.js +14 -0
  159. package/dist/DropdownMenu/DropdownMenu.d.ts +9 -3
  160. package/dist/DropdownMenu/DropdownMenu.d.ts.map +1 -1
  161. package/dist/DropdownMenu/DropdownMenu.js +23 -19
  162. package/dist/DropdownMenu/DropdownMenuCheckboxItem.d.ts +18 -12
  163. package/dist/DropdownMenu/DropdownMenuCheckboxItem.d.ts.map +1 -1
  164. package/dist/DropdownMenu/DropdownMenuCheckboxItem.js +38 -63
  165. package/dist/DropdownMenu/DropdownMenuItem.d.ts +1 -1
  166. package/dist/DropdownMenu/DropdownMenuItem.js +1 -1
  167. package/dist/DropdownMenu/DropdownMenuRadioGroup.d.ts +8 -11
  168. package/dist/DropdownMenu/DropdownMenuRadioGroup.d.ts.map +1 -1
  169. package/dist/DropdownMenu/DropdownMenuRadioGroup.js +3 -1
  170. package/dist/DropdownMenu/DropdownMenuRadioItem.d.ts +1 -1
  171. package/dist/DropdownMenu/DropdownMenuRadioItem.d.ts.map +1 -1
  172. package/dist/DropdownMenu/DropdownMenuRadioItem.js +6 -2
  173. package/dist/DropdownMenu/DropdownMenuSubMenu.d.ts +1 -1
  174. package/dist/DropdownMenu/DropdownMenuSubMenu.d.ts.map +1 -1
  175. package/dist/DropdownMenu/DropdownMenuSubMenu.js +14 -6
  176. package/dist/DropdownMenu/menuItemHover.d.ts +1 -0
  177. package/dist/DropdownMenu/menuItemHover.d.ts.map +1 -1
  178. package/dist/DropdownMenu/menuItemHover.js +1 -0
  179. package/dist/DropdownMenu/renderDropdownItems.d.ts.map +1 -1
  180. package/dist/DropdownMenu/renderDropdownItems.js +6 -4
  181. package/dist/EmptyState/EmptyState.d.ts +1 -1
  182. package/dist/EmptyState/EmptyState.js +1 -1
  183. package/dist/Field/Field.d.ts +1 -1
  184. package/dist/Field/Field.js +1 -1
  185. package/dist/Field/FieldLabel.d.ts +4 -3
  186. package/dist/Field/FieldLabel.d.ts.map +1 -1
  187. package/dist/Field/FieldLabel.js +48 -5
  188. package/dist/FieldStatus/FieldStatus.d.ts +1 -18
  189. package/dist/FieldStatus/FieldStatus.d.ts.map +1 -1
  190. package/dist/FieldStatus/FieldStatus.js +13 -17
  191. package/dist/FieldStatus/index.d.ts +19 -1
  192. package/dist/FieldStatus/index.d.ts.map +1 -1
  193. package/dist/FieldStatus/index.js +14 -0
  194. package/dist/FileInput/FileInput.js +1 -1
  195. package/dist/FormLayout/FormLayout.d.ts +1 -1
  196. package/dist/FormLayout/FormLayout.d.ts.map +1 -1
  197. package/dist/FormLayout/FormLayout.js +1 -1
  198. package/dist/Grid/Grid.d.ts +2 -10
  199. package/dist/Grid/Grid.d.ts.map +1 -1
  200. package/dist/Grid/Grid.js +1 -10
  201. package/dist/Grid/GridSpan.d.ts +1 -1
  202. package/dist/Grid/GridSpan.js +1 -1
  203. package/dist/HStack/HStack.d.ts +1 -1
  204. package/dist/HStack/HStack.js +1 -1
  205. package/dist/Heading/Heading.d.ts +2 -2
  206. package/dist/Heading/Heading.d.ts.map +1 -1
  207. package/dist/Heading/Heading.js +5 -4
  208. package/dist/HoverCard/HoverCard.d.ts +1 -1
  209. package/dist/HoverCard/HoverCard.js +1 -1
  210. package/dist/Icon/Icon.d.ts +1 -1
  211. package/dist/Icon/Icon.d.ts.map +1 -1
  212. package/dist/Icon/Icon.js +4 -2
  213. package/dist/Icon/defaultIcons.d.ts.map +1 -1
  214. package/dist/Icon/defaultIcons.js +14 -0
  215. package/dist/Icon/globalIconRegistry.d.ts +48 -6
  216. package/dist/Icon/globalIconRegistry.d.ts.map +1 -1
  217. package/dist/Icon/globalIconRegistry.js +74 -7
  218. package/dist/Icon/index.d.ts +4 -3
  219. package/dist/Icon/index.d.ts.map +1 -1
  220. package/dist/Icon/index.js +2 -1
  221. package/dist/Icon/useIcon.d.ts +14 -0
  222. package/dist/Icon/useIcon.d.ts.map +1 -0
  223. package/dist/Icon/useIcon.js +21 -0
  224. package/dist/IconButton/IconButton.d.ts +1 -1
  225. package/dist/IconButton/IconButton.js +1 -1
  226. package/dist/InputGroup/InputGroup.d.ts +1 -1
  227. package/dist/InputGroup/InputGroup.js +1 -1
  228. package/dist/InputGroup/InputGroupText.d.ts +1 -1
  229. package/dist/InputGroup/InputGroupText.js +1 -1
  230. package/dist/Item/Item.d.ts +17 -4
  231. package/dist/Item/Item.d.ts.map +1 -1
  232. package/dist/Item/Item.js +32 -7
  233. package/dist/Kbd/Kbd.d.ts +1 -1
  234. package/dist/Kbd/Kbd.js +1 -1
  235. package/dist/Layout/Layout.d.ts +1 -1
  236. package/dist/Layout/Layout.js +1 -1
  237. package/dist/Layout/LayoutContent.d.ts +1 -1
  238. package/dist/Layout/LayoutContent.js +1 -1
  239. package/dist/Layout/LayoutFooter.d.ts +1 -1
  240. package/dist/Layout/LayoutFooter.js +1 -1
  241. package/dist/Layout/LayoutHeader.d.ts +1 -1
  242. package/dist/Layout/LayoutHeader.js +1 -1
  243. package/dist/Layout/LayoutPanel.d.ts +1 -1
  244. package/dist/Layout/LayoutPanel.js +1 -1
  245. package/dist/Lightbox/Lightbox.d.ts +6 -4
  246. package/dist/Lightbox/Lightbox.d.ts.map +1 -1
  247. package/dist/Lightbox/Lightbox.js +117 -26
  248. package/dist/Link/Link.d.ts +1 -1
  249. package/dist/Link/Link.js +1 -1
  250. package/dist/Link/LinkProvider.d.ts +2 -2
  251. package/dist/Link/LinkProvider.js +2 -2
  252. package/dist/List/List.d.ts +1 -1
  253. package/dist/List/List.js +1 -1
  254. package/dist/List/ListItem.d.ts +12 -2
  255. package/dist/List/ListItem.d.ts.map +1 -1
  256. package/dist/List/ListItem.js +3 -1
  257. package/dist/Markdown/Markdown.d.ts.map +1 -1
  258. package/dist/Markdown/Markdown.js +35 -13
  259. package/dist/MetadataList/MetadataList.d.ts +2 -2
  260. package/dist/MetadataList/MetadataList.d.ts.map +1 -1
  261. package/dist/MetadataList/MetadataList.js +38 -12
  262. package/dist/MetadataList/MetadataListItem.d.ts +1 -1
  263. package/dist/MetadataList/MetadataListItem.js +1 -1
  264. package/dist/MobileNav/MobileNav.d.ts +1 -1
  265. package/dist/MobileNav/MobileNav.js +1 -1
  266. package/dist/MoreMenu/MoreMenu.d.ts +1 -1
  267. package/dist/MoreMenu/MoreMenu.js +3 -3
  268. package/dist/MultiSelector/MultiSelector.d.ts +13 -4
  269. package/dist/MultiSelector/MultiSelector.d.ts.map +1 -1
  270. package/dist/MultiSelector/MultiSelector.js +118 -24
  271. package/dist/NavIcon/NavIcon.d.ts +1 -1
  272. package/dist/NavIcon/NavIcon.js +1 -1
  273. package/dist/NavMenu/index.d.ts +0 -2
  274. package/dist/NavMenu/index.d.ts.map +1 -1
  275. package/dist/NavMenu/index.js +1 -3
  276. package/dist/NumberInput/NumberInput.d.ts +1 -1
  277. package/dist/NumberInput/NumberInput.d.ts.map +1 -1
  278. package/dist/NumberInput/NumberInput.js +16 -5
  279. package/dist/Outline/Outline.js +1 -1
  280. package/dist/OverflowList/OverflowList.d.ts +1 -1
  281. package/dist/OverflowList/OverflowList.js +1 -1
  282. package/dist/Pagination/Pagination.d.ts +26 -21
  283. package/dist/Pagination/Pagination.d.ts.map +1 -1
  284. package/dist/Pagination/Pagination.js +169 -41
  285. package/dist/Pagination/index.d.ts +22 -1
  286. package/dist/Pagination/index.d.ts.map +1 -1
  287. package/dist/Pagination/index.js +14 -0
  288. package/dist/Popover/Popover.d.ts +20 -3
  289. package/dist/Popover/Popover.d.ts.map +1 -1
  290. package/dist/Popover/Popover.js +5 -1
  291. package/dist/Popover/usePopover.d.ts.map +1 -1
  292. package/dist/Popover/usePopover.js +14 -3
  293. package/dist/PowerSearch/PowerSearch.d.ts +1 -1
  294. package/dist/PowerSearch/PowerSearch.js +1 -1
  295. package/dist/ProgressBar/ProgressBar.d.ts +49 -22
  296. package/dist/ProgressBar/ProgressBar.d.ts.map +1 -1
  297. package/dist/ProgressBar/ProgressBar.js +79 -22
  298. package/dist/ProgressBar/ProgressBarMarkTooltip.d.ts +27 -0
  299. package/dist/ProgressBar/ProgressBarMarkTooltip.d.ts.map +1 -0
  300. package/dist/ProgressBar/ProgressBarMarkTooltip.js +35 -0
  301. package/dist/ProgressBar/index.d.ts +21 -1
  302. package/dist/ProgressBar/index.d.ts.map +1 -1
  303. package/dist/ProgressBar/index.js +14 -0
  304. package/dist/RadioList/RadioList.d.ts +1 -1
  305. package/dist/RadioList/RadioList.js +1 -1
  306. package/dist/RadioList/RadioListItem.d.ts +1 -1
  307. package/dist/RadioList/RadioListItem.d.ts.map +1 -1
  308. package/dist/RadioList/RadioListItem.js +2 -2
  309. package/dist/Resizable/ResizeHandle.d.ts.map +1 -1
  310. package/dist/Resizable/ResizeHandle.js +15 -11
  311. package/dist/Section/Section.d.ts +2 -19
  312. package/dist/Section/Section.d.ts.map +1 -1
  313. package/dist/Section/Section.js +1 -15
  314. package/dist/Section/index.d.ts +19 -1
  315. package/dist/Section/index.d.ts.map +1 -1
  316. package/dist/Section/index.js +14 -0
  317. package/dist/SegmentedControl/SegmentedControl.d.ts +1 -1
  318. package/dist/SegmentedControl/SegmentedControl.js +1 -1
  319. package/dist/SegmentedControl/SegmentedControlItem.d.ts +1 -1
  320. package/dist/SegmentedControl/SegmentedControlItem.d.ts.map +1 -1
  321. package/dist/SegmentedControl/SegmentedControlItem.js +4 -3
  322. package/dist/SelectableCard/SelectableCard.d.ts +4 -3
  323. package/dist/SelectableCard/SelectableCard.d.ts.map +1 -1
  324. package/dist/SelectableCard/SelectableCard.js +15 -3
  325. package/dist/Selector/Selector.d.ts +12 -3
  326. package/dist/Selector/Selector.d.ts.map +1 -1
  327. package/dist/Selector/Selector.js +109 -21
  328. package/dist/SideNav/SideNav.d.ts +1 -1
  329. package/dist/SideNav/SideNav.js +1 -1
  330. package/dist/SideNav/SideNavCollapseButton.d.ts +1 -1
  331. package/dist/SideNav/SideNavCollapseButton.d.ts.map +1 -1
  332. package/dist/SideNav/SideNavCollapseButton.js +4 -3
  333. package/dist/SideNav/SideNavHeading.d.ts +1 -1
  334. package/dist/SideNav/SideNavHeading.d.ts.map +1 -1
  335. package/dist/SideNav/SideNavHeading.js +8 -7
  336. package/dist/SideNav/SideNavItem.d.ts +2 -2
  337. package/dist/SideNav/SideNavItem.d.ts.map +1 -1
  338. package/dist/SideNav/SideNavItem.js +6 -7
  339. package/dist/SideNav/SideNavSection.d.ts +1 -1
  340. package/dist/SideNav/SideNavSection.js +1 -1
  341. package/dist/Skeleton/Skeleton.d.ts +1 -1
  342. package/dist/Skeleton/Skeleton.d.ts.map +1 -1
  343. package/dist/Skeleton/Skeleton.js +3 -3
  344. package/dist/Slider/Slider.d.ts.map +1 -1
  345. package/dist/Slider/Slider.js +78 -68
  346. package/dist/Spinner/Spinner.d.ts +1 -1
  347. package/dist/Spinner/Spinner.js +1 -1
  348. package/dist/Stack/Stack.d.ts +1 -1
  349. package/dist/Stack/Stack.js +1 -1
  350. package/dist/Stack/StackItem.d.ts +1 -1
  351. package/dist/Stack/StackItem.js +1 -1
  352. package/dist/StatusDot/StatusDot.d.ts +1 -20
  353. package/dist/StatusDot/StatusDot.d.ts.map +1 -1
  354. package/dist/StatusDot/StatusDot.js +2 -17
  355. package/dist/StatusDot/index.d.ts +21 -1
  356. package/dist/StatusDot/index.d.ts.map +1 -1
  357. package/dist/StatusDot/index.js +14 -0
  358. package/dist/Switch/Switch.d.ts +2 -6
  359. package/dist/Switch/Switch.d.ts.map +1 -1
  360. package/dist/Switch/Switch.js +18 -10
  361. package/dist/TabList/Tab.d.ts +1 -1
  362. package/dist/TabList/Tab.js +1 -1
  363. package/dist/TabList/TabList.d.ts +1 -1
  364. package/dist/TabList/TabList.js +1 -1
  365. package/dist/TabList/TabMenu.d.ts +1 -1
  366. package/dist/TabList/TabMenu.d.ts.map +1 -1
  367. package/dist/TabList/TabMenu.js +11 -3
  368. package/dist/Table/BaseTable.d.ts +1 -1
  369. package/dist/Table/BaseTable.d.ts.map +1 -1
  370. package/dist/Table/BaseTable.js +4 -7
  371. package/dist/Table/Table.d.ts +1 -1
  372. package/dist/Table/Table.js +1 -1
  373. package/dist/Table/TableCell.d.ts +1 -1
  374. package/dist/Table/TableCell.js +4 -2
  375. package/dist/Table/TableHeaderCell.d.ts +1 -1
  376. package/dist/Table/TableHeaderCell.js +4 -2
  377. package/dist/Table/TableRow.d.ts +1 -1
  378. package/dist/Table/TableRow.js +1 -1
  379. package/dist/Table/index.d.ts +1 -1
  380. package/dist/Table/index.d.ts.map +1 -1
  381. package/dist/Table/index.js +1 -1
  382. package/dist/Table/plugins/groupedRows/useTableGroupedRows.d.ts +1 -1
  383. package/dist/Table/plugins/groupedRows/useTableGroupedRows.js +1 -1
  384. package/dist/Table/plugins/rowExpansion/useTableRowExpansion.d.ts +18 -3
  385. package/dist/Table/plugins/rowExpansion/useTableRowExpansion.d.ts.map +1 -1
  386. package/dist/Table/plugins/rowExpansion/useTableRowExpansion.js +22 -4
  387. package/dist/Table/plugins/tree/useTableTreeData.d.ts +11 -0
  388. package/dist/Table/plugins/tree/useTableTreeData.d.ts.map +1 -1
  389. package/dist/Table/plugins/tree/useTableTreeData.js +36 -2
  390. package/dist/Table/types.d.ts +0 -9
  391. package/dist/Table/types.d.ts.map +1 -1
  392. package/dist/Text/Text.d.ts +11 -2
  393. package/dist/Text/Text.d.ts.map +1 -1
  394. package/dist/Text/Text.js +26 -3
  395. package/dist/Text/index.d.ts +31 -1
  396. package/dist/Text/index.d.ts.map +1 -1
  397. package/dist/Text/index.js +23 -0
  398. package/dist/TextArea/TextArea.d.ts +1 -1
  399. package/dist/TextArea/TextArea.d.ts.map +1 -1
  400. package/dist/TextArea/TextArea.js +107 -39
  401. package/dist/TextInput/TextInput.d.ts +1 -1
  402. package/dist/TextInput/TextInput.js +1 -1
  403. package/dist/Thumbnail/Thumbnail.d.ts.map +1 -1
  404. package/dist/Thumbnail/Thumbnail.js +52 -46
  405. package/dist/TimeInput/TimeInput.js +1 -1
  406. package/dist/Timestamp/Timestamp.d.ts +26 -12
  407. package/dist/Timestamp/Timestamp.d.ts.map +1 -1
  408. package/dist/Timestamp/Timestamp.js +128 -65
  409. package/dist/Timestamp/TimestampHoverCard.d.ts +45 -0
  410. package/dist/Timestamp/TimestampHoverCard.d.ts.map +1 -0
  411. package/dist/Timestamp/TimestampHoverCard.js +228 -0
  412. package/dist/Timestamp/formatInstant.d.ts +3 -3
  413. package/dist/Timestamp/formatInstant.d.ts.map +1 -1
  414. package/dist/Timestamp/formatInstant.js +7 -2
  415. package/dist/Timestamp/tooltipEntries.d.ts +17 -2
  416. package/dist/Timestamp/tooltipEntries.d.ts.map +1 -1
  417. package/dist/Timestamp/tooltipEntries.js +4 -2
  418. package/dist/Toast/ToastViewport.d.ts.map +1 -1
  419. package/dist/Toast/ToastViewport.js +61 -9
  420. package/dist/ToggleButton/ToggleButton.d.ts +1 -1
  421. package/dist/ToggleButton/ToggleButton.d.ts.map +1 -1
  422. package/dist/ToggleButton/ToggleButton.js +4 -2
  423. package/dist/ToggleButton/ToggleButtonGroup.d.ts +1 -1
  424. package/dist/ToggleButton/ToggleButtonGroup.d.ts.map +1 -1
  425. package/dist/ToggleButton/ToggleButtonGroup.js +1 -1
  426. package/dist/Token/Token.d.ts +6 -28
  427. package/dist/Token/Token.d.ts.map +1 -1
  428. package/dist/Token/Token.js +69 -58
  429. package/dist/Token/TokenLink.d.ts +62 -0
  430. package/dist/Token/TokenLink.d.ts.map +1 -0
  431. package/dist/Token/TokenLink.js +76 -0
  432. package/dist/Token/index.d.ts +27 -1
  433. package/dist/Token/index.d.ts.map +1 -1
  434. package/dist/Token/index.js +14 -0
  435. package/dist/Tokenizer/Tokenizer.d.ts +1 -1
  436. package/dist/Tokenizer/Tokenizer.js +1 -1
  437. package/dist/Toolbar/Toolbar.d.ts +1 -1
  438. package/dist/Toolbar/Toolbar.js +1 -1
  439. package/dist/Tooltip/Tooltip.d.ts +1 -1
  440. package/dist/Tooltip/Tooltip.js +1 -1
  441. package/dist/TopNav/TopNav.d.ts +1 -1
  442. package/dist/TopNav/TopNav.js +1 -1
  443. package/dist/TopNav/TopNavHeading.d.ts +2 -8
  444. package/dist/TopNav/TopNavHeading.d.ts.map +1 -1
  445. package/dist/TopNav/TopNavHeading.js +8 -10
  446. package/dist/TopNav/TopNavItem.d.ts +1 -1
  447. package/dist/TopNav/TopNavItem.js +1 -1
  448. package/dist/TopNav/TopNavMegaMenu.d.ts +1 -1
  449. package/dist/TopNav/TopNavMegaMenu.d.ts.map +1 -1
  450. package/dist/TopNav/TopNavMegaMenu.js +15 -7
  451. package/dist/TopNav/TopNavMegaMenuFeaturedCard.d.ts +1 -1
  452. package/dist/TopNav/TopNavMegaMenuFeaturedCard.js +1 -1
  453. package/dist/TopNav/TopNavMegaMenuItem.d.ts +1 -1
  454. package/dist/TopNav/TopNavMegaMenuItem.js +1 -1
  455. package/dist/TopNav/TopNavMenu.d.ts +1 -1
  456. package/dist/TopNav/TopNavMenu.d.ts.map +1 -1
  457. package/dist/TopNav/TopNavMenu.js +5 -4
  458. package/dist/TreeList/TreeList.d.ts +1 -1
  459. package/dist/TreeList/TreeList.js +1 -1
  460. package/dist/TreeList/TreeListBranches.js +1 -1
  461. package/dist/TreeList/TreeListItem.d.ts +1 -1
  462. package/dist/TreeList/TreeListItem.d.ts.map +1 -1
  463. package/dist/TreeList/TreeListItem.js +4 -3
  464. package/dist/TreeList/TreeListTypes.d.ts +1 -17
  465. package/dist/TreeList/TreeListTypes.d.ts.map +1 -1
  466. package/dist/TreeList/index.d.ts +18 -1
  467. package/dist/TreeList/index.d.ts.map +1 -1
  468. package/dist/TreeList/index.js +14 -0
  469. package/dist/Typeahead/BaseTypeahead.d.ts +10 -1
  470. package/dist/Typeahead/BaseTypeahead.d.ts.map +1 -1
  471. package/dist/Typeahead/BaseTypeahead.js +3 -1
  472. package/dist/Typeahead/Typeahead.d.ts +1 -1
  473. package/dist/Typeahead/Typeahead.d.ts.map +1 -1
  474. package/dist/Typeahead/Typeahead.js +9 -2
  475. package/dist/Typeahead/TypeaheadItem.d.ts +1 -1
  476. package/dist/Typeahead/TypeaheadItem.js +1 -1
  477. package/dist/VStack/VStack.d.ts +1 -1
  478. package/dist/VStack/VStack.js +1 -1
  479. package/dist/VisuallyHidden/VisuallyHidden.d.ts +1 -1
  480. package/dist/VisuallyHidden/VisuallyHidden.js +1 -1
  481. package/dist/astryx.css +111 -33
  482. package/dist/astryx.umd.js +50 -54
  483. package/dist/astryx.umd.js.map +4 -4
  484. package/dist/hooks/containerReveal.pool.stylex.d.ts +303 -0
  485. package/dist/hooks/containerReveal.pool.stylex.d.ts.map +1 -0
  486. package/dist/hooks/containerReveal.pool.stylex.js +292 -0
  487. package/dist/hooks/index.d.ts +2 -0
  488. package/dist/hooks/index.d.ts.map +1 -1
  489. package/dist/hooks/index.js +2 -1
  490. package/dist/hooks/useContainerReveal.d.ts +83 -0
  491. package/dist/hooks/useContainerReveal.d.ts.map +1 -0
  492. package/dist/hooks/useContainerReveal.js +123 -0
  493. package/dist/hooks/useGridFocus.d.ts +8 -6
  494. package/dist/hooks/useGridFocus.d.ts.map +1 -1
  495. package/dist/hooks/useInputContainer.d.ts.map +1 -1
  496. package/dist/hooks/useInputContainer.js +29 -1
  497. package/dist/hooks/useInputStatusIcon.d.ts.map +1 -1
  498. package/dist/hooks/useInputStatusIcon.js +11 -0
  499. package/dist/hooks/useKeyboardHint.d.ts +2 -2
  500. package/dist/hooks/useKeyboardHint.d.ts.map +1 -1
  501. package/dist/hooks/useKeyboardHint.js +5 -3
  502. package/dist/hooks/useListFocus.d.ts +8 -7
  503. package/dist/hooks/useListFocus.d.ts.map +1 -1
  504. package/dist/hooks/useTreeFocus.d.ts.map +1 -1
  505. package/dist/hooks/useTreeFocus.js +13 -2
  506. package/dist/i18n/InternationalizationProvider.d.ts +6 -0
  507. package/dist/i18n/InternationalizationProvider.d.ts.map +1 -1
  508. package/dist/i18n/useDirection.d.ts.map +1 -1
  509. package/dist/i18n/useDirection.js +6 -3
  510. package/dist/index.d.ts +2 -1
  511. package/dist/index.d.ts.map +1 -1
  512. package/dist/index.js +3 -3
  513. package/dist/theme/Theme.d.ts.map +1 -1
  514. package/dist/theme/Theme.js +2 -7
  515. package/dist/theme/contrast.d.ts +45 -0
  516. package/dist/theme/contrast.d.ts.map +1 -0
  517. package/dist/theme/contrast.js +88 -0
  518. package/dist/theme/defineTheme.d.ts +9 -3
  519. package/dist/theme/defineTheme.d.ts.map +1 -1
  520. package/dist/theme/defineTheme.js +6 -4
  521. package/dist/theme/expandColorScale.d.ts +29 -2
  522. package/dist/theme/expandColorScale.d.ts.map +1 -1
  523. package/dist/theme/expandColorScale.js +91 -12
  524. package/dist/theme/generateThemeRules.d.ts +0 -6
  525. package/dist/theme/generateThemeRules.d.ts.map +1 -1
  526. package/dist/theme/generateThemeRules.js +0 -15
  527. package/dist/theme/index.d.ts +9 -7
  528. package/dist/theme/index.d.ts.map +1 -1
  529. package/dist/theme/index.js +4 -3
  530. package/dist/theme/themeRegistry.d.ts +32 -0
  531. package/dist/theme/themeRegistry.d.ts.map +1 -0
  532. package/dist/theme/themeRegistry.js +49 -0
  533. package/dist/theme/tokens.stylex.d.ts +0 -17
  534. package/dist/theme/tokens.stylex.d.ts.map +1 -1
  535. package/dist/theme/tokens.stylex.js +0 -22
  536. package/dist/theme/types.d.ts +10 -2
  537. package/dist/theme/types.d.ts.map +1 -1
  538. package/dist/theme/useTheme.d.ts +9 -0
  539. package/dist/theme/useTheme.d.ts.map +1 -1
  540. package/dist/theme/useTheme.js +82 -27
  541. package/dist/utils/rtlStyles.d.ts +21 -0
  542. package/dist/utils/rtlStyles.d.ts.map +1 -1
  543. package/dist/utils/rtlStyles.js +26 -1
  544. package/groups.doc.mjs +2 -2
  545. package/locales/en.json +124 -0
  546. package/locales/pseudo.json +93 -0
  547. package/package.json +10 -14
  548. package/src/AlertDialog/AlertDialog.doc.mjs +3 -3
  549. package/src/AlertDialog/AlertDialog.tsx +1 -1
  550. package/src/AlertDialog/useImperativeAlertDialog.doc.mjs +1 -1
  551. package/src/AppShell/AppShell.doc.mjs +3 -3
  552. package/src/AppShell/AppShell.test.tsx +55 -0
  553. package/src/AppShell/AppShell.tsx +27 -22
  554. package/src/AppShell/index.ts +20 -1
  555. package/src/AppShell/useAppShellMobile.doc.mjs +2 -2
  556. package/src/AspectRatio/AspectRatio.doc.mjs +3 -3
  557. package/src/AspectRatio/AspectRatio.tsx +1 -1
  558. package/src/Avatar/Avatar.doc.mjs +3 -3
  559. package/src/Avatar/Avatar.tsx +8 -3
  560. package/src/Avatar/AvatarStatusDot.doc.mjs +1 -1
  561. package/src/Avatar/AvatarStatusDot.tsx +2 -27
  562. package/src/Avatar/index.ts +26 -1
  563. package/src/AvatarGroup/AvatarGroup.doc.mjs +3 -3
  564. package/src/AvatarGroup/AvatarGroup.test.tsx +21 -1
  565. package/src/AvatarGroup/AvatarGroup.tsx +3 -7
  566. package/src/AvatarGroup/AvatarGroupOverflow.doc.mjs +1 -1
  567. package/src/AvatarGroup/AvatarGroupOverflow.tsx +5 -3
  568. package/src/Badge/Badge.doc.mjs +3 -3
  569. package/src/Badge/Badge.tsx +2 -31
  570. package/src/Badge/index.ts +32 -6
  571. package/src/Banner/Banner.doc.mjs +3 -3
  572. package/src/Banner/Banner.tsx +8 -45
  573. package/src/Banner/index.ts +39 -7
  574. package/src/Blockquote/Blockquote.doc.mjs +3 -3
  575. package/src/Blockquote/Blockquote.tsx +1 -1
  576. package/src/Breadcrumbs/BreadcrumbItem.doc.mjs +1 -1
  577. package/src/Breadcrumbs/BreadcrumbItem.tsx +5 -3
  578. package/src/Breadcrumbs/Breadcrumbs.doc.mjs +3 -3
  579. package/src/Breadcrumbs/Breadcrumbs.test.tsx +1 -1
  580. package/src/Breadcrumbs/Breadcrumbs.tsx +2 -19
  581. package/src/Breadcrumbs/index.ts +19 -5
  582. package/src/Button/Button.doc.mjs +3 -3
  583. package/src/Button/Button.test.tsx +16 -0
  584. package/src/Button/Button.tsx +6 -23
  585. package/src/Button/index.ts +22 -7
  586. package/src/ButtonGroup/ButtonGroup.doc.mjs +3 -3
  587. package/src/ButtonGroup/ButtonGroup.tsx +1 -1
  588. package/src/Calendar/Calendar.doc.mjs +3 -3
  589. package/src/Calendar/Calendar.test.tsx +22 -6
  590. package/src/Calendar/Calendar.tsx +1 -1
  591. package/src/Calendar/index.ts +1 -6
  592. package/src/Calendar/styles.ts +2 -2
  593. package/src/Calendar/utils.ts +0 -11
  594. package/src/Card/Card.doc.mjs +3 -3
  595. package/src/Card/Card.tsx +1 -1
  596. package/src/Carousel/Carousel.doc.mjs +10 -3
  597. package/src/Carousel/Carousel.test.tsx +232 -1
  598. package/src/Carousel/Carousel.tsx +144 -21
  599. package/src/Carousel/index.ts +1 -1
  600. package/src/Center/Center.doc.mjs +41 -3
  601. package/src/Center/Center.test.tsx +75 -0
  602. package/src/Center/Center.tsx +38 -3
  603. package/src/Chat/Chat.doc.mjs +3 -3
  604. package/src/Chat/ChatComposer.doc.mjs +1 -1
  605. package/src/Chat/ChatComposer.tsx +5 -5
  606. package/src/Chat/ChatComposerDrawer.doc.mjs +1 -1
  607. package/src/Chat/ChatComposerDrawer.tsx +5 -5
  608. package/src/Chat/ChatComposerInput.doc.mjs +1 -1
  609. package/src/Chat/ChatComposerInput.tsx +1 -1
  610. package/src/Chat/ChatComposerTokenElement.doc.mjs +1 -1
  611. package/src/Chat/ChatDictationButton.doc.mjs +3 -3
  612. package/src/Chat/ChatDictationButton.tsx +1 -1
  613. package/src/Chat/ChatLayout.doc.mjs +1 -1
  614. package/src/Chat/ChatLayout.test.tsx +57 -0
  615. package/src/Chat/ChatLayout.tsx +23 -2
  616. package/src/Chat/ChatLayoutScrollButton.doc.mjs +1 -1
  617. package/src/Chat/ChatLayoutScrollButton.tsx +1 -1
  618. package/src/Chat/ChatMessage.doc.mjs +1 -1
  619. package/src/Chat/ChatMessage.tsx +1 -1
  620. package/src/Chat/ChatMessageBubble.doc.mjs +1 -1
  621. package/src/Chat/ChatMessageBubble.tsx +1 -1
  622. package/src/Chat/ChatMessageList.doc.mjs +1 -1
  623. package/src/Chat/ChatMessageList.tsx +1 -1
  624. package/src/Chat/ChatMessageMetadata.doc.mjs +1 -1
  625. package/src/Chat/ChatSendButton.doc.mjs +1 -1
  626. package/src/Chat/ChatSendButton.tsx +5 -3
  627. package/src/Chat/ChatSystemMessage.doc.mjs +1 -1
  628. package/src/Chat/ChatSystemMessage.tsx +1 -1
  629. package/src/Chat/ChatTokenizedText.doc.mjs +1 -1
  630. package/src/Chat/ChatTokenizedText.tsx +1 -1
  631. package/src/Chat/ChatToolCalls.doc.mjs +3 -3
  632. package/src/CheckboxInput/CheckboxInput.doc.mjs +3 -3
  633. package/src/CheckboxInput/CheckboxInput.test.tsx +56 -0
  634. package/src/CheckboxInput/CheckboxInput.tsx +18 -3
  635. package/src/CheckboxList/CheckboxList.doc.mjs +3 -3
  636. package/src/CheckboxList/CheckboxList.test.tsx +94 -3
  637. package/src/CheckboxList/CheckboxList.tsx +1 -1
  638. package/src/CheckboxList/CheckboxListItem.doc.mjs +1 -1
  639. package/src/CheckboxList/CheckboxListItem.tsx +18 -11
  640. package/src/Citation/Citation.doc.mjs +2 -2
  641. package/src/Citation/Citation.tsx +1 -1
  642. package/src/ClickableCard/ClickableCard.doc.mjs +2 -2
  643. package/src/ClickableCard/ClickableCard.tsx +3 -3
  644. package/src/Code/Code.tsx +2 -2
  645. package/src/CodeBlock/Code.doc.mjs +1 -1
  646. package/src/CodeBlock/CodeBlock.doc.mjs +3 -3
  647. package/src/CodeBlock/CodeBlock.test.tsx +17 -0
  648. package/src/CodeBlock/CodeBlock.tsx +2 -2
  649. package/src/Collapsible/Collapsible.doc.mjs +3 -3
  650. package/src/Collapsible/Collapsible.tsx +3 -3
  651. package/src/Collapsible/CollapsibleGroup.doc.mjs +1 -1
  652. package/src/Collapsible/CollapsibleGroup.tsx +1 -1
  653. package/src/Collapsible/CollapsibleGroupContext.tsx +1 -1
  654. package/src/Collapsible/useCollapsible.doc.mjs +2 -2
  655. package/src/CommandPalette/CommandPalette.doc.mjs +4 -4
  656. package/src/CommandPalette/CommandPalette.tsx +1 -1
  657. package/src/CommandPalette/CommandPaletteEmpty.doc.mjs +1 -1
  658. package/src/CommandPalette/CommandPaletteEmpty.tsx +1 -1
  659. package/src/CommandPalette/CommandPaletteFooter.doc.mjs +1 -1
  660. package/src/CommandPalette/CommandPaletteFooter.tsx +1 -1
  661. package/src/CommandPalette/CommandPaletteGroup.doc.mjs +1 -1
  662. package/src/CommandPalette/CommandPaletteGroup.test.tsx +6 -2
  663. package/src/CommandPalette/CommandPaletteGroup.tsx +1 -1
  664. package/src/CommandPalette/CommandPaletteInput.doc.mjs +1 -1
  665. package/src/CommandPalette/CommandPaletteInput.tsx +5 -1
  666. package/src/CommandPalette/CommandPaletteItem.doc.mjs +1 -1
  667. package/src/CommandPalette/CommandPaletteItem.tsx +1 -1
  668. package/src/CommandPalette/CommandPaletteList.doc.mjs +1 -1
  669. package/src/CommandPalette/CommandPaletteList.tsx +1 -1
  670. package/src/ComplexSelector/ComplexSelector.doc.mjs +179 -0
  671. package/src/ComplexSelector/ComplexSelector.test.tsx +156 -0
  672. package/src/ComplexSelector/ComplexSelector.tsx +429 -0
  673. package/src/ComplexSelector/index.ts +17 -0
  674. package/src/ContextMenu/ContextMenu.doc.mjs +3 -3
  675. package/src/ContextMenu/ContextMenu.test.tsx +17 -2
  676. package/src/ContextMenu/ContextMenu.tsx +27 -6
  677. package/src/ContextMenu/ContextMenuItem.doc.mjs +1 -1
  678. package/src/DateInput/DateInput.doc.mjs +3 -3
  679. package/src/DateInput/DateInput.test.tsx +7 -3
  680. package/src/DateInput/DateInput.tsx +1 -1
  681. package/src/DateRangeInput/DateRangeInput.doc.mjs +2 -2
  682. package/src/DateRangeInput/DateRangeInput.test.tsx +7 -2
  683. package/src/DateRangeInput/DateRangeInput.tsx +1 -1
  684. package/src/DateTimeInput/DateTimeInput.doc.mjs +3 -3
  685. package/src/DateTimeInput/DateTimeInput.test.tsx +6 -2
  686. package/src/DateTimeInput/DateTimeInput.tsx +1 -1
  687. package/src/Dialog/Dialog.doc.mjs +7 -5
  688. package/src/Dialog/Dialog.test.tsx +46 -3
  689. package/src/Dialog/Dialog.tsx +61 -44
  690. package/src/Dialog/DialogHeader.doc.mjs +1 -1
  691. package/src/Dialog/DialogHeader.tsx +1 -1
  692. package/src/Dialog/index.ts +18 -1
  693. package/src/Dialog/useImperativeDialog.doc.mjs +1 -1
  694. package/src/Divider/Divider.doc.mjs +3 -3
  695. package/src/Divider/Divider.tsx +2 -19
  696. package/src/Divider/index.ts +19 -5
  697. package/src/DropdownMenu/DropdownMenu.doc.mjs +20 -5
  698. package/src/DropdownMenu/DropdownMenu.test.tsx +122 -0
  699. package/src/DropdownMenu/DropdownMenu.tsx +31 -20
  700. package/src/DropdownMenu/DropdownMenuCheckboxItem.doc.mjs +1 -1
  701. package/src/DropdownMenu/DropdownMenuCheckboxItem.tsx +41 -64
  702. package/src/DropdownMenu/DropdownMenuItem.doc.mjs +1 -1
  703. package/src/DropdownMenu/DropdownMenuItem.tsx +1 -1
  704. package/src/DropdownMenu/DropdownMenuRadioGroup.doc.mjs +5 -13
  705. package/src/DropdownMenu/DropdownMenuRadioGroup.tsx +9 -10
  706. package/src/DropdownMenu/DropdownMenuRadioItem.doc.mjs +1 -1
  707. package/src/DropdownMenu/DropdownMenuRadioItem.tsx +11 -2
  708. package/src/DropdownMenu/DropdownMenuSelectable.test.tsx +84 -2
  709. package/src/DropdownMenu/DropdownMenuSubMenu.doc.mjs +1 -1
  710. package/src/DropdownMenu/DropdownMenuSubMenu.test.tsx +46 -1
  711. package/src/DropdownMenu/DropdownMenuSubMenu.tsx +24 -8
  712. package/src/DropdownMenu/menuItemHover.ts +1 -0
  713. package/src/DropdownMenu/renderDropdownItems.tsx +14 -2
  714. package/src/EmptyState/EmptyState.doc.mjs +3 -3
  715. package/src/EmptyState/EmptyState.tsx +1 -1
  716. package/src/Field/Field.doc.mjs +7 -3
  717. package/src/Field/Field.tsx +1 -1
  718. package/src/Field/FieldLabel.doc.mjs +1 -1
  719. package/src/Field/FieldLabel.test.tsx +103 -0
  720. package/src/Field/FieldLabel.tsx +61 -5
  721. package/src/FieldStatus/FieldStatus.doc.mjs +3 -2
  722. package/src/FieldStatus/FieldStatus.test.tsx +61 -0
  723. package/src/FieldStatus/FieldStatus.tsx +16 -23
  724. package/src/FieldStatus/index.ts +20 -5
  725. package/src/FileInput/FileInput.doc.mjs +3 -3
  726. package/src/FileInput/FileInput.tsx +1 -1
  727. package/src/FormLayout/FormLayout.doc.mjs +3 -3
  728. package/src/FormLayout/FormLayout.tsx +2 -5
  729. package/src/Grid/Grid.doc.mjs +3 -8
  730. package/src/Grid/Grid.tsx +1 -25
  731. package/src/Grid/GridSpan.doc.mjs +1 -1
  732. package/src/Grid/GridSpan.tsx +1 -1
  733. package/src/HStack/HStack.tsx +1 -1
  734. package/src/Heading/Heading.tsx +4 -3
  735. package/src/HoverCard/HoverCard.doc.mjs +3 -3
  736. package/src/HoverCard/HoverCard.tsx +1 -1
  737. package/src/HoverCard/useHoverCard.doc.mjs +2 -2
  738. package/src/Icon/Icon.doc.mjs +7 -6
  739. package/src/Icon/Icon.test.tsx +23 -0
  740. package/src/Icon/Icon.tsx +4 -2
  741. package/src/Icon/defaultIcons.tsx +14 -0
  742. package/src/Icon/globalIconRegistry.test.tsx +87 -1
  743. package/src/Icon/globalIconRegistry.tsx +111 -9
  744. package/src/Icon/index.ts +9 -7
  745. package/src/Icon/useIcon.ts +23 -0
  746. package/src/IconButton/IconButton.doc.mjs +2 -2
  747. package/src/IconButton/IconButton.tsx +1 -1
  748. package/src/InputGroup/InputGroup.doc.mjs +2 -2
  749. package/src/InputGroup/InputGroup.tsx +1 -1
  750. package/src/InputGroup/InputGroupText.doc.mjs +1 -1
  751. package/src/InputGroup/InputGroupText.tsx +1 -1
  752. package/src/Item/Item.doc.mjs +8 -3
  753. package/src/Item/Item.test.tsx +88 -0
  754. package/src/Item/Item.tsx +58 -12
  755. package/src/Kbd/Kbd.doc.mjs +3 -3
  756. package/src/Kbd/Kbd.tsx +1 -1
  757. package/src/Layer/Layer.doc.mjs +2 -2
  758. package/src/Layer/useLayer.doc.mjs +2 -2
  759. package/src/Layout/Layout.doc.mjs +3 -3
  760. package/src/Layout/Layout.tsx +1 -1
  761. package/src/Layout/LayoutContent.doc.mjs +1 -1
  762. package/src/Layout/LayoutContent.tsx +1 -1
  763. package/src/Layout/LayoutFooter.doc.mjs +1 -1
  764. package/src/Layout/LayoutFooter.tsx +1 -1
  765. package/src/Layout/LayoutHeader.doc.mjs +1 -1
  766. package/src/Layout/LayoutHeader.tsx +1 -1
  767. package/src/Layout/LayoutPanel.doc.mjs +1 -1
  768. package/src/Layout/LayoutPanel.tsx +1 -1
  769. package/src/Lightbox/Lightbox.doc.mjs +5 -5
  770. package/src/Lightbox/Lightbox.test.tsx +211 -0
  771. package/src/Lightbox/Lightbox.tsx +109 -22
  772. package/src/Link/Link.doc.mjs +3 -3
  773. package/src/Link/Link.tsx +1 -1
  774. package/src/Link/LinkProvider.doc.mjs +2 -2
  775. package/src/Link/LinkProvider.tsx +2 -2
  776. package/src/List/List.doc.mjs +3 -3
  777. package/src/List/List.tsx +1 -1
  778. package/src/List/ListItem.doc.mjs +13 -1
  779. package/src/List/ListItem.tsx +14 -1
  780. package/src/Markdown/Markdown.doc.mjs +81 -1
  781. package/src/Markdown/Markdown.test.tsx +92 -0
  782. package/src/Markdown/Markdown.tsx +96 -68
  783. package/src/Markdown/parser.perf.test.ts +47 -35
  784. package/src/MetadataList/MetadataList.doc.mjs +3 -3
  785. package/src/MetadataList/MetadataList.test.tsx +82 -0
  786. package/src/MetadataList/MetadataList.tsx +45 -20
  787. package/src/MetadataList/MetadataListItem.doc.mjs +1 -1
  788. package/src/MetadataList/MetadataListItem.tsx +1 -1
  789. package/src/MobileNav/MobileNav.doc.mjs +3 -3
  790. package/src/MobileNav/MobileNav.tsx +1 -1
  791. package/src/MoreMenu/MoreMenu.doc.mjs +3 -3
  792. package/src/MoreMenu/MoreMenu.tsx +3 -3
  793. package/src/MultiSelector/MultiSelector.doc.mjs +35 -10
  794. package/src/MultiSelector/MultiSelector.test.tsx +303 -3
  795. package/src/MultiSelector/MultiSelector.tsx +223 -58
  796. package/src/NavIcon/NavIcon.doc.mjs +3 -3
  797. package/src/NavIcon/NavIcon.tsx +1 -1
  798. package/src/NavMenu/NavHeadingMenu.test.tsx +0 -16
  799. package/src/NavMenu/NavMenu.doc.mjs +2 -2
  800. package/src/NavMenu/index.ts +0 -4
  801. package/src/NumberInput/NumberInput.doc.mjs +3 -6
  802. package/src/NumberInput/NumberInput.test.tsx +38 -3
  803. package/src/NumberInput/NumberInput.tsx +24 -1
  804. package/src/Outline/Outline.doc.mjs +3 -3
  805. package/src/Outline/Outline.tsx +1 -1
  806. package/src/OverflowList/OverflowList.doc.mjs +3 -3
  807. package/src/OverflowList/OverflowList.tsx +1 -1
  808. package/src/Overlay/Overlay.doc.mjs +2 -2
  809. package/src/Pagination/Pagination.doc.mjs +55 -8
  810. package/src/Pagination/Pagination.test.tsx +567 -0
  811. package/src/Pagination/Pagination.tsx +223 -41
  812. package/src/Pagination/index.ts +22 -1
  813. package/src/Popover/Popover.doc.mjs +31 -3
  814. package/src/Popover/Popover.test.tsx +41 -0
  815. package/src/Popover/Popover.tsx +25 -2
  816. package/src/Popover/usePopover.doc.mjs +2 -2
  817. package/src/Popover/usePopover.tsx +10 -4
  818. package/src/PowerSearch/PowerSearch.doc.mjs +3 -3
  819. package/src/PowerSearch/PowerSearch.tsx +1 -1
  820. package/src/ProgressBar/ProgressBar.doc.mjs +18 -3
  821. package/src/ProgressBar/ProgressBar.test.tsx +340 -2
  822. package/src/ProgressBar/ProgressBar.tsx +153 -25
  823. package/src/ProgressBar/ProgressBarMarkTooltip.tsx +43 -0
  824. package/src/ProgressBar/index.ts +22 -1
  825. package/src/RadioList/RadioList.doc.mjs +3 -3
  826. package/src/RadioList/RadioList.test.tsx +26 -4
  827. package/src/RadioList/RadioList.tsx +1 -1
  828. package/src/RadioList/RadioListItem.doc.mjs +1 -1
  829. package/src/RadioList/RadioListItem.tsx +9 -2
  830. package/src/Resizable/Resizable.doc.mjs +2 -2
  831. package/src/Resizable/ResizeHandle.test.tsx +52 -3
  832. package/src/Resizable/ResizeHandle.tsx +25 -13
  833. package/src/Resizable/useResizable.doc.mjs +2 -2
  834. package/src/Section/Section.doc.mjs +3 -3
  835. package/src/Section/Section.tsx +2 -20
  836. package/src/Section/index.ts +20 -5
  837. package/src/SegmentedControl/SegmentedControl.doc.mjs +3 -3
  838. package/src/SegmentedControl/SegmentedControl.test.tsx +28 -0
  839. package/src/SegmentedControl/SegmentedControl.tsx +1 -1
  840. package/src/SegmentedControl/SegmentedControlItem.doc.mjs +1 -1
  841. package/src/SegmentedControl/SegmentedControlItem.tsx +21 -3
  842. package/src/SelectableCard/SelectableCard.doc.mjs +4 -2
  843. package/src/SelectableCard/SelectableCard.test.tsx +55 -0
  844. package/src/SelectableCard/SelectableCard.tsx +19 -3
  845. package/src/Selector/Selector.doc.mjs +28 -8
  846. package/src/Selector/Selector.test.tsx +222 -3
  847. package/src/Selector/Selector.tsx +202 -52
  848. package/src/Selector/SelectorOption.doc.mjs +1 -1
  849. package/src/SideNav/SideNav.doc.mjs +3 -3
  850. package/src/SideNav/SideNav.tsx +1 -1
  851. package/src/SideNav/SideNavCollapseButton.doc.mjs +1 -1
  852. package/src/SideNav/SideNavCollapseButton.tsx +4 -3
  853. package/src/SideNav/SideNavHeading.doc.mjs +1 -1
  854. package/src/SideNav/SideNavHeading.tsx +8 -9
  855. package/src/SideNav/SideNavItem.doc.mjs +1 -1
  856. package/src/SideNav/SideNavItem.tsx +5 -6
  857. package/src/SideNav/SideNavSection.doc.mjs +1 -1
  858. package/src/SideNav/SideNavSection.tsx +1 -1
  859. package/src/Skeleton/Skeleton.doc.mjs +3 -3
  860. package/src/Skeleton/Skeleton.test.tsx +16 -0
  861. package/src/Skeleton/Skeleton.tsx +14 -2
  862. package/src/Slider/Slider.doc.mjs +3 -3
  863. package/src/Slider/Slider.tsx +9 -13
  864. package/src/Spinner/Spinner.doc.mjs +3 -3
  865. package/src/Spinner/Spinner.tsx +1 -1
  866. package/src/Stack/Stack.doc.mjs +3 -3
  867. package/src/Stack/Stack.tsx +1 -1
  868. package/src/Stack/StackItem.tsx +1 -1
  869. package/src/StatusDot/StatusDot.doc.mjs +3 -3
  870. package/src/StatusDot/StatusDot.tsx +2 -22
  871. package/src/StatusDot/index.ts +22 -5
  872. package/src/Switch/Switch.doc.mjs +5 -5
  873. package/src/Switch/Switch.test.tsx +71 -25
  874. package/src/Switch/Switch.tsx +56 -18
  875. package/src/TabList/Tab.doc.mjs +1 -1
  876. package/src/TabList/Tab.tsx +1 -1
  877. package/src/TabList/TabList.doc.mjs +3 -3
  878. package/src/TabList/TabList.test.tsx +21 -18
  879. package/src/TabList/TabList.tsx +1 -1
  880. package/src/TabList/TabMenu.doc.mjs +1 -1
  881. package/src/TabList/TabMenu.tsx +11 -3
  882. package/src/Table/BaseTable.tsx +4 -5
  883. package/src/Table/Table.doc.mjs +5 -5
  884. package/src/Table/Table.test.tsx +27 -49
  885. package/src/Table/Table.tsx +1 -1
  886. package/src/Table/TableCell.doc.mjs +1 -1
  887. package/src/Table/TableCell.tsx +2 -2
  888. package/src/Table/TableHeaderCell.doc.mjs +1 -1
  889. package/src/Table/TableHeaderCell.tsx +2 -2
  890. package/src/Table/TableRow.doc.mjs +1 -1
  891. package/src/Table/TableRow.tsx +1 -1
  892. package/src/Table/index.ts +1 -1
  893. package/src/Table/plugins/groupedRows/useTableGroupedRows.tsx +1 -1
  894. package/src/Table/plugins/rowExpansion/useTableRowExpansion.test.tsx +19 -0
  895. package/src/Table/plugins/rowExpansion/useTableRowExpansion.tsx +24 -4
  896. package/src/Table/plugins/tree/useTableTreeData.test.tsx +161 -2
  897. package/src/Table/plugins/tree/useTableTreeData.tsx +54 -1
  898. package/src/Table/types.ts +0 -9
  899. package/src/Table/useTableColumnResize.doc.mjs +1 -1
  900. package/src/Table/useTableColumnSettings.doc.mjs +1 -1
  901. package/src/Table/useTableFilterState.doc.mjs +1 -1
  902. package/src/Table/useTableFiltering.doc.mjs +1 -1
  903. package/src/Table/useTableGroupedRows.doc.mjs +2 -2
  904. package/src/Table/useTablePagination.doc.mjs +1 -1
  905. package/src/Table/useTableRowExpansion.doc.mjs +57 -4
  906. package/src/Table/useTableRowIndex.doc.mjs +2 -2
  907. package/src/Table/useTableRowStatus.doc.mjs +3 -3
  908. package/src/Table/useTableSelection.doc.mjs +1 -1
  909. package/src/Table/useTableSelectionState.doc.mjs +1 -1
  910. package/src/Table/useTableSortable.doc.mjs +1 -1
  911. package/src/Table/useTableStickyColumns.doc.mjs +1 -1
  912. package/src/Table/useTableTreeData.doc.mjs +10 -1
  913. package/src/Table/useTableTreeState.doc.mjs +1 -1
  914. package/src/Text/Heading.doc.mjs +4 -4
  915. package/src/Text/Text.doc.mjs +4 -4
  916. package/src/Text/Text.test.tsx +42 -0
  917. package/src/Text/Text.tsx +26 -2
  918. package/src/Text/index.ts +32 -6
  919. package/src/TextArea/TextArea.doc.mjs +5 -5
  920. package/src/TextArea/TextArea.test.tsx +112 -7
  921. package/src/TextArea/TextArea.tsx +143 -50
  922. package/src/TextInput/TextInput.doc.mjs +3 -3
  923. package/src/TextInput/TextInput.tsx +1 -1
  924. package/src/Thumbnail/Thumbnail.doc.mjs +2 -2
  925. package/src/Thumbnail/Thumbnail.test.tsx +24 -1
  926. package/src/Thumbnail/Thumbnail.tsx +28 -35
  927. package/src/TimeInput/TimeInput.doc.mjs +3 -3
  928. package/src/TimeInput/TimeInput.tsx +1 -1
  929. package/src/Timestamp/Timestamp.doc.mjs +29 -24
  930. package/src/Timestamp/Timestamp.test.tsx +438 -107
  931. package/src/Timestamp/Timestamp.tsx +167 -103
  932. package/src/Timestamp/TimestampHoverCard.tsx +283 -0
  933. package/src/Timestamp/formatInstant.ts +9 -4
  934. package/src/Timestamp/tooltipEntries.test.ts +9 -0
  935. package/src/Timestamp/tooltipEntries.ts +18 -2
  936. package/src/Toast/Toast.doc.mjs +3 -3
  937. package/src/Toast/ToastViewport.test.tsx +218 -8
  938. package/src/Toast/ToastViewport.tsx +71 -12
  939. package/src/Toast/useToast.doc.mjs +2 -2
  940. package/src/ToggleButton/ToggleButton.doc.mjs +3 -3
  941. package/src/ToggleButton/ToggleButton.test.tsx +24 -0
  942. package/src/ToggleButton/ToggleButton.tsx +20 -2
  943. package/src/ToggleButton/ToggleButtonGroup.doc.mjs +1 -1
  944. package/src/ToggleButton/ToggleButtonGroup.tsx +3 -6
  945. package/src/Token/Token.doc.mjs +3 -3
  946. package/src/Token/Token.test.tsx +145 -0
  947. package/src/Token/Token.tsx +75 -61
  948. package/src/Token/TokenLink.tsx +107 -0
  949. package/src/Token/index.ts +28 -1
  950. package/src/Tokenizer/Tokenizer.doc.mjs +3 -3
  951. package/src/Tokenizer/Tokenizer.tsx +1 -1
  952. package/src/Toolbar/Toolbar.doc.mjs +3 -3
  953. package/src/Toolbar/Toolbar.tsx +1 -1
  954. package/src/Tooltip/Tooltip.doc.mjs +3 -3
  955. package/src/Tooltip/Tooltip.tsx +1 -1
  956. package/src/Tooltip/useTooltip.doc.mjs +2 -2
  957. package/src/TopNav/TopNav.doc.mjs +3 -3
  958. package/src/TopNav/TopNav.test.tsx +2 -2
  959. package/src/TopNav/TopNav.tsx +1 -1
  960. package/src/TopNav/TopNavHeading.doc.mjs +1 -12
  961. package/src/TopNav/TopNavHeading.tsx +8 -18
  962. package/src/TopNav/TopNavItem.doc.mjs +1 -1
  963. package/src/TopNav/TopNavItem.tsx +1 -1
  964. package/src/TopNav/TopNavMegaMenu.doc.mjs +1 -1
  965. package/src/TopNav/TopNavMegaMenu.tsx +32 -6
  966. package/src/TopNav/TopNavMegaMenuFeaturedCard.doc.mjs +1 -1
  967. package/src/TopNav/TopNavMegaMenuFeaturedCard.tsx +1 -1
  968. package/src/TopNav/TopNavMegaMenuItem.doc.mjs +1 -1
  969. package/src/TopNav/TopNavMegaMenuItem.tsx +1 -1
  970. package/src/TopNav/TopNavMenu.doc.mjs +1 -1
  971. package/src/TopNav/TopNavMenu.tsx +5 -4
  972. package/src/TreeList/TreeList.doc.mjs +3 -3
  973. package/src/TreeList/TreeList.test.tsx +10 -6
  974. package/src/TreeList/TreeList.tsx +1 -1
  975. package/src/TreeList/TreeListBranches.tsx +1 -1
  976. package/src/TreeList/TreeListItem.tsx +4 -3
  977. package/src/TreeList/TreeListTypes.ts +1 -18
  978. package/src/TreeList/index.ts +19 -1
  979. package/src/Typeahead/BaseTypeahead.doc.mjs +1 -1
  980. package/src/Typeahead/BaseTypeahead.tsx +13 -1
  981. package/src/Typeahead/Typeahead.doc.mjs +3 -3
  982. package/src/Typeahead/Typeahead.test.tsx +62 -0
  983. package/src/Typeahead/Typeahead.tsx +7 -1
  984. package/src/Typeahead/TypeaheadItem.doc.mjs +1 -1
  985. package/src/Typeahead/TypeaheadItem.tsx +1 -1
  986. package/src/VStack/VStack.tsx +1 -1
  987. package/src/VisuallyHidden/VisuallyHidden.doc.mjs +3 -3
  988. package/src/VisuallyHidden/VisuallyHidden.tsx +1 -1
  989. package/src/__tests__/babelPluginAddExtensions.test.ts +190 -0
  990. package/src/__tests__/forcedColors.ts +60 -0
  991. package/src/__tests__/inputWidthContract.test.tsx +8 -1
  992. package/src/doc-mjs.d.ts +5 -2
  993. package/src/docPropLiterals.test.ts +1 -1
  994. package/src/docPropReferences.test.ts +1 -1
  995. package/src/hooks/containerReveal.pool.stylex.ts +571 -0
  996. package/src/hooks/index.ts +7 -0
  997. package/src/hooks/useClickableContainer.doc.mjs +2 -2
  998. package/src/hooks/useContainerReveal.doc.mjs +75 -0
  999. package/src/hooks/useContainerReveal.test.tsx +116 -0
  1000. package/src/hooks/useContainerReveal.ts +181 -0
  1001. package/src/hooks/useEntryAnimation.doc.mjs +2 -2
  1002. package/src/hooks/useFocusTrap.doc.mjs +2 -2
  1003. package/src/hooks/useGridFocus.doc.mjs +2 -2
  1004. package/src/hooks/useGridFocus.ts +8 -6
  1005. package/src/hooks/useHotkeys.doc.mjs +2 -2
  1006. package/src/hooks/useImageMode.doc.mjs +2 -2
  1007. package/src/hooks/useInputContainer.doc.mjs +2 -2
  1008. package/src/hooks/useInputContainer.test.tsx +180 -0
  1009. package/src/hooks/useInputContainer.ts +36 -1
  1010. package/src/hooks/useInputStatusIcon.test.tsx +59 -0
  1011. package/src/hooks/useInputStatusIcon.tsx +12 -1
  1012. package/src/hooks/useKeyboardHint.doc.mjs +2 -2
  1013. package/src/hooks/useKeyboardHint.test.tsx +22 -0
  1014. package/src/hooks/useKeyboardHint.tsx +7 -3
  1015. package/src/hooks/useListFocus.doc.mjs +2 -2
  1016. package/src/hooks/useListFocus.ts +8 -7
  1017. package/src/hooks/useMediaQuery.doc.mjs +2 -2
  1018. package/src/hooks/useOverflow.doc.mjs +2 -2
  1019. package/src/hooks/useScrollLock.doc.mjs +2 -2
  1020. package/src/hooks/useScrollOverflow.doc.mjs +2 -2
  1021. package/src/hooks/useStreamingText.doc.mjs +2 -2
  1022. package/src/hooks/useTreeFocus.doc.mjs +2 -2
  1023. package/src/hooks/useTreeFocus.test.tsx +53 -1
  1024. package/src/hooks/useTreeFocus.ts +13 -2
  1025. package/src/i18n/InternationalizationProvider.doc.mjs +14 -2
  1026. package/src/i18n/InternationalizationProvider.tsx +6 -0
  1027. package/src/i18n/useDirection.ts +6 -3
  1028. package/src/i18n/useTranslator.doc.mjs +2 -2
  1029. package/src/index.ts +2 -18
  1030. package/src/theme/MediaTheme.doc.mjs +2 -2
  1031. package/src/theme/SyntaxTheme.doc.mjs +2 -2
  1032. package/src/theme/Theme.doc.mjs +2 -2
  1033. package/src/theme/Theme.tsx +3 -7
  1034. package/src/theme/contrast.test.ts +94 -0
  1035. package/src/theme/contrast.ts +99 -0
  1036. package/src/theme/defineTheme.test.ts +29 -30
  1037. package/src/theme/defineTheme.ts +11 -5
  1038. package/src/theme/expandColorScale.test.ts +387 -1
  1039. package/src/theme/expandColorScale.ts +126 -17
  1040. package/src/theme/generateThemeRules.ts +0 -15
  1041. package/src/theme/index.ts +11 -13
  1042. package/src/theme/themeRegistry.test.ts +59 -0
  1043. package/src/theme/themeRegistry.ts +53 -0
  1044. package/src/theme/tokens.stylex.ts +0 -19
  1045. package/src/theme/types.ts +14 -13
  1046. package/src/theme/useTheme.doc.mjs +2 -2
  1047. package/src/theme/useTheme.test.tsx +48 -3
  1048. package/src/theme/useTheme.ts +100 -29
  1049. package/src/utils/rtlStyles.ts +22 -0
  1050. package/dist/NavMenu/NavMenuItem.d.ts +0 -13
  1051. package/dist/NavMenu/NavMenuItem.d.ts.map +0 -1
  1052. package/dist/NavMenu/NavMenuItem.js +0 -16
  1053. package/dist/Thumbnail/thumbnail.markers.stylex.d.ts +0 -9
  1054. package/dist/Thumbnail/thumbnail.markers.stylex.d.ts.map +0 -1
  1055. package/dist/Thumbnail/thumbnail.markers.stylex.js +0 -14
  1056. package/dist/authoring/doc.d.ts +0 -145
  1057. package/dist/authoring/doc.d.ts.map +0 -1
  1058. package/dist/authoring/doc.js +0 -100
  1059. package/dist/authoring/index.d.ts +0 -29
  1060. package/dist/authoring/index.d.ts.map +0 -1
  1061. package/dist/authoring/index.js +0 -28
  1062. package/dist/authoring/integration.d.ts +0 -35
  1063. package/dist/authoring/integration.d.ts.map +0 -1
  1064. package/dist/authoring/integration.js +0 -30
  1065. package/dist/authoring/template.d.ts +0 -66
  1066. package/dist/authoring/template.d.ts.map +0 -1
  1067. package/dist/authoring/template.js +0 -55
  1068. package/dist/config.d.ts +0 -80
  1069. package/dist/config.d.ts.map +0 -1
  1070. package/dist/config.js +0 -40
  1071. package/dist/docs-types.d.ts +0 -969
  1072. package/dist/docs-types.d.ts.map +0 -1
  1073. package/dist/docs-types.js +0 -1
  1074. package/src/NavMenu/NavMenuItem.tsx +0 -19
  1075. package/src/Thumbnail/thumbnail.markers.stylex.ts +0 -12
  1076. package/src/authoring/doc.ts +0 -164
  1077. package/src/authoring/index.test.ts +0 -52
  1078. package/src/authoring/index.ts +0 -50
  1079. package/src/authoring/integration.ts +0 -42
  1080. package/src/authoring/template.ts +0 -74
  1081. package/src/config.test.ts +0 -16
  1082. package/src/config.ts +0 -92
  1083. package/src/docs-types.ts +0 -1108
@@ -0,0 +1,45 @@
1
+ /**
2
+ * @file contrast.ts
3
+ * @input CSS color strings (hex, rgb()/rgba()) or parsed RGBA values
4
+ * @output WCAG 2.x relative luminance and contrast ratios
5
+ * @position Theme utility; consumed by expandColorScale.ts and theme tests
6
+ *
7
+ * Dependency-free WCAG 2.x contrast math. Backs the contrast guarantees
8
+ * for generated color tokens (WCAG 1.4.3 text contrast >= 4.5:1,
9
+ * WCAG 1.4.11 non-text contrast >= 3:1).
10
+ *
11
+ * Semi-transparent foregrounds are composited over their backdrop in
12
+ * gamma-encoded sRGB space (matching CSS alpha compositing) before the
13
+ * ratio is measured — a translucent token has no contrast of its own,
14
+ * only against what it renders on.
15
+ */
16
+ import type { RGBA } from '../utils/color';
17
+ /**
18
+ * WCAG 2.x relative luminance of an sRGB color (alpha ignored).
19
+ * 0 = black, 1 = white.
20
+ *
21
+ * https://www.w3.org/WAI/WCAG22/Techniques/general/G18
22
+ */
23
+ export declare function relativeLuminance(color: RGBA): number;
24
+ /**
25
+ * Composite a (possibly translucent) foreground over an opaque backdrop
26
+ * using standard source-over alpha blending in gamma-encoded sRGB space,
27
+ * matching how CSS paints translucent tokens. Returns an opaque color.
28
+ */
29
+ export declare function compositeOver(foreground: RGBA, backdrop: RGBA): RGBA;
30
+ /**
31
+ * WCAG 2.x contrast ratio between a foreground and an opaque background.
32
+ * Returns a value in [1, 21].
33
+ *
34
+ * A translucent foreground is composited over the background first.
35
+ * A translucent background is rejected — composite it over its own
36
+ * backdrop before calling, since its rendered color is unknowable here.
37
+ *
38
+ * @example
39
+ * ```
40
+ * contrastRatio('#000000', '#FFFFFF'); // 21
41
+ * contrastRatio('#0D131A', '#FCFDFE') >= 4.5; // text-on-surface check
42
+ * ```
43
+ */
44
+ export declare function contrastRatio(foreground: string | RGBA, background: string | RGBA): number;
45
+ //# sourceMappingURL=contrast.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contrast.d.ts","sourceRoot":"","sources":["../../src/theme/contrast.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAC,IAAI,EAAC,MAAM,gBAAgB,CAAC;AAGzC;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,IAAI,GAAG,MAAM,CAUrD;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,GAAG,IAAI,CAQpE;AAaD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,aAAa,CAC3B,UAAU,EAAE,MAAM,GAAG,IAAI,EACzB,UAAU,EAAE,MAAM,GAAG,IAAI,GACxB,MAAM,CAgBR"}
@@ -0,0 +1,88 @@
1
+ // Copyright (c) Meta Platforms, Inc. and affiliates.
2
+
3
+ /**
4
+ * @file contrast.ts
5
+ * @input CSS color strings (hex, rgb()/rgba()) or parsed RGBA values
6
+ * @output WCAG 2.x relative luminance and contrast ratios
7
+ * @position Theme utility; consumed by expandColorScale.ts and theme tests
8
+ *
9
+ * Dependency-free WCAG 2.x contrast math. Backs the contrast guarantees
10
+ * for generated color tokens (WCAG 1.4.3 text contrast >= 4.5:1,
11
+ * WCAG 1.4.11 non-text contrast >= 3:1).
12
+ *
13
+ * Semi-transparent foregrounds are composited over their backdrop in
14
+ * gamma-encoded sRGB space (matching CSS alpha compositing) before the
15
+ * ratio is measured — a translucent token has no contrast of its own,
16
+ * only against what it renders on.
17
+ */
18
+
19
+ import { parseColor } from "../utils/color.js";
20
+
21
+ /**
22
+ * WCAG 2.x relative luminance of an sRGB color (alpha ignored).
23
+ * 0 = black, 1 = white.
24
+ *
25
+ * https://www.w3.org/WAI/WCAG22/Techniques/general/G18
26
+ */
27
+ export function relativeLuminance(color) {
28
+ const channel = c => {
29
+ const s = c / 255;
30
+ return s <= 0.04045 ? s / 12.92 : Math.pow((s + 0.055) / 1.055, 2.4);
31
+ };
32
+ return 0.2126 * channel(color.r) + 0.7152 * channel(color.g) + 0.0722 * channel(color.b);
33
+ }
34
+
35
+ /**
36
+ * Composite a (possibly translucent) foreground over an opaque backdrop
37
+ * using standard source-over alpha blending in gamma-encoded sRGB space,
38
+ * matching how CSS paints translucent tokens. Returns an opaque color.
39
+ */
40
+ export function compositeOver(foreground, backdrop) {
41
+ const a = foreground.a;
42
+ return {
43
+ r: foreground.r * a + backdrop.r * (1 - a),
44
+ g: foreground.g * a + backdrop.g * (1 - a),
45
+ b: foreground.b * a + backdrop.b * (1 - a),
46
+ a: 1
47
+ };
48
+ }
49
+ function resolve(value, label) {
50
+ if (typeof value !== 'string') {
51
+ return value;
52
+ }
53
+ const parsed = parseColor(value);
54
+ if (parsed === null) {
55
+ throw new TypeError(`contrastRatio: could not parse ${label} "${value}"`);
56
+ }
57
+ return parsed;
58
+ }
59
+
60
+ /**
61
+ * WCAG 2.x contrast ratio between a foreground and an opaque background.
62
+ * Returns a value in [1, 21].
63
+ *
64
+ * A translucent foreground is composited over the background first.
65
+ * A translucent background is rejected — composite it over its own
66
+ * backdrop before calling, since its rendered color is unknowable here.
67
+ *
68
+ * @example
69
+ * ```
70
+ * contrastRatio('#000000', '#FFFFFF'); // 21
71
+ * contrastRatio('#0D131A', '#FCFDFE') >= 4.5; // text-on-surface check
72
+ * ```
73
+ */
74
+ export function contrastRatio(foreground, background) {
75
+ const bg = resolve(background, 'background');
76
+ if (bg.a < 1) {
77
+ throw new TypeError('contrastRatio: background must be opaque — composite it over its backdrop first');
78
+ }
79
+ let fg = resolve(foreground, 'foreground');
80
+ if (fg.a < 1) {
81
+ fg = compositeOver(fg, bg);
82
+ }
83
+ const lumA = relativeLuminance(fg);
84
+ const lumB = relativeLuminance(bg);
85
+ const lighter = Math.max(lumA, lumB);
86
+ const darker = Math.min(lumA, lumB);
87
+ return (lighter + 0.05) / (darker + 0.05);
88
+ }
@@ -30,14 +30,14 @@
30
30
  import type { IconRegistry } from '../Icon/globalIconRegistry';
31
31
  import type { TypographyConfig } from './types';
32
32
  import { type OnMediaOverrides, type ResolvedOnMedia } from './onMediaTokens';
33
- import { colorDefaults, spacingDefaults, sizeDefaults, radiusDefaults, shadowDefaults, durationDefaults, easeDefaults, transitionDefaults, typographyDefaults, textSizeDefaults, fontWeightDefaults, typeScaleDefaults } from './tokens.stylex';
33
+ import { colorDefaults, spacingDefaults, sizeDefaults, radiusDefaults, shadowDefaults, durationDefaults, easeDefaults, typographyDefaults, textSizeDefaults, fontWeightDefaults, typeScaleDefaults } from './tokens.stylex';
34
34
  import { type MotionScaleConfig } from './expandMotionScale';
35
35
  import { type RadiusScaleConfig } from './expandRadiusScale';
36
36
  import { type ColorScaleConfig } from './expandColorScale';
37
37
  import type { DomainTokenName } from './domainTokens';
38
38
  import type { SyntaxThemeDefinition } from './syntax';
39
39
  /** All valid Astryx core token names */
40
- export type CoreTokenName = keyof typeof colorDefaults | keyof typeof spacingDefaults | keyof typeof sizeDefaults | keyof typeof radiusDefaults | keyof typeof shadowDefaults | keyof typeof durationDefaults | keyof typeof easeDefaults | keyof typeof transitionDefaults | keyof typeof typographyDefaults | keyof typeof textSizeDefaults | keyof typeof fontWeightDefaults | keyof typeof typeScaleDefaults;
40
+ export type CoreTokenName = keyof typeof colorDefaults | keyof typeof spacingDefaults | keyof typeof sizeDefaults | keyof typeof radiusDefaults | keyof typeof shadowDefaults | keyof typeof durationDefaults | keyof typeof easeDefaults | keyof typeof typographyDefaults | keyof typeof textSizeDefaults | keyof typeof fontWeightDefaults | keyof typeof typeScaleDefaults;
41
41
  /** All valid Astryx token names — core + domain tokens */
42
42
  export type TokenName = CoreTokenName | DomainTokenName;
43
43
  /**
@@ -189,9 +189,15 @@ export interface DefineThemeInput {
189
189
  * categorical hues, and fixed tokens (on-dark/on-light) use defaults.
190
190
  * Explicit `tokens` entries always take precedence.
191
191
  *
192
+ * `accent` is optional — omit it for a neutral-only theme, which keeps
193
+ * the default accent tokens and only themes the neutrals.
194
+ *
192
195
  * @example
193
196
  * ```tsx
194
197
  * color: { accent: '#0064E0', neutralStyle: 'cool', contrast: 'standard' }
198
+ *
199
+ * // Neutral-only — accent tokens stay at their defaults
200
+ * color: { neutralStyle: 'warm' }
195
201
  * ```
196
202
  */
197
203
  color?: ColorScaleConfig;
@@ -308,7 +314,7 @@ export declare const tokenDefaults: Record<string, string>;
308
314
  * precedence over generated values.
309
315
  */
310
316
  export declare function defineTheme(input: DefineThemeInput): DefinedTheme;
311
- export { generateThemeRules, generateThemeRulesSplit, generateOnMediaCSS, generateThemeCSS, generateThemeCSSFlat, type ThemeRulesSplit, type ThemeCSSOutput, } from './generateThemeRules';
317
+ export { generateThemeRules, generateThemeRulesSplit, generateOnMediaCSS, generateThemeCSS, type ThemeRulesSplit, type ThemeCSSOutput, } from './generateThemeRules';
312
318
  /** Check if a theme object was created with defineTheme */
313
319
  export declare function isDefinedTheme(theme: unknown): theme is DefinedTheme;
314
320
  //# sourceMappingURL=defineTheme.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"defineTheme.d.ts","sourceRoot":"","sources":["../../src/theme/defineTheme.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"defineTheme.d.ts","sourceRoot":"","sources":["../../src/theme/defineTheme.ts"],"names":[],"mappings":"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"}
@@ -31,12 +31,13 @@
31
31
  */
32
32
 
33
33
  import { resolveOnMedia } from "./onMediaTokens.js";
34
- import { colorDefaults, spacingDefaults, sizeDefaults, radiusDefaults, shadowDefaults, durationDefaults, easeDefaults, transitionDefaults, typographyDefaults, textSizeDefaults, fontWeightDefaults, typeScaleDefaults } from "./tokens.stylex.js";
34
+ import { colorDefaults, spacingDefaults, sizeDefaults, radiusDefaults, shadowDefaults, durationDefaults, easeDefaults, typographyDefaults, textSizeDefaults, fontWeightDefaults, typeScaleDefaults } from "./tokens.stylex.js";
35
35
  import { expandTypeScale, generateTypeScaleComponents } from "./expandTypeScale.js";
36
36
  import { expandMotionScale } from "./expandMotionScale.js";
37
37
  import { expandRadiusScale } from "./expandRadiusScale.js";
38
38
  import { expandColorScale } from "./expandColorScale.js";
39
39
  import { domainTokenDefaults } from "./domainTokens/index.js";
40
+ import { registerTheme } from "./themeRegistry.js";
40
41
 
41
42
  // =============================================================================
42
43
  // Types
@@ -123,7 +124,6 @@ export const tokenDefaults = {
123
124
  ...shadowDefaults,
124
125
  ...durationDefaults,
125
126
  ...easeDefaults,
126
- ...transitionDefaults,
127
127
  ...typographyDefaults,
128
128
  ...textSizeDefaults,
129
129
  ...fontWeightDefaults,
@@ -371,7 +371,7 @@ export function defineTheme(input) {
371
371
  ...base.icons,
372
372
  ...input.icons
373
373
  } : input.icons ?? base?.icons;
374
- return {
374
+ const theme = {
375
375
  name: input.name,
376
376
  tokens,
377
377
  components,
@@ -380,13 +380,15 @@ export function defineTheme(input) {
380
380
  __onDark,
381
381
  __onLight
382
382
  };
383
+ registerTheme(theme);
384
+ return theme;
383
385
  }
384
386
 
385
387
  // =============================================================================
386
388
  // CSS generation — re-exported from ./generateThemeRules.ts
387
389
  // =============================================================================
388
390
 
389
- export { generateThemeRules, generateThemeRulesSplit, generateOnMediaCSS, generateThemeCSS, generateThemeCSSFlat } from "./generateThemeRules.js";
391
+ export { generateThemeRules, generateThemeRulesSplit, generateOnMediaCSS, generateThemeCSS } from "./generateThemeRules.js";
390
392
 
391
393
  // =============================================================================
392
394
  // Type guard
@@ -8,11 +8,21 @@
8
8
  *
9
9
  * // With customization
10
10
  * { accent: '#B7410E', neutralStyle: 'warm', contrast: 'high' }
11
+ *
12
+ * // Neutral-only — keeps the default accent, themes the neutrals
13
+ * { neutralStyle: 'warm' }
11
14
  * ```
12
15
  */
13
16
  export interface ColorScaleConfig {
14
- /** Seed accent color as hex (#RRGGBB). Everything derives from this. */
15
- accent: string;
17
+ /**
18
+ * Seed accent color as hex (#RRGGBB). Everything derives from this.
19
+ *
20
+ * Optional. When omitted, the neutral palettes are seeded from the
21
+ * default accent's hue and the accent tokens (--color-accent,
22
+ * --color-accent-muted, --color-on-accent) are not generated — they
23
+ * fall through to colorDefaults.
24
+ */
25
+ accent?: string;
16
26
  /**
17
27
  * Neutral tone warmth. Controls how much of the seed's hue bleeds
18
28
  * into neutral/background colors.
@@ -26,6 +36,16 @@ export interface ColorScaleConfig {
26
36
  contrast?: 'standard' | 'high';
27
37
  }
28
38
  export type ColorScaleTokens = Record<string, string>;
39
+ /**
40
+ * Walk tone in `step` increments from `startTone` until the color reaches
41
+ * `minRatio` against `background`, and return the resulting hex.
42
+ *
43
+ * Used for tokens whose preferred tone is not guaranteed by tone spacing
44
+ * alone (e.g. --color-border-emphasized). Because HCT tone is CIE L*,
45
+ * each step moves luminance monotonically, so the loop always terminates —
46
+ * at worst at pure black/white (21:1 against anything mid-range).
47
+ */
48
+ export declare function ensureContrastTone(hue: number, chroma: number, startTone: number, step: -1 | 1, background: string, minRatio: number): string;
29
49
  /**
30
50
  * Expand a color scale config into Astryx color token overrides.
31
51
  *
@@ -34,10 +54,17 @@ export type ColorScaleTokens = Record<string, string>;
34
54
  * --color-on-dark/on-light) are NOT generated — they fall through
35
55
  * to colorDefaults.
36
56
  *
57
+ * Without an `accent`, the accent tokens join that fall-through set: the
58
+ * neutrals are seeded from the default accent's hue, and --color-accent,
59
+ * --color-accent-muted and --color-on-accent keep their colorDefaults values.
60
+ *
37
61
  * @example
38
62
  * ```
39
63
  * const tokens = expandColorScale({ accent: '#0064E0' });
40
64
  * // tokens['--color-accent'] === 'light-dark(#..., #...)'
65
+ *
66
+ * const neutralOnly = expandColorScale({ neutralStyle: 'warm' });
67
+ * // neutralOnly['--color-accent'] === undefined
41
68
  * ```
42
69
  */
43
70
  export declare function expandColorScale(config: ColorScaleConfig): ColorScaleTokens;
@@ -1 +1 @@
1
- {"version":3,"file":"expandColorScale.d.ts","sourceRoot":"","sources":["../../src/theme/expandColorScale.ts"],"names":[],"mappings":"AAuBA;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,gBAAgB;IAC/B,wEAAwE;IACxE,MAAM,EAAE,MAAM,CAAC;IAEf;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IAE3C;;;OAGG;IACH,QAAQ,CAAC,EAAE,UAAU,GAAG,MAAM,CAAC;CAChC;AAED,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AA8BtD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,gBAAgB,GACvB,gBAAgB,CAkFlB"}
1
+ {"version":3,"file":"expandColorScale.d.ts","sourceRoot":"","sources":["../../src/theme/expandColorScale.ts"],"names":[],"mappings":"AAuCA;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;;;;OAOG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IAE3C;;;OAGG;IACH,QAAQ,CAAC,EAAE,UAAU,GAAG,MAAM,CAAC;CAChC;AAED,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAyCtD;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,EACZ,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,GACf,MAAM,CAYR;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,GAAG,gBAAgB,CAuH3E"}
@@ -2,7 +2,7 @@
2
2
 
3
3
  /**
4
4
  * @file expandColorScale.ts
5
- * @input Color scale configuration { accent, neutralStyle?, contrast? }
5
+ * @input Color scale configuration { accent?, neutralStyle?, contrast? }
6
6
  * @output Token overrides for derivable color tokens
7
7
  * @position Theme utility; consumed by defineTheme.ts
8
8
  *
@@ -11,11 +11,27 @@
11
11
  * derive from the accent — status colors, categorical hues, and fixed
12
12
  * tokens (on-dark/on-light) fall through to colorDefaults.
13
13
  *
14
+ * `accent` is optional: a neutral-only config still gets the full neutral
15
+ * ramp (seeded from the default accent's hue) while the accent tokens
16
+ * themselves fall through to colorDefaults, same as the tokens above.
17
+ *
18
+ * WCAG contrast guarantees (asserted in expandColorScale.test.ts):
19
+ * - Text tones are guaranteed >= 4.5:1 against their surfaces by tone
20
+ * spacing alone — HCT tone is CIE L*, which fixes relative luminance
21
+ * regardless of hue/chroma, so the fixed tone assignments hold for any
22
+ * accent/neutralStyle (WCAG 1.4.3).
23
+ * - --color-border-emphasized (form-control boundaries) is tone-bumped
24
+ * until it reaches >= 3:1 against the generated surface (WCAG 1.4.11).
25
+ * - --color-border, --color-skeleton, and --color-track are intentionally
26
+ * decorative/redundant cues and are NOT held to 3:1 — see the test file
27
+ * for the rationale.
28
+ *
14
29
  * SYNC: When modified, update:
15
30
  * - /packages/core/src/theme/defineTheme.ts
16
31
  */
17
32
 
18
- import { hexToHct, tonalPalette, hexWithAlpha } from "./hct.js";
33
+ import { contrastRatio } from "./contrast.js";
34
+ import { hexToHct, hctToHex, tonalPalette, hexWithAlpha } from "./hct.js";
19
35
 
20
36
  // =============================================================================
21
37
  // Types
@@ -31,6 +47,9 @@ import { hexToHct, tonalPalette, hexWithAlpha } from "./hct.js";
31
47
  *
32
48
  * // With customization
33
49
  * { accent: '#B7410E', neutralStyle: 'warm', contrast: 'high' }
50
+ *
51
+ * // Neutral-only — keeps the default accent, themes the neutrals
52
+ * { neutralStyle: 'warm' }
34
53
  * ```
35
54
  */
36
55
 
@@ -49,6 +68,14 @@ const NEUTRAL_VARIANT_CHROMA = {
49
68
  neutral: 6
50
69
  };
51
70
 
71
+ /**
72
+ * Hue source for accent-less configs — the light half of
73
+ * colorDefaults['--color-accent'] (a test guards the two against drift).
74
+ * Only its hue reaches the output: the accent tokens stay ungenerated, so
75
+ * they keep their colorDefaults values rather than this seed's derivation.
76
+ */
77
+ const DEFAULT_ACCENT_SEED = '#0064E0';
78
+
52
79
  // =============================================================================
53
80
  // Computation
54
81
  // =============================================================================
@@ -60,6 +87,36 @@ function accentWithAlpha(alpha) {
60
87
  return `color-mix(in srgb, var(--color-accent) ${alpha * 100}%, transparent)`;
61
88
  }
62
89
 
90
+ /** WCAG 1.4.11 minimum contrast for non-text UI boundaries. */
91
+ const NON_TEXT_MIN_CONTRAST = 3;
92
+
93
+ /**
94
+ * Walk tone in `step` increments from `startTone` until the color reaches
95
+ * `minRatio` against `background`, and return the resulting hex.
96
+ *
97
+ * Used for tokens whose preferred tone is not guaranteed by tone spacing
98
+ * alone (e.g. --color-border-emphasized). Because HCT tone is CIE L*,
99
+ * each step moves luminance monotonically, so the loop always terminates —
100
+ * at worst at pure black/white (21:1 against anything mid-range).
101
+ */
102
+ export function ensureContrastTone(hue, chroma, startTone, step, background, minRatio) {
103
+ let tone = startTone;
104
+ let hex = hctToHex({
105
+ hue,
106
+ chroma,
107
+ tone
108
+ });
109
+ while (contrastRatio(hex, background) < minRatio && tone + step >= 0 && tone + step <= 100) {
110
+ tone += step;
111
+ hex = hctToHex({
112
+ hue,
113
+ chroma,
114
+ tone
115
+ });
116
+ }
117
+ return hex;
118
+ }
119
+
63
120
  /**
64
121
  * Expand a color scale config into Astryx color token overrides.
65
122
  *
@@ -68,10 +125,17 @@ function accentWithAlpha(alpha) {
68
125
  * --color-on-dark/on-light) are NOT generated — they fall through
69
126
  * to colorDefaults.
70
127
  *
128
+ * Without an `accent`, the accent tokens join that fall-through set: the
129
+ * neutrals are seeded from the default accent's hue, and --color-accent,
130
+ * --color-accent-muted and --color-on-accent keep their colorDefaults values.
131
+ *
71
132
  * @example
72
133
  * ```
73
134
  * const tokens = expandColorScale({ accent: '#0064E0' });
74
135
  * // tokens['--color-accent'] === 'light-dark(#..., #...)'
136
+ *
137
+ * const neutralOnly = expandColorScale({ neutralStyle: 'warm' });
138
+ * // neutralOnly['--color-accent'] === undefined
75
139
  * ```
76
140
  */
77
141
  export function expandColorScale(config) {
@@ -80,7 +144,7 @@ export function expandColorScale(config) {
80
144
  neutralStyle = 'cool',
81
145
  contrast = 'standard'
82
146
  } = config;
83
- const seed = hexToHct(accent);
147
+ const seed = hexToHct(accent ?? DEFAULT_ACCENT_SEED);
84
148
  const seedHue = seed.hue;
85
149
  const primaryChroma = Math.max(seed.chroma, 48);
86
150
  const neutralChroma = NEUTRAL_CHROMA[neutralStyle] ?? 5;
@@ -93,15 +157,29 @@ export function expandColorScale(config) {
93
157
  const textPrimaryDarkTone = isHigh ? 99 : 90;
94
158
  const textSecondaryLightTone = isHigh ? 20 : 30;
95
159
  const textSecondaryDarkTone = isHigh ? 80 : 70;
160
+
161
+ // Emphasized borders outline form controls (CheckboxInput, Selector), so
162
+ // they are non-text UI boundaries under WCAG 1.4.11 and must reach 3:1
163
+ // against the surface they sit on. The preferred tones (70 light /
164
+ // 30 dark) land around 2.2:1 / 1.8:1, so bump the tone toward the
165
+ // opposing extreme until the ratio passes. Text tones need no such loop:
166
+ // their spacing guarantees >= 4.5:1 for any hue/chroma (see file header).
167
+ const borderEmphasized = ld(ensureContrastTone(seedHue, neutralVariantChroma, 70, -1, N[99], NON_TEXT_MIN_CONTRAST), ensureContrastTone(seedHue, neutralVariantChroma, 30, 1, N[10], NON_TEXT_MIN_CONTRAST));
96
168
  return {
97
- // Core semantic
98
- '--color-accent': ld(P[40], P[80]),
99
- // Derived accent tokens reference --color-accent instead of baking its
100
- // resolved hex, so a scoped override of the base token re-accents the
101
- // whole subtree at runtime. --color-on-accent stays baked: it is a
102
- // contrast computation against the accent, which CSS cannot express.
103
- '--color-accent-muted': ld(accentWithAlpha(0.2), accentWithAlpha(0.25)),
104
- '--color-on-accent': ld(P[100], P[20]),
169
+ // Core semantic — only with a seed accent. Without one these fall through
170
+ // to colorDefaults, whose --color-accent is NOT what the default seed
171
+ // derives: defaulting the seed instead of omitting the tokens would
172
+ // recolor every neutral-only theme. Nullish and not truthy, matching the
173
+ // seed above, so a supplied-but-malformed accent keeps its old behavior.
174
+ ...(accent != null ? {
175
+ '--color-accent': ld(P[40], P[80]),
176
+ // Derived accent tokens reference --color-accent instead of baking its
177
+ // resolved hex, so a scoped override of the base token re-accents the
178
+ // whole subtree at runtime. --color-on-accent stays baked: it is a
179
+ // contrast computation against the accent, which CSS cannot express.
180
+ '--color-accent-muted': ld(accentWithAlpha(0.2), accentWithAlpha(0.25)),
181
+ '--color-on-accent': ld(P[100], P[20])
182
+ } : null),
105
183
  '--color-neutral': ld(hexWithAlpha(N[10], 0.1), hexWithAlpha(N[90], 0.2)),
106
184
  '--color-background-surface': ld(N[99], N[10]),
107
185
  '--color-background-body': ld(N[95], N[5]),
@@ -124,8 +202,9 @@ export function expandColorScale(config) {
124
202
  '--color-background-popover': ld(N[99], N[20]),
125
203
  '--color-background-inverted': ld(N[10], N[99]),
126
204
  // Border
205
+ // Decorative hairline (~1.1:1 by design) — not a WCAG 1.4.11 boundary.
127
206
  '--color-border': ld(hexWithAlpha(N[10], 0.1), hexWithAlpha(N[95], 0.1)),
128
- '--color-border-emphasized': ld(NV[70], NV[30]),
207
+ '--color-border-emphasized': borderEmphasized,
129
208
  // Effects
130
209
  '--color-skeleton': ld(NV[70], NV[30]),
131
210
  // Channel-on-body surface (ProgressBar/Slider tracks, Switch off-state).
@@ -80,10 +80,4 @@ export declare function generateOnMediaCSS(theme: DefinedTheme): string;
80
80
  * overrides sit above StyleX so themes can restyle components intentionally.
81
81
  */
82
82
  export declare function generateThemeCSS(theme: DefinedTheme): ThemeCSSOutput;
83
- /**
84
- * Generate the full CSS string for a theme as a single string.
85
- * @deprecated Use generateThemeCSS() which returns { prose, component } for proper layering.
86
- * This flat version is kept for backwards compatibility with tests and simple cases.
87
- */
88
- export declare function generateThemeCSSFlat(theme: DefinedTheme): string;
89
83
  //# sourceMappingURL=generateThemeRules.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"generateThemeRules.d.ts","sourceRoot":"","sources":["../../src/theme/generateThemeRules.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AA+DhD;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC9B,+EAA+E;IAC/E,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,kFAAkF;IAClF,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B;;;;OAIG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,SAAS,EAAE,MAAM,CAAC;CACnB;AAgKD;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,YAAY,GAAG,MAAM,EAAE,CAoChE;AAwPD;;;;;;;;;GASG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,YAAY,GAAG,eAAe,CAe5E;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,YAAY,GAAG,MAAM,CA4E9D;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,YAAY,GAAG,cAAc,CA2BpE;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,YAAY,GAAG,MAAM,CAQhE"}
1
+ {"version":3,"file":"generateThemeRules.d.ts","sourceRoot":"","sources":["../../src/theme/generateThemeRules.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AA+DhD;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC9B,+EAA+E;IAC/E,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,kFAAkF;IAClF,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B;;;;OAIG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,SAAS,EAAE,MAAM,CAAC;CACnB;AAgKD;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,YAAY,GAAG,MAAM,EAAE,CAoChE;AAwPD;;;;;;;;;GASG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,YAAY,GAAG,eAAe,CAe5E;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,YAAY,GAAG,MAAM,CA4E9D;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,YAAY,GAAG,cAAc,CA2BpE"}
@@ -590,19 +590,4 @@ export function generateThemeCSS(theme) {
590
590
  prose: proseCss,
591
591
  component: componentCss
592
592
  };
593
- }
594
-
595
- /**
596
- * Generate the full CSS string for a theme as a single string.
597
- * @deprecated Use generateThemeCSS() which returns { prose, component } for proper layering.
598
- * This flat version is kept for backwards compatibility with tests and simple cases.
599
- */
600
- export function generateThemeCSSFlat(theme) {
601
- const rules = generateThemeRules(theme);
602
- if (rules.length === 0) {
603
- return '';
604
- }
605
- const scopeSelector = themeScopeStart(theme.name);
606
- const inner = rules.join('\n\n');
607
- return `@scope (${scopeSelector}) to (${THEME_SCOPE_TO}) {\n${inner}\n}`;
608
593
  }
@@ -13,7 +13,8 @@
13
13
  export { Theme } from './Theme';
14
14
  export { MediaTheme } from './MediaTheme';
15
15
  export type { MediaThemeProps } from './MediaTheme';
16
- export { defineTheme, generateThemeCSS, generateThemeCSSFlat, generateOnMediaCSS, generateThemeRules, generateThemeRulesSplit, type ThemeCSSOutput, type ThemeRulesSplit, isDefinedTheme, tokenDefaults, } from './defineTheme';
16
+ export { defineTheme, generateThemeCSS, generateOnMediaCSS, generateThemeRules, generateThemeRulesSplit, type ThemeCSSOutput, type ThemeRulesSplit, isDefinedTheme, tokenDefaults, } from './defineTheme';
17
+ export { registerTheme, getRegisteredTheme, getRegisteredThemes, resetThemes, } from './themeRegistry';
17
18
  export type { DefineThemeInput, DefinedTheme, CoreTokenName, TokenName, TokenValue, ComponentStyleMap, StyleOverrides, } from './defineTheme';
18
19
  export type { SyntaxTokenName, DomainTokenName, DataTokenName, } from './domainTokens';
19
20
  export { syntaxTokenDefaults, domainTokenDefaults, dataTokenDefaults, } from './domainTokens';
@@ -24,16 +25,17 @@ export type { UseSyntaxThemeReturn } from './syntax';
24
25
  export { expandTypeScale, generateTypeScaleComponents } from './expandTypeScale';
25
26
  export type { TypeScaleConfig, TypeScaleTokens } from './expandTypeScale';
26
27
  export { expandRadiusScale } from './expandRadiusScale';
27
- export type { RadiusScaleConfig, RadiusScaleTokens, } from './expandRadiusScale';
28
+ export type { RadiusScaleConfig, RadiusScaleTokens } from './expandRadiusScale';
28
29
  export { expandColorScale } from './expandColorScale';
29
30
  export type { ColorScaleConfig, ColorScaleTokens } from './expandColorScale';
30
31
  export { expandMotionScale } from './expandMotionScale';
31
- export type { MotionScaleConfig, MotionScaleTokens, } from './expandMotionScale';
32
- export { colorDefaults, spacingDefaults, sizeDefaults, borderDefaults, radiusDefaults, shadowDefaults, durationDefaults, easeDefaults, transitionDefaults, typographyDefaults, textSizeDefaults, fontWeightDefaults, typeScaleDefaults, colorVars, spacingVars, sizeVars, borderVars, radiusVars, shadowVars, durationVars, easeVars, transitionVars, typographyVars, textSizeVars, fontWeightVars, typeScaleVars, } from './tokens.stylex';
33
- export type { ColorVarName, SpacingVarName, SizeVarName, BorderVarName, RadiusVarName, ShadowVarName, DurationVarName, EaseVarName, TransitionVarName, TypographyVarName, TextSizeVarName, FontWeightVarName, TypeScaleVarName, } from './tokens.stylex';
34
- export { useTheme, ThemeContext } from './useTheme';
32
+ export type { MotionScaleConfig, MotionScaleTokens } from './expandMotionScale';
33
+ export { colorDefaults, spacingDefaults, sizeDefaults, borderDefaults, radiusDefaults, shadowDefaults, durationDefaults, easeDefaults, typographyDefaults, textSizeDefaults, fontWeightDefaults, typeScaleDefaults, colorVars, spacingVars, sizeVars, borderVars, radiusVars, shadowVars, durationVars, easeVars, typographyVars, textSizeVars, fontWeightVars, typeScaleVars, } from './tokens.stylex';
34
+ export type { ColorVarName, SpacingVarName, SizeVarName, BorderVarName, RadiusVarName, ShadowVarName, DurationVarName, EaseVarName, TypographyVarName, TextSizeVarName, FontWeightVarName, TypeScaleVarName, } from './tokens.stylex';
35
+ export { useTheme, useThemeName, ThemeContext } from './useTheme';
35
36
  export type { UseThemeReturn, ThemeContextValue } from './useTheme';
36
37
  export { resolveThemeToken, resolveThemeTokens, tokenVar, tokenVars, } from './tokens';
37
38
  export type { ResolveThemeTokenOptions, ResolveThemeTokensOptions, ResolvedThemeMode, } from './tokens';
38
- export type { ThemeMode, HeadingTag, TextType, BuiltinTextType, CustomTextTypes, TextSize, TextWeight, TextColor, TypographyConfig, TypographyRole, FontWeight, } from './types';
39
+ export type { TextColorMap } from '../Text';
40
+ export type { ThemeMode, HeadingTag, TextType, BuiltinTextType, CustomTextTypes, TextSize, TextWeight, TextColor, BuiltinTextColor, TypographyConfig, TypographyRole, FontWeight, } from './types';
39
41
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/theme/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/theme/index.ts"],"names":[],"mappings":"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"}
@@ -16,7 +16,8 @@
16
16
  */
17
17
  export { Theme } from "./Theme.js";
18
18
  export { MediaTheme } from "./MediaTheme.js";
19
- export { defineTheme, generateThemeCSS, generateThemeCSSFlat, generateOnMediaCSS, generateThemeRules, generateThemeRulesSplit, isDefinedTheme, tokenDefaults } from "./defineTheme.js";
19
+ export { defineTheme, generateThemeCSS, generateOnMediaCSS, generateThemeRules, generateThemeRulesSplit, isDefinedTheme, tokenDefaults } from "./defineTheme.js";
20
+ export { registerTheme, getRegisteredTheme, getRegisteredThemes, resetThemes } from "./themeRegistry.js";
20
21
  export { syntaxTokenDefaults, domainTokenDefaults, dataTokenDefaults } from "./domainTokens/index.js";
21
22
 
22
23
  // Syntax theme API
@@ -28,9 +29,9 @@ export { expandRadiusScale } from "./expandRadiusScale.js";
28
29
  export { expandColorScale } from "./expandColorScale.js";
29
30
  export { expandMotionScale } from "./expandMotionScale.js";
30
31
  // Export token defaults and vars for use in custom components and themes
31
- export { colorDefaults, spacingDefaults, sizeDefaults, borderDefaults, radiusDefaults, shadowDefaults, durationDefaults, easeDefaults, transitionDefaults, typographyDefaults, textSizeDefaults, fontWeightDefaults, typeScaleDefaults, colorVars, spacingVars, sizeVars, borderVars, radiusVars, shadowVars, durationVars, easeVars, transitionVars, typographyVars, textSizeVars, fontWeightVars, typeScaleVars } from "./tokens.stylex.js";
32
+ export { colorDefaults, spacingDefaults, sizeDefaults, borderDefaults, radiusDefaults, shadowDefaults, durationDefaults, easeDefaults, typographyDefaults, textSizeDefaults, fontWeightDefaults, typeScaleDefaults, colorVars, spacingVars, sizeVars, borderVars, radiusVars, shadowVars, durationVars, easeVars, typographyVars, textSizeVars, fontWeightVars, typeScaleVars } from "./tokens.stylex.js";
32
33
 
33
34
  // Export token key types for theme authoring
34
35
 
35
- export { useTheme, ThemeContext } from "./useTheme.js";
36
+ export { useTheme, useThemeName, ThemeContext } from "./useTheme.js";
36
37
  export { resolveThemeToken, resolveThemeTokens, tokenVar, tokenVars } from "./tokens.js";
@@ -0,0 +1,32 @@
1
+ /**
2
+ * @file themeRegistry.ts
3
+ * @input DefinedTheme objects from defineTheme() or built theme packages
4
+ * @output Exports registerTheme, getRegisteredTheme, getRegisteredThemes, resetThemes
5
+ * @position Server-safe theme registry for theme-name-based SSR resolution
6
+ *
7
+ * This module has NO 'use client' directive. It is importable from SSR/RSC and
8
+ * lets code resolve theme data by stable theme name without React context.
9
+ */
10
+ import type { DefinedTheme } from './defineTheme';
11
+ /**
12
+ * Register a defined theme under its `name`.
13
+ *
14
+ * Registration is idempotent and replaces any previous theme with the same
15
+ * name. Call from app initialization, theme packages, or <Theme> to make the
16
+ * theme available to SSR-safe resolvers by name.
17
+ */
18
+ export declare function registerTheme(theme: DefinedTheme): void;
19
+ /**
20
+ * Return a previously registered theme by name.
21
+ */
22
+ export declare function getRegisteredTheme(name: string | null | undefined): DefinedTheme | null;
23
+ /**
24
+ * Return all registered themes keyed by theme name.
25
+ */
26
+ export declare function getRegisteredThemes(): ReadonlyMap<string, DefinedTheme>;
27
+ /**
28
+ * Reset the theme registry. For testing only.
29
+ * @internal
30
+ */
31
+ export declare function resetThemes(): void;
32
+ //# sourceMappingURL=themeRegistry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"themeRegistry.d.ts","sourceRoot":"","sources":["../../src/theme/themeRegistry.ts"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AAIhD;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI,CAEvD;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAC9B,YAAY,GAAG,IAAI,CAKrB;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,WAAW,CAAC,MAAM,EAAE,YAAY,CAAC,CAEvE;AAED;;;GAGG;AACH,wBAAgB,WAAW,IAAI,IAAI,CAElC"}