@astryxdesign/core 0.2.0-canary.8d64648 → 0.2.0-canary.8dfd7cf

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 (872) hide show
  1. package/dist/AlertDialog/AlertDialog.d.ts +1 -1
  2. package/dist/AlertDialog/AlertDialog.js +1 -1
  3. package/dist/AppShell/AppShell.d.ts +2 -20
  4. package/dist/AppShell/AppShell.d.ts.map +1 -1
  5. package/dist/AppShell/AppShell.js +1 -14
  6. package/dist/AppShell/index.d.ts +20 -1
  7. package/dist/AppShell/index.d.ts.map +1 -1
  8. package/dist/AppShell/index.js +14 -0
  9. package/dist/AspectRatio/AspectRatio.d.ts +1 -1
  10. package/dist/AspectRatio/AspectRatio.js +1 -1
  11. package/dist/Avatar/Avatar.d.ts +1 -1
  12. package/dist/Avatar/Avatar.d.ts.map +1 -1
  13. package/dist/Avatar/Avatar.js +4 -4
  14. package/dist/Avatar/AvatarStatusDot.d.ts +2 -26
  15. package/dist/Avatar/AvatarStatusDot.d.ts.map +1 -1
  16. package/dist/Avatar/AvatarStatusDot.js +1 -22
  17. package/dist/Avatar/index.d.ts +26 -1
  18. package/dist/Avatar/index.d.ts.map +1 -1
  19. package/dist/Avatar/index.js +21 -0
  20. package/dist/AvatarGroup/AvatarGroup.d.ts +1 -1
  21. package/dist/AvatarGroup/AvatarGroup.js +1 -1
  22. package/dist/AvatarGroup/AvatarGroupOverflow.d.ts +1 -1
  23. package/dist/AvatarGroup/AvatarGroupOverflow.js +1 -1
  24. package/dist/Badge/Badge.d.ts +2 -30
  25. package/dist/Badge/Badge.d.ts.map +1 -1
  26. package/dist/Badge/Badge.js +2 -17
  27. package/dist/Badge/index.d.ts +31 -2
  28. package/dist/Badge/index.d.ts.map +1 -1
  29. package/dist/Badge/index.js +15 -1
  30. package/dist/Banner/Banner.d.ts +2 -37
  31. package/dist/Banner/Banner.d.ts.map +1 -1
  32. package/dist/Banner/Banner.js +6 -34
  33. package/dist/Banner/index.d.ts +37 -1
  34. package/dist/Banner/index.d.ts.map +1 -1
  35. package/dist/Banner/index.js +27 -0
  36. package/dist/Blockquote/Blockquote.d.ts +1 -1
  37. package/dist/Blockquote/Blockquote.js +1 -1
  38. package/dist/Breadcrumbs/BreadcrumbItem.d.ts +1 -1
  39. package/dist/Breadcrumbs/BreadcrumbItem.js +4 -3
  40. package/dist/Breadcrumbs/Breadcrumbs.d.ts +2 -18
  41. package/dist/Breadcrumbs/Breadcrumbs.d.ts.map +1 -1
  42. package/dist/Breadcrumbs/Breadcrumbs.js +1 -15
  43. package/dist/Breadcrumbs/index.d.ts +18 -1
  44. package/dist/Breadcrumbs/index.d.ts.map +1 -1
  45. package/dist/Breadcrumbs/index.js +14 -0
  46. package/dist/Button/Button.d.ts +2 -20
  47. package/dist/Button/Button.d.ts.map +1 -1
  48. package/dist/Button/Button.js +2 -17
  49. package/dist/Button/index.d.ts +21 -3
  50. package/dist/Button/index.d.ts.map +1 -1
  51. package/dist/Button/index.js +15 -1
  52. package/dist/ButtonGroup/ButtonGroup.d.ts +1 -1
  53. package/dist/ButtonGroup/ButtonGroup.js +1 -1
  54. package/dist/Calendar/Calendar.js +1 -1
  55. package/dist/Calendar/styles.d.ts +2 -2
  56. package/dist/Calendar/styles.js +2 -2
  57. package/dist/Card/Card.d.ts +1 -1
  58. package/dist/Card/Card.js +1 -1
  59. package/dist/Carousel/Carousel.d.ts +1 -1
  60. package/dist/Carousel/Carousel.js +1 -1
  61. package/dist/Center/Center.d.ts +21 -4
  62. package/dist/Center/Center.d.ts.map +1 -1
  63. package/dist/Center/Center.js +11 -3
  64. package/dist/Chat/ChatComposer.d.ts +1 -1
  65. package/dist/Chat/ChatComposer.js +9 -9
  66. package/dist/Chat/ChatComposerDrawer.d.ts +1 -1
  67. package/dist/Chat/ChatComposerDrawer.js +3 -3
  68. package/dist/Chat/ChatComposerInput.d.ts +1 -1
  69. package/dist/Chat/ChatComposerInput.js +1 -1
  70. package/dist/Chat/ChatDictationButton.d.ts +1 -1
  71. package/dist/Chat/ChatDictationButton.js +1 -1
  72. package/dist/Chat/ChatLayout.d.ts +1 -1
  73. package/dist/Chat/ChatLayout.js +1 -1
  74. package/dist/Chat/ChatLayoutScrollButton.d.ts +1 -1
  75. package/dist/Chat/ChatLayoutScrollButton.js +1 -1
  76. package/dist/Chat/ChatMessage.d.ts +1 -1
  77. package/dist/Chat/ChatMessage.js +1 -1
  78. package/dist/Chat/ChatMessageBubble.d.ts +1 -1
  79. package/dist/Chat/ChatMessageBubble.js +1 -1
  80. package/dist/Chat/ChatMessageList.d.ts +1 -1
  81. package/dist/Chat/ChatMessageList.js +1 -1
  82. package/dist/Chat/ChatSendButton.d.ts.map +1 -1
  83. package/dist/Chat/ChatSendButton.js +4 -2
  84. package/dist/Chat/ChatSystemMessage.d.ts +1 -1
  85. package/dist/Chat/ChatSystemMessage.js +1 -1
  86. package/dist/Chat/ChatTokenizedText.d.ts +1 -1
  87. package/dist/Chat/ChatTokenizedText.js +1 -1
  88. package/dist/CheckboxInput/CheckboxInput.d.ts +1 -1
  89. package/dist/CheckboxInput/CheckboxInput.js +1 -1
  90. package/dist/CheckboxList/CheckboxList.d.ts +1 -1
  91. package/dist/CheckboxList/CheckboxList.js +1 -1
  92. package/dist/CheckboxList/CheckboxListItem.d.ts +1 -1
  93. package/dist/CheckboxList/CheckboxListItem.js +1 -1
  94. package/dist/Citation/Citation.d.ts +1 -1
  95. package/dist/Citation/Citation.js +1 -1
  96. package/dist/ClickableCard/ClickableCard.d.ts +3 -3
  97. package/dist/ClickableCard/ClickableCard.js +3 -3
  98. package/dist/Code/Code.d.ts +2 -2
  99. package/dist/Code/Code.js +2 -2
  100. package/dist/Collapsible/Collapsible.d.ts +1 -1
  101. package/dist/Collapsible/Collapsible.js +3 -3
  102. package/dist/Collapsible/CollapsibleGroup.d.ts +1 -1
  103. package/dist/Collapsible/CollapsibleGroup.js +1 -1
  104. package/dist/Collapsible/CollapsibleGroupContext.js +1 -1
  105. package/dist/CommandPalette/CommandPalette.d.ts +1 -1
  106. package/dist/CommandPalette/CommandPalette.js +1 -1
  107. package/dist/CommandPalette/CommandPaletteEmpty.js +1 -1
  108. package/dist/CommandPalette/CommandPaletteFooter.js +1 -1
  109. package/dist/CommandPalette/CommandPaletteGroup.js +1 -1
  110. package/dist/CommandPalette/CommandPaletteInput.d.ts +2 -2
  111. package/dist/CommandPalette/CommandPaletteInput.d.ts.map +1 -1
  112. package/dist/CommandPalette/CommandPaletteInput.js +4 -2
  113. package/dist/CommandPalette/CommandPaletteItem.d.ts +1 -1
  114. package/dist/CommandPalette/CommandPaletteItem.js +1 -1
  115. package/dist/CommandPalette/CommandPaletteList.js +1 -1
  116. package/dist/ContextMenu/ContextMenu.d.ts +2 -2
  117. package/dist/ContextMenu/ContextMenu.d.ts.map +1 -1
  118. package/dist/ContextMenu/ContextMenu.js +14 -5
  119. package/dist/DateInput/DateInput.js +1 -1
  120. package/dist/DateRangeInput/DateRangeInput.js +1 -1
  121. package/dist/DateTimeInput/DateTimeInput.js +1 -1
  122. package/dist/Dialog/Dialog.d.ts +46 -23
  123. package/dist/Dialog/Dialog.d.ts.map +1 -1
  124. package/dist/Dialog/Dialog.js +59 -31
  125. package/dist/Dialog/DialogHeader.d.ts +1 -1
  126. package/dist/Dialog/DialogHeader.js +1 -1
  127. package/dist/Dialog/index.d.ts +18 -1
  128. package/dist/Dialog/index.d.ts.map +1 -1
  129. package/dist/Dialog/index.js +14 -0
  130. package/dist/Divider/Divider.d.ts +2 -18
  131. package/dist/Divider/Divider.d.ts.map +1 -1
  132. package/dist/Divider/Divider.js +1 -15
  133. package/dist/Divider/index.d.ts +18 -1
  134. package/dist/Divider/index.d.ts.map +1 -1
  135. package/dist/Divider/index.js +14 -0
  136. package/dist/DropdownMenu/DropdownMenu.d.ts +9 -3
  137. package/dist/DropdownMenu/DropdownMenu.d.ts.map +1 -1
  138. package/dist/DropdownMenu/DropdownMenu.js +23 -19
  139. package/dist/DropdownMenu/DropdownMenuCheckboxItem.d.ts +18 -12
  140. package/dist/DropdownMenu/DropdownMenuCheckboxItem.d.ts.map +1 -1
  141. package/dist/DropdownMenu/DropdownMenuCheckboxItem.js +38 -63
  142. package/dist/DropdownMenu/DropdownMenuItem.d.ts +1 -1
  143. package/dist/DropdownMenu/DropdownMenuItem.js +1 -1
  144. package/dist/DropdownMenu/DropdownMenuRadioItem.d.ts.map +1 -1
  145. package/dist/DropdownMenu/DropdownMenuRadioItem.js +5 -1
  146. package/dist/DropdownMenu/DropdownMenuSubMenu.d.ts +1 -1
  147. package/dist/DropdownMenu/DropdownMenuSubMenu.d.ts.map +1 -1
  148. package/dist/DropdownMenu/DropdownMenuSubMenu.js +5 -5
  149. package/dist/DropdownMenu/renderDropdownItems.d.ts.map +1 -1
  150. package/dist/DropdownMenu/renderDropdownItems.js +6 -4
  151. package/dist/EmptyState/EmptyState.d.ts +1 -1
  152. package/dist/EmptyState/EmptyState.js +1 -1
  153. package/dist/Field/Field.d.ts +1 -1
  154. package/dist/Field/Field.js +1 -1
  155. package/dist/Field/FieldLabel.d.ts +2 -2
  156. package/dist/Field/FieldLabel.d.ts.map +1 -1
  157. package/dist/Field/FieldLabel.js +41 -2
  158. package/dist/FieldStatus/FieldStatus.d.ts +1 -18
  159. package/dist/FieldStatus/FieldStatus.d.ts.map +1 -1
  160. package/dist/FieldStatus/FieldStatus.js +1 -15
  161. package/dist/FieldStatus/index.d.ts +19 -1
  162. package/dist/FieldStatus/index.d.ts.map +1 -1
  163. package/dist/FieldStatus/index.js +14 -0
  164. package/dist/FileInput/FileInput.js +1 -1
  165. package/dist/FormLayout/FormLayout.d.ts +1 -1
  166. package/dist/FormLayout/FormLayout.d.ts.map +1 -1
  167. package/dist/FormLayout/FormLayout.js +1 -1
  168. package/dist/Grid/Grid.d.ts +1 -1
  169. package/dist/Grid/Grid.js +1 -1
  170. package/dist/Grid/GridSpan.d.ts +1 -1
  171. package/dist/Grid/GridSpan.js +1 -1
  172. package/dist/HStack/HStack.d.ts +1 -1
  173. package/dist/HStack/HStack.js +1 -1
  174. package/dist/Heading/Heading.d.ts +2 -2
  175. package/dist/Heading/Heading.js +2 -2
  176. package/dist/HoverCard/HoverCard.d.ts +1 -1
  177. package/dist/HoverCard/HoverCard.js +1 -1
  178. package/dist/Icon/Icon.d.ts +1 -1
  179. package/dist/Icon/Icon.d.ts.map +1 -1
  180. package/dist/Icon/Icon.js +4 -2
  181. package/dist/Icon/globalIconRegistry.d.ts +6 -4
  182. package/dist/Icon/globalIconRegistry.d.ts.map +1 -1
  183. package/dist/Icon/globalIconRegistry.js +25 -6
  184. package/dist/Icon/index.d.ts +3 -2
  185. package/dist/Icon/index.d.ts.map +1 -1
  186. package/dist/Icon/index.js +1 -0
  187. package/dist/Icon/useIcon.d.ts +14 -0
  188. package/dist/Icon/useIcon.d.ts.map +1 -0
  189. package/dist/Icon/useIcon.js +21 -0
  190. package/dist/IconButton/IconButton.d.ts +1 -1
  191. package/dist/IconButton/IconButton.js +1 -1
  192. package/dist/InputGroup/InputGroup.d.ts +1 -1
  193. package/dist/InputGroup/InputGroup.js +1 -1
  194. package/dist/InputGroup/InputGroupText.d.ts +1 -1
  195. package/dist/InputGroup/InputGroupText.js +1 -1
  196. package/dist/Item/Item.d.ts +1 -1
  197. package/dist/Item/Item.js +1 -1
  198. package/dist/Kbd/Kbd.d.ts +1 -1
  199. package/dist/Kbd/Kbd.js +1 -1
  200. package/dist/Layout/Layout.d.ts +1 -1
  201. package/dist/Layout/Layout.js +1 -1
  202. package/dist/Layout/LayoutContent.d.ts +1 -1
  203. package/dist/Layout/LayoutContent.js +1 -1
  204. package/dist/Layout/LayoutFooter.d.ts +1 -1
  205. package/dist/Layout/LayoutFooter.js +1 -1
  206. package/dist/Layout/LayoutHeader.d.ts +1 -1
  207. package/dist/Layout/LayoutHeader.js +1 -1
  208. package/dist/Layout/LayoutPanel.d.ts +1 -1
  209. package/dist/Layout/LayoutPanel.js +1 -1
  210. package/dist/Lightbox/Lightbox.d.ts +1 -1
  211. package/dist/Lightbox/Lightbox.js +1 -1
  212. package/dist/Link/Link.d.ts +1 -1
  213. package/dist/Link/Link.js +1 -1
  214. package/dist/Link/LinkProvider.d.ts +2 -2
  215. package/dist/Link/LinkProvider.js +2 -2
  216. package/dist/List/List.d.ts +1 -1
  217. package/dist/List/List.js +1 -1
  218. package/dist/List/ListItem.d.ts +1 -1
  219. package/dist/List/ListItem.js +1 -1
  220. package/dist/Markdown/Markdown.js +4 -4
  221. package/dist/MetadataList/MetadataList.d.ts +1 -1
  222. package/dist/MetadataList/MetadataList.js +1 -1
  223. package/dist/MetadataList/MetadataListItem.d.ts +1 -1
  224. package/dist/MetadataList/MetadataListItem.js +1 -1
  225. package/dist/MobileNav/MobileNav.d.ts +1 -1
  226. package/dist/MobileNav/MobileNav.js +1 -1
  227. package/dist/MoreMenu/MoreMenu.d.ts +1 -1
  228. package/dist/MoreMenu/MoreMenu.js +3 -3
  229. package/dist/MultiSelector/MultiSelector.d.ts +1 -1
  230. package/dist/MultiSelector/MultiSelector.js +1 -1
  231. package/dist/NavIcon/NavIcon.d.ts +1 -1
  232. package/dist/NavIcon/NavIcon.js +1 -1
  233. package/dist/NumberInput/NumberInput.d.ts +1 -1
  234. package/dist/NumberInput/NumberInput.js +1 -1
  235. package/dist/Outline/Outline.js +1 -1
  236. package/dist/OverflowList/OverflowList.d.ts +1 -1
  237. package/dist/OverflowList/OverflowList.js +1 -1
  238. package/dist/Pagination/Pagination.d.ts +1 -20
  239. package/dist/Pagination/Pagination.d.ts.map +1 -1
  240. package/dist/Pagination/Pagination.js +1 -15
  241. package/dist/Pagination/index.d.ts +21 -1
  242. package/dist/Pagination/index.d.ts.map +1 -1
  243. package/dist/Pagination/index.js +14 -0
  244. package/dist/Popover/Popover.d.ts +20 -3
  245. package/dist/Popover/Popover.d.ts.map +1 -1
  246. package/dist/Popover/Popover.js +5 -1
  247. package/dist/Popover/usePopover.d.ts.map +1 -1
  248. package/dist/Popover/usePopover.js +14 -3
  249. package/dist/PowerSearch/PowerSearch.d.ts +1 -1
  250. package/dist/PowerSearch/PowerSearch.js +1 -1
  251. package/dist/ProgressBar/ProgressBar.d.ts +1 -20
  252. package/dist/ProgressBar/ProgressBar.d.ts.map +1 -1
  253. package/dist/ProgressBar/ProgressBar.js +1 -15
  254. package/dist/ProgressBar/index.d.ts +21 -1
  255. package/dist/ProgressBar/index.d.ts.map +1 -1
  256. package/dist/ProgressBar/index.js +14 -0
  257. package/dist/RadioList/RadioList.d.ts +1 -1
  258. package/dist/RadioList/RadioList.js +1 -1
  259. package/dist/RadioList/RadioListItem.d.ts +1 -1
  260. package/dist/RadioList/RadioListItem.js +1 -1
  261. package/dist/Resizable/ResizeHandle.d.ts.map +1 -1
  262. package/dist/Resizable/ResizeHandle.js +3 -10
  263. package/dist/Section/Section.d.ts +2 -19
  264. package/dist/Section/Section.d.ts.map +1 -1
  265. package/dist/Section/Section.js +1 -15
  266. package/dist/Section/index.d.ts +19 -1
  267. package/dist/Section/index.d.ts.map +1 -1
  268. package/dist/Section/index.js +14 -0
  269. package/dist/SegmentedControl/SegmentedControl.d.ts +1 -1
  270. package/dist/SegmentedControl/SegmentedControl.js +1 -1
  271. package/dist/SegmentedControl/SegmentedControlItem.d.ts +1 -1
  272. package/dist/SegmentedControl/SegmentedControlItem.js +1 -1
  273. package/dist/SelectableCard/SelectableCard.d.ts +4 -3
  274. package/dist/SelectableCard/SelectableCard.d.ts.map +1 -1
  275. package/dist/SelectableCard/SelectableCard.js +15 -3
  276. package/dist/Selector/Selector.d.ts +1 -1
  277. package/dist/Selector/Selector.js +1 -1
  278. package/dist/SideNav/SideNav.d.ts +1 -1
  279. package/dist/SideNav/SideNav.js +1 -1
  280. package/dist/SideNav/SideNavCollapseButton.d.ts +1 -1
  281. package/dist/SideNav/SideNavCollapseButton.d.ts.map +1 -1
  282. package/dist/SideNav/SideNavCollapseButton.js +4 -3
  283. package/dist/SideNav/SideNavHeading.d.ts +1 -1
  284. package/dist/SideNav/SideNavHeading.d.ts.map +1 -1
  285. package/dist/SideNav/SideNavHeading.js +8 -7
  286. package/dist/SideNav/SideNavItem.d.ts +2 -2
  287. package/dist/SideNav/SideNavItem.d.ts.map +1 -1
  288. package/dist/SideNav/SideNavItem.js +6 -7
  289. package/dist/SideNav/SideNavSection.d.ts +1 -1
  290. package/dist/SideNav/SideNavSection.js +1 -1
  291. package/dist/Skeleton/Skeleton.d.ts +1 -1
  292. package/dist/Skeleton/Skeleton.js +1 -1
  293. package/dist/Slider/Slider.d.ts.map +1 -1
  294. package/dist/Slider/Slider.js +78 -68
  295. package/dist/Spinner/Spinner.d.ts +1 -1
  296. package/dist/Spinner/Spinner.js +1 -1
  297. package/dist/Stack/Stack.d.ts +1 -1
  298. package/dist/Stack/Stack.js +1 -1
  299. package/dist/Stack/StackItem.d.ts +1 -1
  300. package/dist/Stack/StackItem.js +1 -1
  301. package/dist/StatusDot/StatusDot.d.ts +1 -20
  302. package/dist/StatusDot/StatusDot.d.ts.map +1 -1
  303. package/dist/StatusDot/StatusDot.js +2 -17
  304. package/dist/StatusDot/index.d.ts +21 -1
  305. package/dist/StatusDot/index.d.ts.map +1 -1
  306. package/dist/StatusDot/index.js +14 -0
  307. package/dist/Switch/Switch.d.ts +1 -1
  308. package/dist/Switch/Switch.js +1 -1
  309. package/dist/TabList/Tab.d.ts +1 -1
  310. package/dist/TabList/Tab.js +1 -1
  311. package/dist/TabList/TabList.d.ts +1 -1
  312. package/dist/TabList/TabList.js +1 -1
  313. package/dist/TabList/TabMenu.d.ts +1 -1
  314. package/dist/TabList/TabMenu.js +1 -1
  315. package/dist/Table/BaseTable.d.ts +1 -1
  316. package/dist/Table/BaseTable.js +1 -1
  317. package/dist/Table/Table.d.ts +1 -1
  318. package/dist/Table/Table.js +1 -1
  319. package/dist/Table/TableCell.d.ts +1 -1
  320. package/dist/Table/TableCell.js +1 -1
  321. package/dist/Table/TableHeaderCell.d.ts +1 -1
  322. package/dist/Table/TableHeaderCell.js +1 -1
  323. package/dist/Table/TableRow.d.ts +1 -1
  324. package/dist/Table/TableRow.js +1 -1
  325. package/dist/Table/plugins/rowExpansion/useTableRowExpansion.d.ts +18 -3
  326. package/dist/Table/plugins/rowExpansion/useTableRowExpansion.d.ts.map +1 -1
  327. package/dist/Table/plugins/rowExpansion/useTableRowExpansion.js +21 -3
  328. package/dist/Text/Text.d.ts +1 -1
  329. package/dist/Text/Text.js +1 -1
  330. package/dist/Text/index.d.ts +31 -1
  331. package/dist/Text/index.d.ts.map +1 -1
  332. package/dist/Text/index.js +23 -0
  333. package/dist/TextArea/TextArea.d.ts +1 -1
  334. package/dist/TextArea/TextArea.js +1 -1
  335. package/dist/TextInput/TextInput.d.ts +1 -1
  336. package/dist/TextInput/TextInput.js +1 -1
  337. package/dist/Thumbnail/Thumbnail.js +1 -1
  338. package/dist/TimeInput/TimeInput.js +1 -1
  339. package/dist/Timestamp/Timestamp.js +1 -1
  340. package/dist/ToggleButton/ToggleButton.d.ts +1 -1
  341. package/dist/ToggleButton/ToggleButton.js +1 -1
  342. package/dist/ToggleButton/ToggleButtonGroup.d.ts +1 -1
  343. package/dist/ToggleButton/ToggleButtonGroup.d.ts.map +1 -1
  344. package/dist/ToggleButton/ToggleButtonGroup.js +1 -1
  345. package/dist/Token/Token.d.ts +2 -27
  346. package/dist/Token/Token.d.ts.map +1 -1
  347. package/dist/Token/Token.js +1 -15
  348. package/dist/Token/index.d.ts +27 -1
  349. package/dist/Token/index.d.ts.map +1 -1
  350. package/dist/Token/index.js +14 -0
  351. package/dist/Tokenizer/Tokenizer.d.ts +1 -1
  352. package/dist/Tokenizer/Tokenizer.js +1 -1
  353. package/dist/Toolbar/Toolbar.d.ts +1 -1
  354. package/dist/Toolbar/Toolbar.js +1 -1
  355. package/dist/Tooltip/Tooltip.d.ts +1 -1
  356. package/dist/Tooltip/Tooltip.js +1 -1
  357. package/dist/TopNav/TopNav.d.ts +1 -1
  358. package/dist/TopNav/TopNav.js +1 -1
  359. package/dist/TopNav/TopNavHeading.d.ts +1 -1
  360. package/dist/TopNav/TopNavHeading.d.ts.map +1 -1
  361. package/dist/TopNav/TopNavHeading.js +7 -6
  362. package/dist/TopNav/TopNavItem.d.ts +1 -1
  363. package/dist/TopNav/TopNavItem.js +1 -1
  364. package/dist/TopNav/TopNavMegaMenu.d.ts +1 -1
  365. package/dist/TopNav/TopNavMegaMenu.js +6 -4
  366. package/dist/TopNav/TopNavMegaMenuFeaturedCard.d.ts +1 -1
  367. package/dist/TopNav/TopNavMegaMenuFeaturedCard.js +1 -1
  368. package/dist/TopNav/TopNavMegaMenuItem.d.ts +1 -1
  369. package/dist/TopNav/TopNavMegaMenuItem.js +1 -1
  370. package/dist/TopNav/TopNavMenu.d.ts +1 -1
  371. package/dist/TopNav/TopNavMenu.d.ts.map +1 -1
  372. package/dist/TopNav/TopNavMenu.js +5 -4
  373. package/dist/TreeList/TreeList.d.ts +1 -1
  374. package/dist/TreeList/TreeList.js +1 -1
  375. package/dist/TreeList/TreeListBranches.js +1 -1
  376. package/dist/TreeList/TreeListItem.d.ts +1 -1
  377. package/dist/TreeList/TreeListItem.d.ts.map +1 -1
  378. package/dist/TreeList/TreeListItem.js +4 -3
  379. package/dist/TreeList/TreeListTypes.d.ts +1 -17
  380. package/dist/TreeList/TreeListTypes.d.ts.map +1 -1
  381. package/dist/TreeList/index.d.ts +18 -1
  382. package/dist/TreeList/index.d.ts.map +1 -1
  383. package/dist/TreeList/index.js +14 -0
  384. package/dist/Typeahead/BaseTypeahead.d.ts +1 -1
  385. package/dist/Typeahead/BaseTypeahead.js +1 -1
  386. package/dist/Typeahead/Typeahead.d.ts +1 -1
  387. package/dist/Typeahead/Typeahead.js +1 -1
  388. package/dist/Typeahead/TypeaheadItem.d.ts +1 -1
  389. package/dist/Typeahead/TypeaheadItem.js +1 -1
  390. package/dist/VStack/VStack.d.ts +1 -1
  391. package/dist/VStack/VStack.js +1 -1
  392. package/dist/VisuallyHidden/VisuallyHidden.d.ts +1 -1
  393. package/dist/VisuallyHidden/VisuallyHidden.js +1 -1
  394. package/dist/astryx.css +35 -16
  395. package/dist/astryx.umd.js +49 -49
  396. package/dist/astryx.umd.js.map +4 -4
  397. package/dist/hooks/containerReveal.pool.stylex.d.ts +49 -27
  398. package/dist/hooks/containerReveal.pool.stylex.d.ts.map +1 -1
  399. package/dist/hooks/containerReveal.pool.stylex.js +40 -29
  400. package/dist/hooks/useContainerReveal.d.ts +1 -1
  401. package/dist/hooks/useContainerReveal.d.ts.map +1 -1
  402. package/dist/hooks/useContainerReveal.js +1 -1
  403. package/dist/hooks/useInputContainer.d.ts.map +1 -1
  404. package/dist/hooks/useInputContainer.js +29 -1
  405. package/dist/hooks/useKeyboardHint.d.ts +1 -1
  406. package/dist/hooks/useKeyboardHint.js +1 -1
  407. package/dist/index.d.ts +2 -1
  408. package/dist/index.d.ts.map +1 -1
  409. package/dist/index.js +5 -1
  410. package/dist/theme/Theme.d.ts.map +1 -1
  411. package/dist/theme/Theme.js +2 -7
  412. package/dist/theme/defineTheme.d.ts.map +1 -1
  413. package/dist/theme/defineTheme.js +4 -1
  414. package/dist/theme/index.d.ts +4 -2
  415. package/dist/theme/index.d.ts.map +1 -1
  416. package/dist/theme/index.js +2 -1
  417. package/dist/theme/themeRegistry.d.ts +32 -0
  418. package/dist/theme/themeRegistry.d.ts.map +1 -0
  419. package/dist/theme/themeRegistry.js +49 -0
  420. package/dist/theme/types.d.ts +1 -30
  421. package/dist/theme/types.d.ts.map +1 -1
  422. package/dist/theme/useTheme.d.ts +9 -0
  423. package/dist/theme/useTheme.d.ts.map +1 -1
  424. package/dist/theme/useTheme.js +82 -27
  425. package/dist/utils/rtlStyles.d.ts +21 -0
  426. package/dist/utils/rtlStyles.d.ts.map +1 -1
  427. package/dist/utils/rtlStyles.js +26 -1
  428. package/groups.doc.mjs +2 -2
  429. package/package.json +2 -11
  430. package/src/AlertDialog/AlertDialog.doc.mjs +3 -3
  431. package/src/AlertDialog/AlertDialog.tsx +1 -1
  432. package/src/AlertDialog/useImperativeAlertDialog.doc.mjs +1 -1
  433. package/src/AppShell/AppShell.doc.mjs +3 -3
  434. package/src/AppShell/AppShell.tsx +2 -20
  435. package/src/AppShell/index.ts +20 -1
  436. package/src/AppShell/useAppShellMobile.doc.mjs +2 -2
  437. package/src/AspectRatio/AspectRatio.doc.mjs +3 -3
  438. package/src/AspectRatio/AspectRatio.tsx +1 -1
  439. package/src/Avatar/Avatar.doc.mjs +3 -3
  440. package/src/Avatar/Avatar.tsx +8 -3
  441. package/src/Avatar/AvatarStatusDot.doc.mjs +1 -1
  442. package/src/Avatar/AvatarStatusDot.tsx +2 -27
  443. package/src/Avatar/index.ts +26 -1
  444. package/src/AvatarGroup/AvatarGroup.doc.mjs +3 -3
  445. package/src/AvatarGroup/AvatarGroup.tsx +1 -1
  446. package/src/AvatarGroup/AvatarGroupOverflow.doc.mjs +1 -1
  447. package/src/AvatarGroup/AvatarGroupOverflow.tsx +1 -1
  448. package/src/Badge/Badge.doc.mjs +3 -3
  449. package/src/Badge/Badge.tsx +2 -31
  450. package/src/Badge/index.ts +32 -6
  451. package/src/Banner/Banner.doc.mjs +3 -3
  452. package/src/Banner/Banner.tsx +8 -45
  453. package/src/Banner/index.ts +39 -7
  454. package/src/Blockquote/Blockquote.doc.mjs +3 -3
  455. package/src/Blockquote/Blockquote.tsx +1 -1
  456. package/src/Breadcrumbs/BreadcrumbItem.doc.mjs +1 -1
  457. package/src/Breadcrumbs/BreadcrumbItem.tsx +5 -3
  458. package/src/Breadcrumbs/Breadcrumbs.doc.mjs +3 -3
  459. package/src/Breadcrumbs/Breadcrumbs.tsx +2 -19
  460. package/src/Breadcrumbs/index.ts +19 -5
  461. package/src/Button/Button.doc.mjs +3 -3
  462. package/src/Button/Button.tsx +2 -21
  463. package/src/Button/index.ts +22 -7
  464. package/src/ButtonGroup/ButtonGroup.doc.mjs +3 -3
  465. package/src/ButtonGroup/ButtonGroup.tsx +1 -1
  466. package/src/Calendar/Calendar.doc.mjs +3 -3
  467. package/src/Calendar/Calendar.test.tsx +15 -3
  468. package/src/Calendar/Calendar.tsx +1 -1
  469. package/src/Calendar/styles.ts +2 -2
  470. package/src/Card/Card.doc.mjs +3 -3
  471. package/src/Card/Card.tsx +1 -1
  472. package/src/Carousel/Carousel.doc.mjs +3 -3
  473. package/src/Carousel/Carousel.tsx +1 -1
  474. package/src/Center/Center.doc.mjs +41 -3
  475. package/src/Center/Center.test.tsx +75 -0
  476. package/src/Center/Center.tsx +38 -3
  477. package/src/Chat/Chat.doc.mjs +3 -3
  478. package/src/Chat/ChatComposer.doc.mjs +1 -1
  479. package/src/Chat/ChatComposer.tsx +5 -5
  480. package/src/Chat/ChatComposerDrawer.doc.mjs +1 -1
  481. package/src/Chat/ChatComposerDrawer.tsx +3 -3
  482. package/src/Chat/ChatComposerInput.doc.mjs +1 -1
  483. package/src/Chat/ChatComposerInput.tsx +1 -1
  484. package/src/Chat/ChatComposerTokenElement.doc.mjs +1 -1
  485. package/src/Chat/ChatDictationButton.doc.mjs +3 -3
  486. package/src/Chat/ChatDictationButton.tsx +1 -1
  487. package/src/Chat/ChatLayout.doc.mjs +1 -1
  488. package/src/Chat/ChatLayout.tsx +1 -1
  489. package/src/Chat/ChatLayoutScrollButton.doc.mjs +1 -1
  490. package/src/Chat/ChatLayoutScrollButton.tsx +1 -1
  491. package/src/Chat/ChatMessage.doc.mjs +1 -1
  492. package/src/Chat/ChatMessage.tsx +1 -1
  493. package/src/Chat/ChatMessageBubble.doc.mjs +1 -1
  494. package/src/Chat/ChatMessageBubble.tsx +1 -1
  495. package/src/Chat/ChatMessageList.doc.mjs +1 -1
  496. package/src/Chat/ChatMessageList.tsx +1 -1
  497. package/src/Chat/ChatMessageMetadata.doc.mjs +1 -1
  498. package/src/Chat/ChatSendButton.doc.mjs +1 -1
  499. package/src/Chat/ChatSendButton.tsx +5 -3
  500. package/src/Chat/ChatSystemMessage.doc.mjs +1 -1
  501. package/src/Chat/ChatSystemMessage.tsx +1 -1
  502. package/src/Chat/ChatTokenizedText.doc.mjs +1 -1
  503. package/src/Chat/ChatTokenizedText.tsx +1 -1
  504. package/src/Chat/ChatToolCalls.doc.mjs +3 -3
  505. package/src/CheckboxInput/CheckboxInput.doc.mjs +3 -3
  506. package/src/CheckboxInput/CheckboxInput.test.tsx +33 -0
  507. package/src/CheckboxInput/CheckboxInput.tsx +1 -1
  508. package/src/CheckboxList/CheckboxList.doc.mjs +3 -3
  509. package/src/CheckboxList/CheckboxList.tsx +1 -1
  510. package/src/CheckboxList/CheckboxListItem.doc.mjs +1 -1
  511. package/src/CheckboxList/CheckboxListItem.tsx +1 -1
  512. package/src/Citation/Citation.doc.mjs +2 -2
  513. package/src/Citation/Citation.tsx +1 -1
  514. package/src/ClickableCard/ClickableCard.doc.mjs +2 -2
  515. package/src/ClickableCard/ClickableCard.tsx +3 -3
  516. package/src/Code/Code.tsx +2 -2
  517. package/src/CodeBlock/Code.doc.mjs +1 -1
  518. package/src/CodeBlock/CodeBlock.doc.mjs +3 -3
  519. package/src/Collapsible/Collapsible.doc.mjs +3 -3
  520. package/src/Collapsible/Collapsible.tsx +3 -3
  521. package/src/Collapsible/CollapsibleGroup.doc.mjs +1 -1
  522. package/src/Collapsible/CollapsibleGroup.tsx +1 -1
  523. package/src/Collapsible/CollapsibleGroupContext.tsx +1 -1
  524. package/src/Collapsible/useCollapsible.doc.mjs +2 -2
  525. package/src/CommandPalette/CommandPalette.doc.mjs +4 -4
  526. package/src/CommandPalette/CommandPalette.tsx +1 -1
  527. package/src/CommandPalette/CommandPaletteEmpty.doc.mjs +1 -1
  528. package/src/CommandPalette/CommandPaletteEmpty.tsx +1 -1
  529. package/src/CommandPalette/CommandPaletteFooter.doc.mjs +1 -1
  530. package/src/CommandPalette/CommandPaletteFooter.tsx +1 -1
  531. package/src/CommandPalette/CommandPaletteGroup.doc.mjs +1 -1
  532. package/src/CommandPalette/CommandPaletteGroup.tsx +1 -1
  533. package/src/CommandPalette/CommandPaletteInput.doc.mjs +1 -1
  534. package/src/CommandPalette/CommandPaletteInput.tsx +5 -1
  535. package/src/CommandPalette/CommandPaletteItem.doc.mjs +1 -1
  536. package/src/CommandPalette/CommandPaletteItem.tsx +1 -1
  537. package/src/CommandPalette/CommandPaletteList.doc.mjs +1 -1
  538. package/src/CommandPalette/CommandPaletteList.tsx +1 -1
  539. package/src/ContextMenu/ContextMenu.doc.mjs +3 -3
  540. package/src/ContextMenu/ContextMenu.tsx +17 -5
  541. package/src/ContextMenu/ContextMenuItem.doc.mjs +1 -1
  542. package/src/DateInput/DateInput.doc.mjs +3 -3
  543. package/src/DateInput/DateInput.tsx +1 -1
  544. package/src/DateRangeInput/DateRangeInput.doc.mjs +2 -2
  545. package/src/DateRangeInput/DateRangeInput.tsx +1 -1
  546. package/src/DateTimeInput/DateTimeInput.doc.mjs +3 -3
  547. package/src/DateTimeInput/DateTimeInput.tsx +1 -1
  548. package/src/Dialog/Dialog.doc.mjs +9 -5
  549. package/src/Dialog/Dialog.test.tsx +84 -1
  550. package/src/Dialog/Dialog.tsx +87 -45
  551. package/src/Dialog/DialogHeader.doc.mjs +1 -1
  552. package/src/Dialog/DialogHeader.tsx +1 -1
  553. package/src/Dialog/index.ts +18 -1
  554. package/src/Dialog/useImperativeDialog.doc.mjs +1 -1
  555. package/src/Divider/Divider.doc.mjs +3 -3
  556. package/src/Divider/Divider.tsx +2 -19
  557. package/src/Divider/index.ts +19 -5
  558. package/src/DropdownMenu/DropdownMenu.doc.mjs +20 -5
  559. package/src/DropdownMenu/DropdownMenu.test.tsx +122 -0
  560. package/src/DropdownMenu/DropdownMenu.tsx +31 -20
  561. package/src/DropdownMenu/DropdownMenuCheckboxItem.doc.mjs +1 -1
  562. package/src/DropdownMenu/DropdownMenuCheckboxItem.tsx +41 -64
  563. package/src/DropdownMenu/DropdownMenuItem.doc.mjs +1 -1
  564. package/src/DropdownMenu/DropdownMenuItem.tsx +1 -1
  565. package/src/DropdownMenu/DropdownMenuRadioGroup.doc.mjs +1 -1
  566. package/src/DropdownMenu/DropdownMenuRadioItem.doc.mjs +1 -1
  567. package/src/DropdownMenu/DropdownMenuRadioItem.tsx +10 -1
  568. package/src/DropdownMenu/DropdownMenuSelectable.test.tsx +64 -0
  569. package/src/DropdownMenu/DropdownMenuSubMenu.doc.mjs +1 -1
  570. package/src/DropdownMenu/DropdownMenuSubMenu.test.tsx +17 -0
  571. package/src/DropdownMenu/DropdownMenuSubMenu.tsx +11 -3
  572. package/src/DropdownMenu/renderDropdownItems.tsx +14 -2
  573. package/src/EmptyState/EmptyState.doc.mjs +3 -3
  574. package/src/EmptyState/EmptyState.tsx +1 -1
  575. package/src/Field/Field.doc.mjs +3 -3
  576. package/src/Field/Field.tsx +1 -1
  577. package/src/Field/FieldLabel.doc.mjs +1 -1
  578. package/src/Field/FieldLabel.test.tsx +78 -0
  579. package/src/Field/FieldLabel.tsx +50 -3
  580. package/src/FieldStatus/FieldStatus.doc.mjs +2 -2
  581. package/src/FieldStatus/FieldStatus.tsx +2 -20
  582. package/src/FieldStatus/index.ts +20 -5
  583. package/src/FileInput/FileInput.doc.mjs +3 -3
  584. package/src/FileInput/FileInput.tsx +1 -1
  585. package/src/FormLayout/FormLayout.doc.mjs +3 -3
  586. package/src/FormLayout/FormLayout.tsx +2 -5
  587. package/src/Grid/Grid.doc.mjs +3 -3
  588. package/src/Grid/Grid.tsx +1 -1
  589. package/src/Grid/GridSpan.doc.mjs +1 -1
  590. package/src/Grid/GridSpan.tsx +1 -1
  591. package/src/HStack/HStack.tsx +1 -1
  592. package/src/Heading/Heading.tsx +2 -2
  593. package/src/HoverCard/HoverCard.doc.mjs +3 -3
  594. package/src/HoverCard/HoverCard.tsx +1 -1
  595. package/src/HoverCard/useHoverCard.doc.mjs +2 -2
  596. package/src/Icon/Icon.doc.mjs +3 -3
  597. package/src/Icon/Icon.test.tsx +23 -0
  598. package/src/Icon/Icon.tsx +4 -2
  599. package/src/Icon/globalIconRegistry.test.tsx +52 -1
  600. package/src/Icon/globalIconRegistry.tsx +43 -6
  601. package/src/Icon/index.ts +7 -7
  602. package/src/Icon/useIcon.ts +23 -0
  603. package/src/IconButton/IconButton.doc.mjs +2 -2
  604. package/src/IconButton/IconButton.tsx +1 -1
  605. package/src/InputGroup/InputGroup.doc.mjs +2 -2
  606. package/src/InputGroup/InputGroup.tsx +1 -1
  607. package/src/InputGroup/InputGroupText.doc.mjs +1 -1
  608. package/src/InputGroup/InputGroupText.tsx +1 -1
  609. package/src/Item/Item.doc.mjs +3 -3
  610. package/src/Item/Item.tsx +1 -1
  611. package/src/Kbd/Kbd.doc.mjs +3 -3
  612. package/src/Kbd/Kbd.tsx +1 -1
  613. package/src/Layer/Layer.doc.mjs +2 -2
  614. package/src/Layer/useLayer.doc.mjs +2 -2
  615. package/src/Layout/Layout.doc.mjs +3 -3
  616. package/src/Layout/Layout.tsx +1 -1
  617. package/src/Layout/LayoutContent.doc.mjs +1 -1
  618. package/src/Layout/LayoutContent.tsx +1 -1
  619. package/src/Layout/LayoutFooter.doc.mjs +1 -1
  620. package/src/Layout/LayoutFooter.tsx +1 -1
  621. package/src/Layout/LayoutHeader.doc.mjs +1 -1
  622. package/src/Layout/LayoutHeader.tsx +1 -1
  623. package/src/Layout/LayoutPanel.doc.mjs +1 -1
  624. package/src/Layout/LayoutPanel.tsx +1 -1
  625. package/src/Lightbox/Lightbox.doc.mjs +3 -3
  626. package/src/Lightbox/Lightbox.tsx +1 -1
  627. package/src/Link/Link.doc.mjs +3 -3
  628. package/src/Link/Link.tsx +1 -1
  629. package/src/Link/LinkProvider.doc.mjs +2 -2
  630. package/src/Link/LinkProvider.tsx +2 -2
  631. package/src/List/List.doc.mjs +3 -3
  632. package/src/List/List.tsx +1 -1
  633. package/src/List/ListItem.doc.mjs +2 -2
  634. package/src/List/ListItem.tsx +1 -1
  635. package/src/Markdown/Markdown.doc.mjs +1 -1
  636. package/src/Markdown/Markdown.tsx +3 -3
  637. package/src/MetadataList/MetadataList.doc.mjs +3 -3
  638. package/src/MetadataList/MetadataList.tsx +1 -1
  639. package/src/MetadataList/MetadataListItem.doc.mjs +1 -1
  640. package/src/MetadataList/MetadataListItem.tsx +1 -1
  641. package/src/MobileNav/MobileNav.doc.mjs +3 -3
  642. package/src/MobileNav/MobileNav.tsx +1 -1
  643. package/src/MoreMenu/MoreMenu.doc.mjs +3 -3
  644. package/src/MoreMenu/MoreMenu.tsx +3 -3
  645. package/src/MultiSelector/MultiSelector.doc.mjs +3 -3
  646. package/src/MultiSelector/MultiSelector.tsx +1 -1
  647. package/src/NavIcon/NavIcon.doc.mjs +3 -3
  648. package/src/NavIcon/NavIcon.tsx +1 -1
  649. package/src/NavMenu/NavMenu.doc.mjs +2 -2
  650. package/src/NumberInput/NumberInput.doc.mjs +3 -3
  651. package/src/NumberInput/NumberInput.tsx +1 -1
  652. package/src/Outline/Outline.doc.mjs +3 -3
  653. package/src/Outline/Outline.tsx +1 -1
  654. package/src/OverflowList/OverflowList.doc.mjs +3 -3
  655. package/src/OverflowList/OverflowList.tsx +1 -1
  656. package/src/Overlay/Overlay.doc.mjs +2 -2
  657. package/src/Pagination/Pagination.doc.mjs +3 -3
  658. package/src/Pagination/Pagination.tsx +2 -22
  659. package/src/Pagination/index.ts +21 -1
  660. package/src/Popover/Popover.doc.mjs +31 -3
  661. package/src/Popover/Popover.test.tsx +41 -0
  662. package/src/Popover/Popover.tsx +25 -2
  663. package/src/Popover/usePopover.doc.mjs +2 -2
  664. package/src/Popover/usePopover.tsx +10 -4
  665. package/src/PowerSearch/PowerSearch.doc.mjs +3 -3
  666. package/src/PowerSearch/PowerSearch.tsx +1 -1
  667. package/src/ProgressBar/ProgressBar.doc.mjs +3 -3
  668. package/src/ProgressBar/ProgressBar.tsx +2 -22
  669. package/src/ProgressBar/index.ts +22 -5
  670. package/src/RadioList/RadioList.doc.mjs +3 -3
  671. package/src/RadioList/RadioList.tsx +1 -1
  672. package/src/RadioList/RadioListItem.doc.mjs +1 -1
  673. package/src/RadioList/RadioListItem.tsx +1 -1
  674. package/src/Resizable/Resizable.doc.mjs +2 -2
  675. package/src/Resizable/ResizeHandle.test.tsx +3 -2
  676. package/src/Resizable/ResizeHandle.tsx +8 -12
  677. package/src/Resizable/useResizable.doc.mjs +2 -2
  678. package/src/Section/Section.doc.mjs +3 -3
  679. package/src/Section/Section.tsx +2 -20
  680. package/src/Section/index.ts +20 -5
  681. package/src/SegmentedControl/SegmentedControl.doc.mjs +3 -3
  682. package/src/SegmentedControl/SegmentedControl.tsx +1 -1
  683. package/src/SegmentedControl/SegmentedControlItem.doc.mjs +1 -1
  684. package/src/SegmentedControl/SegmentedControlItem.tsx +1 -1
  685. package/src/SelectableCard/SelectableCard.doc.mjs +4 -2
  686. package/src/SelectableCard/SelectableCard.test.tsx +55 -0
  687. package/src/SelectableCard/SelectableCard.tsx +19 -3
  688. package/src/Selector/Selector.doc.mjs +3 -3
  689. package/src/Selector/Selector.tsx +1 -1
  690. package/src/Selector/SelectorOption.doc.mjs +1 -1
  691. package/src/SideNav/SideNav.doc.mjs +3 -3
  692. package/src/SideNav/SideNav.tsx +1 -1
  693. package/src/SideNav/SideNavCollapseButton.doc.mjs +1 -1
  694. package/src/SideNav/SideNavCollapseButton.tsx +4 -3
  695. package/src/SideNav/SideNavHeading.doc.mjs +1 -1
  696. package/src/SideNav/SideNavHeading.tsx +8 -9
  697. package/src/SideNav/SideNavItem.doc.mjs +1 -1
  698. package/src/SideNav/SideNavItem.tsx +5 -6
  699. package/src/SideNav/SideNavSection.doc.mjs +1 -1
  700. package/src/SideNav/SideNavSection.tsx +1 -1
  701. package/src/Skeleton/Skeleton.doc.mjs +3 -3
  702. package/src/Skeleton/Skeleton.tsx +1 -1
  703. package/src/Slider/Slider.doc.mjs +3 -3
  704. package/src/Slider/Slider.tsx +9 -13
  705. package/src/Spinner/Spinner.doc.mjs +3 -3
  706. package/src/Spinner/Spinner.tsx +1 -1
  707. package/src/Stack/Stack.doc.mjs +3 -3
  708. package/src/Stack/Stack.tsx +1 -1
  709. package/src/Stack/StackItem.tsx +1 -1
  710. package/src/StatusDot/StatusDot.doc.mjs +3 -3
  711. package/src/StatusDot/StatusDot.tsx +2 -22
  712. package/src/StatusDot/index.ts +22 -5
  713. package/src/Switch/Switch.doc.mjs +3 -3
  714. package/src/Switch/Switch.test.tsx +34 -0
  715. package/src/Switch/Switch.tsx +1 -1
  716. package/src/TabList/Tab.doc.mjs +1 -1
  717. package/src/TabList/Tab.tsx +1 -1
  718. package/src/TabList/TabList.doc.mjs +3 -3
  719. package/src/TabList/TabList.tsx +1 -1
  720. package/src/TabList/TabMenu.doc.mjs +1 -1
  721. package/src/TabList/TabMenu.tsx +1 -1
  722. package/src/Table/BaseTable.tsx +1 -1
  723. package/src/Table/Table.doc.mjs +3 -3
  724. package/src/Table/Table.tsx +1 -1
  725. package/src/Table/TableCell.doc.mjs +1 -1
  726. package/src/Table/TableCell.tsx +1 -1
  727. package/src/Table/TableHeaderCell.doc.mjs +1 -1
  728. package/src/Table/TableHeaderCell.tsx +1 -1
  729. package/src/Table/TableRow.doc.mjs +1 -1
  730. package/src/Table/TableRow.tsx +1 -1
  731. package/src/Table/plugins/rowExpansion/useTableRowExpansion.tsx +21 -3
  732. package/src/Table/useTableColumnResize.doc.mjs +1 -1
  733. package/src/Table/useTableColumnSettings.doc.mjs +1 -1
  734. package/src/Table/useTableFilterState.doc.mjs +1 -1
  735. package/src/Table/useTableFiltering.doc.mjs +1 -1
  736. package/src/Table/useTableGroupedRows.doc.mjs +2 -2
  737. package/src/Table/useTablePagination.doc.mjs +1 -1
  738. package/src/Table/useTableRowExpansion.doc.mjs +57 -4
  739. package/src/Table/useTableRowIndex.doc.mjs +2 -2
  740. package/src/Table/useTableRowStatus.doc.mjs +2 -2
  741. package/src/Table/useTableSelection.doc.mjs +1 -1
  742. package/src/Table/useTableSelectionState.doc.mjs +1 -1
  743. package/src/Table/useTableSortable.doc.mjs +1 -1
  744. package/src/Table/useTableStickyColumns.doc.mjs +1 -1
  745. package/src/Table/useTableTreeData.doc.mjs +1 -1
  746. package/src/Table/useTableTreeState.doc.mjs +1 -1
  747. package/src/Text/Heading.doc.mjs +1 -1
  748. package/src/Text/Text.doc.mjs +3 -3
  749. package/src/Text/Text.tsx +1 -1
  750. package/src/Text/index.ts +31 -1
  751. package/src/TextArea/TextArea.doc.mjs +3 -3
  752. package/src/TextArea/TextArea.tsx +1 -1
  753. package/src/TextInput/TextInput.doc.mjs +3 -3
  754. package/src/TextInput/TextInput.tsx +1 -1
  755. package/src/Thumbnail/Thumbnail.doc.mjs +2 -2
  756. package/src/Thumbnail/Thumbnail.tsx +1 -1
  757. package/src/TimeInput/TimeInput.doc.mjs +3 -3
  758. package/src/TimeInput/TimeInput.tsx +1 -1
  759. package/src/Timestamp/Timestamp.doc.mjs +3 -3
  760. package/src/Timestamp/Timestamp.tsx +1 -1
  761. package/src/Toast/Toast.doc.mjs +3 -3
  762. package/src/Toast/useToast.doc.mjs +2 -2
  763. package/src/ToggleButton/ToggleButton.doc.mjs +3 -3
  764. package/src/ToggleButton/ToggleButton.tsx +1 -1
  765. package/src/ToggleButton/ToggleButtonGroup.doc.mjs +1 -1
  766. package/src/ToggleButton/ToggleButtonGroup.tsx +3 -6
  767. package/src/Token/Token.doc.mjs +3 -3
  768. package/src/Token/Token.tsx +2 -28
  769. package/src/Token/index.ts +28 -1
  770. package/src/Tokenizer/Tokenizer.doc.mjs +3 -3
  771. package/src/Tokenizer/Tokenizer.tsx +1 -1
  772. package/src/Toolbar/Toolbar.doc.mjs +3 -3
  773. package/src/Toolbar/Toolbar.tsx +1 -1
  774. package/src/Tooltip/Tooltip.doc.mjs +3 -3
  775. package/src/Tooltip/Tooltip.tsx +1 -1
  776. package/src/Tooltip/useTooltip.doc.mjs +2 -2
  777. package/src/TopNav/TopNav.doc.mjs +3 -3
  778. package/src/TopNav/TopNav.tsx +1 -1
  779. package/src/TopNav/TopNavHeading.doc.mjs +1 -1
  780. package/src/TopNav/TopNavHeading.tsx +7 -8
  781. package/src/TopNav/TopNavItem.doc.mjs +1 -1
  782. package/src/TopNav/TopNavItem.tsx +1 -1
  783. package/src/TopNav/TopNavMegaMenu.doc.mjs +1 -1
  784. package/src/TopNav/TopNavMegaMenu.tsx +6 -4
  785. package/src/TopNav/TopNavMegaMenuFeaturedCard.doc.mjs +1 -1
  786. package/src/TopNav/TopNavMegaMenuFeaturedCard.tsx +1 -1
  787. package/src/TopNav/TopNavMegaMenuItem.doc.mjs +1 -1
  788. package/src/TopNav/TopNavMegaMenuItem.tsx +1 -1
  789. package/src/TopNav/TopNavMenu.doc.mjs +1 -1
  790. package/src/TopNav/TopNavMenu.tsx +5 -4
  791. package/src/TreeList/TreeList.doc.mjs +3 -3
  792. package/src/TreeList/TreeList.tsx +1 -1
  793. package/src/TreeList/TreeListBranches.tsx +1 -1
  794. package/src/TreeList/TreeListItem.tsx +4 -3
  795. package/src/TreeList/TreeListTypes.ts +1 -18
  796. package/src/TreeList/index.ts +19 -1
  797. package/src/Typeahead/BaseTypeahead.doc.mjs +1 -1
  798. package/src/Typeahead/BaseTypeahead.tsx +1 -1
  799. package/src/Typeahead/Typeahead.doc.mjs +3 -3
  800. package/src/Typeahead/Typeahead.tsx +1 -1
  801. package/src/Typeahead/TypeaheadItem.doc.mjs +1 -1
  802. package/src/Typeahead/TypeaheadItem.tsx +1 -1
  803. package/src/VStack/VStack.tsx +1 -1
  804. package/src/VisuallyHidden/VisuallyHidden.doc.mjs +3 -3
  805. package/src/VisuallyHidden/VisuallyHidden.tsx +1 -1
  806. package/src/__tests__/inputWidthContract.test.tsx +8 -1
  807. package/src/doc-mjs.d.ts +5 -2
  808. package/src/docPropLiterals.test.ts +1 -1
  809. package/src/docPropReferences.test.ts +1 -1
  810. package/src/hooks/containerReveal.pool.stylex.ts +154 -47
  811. package/src/hooks/useClickableContainer.doc.mjs +2 -2
  812. package/src/hooks/useContainerReveal.doc.mjs +75 -0
  813. package/src/hooks/useContainerReveal.ts +5 -4
  814. package/src/hooks/useEntryAnimation.doc.mjs +2 -2
  815. package/src/hooks/useFocusTrap.doc.mjs +2 -2
  816. package/src/hooks/useGridFocus.doc.mjs +2 -2
  817. package/src/hooks/useHotkeys.doc.mjs +2 -2
  818. package/src/hooks/useImageMode.doc.mjs +2 -2
  819. package/src/hooks/useInputContainer.doc.mjs +2 -2
  820. package/src/hooks/useInputContainer.test.tsx +180 -0
  821. package/src/hooks/useInputContainer.ts +36 -1
  822. package/src/hooks/useKeyboardHint.doc.mjs +2 -2
  823. package/src/hooks/useKeyboardHint.tsx +1 -1
  824. package/src/hooks/useListFocus.doc.mjs +2 -2
  825. package/src/hooks/useMediaQuery.doc.mjs +2 -2
  826. package/src/hooks/useOverflow.doc.mjs +2 -2
  827. package/src/hooks/useScrollLock.doc.mjs +2 -2
  828. package/src/hooks/useScrollOverflow.doc.mjs +2 -2
  829. package/src/hooks/useStreamingText.doc.mjs +2 -2
  830. package/src/hooks/useTreeFocus.doc.mjs +2 -2
  831. package/src/i18n/InternationalizationProvider.doc.mjs +2 -2
  832. package/src/i18n/useTranslator.doc.mjs +2 -2
  833. package/src/index.ts +14 -10
  834. package/src/theme/MediaTheme.doc.mjs +2 -2
  835. package/src/theme/SyntaxTheme.doc.mjs +2 -2
  836. package/src/theme/Theme.doc.mjs +2 -2
  837. package/src/theme/Theme.tsx +3 -7
  838. package/src/theme/defineTheme.ts +5 -1
  839. package/src/theme/index.ts +8 -2
  840. package/src/theme/themeRegistry.test.ts +59 -0
  841. package/src/theme/themeRegistry.ts +53 -0
  842. package/src/theme/types.ts +2 -31
  843. package/src/theme/useTheme.doc.mjs +2 -2
  844. package/src/theme/useTheme.test.tsx +48 -3
  845. package/src/theme/useTheme.ts +100 -29
  846. package/src/utils/rtlStyles.ts +22 -0
  847. package/dist/authoring/doc.d.ts +0 -145
  848. package/dist/authoring/doc.d.ts.map +0 -1
  849. package/dist/authoring/doc.js +0 -100
  850. package/dist/authoring/index.d.ts +0 -29
  851. package/dist/authoring/index.d.ts.map +0 -1
  852. package/dist/authoring/index.js +0 -28
  853. package/dist/authoring/integration.d.ts +0 -35
  854. package/dist/authoring/integration.d.ts.map +0 -1
  855. package/dist/authoring/integration.js +0 -30
  856. package/dist/authoring/template.d.ts +0 -66
  857. package/dist/authoring/template.d.ts.map +0 -1
  858. package/dist/authoring/template.js +0 -55
  859. package/dist/config.d.ts +0 -80
  860. package/dist/config.d.ts.map +0 -1
  861. package/dist/config.js +0 -40
  862. package/dist/docs-types.d.ts +0 -969
  863. package/dist/docs-types.d.ts.map +0 -1
  864. package/dist/docs-types.js +0 -1
  865. package/src/authoring/doc.ts +0 -164
  866. package/src/authoring/index.test.ts +0 -52
  867. package/src/authoring/index.ts +0 -50
  868. package/src/authoring/integration.ts +0 -42
  869. package/src/authoring/template.ts +0 -74
  870. package/src/config.test.ts +0 -16
  871. package/src/config.ts +0 -92
  872. package/src/docs-types.ts +0 -1108
