@astryxdesign/core 0.1.6-canary.1a0fef5 → 0.1.6-canary.1b61ba6

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 (444) hide show
  1. package/README.md +2 -0
  2. package/dist/AlertDialog/AlertDialog.d.ts +1 -1
  3. package/dist/AlertDialog/AlertDialog.d.ts.map +1 -1
  4. package/dist/AlertDialog/AlertDialog.js +4 -1
  5. package/dist/AppShell/AppShell.d.ts.map +1 -1
  6. package/dist/AppShell/AppShell.js +3 -1
  7. package/dist/AvatarGroup/AvatarGroup.d.ts +1 -1
  8. package/dist/AvatarGroup/AvatarGroup.d.ts.map +1 -1
  9. package/dist/AvatarGroup/AvatarGroup.js +4 -1
  10. package/dist/Banner/Banner.d.ts.map +1 -1
  11. package/dist/Banner/Banner.js +8 -6
  12. package/dist/Breadcrumbs/Breadcrumbs.d.ts +1 -1
  13. package/dist/Breadcrumbs/Breadcrumbs.d.ts.map +1 -1
  14. package/dist/Breadcrumbs/Breadcrumbs.js +4 -1
  15. package/dist/Button/Button.d.ts.map +1 -1
  16. package/dist/Button/Button.js +34 -4
  17. package/dist/ButtonGroup/ButtonGroup.d.ts +20 -5
  18. package/dist/ButtonGroup/ButtonGroup.d.ts.map +1 -1
  19. package/dist/ButtonGroup/ButtonGroup.js +27 -11
  20. package/dist/Calendar/Calendar.d.ts.map +1 -1
  21. package/dist/Calendar/Calendar.js +8 -5
  22. package/dist/Carousel/Carousel.d.ts +1 -1
  23. package/dist/Carousel/Carousel.d.ts.map +1 -1
  24. package/dist/Carousel/Carousel.js +8 -5
  25. package/dist/Chat/ChatComposer.d.ts.map +1 -1
  26. package/dist/Chat/ChatComposer.js +4 -1
  27. package/dist/Chat/ChatComposerDrawer.d.ts +1 -1
  28. package/dist/Chat/ChatComposerDrawer.d.ts.map +1 -1
  29. package/dist/Chat/ChatComposerDrawer.js +9 -2
  30. package/dist/Chat/ChatComposerInput.d.ts.map +1 -1
  31. package/dist/Chat/ChatComposerInput.js +6 -2
  32. package/dist/Chat/ChatLayout.d.ts +1 -11
  33. package/dist/Chat/ChatLayout.d.ts.map +1 -1
  34. package/dist/Chat/ChatLayout.js +6 -4
  35. package/dist/Chat/ChatLayoutScrollButton.d.ts.map +1 -1
  36. package/dist/Chat/ChatLayoutScrollButton.js +4 -2
  37. package/dist/Chat/ChatMessage.d.ts +1 -1
  38. package/dist/Chat/ChatMessage.d.ts.map +1 -1
  39. package/dist/Chat/ChatMessage.js +8 -2
  40. package/dist/Chat/ChatMessageBubble.d.ts +1 -1
  41. package/dist/Chat/ChatMessageBubble.d.ts.map +1 -1
  42. package/dist/Chat/ChatMessageBubble.js +3 -1
  43. package/dist/Chat/ChatMessageList.d.ts +1 -1
  44. package/dist/Chat/ChatMessageList.d.ts.map +1 -1
  45. package/dist/Chat/ChatMessageList.js +3 -1
  46. package/dist/Chat/ChatMessageMetadata.d.ts.map +1 -1
  47. package/dist/Chat/ChatMessageMetadata.js +13 -8
  48. package/dist/Chat/ChatPastedTextToken.d.ts.map +1 -1
  49. package/dist/Chat/ChatPastedTextToken.js +3 -1
  50. package/dist/Chat/ChatSendButton.d.ts.map +1 -1
  51. package/dist/Chat/ChatSendButton.js +3 -1
  52. package/dist/Chat/index.d.ts +1 -1
  53. package/dist/Chat/index.d.ts.map +1 -1
  54. package/dist/Chat/useChatStreamScroll.d.ts +12 -1
  55. package/dist/Chat/useChatStreamScroll.d.ts.map +1 -1
  56. package/dist/Chat/useChatStreamScroll.js +43 -6
  57. package/dist/Chat/useSpeechRecognition.d.ts.map +1 -1
  58. package/dist/Chat/useSpeechRecognition.js +4 -2
  59. package/dist/Chat/useTriggerMenu.d.ts.map +1 -1
  60. package/dist/Chat/useTriggerMenu.js +4 -2
  61. package/dist/CheckboxInput/CheckboxInput.d.ts.map +1 -1
  62. package/dist/CheckboxInput/CheckboxInput.js +4 -2
  63. package/dist/CheckboxList/CheckboxList.d.ts +1 -1
  64. package/dist/CheckboxList/CheckboxList.d.ts.map +1 -1
  65. package/dist/CheckboxList/CheckboxList.js +3 -1
  66. package/dist/CheckboxList/CheckboxListItem.d.ts.map +1 -1
  67. package/dist/CheckboxList/CheckboxListItem.js +3 -1
  68. package/dist/Citation/Citation.d.ts.map +1 -1
  69. package/dist/Citation/Citation.js +10 -2
  70. package/dist/CodeBlock/CodeBlock.d.ts.map +1 -1
  71. package/dist/CodeBlock/CodeBlock.js +71 -53
  72. package/dist/CommandPalette/CommandPalette.d.ts +1 -1
  73. package/dist/CommandPalette/CommandPalette.d.ts.map +1 -1
  74. package/dist/CommandPalette/CommandPalette.js +8 -3
  75. package/dist/CommandPalette/CommandPaletteInput.d.ts +1 -1
  76. package/dist/CommandPalette/CommandPaletteInput.d.ts.map +1 -1
  77. package/dist/CommandPalette/CommandPaletteInput.js +4 -1
  78. package/dist/CommandPalette/CommandPaletteList.d.ts +1 -1
  79. package/dist/CommandPalette/CommandPaletteList.d.ts.map +1 -1
  80. package/dist/CommandPalette/CommandPaletteList.js +4 -1
  81. package/dist/ContextMenu/ContextMenu.d.ts +1 -1
  82. package/dist/ContextMenu/ContextMenu.d.ts.map +1 -1
  83. package/dist/ContextMenu/ContextMenu.js +4 -1
  84. package/dist/DateInput/DateInput.d.ts +1 -1
  85. package/dist/DateInput/DateInput.d.ts.map +1 -1
  86. package/dist/DateInput/DateInput.js +10 -5
  87. package/dist/DateRangeInput/DateRangeInput.d.ts +1 -1
  88. package/dist/DateRangeInput/DateRangeInput.d.ts.map +1 -1
  89. package/dist/DateRangeInput/DateRangeInput.js +11 -6
  90. package/dist/DateTimeInput/DateTimeInput.d.ts +1 -1
  91. package/dist/DateTimeInput/DateTimeInput.d.ts.map +1 -1
  92. package/dist/DateTimeInput/DateTimeInput.js +15 -7
  93. package/dist/Dialog/Dialog.d.ts.map +1 -1
  94. package/dist/Dialog/Dialog.js +15 -12
  95. package/dist/Dialog/DialogHeader.d.ts +1 -1
  96. package/dist/Dialog/DialogHeader.d.ts.map +1 -1
  97. package/dist/Dialog/DialogHeader.js +7 -3
  98. package/dist/DropdownMenu/DropdownMenu.d.ts +1 -1
  99. package/dist/DropdownMenu/DropdownMenu.d.ts.map +1 -1
  100. package/dist/DropdownMenu/DropdownMenu.js +11 -5
  101. package/dist/EmptyState/EmptyState.d.ts +4 -1
  102. package/dist/EmptyState/EmptyState.d.ts.map +1 -1
  103. package/dist/FileInput/FileInput.d.ts.map +1 -1
  104. package/dist/FileInput/FileInput.js +11 -1
  105. package/dist/Lightbox/Lightbox.d.ts.map +1 -1
  106. package/dist/Lightbox/Lightbox.js +6 -4
  107. package/dist/Link/Link.d.ts +5 -1
  108. package/dist/Link/Link.d.ts.map +1 -1
  109. package/dist/Link/Link.js +32 -1
  110. package/dist/Markdown/Markdown.d.ts.map +1 -1
  111. package/dist/Markdown/Markdown.js +10 -8
  112. package/dist/MobileNav/MobileNav.d.ts.map +1 -1
  113. package/dist/MobileNav/MobileNav.js +4 -2
  114. package/dist/MobileNav/MobileNavToggle.d.ts +1 -1
  115. package/dist/MobileNav/MobileNavToggle.d.ts.map +1 -1
  116. package/dist/MobileNav/MobileNavToggle.js +4 -1
  117. package/dist/MoreMenu/MoreMenu.d.ts +1 -1
  118. package/dist/MoreMenu/MoreMenu.d.ts.map +1 -1
  119. package/dist/MoreMenu/MoreMenu.js +4 -1
  120. package/dist/MultiSelector/MultiSelector.d.ts +1 -1
  121. package/dist/MultiSelector/MultiSelector.d.ts.map +1 -1
  122. package/dist/MultiSelector/MultiSelector.js +13 -6
  123. package/dist/NumberInput/NumberInput.d.ts.map +1 -1
  124. package/dist/NumberInput/NumberInput.js +5 -1
  125. package/dist/Outline/Outline.d.ts +1 -1
  126. package/dist/Outline/Outline.d.ts.map +1 -1
  127. package/dist/Outline/Outline.js +4 -1
  128. package/dist/Pagination/Pagination.d.ts +1 -1
  129. package/dist/Pagination/Pagination.d.ts.map +1 -1
  130. package/dist/Pagination/Pagination.js +38 -11
  131. package/dist/Popover/usePopover.d.ts.map +1 -1
  132. package/dist/Popover/usePopover.js +4 -1
  133. package/dist/PowerSearch/PowerSearch.d.ts +1 -1
  134. package/dist/PowerSearch/PowerSearch.d.ts.map +1 -1
  135. package/dist/PowerSearch/PowerSearch.js +22 -12
  136. package/dist/PowerSearch/PowerSearchEditPopover.d.ts +1 -1
  137. package/dist/PowerSearch/PowerSearchEditPopover.d.ts.map +1 -1
  138. package/dist/PowerSearch/PowerSearchEditPopover.js +26 -20
  139. package/dist/PowerSearch/PowerSearchToken.d.ts.map +1 -1
  140. package/dist/PowerSearch/PowerSearchToken.js +7 -3
  141. package/dist/PowerSearch/PowerSearchValueEditor.d.ts.map +1 -1
  142. package/dist/PowerSearch/PowerSearchValueEditor.js +34 -21
  143. package/dist/PowerSearch/formatFilterValue.d.ts +2 -1
  144. package/dist/PowerSearch/formatFilterValue.d.ts.map +1 -1
  145. package/dist/PowerSearch/formatFilterValue.js +19 -9
  146. package/dist/PowerSearch/index.d.ts +2 -1
  147. package/dist/PowerSearch/index.d.ts.map +1 -1
  148. package/dist/PowerSearch/index.js +1 -0
  149. package/dist/PowerSearch/resolveOperatorLabel.d.ts +23 -0
  150. package/dist/PowerSearch/resolveOperatorLabel.d.ts.map +1 -0
  151. package/dist/PowerSearch/resolveOperatorLabel.js +28 -0
  152. package/dist/PowerSearch/types.d.ts +28 -2
  153. package/dist/PowerSearch/types.d.ts.map +1 -1
  154. package/dist/PowerSearch/usePowerSearchConfig.d.ts.map +1 -1
  155. package/dist/PowerSearch/usePowerSearchConfig.js +27 -27
  156. package/dist/PowerSearch/usePowerSearchSource.d.ts.map +1 -1
  157. package/dist/PowerSearch/usePowerSearchSource.js +15 -8
  158. package/dist/Resizable/ResizeHandle.d.ts +1 -1
  159. package/dist/Resizable/ResizeHandle.d.ts.map +1 -1
  160. package/dist/Resizable/ResizeHandle.js +4 -1
  161. package/dist/Selector/Selector.d.ts.map +1 -1
  162. package/dist/Selector/Selector.js +11 -5
  163. package/dist/SideNav/SideNav.d.ts.map +1 -1
  164. package/dist/SideNav/SideNav.js +4 -2
  165. package/dist/SideNav/SideNavCollapseButton.d.ts.map +1 -1
  166. package/dist/SideNav/SideNavCollapseButton.js +3 -1
  167. package/dist/SideNav/SideNavHeading.d.ts.map +1 -1
  168. package/dist/SideNav/SideNavHeading.js +5 -3
  169. package/dist/SideNav/SideNavItem.d.ts.map +1 -1
  170. package/dist/SideNav/SideNavItem.js +7 -1
  171. package/dist/Switch/Switch.d.ts.map +1 -1
  172. package/dist/Switch/Switch.js +4 -2
  173. package/dist/TabList/TabList.d.ts +1 -1
  174. package/dist/TabList/TabList.d.ts.map +1 -1
  175. package/dist/TabList/TabList.js +4 -1
  176. package/dist/Table/BaseTable.d.ts.map +1 -1
  177. package/dist/Table/BaseTable.js +29 -16
  178. package/dist/Table/Table.d.ts.map +1 -1
  179. package/dist/Table/Table.js +5 -3
  180. package/dist/Table/plugins/columnResize/useTableColumnResize.js +1 -1
  181. package/dist/Table/plugins/filtering/useTableFiltering.d.ts.map +1 -1
  182. package/dist/Table/plugins/filtering/useTableFiltering.js +56 -19
  183. package/dist/Table/plugins/groupedRows/useTableGroupedRows.d.ts +1 -1
  184. package/dist/Table/plugins/groupedRows/useTableGroupedRows.d.ts.map +1 -1
  185. package/dist/Table/plugins/groupedRows/useTableGroupedRows.js +12 -5
  186. package/dist/Table/plugins/pagination/useTablePagination.d.ts.map +1 -1
  187. package/dist/Table/plugins/pagination/useTablePagination.js +6 -3
  188. package/dist/Table/plugins/rowExpansion/useTableRowExpansion.d.ts.map +1 -1
  189. package/dist/Table/plugins/rowExpansion/useTableRowExpansion.js +8 -6
  190. package/dist/Table/plugins/rowIndex/useTableRowIndex.d.ts +1 -1
  191. package/dist/Table/plugins/rowIndex/useTableRowIndex.js +1 -1
  192. package/dist/Table/plugins/selection/useTableSelection.d.ts.map +1 -1
  193. package/dist/Table/plugins/selection/useTableSelection.js +5 -2
  194. package/dist/Table/plugins/sortable/useTableSortable.d.ts.map +1 -1
  195. package/dist/Table/plugins/sortable/useTableSortable.js +6 -4
  196. package/dist/Table/plugins/stickyColumns/useTableStickyColumns.js +2 -2
  197. package/dist/Table/types.d.ts +17 -10
  198. package/dist/Table/types.d.ts.map +1 -1
  199. package/dist/TextInput/TextInput.d.ts.map +1 -1
  200. package/dist/TextInput/TextInput.js +5 -1
  201. package/dist/Thumbnail/Thumbnail.d.ts.map +1 -1
  202. package/dist/Thumbnail/Thumbnail.js +8 -2
  203. package/dist/TimeInput/TimeInput.d.ts +1 -1
  204. package/dist/TimeInput/TimeInput.d.ts.map +1 -1
  205. package/dist/TimeInput/TimeInput.js +7 -2
  206. package/dist/Timestamp/Timestamp.d.ts.map +1 -1
  207. package/dist/Timestamp/Timestamp.js +18 -3
  208. package/dist/Toast/Toast.d.ts.map +1 -1
  209. package/dist/Toast/Toast.js +3 -1
  210. package/dist/Toast/ToastViewport.d.ts.map +1 -1
  211. package/dist/Toast/ToastViewport.js +3 -1
  212. package/dist/Token/Token.d.ts.map +1 -1
  213. package/dist/Token/Token.js +8 -2
  214. package/dist/Tokenizer/Tokenizer.d.ts.map +1 -1
  215. package/dist/Tokenizer/Tokenizer.js +3 -1
  216. package/dist/TopNav/TopNav.d.ts +2 -1
  217. package/dist/TopNav/TopNav.d.ts.map +1 -1
  218. package/dist/TopNav/TopNav.js +4 -1
  219. package/dist/TopNav/TopNavHeading.d.ts.map +1 -1
  220. package/dist/TopNav/TopNavHeading.js +5 -3
  221. package/dist/TreeList/TreeList.d.ts.map +1 -1
  222. package/dist/TreeList/TreeList.js +5 -1
  223. package/dist/TreeList/TreeListItem.d.ts.map +1 -1
  224. package/dist/TreeList/TreeListItem.js +7 -1
  225. package/dist/Typeahead/BaseTypeahead.d.ts.map +1 -1
  226. package/dist/Typeahead/BaseTypeahead.js +8 -4
  227. package/dist/Typeahead/Typeahead.d.ts.map +1 -1
  228. package/dist/Typeahead/Typeahead.js +3 -1
  229. package/dist/VisuallyHidden/VisuallyHidden.d.ts +1 -0
  230. package/dist/VisuallyHidden/VisuallyHidden.d.ts.map +1 -1
  231. package/dist/VisuallyHidden/VisuallyHidden.js +1 -0
  232. package/dist/astryx.css +20 -2
  233. package/dist/astryx.umd.js +62 -60
  234. package/dist/astryx.umd.js.map +4 -4
  235. package/dist/authoring/doc.d.ts +145 -0
  236. package/dist/authoring/doc.d.ts.map +1 -0
  237. package/dist/authoring/doc.js +100 -0
  238. package/dist/authoring/index.d.ts +29 -0
  239. package/dist/authoring/index.d.ts.map +1 -0
  240. package/dist/authoring/index.js +28 -0
  241. package/dist/authoring/integration.d.ts +35 -0
  242. package/dist/authoring/integration.d.ts.map +1 -0
  243. package/dist/authoring/integration.js +30 -0
  244. package/dist/authoring/template.d.ts +66 -0
  245. package/dist/authoring/template.d.ts.map +1 -0
  246. package/dist/authoring/template.js +55 -0
  247. package/dist/config.d.ts +80 -0
  248. package/dist/config.d.ts.map +1 -0
  249. package/dist/config.js +40 -0
  250. package/dist/i18n/InternationalizationContext.d.ts +12 -0
  251. package/dist/i18n/InternationalizationContext.d.ts.map +1 -0
  252. package/dist/i18n/InternationalizationContext.js +29 -0
  253. package/dist/i18n/InternationalizationProvider.d.ts +62 -0
  254. package/dist/i18n/InternationalizationProvider.d.ts.map +1 -0
  255. package/dist/i18n/InternationalizationProvider.js +44 -0
  256. package/dist/i18n/index.d.ts +24 -0
  257. package/dist/i18n/index.d.ts.map +1 -0
  258. package/dist/i18n/index.js +21 -0
  259. package/dist/i18n/resolve.d.ts +22 -0
  260. package/dist/i18n/resolve.d.ts.map +1 -0
  261. package/dist/i18n/resolve.js +141 -0
  262. package/dist/i18n/translator.d.ts +25 -0
  263. package/dist/i18n/translator.d.ts.map +1 -0
  264. package/dist/i18n/translator.js +1 -0
  265. package/dist/i18n/types.d.ts +47 -0
  266. package/dist/i18n/types.d.ts.map +1 -0
  267. package/dist/i18n/types.js +1 -0
  268. package/dist/i18n/useTranslator.d.ts +15 -0
  269. package/dist/i18n/useTranslator.d.ts.map +1 -0
  270. package/dist/i18n/useTranslator.js +39 -0
  271. package/dist/index.d.ts +1 -0
  272. package/dist/index.d.ts.map +1 -1
  273. package/dist/index.js +3 -0
  274. package/locales/en.json +746 -0
  275. package/locales/pseudo.json +560 -0
  276. package/package.json +23 -2
  277. package/src/AlertDialog/AlertDialog.doc.mjs +5 -0
  278. package/src/AlertDialog/AlertDialog.tsx +4 -1
  279. package/src/AppShell/AppShell.doc.mjs +8 -2
  280. package/src/AppShell/AppShell.tsx +3 -1
  281. package/src/AvatarGroup/AvatarGroup.tsx +4 -1
  282. package/src/Banner/Banner.tsx +10 -5
  283. package/src/Breadcrumbs/Breadcrumbs.tsx +4 -1
  284. package/src/Button/Button.tsx +34 -4
  285. package/src/ButtonGroup/ButtonGroup.test.tsx +386 -2
  286. package/src/ButtonGroup/ButtonGroup.tsx +27 -11
  287. package/src/Calendar/Calendar.tsx +8 -5
  288. package/src/Card/Card.doc.mjs +3 -3
  289. package/src/Carousel/Carousel.tsx +10 -7
  290. package/src/Chat/ChatComposer.tsx +5 -1
  291. package/src/Chat/ChatComposerDrawer.tsx +9 -2
  292. package/src/Chat/ChatComposerInput.tsx +10 -4
  293. package/src/Chat/ChatLayout.test.tsx +127 -2
  294. package/src/Chat/ChatLayout.tsx +5 -12
  295. package/src/Chat/ChatLayoutScrollButton.tsx +4 -2
  296. package/src/Chat/ChatMessage.tsx +5 -1
  297. package/src/Chat/ChatMessageBubble.tsx +2 -0
  298. package/src/Chat/ChatMessageList.doc.mjs +1 -1
  299. package/src/Chat/ChatMessageList.tsx +2 -0
  300. package/src/Chat/ChatMessageMetadata.tsx +15 -9
  301. package/src/Chat/ChatPastedTextToken.tsx +3 -1
  302. package/src/Chat/ChatSendButton.tsx +3 -1
  303. package/src/Chat/ChatToolCalls.doc.mjs +1 -1
  304. package/src/Chat/index.ts +1 -0
  305. package/src/Chat/useChatStreamScroll.test.tsx +168 -0
  306. package/src/Chat/useChatStreamScroll.ts +67 -11
  307. package/src/Chat/useSpeechRecognition.ts +11 -2
  308. package/src/Chat/useTriggerMenu.tsx +4 -2
  309. package/src/CheckboxInput/CheckboxInput.test.tsx +16 -0
  310. package/src/CheckboxInput/CheckboxInput.tsx +4 -2
  311. package/src/CheckboxList/CheckboxList.doc.mjs +6 -1
  312. package/src/CheckboxList/CheckboxList.tsx +2 -0
  313. package/src/CheckboxList/CheckboxListItem.tsx +7 -1
  314. package/src/Citation/Citation.tsx +4 -2
  315. package/src/ClickableCard/ClickableCard.doc.mjs +1 -1
  316. package/src/CodeBlock/CodeBlock.tsx +91 -40
  317. package/src/CommandPalette/CommandPalette.tsx +10 -3
  318. package/src/CommandPalette/CommandPaletteInput.test.tsx +1 -1
  319. package/src/CommandPalette/CommandPaletteInput.tsx +5 -1
  320. package/src/CommandPalette/CommandPaletteList.tsx +4 -1
  321. package/src/ContextMenu/ContextMenu.tsx +4 -1
  322. package/src/DateInput/DateInput.doc.mjs +2 -2
  323. package/src/DateInput/DateInput.tsx +13 -5
  324. package/src/DateRangeInput/DateRangeInput.doc.mjs +1 -1
  325. package/src/DateRangeInput/DateRangeInput.tsx +14 -6
  326. package/src/DateTimeInput/DateTimeInput.doc.mjs +2 -2
  327. package/src/DateTimeInput/DateTimeInput.tsx +17 -7
  328. package/src/Dialog/Dialog.tsx +11 -15
  329. package/src/Dialog/DialogHeader.tsx +7 -3
  330. package/src/DropdownMenu/DropdownMenu.tsx +12 -8
  331. package/src/EmptyState/EmptyState.doc.mjs +3 -3
  332. package/src/EmptyState/EmptyState.tsx +4 -1
  333. package/src/Field/Field.doc.mjs +2 -2
  334. package/src/FileInput/FileInput.test.tsx +40 -1
  335. package/src/FileInput/FileInput.tsx +12 -1
  336. package/src/Grid/Grid.doc.mjs +5 -5
  337. package/src/InputGroup/InputGroup.doc.mjs +1 -1
  338. package/src/Layer/useLayer.doc.mjs +2 -2
  339. package/src/Lightbox/Lightbox.doc.mjs +7 -2
  340. package/src/Lightbox/Lightbox.tsx +6 -4
  341. package/src/Link/Link.test.tsx +74 -2
  342. package/src/Link/Link.tsx +48 -1
  343. package/src/Markdown/Markdown.tsx +12 -4
  344. package/src/MobileNav/MobileNav.tsx +4 -2
  345. package/src/MobileNav/MobileNavToggle.tsx +5 -3
  346. package/src/MoreMenu/MoreMenu.tsx +4 -1
  347. package/src/MultiSelector/MultiSelector.tsx +14 -5
  348. package/src/NumberInput/NumberInput.tsx +3 -1
  349. package/src/Outline/Outline.tsx +4 -1
  350. package/src/OverflowList/OverflowList.doc.mjs +2 -2
  351. package/src/Pagination/Pagination.tsx +35 -12
  352. package/src/Popover/usePopover.tsx +6 -1
  353. package/src/PowerSearch/PowerSearch.doc.mjs +9 -4
  354. package/src/PowerSearch/PowerSearch.tsx +22 -10
  355. package/src/PowerSearch/PowerSearchEditPopover.tsx +27 -20
  356. package/src/PowerSearch/PowerSearchToken.tsx +17 -6
  357. package/src/PowerSearch/PowerSearchValueEditor.tsx +34 -21
  358. package/src/PowerSearch/formatFilterValue.test.ts +282 -0
  359. package/src/PowerSearch/formatFilterValue.ts +21 -8
  360. package/src/PowerSearch/index.ts +5 -0
  361. package/src/PowerSearch/resolveOperatorLabel.ts +34 -0
  362. package/src/PowerSearch/types.ts +33 -9
  363. package/src/PowerSearch/usePowerSearchConfig.ts +59 -27
  364. package/src/PowerSearch/usePowerSearchSource.ts +17 -8
  365. package/src/RadioList/RadioList.doc.mjs +1 -1
  366. package/src/Resizable/ResizeHandle.tsx +4 -1
  367. package/src/Section/Section.doc.mjs +4 -4
  368. package/src/SelectableCard/SelectableCard.doc.mjs +1 -1
  369. package/src/Selector/Selector.tsx +11 -6
  370. package/src/SideNav/SideNav.tsx +4 -2
  371. package/src/SideNav/SideNavCollapseButton.tsx +3 -1
  372. package/src/SideNav/SideNavHeading.tsx +5 -3
  373. package/src/SideNav/SideNavItem.tsx +3 -1
  374. package/src/Slider/Slider.doc.mjs +2 -2
  375. package/src/Stack/Stack.doc.mjs +10 -10
  376. package/src/Switch/Switch.doc.mjs +2 -2
  377. package/src/Switch/Switch.test.tsx +16 -0
  378. package/src/Switch/Switch.tsx +4 -2
  379. package/src/TabList/TabList.tsx +4 -1
  380. package/src/Table/BaseTable.tsx +36 -19
  381. package/src/Table/Table.test.tsx +132 -1
  382. package/src/Table/Table.tsx +6 -4
  383. package/src/Table/plugins/columnResize/useTableColumnResize.tsx +1 -1
  384. package/src/Table/plugins/filtering/useTableFiltering.tsx +31 -30
  385. package/src/Table/plugins/groupedRows/useTableGroupedRows.tsx +7 -5
  386. package/src/Table/plugins/pagination/useTablePagination.tsx +4 -1
  387. package/src/Table/plugins/rowExpansion/useTableRowExpansion.tsx +9 -8
  388. package/src/Table/plugins/rowIndex/useTableRowIndex.tsx +1 -1
  389. package/src/Table/plugins/selection/useTableSelection.tsx +6 -7
  390. package/src/Table/plugins/sortable/useTableSortable.tsx +8 -5
  391. package/src/Table/plugins/stickyColumns/useTableStickyColumns.tsx +4 -4
  392. package/src/Table/types.ts +18 -12
  393. package/src/Table/useTableFiltering.doc.mjs +2 -2
  394. package/src/Table/useTableGroupedRows.doc.mjs +3 -3
  395. package/src/Table/useTableSortable.doc.mjs +11 -11
  396. package/src/Text/Text.doc.mjs +2 -2
  397. package/src/TextInput/TextInput.tsx +3 -1
  398. package/src/Thumbnail/Thumbnail.tsx +4 -2
  399. package/src/TimeInput/TimeInput.doc.mjs +2 -2
  400. package/src/TimeInput/TimeInput.tsx +6 -2
  401. package/src/Timestamp/Timestamp.doc.mjs +4 -4
  402. package/src/Timestamp/Timestamp.test.tsx +120 -7
  403. package/src/Timestamp/Timestamp.tsx +21 -1
  404. package/src/Toast/Toast.tsx +3 -1
  405. package/src/Toast/ToastViewport.tsx +3 -1
  406. package/src/Token/Token.tsx +4 -2
  407. package/src/Tokenizer/Tokenizer.doc.mjs +2 -2
  408. package/src/Tokenizer/Tokenizer.tsx +4 -4
  409. package/src/Toolbar/Toolbar.doc.mjs +1 -1
  410. package/src/TopNav/TopNav.doc.mjs +1 -0
  411. package/src/TopNav/TopNav.test.tsx +30 -0
  412. package/src/TopNav/TopNav.tsx +6 -4
  413. package/src/TopNav/TopNavHeading.tsx +5 -3
  414. package/src/TreeList/TreeList.tsx +5 -1
  415. package/src/TreeList/TreeListItem.tsx +6 -1
  416. package/src/Typeahead/BaseTypeahead.tsx +11 -4
  417. package/src/Typeahead/Typeahead.doc.mjs +1 -1
  418. package/src/Typeahead/Typeahead.tsx +3 -1
  419. package/src/VisuallyHidden/VisuallyHidden.tsx +1 -0
  420. package/src/authoring/doc.ts +166 -0
  421. package/src/authoring/index.test.ts +52 -0
  422. package/src/authoring/index.ts +50 -0
  423. package/src/authoring/integration.ts +42 -0
  424. package/src/authoring/template.ts +74 -0
  425. package/src/config.test.ts +16 -0
  426. package/src/config.ts +92 -0
  427. package/src/docPropLiterals.test.ts +938 -0
  428. package/src/i18n/InternationalizationContext.ts +39 -0
  429. package/src/i18n/InternationalizationProvider.doc.mjs +72 -0
  430. package/src/i18n/InternationalizationProvider.tsx +83 -0
  431. package/src/i18n/__tests__/e2e-pagination.test.tsx +172 -0
  432. package/src/i18n/__tests__/e2e-powersearch.test.tsx +130 -0
  433. package/src/i18n/__tests__/resolve.test.ts +284 -0
  434. package/src/i18n/index.ts +32 -0
  435. package/src/i18n/resolve.ts +165 -0
  436. package/src/i18n/translator.ts +31 -0
  437. package/src/i18n/types.ts +53 -0
  438. package/src/i18n/useTranslator.doc.mjs +46 -0
  439. package/src/i18n/useTranslator.ts +50 -0
  440. package/src/index.ts +3 -0
  441. package/dist/NavItem/index.d.ts +0 -9
  442. package/dist/NavItem/index.d.ts.map +0 -1
  443. package/dist/NavItem/index.js +0 -10
  444. package/src/NavItem/index.ts +0 -11
