@astryxdesign/core 0.1.5 → 0.1.6-canary.02f2602

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 (564) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/README.md +2 -0
  3. package/dist/AlertDialog/AlertDialog.d.ts +1 -1
  4. package/dist/AlertDialog/AlertDialog.d.ts.map +1 -1
  5. package/dist/AlertDialog/AlertDialog.js +21 -18
  6. package/dist/AlertDialog/useImperativeAlertDialog.d.ts +0 -2
  7. package/dist/AlertDialog/useImperativeAlertDialog.d.ts.map +1 -1
  8. package/dist/AlertDialog/useImperativeAlertDialog.js +3 -5
  9. package/dist/AppShell/AppShell.d.ts.map +1 -1
  10. package/dist/AppShell/AppShell.js +55 -53
  11. package/dist/AspectRatio/AspectRatio.js +5 -5
  12. package/dist/Avatar/Avatar.js +19 -19
  13. package/dist/Avatar/AvatarStatusDot.js +5 -5
  14. package/dist/AvatarGroup/AvatarGroup.d.ts +1 -1
  15. package/dist/AvatarGroup/AvatarGroup.d.ts.map +1 -1
  16. package/dist/AvatarGroup/AvatarGroup.js +9 -6
  17. package/dist/AvatarGroup/AvatarGroupOverflow.js +5 -5
  18. package/dist/Badge/Badge.js +3 -3
  19. package/dist/Banner/Banner.d.ts.map +1 -1
  20. package/dist/Banner/Banner.js +32 -30
  21. package/dist/Blockquote/Blockquote.js +7 -7
  22. package/dist/Breadcrumbs/BreadcrumbItem.js +17 -17
  23. package/dist/Breadcrumbs/Breadcrumbs.d.ts +1 -1
  24. package/dist/Breadcrumbs/Breadcrumbs.d.ts.map +1 -1
  25. package/dist/Breadcrumbs/Breadcrumbs.js +11 -8
  26. package/dist/Button/Button.d.ts.map +1 -1
  27. package/dist/Button/Button.js +53 -23
  28. package/dist/ButtonGroup/ButtonGroup.d.ts +20 -5
  29. package/dist/ButtonGroup/ButtonGroup.d.ts.map +1 -1
  30. package/dist/ButtonGroup/ButtonGroup.js +34 -18
  31. package/dist/Calendar/Calendar.d.ts.map +1 -1
  32. package/dist/Calendar/Calendar.js +51 -48
  33. package/dist/Card/Card.js +3 -3
  34. package/dist/Carousel/Carousel.d.ts +1 -1
  35. package/dist/Carousel/Carousel.d.ts.map +1 -1
  36. package/dist/Carousel/Carousel.js +27 -24
  37. package/dist/Center/Center.js +3 -3
  38. package/dist/Chat/ChatComposer.d.ts.map +1 -1
  39. package/dist/Chat/ChatComposer.js +27 -24
  40. package/dist/Chat/ChatComposerDrawer.d.ts +1 -1
  41. package/dist/Chat/ChatComposerDrawer.d.ts.map +1 -1
  42. package/dist/Chat/ChatComposerDrawer.js +23 -16
  43. package/dist/Chat/ChatComposerInput.d.ts.map +1 -1
  44. package/dist/Chat/ChatComposerInput.js +20 -16
  45. package/dist/Chat/ChatDictationButton.js +10 -10
  46. package/dist/Chat/ChatLayout.d.ts +1 -11
  47. package/dist/Chat/ChatLayout.d.ts.map +1 -1
  48. package/dist/Chat/ChatLayout.js +23 -21
  49. package/dist/Chat/ChatLayoutScrollButton.d.ts.map +1 -1
  50. package/dist/Chat/ChatLayoutScrollButton.js +13 -11
  51. package/dist/Chat/ChatMessage.d.ts +1 -1
  52. package/dist/Chat/ChatMessage.d.ts.map +1 -1
  53. package/dist/Chat/ChatMessage.js +20 -14
  54. package/dist/Chat/ChatMessageBubble.d.ts +1 -1
  55. package/dist/Chat/ChatMessageBubble.d.ts.map +1 -1
  56. package/dist/Chat/ChatMessageBubble.js +10 -8
  57. package/dist/Chat/ChatMessageList.d.ts +1 -1
  58. package/dist/Chat/ChatMessageList.d.ts.map +1 -1
  59. package/dist/Chat/ChatMessageList.js +17 -15
  60. package/dist/Chat/ChatMessageMetadata.d.ts.map +1 -1
  61. package/dist/Chat/ChatMessageMetadata.js +24 -19
  62. package/dist/Chat/ChatPastedTextToken.d.ts.map +1 -1
  63. package/dist/Chat/ChatPastedTextToken.js +16 -14
  64. package/dist/Chat/ChatSendButton.d.ts.map +1 -1
  65. package/dist/Chat/ChatSendButton.js +6 -4
  66. package/dist/Chat/ChatSystemMessage.js +11 -11
  67. package/dist/Chat/ChatTokenizedText.js +8 -8
  68. package/dist/Chat/ChatToolCalls.js +73 -73
  69. package/dist/Chat/useSpeechRecognition.d.ts.map +1 -1
  70. package/dist/Chat/useSpeechRecognition.js +4 -2
  71. package/dist/Chat/useTriggerMenu.d.ts.map +1 -1
  72. package/dist/Chat/useTriggerMenu.js +19 -17
  73. package/dist/CheckboxInput/CheckboxInput.d.ts.map +1 -1
  74. package/dist/CheckboxInput/CheckboxInput.js +26 -24
  75. package/dist/CheckboxList/CheckboxList.d.ts +1 -1
  76. package/dist/CheckboxList/CheckboxList.d.ts.map +1 -1
  77. package/dist/CheckboxList/CheckboxList.js +12 -10
  78. package/dist/CheckboxList/CheckboxListItem.d.ts.map +1 -1
  79. package/dist/CheckboxList/CheckboxListItem.js +8 -6
  80. package/dist/Citation/Citation.d.ts.map +1 -1
  81. package/dist/Citation/Citation.js +20 -12
  82. package/dist/ClickableCard/ClickableCard.js +6 -6
  83. package/dist/Code/Code.js +3 -3
  84. package/dist/CodeBlock/CodeBlock.d.ts.map +1 -1
  85. package/dist/CodeBlock/CodeBlock.js +114 -96
  86. package/dist/Collapsible/Collapsible.js +11 -11
  87. package/dist/Collapsible/CollapsibleGroup.js +7 -7
  88. package/dist/CommandPalette/CommandPalette.d.ts +1 -1
  89. package/dist/CommandPalette/CommandPalette.d.ts.map +1 -1
  90. package/dist/CommandPalette/CommandPalette.js +39 -34
  91. package/dist/CommandPalette/CommandPaletteEmpty.js +3 -3
  92. package/dist/CommandPalette/CommandPaletteFooter.js +16 -16
  93. package/dist/CommandPalette/CommandPaletteGroup.js +5 -5
  94. package/dist/CommandPalette/CommandPaletteInput.d.ts +1 -1
  95. package/dist/CommandPalette/CommandPaletteInput.d.ts.map +1 -1
  96. package/dist/CommandPalette/CommandPaletteInput.js +17 -14
  97. package/dist/CommandPalette/CommandPaletteItem.js +3 -3
  98. package/dist/CommandPalette/CommandPaletteList.d.ts +1 -1
  99. package/dist/CommandPalette/CommandPaletteList.d.ts.map +1 -1
  100. package/dist/CommandPalette/CommandPaletteList.js +7 -4
  101. package/dist/ContextMenu/ContextMenu.d.ts +1 -1
  102. package/dist/ContextMenu/ContextMenu.d.ts.map +1 -1
  103. package/dist/ContextMenu/ContextMenu.js +14 -11
  104. package/dist/DateInput/DateInput.d.ts +1 -1
  105. package/dist/DateInput/DateInput.d.ts.map +1 -1
  106. package/dist/DateInput/DateInput.js +28 -23
  107. package/dist/DateRangeInput/DateRangeInput.d.ts +1 -1
  108. package/dist/DateRangeInput/DateRangeInput.d.ts.map +1 -1
  109. package/dist/DateRangeInput/DateRangeInput.js +32 -27
  110. package/dist/DateTimeInput/DateTimeInput.d.ts +1 -1
  111. package/dist/DateTimeInput/DateTimeInput.d.ts.map +1 -1
  112. package/dist/DateTimeInput/DateTimeInput.js +41 -33
  113. package/dist/Dialog/Dialog.js +9 -9
  114. package/dist/Dialog/DialogHeader.d.ts.map +1 -1
  115. package/dist/Dialog/DialogHeader.js +20 -18
  116. package/dist/Dialog/useImperativeDialog.js +3 -3
  117. package/dist/Divider/Divider.js +7 -7
  118. package/dist/DropdownMenu/DropdownMenu.d.ts +1 -1
  119. package/dist/DropdownMenu/DropdownMenu.d.ts.map +1 -1
  120. package/dist/DropdownMenu/DropdownMenu.js +21 -15
  121. package/dist/DropdownMenu/DropdownMenuItem.js +3 -3
  122. package/dist/DropdownMenu/renderDropdownItems.js +10 -10
  123. package/dist/EmptyState/EmptyState.d.ts +4 -1
  124. package/dist/EmptyState/EmptyState.d.ts.map +1 -1
  125. package/dist/EmptyState/EmptyState.js +9 -9
  126. package/dist/Field/Field.js +17 -17
  127. package/dist/Field/FieldLabel.js +15 -15
  128. package/dist/Field/InputClearButton.js +5 -5
  129. package/dist/FieldStatus/FieldStatus.js +3 -3
  130. package/dist/FileInput/FileInput.d.ts.map +1 -1
  131. package/dist/FileInput/FileInput.js +34 -30
  132. package/dist/FormLayout/FormLayout.js +5 -5
  133. package/dist/Grid/Grid.js +3 -3
  134. package/dist/Grid/GridSpan.js +3 -3
  135. package/dist/HStack/HStack.js +3 -3
  136. package/dist/Heading/Heading.js +10 -10
  137. package/dist/HoverCard/HoverCard.js +9 -9
  138. package/dist/HoverCard/useHoverCard.js +3 -3
  139. package/dist/Icon/Icon.js +11 -11
  140. package/dist/Icon/defaultIcons.js +116 -116
  141. package/dist/IconButton/IconButton.js +3 -3
  142. package/dist/InputGroup/InputGroup.js +9 -9
  143. package/dist/InputGroup/InputGroupText.js +3 -3
  144. package/dist/Item/Item.js +17 -17
  145. package/dist/Kbd/Kbd.js +5 -5
  146. package/dist/Layer/LayerProvider.js +7 -7
  147. package/dist/Layer/useLayer.js +5 -5
  148. package/dist/Layout/Layout.js +21 -21
  149. package/dist/Layout/LayoutContent.js +3 -3
  150. package/dist/Layout/LayoutFooter.js +5 -5
  151. package/dist/Layout/LayoutHeader.js +5 -5
  152. package/dist/Layout/LayoutPanel.js +3 -3
  153. package/dist/Lightbox/Lightbox.d.ts.map +1 -1
  154. package/dist/Lightbox/Lightbox.js +35 -33
  155. package/dist/Lightbox/useLightbox.d.ts +0 -1
  156. package/dist/Lightbox/useLightbox.d.ts.map +1 -1
  157. package/dist/Lightbox/useLightbox.js +3 -4
  158. package/dist/Link/Link.d.ts +5 -3
  159. package/dist/Link/Link.d.ts.map +1 -1
  160. package/dist/Link/Link.js +47 -18
  161. package/dist/Link/LinkProvider.js +3 -3
  162. package/dist/Link/useLinkify.js +3 -3
  163. package/dist/List/List.js +11 -11
  164. package/dist/List/ListItem.js +11 -11
  165. package/dist/Markdown/Markdown.d.ts.map +1 -1
  166. package/dist/Markdown/Markdown.js +111 -109
  167. package/dist/MetadataList/MetadataList.js +10 -10
  168. package/dist/MetadataList/MetadataListItem.js +15 -15
  169. package/dist/MobileNav/MobileNav.d.ts.map +1 -1
  170. package/dist/MobileNav/MobileNav.js +19 -17
  171. package/dist/MobileNav/MobileNavToggle.d.ts +1 -1
  172. package/dist/MobileNav/MobileNavToggle.d.ts.map +1 -1
  173. package/dist/MobileNav/MobileNavToggle.js +9 -6
  174. package/dist/MoreMenu/MoreMenu.d.ts +1 -1
  175. package/dist/MoreMenu/MoreMenu.d.ts.map +1 -1
  176. package/dist/MoreMenu/MoreMenu.js +7 -4
  177. package/dist/MultiSelector/MultiSelector.d.ts +1 -1
  178. package/dist/MultiSelector/MultiSelector.d.ts.map +1 -1
  179. package/dist/MultiSelector/MultiSelector.js +69 -62
  180. package/dist/NavIcon/NavIcon.js +3 -3
  181. package/dist/NavMenu/NavHeadingMenu.js +5 -5
  182. package/dist/NavMenu/NavHeadingMenuItem.js +8 -8
  183. package/dist/NumberInput/NumberInput.d.ts.map +1 -1
  184. package/dist/NumberInput/NumberInput.js +21 -17
  185. package/dist/Outline/Outline.d.ts +1 -1
  186. package/dist/Outline/Outline.d.ts.map +1 -1
  187. package/dist/Outline/Outline.js +19 -16
  188. package/dist/OverflowList/OverflowList.js +8 -8
  189. package/dist/Overlay/Overlay.js +3 -3
  190. package/dist/Overlay/OverlayScrim.js +5 -5
  191. package/dist/Overlay/useOverlay.d.ts +0 -3
  192. package/dist/Overlay/useOverlay.d.ts.map +1 -1
  193. package/dist/Overlay/useOverlay.js +3 -6
  194. package/dist/Pagination/Pagination.d.ts +1 -1
  195. package/dist/Pagination/Pagination.d.ts.map +1 -1
  196. package/dist/Pagination/Pagination.js +73 -46
  197. package/dist/Popover/Popover.js +16 -16
  198. package/dist/Popover/usePopover.d.ts.map +1 -1
  199. package/dist/Popover/usePopover.js +11 -8
  200. package/dist/PowerSearch/PowerSearch.d.ts +1 -1
  201. package/dist/PowerSearch/PowerSearch.d.ts.map +1 -1
  202. package/dist/PowerSearch/PowerSearch.js +95 -85
  203. package/dist/PowerSearch/PowerSearchEditPopover.d.ts +1 -1
  204. package/dist/PowerSearch/PowerSearchEditPopover.d.ts.map +1 -1
  205. package/dist/PowerSearch/PowerSearchEditPopover.js +109 -103
  206. package/dist/PowerSearch/PowerSearchFilterEditor.js +3 -3
  207. package/dist/PowerSearch/PowerSearchToken.d.ts.map +1 -1
  208. package/dist/PowerSearch/PowerSearchToken.js +12 -8
  209. package/dist/PowerSearch/PowerSearchValueEditor.d.ts.map +1 -1
  210. package/dist/PowerSearch/PowerSearchValueEditor.js +88 -75
  211. package/dist/PowerSearch/formatFilterValue.d.ts +2 -1
  212. package/dist/PowerSearch/formatFilterValue.d.ts.map +1 -1
  213. package/dist/PowerSearch/formatFilterValue.js +19 -9
  214. package/dist/PowerSearch/index.d.ts +2 -1
  215. package/dist/PowerSearch/index.d.ts.map +1 -1
  216. package/dist/PowerSearch/index.js +1 -0
  217. package/dist/PowerSearch/resolveOperatorLabel.d.ts +23 -0
  218. package/dist/PowerSearch/resolveOperatorLabel.d.ts.map +1 -0
  219. package/dist/PowerSearch/resolveOperatorLabel.js +28 -0
  220. package/dist/PowerSearch/types.d.ts +28 -2
  221. package/dist/PowerSearch/types.d.ts.map +1 -1
  222. package/dist/PowerSearch/usePowerSearchConfig.d.ts.map +1 -1
  223. package/dist/PowerSearch/usePowerSearchConfig.js +27 -27
  224. package/dist/PowerSearch/usePowerSearchSource.d.ts.map +1 -1
  225. package/dist/PowerSearch/usePowerSearchSource.js +15 -8
  226. package/dist/ProgressBar/ProgressBar.js +13 -13
  227. package/dist/RadioList/RadioList.js +7 -7
  228. package/dist/RadioList/RadioListItem.js +18 -18
  229. package/dist/Resizable/ResizeHandle.d.ts +1 -1
  230. package/dist/Resizable/ResizeHandle.d.ts.map +1 -1
  231. package/dist/Resizable/ResizeHandle.js +10 -7
  232. package/dist/Section/Section.js +5 -5
  233. package/dist/SegmentedControl/SegmentedControl.js +5 -5
  234. package/dist/SegmentedControl/SegmentedControlItem.js +7 -7
  235. package/dist/SelectableCard/SelectableCard.js +5 -5
  236. package/dist/Selector/Selector.d.ts.map +1 -1
  237. package/dist/Selector/Selector.js +57 -51
  238. package/dist/Selector/SelectorOption.js +3 -3
  239. package/dist/SideNav/SideNav.d.ts.map +1 -1
  240. package/dist/SideNav/SideNav.js +38 -36
  241. package/dist/SideNav/SideNavCollapseButton.d.ts.map +1 -1
  242. package/dist/SideNav/SideNavCollapseButton.js +8 -6
  243. package/dist/SideNav/SideNavHeading.d.ts.map +1 -1
  244. package/dist/SideNav/SideNavHeading.js +92 -90
  245. package/dist/SideNav/SideNavItem.d.ts.map +1 -1
  246. package/dist/SideNav/SideNavItem.js +49 -43
  247. package/dist/SideNav/SideNavSection.js +14 -14
  248. package/dist/Skeleton/Skeleton.js +3 -3
  249. package/dist/Slider/Slider.js +23 -23
  250. package/dist/Spinner/Spinner.js +9 -9
  251. package/dist/StatusDot/StatusDot.js +5 -5
  252. package/dist/Switch/Switch.d.ts.map +1 -1
  253. package/dist/Switch/Switch.js +29 -27
  254. package/dist/TabList/Tab.js +18 -18
  255. package/dist/TabList/TabList.d.ts +1 -1
  256. package/dist/TabList/TabList.d.ts.map +1 -1
  257. package/dist/TabList/TabList.js +9 -6
  258. package/dist/TabList/TabMenu.js +23 -23
  259. package/dist/Table/BaseTable.d.ts.map +1 -1
  260. package/dist/Table/BaseTable.js +39 -37
  261. package/dist/Table/Table.d.ts.map +1 -1
  262. package/dist/Table/Table.js +10 -8
  263. package/dist/Table/TableBody.js +3 -3
  264. package/dist/Table/TableCell.js +3 -3
  265. package/dist/Table/TableFooter.js +3 -3
  266. package/dist/Table/TableHeader.js +3 -3
  267. package/dist/Table/TableHeaderCell.js +3 -3
  268. package/dist/Table/TableRow.js +5 -5
  269. package/dist/Table/index.d.ts +4 -0
  270. package/dist/Table/index.d.ts.map +1 -1
  271. package/dist/Table/index.js +2 -0
  272. package/dist/Table/plugins/columnResize/useTableColumnResize.js +9 -9
  273. package/dist/Table/plugins/filtering/useTableFiltering.d.ts.map +1 -1
  274. package/dist/Table/plugins/filtering/useTableFiltering.js +127 -90
  275. package/dist/Table/plugins/groupedRows/index.d.ts +3 -0
  276. package/dist/Table/plugins/groupedRows/index.d.ts.map +1 -0
  277. package/dist/Table/plugins/groupedRows/index.js +3 -0
  278. package/dist/Table/plugins/groupedRows/useTableGroupedRows.d.ts +78 -0
  279. package/dist/Table/plugins/groupedRows/useTableGroupedRows.d.ts.map +1 -0
  280. package/dist/Table/plugins/groupedRows/useTableGroupedRows.js +257 -0
  281. package/dist/Table/plugins/pagination/useTablePagination.d.ts.map +1 -1
  282. package/dist/Table/plugins/pagination/useTablePagination.js +12 -9
  283. package/dist/Table/plugins/rowExpansion/useTableRowExpansion.d.ts +1 -1
  284. package/dist/Table/plugins/rowExpansion/useTableRowExpansion.d.ts.map +1 -1
  285. package/dist/Table/plugins/rowExpansion/useTableRowExpansion.js +30 -28
  286. package/dist/Table/plugins/rowIndex/index.d.ts +3 -0
  287. package/dist/Table/plugins/rowIndex/index.d.ts.map +1 -0
  288. package/dist/Table/plugins/rowIndex/index.js +3 -0
  289. package/dist/Table/plugins/rowIndex/useTableRowIndex.d.ts +50 -0
  290. package/dist/Table/plugins/rowIndex/useTableRowIndex.d.ts.map +1 -0
  291. package/dist/Table/plugins/rowIndex/useTableRowIndex.js +91 -0
  292. package/dist/Table/plugins/selection/useTableSelection.d.ts.map +1 -1
  293. package/dist/Table/plugins/selection/useTableSelection.js +23 -20
  294. package/dist/Table/plugins/sortable/useTableSortable.d.ts.map +1 -1
  295. package/dist/Table/plugins/sortable/useTableSortable.js +23 -21
  296. package/dist/Table/tableContextMenu.js +9 -9
  297. package/dist/Text/Text.js +10 -10
  298. package/dist/TextArea/TextArea.js +14 -14
  299. package/dist/TextInput/TextInput.d.ts.map +1 -1
  300. package/dist/TextInput/TextInput.js +20 -16
  301. package/dist/Thumbnail/Thumbnail.d.ts.map +1 -1
  302. package/dist/Thumbnail/Thumbnail.js +37 -31
  303. package/dist/TimeInput/TimeInput.d.ts +1 -1
  304. package/dist/TimeInput/TimeInput.d.ts.map +1 -1
  305. package/dist/TimeInput/TimeInput.js +28 -23
  306. package/dist/Timestamp/Timestamp.d.ts.map +1 -1
  307. package/dist/Timestamp/Timestamp.js +29 -14
  308. package/dist/Toast/Toast.d.ts.map +1 -1
  309. package/dist/Toast/Toast.js +17 -15
  310. package/dist/Toast/ToastViewport.d.ts.map +1 -1
  311. package/dist/Toast/ToastViewport.js +14 -12
  312. package/dist/Toast/useToast.js +4 -4
  313. package/dist/ToggleButton/ToggleButton.js +12 -12
  314. package/dist/ToggleButton/ToggleButtonGroup.js +5 -5
  315. package/dist/Token/Token.d.ts.map +1 -1
  316. package/dist/Token/Token.js +29 -23
  317. package/dist/Tokenizer/Tokenizer.d.ts.map +1 -1
  318. package/dist/Tokenizer/Tokenizer.js +33 -31
  319. package/dist/Toolbar/Toolbar.js +18 -18
  320. package/dist/Tooltip/Tooltip.js +11 -11
  321. package/dist/Tooltip/useTooltip.js +3 -3
  322. package/dist/TopNav/TopNav.d.ts +2 -1
  323. package/dist/TopNav/TopNav.d.ts.map +1 -1
  324. package/dist/TopNav/TopNav.js +36 -33
  325. package/dist/TopNav/TopNavHeading.d.ts.map +1 -1
  326. package/dist/TopNav/TopNavHeading.js +72 -70
  327. package/dist/TopNav/TopNavItem.js +5 -5
  328. package/dist/TopNav/TopNavMegaMenu.js +30 -30
  329. package/dist/TopNav/TopNavMegaMenuFeaturedCard.js +10 -10
  330. package/dist/TopNav/TopNavMegaMenuItem.js +16 -16
  331. package/dist/TopNav/TopNavMenu.js +32 -32
  332. package/dist/TreeList/TreeList.d.ts.map +1 -1
  333. package/dist/TreeList/TreeList.js +13 -9
  334. package/dist/TreeList/TreeListBranches.js +11 -11
  335. package/dist/TreeList/TreeListItem.d.ts.map +1 -1
  336. package/dist/TreeList/TreeListItem.js +37 -31
  337. package/dist/Typeahead/BaseTypeahead.d.ts.map +1 -1
  338. package/dist/Typeahead/BaseTypeahead.js +26 -22
  339. package/dist/Typeahead/Typeahead.d.ts.map +1 -1
  340. package/dist/Typeahead/Typeahead.js +15 -13
  341. package/dist/Typeahead/TypeaheadItem.js +10 -10
  342. package/dist/VStack/VStack.js +3 -3
  343. package/dist/VisuallyHidden/VisuallyHidden.d.ts +1 -3
  344. package/dist/VisuallyHidden/VisuallyHidden.d.ts.map +1 -1
  345. package/dist/VisuallyHidden/VisuallyHidden.js +1 -3
  346. package/dist/astryx.css +20 -2
  347. package/dist/astryx.umd.js +66 -64
  348. package/dist/astryx.umd.js.map +4 -4
  349. package/dist/authoring/doc.d.ts +145 -0
  350. package/dist/authoring/doc.d.ts.map +1 -0
  351. package/dist/authoring/doc.js +100 -0
  352. package/dist/authoring/index.d.ts +29 -0
  353. package/dist/authoring/index.d.ts.map +1 -0
  354. package/dist/authoring/index.js +28 -0
  355. package/dist/authoring/integration.d.ts +35 -0
  356. package/dist/authoring/integration.d.ts.map +1 -0
  357. package/dist/authoring/integration.js +30 -0
  358. package/dist/authoring/template.d.ts +66 -0
  359. package/dist/authoring/template.d.ts.map +1 -0
  360. package/dist/authoring/template.js +55 -0
  361. package/dist/config.d.ts +80 -0
  362. package/dist/config.d.ts.map +1 -0
  363. package/dist/config.js +40 -0
  364. package/dist/hooks/useKeyboardHint.js +9 -9
  365. package/dist/i18n/InternationalizationContext.d.ts +12 -0
  366. package/dist/i18n/InternationalizationContext.d.ts.map +1 -0
  367. package/dist/i18n/InternationalizationContext.js +29 -0
  368. package/dist/i18n/InternationalizationProvider.d.ts +62 -0
  369. package/dist/i18n/InternationalizationProvider.d.ts.map +1 -0
  370. package/dist/i18n/InternationalizationProvider.js +44 -0
  371. package/dist/i18n/index.d.ts +24 -0
  372. package/dist/i18n/index.d.ts.map +1 -0
  373. package/dist/i18n/index.js +21 -0
  374. package/dist/i18n/resolve.d.ts +22 -0
  375. package/dist/i18n/resolve.d.ts.map +1 -0
  376. package/dist/i18n/resolve.js +141 -0
  377. package/dist/i18n/translator.d.ts +25 -0
  378. package/dist/i18n/translator.d.ts.map +1 -0
  379. package/dist/i18n/translator.js +1 -0
  380. package/dist/i18n/types.d.ts +47 -0
  381. package/dist/i18n/types.d.ts.map +1 -0
  382. package/dist/i18n/types.js +1 -0
  383. package/dist/i18n/useTranslator.d.ts +15 -0
  384. package/dist/i18n/useTranslator.d.ts.map +1 -0
  385. package/dist/i18n/useTranslator.js +39 -0
  386. package/dist/index.d.ts +1 -0
  387. package/dist/index.d.ts.map +1 -1
  388. package/dist/index.js +3 -0
  389. package/dist/theme/MediaTheme.js +3 -3
  390. package/dist/theme/Theme.js +7 -7
  391. package/dist/theme/syntax/SyntaxTheme.js +5 -5
  392. package/locales/en.json +746 -0
  393. package/locales/pseudo.json +560 -0
  394. package/package.json +24 -3
  395. package/src/AlertDialog/AlertDialog.doc.mjs +5 -0
  396. package/src/AlertDialog/AlertDialog.tsx +4 -1
  397. package/src/AlertDialog/useImperativeAlertDialog.tsx +0 -2
  398. package/src/AppShell/AppShell.doc.mjs +8 -2
  399. package/src/AppShell/AppShell.tsx +3 -1
  400. package/src/AvatarGroup/AvatarGroup.tsx +4 -1
  401. package/src/Banner/Banner.tsx +10 -5
  402. package/src/Breadcrumbs/Breadcrumbs.tsx +4 -1
  403. package/src/Button/Button.tsx +34 -4
  404. package/src/ButtonGroup/ButtonGroup.test.tsx +386 -2
  405. package/src/ButtonGroup/ButtonGroup.tsx +27 -11
  406. package/src/Calendar/Calendar.tsx +8 -5
  407. package/src/Card/Card.doc.mjs +3 -3
  408. package/src/Carousel/Carousel.tsx +10 -7
  409. package/src/Chat/ChatComposer.tsx +5 -1
  410. package/src/Chat/ChatComposerDrawer.tsx +9 -2
  411. package/src/Chat/ChatComposerInput.tsx +10 -4
  412. package/src/Chat/ChatLayout.tsx +5 -12
  413. package/src/Chat/ChatLayoutScrollButton.tsx +4 -2
  414. package/src/Chat/ChatMessage.tsx +5 -1
  415. package/src/Chat/ChatMessageBubble.tsx +2 -0
  416. package/src/Chat/ChatMessageList.doc.mjs +1 -1
  417. package/src/Chat/ChatMessageList.tsx +2 -0
  418. package/src/Chat/ChatMessageMetadata.tsx +15 -9
  419. package/src/Chat/ChatPastedTextToken.tsx +3 -1
  420. package/src/Chat/ChatSendButton.tsx +3 -1
  421. package/src/Chat/ChatToolCalls.doc.mjs +1 -1
  422. package/src/Chat/useSpeechRecognition.ts +11 -2
  423. package/src/Chat/useTriggerMenu.tsx +4 -2
  424. package/src/CheckboxInput/CheckboxInput.test.tsx +16 -0
  425. package/src/CheckboxInput/CheckboxInput.tsx +4 -2
  426. package/src/CheckboxList/CheckboxList.doc.mjs +6 -1
  427. package/src/CheckboxList/CheckboxList.tsx +2 -0
  428. package/src/CheckboxList/CheckboxListItem.tsx +7 -1
  429. package/src/Citation/Citation.tsx +4 -2
  430. package/src/ClickableCard/ClickableCard.doc.mjs +1 -1
  431. package/src/CodeBlock/CodeBlock.tsx +91 -40
  432. package/src/Collapsible/Collapsible.doc.mjs +3 -3
  433. package/src/CommandPalette/CommandPalette.tsx +10 -3
  434. package/src/CommandPalette/CommandPaletteInput.test.tsx +1 -1
  435. package/src/CommandPalette/CommandPaletteInput.tsx +5 -1
  436. package/src/CommandPalette/CommandPaletteList.tsx +4 -1
  437. package/src/ContextMenu/ContextMenu.tsx +4 -1
  438. package/src/DateInput/DateInput.doc.mjs +2 -2
  439. package/src/DateInput/DateInput.tsx +13 -5
  440. package/src/DateRangeInput/DateRangeInput.doc.mjs +7 -7
  441. package/src/DateRangeInput/DateRangeInput.tsx +14 -6
  442. package/src/DateTimeInput/DateTimeInput.doc.mjs +2 -2
  443. package/src/DateTimeInput/DateTimeInput.tsx +17 -7
  444. package/src/Dialog/DialogHeader.tsx +4 -2
  445. package/src/DropdownMenu/DropdownMenu.tsx +12 -8
  446. package/src/EmptyState/EmptyState.doc.mjs +3 -3
  447. package/src/EmptyState/EmptyState.tsx +4 -1
  448. package/src/Field/Field.doc.mjs +2 -2
  449. package/src/FileInput/FileInput.tsx +3 -1
  450. package/src/Grid/Grid.doc.mjs +5 -5
  451. package/src/InputGroup/InputGroup.doc.mjs +1 -1
  452. package/src/Layer/useLayer.doc.mjs +2 -2
  453. package/src/Lightbox/Lightbox.doc.mjs +7 -2
  454. package/src/Lightbox/Lightbox.tsx +6 -4
  455. package/src/Lightbox/useLightbox.tsx +0 -1
  456. package/src/Link/Link.test.tsx +74 -2
  457. package/src/Link/Link.tsx +48 -3
  458. package/src/Markdown/Markdown.tsx +12 -4
  459. package/src/MobileNav/MobileNav.tsx +4 -2
  460. package/src/MobileNav/MobileNavToggle.tsx +5 -3
  461. package/src/MoreMenu/MoreMenu.tsx +4 -1
  462. package/src/MultiSelector/MultiSelector.tsx +14 -5
  463. package/src/NumberInput/NumberInput.tsx +3 -1
  464. package/src/Outline/Outline.tsx +4 -1
  465. package/src/OverflowList/OverflowList.doc.mjs +2 -2
  466. package/src/Overlay/useOverlay.tsx +0 -3
  467. package/src/Pagination/Pagination.tsx +35 -12
  468. package/src/Popover/usePopover.tsx +6 -1
  469. package/src/PowerSearch/PowerSearch.doc.mjs +9 -4
  470. package/src/PowerSearch/PowerSearch.tsx +22 -10
  471. package/src/PowerSearch/PowerSearchEditPopover.tsx +27 -20
  472. package/src/PowerSearch/PowerSearchToken.tsx +17 -6
  473. package/src/PowerSearch/PowerSearchValueEditor.tsx +34 -21
  474. package/src/PowerSearch/formatFilterValue.test.ts +282 -0
  475. package/src/PowerSearch/formatFilterValue.ts +21 -8
  476. package/src/PowerSearch/index.ts +5 -0
  477. package/src/PowerSearch/resolveOperatorLabel.ts +34 -0
  478. package/src/PowerSearch/types.ts +33 -9
  479. package/src/PowerSearch/usePowerSearchConfig.ts +59 -27
  480. package/src/PowerSearch/usePowerSearchSource.ts +17 -8
  481. package/src/RadioList/RadioList.doc.mjs +1 -1
  482. package/src/Resizable/ResizeHandle.tsx +4 -1
  483. package/src/Section/Section.doc.mjs +4 -4
  484. package/src/SelectableCard/SelectableCard.doc.mjs +1 -1
  485. package/src/Selector/Selector.tsx +11 -6
  486. package/src/SideNav/SideNav.tsx +4 -2
  487. package/src/SideNav/SideNavCollapseButton.tsx +3 -1
  488. package/src/SideNav/SideNavHeading.tsx +5 -3
  489. package/src/SideNav/SideNavItem.tsx +3 -1
  490. package/src/Slider/Slider.doc.mjs +2 -2
  491. package/src/Stack/Stack.doc.mjs +10 -10
  492. package/src/Switch/Switch.doc.mjs +2 -2
  493. package/src/Switch/Switch.test.tsx +16 -0
  494. package/src/Switch/Switch.tsx +4 -2
  495. package/src/TabList/TabList.tsx +4 -1
  496. package/src/Table/BaseTable.tsx +8 -1
  497. package/src/Table/Table.doc.mjs +1 -1
  498. package/src/Table/Table.tsx +3 -1
  499. package/src/Table/index.ts +7 -0
  500. package/src/Table/plugins/filtering/useTableFiltering.tsx +31 -30
  501. package/src/Table/plugins/groupedRows/index.ts +7 -0
  502. package/src/Table/plugins/groupedRows/useTableGroupedRows.test.tsx +231 -0
  503. package/src/Table/plugins/groupedRows/useTableGroupedRows.tsx +351 -0
  504. package/src/Table/plugins/pagination/useTablePagination.tsx +4 -1
  505. package/src/Table/plugins/rowExpansion/useTableRowExpansion.tsx +8 -4
  506. package/src/Table/plugins/rowIndex/index.ts +4 -0
  507. package/src/Table/plugins/rowIndex/useTableRowIndex.test.tsx +132 -0
  508. package/src/Table/plugins/rowIndex/useTableRowIndex.tsx +114 -0
  509. package/src/Table/plugins/selection/useTableSelection.tsx +6 -7
  510. package/src/Table/plugins/sortable/useTableSortable.tsx +8 -5
  511. package/src/Table/useTableFiltering.doc.mjs +2 -2
  512. package/src/Table/useTableGroupedRows.doc.mjs +71 -0
  513. package/src/Table/useTableRowIndex.doc.mjs +50 -0
  514. package/src/Table/useTableSortable.doc.mjs +11 -11
  515. package/src/Text/Text.doc.mjs +2 -2
  516. package/src/TextInput/TextInput.tsx +3 -1
  517. package/src/Thumbnail/Thumbnail.tsx +4 -2
  518. package/src/TimeInput/TimeInput.doc.mjs +2 -2
  519. package/src/TimeInput/TimeInput.tsx +6 -2
  520. package/src/Timestamp/Timestamp.doc.mjs +4 -4
  521. package/src/Timestamp/Timestamp.test.tsx +120 -7
  522. package/src/Timestamp/Timestamp.tsx +21 -1
  523. package/src/Toast/Toast.tsx +3 -1
  524. package/src/Toast/ToastViewport.tsx +3 -1
  525. package/src/Token/Token.tsx +4 -2
  526. package/src/Tokenizer/Tokenizer.doc.mjs +2 -2
  527. package/src/Tokenizer/Tokenizer.tsx +4 -4
  528. package/src/Toolbar/Toolbar.doc.mjs +1 -1
  529. package/src/TopNav/TopNav.doc.mjs +1 -0
  530. package/src/TopNav/TopNav.test.tsx +30 -0
  531. package/src/TopNav/TopNav.tsx +6 -4
  532. package/src/TopNav/TopNavHeading.tsx +5 -3
  533. package/src/TreeList/TreeList.tsx +5 -1
  534. package/src/TreeList/TreeListItem.tsx +6 -1
  535. package/src/Typeahead/BaseTypeahead.tsx +11 -4
  536. package/src/Typeahead/Typeahead.doc.mjs +1 -1
  537. package/src/Typeahead/Typeahead.tsx +3 -1
  538. package/src/VisuallyHidden/VisuallyHidden.tsx +1 -3
  539. package/src/authoring/doc.ts +166 -0
  540. package/src/authoring/index.test.ts +52 -0
  541. package/src/authoring/index.ts +50 -0
  542. package/src/authoring/integration.ts +42 -0
  543. package/src/authoring/template.ts +74 -0
  544. package/src/config.test.ts +16 -0
  545. package/src/config.ts +92 -0
  546. package/src/docPropLiterals.test.ts +902 -0
  547. package/src/hooks/useHotkeys.doc.mjs +5 -5
  548. package/src/i18n/InternationalizationContext.ts +39 -0
  549. package/src/i18n/InternationalizationProvider.doc.mjs +72 -0
  550. package/src/i18n/InternationalizationProvider.tsx +83 -0
  551. package/src/i18n/__tests__/e2e-pagination.test.tsx +172 -0
  552. package/src/i18n/__tests__/e2e-powersearch.test.tsx +130 -0
  553. package/src/i18n/__tests__/resolve.test.ts +284 -0
  554. package/src/i18n/index.ts +32 -0
  555. package/src/i18n/resolve.ts +165 -0
  556. package/src/i18n/translator.ts +31 -0
  557. package/src/i18n/types.ts +53 -0
  558. package/src/i18n/useTranslator.doc.mjs +46 -0
  559. package/src/i18n/useTranslator.ts +50 -0
  560. package/src/index.ts +3 -0
  561. package/dist/NavItem/index.d.ts +0 -9
  562. package/dist/NavItem/index.d.ts.map +0 -1
  563. package/dist/NavItem/index.js +0 -10
  564. package/src/NavItem/index.ts +0 -11
