@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
@@ -11,9 +11,10 @@
11
11
  * SYNC: When modified, update these files to stay in sync:
12
12
  * - /packages/core/src/Field/Field.doc.mjs (props table, features, implementation notes)
13
13
  * - /packages/core/src/Field/index.ts (exports if types change)
14
- * - /packages/cli/templates/blocks/components/Field/ (showcase blocks)
14
+ * - /packages/cli/assets/templates/blocks/components/Field/ (showcase blocks)
15
15
  * - /packages/core/locales/en.json (@astryx.field.required / @astryx.field.optional)
16
16
  */
17
+ import { useMemo, useRef } from 'react';
17
18
  import * as stylex from '@stylexjs/stylex';
18
19
  import { mergeProps } from "../utils/index.js";
19
20
  import "../theme/tokens.stylex.js";
@@ -22,6 +23,7 @@ import { Icon, renderIconSlot } from "../Icon/index.js";
22
23
  import { Tooltip } from "../Tooltip/index.js";
23
24
  import { useTranslator } from "../i18n/index.js";
24
25
  import { themeProps } from "../utils/themeProps.js";
26
+ import { useInputContainer } from "../hooks/index.js";
25
27
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
26
28
  const styles = {
27
29
  label: {
@@ -98,6 +100,35 @@ export function FieldLabel({
98
100
  // associated with a group. Render it as a `<span>` instead, keeping all the
99
101
  // label styling and slots. The group references it via `aria-labelledby`.
100
102
  const LabelElement = isGroupLabel ? 'span' : 'label';
103
+
104
+ // Clicking the description forwards to the associated control, so the whole
105
+ // label area (label text + description) is one hit target — mirroring native
106
+ // `<label>` click behavior, which the description can't get from `htmlFor`
107
+ // because it stays a sibling `<span>` (nesting it in the `<label>` would fold
108
+ // it into the control's accessible name and double-announce it alongside
109
+ // `aria-describedby`). A group label names a group, not one control, so it
110
+ // has nothing to forward to.
111
+ const forwardsDescriptionClick = !isGroupLabel && inputID != null;
112
+
113
+ // Reuse `useInputContainer` — the same hook input wrappers use to forward
114
+ // clicks on non-interactive chrome to their control. It skips nested
115
+ // interactive content (a link/button inside a ReactNode description) and
116
+ // guards against forwarding during text selection, so the description needs
117
+ // no bespoke click logic. The "input" is resolved from `inputID` lazily via
118
+ // a ref-shaped object, since FieldLabel points at the control by id rather
119
+ // than holding a ref to it.
120
+ const descriptionRef = useRef(null);
121
+ const controlRef = useMemo(() => ({
122
+ get current() {
123
+ return inputID == null ? null : descriptionRef.current?.ownerDocument.getElementById(inputID) ?? null;
124
+ },
125
+ set current(_value) {}
126
+ }), [inputID]);
127
+ const descriptionClickProps = useInputContainer({
128
+ containerRef: descriptionRef,
129
+ inputRef: controlRef,
130
+ disabled: !forwardsDescriptionClick
131
+ });
101
132
  const labelContent = /*#__PURE__*/_jsxs(_Fragment, {
102
133
  children: [labelIcon && renderIconSlot(labelIcon, {
103
134
  size: 'sm',
@@ -132,15 +163,23 @@ export function FieldLabel({
132
163
  ...mergeProps(themeProps('field-label'), stylex.props(styles.label, isDisabled && styles.labelDisabled, isLabelHidden && styles.srOnly, xstyle), className, style),
133
164
  children: labelContent
134
165
  }), description && /*#__PURE__*/_jsx("span", {
166
+ ref: forwardsDescriptionClick ? descriptionRef : undefined,
135
167
  id: descriptionID,
168
+ ...(forwardsDescriptionClick ? descriptionClickProps : undefined),
136
169
  ...{
137
170
  0: {
138
171
  className: "x9ynric x141an7d x1ltkj2j x1sodnla xv1l7n4"
139
172
  },
173
+ 2: {
174
+ className: "x9ynric x141an7d x1ltkj2j x1sodnla xv1l7n4 x1ypdohk"
175
+ },
140
176
  1: {
141
177
  className: "x9ynric x141an7d x1ltkj2j x1sodnla xv1l7n4 xng3xce xzpqnlu xjm9jq1 x1o0tod xkdpibf xb3r6kr x1717udv x47corl x10l6tqk x13vifvy x87ps6o xuxw1ft x1i1rx1s"
178
+ },
179
+ 3: {
180
+ className: "x9ynric x141an7d x1ltkj2j x1sodnla xv1l7n4 x1ypdohk xng3xce xzpqnlu xjm9jq1 x1o0tod xkdpibf xb3r6kr x1717udv x47corl x10l6tqk x13vifvy x87ps6o xuxw1ft x1i1rx1s"
142
181
  }
143
- }[!!isLabelHidden << 0],
182
+ }[!!forwardsDescriptionClick << 1 | !!isLabelHidden << 0],
144
183
  children: description
145
184
  })]
146
185
  });
@@ -1,24 +1,7 @@
1
1
  import React from 'react';
2
2
  import type { BaseProps } from '../BaseProps';
3
3
  import type { InputStatusType } from '../Field/types';
4
- /**
5
- * Extensible variant map for FieldStatus.
6
- *
7
- * Theme packages can add custom variants via TypeScript module augmentation:
8
- * @example
9
- * ```
10
- * declare module '@astryxdesign/core/FieldStatus' {
11
- * interface FieldStatusVariantMap {
12
- * 'inline': true;
13
- * }
14
- * }
15
- * ```
16
- */
17
- export interface FieldStatusVariantMap {
18
- attached: true;
19
- detached: true;
20
- tooltip: true;
21
- }
4
+ import type { FieldStatusVariantMap } from './index';
22
5
  /**
23
6
  * FieldStatus variant type. Extensible via module augmentation of FieldStatusVariantMap.
24
7
  */
@@ -1 +1 @@
1
- {"version":3,"file":"FieldStatus.d.ts","sourceRoot":"","sources":["../../src/FieldStatus/FieldStatus.tsx"],"names":[],"mappings":"AAkBA,OAAO,KAAkB,MAAM,OAAO,CAAC;AAEvC,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAU5C,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,gBAAgB,CAAC;AAoEpD;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,IAAI,CAAC;IACf,QAAQ,EAAE,IAAI,CAAC;IACf,OAAO,EAAE,IAAI,CAAC;CACf;AAED;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,MAAM,qBAAqB,CAAC;AAE7D,MAAM,WAAW,gBAAiB,SAAQ,SAAS,CAAC,cAAc,CAAC;IACjE,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAChC;;OAEG;IACH,IAAI,EAAE,eAAe,CAAC;IACtB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,kBAAkB,CAAC;CAC9B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAgB,WAAW,CAAC,EAC1B,GAAG,EACH,IAAI,EACJ,OAAO,EACP,EAAE,EACF,OAAoB,EACpB,MAAM,EACN,SAAS,EACT,KAAK,EACL,GAAG,IAAI,EACR,EAAE,gBAAgB,qBAsDlB;yBAhEe,WAAW"}
1
+ {"version":3,"file":"FieldStatus.d.ts","sourceRoot":"","sources":["../../src/FieldStatus/FieldStatus.tsx"],"names":[],"mappings":"AAkBA,OAAO,KAAkB,MAAM,OAAO,CAAC;AAEvC,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAU5C,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,gBAAgB,CAAC;AAKpD,OAAO,KAAK,EAAC,qBAAqB,EAAC,MAAM,SAAS,CAAC;AAgEnD;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,MAAM,qBAAqB,CAAC;AAE7D,MAAM,WAAW,gBAAiB,SAAQ,SAAS,CAAC,cAAc,CAAC;IACjE,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAChC;;OAEG;IACH,IAAI,EAAE,eAAe,CAAC;IACtB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,kBAAkB,CAAC;CAC9B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAgB,WAAW,CAAC,EAC1B,GAAG,EACH,IAAI,EACJ,OAAO,EACP,EAAE,EACF,OAAoB,EACpB,MAAM,EACN,SAAS,EACT,KAAK,EACL,GAAG,IAAI,EACR,EAAE,gBAAgB,qBAsDlB;yBAhEe,WAAW"}
@@ -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';
@@ -78,20 +78,6 @@ const colorStyles = {
78
78
  }
79
79
  };
80
80
 
81
- /**
82
- * Extensible variant map for FieldStatus.
83
- *
84
- * Theme packages can add custom variants via TypeScript module augmentation:
85
- * @example
86
- * ```
87
- * declare module '@astryxdesign/core/FieldStatus' {
88
- * interface FieldStatusVariantMap {
89
- * 'inline': true;
90
- * }
91
- * }
92
- * ```
93
- */
94
-
95
81
  /**
96
82
  * FieldStatus variant type. Extensible via module augmentation of FieldStatusVariantMap.
97
83
  */
@@ -4,6 +4,24 @@
4
4
  * @output Exports FieldStatus and related types
5
5
  * @position Entry point for @astryxdesign/core/FieldStatus subpath export
6
6
  */
7
+ /**
8
+ * Extensible variant map for FieldStatus.
9
+ *
10
+ * Theme packages can add custom variants via TypeScript module augmentation:
11
+ * @example
12
+ * ```
13
+ * declare module '@astryxdesign/core/FieldStatus' {
14
+ * interface FieldStatusVariantMap {
15
+ * 'inline': true;
16
+ * }
17
+ * }
18
+ * ```
19
+ */
20
+ export interface FieldStatusVariantMap {
21
+ attached: true;
22
+ detached: true;
23
+ tooltip: true;
24
+ }
7
25
  export { FieldStatus } from './FieldStatus';
8
- export type { FieldStatusProps, FieldStatusVariant, FieldStatusVariantMap, } from './FieldStatus';
26
+ export type { FieldStatusProps, FieldStatusVariant } from './FieldStatus';
9
27
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/FieldStatus/index.ts"],"names":[],"mappings":"AAIA;;;;;GAKG;AAEH,OAAO,EAAC,WAAW,EAAC,MAAM,eAAe,CAAC;AAC1C,YAAY,EACV,gBAAgB,EAChB,kBAAkB,EAClB,qBAAqB,GACtB,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/FieldStatus/index.ts"],"names":[],"mappings":"AAIA;;;;;GAKG;AAEH;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,IAAI,CAAC;IACf,QAAQ,EAAE,IAAI,CAAC;IACf,OAAO,EAAE,IAAI,CAAC;CACf;AAED,OAAO,EAAC,WAAW,EAAC,MAAM,eAAe,CAAC;AAC1C,YAAY,EAAC,gBAAgB,EAAE,kBAAkB,EAAC,MAAM,eAAe,CAAC"}
@@ -8,4 +8,18 @@
8
8
  * @output Exports FieldStatus and related types
9
9
  * @position Entry point for @astryxdesign/core/FieldStatus subpath export
10
10
  */
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
+ */
11
25
  export { FieldStatus } from "./FieldStatus.js";
@@ -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
  import { useId, useCallback, useRef, useState, useTransition } from 'react';
19
19
  import * as stylex from '@stylexjs/stylex';
@@ -8,7 +8,7 @@
8
8
  * - /packages/core/src/FormLayout/FormLayout.test.tsx (tests for new/changed behavior)
9
9
  * - /packages/core/src/FormLayout/index.ts (exports if types change)
10
10
  * - /apps/storybook/stories/FormLayout.stories.tsx (storybook stories)
11
- * - /packages/cli/templates/blocks/components/FormLayout/ (showcase blocks)
11
+ * - /packages/cli/assets/templates/blocks/components/FormLayout/ (showcase blocks)
12
12
  */
13
13
  import { type ReactNode } from 'react';
14
14
  import type { BaseProps } from '../BaseProps';
@@ -1 +1 @@
1
- {"version":3,"file":"FormLayout.d.ts","sourceRoot":"","sources":["../../src/FormLayout/FormLayout.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAU,KAAK,SAAS,EAAC,MAAM,OAAO,CAAC;AAC9C,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAG5C,OAAO,EAEL,KAAK,mBAAmB,EACzB,MAAM,qBAAqB,CAAC;AA0C7B,MAAM,WAAW,eAAgB,SAAQ,SAAS,CAAC,cAAc,CAAC;IAChE,wCAAwC;IACxC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAChC;;;OAGG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;IAErB;;;;;;;;;;OAUG;IACH,SAAS,CAAC,EAAE,mBAAmB,CAAC;CACjC;AAMD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,UAAU,CAAC,EACzB,QAAQ,EACR,SAAsB,EACtB,MAAM,EACN,SAAS,EACT,KAAK,EACL,GAAG,EACH,GAAG,KAAK,EACT,EAAE,eAAe,+BAuBjB;yBA/Be,UAAU"}
1
+ {"version":3,"file":"FormLayout.d.ts","sourceRoot":"","sources":["../../src/FormLayout/FormLayout.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAU,KAAK,SAAS,EAAC,MAAM,OAAO,CAAC;AAC9C,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAG5C,OAAO,EAAoB,KAAK,mBAAmB,EAAC,MAAM,qBAAqB,CAAC;AA0ChF,MAAM,WAAW,eAAgB,SAAQ,SAAS,CAAC,cAAc,CAAC;IAChE,wCAAwC;IACxC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAChC;;;OAGG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;IAErB;;;;;;;;;;OAUG;IACH,SAAS,CAAC,EAAE,mBAAmB,CAAC;CACjC;AAMD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,UAAU,CAAC,EACzB,QAAQ,EACR,SAAsB,EACtB,MAAM,EACN,SAAS,EACT,KAAK,EACL,GAAG,EACH,GAAG,KAAK,EACT,EAAE,eAAe,+BAuBjB;yBA/Be,UAAU"}
@@ -12,7 +12,7 @@
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
  import { useMemo } from 'react';
18
18
  import * as stylex from '@stylexjs/stylex';
@@ -8,7 +8,7 @@
8
8
  * - /packages/core/src/Grid/Grid.doc.mjs
9
9
  * - /packages/core/src/Grid/Grid.test.tsx
10
10
  * - /apps/storybook/stories/Grid.stories.tsx
11
- * - /packages/cli/templates/blocks/components/Grid/ (showcase blocks)
11
+ * - /packages/cli/assets/templates/blocks/components/Grid/ (showcase blocks)
12
12
  */
13
13
  import type { ReactNode } from 'react';
14
14
  import type { BaseProps } from '../BaseProps';
package/dist/Grid/Grid.js 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
  import * as stylex from '@stylexjs/stylex';
18
18
  import "../theme/tokens.stylex.js";
@@ -8,7 +8,7 @@
8
8
  * - /packages/core/src/Grid/Grid.doc.mjs
9
9
  * - /packages/core/src/Grid/Grid.test.tsx
10
10
  * - /apps/storybook/stories/Grid.stories.tsx
11
- * - /packages/cli/templates/blocks/components/Grid/ (showcase blocks)
11
+ * - /packages/cli/assets/templates/blocks/components/Grid/ (showcase blocks)
12
12
  */
13
13
  import type { ReactNode } from 'react';
14
14
  import type { BaseProps } from '../BaseProps';
@@ -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 * as stylex from '@stylexjs/stylex';
@@ -7,7 +7,7 @@
7
7
  * SYNC: When modified, update these files to stay in sync:
8
8
  * - /packages/core/src/Stack/Stack.doc.mjs
9
9
  * - /packages/core/src/HStack/HStack.test.tsx
10
- * - /packages/cli/templates/blocks/components/HStack/ (showcase blocks)
10
+ * - /packages/cli/assets/templates/blocks/components/HStack/ (showcase blocks)
11
11
  */
12
12
  import { type StackProps } from '../Stack/Stack';
13
13
  import type { StackCrossAlignment, StackMainAlignment } from '../Stack/stack.stylex';
@@ -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 } from "../Stack/Stack.js";
@@ -9,8 +9,8 @@
9
9
  * - /packages/core/src/Heading/Heading.test.tsx (tests for new/changed behavior)
10
10
  * - /packages/core/src/Text/index.ts (exports if types change)
11
11
  * - /apps/storybook/stories/Text.stories.tsx (storybook stories)
12
- * - /packages/cli/templates/blocks/components/Heading/ (showcase blocks)
13
- * - /packages/cli/templates/blocks/components/Text/ (showcase blocks)
12
+ * - /packages/cli/assets/templates/blocks/components/Heading/ (showcase blocks)
13
+ * - /packages/cli/assets/templates/blocks/components/Text/ (showcase blocks)
14
14
  */
15
15
  import { type ReactNode } from 'react';
16
16
  import type { TextColor, TextDisplay, TextJustify, WordBreak, TextWrap } from '../theme/types';
@@ -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
  import { lazy, Suspense, useRef } from 'react';
20
20
  import * as stylex from '@stylexjs/stylex';
@@ -8,7 +8,7 @@
8
8
  * - /packages/core/src/HoverCard/HoverCard.test.tsx
9
9
  * - /packages/core/src/HoverCard/index.ts
10
10
  * - /apps/storybook/stories/HoverCard.stories.tsx
11
- * - /packages/cli/templates/blocks/components/HoverCard/ (showcase blocks)
11
+ * - /packages/cli/assets/templates/blocks/components/HoverCard/ (showcase blocks)
12
12
  */
13
13
  import { type ReactElement, type ReactNode } from 'react';
14
14
  import { type HoverCardFocusTrigger } from './useHoverCard';
@@ -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
  import { useCallback, useRef } from 'react';
18
18
  import { useIsomorphicLayoutEffect } from "../hooks/useIsomorphicLayoutEffect.js";
@@ -15,7 +15,7 @@
15
15
  * - /packages/core/src/Icon/Icon.test.tsx (tests for new/changed behavior)
16
16
  * - /packages/core/src/Icon/index.ts (exports if types change)
17
17
  * - /apps/storybook/stories/Icon.stories.tsx (storybook stories)
18
- * - /packages/cli/templates/blocks/components/Icon/ (showcase blocks)
18
+ * - /packages/cli/assets/templates/blocks/components/Icon/ (showcase blocks)
19
19
  */
20
20
  import React, { type ComponentType, type SVGProps } from 'react';
21
21
  import * as stylex from '@stylexjs/stylex';
@@ -1 +1 @@
1
- {"version":3,"file":"Icon.d.ts","sourceRoot":"","sources":["../../src/Icon/Icon.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAAE,EAAC,KAAK,aAAa,EAAE,KAAK,QAAQ,EAAC,MAAM,OAAO,CAAC;AAC/D,OAAO,KAAK,MAAM,MAAM,kBAAkB,CAAC;AAC3C,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAGnD,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,sBAAsB,CAAC;AAqBnD,QAAA,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2Df,CAAC;AAEH;;;;;;;;GAQG;AACH,QAAA,MAAM,UAAU;;;;;;;;;;;;;;;;;EAiBd,CAAC;AAyCH,MAAM,MAAM,SAAS,GAAG,MAAM,OAAO,WAAW,CAAC;AACjD,MAAM,MAAM,QAAQ,GAAG,MAAM,OAAO,UAAU,CAAC;AAE/C;;;GAGG;AACH,MAAM,MAAM,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC;AAE9D;;;GAGG;AACH,MAAM,WAAW,SAAU,SAAQ,IAAI,CACrC,QAAQ,CAAC,aAAa,CAAC,EACvB,KAAK,GAAG,OAAO,CAChB;IACC,wCAAwC;IACxC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IAC/B;;;;OAIG;IACH,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC1B;;;OAGG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;;;;;;OAOG;IACH,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,EAAE,YAAY,CAAC;CACvB;AAyBD;;;;;;;GAOG;AACH,wBAAgB,IAAI,CAAC,EACnB,IAAI,EACJ,KAAiB,EACjB,IAAW,EACX,KAAK,EACL,GAAG,EACH,SAAS,EACT,KAAK,EACL,MAAM,EACN,GAAG,KAAK,EACT,EAAE,SAAS,qBA4CX;yBAtDe,IAAI;;;AA8HpB;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,KAAK,CAAC,SAAS,GAAG,QAAQ,EAChC,KAAK,CAAC,EAAE;IAAC,IAAI,CAAC,EAAE,QAAQ,CAAC;IAAC,KAAK,CAAC,EAAE,SAAS,CAAA;CAAC,GAC3C,KAAK,CAAC,SAAS,CAYjB"}
1
+ {"version":3,"file":"Icon.d.ts","sourceRoot":"","sources":["../../src/Icon/Icon.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAAE,EAAC,KAAK,aAAa,EAAE,KAAK,QAAQ,EAAC,MAAM,OAAO,CAAC;AAC/D,OAAO,KAAK,MAAM,MAAM,kBAAkB,CAAC;AAC3C,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAInD,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,sBAAsB,CAAC;AAqBnD,QAAA,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2Df,CAAC;AAEH;;;;;;;;GAQG;AACH,QAAA,MAAM,UAAU;;;;;;;;;;;;;;;;;EAiBd,CAAC;AAyCH,MAAM,MAAM,SAAS,GAAG,MAAM,OAAO,WAAW,CAAC;AACjD,MAAM,MAAM,QAAQ,GAAG,MAAM,OAAO,UAAU,CAAC;AAE/C;;;GAGG;AACH,MAAM,MAAM,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC;AAE9D;;;GAGG;AACH,MAAM,WAAW,SAAU,SAAQ,IAAI,CACrC,QAAQ,CAAC,aAAa,CAAC,EACvB,KAAK,GAAG,OAAO,CAChB;IACC,wCAAwC;IACxC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IAC/B;;;;OAIG;IACH,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC1B;;;OAGG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;;;;;;OAOG;IACH,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,EAAE,YAAY,CAAC;CACvB;AAyBD;;;;;;;GAOG;AACH,wBAAgB,IAAI,CAAC,EACnB,IAAI,EACJ,KAAiB,EACjB,IAAW,EACX,KAAK,EACL,GAAG,EACH,SAAS,EACT,KAAK,EACL,MAAM,EACN,GAAG,KAAK,EACT,EAAE,SAAS,qBA4CX;yBAtDe,IAAI;;;AA+HpB;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,KAAK,CAAC,SAAS,GAAG,QAAQ,EAChC,KAAK,CAAC,EAAE;IAAC,IAAI,CAAC,EAAE,QAAQ,CAAC;IAAC,KAAK,CAAC,EAAE,SAAS,CAAA;CAAC,GAC3C,KAAK,CAAC,SAAS,CAYjB"}
package/dist/Icon/Icon.js CHANGED
@@ -19,12 +19,13 @@
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
  import React from 'react';
25
25
  import * as stylex from '@stylexjs/stylex';
26
26
  import "../theme/tokens.stylex.js";
27
27
  import { colorVars } from "../theme/tokens.stylex.js";
28
+ import { useThemeName } from "../theme/useTheme.js";
28
29
  import { getIcon } from "./globalIconRegistry.js";
29
30
  import { mergeProps } from "../utils/index.js";
30
31
  import { themeProps } from "../utils/themeProps.js";
@@ -305,7 +306,8 @@ function IconFromRegistry({
305
306
  xstyle,
306
307
  spanProps
307
308
  }) {
308
- const resolvedIcon = getIcon(name);
309
+ const themeName = useThemeName();
310
+ const resolvedIcon = getIcon(name, themeName);
309
311
  if (resolvedIcon == null) {
310
312
  return null;
311
313
  }
@@ -2,12 +2,13 @@
2
2
  * @file globalIconRegistry.tsx
3
3
  * @input None (pure module-level state)
4
4
  * @output Exports registerIcons, getIconRegistry, getIcon, resetIcons, IconName, IconRegistry
5
- * @position Global icon registry; works in both server and client environments
5
+ * @position Global and theme-scoped icon registry; works in server and client environments
6
6
  *
7
7
  * This module has NO 'use client' directive — it's importable from RSC.
8
- * All components use getIcon() to resolve icons from this global registry.
8
+ * Components resolve semantic icons through getIcon() or the client useIcon() hook.
9
9
  */
10
10
  import type { ReactNode } from 'react';
11
+ import type { DefinedTheme } from '../theme/defineTheme';
11
12
  /**
12
13
  * Semantic icon names used internally by Astryx components.
13
14
  *
@@ -19,6 +20,7 @@ export type IconName = 'close' | 'chevronDown' | 'chevronLeft' | 'chevronRight'
19
20
  * Icon registry mapping semantic names to React nodes.
20
21
  */
21
22
  export type IconRegistry = Record<IconName, ReactNode>;
23
+ export type IconRegistrySource = DefinedTheme | string | null | undefined;
22
24
  /**
23
25
  * Register icons at the module level. Works in both server and client
24
26
  * environments. Call once at app initialization (e.g. root layout).
@@ -42,14 +44,14 @@ export declare function registerIcons(icons: Partial<IconRegistry>): void;
42
44
  * to derive valid semantic icon-name options from the same registry Icon
43
45
  * resolves against.
44
46
  */
45
- export declare function getIconRegistry(): Readonly<IconRegistry>;
47
+ export declare function getIconRegistry(source?: IconRegistrySource): Readonly<IconRegistry>;
46
48
  /**
47
49
  * Get an icon by name from the global registry, falling back to defaults.
48
50
  *
49
51
  * Works in both server and client environments.
50
52
  * Falls back to built-in default icons when no override is registered.
51
53
  */
52
- export declare function getIcon(name: IconName): ReactNode;
54
+ export declare function getIcon(name: IconName, source?: IconRegistrySource): ReactNode;
53
55
  /**
54
56
  * Reset the global registry. For testing only.
55
57
  * @internal
@@ -1 +1 @@
1
- {"version":3,"file":"globalIconRegistry.d.ts","sourceRoot":"","sources":["../../src/Icon/globalIconRegistry.tsx"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,OAAO,CAAC;AAOrC;;;;;GAKG;AAEH,MAAM,MAAM,QAAQ,GAChB,OAAO,GACP,aAAa,GACb,aAAa,GACb,cAAc,GACd,OAAO,GACP,SAAS,GACT,OAAO,GACP,SAAS,GACT,MAAM,GACN,UAAU,GACV,OAAO,GACP,cAAc,GACd,MAAM,GACN,gBAAgB,GAChB,QAAQ,GACR,SAAS,GACT,WAAW,GACX,cAAc,GACd,QAAQ,GACR,UAAU,GACV,aAAa,GACb,MAAM,GACN,aAAa,GACb,QAAQ,GACR,MAAM,GACN,YAAY,CAAC;AAEjB;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;AAQvD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI,CAEhE;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,IAAI,QAAQ,CAAC,YAAY,CAAC,CAQxD;AAED;;;;;GAKG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,QAAQ,GAAG,SAAS,CAEjD;AAED;;;GAGG;AACH,wBAAgB,UAAU,IAAI,IAAI,CAEjC"}
1
+ {"version":3,"file":"globalIconRegistry.d.ts","sourceRoot":"","sources":["../../src/Icon/globalIconRegistry.tsx"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,OAAO,CAAC;AAErC,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,sBAAsB,CAAC;AAQvD;;;;;GAKG;AAEH,MAAM,MAAM,QAAQ,GAChB,OAAO,GACP,aAAa,GACb,aAAa,GACb,cAAc,GACd,OAAO,GACP,SAAS,GACT,OAAO,GACP,SAAS,GACT,MAAM,GACN,UAAU,GACV,OAAO,GACP,cAAc,GACd,MAAM,GACN,gBAAgB,GAChB,QAAQ,GACR,SAAS,GACT,WAAW,GACX,cAAc,GACd,QAAQ,GACR,UAAU,GACV,aAAa,GACb,MAAM,GACN,aAAa,GACb,QAAQ,GACR,MAAM,GACN,YAAY,CAAC;AAEjB;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;AAEvD,MAAM,MAAM,kBAAkB,GAAG,YAAY,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;AAsB1E;;;;;;;;;;;;;GAaG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI,CAOhE;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC7B,MAAM,CAAC,EAAE,kBAAkB,GAC1B,QAAQ,CAAC,YAAY,CAAC,CAexB;AAED;;;;;GAKG;AACH,wBAAgB,OAAO,CACrB,IAAI,EAAE,QAAQ,EACd,MAAM,CAAC,EAAE,kBAAkB,GAC1B,SAAS,CAGX;AAED;;;GAGG;AACH,wBAAgB,UAAU,IAAI,IAAI,CAEjC"}
@@ -4,13 +4,15 @@
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 { defaultIcons } from "./defaultIcons.js";
14
+ import { getRegisteredTheme } from "../theme/themeRegistry.js";
15
+ import { warnOnce } from "../utils/devWarning.js";
14
16
 
15
17
  // =============================================================================
16
18
  // Types
@@ -22,7 +24,7 @@ import { defaultIcons } from "./defaultIcons.js";
22
24
  * These represent the functional purpose of each icon, not a specific
23
25
  * visual representation. Themes provide the actual icon components.
24
26
  */
25
- // SYNC: packages/cli/docs/icons.doc.mjs — update USAGE_HINTS when adding names
27
+ // SYNC: packages/cli/assets/docs/icons.doc.mjs — update USAGE_HINTS when adding names
26
28
 
27
29
  /**
28
30
  * Icon registry mapping semantic names to React nodes.
@@ -33,6 +35,15 @@ import { defaultIcons } from "./defaultIcons.js";
33
35
  // =============================================================================
34
36
 
35
37
  let globalRegistry = {};
38
+ function getThemeIconOverrides(source) {
39
+ if (source == null) {
40
+ return null;
41
+ }
42
+ if (typeof source === 'string') {
43
+ return getRegisteredTheme(source)?.icons ?? null;
44
+ }
45
+ return source.icons ?? null;
46
+ }
36
47
 
37
48
  /**
38
49
  * Register icons at the module level. Works in both server and client
@@ -49,6 +60,7 @@ let globalRegistry = {};
49
60
  * ```
50
61
  */
51
62
  export function registerIcons(icons) {
63
+ warnOnce('icon-registry:global-register-icons', 'Icon', '`registerIcons()` applies icon overrides globally. Prefer `defineTheme({ icons })` for theme-scoped icon overrides.');
52
64
  globalRegistry = {
53
65
  ...globalRegistry,
54
66
  ...icons
@@ -63,13 +75,19 @@ export function registerIcons(icons) {
63
75
  * to derive valid semantic icon-name options from the same registry Icon
64
76
  * resolves against.
65
77
  */
66
- export function getIconRegistry() {
78
+ export function getIconRegistry(source) {
67
79
  const registry = {
68
80
  ...defaultIcons
69
81
  };
70
82
  for (const name of Object.keys(globalRegistry)) {
71
83
  registry[name] = globalRegistry[name] ?? defaultIcons[name];
72
84
  }
85
+ const themeIcons = getThemeIconOverrides(source);
86
+ if (themeIcons != null) {
87
+ for (const name of Object.keys(themeIcons)) {
88
+ registry[name] = themeIcons[name] ?? registry[name];
89
+ }
90
+ }
73
91
  return registry;
74
92
  }
75
93
 
@@ -79,8 +97,9 @@ export function getIconRegistry() {
79
97
  * Works in both server and client environments.
80
98
  * Falls back to built-in default icons when no override is registered.
81
99
  */
82
- export function getIcon(name) {
83
- return globalRegistry[name] ?? defaultIcons[name];
100
+ export function getIcon(name, source) {
101
+ const themeIcons = getThemeIconOverrides(source);
102
+ return themeIcons?.[name] ?? globalRegistry[name] ?? defaultIcons[name];
84
103
  }
85
104
 
86
105
  /**
@@ -7,7 +7,8 @@
7
7
  * SYNC: When modified, update this header and /packages/core/src/Icon/Icon.doc.mjs
8
8
  */
9
9
  export { Icon, renderIconSlot } from './Icon';
10
- export type { IconProps, IconColor, IconSize, IconType, } from './Icon';
10
+ export { useIcon } from './useIcon';
11
+ export type { IconProps, IconColor, IconSize, IconType } from './Icon';
11
12
  export { registerIcons, getIconRegistry, getIcon, resetIcons, } from './globalIconRegistry';
12
- export type { IconName, IconRegistry } from './globalIconRegistry';
13
+ export type { IconName, IconRegistry, IconRegistrySource, } from './globalIconRegistry';
13
14
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Icon/index.ts"],"names":[],"mappings":"AAIA;;;;;;;GAOG;AAEH,OAAO,EAAC,IAAI,EAAE,cAAc,EAAC,MAAM,QAAQ,CAAC;AAC5C,YAAY,EACV,SAAS,EACT,SAAS,EACT,QAAQ,EACR,QAAQ,GACT,MAAM,QAAQ,CAAC;AAGhB,OAAO,EACL,aAAa,EACb,eAAe,EACf,OAAO,EACP,UAAU,GACX,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EAAC,QAAQ,EAAE,YAAY,EAAC,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Icon/index.ts"],"names":[],"mappings":"AAIA;;;;;;;GAOG;AAEH,OAAO,EAAC,IAAI,EAAE,cAAc,EAAC,MAAM,QAAQ,CAAC;AAC5C,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAC;AAClC,YAAY,EAAC,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAC,MAAM,QAAQ,CAAC;AAGrE,OAAO,EACL,aAAa,EACb,eAAe,EACf,OAAO,EACP,UAAU,GACX,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EACV,QAAQ,EACR,YAAY,EACZ,kBAAkB,GACnB,MAAM,sBAAsB,CAAC"}
@@ -11,5 +11,6 @@
11
11
  * SYNC: When modified, update this header and /packages/core/src/Icon/Icon.doc.mjs
12
12
  */
13
13
  export { Icon, renderIconSlot } from "./Icon.js";
14
+ export { useIcon } from "./useIcon.js";
14
15
  // Global registry (RSC-compatible, no 'use client')
15
16
  export { registerIcons, getIconRegistry, getIcon, resetIcons } from "./globalIconRegistry.js";
@@ -0,0 +1,14 @@
1
+ /**
2
+ * @file useIcon.ts
3
+ * @input Semantic icon name
4
+ * @output Exports useIcon hook for theme-aware icon lookup
5
+ * @position Client hook for components that render registry icons directly
6
+ */
7
+ import type { ReactNode } from 'react';
8
+ import { type IconName } from './globalIconRegistry';
9
+ /**
10
+ * Resolve a semantic icon name from the nearest Theme, falling back through
11
+ * root theme registration, global icon overrides, and built-in defaults.
12
+ */
13
+ export declare function useIcon(name: IconName): ReactNode;
14
+ //# sourceMappingURL=useIcon.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useIcon.d.ts","sourceRoot":"","sources":["../../src/Icon/useIcon.ts"],"names":[],"mappings":"AAIA;;;;;GAKG;AAEH,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,OAAO,CAAC;AAErC,OAAO,EAAU,KAAK,QAAQ,EAAC,MAAM,sBAAsB,CAAC;AAE5D;;;GAGG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,QAAQ,GAAG,SAAS,CAGjD"}
@@ -0,0 +1,21 @@
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
+ import { useThemeName } from "../theme/useTheme.js";
12
+ import { getIcon } from "./globalIconRegistry.js";
13
+
14
+ /**
15
+ * Resolve a semantic icon name from the nearest Theme, falling back through
16
+ * root theme registration, global icon overrides, and built-in defaults.
17
+ */
18
+ export function useIcon(name) {
19
+ const themeName = useThemeName();
20
+ return getIcon(name, themeName);
21
+ }
@@ -9,7 +9,7 @@
9
9
  * - /packages/core/src/IconButton/IconButton.test.tsx (tests)
10
10
  * - /packages/core/src/IconButton/index.ts (exports if types change)
11
11
  * - /apps/storybook/stories/IconButton.stories.tsx (storybook stories)
12
- * - /packages/cli/templates/blocks/components/IconButton/ (showcase blocks)
12
+ * - /packages/cli/assets/templates/blocks/components/IconButton/ (showcase blocks)
13
13
  */
14
14
  import type { ReactNode } from 'react';
15
15
  import type { ButtonProps } from '../Button/Button';
@@ -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
  import { Button } from "../Button/Button.js";
19
19
 
@@ -14,7 +14,7 @@
14
14
  * - /packages/core/src/InputGroup/InputGroup.test.tsx
15
15
  * - /packages/core/src/InputGroup/index.ts
16
16
  * - /apps/storybook/stories/InputGroup.stories.tsx
17
- * - /packages/cli/templates/blocks/components/InputGroup/
17
+ * - /packages/cli/assets/templates/blocks/components/InputGroup/
18
18
  */
19
19
  import { type ReactNode } from 'react';
20
20
  import { type InputStatus } from '../Field';
@@ -18,7 +18,7 @@
18
18
  * - /packages/core/src/InputGroup/InputGroup.test.tsx
19
19
  * - /packages/core/src/InputGroup/index.ts
20
20
  * - /apps/storybook/stories/InputGroup.stories.tsx
21
- * - /packages/cli/templates/blocks/components/InputGroup/
21
+ * - /packages/cli/assets/templates/blocks/components/InputGroup/
22
22
  */
23
23
  import { useId, useMemo } from 'react';
24
24
  import * as stylex from '@stylexjs/stylex';