@@ -12,6 +12,9 @@
12
12
  * - Locked (default): content growth auto-scrolls to bottom via rAF spring
13
13
  * - Scrolling up (any source): unlocks immediately
14
14
  * - Scrolling settles at bottom: re-locks on scrollend
15
+ * - The first fill positions instantly (whether content is present at
16
+ * mount or arrives async); only subsequent growth springs
17
+ * - `scrollToBottom({behavior: 'instant'})` jumps in one frame, no animation
15
18
  *
16
19
  * Uses scroll direction (lastScrollTop comparison) to detect user
17
20
  * intent — works for wheel, touch, scrollbar drag, keyboard, everything.
@@ -44,6 +47,9 @@ export function useChatStreamScroll({
44
47
  const [isScrolledUp, setIsScrolledUp] = useState(false);
45
48
  const [isLocked, setIsLocked] = useState(true);
46
49
  const lockedRef = useRef(true);
50
+ // True until the initial fill has been positioned — consumed by the first
51
+ // scrollIfLocked that sees scrollable content.
52
+ const initialFillPendingRef = useRef(true);
47
53
  const velocityRef = useRef(0);
48
54
  const animatingRef = useRef(false);
49
55
  const lastTickRef = useRef(undefined);
@@ -95,14 +101,33 @@ export function useChatStreamScroll({
95
101
  }
96
102
  }, [animate]);
97
103
 
104
+ // Jump to the bottom in a single frame — cancels any in-flight spring so
105
+ // a later animation tick can't fight the assignment.
106
+ const jumpToBottom = useCallback(() => {
107
+ const el = scrollRef.current;
108
+ if (!el) {
109
+ return;
110
+ }
111
+ animatingRef.current = false;
112
+ velocityRef.current = 0;
113
+ lastTickRef.current = undefined;
114
+ el.scrollTop = el.scrollHeight - el.clientHeight;
115
+ lastScrollTopRef.current = el.scrollTop;
116
+ }, [scrollRef]);
117
+
98
118
  // --- Public API ---
99
119
 
100
- const scrollToBottom = useCallback(() => {
120
+ const scrollToBottom = useCallback(options => {
101
121
  lockedRef.current = true;
102
122
  setIsLocked(true);
103
123
  setIsScrolledUp(false);
124
+ initialFillPendingRef.current = false;
125
+ if (options?.behavior === 'instant') {
126
+ jumpToBottom();
127
+ return;
128
+ }
104
129
  startAnimation();
105
- }, [startAnimation]);
130
+ }, [startAnimation, jumpToBottom]);
106
131
  const scrollToMessage = useCallback(el => {
107
132
  const container = scrollRef.current;
108
133
  if (!container) {
@@ -143,10 +168,21 @@ export function useChatStreamScroll({
143
168
  if (!enabled) {
144
169
  return;
145
170
  }
146
- if (lockedRef.current) {
147
- startAnimation();
171
+ if (!lockedRef.current) {
172
+ return;
148
173
  }
149
- }, [enabled, startAnimation]);
174
+ // Initial fill: content appearing for the first time (e.g. an
175
+ // async-loaded conversation) positions in one frame instead of
176
+ // spring-flying from the top. Stays pending through empty/loading
177
+ // resizes until the container is actually scrollable.
178
+ const el = scrollRef.current;
179
+ if (initialFillPendingRef.current && el && el.scrollHeight > el.clientHeight) {
180
+ initialFillPendingRef.current = false;
181
+ jumpToBottom();
182
+ return;
183
+ }
184
+ startAnimation();
185
+ }, [enabled, startAnimation, jumpToBottom, scrollRef]);
150
186
 
151
187
  // --- Event listeners ---
152
188
 
@@ -230,11 +266,12 @@ export function useChatStreamScroll({
230
266
  passive: true
231
267
  });
232
268
 
233
- // Initial scroll to bottom
269
+ // Initial scroll to bottom — content already present at mount.
234
270
  requestAnimationFrame(() => {
235
271
  if (el.scrollHeight > el.clientHeight) {
236
272
  el.scrollTop = el.scrollHeight - el.clientHeight;
237
273
  lastScrollTopRef.current = el.scrollTop;
274
+ initialFillPendingRef.current = false;
238
275
  }
239
276
  });
240
277
  return () => {
@@ -1 +1 @@
1
- {"version":3,"file":"useSpeechRecognition.d.ts","sourceRoot":"","sources":["../../src/Chat/useSpeechRecognition.ts"],"names":[],"mappings":"AAqBA,MAAM,WAAW,2BAA2B;IAC1C,uDAAuD;IACvD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,4EAA4E;IAC5E,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,0DAA0D;IAC1D,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,wEAAwE;IACxE,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,kDAAkD;IAClD,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IAC/C,2DAA2D;IAC3D,YAAY,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC9D,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,8CAA8C;IAC9C,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAC,KAAK,IAAI,CAAC;IAC7D,sCAAsC;IACtC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,oCAAoC;IACpC,KAAK,CAAC,EAAE,MAAM,IAAI,CAAC;CACpB;AAED,MAAM,WAAW,0BAA0B;IACzC,sDAAsD;IACtD,WAAW,EAAE,OAAO,CAAC;IACrB,+CAA+C;IAC/C,WAAW,EAAE,OAAO,CAAC;IACrB,kDAAkD;IAClD,UAAU,EAAE,OAAO,CAAC;IACpB,iDAAiD;IACjD,MAAM,EAAE,MAAM,CAAC;IACf,qDAAqD;IACrD,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,oDAAoD;IACpD,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,2CAA2C;IAC3C,iBAAiB,EAAE,MAAM,CAAC;IAC1B,gCAAgC;IAChC,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,0CAA0C;IAC1C,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,4CAA4C;IAC5C,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,qCAAqC;IACrC,MAAM,EAAE,MAAM,IAAI,CAAC;CACpB;AAgLD,wBAAgB,sBAAsB,IAAI,YAAY,CAQrD;AAMD,wBAAgB,oBAAoB,CAClC,OAAO,GAAE,2BAAgC,GACxC,0BAA0B,CA6L5B"}
1
+ {"version":3,"file":"useSpeechRecognition.d.ts","sourceRoot":"","sources":["../../src/Chat/useSpeechRecognition.ts"],"names":[],"mappings":"AAsBA,MAAM,WAAW,2BAA2B;IAC1C,uDAAuD;IACvD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,4EAA4E;IAC5E,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,0DAA0D;IAC1D,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,wEAAwE;IACxE,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,kDAAkD;IAClD,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IAC/C,2DAA2D;IAC3D,YAAY,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC9D,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,8CAA8C;IAC9C,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAC,KAAK,IAAI,CAAC;IAC7D,sCAAsC;IACtC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,oCAAoC;IACpC,KAAK,CAAC,EAAE,MAAM,IAAI,CAAC;CACpB;AAED,MAAM,WAAW,0BAA0B;IACzC,sDAAsD;IACtD,WAAW,EAAE,OAAO,CAAC;IACrB,+CAA+C;IAC/C,WAAW,EAAE,OAAO,CAAC;IACrB,kDAAkD;IAClD,UAAU,EAAE,OAAO,CAAC;IACpB,iDAAiD;IACjD,MAAM,EAAE,MAAM,CAAC;IACf,qDAAqD;IACrD,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,oDAAoD;IACpD,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,2CAA2C;IAC3C,iBAAiB,EAAE,MAAM,CAAC;IAC1B,gCAAgC;IAChC,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,0CAA0C;IAC1C,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,4CAA4C;IAC5C,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,qCAAqC;IACrC,MAAM,EAAE,MAAM,IAAI,CAAC;CACpB;AAgLD,wBAAgB,sBAAsB,IAAI,YAAY,CAQrD;AAMD,wBAAgB,oBAAoB,CAClC,OAAO,GAAE,2BAAgC,GACxC,0BAA0B,CAqM5B"}
@@ -13,6 +13,7 @@
13
13
  * volume level from the microphone via AudioContext analyser.
14
14
  */
15
15
  import { useState, useCallback, useEffect, useMemo, useRef } from 'react';
16
+ import { useTranslator } from "../i18n/index.js";
16
17
 
17
18
  // =============================================================================
18
19
  // Types
@@ -149,6 +150,7 @@ export function getDefaultAudioContext() {
149
150
  // =============================================================================
150
151
 
151
152
  export function useSpeechRecognition(options = {}) {
153
+ const t = useTranslator();
152
154
  const {
153
155
  lang,
154
156
  continuous = true,
@@ -282,12 +284,12 @@ export function useSpeechRecognition(options = {}) {
282
284
  recognition.onnomatch = () => {
283
285
  callbacksRef.current.onError?.({
284
286
  error: 'no-speech',
285
- message: 'No speech was detected.'
287
+ message: t('@astryx.chat.speechRecognition.noSpeechDetected')
286
288
  });
287
289
  };
288
290
  recognitionRef.current = recognition;
289
291
  recognition.start();
290
- }, [lang, continuous, interimResults, startVolumePolling, stopVolumePolling]);
292
+ }, [lang, continuous, interimResults, startVolumePolling, stopVolumePolling, t]);
291
293
  const stop = useCallback(() => {
292
294
  recognitionRef.current?.stop();
293
295
  }, []);
@@ -1 +1 @@
1
- {"version":3,"file":"useTriggerMenu.d.ts","sourceRoot":"","sources":["../../src/Chat/useTriggerMenu.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAML,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAWf,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,oBAAoB,CAAC;AAEvD,OAAO,KAAK,EAAC,mBAAmB,EAAE,iBAAiB,EAAC,MAAM,qBAAqB,CAAC;AAMhF,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,OAAO,CAAC;IAClB,aAAa,EAAE,mBAAmB,GAAG,IAAI,CAAC;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,EAAE,mBAAmB,EAAE,CAAC;IACjC,WAAW,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IACpD,aAAa,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAClD,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,gBAAgB,CAAC;IACxB,gEAAgE;IAChE,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,oEAAoE;IACpE,aAAa,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,aAAa,KAAK,OAAO,CAAC;IACnD,sCAAsC;IACtC,UAAU,EAAE,MAAM,SAAS,CAAC;IAC5B,mCAAmC;IACnC,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB;;;;;;OAMG;IACH,SAAS,EAAE;QACT,IAAI,EAAE,UAAU,GAAG,SAAS,CAAC;QAC7B,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,uBAAuB,CAAC,EAAE,MAAM,CAAC;QACjC,eAAe,CAAC,EAAE,SAAS,CAAC;KAC7B,CAAC;CACH;AA+JD,wBAAgB,cAAc,CAC5B,OAAO,EAAE,qBAAqB,GAC7B,oBAAoB,CAmdtB"}
1
+ {"version":3,"file":"useTriggerMenu.d.ts","sourceRoot":"","sources":["../../src/Chat/useTriggerMenu.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAML,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAWf,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,oBAAoB,CAAC;AAGvD,OAAO,KAAK,EAAC,mBAAmB,EAAE,iBAAiB,EAAC,MAAM,qBAAqB,CAAC;AAMhF,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,OAAO,CAAC;IAClB,aAAa,EAAE,mBAAmB,GAAG,IAAI,CAAC;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,EAAE,mBAAmB,EAAE,CAAC;IACjC,WAAW,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IACpD,aAAa,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAClD,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,gBAAgB,CAAC;IACxB,gEAAgE;IAChE,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,oEAAoE;IACpE,aAAa,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,aAAa,KAAK,OAAO,CAAC;IACnD,sCAAsC;IACtC,UAAU,EAAE,MAAM,SAAS,CAAC;IAC5B,mCAAmC;IACnC,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB;;;;;;OAMG;IACH,SAAS,EAAE;QACT,IAAI,EAAE,UAAU,GAAG,SAAS,CAAC;QAC7B,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,uBAAuB,CAAC,EAAE,MAAM,CAAC;QACjC,eAAe,CAAC,EAAE,SAAS,CAAC;KAC7B,CAAC;CACH;AA+JD,wBAAgB,cAAc,CAC5B,OAAO,EAAE,qBAAqB,GAC7B,oBAAoB,CAodtB"}
@@ -26,6 +26,7 @@ import "../theme/tokens.stylex.js";
26
26
  import { colorVars, spacingVars, radiusVars, typeScaleVars, typographyVars } from "../theme/tokens.stylex.js";
27
27
  import { mergeProps, groupItems } from "../utils/index.js";
28
28
  import { themeProps } from "../utils/themeProps.js";
29
+ import { useTranslator } from "../i18n/index.js";
29
30
 
30
31
  // =============================================================================
31
32
  // Types
@@ -118,6 +119,7 @@ function deleteTriggerText(editable, triggerStart) {
118
119
  // =============================================================================
119
120
 
120
121
  export function useTriggerMenu(options) {
122
+ const t = useTranslator();
121
123
  const {
122
124
  triggers,
123
125
  editableRef,
@@ -497,7 +499,7 @@ export function useTriggerMenu(options) {
497
499
  return popover.render(/*#__PURE__*/_jsx("div", {
498
500
  id: listboxId,
499
501
  role: "listbox",
500
- "aria-label": trigger?.menuLabel ?? 'Suggestions',
502
+ "aria-label": trigger?.menuLabel ?? t('@astryx.chatTriggerMenu.suggestions'),
501
503
  ...mergeProps(themeProps('trigger-menu'), {
502
504
  className: "x9f619 x1xiyphd x1odjw0f x9epnlk xfb3i0g"
503
505
  }),
@@ -507,7 +509,7 @@ export function useTriggerMenu(options) {
507
509
  alignment: 'start',
508
510
  xstyle: [styles.popoverSurface, styles.popoverGap]
509
511
  });
510
- }, [popover, listboxId, state, selectItem, getItemId]);
512
+ }, [popover, listboxId, state, selectItem, getItemId, t]);
511
513
  return {
512
514
  state,
513
515
  handleInput,
@@ -1 +1 @@
1
- {"version":3,"file":"CheckboxInput.d.ts","sourceRoot":"","sources":["../../src/CheckboxInput/CheckboxInput.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAML,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AACf,OAAO,KAAK,MAAM,MAAM,kBAAkB,CAAC;AAY3C,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,gBAAgB,CAAC;AAG9C,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,SAAS,CAAC;AACtC,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAC;AA8IhD,QAAA,MAAM,iBAAiB;;;;;;;;;EASrB,CAAC;AAmCH,MAAM,MAAM,iBAAiB,GAAG,MAAM,OAAO,iBAAiB,CAAC;AAE/D,MAAM,WAAW,kBAAmB,SAAQ,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC;IACrE,wDAAwD;IACxD,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAClC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,WAAW,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IACxE;;OAEG;IACH,YAAY,CAAC,EAAE,CACb,OAAO,EAAE,OAAO,EAChB,CAAC,EAAE,WAAW,CAAC,gBAAgB,CAAC,KAC7B,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1B;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,KAAK,EAAE,OAAO,GAAG,eAAe,CAAC;IACjC;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;;;;;;;;;;;;;;;OAmBG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;OAIG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,iBAAiB,CAAC;IACzB;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,UAAU,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IACpD;;OAEG;IACH,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,UAAU,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IACnD;;OAEG;IACH,SAAS,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAC;IACjC;;;OAGG;IACH,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAOD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,aAAa,CAAC,EAC5B,KAAK,EACL,aAAqB,EACrB,WAAW,EACX,QAAQ,EACR,YAAY,EACZ,SAAiB,EACjB,KAAK,EACL,UAAkB,EAClB,QAAQ,EACR,eAAe,EACf,UAAkB,EAClB,UAAkB,EAClB,UAAkB,EAClB,IAAW,EACX,OAAO,EACP,MAAM,EACN,SAAS,EACT,MAAM,EACN,KAAK,EACL,MAAM,EACN,SAAS,EACT,KAAK,EACL,GAAG,EACH,GAAG,IAAI,EACR,EAAE,kBAAkB,+BAwNpB;yBAjPe,aAAa"}
1
+ {"version":3,"file":"CheckboxInput.d.ts","sourceRoot":"","sources":["../../src/CheckboxInput/CheckboxInput.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAML,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AACf,OAAO,KAAK,MAAM,MAAM,kBAAkB,CAAC;AAY3C,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,gBAAgB,CAAC;AAG9C,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,SAAS,CAAC;AACtC,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAC;AA8IhD,QAAA,MAAM,iBAAiB;;;;;;;;;EASrB,CAAC;AAmCH,MAAM,MAAM,iBAAiB,GAAG,MAAM,OAAO,iBAAiB,CAAC;AAE/D,MAAM,WAAW,kBAAmB,SAAQ,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC;IACrE,wDAAwD;IACxD,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAClC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,WAAW,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IACxE;;OAEG;IACH,YAAY,CAAC,EAAE,CACb,OAAO,EAAE,OAAO,EAChB,CAAC,EAAE,WAAW,CAAC,gBAAgB,CAAC,KAC7B,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1B;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,KAAK,EAAE,OAAO,GAAG,eAAe,CAAC;IACjC;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;;;;;;;;;;;;;;;OAmBG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;OAIG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,iBAAiB,CAAC;IACzB;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,UAAU,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IACpD;;OAEG;IACH,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,UAAU,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IACnD;;OAEG;IACH,SAAS,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAC;IACjC;;;OAGG;IACH,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAOD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,aAAa,CAAC,EAC5B,KAAK,EACL,aAAqB,EACrB,WAAW,EACX,QAAQ,EACR,YAAY,EACZ,SAAiB,EACjB,KAAK,EACL,UAAkB,EAClB,QAAQ,EACR,eAAe,EACf,UAAkB,EAClB,UAAkB,EAClB,UAAkB,EAClB,IAAW,EACX,OAAO,EACP,MAAM,EACN,SAAS,EACT,MAAM,EACN,KAAK,EACL,MAAM,EACN,SAAS,EACT,KAAK,EACL,GAAG,EACH,GAAG,IAAI,EACR,EAAE,kBAAkB,+BA0NpB;yBAnPe,aAAa"}
@@ -263,9 +263,11 @@ export function CheckboxInput({
263
263
  }, [isIndeterminate]);
264
264
 
265
265
  // Build aria-describedby from description and status message
266
- // Only include descriptionID when the element actually renders
266
+ // Only include descriptionID when the element actually renders.
267
+ // FieldLabel renders the description (with descriptionID) even when the
268
+ // label is visually hidden — it's sr-only, so keep it linked.
267
269
  const describedByParts = [];
268
- if (description && !isLabelHidden) {
270
+ if (description) {
269
271
  describedByParts.push(descriptionID);
270
272
  }
271
273
  if (status?.message) {
@@ -115,7 +115,7 @@ export interface CheckboxListProps extends Omit<BaseProps<HTMLDivElement>, 'onCh
115
115
  * </CheckboxList>
116
116
  * ```
117
117
  */
118
- export declare function CheckboxList({ label, isLabelHidden, description, status, value, onChange, changeAction, density, hasDividers, isDisabled, disabledMessage, isReadOnly, children, ref, width, xstyle, className, style, 'data-testid': dataTestId, }: CheckboxListProps): import("react").JSX.Element;
118
+ export declare function CheckboxList({ label, isLabelHidden, description, status, value, onChange, changeAction, density, hasDividers, isDisabled, disabledMessage, isReadOnly, children, ref, width, xstyle, className, style, 'data-testid': dataTestId, ...rest }: CheckboxListProps): import("react").JSX.Element;
119
119
  export declare namespace CheckboxList {
120
120
  var displayName: string;
121
121
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CheckboxList.d.ts","sourceRoot":"","sources":["../../src/CheckboxList/CheckboxList.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAML,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AACf,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,gBAAgB,CAAC;AAE9C,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAC;AAEhD,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,qBAAqB,CAAC;AAWrD,MAAM,WAAW,iBAAkB,SAAQ,IAAI,CAC7C,SAAS,CAAC,cAAc,CAAC,EACzB,UAAU,CACX;IACC,wCAAwC;IACxC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAChC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IACtC;;;;;OAKG;IACH,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1D;;;OAGG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;;;;;;OAUG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;OAIG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;OAEG;IACH,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,YAAY,CAAC,EAC3B,KAAK,EACL,aAAqB,EACrB,WAAW,EACX,MAAM,EACN,KAAK,EACL,QAAQ,EACR,YAAY,EACZ,OAAoB,EACpB,WAAmB,EACnB,UAAkB,EAClB,eAAe,EACf,UAAkB,EAClB,QAAQ,EACR,GAAG,EACH,KAAK,EACL,MAAM,EACN,SAAS,EACT,KAAK,EACL,aAAa,EAAE,UAAU,GAC1B,EAAE,iBAAiB,+BA0HnB;yBA9Ie,YAAY"}
1
+ {"version":3,"file":"CheckboxList.d.ts","sourceRoot":"","sources":["../../src/CheckboxList/CheckboxList.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAML,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AACf,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,gBAAgB,CAAC;AAE9C,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAC;AAEhD,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,qBAAqB,CAAC;AAWrD,MAAM,WAAW,iBAAkB,SAAQ,IAAI,CAC7C,SAAS,CAAC,cAAc,CAAC,EACzB,UAAU,CACX;IACC,wCAAwC;IACxC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAChC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IACtC;;;;;OAKG;IACH,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1D;;;OAGG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;;;;;;OAUG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;OAIG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;OAEG;IACH,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,YAAY,CAAC,EAC3B,KAAK,EACL,aAAqB,EACrB,WAAW,EACX,MAAM,EACN,KAAK,EACL,QAAQ,EACR,YAAY,EACZ,OAAoB,EACpB,WAAmB,EACnB,UAAkB,EAClB,eAAe,EACf,UAAkB,EAClB,QAAQ,EACR,GAAG,EACH,KAAK,EACL,MAAM,EACN,SAAS,EACT,KAAK,EACL,aAAa,EAAE,UAAU,EACzB,GAAG,IAAI,EACR,EAAE,iBAAiB,+BA2HnB;yBAhJe,YAAY"}
@@ -61,7 +61,8 @@ export function CheckboxList({
61
61
  xstyle,
62
62
  className,
63
63
  style,
64
- 'data-testid': dataTestId
64
+ 'data-testid': dataTestId,
65
+ ...rest
65
66
  }) {
66
67
  const inputID = useId();
67
68
  const labelID = useId();
@@ -108,6 +109,7 @@ export function CheckboxList({
108
109
  loadingValue
109
110
  }), [isCollectionMode, optimisticValue, handleChange, isDisabled, showsDisabledMessage, isReadOnly, loadingValue]);
110
111
  return /*#__PURE__*/_jsxs(Field, {
112
+ ...rest,
111
113
  ref: ref,
112
114
  "data-testid": dataTestId,
113
115
  label: label,
@@ -1 +1 @@
1
- {"version":3,"file":"CheckboxListItem.d.ts","sourceRoot":"","sources":["../../src/CheckboxList/CheckboxListItem.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAuB,KAAK,SAAS,EAAC,MAAM,OAAO,CAAC;AAI3D,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAqB5C,MAAM,WAAW,qBAAsB,SAAQ,SAAS,CAAC,aAAa,CAAC;IACrE;;;;;;OAMG;IACH,KAAK,EAAE,SAAS,CAAC;IACjB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;;;;OAQG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,GAAG,eAAe,CAAC;IACtC;;;OAGG;IACH,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACrC,wCAAwC;IACxC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;CAChC;AAMD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,gBAAgB,CAAC,EAC/B,KAAK,EACL,KAAK,EACL,WAAW,EACX,UAAU,EACV,UAAU,EAAE,cAAsB,EAClC,SAAS,EAAE,aAAqB,EAChC,SAAS,EACT,OAAO,EACP,GAAG,EACH,MAAM,EACN,SAAS,EACT,KAAK,EACL,OAAO,EAAE,WAAW,EACpB,GAAG,SAAS,EACb,EAAE,qBAAqB,+BAyGvB;yBAxHe,gBAAgB"}
1
+ {"version":3,"file":"CheckboxListItem.d.ts","sourceRoot":"","sources":["../../src/CheckboxList/CheckboxListItem.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAuB,KAAK,SAAS,EAAC,MAAM,OAAO,CAAC;AAI3D,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAsB5C,MAAM,WAAW,qBAAsB,SAAQ,SAAS,CAAC,aAAa,CAAC;IACrE;;;;;;OAMG;IACH,KAAK,EAAE,SAAS,CAAC;IACjB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;;;;OAQG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,GAAG,eAAe,CAAC;IACtC;;;OAGG;IACH,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACrC,wCAAwC;IACxC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;CAChC;AAMD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,gBAAgB,CAAC,EAC/B,KAAK,EACL,KAAK,EACL,WAAW,EACX,UAAU,EACV,UAAU,EAAE,cAAsB,EAClC,SAAS,EAAE,aAAqB,EAChC,SAAS,EACT,OAAO,EACP,GAAG,EACH,MAAM,EACN,SAAS,EACT,KAAK,EACL,OAAO,EAAE,WAAW,EACpB,GAAG,SAAS,EACb,EAAE,qBAAqB,+BA8GvB;yBA7He,gBAAgB"}
@@ -24,6 +24,7 @@ import { CheckboxInput } from "../CheckboxInput/CheckboxInput.js";
24
24
  import { ListItem } from "../List/ListItem.js";
25
25
  import { ListContext } from "../List/ListContext.js";
26
26
  import { CheckboxListContext } from "./CheckboxListContext.js";
27
+ import { useTranslator } from "../i18n/index.js";
27
28
 
28
29
  // =============================================================================
29
30
  // Styles
@@ -80,6 +81,7 @@ export function CheckboxListItem({
80
81
  onClick: onClickProp,
81
82
  ...restProps
82
83
  }) {
84
+ const t = useTranslator();
83
85
  const ctx = use(CheckboxListContext);
84
86
  if (ctx && ctx.value !== undefined && value === undefined) {
85
87
  throw new Error('CheckboxListItem requires a `value` prop when used inside CheckboxList with a value array.');
@@ -142,7 +144,7 @@ export function CheckboxListItem({
142
144
  className: className,
143
145
  style: style,
144
146
  startContent: /*#__PURE__*/_jsx(CheckboxInput, {
145
- label: typeof label === 'string' ? label : 'Checkbox',
147
+ label: typeof label === 'string' ? label : t('@astryx.checkboxList.item.checkbox'),
146
148
  isLabelHidden: true,
147
149
  value: resolvedChecked,
148
150
  onChange: () => handleToggle(),
@@ -1 +1 @@
1
- {"version":3,"file":"Citation.d.ts","sourceRoot":"","sources":["../../src/Citation/Citation.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;GASG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAa/B,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAG5C,MAAM,WAAW,cAAc;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,aAAc,SAAQ,SAAS,CAAC,WAAW,CAAC;IAC3D,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAC7B,MAAM,EAAE,cAAc,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAC;CAC9B;AAuGD,wBAAgB,QAAQ,CAAC,EACvB,GAAG,EACH,MAAM,EACN,MAAM,EACN,OAAiB,EACjB,MAAM,EACN,SAAS,EACT,KAAK,EACL,aAAa,EAAE,MAAM,EACrB,GAAG,IAAI,EACR,EAAE,aAAa,GAAG,KAAK,CAAC,YAAY,CA8EpC;yBAxFe,QAAQ"}
1
+ {"version":3,"file":"Citation.d.ts","sourceRoot":"","sources":["../../src/Citation/Citation.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;GASG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAa/B,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAI5C,MAAM,WAAW,cAAc;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,aAAc,SAAQ,SAAS,CAAC,WAAW,CAAC;IAC3D,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAC7B,MAAM,EAAE,cAAc,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAC;CAC9B;AAuGD,wBAAgB,QAAQ,CAAC,EACvB,GAAG,EACH,MAAM,EACN,MAAM,EACN,OAAiB,EACjB,MAAM,EACN,SAAS,EACT,KAAK,EACL,aAAa,EAAE,MAAM,EACrB,GAAG,IAAI,EACR,EAAE,aAAa,GAAG,KAAK,CAAC,YAAY,CA+EpC;yBAzFe,QAAQ"}
@@ -17,6 +17,7 @@ import "../theme/tokens.stylex.js";
17
17
  import { colorVars, spacingVars, radiusVars, typeScaleVars, fontWeightVars, borderVars, durationVars, easeVars } from "../theme/tokens.stylex.js";
18
18
  import { mergeProps } from "../utils/index.js";
19
19
  import { themeProps } from "../utils/themeProps.js";
20
+ import { useTranslator } from "../i18n/index.js";
20
21
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
21
22
  const styles = {
22
23
  label: {
@@ -90,6 +91,7 @@ export function Citation({
90
91
  'data-testid': testId,
91
92
  ...rest
92
93
  }) {
94
+ const t = useTranslator();
93
95
  const title = source.title ?? String(number);
94
96
  const href = source.url;
95
97
  const icon = source.icon;
@@ -114,7 +116,10 @@ export function Citation({
114
116
  ...rest,
115
117
  ref: elementRef,
116
118
  role: noteRole,
117
- "aria-label": `Citation ${number}: ${title}`,
119
+ "aria-label": t('@astryx.citation.label', {
120
+ number,
121
+ title
122
+ }),
118
123
  "data-testid": testId,
119
124
  ...linkProps,
120
125
  ...mergeProps(themeProps('citation', {
@@ -127,7 +132,10 @@ export function Citation({
127
132
  ...rest,
128
133
  ref: elementRef,
129
134
  role: noteRole,
130
- "aria-label": `Citation ${number}: ${title}`,
135
+ "aria-label": t('@astryx.citation.label', {
136
+ number,
137
+ title
138
+ }),
131
139
  "data-testid": testId,
132
140
  ...linkProps,
133
141
  ...mergeProps(themeProps('citation', {
@@ -1 +1 @@
1
- {"version":3,"file":"CodeBlock.d.ts","sourceRoot":"","sources":["../../src/CodeBlock/CodeBlock.tsx"],"names":[],"mappings":"AAoBA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AA0B5C,OAAO,EAAc,KAAK,qBAAqB,EAAC,MAAM,iBAAiB,CAAC;AAyTxE,MAAM,WAAW,cAAe,SAAQ,SAAS,CAAC,cAAc,CAAC;IAC/D,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACnB;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;;;;;OAQG;IACH,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,SAAS,CAAC,EAAE,CACV,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,KACb;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAC,EAAE,CAAC;IAClD,aAAa,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;IAC5C;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,qBAAqB,CAAC;CACrC;AAgOD;;;;;;;;GAQG;AACH,wBAAgB,SAAS,CAAC,EACxB,IAAI,EACJ,QAAsB,EACtB,KAAK,EACL,gBAAuB,EACvB,cAAsB,EACtB,cAAc,EACd,aAAoB,EACpB,MAAM,EACN,SAAiB,EACjB,SAAS,EACT,aAAqB,EACrB,oBAAyB,EACzB,IAAW,EACX,KAAK,EAAE,SAAyB,EAChC,SAAkB,EAClB,SAAS,EAAE,eAAe,EAC1B,aAAsB,EACtB,WAAW,EACX,MAAM,EACN,SAAS,EACT,KAAK,EACL,GAAG,EACH,GAAG,KAAK,EACT,EAAE,cAAc,qBAqOhB;yBA7Pe,SAAS"}
1
+ {"version":3,"file":"CodeBlock.d.ts","sourceRoot":"","sources":["../../src/CodeBlock/CodeBlock.tsx"],"names":[],"mappings":"AAoBA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AA2B5C,OAAO,EAAc,KAAK,qBAAqB,EAAC,MAAM,iBAAiB,CAAC;AA4VxE,MAAM,WAAW,cAAe,SAAQ,SAAS,CAAC,cAAc,CAAC;IAC/D,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACnB;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;;;;;OAQG;IACH,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,SAAS,CAAC,EAAE,CACV,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,KACb;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAC,EAAE,CAAC;IAClD,aAAa,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;IAC5C;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,qBAAqB,CAAC;CACrC;AAqPD;;;;;;;;GAQG;AACH,wBAAgB,SAAS,CAAC,EACxB,IAAI,EACJ,QAAsB,EACtB,KAAK,EACL,gBAAuB,EACvB,cAAsB,EACtB,cAAc,EACd,aAAoB,EACpB,MAAM,EACN,SAAiB,EACjB,SAAS,EACT,aAAqB,EACrB,oBAAyB,EACzB,IAAW,EACX,KAAK,EAAE,SAAyB,EAChC,SAAkB,EAClB,SAAS,EAAE,eAAe,EAC1B,aAAsB,EACtB,WAAW,EACX,MAAM,EACN,SAAS,EACT,KAAK,EACL,GAAG,EACH,GAAG,KAAK,EACT,EAAE,cAAc,qBA+NhB;yBAvPe,SAAS"}
@@ -20,6 +20,7 @@ import { tokenize, tokenizeAsync, flatTokensToLines, SYNC_TOKENIZE_THRESHOLD } f
20
20
  import { ensureHighlightStyles } from "./highlightStyles.js";
21
21
  import { applyHighlightRangesChunked } from "./highlightRanges.js";
22
22
  import { themeProps } from "../utils/themeProps.js";
23
+ import { useTranslator } from "../i18n/index.js";
23
24
  import { SyntaxTheme } from "../theme/syntax/index.js";
24
25
 
25
26
  // ---------------------------------------------------------------------------
@@ -43,6 +44,10 @@ const containerStyles = {
43
44
  $$css: true
44
45
  }
45
46
  };
47
+ const _temp = {
48
+ "--_codeblock-gutter-width": "xtk08jq",
49
+ "$$css": true
50
+ };
46
51
  const dynamicStyles = {
47
52
  width: value => [{
48
53
  kzqmXN: value != null ? "x5lhr3w" : value,
@@ -53,6 +58,9 @@ const dynamicStyles = {
53
58
  "--x-width": (val => typeof val === "number" ? val + "px" : val != null ? val : undefined)(value),
54
59
  "--x-minWidth": (val => typeof val === "number" ? val + "px" : val != null ? val : undefined)(value === 'fit-content' ? 'min(100%, 400px)' : null),
55
60
  "--x-maxWidth": (val => typeof val === "number" ? val + "px" : val != null ? val : undefined)(value === 'fit-content' ? '100%' : null)
61
+ }],
62
+ gutterWidth: digits => [_temp, {
63
+ "--x---_codeblock-gutter-width": `${digits}ch` != null ? `${digits}ch` : undefined
56
64
  }]
57
65
  };
58
66
  const styles = {
@@ -66,19 +74,6 @@ const styles = {
66
74
  kVQacm: "xb3r6kr",
67
75
  $$css: true
68
76
  },
69
- gutter: {
70
- kmuXW: "x2lah0s",
71
- k8WAf4: "x8o8v82",
72
- kZCmMZ: "x1rey3nv",
73
- kwRFfy: "x1t818jl",
74
- k9WMMc: "xp4054r",
75
- kfSwDN: "x87ps6o",
76
- kMwMTN: "xt5rlkq",
77
- kWqL5O: "x1pcaw5z",
78
- kSWEuD: "x32b0ac",
79
- k26BEO: "xtgwc6q",
80
- $$css: true
81
- },
82
77
  code: {
83
78
  k1xSpc: "x1lliihq",
84
79
  kUk6DE: "x98rzlu",
@@ -99,19 +94,24 @@ const styles = {
99
94
  kHjlTd: "x1mzt3pk",
100
95
  $$css: true
101
96
  },
102
- sizeSm: {
103
- kGuDYH: "x141an7d",
104
- $$css: true
105
- },
106
- sizeMd: {
107
- kGuDYH: "xp03k98",
97
+ codeNumbered: {
98
+ kVAEAm: "x1n2onr6",
99
+ k5JduY: "x1s928wv",
100
+ kwXMNM: "x1j6awrg",
101
+ kSy8m5: "xd54j2p",
102
+ kc1e00: "x1km86hw",
103
+ kkgrvl: "xkj6t0a",
104
+ kQlJh0: "x1p96cux",
105
+ k6vLHU: "xvsnedh",
106
+ kkQ525: "xnnzo76",
107
+ kloYau: "x2q1x1w",
108
108
  $$css: true
109
109
  },
110
- gutterSm: {
110
+ sizeSm: {
111
111
  kGuDYH: "x141an7d",
112
112
  $$css: true
113
113
  },
114
- gutterMd: {
114
+ sizeMd: {
115
115
  kGuDYH: "xp03k98",
116
116
  $$css: true
117
117
  }
@@ -131,7 +131,8 @@ const CodeChunk = /*#__PURE__*/React.memo(function CodeChunk({
131
131
  lines,
132
132
  startIndex,
133
133
  highlightSet,
134
- renderLineContent
134
+ renderLineContent,
135
+ lineNumbers
135
136
  }) {
136
137
  return /*#__PURE__*/_jsx(_Fragment, {
137
138
  children: lines.map((line, j) => {
@@ -142,23 +143,30 @@ const CodeChunk = /*#__PURE__*/React.memo(function CodeChunk({
142
143
  0: {
143
144
  className: "x17iicif"
144
145
  },
146
+ 2: {
147
+ className: "x17iicif xrvj5dj x1xx4m37 xf5zn4v x46gnpd x17gn2l9 x19ds33d x1wnbjh8 xtkarl4 x1rbqspl x3nzp0f"
148
+ },
145
149
  1: {
146
150
  className: "x17iicif xgcxg3y x1ng9b9t x1pzlopt"
151
+ },
152
+ 3: {
153
+ className: "x17iicif xrvj5dj x1xx4m37 xf5zn4v x46gnpd x17gn2l9 x19ds33d x1wnbjh8 xtkarl4 x1rbqspl x3nzp0f xgcxg3y x1ng9b9t x1pzlopt"
147
154
  }
148
- }[!!(highlightSet?.has(i + 1) ?? false) << 0],
155
+ }[!!lineNumbers << 1 | !!(highlightSet?.has(i + 1) ?? false) << 0],
149
156
  children: renderLineContent(line, i)
150
157
  }, i);
151
158
  })
152
159
  });
153
160
  });
154
- function renderLines(lines, highlightSet, renderLineContent, chunkSize = LINE_CHUNK_SIZE) {
161
+ function renderLines(lines, highlightSet, renderLineContent, lineNumbers, chunkSize = LINE_CHUNK_SIZE) {
155
162
  chunkSize = Math.max(1, Math.floor(chunkSize));
156
163
  if (lines.length < LINE_CHUNK_THRESHOLD) {
157
164
  return /*#__PURE__*/_jsx(CodeChunk, {
158
165
  lines: lines,
159
166
  startIndex: 0,
160
167
  highlightSet: highlightSet,
161
- renderLineContent: renderLineContent
168
+ renderLineContent: renderLineContent,
169
+ lineNumbers: lineNumbers
162
170
  });
163
171
  }
164
172
  const chunks = [];
@@ -178,7 +186,8 @@ function renderLines(lines, highlightSet, renderLineContent, chunkSize = LINE_CH
178
186
  lines: chunkLines,
179
187
  startIndex: start,
180
188
  highlightSet: highlightSet,
181
- renderLineContent: renderLineContent
189
+ renderLineContent: renderLineContent,
190
+ lineNumbers: lineNumbers
182
191
  })
183
192
  }, start));
184
193
  }
@@ -294,18 +303,27 @@ function SpanCodeContent({
294
303
  tokenLines,
295
304
  highlightSet,
296
305
  isWrapped,
297
- sizeStyle
306
+ sizeStyle,
307
+ hasLineNumbers,
308
+ maxDigits
298
309
  }) {
299
310
  useInsertionEffect(() => {
300
311
  ensureHighlightStyles();
301
312
  }, []);
302
313
  const renderLineContent = useCallback((line, lineIndex) => {
303
314
  const tokens = tokenLines[lineIndex] ?? [];
304
- return buildSpanLine(line, tokens);
315
+ // Wrap tokens in a single element so they occupy one grid cell when line
316
+ // numbers are on (see `lineNumbered`); an inline span is a no-op when off.
317
+ return /*#__PURE__*/_jsx("span", {
318
+ ...{
319
+ className: "xeuugli"
320
+ },
321
+ children: buildSpanLine(line, tokens)
322
+ });
305
323
  }, [tokenLines]);
306
324
  return /*#__PURE__*/_jsx("code", {
307
- ...stylex.props(styles.code, sizeStyle, isWrapped && styles.codeWrapped),
308
- children: renderLines(lines, highlightSet, renderLineContent)
325
+ ...stylex.props(styles.code, sizeStyle, isWrapped && styles.codeWrapped, hasLineNumbers && styles.codeNumbered, hasLineNumbers && dynamicStyles.gutterWidth(maxDigits)),
326
+ children: renderLines(lines, highlightSet, renderLineContent, hasLineNumbers)
309
327
  });
310
328
  }
311
329
 
@@ -318,7 +336,9 @@ function RangeCodeContent({
318
336
  tokenLines,
319
337
  highlightSet,
320
338
  isWrapped,
321
- sizeStyle
339
+ sizeStyle,
340
+ hasLineNumbers,
341
+ maxDigits
322
342
  }) {
323
343
  const codeRef = useRef(null);
324
344
  useEffect(() => {
@@ -332,11 +352,15 @@ function RangeCodeContent({
332
352
  }
333
353
  return applyHighlightRangesChunked(codeEl, tokenLines);
334
354
  }, [tokenLines]);
355
+
356
+ // Range mode keeps the line's text as a bare text node (its firstChild) so
357
+ // applyHighlightRangesChunked can map token offsets onto it \u2014 no wrapper. The
358
+ // number ::before is a pseudo-element, so it never becomes a child node here.
335
359
  const renderLineContent = useCallback(line => line || '\u200b', []);
336
360
  return /*#__PURE__*/_jsx("code", {
337
361
  ref: codeRef,
338
- ...stylex.props(styles.code, sizeStyle, isWrapped && styles.codeWrapped),
339
- children: renderLines(lines, highlightSet, renderLineContent)
362
+ ...stylex.props(styles.code, sizeStyle, isWrapped && styles.codeWrapped, hasLineNumbers && styles.codeNumbered, hasLineNumbers && dynamicStyles.gutterWidth(maxDigits)),
363
+ children: renderLines(lines, highlightSet, renderLineContent, hasLineNumbers)
340
364
  });
341
365
  }
342
366
 
@@ -378,6 +402,7 @@ export function CodeBlock({
378
402
  ref,
379
403
  ...props
380
404
  }) {
405
+ const t = useTranslator();
381
406
  const [copied, setCopied] = useState(false);
382
407
  const copyResetTimerRef = useRef(null);
383
408
  const announce = useAnnounce();
@@ -422,7 +447,8 @@ export function CodeBlock({
422
447
  }
423
448
  }, [code, onCopy, announce]);
424
449
  const sizeStyle = size === 'sm' ? styles.sizeSm : styles.sizeMd;
425
- const gutterSizeStyle = size === 'sm' ? styles.gutterSm : styles.gutterMd;
450
+ // Digits in the largest line number sizes the gutter column width.
451
+ const maxLineDigits = String(lines.length).length;
426
452
  const languageLabel = hasLanguageLabel && language !== 'plaintext' ? language : null;
427
453
  const showHeader = title != null || languageLabel != null;
428
454
  const canCollapse = isCollapsible && lines.length >= collapsibleThreshold;
@@ -448,7 +474,7 @@ export function CodeBlock({
448
474
  e.stopPropagation();
449
475
  void handleCopy();
450
476
  },
451
- "aria-label": copied ? 'Copied' : 'Copy code',
477
+ "aria-label": copied ? t('@astryx.codeBlock.copied') : t('@astryx.codeBlock.copyCode'),
452
478
  ...{
453
479
  0: {
454
480
  className: "x3nfvp2 x6s0dn4 xl56j7k x9epnlk x3kzqx6 xx3sua9 xjbqb8w xe9uy6x x1mjzq1q x1ypdohk x14ju556"
@@ -519,13 +545,13 @@ export function CodeBlock({
519
545
  ,
520
546
  tabIndex: 0,
521
547
  role: "group",
522
- "aria-label": languageLabel ?? 'Code',
548
+ "aria-label": languageLabel ?? t('@astryx.codeBlock.code'),
523
549
  ...mergeProps({
524
550
  className: "xw2csxc x1odjw0f"
525
551
  }, {
526
552
  style: scrollStyle
527
553
  }),
528
- children: /*#__PURE__*/_jsxs("div", {
554
+ children: /*#__PURE__*/_jsx("div", {
529
555
  ...{
530
556
  0: {
531
557
  className: "x78zum5 x1pshirs"
@@ -534,31 +560,23 @@ export function CodeBlock({
534
560
  className: "x78zum5 x1pshirs x1ajqlyv"
535
561
  }
536
562
  }[!!(showHeader && !hasLineNumbers) << 0],
537
- children: [hasLineNumbers && /*#__PURE__*/_jsx("div", {
538
- ...stylex.props(styles.gutter, gutterSizeStyle),
539
- "aria-hidden": "true",
540
- children: lines.map((_, i) =>
541
- /*#__PURE__*/
542
- // eslint-disable-next-line @eslint-react/no-array-index-key -- gutter line numbers are positional by definition
543
- _jsx("div", {
544
- ...{
545
- className: "x9m5x89 x17iicif"
546
- },
547
- children: i + 1
548
- }, i))
549
- }), useSpans ? /*#__PURE__*/_jsx(SpanCodeContent, {
563
+ children: useSpans ? /*#__PURE__*/_jsx(SpanCodeContent, {
550
564
  lines: lines,
551
565
  tokenLines: tokenLines,
552
566
  highlightSet: highlightSet,
553
567
  isWrapped: isWrapped,
554
- sizeStyle: sizeStyle
568
+ sizeStyle: sizeStyle,
569
+ hasLineNumbers: hasLineNumbers,
570
+ maxDigits: maxLineDigits
555
571
  }) : /*#__PURE__*/_jsx(RangeCodeContent, {
556
572
  lines: lines,
557
573
  tokenLines: tokenLines,
558
574
  highlightSet: highlightSet,
559
575
  isWrapped: isWrapped,
560
- sizeStyle: sizeStyle
561
- })]
576
+ sizeStyle: sizeStyle,
577
+ hasLineNumbers: hasLineNumbers,
578
+ maxDigits: maxLineDigits
579
+ })
562
580
  })
563
581
  });
564
582
  const block = /*#__PURE__*/_jsxs("pre", {
@@ -102,7 +102,7 @@ export interface CommandPaletteProps<T extends SearchableItem = SearchableItem>
102
102
  * />
103
103
  * ```
104
104
  */
105
- export declare function CommandPalette<T extends SearchableItem = SearchableItem>({ ref, isOpen, isInline, onOpenChange, searchSource, input, footer, renderItem, emptySearchText, emptyBootstrapText, value: controlledValue, onValueChange, label, width, maxHeight, }: CommandPaletteProps<T>): import("react").JSX.Element;
105
+ export declare function CommandPalette<T extends SearchableItem = SearchableItem>({ ref, isOpen, isInline, onOpenChange, searchSource, input, footer, renderItem, emptySearchText: emptySearchTextFromProps, emptyBootstrapText: emptyBootstrapTextFromProps, value: controlledValue, onValueChange, label: labelFromProps, width, maxHeight, }: CommandPaletteProps<T>): import("react").JSX.Element;
106
106
  export declare namespace CommandPalette {
107
107
  var displayName: string;
108
108
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CommandPalette.d.ts","sourceRoot":"","sources":["../../src/CommandPalette/CommandPalette.tsx"],"names":[],"mappings":"AAGA;;;;;;;;;GASG;AAEH,OAAO,EASL,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAGf,OAAO,KAAK,EAAC,YAAY,EAAE,cAAc,EAAC,MAAM,cAAc,CAAC;AAU/D,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAE5C,MAAM,WAAW,mBAAmB,CAClC,CAAC,SAAS,cAAc,GAAG,cAAc,CACzC,SAAQ,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,EAAE,UAAU,CAAC;IACtD,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IACnC,2CAA2C;IAC3C,MAAM,EAAE,OAAO,CAAC;IAEhB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,0DAA0D;IAC1D,YAAY,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IAExC;;;;OAIG;IACH,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;IAE9B;;;OAGG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAElB;;;OAGG;IACH,MAAM,CAAC,EAAE,SAAS,CAAC;IAEnB;;;;OAIG;IACH,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,OAAO,KAAK,SAAS,CAAC;IAEzD;;;OAGG;IACH,eAAe,CAAC,EAAE,SAAS,CAAC;IAE5B;;;OAGG;IACH,kBAAkB,CAAC,EAAE,SAAS,CAAC;IAE/B,mDAAmD;IACnD,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,8CAA8C;IAC9C,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAExC;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAExB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC7B;AA6GD;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EAAE,EACxE,GAAG,EACH,MAAM,EACN,QAAQ,EACR,YAAY,EACZ,YAAY,EACZ,KAAK,EACL,MAAM,EACN,UAAU,EACV,eAA8B,EAC9B,kBAAqC,EACrC,KAAK,EAAE,eAAe,EACtB,aAAa,EACb,KAAyB,EACzB,KAAW,EACX,SAAe,GAChB,EAAE,mBAAmB,CAAC,CAAC,CAAC,+BAoRxB;yBApSe,cAAc"}
1
+ {"version":3,"file":"CommandPalette.d.ts","sourceRoot":"","sources":["../../src/CommandPalette/CommandPalette.tsx"],"names":[],"mappings":"AAGA;;;;;;;;;GASG;AAEH,OAAO,EASL,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAGf,OAAO,KAAK,EAAC,YAAY,EAAE,cAAc,EAAC,MAAM,cAAc,CAAC;AAU/D,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAG5C,MAAM,WAAW,mBAAmB,CAClC,CAAC,SAAS,cAAc,GAAG,cAAc,CACzC,SAAQ,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,EAAE,UAAU,CAAC;IACtD,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IACnC,2CAA2C;IAC3C,MAAM,EAAE,OAAO,CAAC;IAEhB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,0DAA0D;IAC1D,YAAY,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IAExC;;;;OAIG;IACH,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;IAE9B;;;OAGG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAElB;;;OAGG;IACH,MAAM,CAAC,EAAE,SAAS,CAAC;IAEnB;;;;OAIG;IACH,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,OAAO,KAAK,SAAS,CAAC;IAEzD;;;OAGG;IACH,eAAe,CAAC,EAAE,SAAS,CAAC;IAE5B;;;OAGG;IACH,kBAAkB,CAAC,EAAE,SAAS,CAAC;IAE/B,mDAAmD;IACnD,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,8CAA8C;IAC9C,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAExC;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAExB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC7B;AA6GD;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EAAE,EACxE,GAAG,EACH,MAAM,EACN,QAAQ,EACR,YAAY,EACZ,YAAY,EACZ,KAAK,EACL,MAAM,EACN,UAAU,EACV,eAAe,EAAE,wBAAwB,EACzC,kBAAkB,EAAE,2BAA2B,EAC/C,KAAK,EAAE,eAAe,EACtB,aAAa,EACb,KAAK,EAAE,cAAc,EACrB,KAAW,EACX,SAAe,GAChB,EAAE,mBAAmB,CAAC,CAAC,CAAC,+BA0RxB;yBA1Se,cAAc"}