@@ -32,7 +32,7 @@ import { layoutPaddingOuterXVarStyles, layoutPaddingOuterYVarStyles } from "./pa
32
32
  * - `fill`: Layout fills container height, content scrolls internally (default)
33
33
  * - `auto`: Layout grows with content, container/page scrolls
34
34
  */
35
- import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
35
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
36
36
  const styles = {
37
37
  layoutOuter: {
38
38
  keTefX: "xojxgvx",
@@ -97,10 +97,10 @@ function AreaProvider({
97
97
  if (children == null) {
98
98
  return null;
99
99
  }
100
- return /*#__PURE__*/_jsxDEV(LayoutAreaContext, {
100
+ return /*#__PURE__*/_jsx(LayoutAreaContext, {
101
101
  value: area,
102
102
  children: children
103
- }, void 0, false);
103
+ });
104
104
  }
105
105
 
106
106
  /**
@@ -188,51 +188,51 @@ export function Layout({
188
188
  hasStart,
189
189
  hasEnd
190
190
  }), [hasHeader, hasFooter, hasStart, hasEnd]);
191
- const tree = /*#__PURE__*/_jsxDEV(LayoutSlotsContext, {
191
+ const tree = /*#__PURE__*/_jsx(LayoutSlotsContext, {
192
192
  value: slotsValue,
193
- children: /*#__PURE__*/_jsxDEV("div", {
193
+ children: /*#__PURE__*/_jsx("div", {
194
194
  ref: ref,
195
195
  ...mergeProps(themeProps('layout', {
196
196
  height
197
197
  }), stylex.props(styles.layoutOuter, isFill ? styles.fill : styles.auto, xstyle), className, style),
198
- children: /*#__PURE__*/_jsxDEV("div", {
198
+ children: /*#__PURE__*/_jsxs("div", {
199
199
  ...stylex.props(_temp2, styles.layoutInner, ...stack({
200
200
  direction: 'vertical'
201
201
  }), isFill ? styles.fill : styles.auto, padding === 0 && styles.fullBleed, padding != null && layoutPaddingOuterXVarStyles[padding], padding != null && layoutPaddingOuterYVarStyles[padding], contentWidth != null && dynamicStyles.contentWidthVar(contentWidth)),
202
- children: [/*#__PURE__*/_jsxDEV(AreaProvider, {
202
+ children: [/*#__PURE__*/_jsx(AreaProvider, {
203
203
  area: "header",
204
204
  children: header
205
- }, void 0, false), /*#__PURE__*/_jsxDEV("div", {
205
+ }), /*#__PURE__*/_jsxs("div", {
206
206
  ...stylex.props(...stack({
207
207
  direction: 'horizontal'
208
208
  }), styles.middle, contentWidth != null && dynamicStyles.contentWidth(contentWidth)),
209
- children: [/*#__PURE__*/_jsxDEV(AreaProvider, {
209
+ children: [/*#__PURE__*/_jsx(AreaProvider, {
210
210
  area: "start",
211
211
  children: start
212
- }, void 0, false), /*#__PURE__*/_jsxDEV("div", {
212
+ }), /*#__PURE__*/_jsx("div", {
213
213
  ...stylex.props(...stackItem({
214
214
  size: 'fill'
215
215
  })),
216
- children: /*#__PURE__*/_jsxDEV(AreaProvider, {
216
+ children: /*#__PURE__*/_jsx(AreaProvider, {
217
217
  area: "content",
218
218
  children: resolvedContent
219
- }, void 0, false)
220
- }, void 0, false), /*#__PURE__*/_jsxDEV(AreaProvider, {
219
+ })
220
+ }), /*#__PURE__*/_jsx(AreaProvider, {
221
221
  area: "end",
222
222
  children: end
223
- }, void 0, false)]
224
- }, void 0, true), /*#__PURE__*/_jsxDEV(AreaProvider, {
223
+ })]
224
+ }), /*#__PURE__*/_jsx(AreaProvider, {
225
225
  area: "footer",
226
226
  children: footer
227
- }, void 0, false)]
228
- }, void 0, true)
229
- }, void 0, false)
230
- }, void 0, false);
227
+ })]
228
+ })
229
+ })
230
+ });
231
231
  if (dividerCtxValue != null) {
232
- return /*#__PURE__*/_jsxDEV(LayoutDividerContext, {
232
+ return /*#__PURE__*/_jsx(LayoutDividerContext, {
233
233
  value: dividerCtxValue,
234
234
  children: tree
235
- }, void 0, false);
235
+ });
236
236
  }
237
237
  return tree;
238
238
  }
@@ -22,7 +22,7 @@ import { LayoutSlotsContext } from "./LayoutSlotsContext.js";
22
22
  import { mergeProps } from "../utils/index.js";
23
23
  import { themeProps } from "../utils/themeProps.js";
24
24
  import { paddingStyles, containerPaddingInlineVarStyles, containerPaddingBlockStartVarStyles, containerPaddingBlockEndVarStyles } from "./padding.stylex.js";
25
- import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
25
+ import { jsx as _jsx } from "react/jsx-runtime";
26
26
  const styles = {
27
27
  content: {
28
28
  kB7OPa: "x9f619",
@@ -130,7 +130,7 @@ export function LayoutContent({
130
130
  hasEnd
131
131
  } = use(LayoutSlotsContext);
132
132
  const isZeroPadding = padding === 0;
133
- return /*#__PURE__*/_jsxDEV("div", {
133
+ return /*#__PURE__*/_jsx("div", {
134
134
  ref: ref,
135
135
  role: role,
136
136
  "aria-label": label,
@@ -139,6 +139,6 @@ export function LayoutContent({
139
139
  !hasStart && !isZeroPadding && padding == null && styles.noStart, !hasEnd && !isZeroPadding && padding == null && styles.noEnd, !hasHeader && !isZeroPadding && padding == null && styles.noHeader, !hasFooter && !isZeroPadding && padding == null && styles.noFooter, isScrollable && styles.scrollable, isZeroPadding && styles.fullBleed, padding != null && paddingStyles[padding], padding != null && containerPaddingInlineVarStyles[padding], padding != null && containerPaddingBlockStartVarStyles[padding], padding != null && containerPaddingBlockEndVarStyles[padding], xstyle), className, style),
140
140
  ...props,
141
141
  children: children
142
- }, void 0, false);
142
+ });
143
143
  }
144
144
  LayoutContent.displayName = 'LayoutContent';
@@ -22,7 +22,7 @@ import { colorVars, spacingVars } from "../theme/tokens.stylex.js";
22
22
  import { mergeProps } from "../utils/index.js";
23
23
  import { themeProps } from "../utils/themeProps.js";
24
24
  import { paddingStyles, containerPaddingInlineVarStyles, containerPaddingBlockStartVarStyles, containerPaddingBlockEndVarStyles } from "./padding.stylex.js";
25
- import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
25
+ import { jsx as _jsx } from "react/jsx-runtime";
26
26
  const styles = {
27
27
  footer: {
28
28
  kmuXW: "x2lah0s",
@@ -103,17 +103,17 @@ export function LayoutFooter({
103
103
  const dividerCtx = use(LayoutDividerContext);
104
104
  const resolvedHasDivider = hasDivider ?? dividerCtx?.defaultHasDividers ?? false;
105
105
  const isZeroPadding = padding === 0;
106
- return /*#__PURE__*/_jsxDEV("div", {
106
+ return /*#__PURE__*/_jsx("div", {
107
107
  ref: ref,
108
108
  role: role,
109
109
  "aria-label": label,
110
110
  "data-divider": resolvedHasDivider || undefined,
111
111
  ...mergeProps(themeProps('layout-footer'), stylex.props(styles.footer, dynamicStyles.sizing(height ?? null), resolvedHasDivider && styles.divider, xstyle), className, style),
112
112
  ...props,
113
- children: /*#__PURE__*/_jsxDEV("div", {
113
+ children: /*#__PURE__*/_jsx("div", {
114
114
  ...stylex.props(styles.inner, isZeroPadding && styles.fullBleed, padding != null && paddingStyles[padding], padding != null && containerPaddingInlineVarStyles[padding], padding != null && containerPaddingBlockStartVarStyles[padding], padding != null && containerPaddingBlockEndVarStyles[padding]),
115
115
  children: children
116
- }, void 0, false)
117
- }, void 0, false);
116
+ })
117
+ });
118
118
  }
119
119
  LayoutFooter.displayName = 'LayoutFooter';
@@ -22,7 +22,7 @@ import { colorVars, spacingVars } from "../theme/tokens.stylex.js";
22
22
  import { mergeProps } from "../utils/index.js";
23
23
  import { themeProps } from "../utils/themeProps.js";
24
24
  import { paddingStyles, containerPaddingInlineVarStyles, containerPaddingBlockStartVarStyles, containerPaddingBlockEndVarStyles } from "./padding.stylex.js";
25
- import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
25
+ import { jsx as _jsx } from "react/jsx-runtime";
26
26
  const styles = {
27
27
  header: {
28
28
  kmuXW: "x2lah0s",
@@ -103,17 +103,17 @@ export function LayoutHeader({
103
103
  const dividerCtx = use(LayoutDividerContext);
104
104
  const resolvedHasDivider = hasDivider ?? dividerCtx?.defaultHasDividers ?? false;
105
105
  const isZeroPadding = padding === 0;
106
- return /*#__PURE__*/_jsxDEV("div", {
106
+ return /*#__PURE__*/_jsx("div", {
107
107
  ref: ref,
108
108
  role: role,
109
109
  "aria-label": label,
110
110
  "data-divider": resolvedHasDivider || undefined,
111
111
  ...mergeProps(themeProps('layout-header'), stylex.props(styles.header, dynamicStyles.sizing(height ?? null), resolvedHasDivider && styles.divider, xstyle), className, style),
112
112
  ...props,
113
- children: /*#__PURE__*/_jsxDEV("div", {
113
+ children: /*#__PURE__*/_jsx("div", {
114
114
  ...stylex.props(styles.inner, isZeroPadding && styles.fullBleed, padding != null && paddingStyles[padding], padding != null && containerPaddingInlineVarStyles[padding], padding != null && containerPaddingBlockStartVarStyles[padding], padding != null && containerPaddingBlockEndVarStyles[padding]),
115
115
  children: children
116
- }, void 0, false)
117
- }, void 0, false);
116
+ })
117
+ });
118
118
  }
119
119
  LayoutHeader.displayName = 'LayoutHeader';
@@ -23,7 +23,7 @@ import { LayoutSlotsContext } from "./LayoutSlotsContext.js";
23
23
  import { mergeProps } from "../utils/index.js";
24
24
  import { themeProps } from "../utils/themeProps.js";
25
25
  import { paddingStyles, containerPaddingInlineVarStyles, containerPaddingBlockStartVarStyles, containerPaddingBlockEndVarStyles } from "./padding.stylex.js";
26
- import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
26
+ import { jsx as _jsx } from "react/jsx-runtime";
27
27
  const styles = {
28
28
  panel: {
29
29
  kB7OPa: "x9f619",
@@ -166,7 +166,7 @@ export function LayoutPanel({
166
166
 
167
167
  // Select collapse style based on position (collapse the side where divider would be)
168
168
  const collapseStyle = isStartPanel ? styles.collapseEnd : isEndPanel ? styles.collapseStart : null;
169
- return /*#__PURE__*/_jsxDEV("div", {
169
+ return /*#__PURE__*/_jsx("div", {
170
170
  ref: ref,
171
171
  role: role,
172
172
  "aria-label": label,
@@ -175,6 +175,6 @@ export function LayoutPanel({
175
175
  isStartPanel && !isZeroPadding && padding == null && styles.startPanel, isEndPanel && !isZeroPadding && padding == null && styles.endPanel, !hasHeader && !isZeroPadding && padding == null && styles.noHeader, !hasFooter && !isZeroPadding && padding == null && styles.noFooter, isScrollable && styles.scrollable, isZeroPadding && styles.fullBleed, padding != null && paddingStyles[padding], padding != null && containerPaddingInlineVarStyles[padding], padding != null && containerPaddingBlockStartVarStyles[padding], padding != null && containerPaddingBlockEndVarStyles[padding], hasDivider && dividerStyle, shouldCollapseSpacing && collapseStyle, xstyle), className, style),
176
176
  ...props,
177
177
  children: children
178
- }, void 0, false);
178
+ });
179
179
  }
180
180
  LayoutPanel.displayName = 'LayoutPanel';
@@ -1 +1 @@
1
- {"version":3,"file":"Lightbox.d.ts","sourceRoot":"","sources":["../../src/Lightbox/Lightbox.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAOL,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AASf,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAG5C;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,OAAO,GAAG,OAAO,CAAC;AAElD;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,uBAAuB;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,gEAAgE;IAChE,GAAG,EAAE,MAAM,CAAC;IACZ,iDAAiD;IACjD,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB;;;OAGG;IACH,IAAI,CAAC,EAAE,iBAAiB,CAAC;CAC1B;AAED,MAAM,WAAW,aAAc,SAAQ,SAAS,CAAC,iBAAiB,CAAC;IACjE,+CAA+C;IAC/C,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IACnC;;OAEG;IACH,MAAM,EAAE,OAAO,CAAC;IAChB;;;OAGG;IACH,YAAY,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IACxC;;;OAGG;IACH,KAAK,EAAE,aAAa,GAAG,aAAa,EAAE,CAAC;IACvC;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAqID;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAgB,QAAQ,CAAC,EACvB,MAAM,EACN,YAAY,EACZ,KAAK,EACL,KAAK,EAAE,eAAe,EACtB,YAAgB,EAChB,aAAa,EACb,OAAe,EACf,WAAmB,EACnB,MAAM,EACN,SAAS,EACT,KAAK,EACL,GAAG,EACH,OAAO,EAAE,WAAW,EACpB,SAAS,EAAE,aAAa,EACxB,GAAG,KAAK,EACT,EAAE,aAAa,sCAmUf;yBAnVe,QAAQ"}
1
+ {"version":3,"file":"Lightbox.d.ts","sourceRoot":"","sources":["../../src/Lightbox/Lightbox.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAOL,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AASf,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAI5C;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,OAAO,GAAG,OAAO,CAAC;AAElD;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,uBAAuB;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,gEAAgE;IAChE,GAAG,EAAE,MAAM,CAAC;IACZ,iDAAiD;IACjD,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB;;;OAGG;IACH,IAAI,CAAC,EAAE,iBAAiB,CAAC;CAC1B;AAED,MAAM,WAAW,aAAc,SAAQ,SAAS,CAAC,iBAAiB,CAAC;IACjE,+CAA+C;IAC/C,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IACnC;;OAEG;IACH,MAAM,EAAE,OAAO,CAAC;IAChB;;;OAGG;IACH,YAAY,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IACxC;;;OAGG;IACH,KAAK,EAAE,aAAa,GAAG,aAAa,EAAE,CAAC;IACvC;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAqID;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAgB,QAAQ,CAAC,EACvB,MAAM,EACN,YAAY,EACZ,KAAK,EACL,KAAK,EAAE,eAAe,EACtB,YAAgB,EAChB,aAAa,EACb,OAAe,EACf,WAAmB,EACnB,MAAM,EACN,SAAS,EACT,KAAK,EACL,GAAG,EACH,OAAO,EAAE,WAAW,EACpB,SAAS,EAAE,aAAa,EACxB,GAAG,KAAK,EACT,EAAE,aAAa,sCAoUf;yBApVe,QAAQ"}
@@ -26,6 +26,7 @@ import { useScrollLock } from "../hooks/useScrollLock.js";
26
26
  import { useIsomorphicLayoutEffect } from "../hooks/useIsomorphicLayoutEffect.js";
27
27
  import { mergeProps, mergeRefs } 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
  * Media type for lightbox items.
@@ -34,7 +35,7 @@ import { themeProps } from "../utils/themeProps.js";
34
35
  /**
35
36
  * Describes a single media item in a lightbox.
36
37
  */
37
- import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
38
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
38
39
  // =============================================================================
39
40
  // Styles
40
41
  // =============================================================================
@@ -133,6 +134,7 @@ export function Lightbox({
133
134
  onKeyDown: onKeyDownProp,
134
135
  ...props
135
136
  }) {
137
+ const t = useTranslator();
136
138
  const dialogRef = useRef(null);
137
139
  const imageWrapperRef = useRef(null);
138
140
  const triggerElementRef = useRef(null);
@@ -325,7 +327,7 @@ export function Lightbox({
325
327
  if (!currentItem) {
326
328
  return null;
327
329
  }
328
- return /*#__PURE__*/_jsxDEV("dialog", {
330
+ return /*#__PURE__*/_jsx("dialog", {
329
331
  ref: mergeRefs(ref, dialogRef),
330
332
  onCancel: handleCancel,
331
333
  onClick: e => {
@@ -336,49 +338,49 @@ export function Lightbox({
336
338
  handleKeyDown(e);
337
339
  onKeyDownProp?.(e);
338
340
  },
339
- "aria-label": currentItem.alt || 'Media viewer',
341
+ "aria-label": currentItem.alt || t('@astryx.lightbox.mediaViewer'),
340
342
  ...mergeProps(themeProps('lightbox'), stylex.props(styles.dialog, xstyle), className, style),
341
343
  ...props,
342
- children: /*#__PURE__*/_jsxDEV("div", {
344
+ children: /*#__PURE__*/_jsxs("div", {
343
345
  ...{
344
346
  className: "x78zum5 xdt5ytf x6s0dn4 xl56j7k xh8yej3 x5yr21d x1n2onr6"
345
347
  },
346
- children: [/*#__PURE__*/_jsxDEV("div", {
348
+ children: [/*#__PURE__*/_jsx("div", {
347
349
  ...{
348
350
  className: "x10l6tqk xyx6v2t xmz3bnw x1vjfegm"
349
351
  },
350
- children: /*#__PURE__*/_jsxDEV(IconButton, {
351
- icon: /*#__PURE__*/_jsxDEV(Icon, {
352
+ children: /*#__PURE__*/_jsx(IconButton, {
353
+ icon: /*#__PURE__*/_jsx(Icon, {
352
354
  icon: "close",
353
355
  size: "sm",
354
356
  color: "inherit"
355
- }, void 0, false),
356
- label: "Close",
357
+ }),
358
+ label: t('@astryx.lightbox.close'),
357
359
  variant: "ghost",
358
360
  onClick: handleClose,
359
361
  xstyle: styles.controlButton
360
- }, void 0, false)
361
- }, void 0, false), isGallery && /*#__PURE__*/_jsxDEV("div", {
362
+ })
363
+ }), isGallery && /*#__PURE__*/_jsx("div", {
362
364
  ...{
363
365
  className: "x10l6tqk xwa60dl x1cb1t30 x1vjfegm xnp31yv"
364
366
  },
365
- children: /*#__PURE__*/_jsxDEV(IconButton, {
366
- icon: /*#__PURE__*/_jsxDEV(Icon, {
367
+ children: /*#__PURE__*/_jsx(IconButton, {
368
+ icon: /*#__PURE__*/_jsx(Icon, {
367
369
  icon: "chevronLeft",
368
370
  size: "sm",
369
371
  color: "inherit"
370
- }, void 0, false),
371
- label: "Previous",
372
+ }),
373
+ label: t('@astryx.lightbox.previous'),
372
374
  variant: "ghost",
373
375
  isDisabled: !canPrev,
374
376
  onClick: goToPrev,
375
377
  xstyle: styles.controlButton
376
- }, void 0, false)
377
- }, void 0, false), /*#__PURE__*/_jsxDEV("div", {
378
+ })
379
+ }), /*#__PURE__*/_jsxs("div", {
378
380
  ...{
379
381
  className: "x78zum5 xdt5ytf x6s0dn4 x193iq5w xmz0i5r xb3r6kr"
380
382
  },
381
- children: [/*#__PURE__*/_jsxDEV("div", {
383
+ children: [/*#__PURE__*/_jsx("div", {
382
384
  ref: imageWrapperRef,
383
385
  ...{
384
386
  0: {
@@ -408,7 +410,7 @@ export function Lightbox({
408
410
  }[!!(!isVideo && hasZoom && !isZoomed) << 2 | !!(!isVideo && isZoomed) << 1 | !!(!isVideo && isDragging) << 0],
409
411
  onDoubleClick: isVideo ? undefined : handleDoubleClick,
410
412
  onPointerDown: isVideo ? undefined : handlePointerDown,
411
- children: isVideo ? /*#__PURE__*/_jsxDEV("video", {
413
+ children: isVideo ? /*#__PURE__*/_jsx("video", {
412
414
  src: currentItem.src,
413
415
  "aria-label": currentItem.alt,
414
416
  controls: true,
@@ -416,41 +418,41 @@ export function Lightbox({
416
418
  ...{
417
419
  className: "x193iq5w xmz0i5r x19kjcj4 x1a2a7pz"
418
420
  }
419
- }, void 0, false) : /*#__PURE__*/_jsxDEV("img", {
421
+ }) : /*#__PURE__*/_jsx("img", {
420
422
  src: currentItem.src,
421
423
  alt: currentItem.alt,
422
424
  draggable: false,
423
425
  ...stylex.props(styles.image, isDragging && styles.imageDragging, imageTransform != null && dynamicStyles.imageTransform(imageTransform))
424
- }, void 0, false)
425
- }, void 0, false), currentItem.caption && /*#__PURE__*/_jsxDEV("div", {
426
+ })
427
+ }), currentItem.caption && /*#__PURE__*/_jsx("div", {
426
428
  ...{
427
429
  className: "x9e3rv5 x18juvz8 xf74fhv x2b8uid x1xye8es x18d9i69 xrrkdod xrlsmeg x2lah0s"
428
430
  },
429
431
  children: currentItem.caption
430
- }, void 0, false)]
431
- }, void 0, true), isGallery && /*#__PURE__*/_jsxDEV("div", {
432
+ })]
433
+ }), isGallery && /*#__PURE__*/_jsx("div", {
432
434
  ...{
433
435
  className: "x10l6tqk xwa60dl x1cb1t30 x1vjfegm xmz3bnw"
434
436
  },
435
- children: /*#__PURE__*/_jsxDEV(IconButton, {
436
- icon: /*#__PURE__*/_jsxDEV(Icon, {
437
+ children: /*#__PURE__*/_jsx(IconButton, {
438
+ icon: /*#__PURE__*/_jsx(Icon, {
437
439
  icon: "chevronRight",
438
440
  size: "sm",
439
441
  color: "inherit"
440
- }, void 0, false),
441
- label: "Next",
442
+ }),
443
+ label: t('@astryx.lightbox.next'),
442
444
  variant: "ghost",
443
445
  isDisabled: !canNext,
444
446
  onClick: goToNext,
445
447
  xstyle: styles.controlButton
446
- }, void 0, false)
447
- }, void 0, false), isGallery && mediaArray.length > 1 && /*#__PURE__*/_jsxDEV("div", {
448
+ })
449
+ }), isGallery && mediaArray.length > 1 && /*#__PURE__*/_jsxs("div", {
448
450
  ...{
449
451
  className: "x10l6tqk xyx6v2t xnp31yv x9e3rv5 xjm74w1 xw6l6zx x1vjfegm"
450
452
  },
451
453
  children: [index + 1, " / ", mediaArray.length]
452
- }, void 0, true)]
453
- }, void 0, true)
454
- }, void 0, false);
454
+ })]
455
+ })
456
+ });
455
457
  }
456
458
  Lightbox.displayName = 'Lightbox';
@@ -55,7 +55,6 @@ export interface UseLightboxReturn {
55
55
  * @example
56
56
  * ```
57
57
  * const lightbox = useLightbox({ media: photos });
58
- *
59
58
  * {photos.map((photo, i) => (
60
59
  * <img
61
60
  * key={photo.src}
@@ -1 +1 @@
1
- {"version":3,"file":"useLightbox.d.ts","sourceRoot":"","sources":["../../src/Lightbox/useLightbox.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAiC,KAAK,SAAS,EAAC,MAAM,OAAO,CAAC;AACrE,OAAO,EAEL,KAAK,aAAa,EAClB,KAAK,aAAa,EACnB,MAAM,YAAY,CAAC;AAEpB,KAAK,eAAe,GAAG,IAAI,CACzB,aAAa,EACX,QAAQ,GACR,cAAc,GACd,OAAO,GACP,OAAO,GACP,cAAc,GACd,eAAe,CAClB,CAAC;AAEF,MAAM,WAAW,kBAAmB,SAAQ,eAAe;IACzD,wCAAwC;IACxC,KAAK,EAAE,aAAa,GAAG,aAAa,EAAE,CAAC;CACxC;AAED,MAAM,WAAW,iBAAiB;IAChC,iEAAiE;IACjE,IAAI,EAAE,CAAC,KAAK,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/B,0BAA0B;IAC1B,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,8CAA8C;IAC9C,MAAM,EAAE,OAAO,CAAC;IAChB,6BAA6B;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,oCAAoC;IACpC,OAAO,EAAE,SAAS,CAAC;IACnB,8DAA8D;IAC9D,YAAY,EAAE;QACZ,IAAI,EAAE,QAAQ,CAAC;QACf,QAAQ,EAAE,CAAC,CAAC;QACZ,eAAe,EAAE,QAAQ,CAAC;QAC1B,OAAO,EAAE,MAAM,IAAI,CAAC;QACpB,SAAS,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,aAAa,KAAK,IAAI,CAAC;KAC7C,CAAC;IACF,mEAAmE;IACnE,eAAe,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK;QAClC,IAAI,EAAE,QAAQ,CAAC;QACf,QAAQ,EAAE,CAAC,CAAC;QACZ,eAAe,EAAE,QAAQ,CAAC;QAC1B,OAAO,EAAE,MAAM,IAAI,CAAC;QACpB,SAAS,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,aAAa,KAAK,IAAI,CAAC;KAC7C,CAAC;CACH;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,WAAW,CACzB,OAAO,EAAE,kBAAkB,GAC1B,iBAAiB,CAiEnB"}
1
+ {"version":3,"file":"useLightbox.d.ts","sourceRoot":"","sources":["../../src/Lightbox/useLightbox.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAiC,KAAK,SAAS,EAAC,MAAM,OAAO,CAAC;AACrE,OAAO,EAEL,KAAK,aAAa,EAClB,KAAK,aAAa,EACnB,MAAM,YAAY,CAAC;AAEpB,KAAK,eAAe,GAAG,IAAI,CACzB,aAAa,EACX,QAAQ,GACR,cAAc,GACd,OAAO,GACP,OAAO,GACP,cAAc,GACd,eAAe,CAClB,CAAC;AAEF,MAAM,WAAW,kBAAmB,SAAQ,eAAe;IACzD,wCAAwC;IACxC,KAAK,EAAE,aAAa,GAAG,aAAa,EAAE,CAAC;CACxC;AAED,MAAM,WAAW,iBAAiB;IAChC,iEAAiE;IACjE,IAAI,EAAE,CAAC,KAAK,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/B,0BAA0B;IAC1B,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,8CAA8C;IAC9C,MAAM,EAAE,OAAO,CAAC;IAChB,6BAA6B;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,oCAAoC;IACpC,OAAO,EAAE,SAAS,CAAC;IACnB,8DAA8D;IAC9D,YAAY,EAAE;QACZ,IAAI,EAAE,QAAQ,CAAC;QACf,QAAQ,EAAE,CAAC,CAAC;QACZ,eAAe,EAAE,QAAQ,CAAC;QAC1B,OAAO,EAAE,MAAM,IAAI,CAAC;QACpB,SAAS,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,aAAa,KAAK,IAAI,CAAC;KAC7C,CAAC;IACF,mEAAmE;IACnE,eAAe,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK;QAClC,IAAI,EAAE,QAAQ,CAAC;QACf,QAAQ,EAAE,CAAC,CAAC;QACZ,eAAe,EAAE,QAAQ,CAAC;QAC1B,OAAO,EAAE,MAAM,IAAI,CAAC;QACpB,SAAS,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,aAAa,KAAK,IAAI,CAAC;KAC7C,CAAC;CACH;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,WAAW,CACzB,OAAO,EAAE,kBAAkB,GAC1B,iBAAiB,CAiEnB"}
@@ -20,14 +20,13 @@
20
20
  */
21
21
  import { useState, useCallback, useMemo } from 'react';
22
22
  import { Lightbox } from "./Lightbox.js";
23
- import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
23
+ import { jsx as _jsx } from "react/jsx-runtime";
24
24
  /**
25
25
  * Hook for lightbox with trigger props and state management.
26
26
  *
27
27
  * @example
28
28
  * ```
29
29
  * const lightbox = useLightbox({ media: photos });
30
- *
31
30
  * {photos.map((photo, i) => (
32
31
  * <img
33
32
  * key={photo.src}
@@ -77,7 +76,7 @@ export function useLightbox(options) {
77
76
  }
78
77
  }
79
78
  }), [open]);
80
- const element = useMemo(() => /*#__PURE__*/_jsxDEV(Lightbox, {
79
+ const element = useMemo(() => /*#__PURE__*/_jsx(Lightbox, {
81
80
  isOpen: isOpen,
82
81
  onOpenChange: nextOpen => {
83
82
  if (!nextOpen) {
@@ -88,7 +87,7 @@ export function useLightbox(options) {
88
87
  index: index,
89
88
  onIndexChange: setIndex,
90
89
  ...lightboxProps
91
- }, void 0, false), [isOpen, media, index, lightboxProps]);
90
+ }), [isOpen, media, index, lightboxProps]);
92
91
  return {
93
92
  open,
94
93
  close,
@@ -46,6 +46,10 @@ export interface LinkProps extends BaseProps<HTMLAnchorElement | HTMLButtonEleme
46
46
  hasUnderline?: boolean;
47
47
  /**
48
48
  * Whether the link is disabled.
49
+ * A disabled link renders as a plain anchor without an href (and without
50
+ * target/rel/onClick), so it cannot be focused or activated — no
51
+ * navigation and no onClick, even via programmatic focus or assistive
52
+ * technology activation.
49
53
  * @default false
50
54
  */
51
55
  isDisabled?: boolean;
@@ -145,14 +149,12 @@ export interface LinkProps extends BaseProps<HTMLAnchorElement | HTMLButtonEleme
145
149
  * <Link href="/settings" color="secondary">Settings</Link>
146
150
  * <Link href="/privacy" hasUnderline>Privacy Policy</Link>
147
151
  * <Link label="Close dialog" href="/home"><Icon icon="x" /></Link>
148
- *
149
- * // Inline link inside text — inherits the surrounding type/size:
150
152
  * <Text type="large">
151
153
  * Read our <Link href="/terms" type="inherit">terms</Link> first.
152
154
  * </Text>
153
155
  * ```
154
156
  */
155
- export declare function Link({ as, label, href, hasUnderline, isDisabled, isExternalLink, newTabLabel, target: targetFromProps, onClick, tooltip, isStandalone, type, size, weight, color, display, maxLines, children, rel: relFromProps, xstyle, className, style, ref, ...props }: LinkProps): import("react").JSX.Element;
157
+ export declare function Link({ as, label, href, hasUnderline, isDisabled, isExternalLink, newTabLabel: newTabLabelFromProps, target: targetFromProps, onClick, tooltip, isStandalone, type, size, weight, color, display, maxLines, children, rel: relFromProps, xstyle, className, style, ref, ...props }: LinkProps): import("react").JSX.Element;
156
158
  export declare namespace Link {
157
159
  var displayName: string;
158
160
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Link.d.ts","sourceRoot":"","sources":["../../src/Link/Link.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,OAAO,CAAC;AACrC,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAc5C,OAAO,KAAK,EACV,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,UAAU,EACV,WAAW,EACZ,MAAM,gBAAgB,CAAC;AAExB,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,SAAS,CAAC;AAsG/C,MAAM,WAAW,SAAU,SAAQ,SAAS,CAC1C,iBAAiB,GAAG,iBAAiB,CACtC;IACC,wCAAwC;IACxC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,iBAAiB,GAAG,iBAAiB,CAAC,CAAC;IACvD;;;;;OAKG;IACH,EAAE,CAAC,EAAE,iBAAiB,CAAC;IACvB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;OAIG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC5B;;OAEG;IACH,cAAc,CAAC,EAAE,KAAK,CAAC,2BAA2B,CAAC;IACnD;;;OAGG;IACH,OAAO,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAC,iBAAiB,GAAG,iBAAiB,CAAC,CAAC;IACzE;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;;;;;OAOG;IACH,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB;;OAEG;IACH,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB;;OAEG;IACH,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB;;;OAGG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;;OAGG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,IAAI,CAAC,EACnB,EAAE,EACF,KAAK,EACL,IAAI,EACJ,YAAoB,EACpB,UAAkB,EAClB,cAAsB,EACtB,WAAkC,EAClC,MAAM,EAAE,eAAe,EACvB,OAAO,EACP,OAAO,EACP,YAAoB,EACpB,IAAa,EACb,IAAI,EACJ,MAAM,EACN,KAAgB,EAChB,OAAkB,EAClB,QAAY,EACZ,QAAQ,EACR,GAAG,EAAE,YAAY,EACjB,MAAM,EACN,SAAS,EACT,KAAK,EACL,GAAG,EACH,GAAG,KAAK,EACT,EAAE,SAAS,+BAwGX;yBAjIe,IAAI"}
1
+ {"version":3,"file":"Link.d.ts","sourceRoot":"","sources":["../../src/Link/Link.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,OAAO,CAAC;AACrC,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAc5C,OAAO,KAAK,EACV,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,UAAU,EACV,WAAW,EACZ,MAAM,gBAAgB,CAAC;AAExB,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,SAAS,CAAC;AAuG/C,MAAM,WAAW,SAAU,SAAQ,SAAS,CAC1C,iBAAiB,GAAG,iBAAiB,CACtC;IACC,wCAAwC;IACxC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,iBAAiB,GAAG,iBAAiB,CAAC,CAAC;IACvD;;;;;OAKG;IACH,EAAE,CAAC,EAAE,iBAAiB,CAAC;IACvB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;;;;;OAOG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;OAIG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC5B;;OAEG;IACH,cAAc,CAAC,EAAE,KAAK,CAAC,2BAA2B,CAAC;IACnD;;;OAGG;IACH,OAAO,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAC,iBAAiB,GAAG,iBAAiB,CAAC,CAAC;IACzE;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;;;;;OAOG;IACH,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB;;OAEG;IACH,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB;;OAEG;IACH,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB;;;OAGG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;;OAGG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,QAAQ,EAAE,SAAS,CAAC;CACrB;AAWD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,IAAI,CAAC,EACnB,EAAE,EACF,KAAK,EACL,IAAI,EACJ,YAAoB,EACpB,UAAkB,EAClB,cAAsB,EACtB,WAAW,EAAE,oBAAoB,EACjC,MAAM,EAAE,eAAe,EACvB,OAAO,EACP,OAAO,EACP,YAAoB,EACpB,IAAa,EACb,IAAI,EACJ,MAAM,EACN,KAAgB,EAChB,OAAkB,EAClB,QAAY,EACZ,QAAQ,EACR,GAAG,EAAE,YAAY,EACjB,MAAM,EACN,SAAS,EACT,KAAK,EACL,GAAG,EACH,GAAG,KAAK,EACT,EAAE,SAAS,+BAyIX;yBAlKe,IAAI"}
package/dist/Link/Link.js CHANGED
@@ -27,11 +27,12 @@ import { mergeProps } from "../utils/index.js";
27
27
  import { computeTargetAndRel } from "./computeTargetAndRel.js";
28
28
  import { useInteractiveRole } from "../hooks/useInteractiveRole.js";
29
29
  import { themeProps } from "../utils/themeProps.js";
30
+ import { useTranslator } from "../i18n/index.js";
30
31
 
31
32
  /**
32
33
  * Base link styles
33
34
  */
34
- import { jsxDEV as _jsxDEV, Fragment as _Fragment } from "react/jsx-dev-runtime";
35
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
35
36
  const styles = {
36
37
  base: {
37
38
  k1xSpc: "x3nfvp2",
@@ -105,6 +106,15 @@ const linkColorStyles = {
105
106
  $$css: true
106
107
  }
107
108
  };
109
+ /**
110
+ * Click handler for disabled links. The disabled anchor renders without an
111
+ * href, so there is no navigation to block in practice; preventDefault is a
112
+ * defensive guard against synthetic/programmatic clicks.
113
+ */
114
+ function preventDefaultClick(event) {
115
+ event.preventDefault();
116
+ }
117
+
108
118
  /**
109
119
  * A styled anchor link component.
110
120
  *
@@ -118,8 +128,6 @@ const linkColorStyles = {
118
128
  * <Link href="/settings" color="secondary">Settings</Link>
119
129
  * <Link href="/privacy" hasUnderline>Privacy Policy</Link>
120
130
  * <Link label="Close dialog" href="/home"><Icon icon="x" /></Link>
121
- *
122
- * // Inline link inside text — inherits the surrounding type/size:
123
131
  * <Text type="large">
124
132
  * Read our <Link href="/terms" type="inherit">terms</Link> first.
125
133
  * </Text>
@@ -132,7 +140,7 @@ export function Link({
132
140
  hasUnderline = false,
133
141
  isDisabled = false,
134
142
  isExternalLink = false,
135
- newTabLabel = '(opens in new tab)',
143
+ newTabLabel: newTabLabelFromProps,
136
144
  target: targetFromProps,
137
145
  onClick,
138
146
  tooltip,
@@ -151,6 +159,8 @@ export function Link({
151
159
  ref,
152
160
  ...props
153
161
  }) {
162
+ const t = useTranslator();
163
+ const newTabLabel = newTabLabelFromProps ?? t('@astryx.link.newTab');
154
164
  const LinkComponent = useLinkComponent(as);
155
165
  const role = useInteractiveRole({
156
166
  href,
@@ -166,8 +176,8 @@ export function Link({
166
176
  // When role resolves to 'button' (no href, or context-provided),
167
177
  // render as a <button> with link styling for semantic correctness.
168
178
  const renderAsButton = role === 'button' || role === 'inert' && href == null;
169
- const sharedContent = /*#__PURE__*/_jsxDEV(_Fragment, {
170
- children: [/*#__PURE__*/_jsxDEV(Text, {
179
+ const sharedContent = /*#__PURE__*/_jsxs(_Fragment, {
180
+ children: [/*#__PURE__*/_jsx(Text, {
171
181
  type: type,
172
182
  size: size,
173
183
  weight: weight,
@@ -175,19 +185,19 @@ export function Link({
175
185
  display: display,
176
186
  maxLines: maxLines,
177
187
  children: children
178
- }, void 0, false), isExternalLink && !renderAsButton && /*#__PURE__*/_jsxDEV(_Fragment, {
179
- children: [/*#__PURE__*/_jsxDEV(Icon, {
188
+ }), isExternalLink && !renderAsButton && /*#__PURE__*/_jsxs(_Fragment, {
189
+ children: [/*#__PURE__*/_jsx(Icon, {
180
190
  icon: "externalLink",
181
191
  size: "xsm",
182
192
  color: "inherit"
183
- }, void 0, false), /*#__PURE__*/_jsxDEV(VisuallyHidden, {
193
+ }), /*#__PURE__*/_jsx(VisuallyHidden, {
184
194
  children: newTabLabel
185
- }, void 0, false)]
186
- }, void 0, true)]
187
- }, void 0, true);
195
+ })]
196
+ })]
197
+ });
188
198
  let linkElement;
189
199
  if (renderAsButton) {
190
- linkElement = /*#__PURE__*/_jsxDEV("button", {
200
+ linkElement = /*#__PURE__*/_jsx("button", {
191
201
  ref: ref,
192
202
  type: "button",
193
203
  onClick: onClick,
@@ -200,9 +210,28 @@ export function Link({
200
210
  }), stylex.props(styles.base, styles.buttonReset, linkColorStyles[color], hasUnderline && styles.hasUnderline, isStandalone && styles.standalone, isDisabled && styles.disabled, xstyle), className, style),
201
211
  ...props,
202
212
  children: sharedContent
203
- }, void 0, false);
213
+ });
214
+ } else if (isDisabled) {
215
+ // A disabled link renders as a plain <a> with no href: an href-less
216
+ // anchor is not focusable and exposes no link affordance, so programmatic
217
+ // focus + Enter, AT activation commands, and middle-click cannot navigate
218
+ // or fire the consumer onClick. The router LinkComponent is deliberately
219
+ // skipped — a disabled link performs no navigation, and custom router
220
+ // links may require a live href. target/rel are omitted with the href.
221
+ linkElement = /*#__PURE__*/_jsx("a", {
222
+ ref: ref,
223
+ onClick: preventDefaultClick,
224
+ "aria-label": label || undefined,
225
+ "aria-disabled": true,
226
+ tabIndex: -1,
227
+ ...mergeProps(themeProps('link', {
228
+ color
229
+ }), stylex.props(styles.base, linkColorStyles[color], hasUnderline && styles.hasUnderline, isStandalone && styles.standalone, styles.disabled, xstyle), className, style),
230
+ ...props,
231
+ children: sharedContent
232
+ });
204
233
  } else {
205
- linkElement = /*#__PURE__*/_jsxDEV(LinkComponent, {
234
+ linkElement = /*#__PURE__*/_jsx(LinkComponent, {
206
235
  ref: ref,
207
236
  href: href,
208
237
  target: target,
@@ -216,16 +245,16 @@ export function Link({
216
245
  }), stylex.props(styles.base, linkColorStyles[color], hasUnderline && styles.hasUnderline, isStandalone && styles.standalone, isDisabled && styles.disabled, xstyle), className, style),
217
246
  ...props,
218
247
  children: sharedContent
219
- }, void 0, false);
248
+ });
220
249
  }
221
250
 
222
251
  // Wrap with tooltip if provided
223
252
  if (tooltip) {
224
- return /*#__PURE__*/_jsxDEV(Tooltip, {
253
+ return /*#__PURE__*/_jsx(Tooltip, {
225
254
  content: tooltip,
226
255
  placement: "above",
227
256
  children: linkElement
228
- }, void 0, false);
257
+ });
229
258
  }
230
259
  return linkElement;
231
260
  }
@@ -27,7 +27,7 @@
27
27
  */
28
28
  import { useMemo } from 'react';
29
29
  import { LinkContext } from "./LinkContext.js";
30
- import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
30
+ import { jsx as _jsx } from "react/jsx-runtime";
31
31
  /**
32
32
  * Provides a custom link component to all Astryx components in the subtree.
33
33
  *
@@ -42,9 +42,9 @@ export function LinkProvider({
42
42
  const value = useMemo(() => ({
43
43
  component
44
44
  }), [component]);
45
- return /*#__PURE__*/_jsxDEV(LinkContext, {
45
+ return /*#__PURE__*/_jsx(LinkContext, {
46
46
  value: value,
47
47
  children: children
48
- }, void 0, false);
48
+ });
49
49
  }
50
50
  LinkProvider.displayName = 'LinkProvider';