@@ -1,6 +1,6 @@
1
1
  // Copyright (c) Meta Platforms, Inc. and affiliates.
2
2
 
3
- /** @type {import('../docs-types').ComponentDoc} */
3
+ /** @type {import('@astryxdesign/cli/authoring').ComponentDoc} */
4
4
  export const docs = {
5
5
  name: 'FieldStatus',
6
6
  displayName: 'Field Status',
@@ -64,7 +64,7 @@ export const docs = {
64
64
  },
65
65
  };
66
66
 
67
- /** @type {import('../docs-types').TranslationDoc} */
67
+ /** @type {import('@astryxdesign/cli/authoring').ComponentTranslationDoc} */
68
68
  export const docsDense = {
69
69
  description:
70
70
  'Validation feedback message for fields/custom controls. Supports error, warning, success and attached/detached variants. Announced via persistent live regions (assertive for errors, polite otherwise).',
@@ -11,7 +11,7 @@
11
11
  * - /packages/core/src/Field/Field.doc.mjs (compat docs when public API changes)
12
12
  * - /packages/core/src/FieldStatus/index.ts (exports if types change)
13
13
  * - /packages/core/src/Field/index.ts (compat re-export if public API changes)
14
- * - /packages/cli/templates/blocks/components/FieldStatus/ (showcase blocks)
14
+ * - /packages/cli/assets/templates/blocks/components/FieldStatus/ (showcase blocks)
15
15
  */
16
16
 
17
17
  'use client';
@@ -33,6 +33,7 @@ import {useEntryAnimation} from '../hooks/useEntryAnimation';
33
33
  import {themeProps} from '../utils/themeProps';
34
34
  import {Icon} from '../Icon';
35
35
  import type {IconName} from '../Icon';
36
+ import type {FieldStatusVariantMap} from './index';
36
37
 
37
38
  /**
38
39
  * Maps each status type to its status glyph. Mirrors the mapping the input
@@ -96,25 +97,6 @@ const colorStyles = stylex.create({
96
97
  },
97
98
  });
98
99
 
99
- /**
100
- * Extensible variant map for FieldStatus.
101
- *
102
- * Theme packages can add custom variants via TypeScript module augmentation:
103
- * @example
104
- * ```
105
- * declare module '@astryxdesign/core/FieldStatus' {
106
- * interface FieldStatusVariantMap {
107
- * 'inline': true;
108
- * }
109
- * }
110
- * ```
111
- */
112
- export interface FieldStatusVariantMap {
113
- attached: true;
114
- detached: true;
115
- tooltip: true;
116
- }
117
-
118
100
  /**
119
101
  * FieldStatus variant type. Extensible via module augmentation of FieldStatusVariantMap.
120
102
  */
@@ -9,9 +9,24 @@
9
9
  * @position Entry point for @astryxdesign/core/FieldStatus subpath export
10
10
  */
11
11
 
12
+ /**
13
+ * Extensible variant map for FieldStatus.
14
+ *
15
+ * Theme packages can add custom variants via TypeScript module augmentation:
16
+ * @example
17
+ * ```
18
+ * declare module '@astryxdesign/core/FieldStatus' {
19
+ * interface FieldStatusVariantMap {
20
+ * 'inline': true;
21
+ * }
22
+ * }
23
+ * ```
24
+ */
25
+ export interface FieldStatusVariantMap {
26
+ attached: true;
27
+ detached: true;
28
+ tooltip: true;
29
+ }
30
+
12
31
  export {FieldStatus} from './FieldStatus';
13
- export type {
14
- FieldStatusProps,
15
- FieldStatusVariant,
16
- FieldStatusVariantMap,
17
- } from './FieldStatus';
32
+ export type {FieldStatusProps, FieldStatusVariant} from './FieldStatus';
@@ -1,6 +1,6 @@
1
1
  // Copyright (c) Meta Platforms, Inc. and affiliates.
2
2
 
3
- /** @type {import('../docs-types').ComponentDoc} */
3
+ /** @type {import('@astryxdesign/cli/authoring').ComponentDoc} */
4
4
 
5
5
  export const docs = {
6
6
  name: 'FileInput',
@@ -170,7 +170,7 @@ export const docs = {
170
170
  },
171
171
  };
172
172
 
173
- /** @type {import('../docs-types').ComponentDoc} */
173
+ /** @type {import('@astryxdesign/cli/authoring').ComponentDoc} */
174
174
  export const docsZh = {
175
175
  name: 'FileInput',
176
176
  displayName: 'File Input',
@@ -293,7 +293,7 @@ export const docsZh = {
293
293
  },
294
294
  };
295
295
 
296
- /** @type {import('../docs-types').TranslationDoc} */
296
+ /** @type {import('@astryxdesign/cli/authoring').ComponentTranslationDoc} */
297
297
  export const docsDense = {
298
298
  description: 'File input w/ input/dropzone modes, validation, label, description, status.',
299
299
  usage: {
@@ -13,7 +13,7 @@
13
13
  * - /packages/core/src/FileInput/FileInput.test.tsx (tests for new/changed behavior)
14
14
  * - /packages/core/src/FileInput/index.ts (exports if types change)
15
15
  * - /apps/storybook/stories/FileInput.stories.tsx (storybook stories)
16
- * - /packages/cli/templates/blocks/components/FileInput/ (showcase blocks)
16
+ * - /packages/cli/assets/templates/blocks/components/FileInput/ (showcase blocks)
17
17
  */
18
18
 
19
19
  import {
@@ -1,6 +1,6 @@
1
1
  // Copyright (c) Meta Platforms, Inc. and affiliates.
2
2
 
3
- /** @type {import('../docs-types').ComponentDoc} */
3
+ /** @type {import('@astryxdesign/cli/authoring').ComponentDoc} */
4
4
 
5
5
  export const docs = {
6
6
  name: 'FormLayout',
@@ -52,7 +52,7 @@ export const docs = {
52
52
  },
53
53
  };
54
54
 
55
- /** @type {import('../docs-types').ComponentDoc} */
55
+ /** @type {import('@astryxdesign/cli/authoring').ComponentDoc} */
56
56
  export const docsZh = {
57
57
  name: 'FormLayout',
58
58
  displayName: 'Form Layout',
@@ -100,7 +100,7 @@ export const docsZh = {
100
100
  },
101
101
  };
102
102
 
103
- /** @type {import('../docs-types').TranslationDoc} */
103
+ /** @type {import('@astryxdesign/cli/authoring').ComponentTranslationDoc} */
104
104
  export const docsDense = {
105
105
  description:
106
106
  'Layout container for form fields w/ consistent spacing + direction.',
@@ -12,17 +12,14 @@
12
12
  * - /packages/core/src/FormLayout/FormLayout.test.tsx (tests for new/changed behavior)
13
13
  * - /packages/core/src/FormLayout/index.ts (exports if types change)
14
14
  * - /apps/storybook/stories/FormLayout.stories.tsx (storybook stories)
15
- * - /packages/cli/templates/blocks/components/FormLayout/ (showcase blocks)
15
+ * - /packages/cli/assets/templates/blocks/components/FormLayout/ (showcase blocks)
16
16
  */
17
17
 
18
18
  import {useMemo, type ReactNode} from 'react';
19
19
  import type {BaseProps} from '../BaseProps';
20
20
  import * as stylex from '@stylexjs/stylex';
21
21
  import {spacingVars} from '../theme/tokens.stylex';
22
- import {
23
- FormLayoutContext,
24
- type FormLayoutDirection,
25
- } from './FormLayoutContext';
22
+ import {FormLayoutContext, type FormLayoutDirection} from './FormLayoutContext';
26
23
  import {mergeProps} from '../utils';
27
24
  import {themeProps} from '../utils/themeProps';
28
25
 
@@ -1,6 +1,6 @@
1
1
  // Copyright (c) Meta Platforms, Inc. and affiliates.
2
2
 
3
- /** @type {import('../docs-types').ComponentDoc} */
3
+ /** @type {import('@astryxdesign/cli/authoring').ComponentDoc} */
4
4
 
5
5
  export const docs = {
6
6
  name: 'Grid',
@@ -101,7 +101,7 @@ export const docs = {
101
101
  ],
102
102
  };
103
103
 
104
- /** @type {import('../docs-types').TranslationDoc} */
104
+ /** @type {import('@astryxdesign/cli/authoring').ComponentTranslationDoc} */
105
105
  export const docsZh = {
106
106
  usage: {
107
107
  description:
@@ -117,7 +117,7 @@ export const docsZh = {
117
117
  },
118
118
  };
119
119
 
120
- /** @type {import('../docs-types').TranslationDoc} */
120
+ /** @type {import('@astryxdesign/cli/authoring').ComponentTranslationDoc} */
121
121
  export const docsDense = {
122
122
  description: 'CSS Grid-based layout w/ responsive column support.',
123
123
  usage: {
package/src/Grid/Grid.tsx CHANGED
@@ -12,7 +12,7 @@
12
12
  * - /packages/core/src/Grid/Grid.doc.mjs
13
13
  * - /packages/core/src/Grid/Grid.test.tsx
14
14
  * - /apps/storybook/stories/Grid.stories.tsx
15
- * - /packages/cli/templates/blocks/components/Grid/ (showcase blocks)
15
+ * - /packages/cli/assets/templates/blocks/components/Grid/ (showcase blocks)
16
16
  */
17
17
 
18
18
  import type {ReactNode} from 'react';
@@ -1,6 +1,6 @@
1
1
  // Copyright (c) Meta Platforms, Inc. and affiliates.
2
2
 
3
- /** @type {import('../docs-types').ComponentDoc} */
3
+ /** @type {import('@astryxdesign/cli/authoring').ComponentDoc} */
4
4
 
5
5
  export const docs = {
6
6
  name: 'GridSpan',
@@ -10,7 +10,7 @@
10
10
  * - /packages/core/src/Grid/Grid.doc.mjs
11
11
  * - /packages/core/src/Grid/Grid.test.tsx
12
12
  * - /apps/storybook/stories/Grid.stories.tsx
13
- * - /packages/cli/templates/blocks/components/Grid/ (showcase blocks)
13
+ * - /packages/cli/assets/templates/blocks/components/Grid/ (showcase blocks)
14
14
  */
15
15
 
16
16
  import type {ReactNode} from 'react';
@@ -9,7 +9,7 @@
9
9
  * SYNC: When modified, update these files to stay in sync:
10
10
  * - /packages/core/src/Stack/Stack.doc.mjs
11
11
  * - /packages/core/src/HStack/HStack.test.tsx
12
- * - /packages/cli/templates/blocks/components/HStack/ (showcase blocks)
12
+ * - /packages/cli/assets/templates/blocks/components/HStack/ (showcase blocks)
13
13
  */
14
14
 
15
15
  import {Stack, type StackProps} from '../Stack/Stack';
@@ -13,8 +13,8 @@
13
13
  * - /packages/core/src/Heading/Heading.test.tsx (tests for new/changed behavior)
14
14
  * - /packages/core/src/Text/index.ts (exports if types change)
15
15
  * - /apps/storybook/stories/Text.stories.tsx (storybook stories)
16
- * - /packages/cli/templates/blocks/components/Heading/ (showcase blocks)
17
- * - /packages/cli/templates/blocks/components/Text/ (showcase blocks)
16
+ * - /packages/cli/assets/templates/blocks/components/Heading/ (showcase blocks)
17
+ * - /packages/cli/assets/templates/blocks/components/Text/ (showcase blocks)
18
18
  */
19
19
 
20
20
  import {lazy, Suspense, useRef, type ReactNode} from 'react';
@@ -1,6 +1,6 @@
1
1
  // Copyright (c) Meta Platforms, Inc. and affiliates.
2
2
 
3
- /** @type {import('../docs-types').ComponentDoc} */
3
+ /** @type {import('@astryxdesign/cli/authoring').ComponentDoc} */
4
4
 
5
5
  export const docs = {
6
6
  name: 'HoverCard',
@@ -125,7 +125,7 @@ export const docs = {
125
125
  },
126
126
  };
127
127
 
128
- /** @type {import('../docs-types').ComponentDoc} */
128
+ /** @type {import('@astryxdesign/cli/authoring').ComponentDoc} */
129
129
  export const docsZh = {
130
130
  name: 'HoverCard',
131
131
  displayName: 'Hover Card',
@@ -234,7 +234,7 @@ export const docsZh = {
234
234
  },
235
235
  };
236
236
 
237
- /** @type {import('../docs-types').TranslationDoc} */
237
+ /** @type {import('@astryxdesign/cli/authoring').ComponentTranslationDoc} */
238
238
  export const docsDense = {
239
239
  description:
240
240
  'Hover/focus triggered overlay for displaying rich, interactive content anchored to trigger element.',
@@ -12,7 +12,7 @@
12
12
  * - /packages/core/src/HoverCard/HoverCard.test.tsx
13
13
  * - /packages/core/src/HoverCard/index.ts
14
14
  * - /apps/storybook/stories/HoverCard.stories.tsx
15
- * - /packages/cli/templates/blocks/components/HoverCard/ (showcase blocks)
15
+ * - /packages/cli/assets/templates/blocks/components/HoverCard/ (showcase blocks)
16
16
  */
17
17
 
18
18
  import {useCallback, useRef, type ReactElement, type ReactNode} from 'react';
@@ -1,6 +1,6 @@
1
1
  // Copyright (c) Meta Platforms, Inc. and affiliates.
2
2
 
3
- /** @type {import('../docs-types').HookDoc} */
3
+ /** @type {import('@astryxdesign/cli/authoring').HookDoc} */
4
4
  export const docs = {
5
5
  name: 'useHoverCard',
6
6
  displayName: 'useHoverCard',
@@ -43,7 +43,7 @@ export const docs = {
43
43
  category: 'interaction',
44
44
  };
45
45
 
46
- /** @type {import('../docs-types').HookTranslationDoc} */
46
+ /** @type {import('@astryxdesign/cli/authoring').HookTranslationDoc} */
47
47
  export const docsDense = {
48
48
  description: 'Headless hover-triggered floating cards. Builds on useLayer w/ hover/focus intent, delays, safe hover behavior, aria-describedby. Use for rich previews when trigger/content rendering needs full control.',
49
49
  paramDescriptions: {
@@ -1,6 +1,6 @@
1
1
  // Copyright (c) Meta Platforms, Inc. and affiliates.
2
2
 
3
- /** @type {import('../docs-types').ComponentDoc} */
3
+ /** @type {import('@astryxdesign/cli/authoring').ComponentDoc} */
4
4
 
5
5
  export const docs = {
6
6
  name: 'Icon',
@@ -68,7 +68,7 @@ export const docs = {
68
68
  },
69
69
  };
70
70
 
71
- /** @type {import('../docs-types').ComponentDoc} */
71
+ /** @type {import('@astryxdesign/cli/authoring').ComponentDoc} */
72
72
  export const docsZh = {
73
73
  name: 'Icon',
74
74
  displayName: 'Icon',
@@ -124,7 +124,7 @@ export const docsZh = {
124
124
  },
125
125
  };
126
126
 
127
- /** @type {import('../docs-types').TranslationDoc} */
127
+ /** @type {import('@astryxdesign/cli/authoring').ComponentTranslationDoc} */
128
128
  export const docsDense = {
129
129
  description:
130
130
  'Renders icons w/ Astryx design system colors + sizes. Supports direct SVG icon components + semantic icon names that adapt to active theme.',
@@ -13,7 +13,11 @@ import {describe, it, expect, vi} from 'vitest';
13
13
  import {render, screen} from '@testing-library/react';
14
14
  import * as stylex from '@stylexjs/stylex';
15
15
  import {TestIcon} from '../__tests__/TestIcon';
16
+ import {Theme} from '../theme/Theme';
17
+ import {defineTheme} from '../theme/defineTheme';
18
+ import {resetThemes} from '../theme/themeRegistry';
16
19
  import {Icon} from './Icon';
20
+ import {resetIcons} from './globalIconRegistry';
17
21
 
18
22
  describe('Icon', () => {
19
23
  it('renders the icon component', () => {
@@ -169,6 +173,25 @@ describe('Icon', () => {
169
173
  expect(screen.getByTestId('icon')).toHaveAttribute('aria-hidden', 'true');
170
174
  });
171
175
 
176
+ it('resolves string-mode icons from the nearest Theme without leaking globally', () => {
177
+ resetIcons();
178
+ resetThemes();
179
+ const outer = defineTheme({name: 'outer', icons: {check: 'outer-check'}});
180
+ const inner = defineTheme({name: 'inner', icons: {check: 'inner-check'}});
181
+
182
+ render(
183
+ <Theme theme={outer}>
184
+ <Icon icon="check" data-testid="outer" />
185
+ <Theme theme={inner}>
186
+ <Icon icon="check" data-testid="inner" />
187
+ </Theme>
188
+ </Theme>,
189
+ );
190
+
191
+ expect(screen.getByTestId('outer')).toHaveTextContent('outer-check');
192
+ expect(screen.getByTestId('inner')).toHaveTextContent('inner-check');
193
+ });
194
+
172
195
  it('lets a string-mode icon be made meaningful by overriding aria-hidden', () => {
173
196
  render(
174
197
  <Icon
package/src/Icon/Icon.tsx CHANGED
@@ -19,13 +19,14 @@
19
19
  * - /packages/core/src/Icon/Icon.test.tsx (tests for new/changed behavior)
20
20
  * - /packages/core/src/Icon/index.ts (exports if types change)
21
21
  * - /apps/storybook/stories/Icon.stories.tsx (storybook stories)
22
- * - /packages/cli/templates/blocks/components/Icon/ (showcase blocks)
22
+ * - /packages/cli/assets/templates/blocks/components/Icon/ (showcase blocks)
23
23
  */
24
24
 
25
25
  import React, {type ComponentType, type SVGProps} from 'react';
26
26
  import * as stylex from '@stylexjs/stylex';
27
27
  import type {StyleXStyles} from '@stylexjs/stylex';
28
28
  import {colorVars} from '../theme/tokens.stylex';
29
+ import {useThemeName} from '../theme/useTheme';
29
30
  import {getIcon} from './globalIconRegistry';
30
31
  import type {IconName} from './globalIconRegistry';
31
32
  import {mergeProps} from '../utils';
@@ -379,7 +380,8 @@ function IconFromRegistry({
379
380
  xstyle?: StyleXStyles;
380
381
  spanProps?: Omit<SVGProps<SVGSVGElement>, 'ref' | 'color'>;
381
382
  }) {
382
- const resolvedIcon = getIcon(name);
383
+ const themeName = useThemeName();
384
+ const resolvedIcon = getIcon(name, themeName);
383
385
 
384
386
  if (resolvedIcon == null) {
385
387
  return null;
@@ -1,6 +1,9 @@
1
1
  // Copyright (c) Meta Platforms, Inc. and affiliates.
2
2
 
3
- import {describe, it, expect, beforeEach} from 'vitest';
3
+ import {describe, it, expect, beforeEach, afterEach, vi} from 'vitest';
4
+ import {defineTheme} from '../theme/defineTheme';
5
+ import {resetThemes} from '../theme/themeRegistry';
6
+ import {__resetDevWarnings} from '../utils/devWarning';
4
7
  import {defaultIcons} from './defaultIcons';
5
8
  import {
6
9
  registerIcons,
@@ -12,6 +15,13 @@ import {
12
15
  describe('iconRegistry (global, RSC-compatible)', () => {
13
16
  beforeEach(() => {
14
17
  resetIcons();
18
+ resetThemes();
19
+ __resetDevWarnings();
20
+ vi.spyOn(console, 'warn').mockImplementation(() => {});
21
+ });
22
+
23
+ afterEach(() => {
24
+ vi.restoreAllMocks();
15
25
  });
16
26
 
17
27
  it('returns a default icon registry snapshot', () => {
@@ -28,6 +38,18 @@ describe('iconRegistry (global, RSC-compatible)', () => {
28
38
  expect(icon).not.toBeNull();
29
39
  });
30
40
 
41
+ it('warns once that registerIcons applies global overrides', () => {
42
+ const warnSpy = vi.mocked(console.warn);
43
+
44
+ registerIcons({close: 'custom-close'});
45
+ registerIcons({check: 'custom-check'});
46
+
47
+ expect(warnSpy).toHaveBeenCalledTimes(1);
48
+ expect(warnSpy.mock.calls[0]?.[0]).toContain(
49
+ '`registerIcons()` applies icon overrides globally',
50
+ );
51
+ });
52
+
31
53
  it('returns registered icons over defaults', () => {
32
54
  const customClose = 'custom-close-icon';
33
55
  registerIcons({close: customClose});
@@ -65,6 +87,35 @@ describe('iconRegistry (global, RSC-compatible)', () => {
65
87
  expect(getIcon('close')).toBe('close-v2');
66
88
  });
67
89
 
90
+ it('resolves icons from an explicit theme object over global registrations', () => {
91
+ registerIcons({close: 'global-close'});
92
+ const theme = defineTheme({
93
+ name: 'brand',
94
+ icons: {close: 'theme-close'},
95
+ });
96
+
97
+ expect(getIcon('close', theme)).toBe('theme-close');
98
+ expect(getIconRegistry(theme).close).toBe('theme-close');
99
+ });
100
+
101
+ it('resolves icons from a registered theme name for SSR-friendly lookups', () => {
102
+ defineTheme({
103
+ name: 'brand',
104
+ icons: {close: 'theme-close'},
105
+ });
106
+
107
+ expect(getIcon('close', 'brand')).toBe('theme-close');
108
+ expect(getIconRegistry('brand').close).toBe('theme-close');
109
+ });
110
+
111
+ it('falls back through global registrations when a theme omits a name', () => {
112
+ registerIcons({close: 'global-close'});
113
+ const theme = defineTheme({name: 'brand', icons: {check: 'theme-check'}});
114
+
115
+ expect(getIcon('close', theme)).toBe('global-close');
116
+ expect(getIcon('check', theme)).toBe('theme-check');
117
+ });
118
+
68
119
  it('resetIcons clears the global registry', () => {
69
120
  registerIcons({close: 'custom'});
70
121
  expect(getIcon('close')).toBe('custom');
@@ -4,14 +4,17 @@
4
4
  * @file globalIconRegistry.tsx
5
5
  * @input None (pure module-level state)
6
6
  * @output Exports registerIcons, getIconRegistry, getIcon, resetIcons, IconName, IconRegistry
7
- * @position Global icon registry; works in both server and client environments
7
+ * @position Global and theme-scoped icon registry; works in server and client environments
8
8
  *
9
9
  * This module has NO 'use client' directive — it's importable from RSC.
10
- * All components use getIcon() to resolve icons from this global registry.
10
+ * Components resolve semantic icons through getIcon() or the client useIcon() hook.
11
11
  */
12
12
 
13
13
  import type {ReactNode} from 'react';
14
14
  import {defaultIcons} from './defaultIcons';
15
+ import type {DefinedTheme} from '../theme/defineTheme';
16
+ import {getRegisteredTheme} from '../theme/themeRegistry';
17
+ import {warnOnce} from '../utils/devWarning';
15
18
 
16
19
  // =============================================================================
17
20
  // Types
@@ -23,7 +26,7 @@ import {defaultIcons} from './defaultIcons';
23
26
  * These represent the functional purpose of each icon, not a specific
24
27
  * visual representation. Themes provide the actual icon components.
25
28
  */
26
- // SYNC: packages/cli/docs/icons.doc.mjs — update USAGE_HINTS when adding names
29
+ // SYNC: packages/cli/assets/docs/icons.doc.mjs — update USAGE_HINTS when adding names
27
30
  export type IconName =
28
31
  | 'close'
29
32
  | 'chevronDown'
@@ -57,12 +60,28 @@ export type IconName =
57
60
  */
58
61
  export type IconRegistry = Record<IconName, ReactNode>;
59
62
 
63
+ export type IconRegistrySource = DefinedTheme | string | null | undefined;
64
+
60
65
  // =============================================================================
61
66
  // Global Registry
62
67
  // =============================================================================
63
68
 
64
69
  let globalRegistry: Partial<IconRegistry> = {};
65
70
 
71
+ function getThemeIconOverrides(
72
+ source: IconRegistrySource,
73
+ ): Partial<IconRegistry> | null {
74
+ if (source == null) {
75
+ return null;
76
+ }
77
+
78
+ if (typeof source === 'string') {
79
+ return getRegisteredTheme(source)?.icons ?? null;
80
+ }
81
+
82
+ return source.icons ?? null;
83
+ }
84
+
66
85
  /**
67
86
  * Register icons at the module level. Works in both server and client
68
87
  * environments. Call once at app initialization (e.g. root layout).
@@ -78,6 +97,11 @@ let globalRegistry: Partial<IconRegistry> = {};
78
97
  * ```
79
98
  */
80
99
  export function registerIcons(icons: Partial<IconRegistry>): void {
100
+ warnOnce(
101
+ 'icon-registry:global-register-icons',
102
+ 'Icon',
103
+ '`registerIcons()` applies icon overrides globally. Prefer `defineTheme({ icons })` for theme-scoped icon overrides.',
104
+ );
81
105
  globalRegistry = {...globalRegistry, ...icons};
82
106
  }
83
107
 
@@ -89,13 +113,22 @@ export function registerIcons(icons: Partial<IconRegistry>): void {
89
113
  * to derive valid semantic icon-name options from the same registry Icon
90
114
  * resolves against.
91
115
  */
92
- export function getIconRegistry(): Readonly<IconRegistry> {
116
+ export function getIconRegistry(
117
+ source?: IconRegistrySource,
118
+ ): Readonly<IconRegistry> {
93
119
  const registry = {...defaultIcons};
94
120
 
95
121
  for (const name of Object.keys(globalRegistry) as IconName[]) {
96
122
  registry[name] = globalRegistry[name] ?? defaultIcons[name];
97
123
  }
98
124
 
125
+ const themeIcons = getThemeIconOverrides(source);
126
+ if (themeIcons != null) {
127
+ for (const name of Object.keys(themeIcons) as IconName[]) {
128
+ registry[name] = themeIcons[name] ?? registry[name];
129
+ }
130
+ }
131
+
99
132
  return registry;
100
133
  }
101
134
 
@@ -105,8 +138,12 @@ export function getIconRegistry(): Readonly<IconRegistry> {
105
138
  * Works in both server and client environments.
106
139
  * Falls back to built-in default icons when no override is registered.
107
140
  */
108
- export function getIcon(name: IconName): ReactNode {
109
- return globalRegistry[name] ?? defaultIcons[name];
141
+ export function getIcon(
142
+ name: IconName,
143
+ source?: IconRegistrySource,
144
+ ): ReactNode {
145
+ const themeIcons = getThemeIconOverrides(source);
146
+ return themeIcons?.[name] ?? globalRegistry[name] ?? defaultIcons[name];
110
147
  }
111
148
 
112
149
  /**
package/src/Icon/index.ts CHANGED
@@ -12,12 +12,8 @@
12
12
  */
13
13
 
14
14
  export {Icon, renderIconSlot} from './Icon';
15
- export type {
16
- IconProps,
17
- IconColor,
18
- IconSize,
19
- IconType,
20
- } from './Icon';
15
+ export {useIcon} from './useIcon';
16
+ export type {IconProps, IconColor, IconSize, IconType} from './Icon';
21
17
 
22
18
  // Global registry (RSC-compatible, no 'use client')
23
19
  export {
@@ -26,4 +22,8 @@ export {
26
22
  getIcon,
27
23
  resetIcons,
28
24
  } from './globalIconRegistry';
29
- export type {IconName, IconRegistry} from './globalIconRegistry';
25
+ export type {
26
+ IconName,
27
+ IconRegistry,
28
+ IconRegistrySource,
29
+ } from './globalIconRegistry';
@@ -0,0 +1,23 @@
1
+ // Copyright (c) Meta Platforms, Inc. and affiliates.
2
+
3
+ 'use client';
4
+
5
+ /**
6
+ * @file useIcon.ts
7
+ * @input Semantic icon name
8
+ * @output Exports useIcon hook for theme-aware icon lookup
9
+ * @position Client hook for components that render registry icons directly
10
+ */
11
+
12
+ import type {ReactNode} from 'react';
13
+ import {useThemeName} from '../theme/useTheme';
14
+ import {getIcon, type IconName} from './globalIconRegistry';
15
+
16
+ /**
17
+ * Resolve a semantic icon name from the nearest Theme, falling back through
18
+ * root theme registration, global icon overrides, and built-in defaults.
19
+ */
20
+ export function useIcon(name: IconName): ReactNode {
21
+ const themeName = useThemeName();
22
+ return getIcon(name, themeName);
23
+ }
@@ -1,6 +1,6 @@
1
1
  // Copyright (c) Meta Platforms, Inc. and affiliates.
2
2
 
3
- /** @type {import('../docs-types').ComponentDoc} */
3
+ /** @type {import('@astryxdesign/cli/authoring').ComponentDoc} */
4
4
 
5
5
  export const docs = {
6
6
  name: 'IconButton',
@@ -84,7 +84,7 @@ export const docs = {
84
84
  },
85
85
  };
86
86
 
87
- /** @type {import('../docs-types').TranslationDoc} */
87
+ /** @type {import('@astryxdesign/cli/authoring').ComponentTranslationDoc} */
88
88
  export const docsDense = {
89
89
  description: 'Button showing only an icon, no visible text. Use in toolbars, table rows, compact UI where space is tight + icon universally understood.',
90
90
  usage: {
@@ -13,7 +13,7 @@
13
13
  * - /packages/core/src/IconButton/IconButton.test.tsx (tests)
14
14
  * - /packages/core/src/IconButton/index.ts (exports if types change)
15
15
  * - /apps/storybook/stories/IconButton.stories.tsx (storybook stories)
16
- * - /packages/cli/templates/blocks/components/IconButton/ (showcase blocks)
16
+ * - /packages/cli/assets/templates/blocks/components/IconButton/ (showcase blocks)
17
17
  */
18
18
 
19
19
  import type {ReactNode} from 'react';