@galaxy-io/dls 1.6.1 → 2.0.1

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 (540) hide show
  1. package/README.md +47 -50
  2. package/biome/index.json +74 -0
  3. package/biome/plugins/no-hex-literal.grit +20 -0
  4. package/biome/plugins/no-inline-style.grit +13 -0
  5. package/biome/plugins/no-margin.grit +9 -0
  6. package/biome/plugins/warn/no-hex-literal.grit +23 -0
  7. package/biome/plugins/warn/no-inline-style.grit +13 -0
  8. package/biome/plugins/warn/no-margin.grit +9 -0
  9. package/dist/a11y/FocusScope.d.ts +44 -0
  10. package/dist/a11y/FocusScope.js +229 -0
  11. package/dist/a11y/VisuallyHidden.d.ts +21 -0
  12. package/dist/a11y/VisuallyHidden.js +30 -0
  13. package/dist/avatar/Avatar.d.ts +56 -14
  14. package/dist/avatar/Avatar.js +250 -96
  15. package/dist/avatar/AvatarGroup.d.ts +43 -0
  16. package/dist/avatar/AvatarGroup.js +153 -0
  17. package/dist/backgrounds/GridBackground.d.ts +48 -0
  18. package/dist/backgrounds/GridBackground.js +146 -0
  19. package/dist/beacons/Beacon.d.ts +86 -22
  20. package/dist/beacons/Beacon.js +170 -47
  21. package/dist/brand/GalaxyFilamentWordmark.d.ts +30 -0
  22. package/dist/brand/GalaxyFilamentWordmark.js +39 -0
  23. package/dist/brand/GalaxyLogomark.d.ts +26 -0
  24. package/dist/brand/GalaxyLogomark.js +41 -0
  25. package/dist/brand/GalaxyLogomarkAnimation.d.ts +36 -0
  26. package/dist/brand/GalaxyLogomarkAnimation.js +107 -0
  27. package/dist/brand/GalaxyWordmark.d.ts +30 -0
  28. package/dist/brand/GalaxyWordmark.js +63 -0
  29. package/dist/brand/assets/galaxy-logomark-animation.js +136678 -0
  30. package/dist/brand/brandMark.d.ts +26 -0
  31. package/dist/brand/brandMark.js +35 -0
  32. package/dist/buttons/Button.d.ts +148 -59
  33. package/dist/buttons/Button.js +437 -227
  34. package/dist/buttons/ButtonGroup.d.ts +38 -0
  35. package/dist/buttons/ButtonGroup.js +68 -0
  36. package/dist/buttons/CopyButton.d.ts +77 -0
  37. package/dist/buttons/CopyButton.js +65 -0
  38. package/dist/charts/AreaChart.d.ts +49 -0
  39. package/dist/charts/AreaChart.js +31 -0
  40. package/dist/charts/BarChart.d.ts +54 -67
  41. package/dist/charts/BarChart.js +160 -124
  42. package/dist/charts/ChartAxis.d.ts +35 -40
  43. package/dist/charts/ChartAxis.js +114 -90
  44. package/dist/charts/ChartCategoryTargets.d.ts +12 -26
  45. package/dist/charts/ChartCategoryTargets.js +33 -20
  46. package/dist/charts/ChartFrame.d.ts +71 -116
  47. package/dist/charts/ChartFrame.js +306 -97
  48. package/dist/charts/ChartGroupProvider.d.ts +30 -41
  49. package/dist/charts/ChartGroupProvider.js +20 -7
  50. package/dist/charts/ChartLegend.d.ts +37 -48
  51. package/dist/charts/ChartLegend.js +243 -125
  52. package/dist/charts/ChartMarkTargets.d.ts +12 -28
  53. package/dist/charts/ChartMarkTargets.js +34 -20
  54. package/dist/charts/ChartPrimitives.d.ts +50 -305
  55. package/dist/charts/ChartPrimitives.js +65 -413
  56. package/dist/charts/ChartTooltip.d.ts +20 -26
  57. package/dist/charts/ChartTooltip.js +77 -40
  58. package/dist/charts/Heatmap.d.ts +35 -0
  59. package/dist/charts/Heatmap.js +307 -0
  60. package/dist/charts/LineChart.d.ts +54 -47
  61. package/dist/charts/LineChart.js +174 -121
  62. package/dist/charts/PieChart.d.ts +32 -53
  63. package/dist/charts/PieChart.js +159 -136
  64. package/dist/charts/Sparkline.d.ts +107 -0
  65. package/dist/charts/Sparkline.js +244 -0
  66. package/dist/charts/StatChart.d.ts +37 -13
  67. package/dist/charts/StatChart.js +82 -35
  68. package/dist/charts/barChartGeometry.d.ts +138 -86
  69. package/dist/charts/barChartGeometry.js +122 -101
  70. package/dist/charts/barChartLegend.d.ts +14 -18
  71. package/dist/charts/barChartLegend.js +18 -13
  72. package/dist/charts/chartFormat.d.ts +12 -18
  73. package/dist/charts/chartFormat.js +20 -52
  74. package/dist/charts/chartPalette.d.ts +33 -0
  75. package/dist/charts/chartPalette.js +68 -0
  76. package/dist/charts/chartScales.d.ts +41 -108
  77. package/dist/charts/chartScales.js +62 -128
  78. package/dist/charts/chartSelection.d.ts +15 -0
  79. package/dist/charts/chartSelection.js +22 -0
  80. package/dist/charts/constants.d.ts +100 -256
  81. package/dist/charts/constants.js +109 -275
  82. package/dist/charts/heatmapGeometry.d.ts +95 -0
  83. package/dist/charts/heatmapGeometry.js +155 -0
  84. package/dist/charts/lineChartGeometry.d.ts +108 -58
  85. package/dist/charts/lineChartGeometry.js +120 -78
  86. package/dist/charts/pieChartGeometry.d.ts +66 -40
  87. package/dist/charts/pieChartGeometry.js +68 -38
  88. package/dist/charts/types.d.ts +206 -466
  89. package/dist/charts/types.js +55 -144
  90. package/dist/charts/useCartesianChartLayout.d.ts +28 -59
  91. package/dist/charts/useCartesianChartLayout.js +47 -32
  92. package/dist/charts/useChartDimensions.d.ts +19 -40
  93. package/dist/charts/useChartDimensions.js +40 -56
  94. package/dist/charts/useChartFormatters.d.ts +6 -15
  95. package/dist/charts/useChartFormatters.js +4 -9
  96. package/dist/charts/useChartInteraction.d.ts +69 -116
  97. package/dist/charts/useChartInteraction.js +148 -78
  98. package/dist/charts/useChartTooltipPosition.d.ts +29 -39
  99. package/dist/charts/useChartTooltipPosition.js +14 -5
  100. package/dist/charts/useSeriesColorResolver.d.ts +11 -33
  101. package/dist/charts/useSeriesColorResolver.js +19 -12
  102. package/dist/chips/Chip.d.ts +155 -44
  103. package/dist/chips/Chip.js +329 -155
  104. package/dist/chips/ChipGroup.d.ts +53 -0
  105. package/dist/chips/ChipGroup.js +98 -0
  106. package/dist/drawer/Drawer.d.ts +83 -17
  107. package/dist/drawer/Drawer.js +399 -65
  108. package/dist/dropdown/Dropdown.d.ts +80 -63
  109. package/dist/dropdown/Dropdown.js +127 -129
  110. package/dist/editor/CodeEditor.d.ts +119 -40
  111. package/dist/editor/CodeEditor.js +490 -400
  112. package/dist/editor/CodeEditorReactWidget.d.ts +20 -17
  113. package/dist/editor/CodeEditorReactWidget.js +28 -21
  114. package/dist/feedback/Alert.d.ts +49 -0
  115. package/dist/feedback/Alert.js +172 -0
  116. package/dist/feedback/EmptyState.d.ts +39 -0
  117. package/dist/feedback/EmptyState.js +109 -0
  118. package/dist/feedback/ProgressBar.d.ts +125 -0
  119. package/dist/feedback/ProgressBar.js +183 -0
  120. package/dist/feedback/ProgressCircle.d.ts +99 -0
  121. package/dist/feedback/ProgressCircle.js +187 -0
  122. package/dist/feedback/Skeleton.d.ts +69 -0
  123. package/dist/feedback/Skeleton.js +130 -0
  124. package/dist/feedback/Spinner.d.ts +63 -0
  125. package/dist/feedback/Spinner.js +141 -0
  126. package/dist/fonts.css +70 -0
  127. package/dist/hooks/internal/useIsClient.d.ts +2 -0
  128. package/dist/hooks/internal/useIsClient.js +14 -0
  129. package/dist/hooks/useClipboard.d.ts +19 -0
  130. package/dist/hooks/useClipboard.js +45 -0
  131. package/dist/hooks/useControlledOpenState.d.ts +21 -0
  132. package/dist/hooks/useControlledOpenState.js +19 -0
  133. package/dist/hooks/useControlledState.d.ts +19 -0
  134. package/dist/hooks/useControlledState.js +22 -0
  135. package/dist/hooks/useDebouncedValue.d.ts +14 -0
  136. package/dist/hooks/useDebouncedValue.js +33 -0
  137. package/dist/hooks/useDisclosure.d.ts +26 -0
  138. package/dist/hooks/useDisclosure.js +36 -0
  139. package/dist/hooks/useDismiss.d.ts +23 -27
  140. package/dist/hooks/useDismiss.js +39 -27
  141. package/dist/hooks/useElementClientSize.d.ts +10 -10
  142. package/dist/hooks/useElementClientSize.js +8 -11
  143. package/dist/hooks/useElementWidth.d.ts +6 -13
  144. package/dist/hooks/useElementWidth.js +6 -14
  145. package/dist/hooks/useField.d.ts +47 -0
  146. package/dist/hooks/useField.js +40 -0
  147. package/dist/hooks/useHotkey.d.ts +77 -0
  148. package/dist/hooks/useHotkey.js +246 -0
  149. package/dist/hooks/useIsMac.d.ts +12 -0
  150. package/dist/hooks/useIsMac.js +27 -0
  151. package/dist/hooks/useIsomorphicLayoutEffect.d.ts +17 -0
  152. package/dist/hooks/useIsomorphicLayoutEffect.js +20 -0
  153. package/dist/hooks/useLocalStorage.d.ts +28 -0
  154. package/dist/hooks/useLocalStorage.js +145 -0
  155. package/dist/hooks/useMediaQuery.d.ts +11 -0
  156. package/dist/hooks/useMediaQuery.js +23 -0
  157. package/dist/hooks/usePrefersReducedMotion.d.ts +12 -0
  158. package/dist/hooks/usePrefersReducedMotion.js +25 -0
  159. package/dist/hooks/useResize.d.ts +42 -62
  160. package/dist/hooks/useResize.js +43 -31
  161. package/dist/icons/Icon.d.ts +64 -37
  162. package/dist/icons/Icon.js +96 -37
  163. package/dist/icons/internal/IconSlot.d.ts +10 -0
  164. package/dist/icons/internal/IconSlot.js +32 -0
  165. package/dist/inputs/CheckboxGroup.d.ts +115 -0
  166. package/dist/inputs/CheckboxGroup.js +183 -0
  167. package/dist/inputs/CheckboxInput.d.ts +98 -28
  168. package/dist/inputs/CheckboxInput.js +218 -88
  169. package/dist/inputs/ColorInput.d.ts +115 -29
  170. package/dist/inputs/ColorInput.js +748 -326
  171. package/dist/inputs/CopyInput.d.ts +49 -20
  172. package/dist/inputs/CopyInput.js +57 -49
  173. package/dist/inputs/CronInput.d.ts +94 -0
  174. package/dist/inputs/CronInput.js +618 -0
  175. package/dist/inputs/DateInput.d.ts +175 -28
  176. package/dist/inputs/DateInput.js +1109 -451
  177. package/dist/inputs/DurationInput.d.ts +101 -0
  178. package/dist/inputs/DurationInput.js +441 -0
  179. package/dist/inputs/Field.d.ts +75 -0
  180. package/dist/inputs/Field.js +247 -0
  181. package/dist/inputs/Fieldset.d.ts +53 -0
  182. package/dist/inputs/Fieldset.js +149 -0
  183. package/dist/inputs/FileInput.d.ts +110 -0
  184. package/dist/inputs/FileInput.js +476 -0
  185. package/dist/inputs/Input.d.ts +148 -187
  186. package/dist/inputs/Input.js +339 -259
  187. package/dist/inputs/KeyValueInput.d.ts +120 -0
  188. package/dist/inputs/KeyValueInput.js +383 -0
  189. package/dist/inputs/MultiSelectInput.d.ts +165 -54
  190. package/dist/inputs/MultiSelectInput.js +175 -559
  191. package/dist/inputs/NumberInput.d.ts +65 -9
  192. package/dist/inputs/NumberInput.js +197 -40
  193. package/dist/inputs/PasswordInput.d.ts +17 -12
  194. package/dist/inputs/PasswordInput.js +33 -33
  195. package/dist/inputs/PinInput.d.ts +117 -0
  196. package/dist/inputs/PinInput.js +364 -0
  197. package/dist/inputs/RadioGroup.d.ts +115 -0
  198. package/dist/inputs/RadioGroup.js +179 -0
  199. package/dist/inputs/RadioInput.d.ts +87 -24
  200. package/dist/inputs/RadioInput.js +182 -95
  201. package/dist/inputs/SearchInput.d.ts +66 -0
  202. package/dist/inputs/SearchInput.js +156 -0
  203. package/dist/inputs/SelectInput.d.ts +195 -55
  204. package/dist/inputs/SelectInput.js +1308 -446
  205. package/dist/inputs/SliderInput.d.ts +150 -30
  206. package/dist/inputs/SliderInput.js +441 -186
  207. package/dist/inputs/SwitchInput.d.ts +109 -0
  208. package/dist/inputs/SwitchInput.js +248 -0
  209. package/dist/inputs/TagInput.d.ts +117 -0
  210. package/dist/inputs/TagInput.js +408 -0
  211. package/dist/inputs/TextAreaInput.d.ts +146 -44
  212. package/dist/inputs/TextAreaInput.js +298 -198
  213. package/dist/inputs/TextInput.d.ts +4 -13
  214. package/dist/inputs/TextInput.js +13 -48
  215. package/dist/inputs/ToggleInput.d.ts +120 -22
  216. package/dist/inputs/ToggleInput.js +262 -116
  217. package/dist/inputs/internal/bareField.d.ts +18 -0
  218. package/dist/inputs/internal/bareField.js +38 -0
  219. package/dist/inputs/internal/devWarn.d.ts +7 -0
  220. package/dist/inputs/internal/devWarn.js +30 -0
  221. package/dist/inputs/internal/fieldFrame.d.ts +34 -0
  222. package/dist/inputs/internal/fieldFrame.js +64 -0
  223. package/dist/inputs/internal/fieldWiring.d.ts +50 -0
  224. package/dist/inputs/internal/fieldWiring.js +38 -0
  225. package/dist/inputs/internal/innerButton.d.ts +2 -0
  226. package/dist/inputs/internal/innerButton.js +24 -0
  227. package/dist/inputs/internal/ownField.d.ts +45 -0
  228. package/dist/inputs/internal/ownField.js +58 -0
  229. package/dist/inputs/internal/predicates.d.ts +9 -0
  230. package/dist/inputs/internal/predicates.js +11 -0
  231. package/dist/inputs/internal/useComboboxPopover.d.ts +46 -0
  232. package/dist/inputs/internal/useComboboxPopover.js +92 -0
  233. package/dist/json/JsonViewer.d.ts +62 -0
  234. package/dist/json/JsonViewer.js +483 -0
  235. package/dist/layout/Box.d.ts +87 -0
  236. package/dist/layout/Box.js +109 -0
  237. package/dist/layout/Divider.d.ts +25 -0
  238. package/dist/layout/Divider.js +70 -0
  239. package/dist/layout/Flex.d.ts +139 -0
  240. package/dist/layout/Flex.js +165 -0
  241. package/dist/layout/FlexItem.d.ts +72 -0
  242. package/dist/layout/FlexItem.js +84 -0
  243. package/dist/layout/Grid.d.ts +140 -0
  244. package/dist/layout/Grid.js +178 -0
  245. package/dist/layout/Portal.d.ts +29 -0
  246. package/dist/layout/Portal.js +27 -0
  247. package/dist/layout/ResizablePanels.d.ts +88 -0
  248. package/dist/layout/ResizablePanels.js +198 -0
  249. package/dist/layout/ResizeHandle.d.ts +48 -0
  250. package/dist/layout/ResizeHandle.js +143 -0
  251. package/dist/layout/ScrollArea.d.ts +30 -0
  252. package/dist/layout/ScrollArea.js +138 -0
  253. package/dist/links/Link.d.ts +101 -1
  254. package/dist/links/Link.js +166 -4
  255. package/dist/lists/BulletedList.d.ts +25 -7
  256. package/dist/lists/BulletedList.js +72 -27
  257. package/dist/lists/DescriptionList.d.ts +91 -0
  258. package/dist/lists/DescriptionList.js +147 -0
  259. package/dist/menu/ContextMenu.d.ts +64 -0
  260. package/dist/menu/ContextMenu.js +34 -0
  261. package/dist/menu/Menu.d.ts +280 -0
  262. package/dist/menu/Menu.js +1003 -0
  263. package/dist/modal/ConfirmDialog.d.ts +55 -0
  264. package/dist/modal/ConfirmDialog.js +151 -0
  265. package/dist/modal/Modal.d.ts +64 -14
  266. package/dist/modal/Modal.js +189 -48
  267. package/dist/navigation/Breadcrumbs.d.ts +65 -0
  268. package/dist/navigation/Breadcrumbs.js +243 -0
  269. package/dist/navigation/CommandPalette.d.ts +83 -0
  270. package/dist/navigation/CommandPalette.js +509 -0
  271. package/dist/navigation/Pagination.d.ts +87 -0
  272. package/dist/navigation/Pagination.js +300 -0
  273. package/dist/navigation/SidebarNav.d.ts +107 -0
  274. package/dist/navigation/SidebarNav.js +341 -0
  275. package/dist/navigation/Stepper.d.ts +52 -0
  276. package/dist/navigation/Stepper.js +207 -0
  277. package/dist/navigation/Tabs.d.ts +113 -0
  278. package/dist/navigation/Tabs.js +543 -0
  279. package/dist/navigation/Topbar.d.ts +20 -0
  280. package/dist/navigation/Topbar.js +62 -0
  281. package/dist/overlay/OverlayProvider.d.ts +28 -32
  282. package/dist/overlay/OverlayProvider.js +42 -93
  283. package/dist/overlay/useOverlay.d.ts +88 -12
  284. package/dist/overlay/useOverlay.js +220 -43
  285. package/dist/overlays/Popover.d.ts +114 -0
  286. package/dist/overlays/Popover.js +389 -0
  287. package/dist/shapes/Circle.d.ts +84 -8
  288. package/dist/shapes/Circle.js +122 -20
  289. package/dist/shapes/Square.d.ts +84 -8
  290. package/dist/shapes/Square.js +123 -20
  291. package/dist/styles/mixins.d.ts +35 -0
  292. package/dist/styles/mixins.js +60 -0
  293. package/dist/styles.css +1 -202
  294. package/dist/table/InfiniteSpreadsheet.d.ts +140 -10
  295. package/dist/table/InfiniteSpreadsheet.js +762 -225
  296. package/dist/table/InfiniteTable.d.ts +116 -14
  297. package/dist/table/InfiniteTable.js +287 -429
  298. package/dist/table/SpreadsheetCellEditor.d.ts +54 -6
  299. package/dist/table/SpreadsheetCellEditor.js +163 -84
  300. package/dist/table/TableCore.d.ts +252 -0
  301. package/dist/table/TableCore.js +1082 -0
  302. package/dist/table/VirtualizedInfiniteTable.d.ts +104 -14
  303. package/dist/table/VirtualizedInfiniteTable.js +280 -219
  304. package/dist/table/types.d.ts +66 -244
  305. package/dist/table/types.js +0 -51
  306. package/dist/table/useInfiniteScrollSentinel.d.ts +25 -21
  307. package/dist/table/useInfiniteScrollSentinel.js +38 -30
  308. package/dist/table/useSpreadsheetCellNavigation.d.ts +44 -0
  309. package/dist/table/useSpreadsheetCellNavigation.js +141 -0
  310. package/dist/table/useTableColumnLayout.d.ts +90 -25
  311. package/dist/table/useTableColumnLayout.js +255 -50
  312. package/dist/table/useTableKeyboardNavigation.d.ts +32 -21
  313. package/dist/table/useTableKeyboardNavigation.js +95 -71
  314. package/dist/table/useTableRowSelection.d.ts +24 -25
  315. package/dist/table/useTableRowSelection.js +57 -84
  316. package/dist/table/useTableVirtualizer.d.ts +20 -0
  317. package/dist/table/useTableVirtualizer.js +48 -0
  318. package/dist/text/Bold.d.ts +5 -6
  319. package/dist/text/Bold.js +16 -15
  320. package/dist/text/Code.d.ts +5 -6
  321. package/dist/text/Code.js +16 -25
  322. package/dist/text/CodeBlock.d.ts +77 -0
  323. package/dist/text/CodeBlock.js +373 -0
  324. package/dist/text/EditableText.d.ts +55 -15
  325. package/dist/text/EditableText.js +153 -135
  326. package/dist/text/Ellipsis.d.ts +34 -8
  327. package/dist/text/Ellipsis.js +55 -23
  328. package/dist/text/Kbd.d.ts +72 -0
  329. package/dist/text/Kbd.js +284 -0
  330. package/dist/text/MarkdownText.d.ts +27 -10
  331. package/dist/text/MarkdownText.js +317 -300
  332. package/dist/text/RequiredMarker.d.ts +17 -5
  333. package/dist/text/RequiredMarker.js +34 -36
  334. package/dist/text/Selectable.d.ts +5 -6
  335. package/dist/text/Selectable.js +16 -13
  336. package/dist/text/Span.d.ts +82 -0
  337. package/dist/text/Span.js +115 -0
  338. package/dist/text/Text.d.ts +128 -41
  339. package/dist/text/Text.js +209 -76
  340. package/dist/theme/GalaxyProvider.d.ts +75 -0
  341. package/dist/theme/GalaxyProvider.js +223 -0
  342. package/dist/theme/ThemeSwitcher.d.ts +52 -0
  343. package/dist/theme/ThemeSwitcher.js +94 -0
  344. package/dist/theme/enums.d.ts +118 -0
  345. package/dist/theme/enums.js +144 -0
  346. package/dist/theme/tokens/dark.d.ts +2 -0
  347. package/dist/theme/tokens/dark.js +275 -0
  348. package/dist/theme/tokens/generate.d.ts +15 -0
  349. package/dist/theme/tokens/generate.js +47 -0
  350. package/dist/theme/tokens/light.d.ts +2 -0
  351. package/dist/theme/tokens/light.js +274 -0
  352. package/dist/theme/tokens/palette.d.ts +14 -0
  353. package/dist/theme/tokens/palette.js +153 -0
  354. package/dist/theme/tokens/scales.d.ts +26 -0
  355. package/dist/theme/tokens/scales.js +154 -0
  356. package/dist/theme/tokens/t.d.ts +3 -0
  357. package/dist/theme/tokens/t.js +25 -0
  358. package/dist/theme/tokens/types.d.ts +189 -0
  359. package/dist/theme/tokens/types.js +0 -0
  360. package/dist/theme/useGalaxyTheme.d.ts +46 -0
  361. package/dist/theme/useGalaxyTheme.js +36 -0
  362. package/dist/theme/useInverseScope.d.ts +18 -0
  363. package/dist/theme/useInverseScope.js +33 -0
  364. package/dist/three/GalaxyLogomark3D.d.ts +46 -0
  365. package/dist/three/GalaxyLogomark3D.js +134 -0
  366. package/dist/three/assets/galaxy-logomark.js +4 -0
  367. package/dist/three/galaxyLogomark3DScene.d.ts +27 -0
  368. package/dist/three/galaxyLogomark3DScene.js +165 -0
  369. package/dist/timeline/Timeline.d.ts +120 -0
  370. package/dist/timeline/Timeline.js +301 -0
  371. package/dist/toast/Toast.d.ts +43 -19
  372. package/dist/toast/Toast.js +130 -89
  373. package/dist/toast/ToastProvider.d.ts +23 -23
  374. package/dist/toast/ToastProvider.js +298 -101
  375. package/dist/toast/ToastViewport.d.ts +12 -0
  376. package/dist/toast/ToastViewport.js +210 -0
  377. package/dist/toast/useToast.d.ts +139 -5
  378. package/dist/toast/useToast.js +15 -13
  379. package/dist/tokens.css +654 -0
  380. package/dist/tooltip/Tooltip.d.ts +64 -44
  381. package/dist/tooltip/Tooltip.js +280 -73
  382. package/dist/tooltip/internal/LazyTooltip.d.ts +7 -0
  383. package/dist/tooltip/internal/LazyTooltip.js +53 -0
  384. package/dist/transform/Fade.d.ts +33 -11
  385. package/dist/transform/Fade.js +71 -19
  386. package/dist/transform/Flasher.d.ts +25 -0
  387. package/dist/transform/Flasher.js +39 -0
  388. package/dist/transform/Rotate.d.ts +24 -12
  389. package/dist/transform/Rotate.js +36 -22
  390. package/dist/transform/ScaleFade.d.ts +36 -11
  391. package/dist/transform/ScaleFade.js +86 -28
  392. package/dist/transform/internal/CollapseMotion.d.ts +10 -0
  393. package/dist/transform/internal/CollapseMotion.js +65 -0
  394. package/dist/tree/Tree.d.ts +85 -0
  395. package/dist/tree/Tree.js +387 -0
  396. package/dist/tree/treeRow.d.ts +39 -0
  397. package/dist/tree/treeRow.js +75 -0
  398. package/dist/utils/colors.d.ts +46 -13
  399. package/dist/utils/colors.js +92 -34
  400. package/dist/utils/css.d.ts +23 -0
  401. package/dist/utils/css.js +30 -0
  402. package/dist/utils/format.d.ts +58 -0
  403. package/dist/utils/format.js +220 -0
  404. package/dist/vite/index.d.ts +16 -0
  405. package/dist/vite/index.js +52 -0
  406. package/dist/widget/Widget.d.ts +164 -48
  407. package/dist/widget/Widget.js +335 -96
  408. package/dist/widget/WidgetGroup.d.ts +36 -0
  409. package/dist/widget/WidgetGroup.js +103 -0
  410. package/package.json +855 -157
  411. package/dist/accordion/Accordion.d.ts +0 -54
  412. package/dist/accordion/Accordion.js +0 -183
  413. package/dist/assets/components/GalaxyFilamentWordmarkDark.d.ts +0 -3
  414. package/dist/assets/components/GalaxyFilamentWordmarkDark.js +0 -14
  415. package/dist/assets/components/GalaxyFilamentWordmarkLight.d.ts +0 -3
  416. package/dist/assets/components/GalaxyFilamentWordmarkLight.js +0 -14
  417. package/dist/assets/components/GalaxyLogomarkDark.d.ts +0 -3
  418. package/dist/assets/components/GalaxyLogomarkDark.js +0 -11
  419. package/dist/assets/components/GalaxyLogomarkLight.d.ts +0 -3
  420. package/dist/assets/components/GalaxyLogomarkLight.js +0 -17
  421. package/dist/assets/components/GalaxyWordmarkDark.d.ts +0 -3
  422. package/dist/assets/components/GalaxyWordmarkDark.js +0 -15
  423. package/dist/assets/components/GalaxyWordmarkLight.d.ts +0 -3
  424. package/dist/assets/components/GalaxyWordmarkLight.js +0 -28
  425. package/dist/assets/models/galaxy-animation.js +0 -136666
  426. package/dist/assets/models/galaxy-logomark.js +0 -4
  427. package/dist/avatar/AvatarShimmer.d.ts +0 -30
  428. package/dist/avatar/AvatarShimmer.js +0 -22
  429. package/dist/backgrounds/CellGridBackground.d.ts +0 -24
  430. package/dist/backgrounds/CellGridBackground.js +0 -44
  431. package/dist/backgrounds/CrossGridBackground.d.ts +0 -26
  432. package/dist/backgrounds/CrossGridBackground.js +0 -49
  433. package/dist/backgrounds/DotGridBackground.d.ts +0 -24
  434. package/dist/backgrounds/DotGridBackground.js +0 -47
  435. package/dist/badge/Badge.d.ts +0 -42
  436. package/dist/badge/Badge.js +0 -99
  437. package/dist/charts/ChartEmptyState.d.ts +0 -17
  438. package/dist/charts/ChartEmptyState.js +0 -29
  439. package/dist/charts/ProgressBar.d.ts +0 -29
  440. package/dist/charts/ProgressBar.js +0 -65
  441. package/dist/charts/chartTheme.d.ts +0 -18
  442. package/dist/charts/chartTheme.js +0 -26
  443. package/dist/containers/FlexItem.d.ts +0 -50
  444. package/dist/containers/FlexItem.js +0 -91
  445. package/dist/containers/FlexWrapper.d.ts +0 -96
  446. package/dist/containers/FlexWrapper.js +0 -143
  447. package/dist/containers/GridWrapper.d.ts +0 -79
  448. package/dist/containers/GridWrapper.js +0 -125
  449. package/dist/containers/Spacing.d.ts +0 -23
  450. package/dist/containers/Spacing.js +0 -59
  451. package/dist/containers/Wrapper.d.ts +0 -26
  452. package/dist/containers/Wrapper.js +0 -54
  453. package/dist/dividers/HorizontalDivider.d.ts +0 -7
  454. package/dist/dividers/HorizontalDivider.js +0 -39
  455. package/dist/dividers/VerticalDivider.d.ts +0 -6
  456. package/dist/dividers/VerticalDivider.js +0 -21
  457. package/dist/icons/GalaxyFilamentWordmark.d.ts +0 -11
  458. package/dist/icons/GalaxyFilamentWordmark.js +0 -25
  459. package/dist/icons/GalaxyLogomark.d.ts +0 -13
  460. package/dist/icons/GalaxyLogomark.js +0 -27
  461. package/dist/icons/GalaxyLogomark3D.d.ts +0 -56
  462. package/dist/icons/GalaxyLogomark3D.js +0 -319
  463. package/dist/icons/GalaxyLogomarkAnimation.d.ts +0 -18
  464. package/dist/icons/GalaxyLogomarkAnimation.js +0 -48
  465. package/dist/icons/GalaxyWordmark.d.ts +0 -11
  466. package/dist/icons/GalaxyWordmark.js +0 -25
  467. package/dist/inputs/MultiTextInput.d.ts +0 -32
  468. package/dist/inputs/MultiTextInput.js +0 -180
  469. package/dist/inputs/SwitcherInput.d.ts +0 -30
  470. package/dist/inputs/SwitcherInput.js +0 -81
  471. package/dist/inputs/hooks.d.ts +0 -10
  472. package/dist/inputs/hooks.js +0 -22
  473. package/dist/overlay/constants.d.ts +0 -28
  474. package/dist/overlay/constants.js +0 -37
  475. package/dist/resizable/HorizontalResizeHandle.d.ts +0 -17
  476. package/dist/resizable/HorizontalResizeHandle.js +0 -38
  477. package/dist/resizable/VerticalResizeHandle.d.ts +0 -18
  478. package/dist/resizable/VerticalResizeHandle.js +0 -39
  479. package/dist/table/SpreadsheetCell.d.ts +0 -21
  480. package/dist/table/SpreadsheetCell.js +0 -71
  481. package/dist/table/SpreadsheetHeaderCell.d.ts +0 -23
  482. package/dist/table/SpreadsheetHeaderCell.js +0 -91
  483. package/dist/table/SpreadsheetMenuItem.d.ts +0 -14
  484. package/dist/table/SpreadsheetMenuItem.js +0 -33
  485. package/dist/table/SpreadsheetPrimitives.d.ts +0 -172
  486. package/dist/table/SpreadsheetPrimitives.js +0 -105
  487. package/dist/table/SpreadsheetRow.d.ts +0 -33
  488. package/dist/table/SpreadsheetRow.js +0 -73
  489. package/dist/table/SpreadsheetRowActionCell.d.ts +0 -14
  490. package/dist/table/SpreadsheetRowActionCell.js +0 -51
  491. package/dist/table/TableExpandCell.d.ts +0 -11
  492. package/dist/table/TableExpandCell.js +0 -24
  493. package/dist/table/TableExpandedRow.d.ts +0 -16
  494. package/dist/table/TableExpandedRow.js +0 -77
  495. package/dist/table/TableHeaderCellContent.d.ts +0 -30
  496. package/dist/table/TableHeaderCellContent.js +0 -48
  497. package/dist/table/TablePrimitives.d.ts +0 -313
  498. package/dist/table/TablePrimitives.js +0 -302
  499. package/dist/table/TableSelectCell.d.ts +0 -18
  500. package/dist/table/TableSelectCell.js +0 -27
  501. package/dist/table/TableStatusRow.d.ts +0 -18
  502. package/dist/table/TableStatusRow.js +0 -50
  503. package/dist/table/useSpreadsheetEditing.d.ts +0 -13
  504. package/dist/table/useSpreadsheetEditing.js +0 -41
  505. package/dist/table/useTableColumnResize.d.ts +0 -38
  506. package/dist/table/useTableColumnResize.js +0 -155
  507. package/dist/table/useTableRowExpansion.d.ts +0 -24
  508. package/dist/table/useTableRowExpansion.js +0 -62
  509. package/dist/table/utils.d.ts +0 -50
  510. package/dist/table/utils.js +0 -78
  511. package/dist/text/HotKeys.d.ts +0 -30
  512. package/dist/text/HotKeys.js +0 -74
  513. package/dist/text/Paragraph.d.ts +0 -33
  514. package/dist/text/Paragraph.js +0 -83
  515. package/dist/text/TextShimmer.d.ts +0 -14
  516. package/dist/text/TextShimmer.js +0 -34
  517. package/dist/theme/GalaxyTheme.d.ts +0 -67
  518. package/dist/theme/GalaxyTheme.js +0 -119
  519. package/dist/theme/constants.d.ts +0 -8
  520. package/dist/theme/constants.js +0 -38
  521. package/dist/theme/index.d.ts +0 -6
  522. package/dist/theme/index.js +0 -7
  523. package/dist/theme/types.d.ts +0 -195
  524. package/dist/theme/types.js +0 -10
  525. package/dist/theme/typography.d.ts +0 -2
  526. package/dist/theme/typography.js +0 -73
  527. package/dist/theme/variants/dark.d.ts +0 -2
  528. package/dist/theme/variants/dark.js +0 -125
  529. package/dist/theme/variants/light.d.ts +0 -2
  530. package/dist/theme/variants/light.js +0 -125
  531. package/dist/toast/ToastContainer.d.ts +0 -10
  532. package/dist/toast/ToastContainer.js +0 -31
  533. package/dist/toast/ToastWrapper.d.ts +0 -6
  534. package/dist/toast/ToastWrapper.js +0 -27
  535. package/dist/transform/Flash.d.ts +0 -7
  536. package/dist/transform/Flash.js +0 -18
  537. package/dist/transform/Spin.d.ts +0 -14
  538. package/dist/transform/Spin.js +0 -25
  539. package/dist/utils/linaria.d.ts +0 -1
  540. package/dist/utils/linaria.js +0 -8
@@ -1,13 +1,22 @@
1
- import { useElementClientSize } from "../hooks/useElementClientSize.js";
2
- import "./constants.js";
1
+ import { CHART_TOOLTIP_OFFSET } from "./constants.js";
3
2
  import { clamp } from "./chartScales.js";
3
+ import { useElementClientSize } from "../hooks/useElementClientSize.js";
4
4
  import { useMemo, useRef } from "react";
5
5
  //#region src/charts/useChartTooltipPosition.ts
6
+ /**
7
+ * @internal Chart tooltip placement with edge collision handling (1.x logic): beside the anchor,
8
+ * flipped away from it, clamped inside the plot box. Computed in JS because clamping needs the
9
+ * tooltip's own measured size against the box's.
10
+ */
11
+ /** @internal Vertical placement of the tooltip relative to its anchor. */
6
12
  var ChartTooltipVerticalAlign = /* @__PURE__ */ function(ChartTooltipVerticalAlign) {
13
+ /** The anchor marks the top of something (the highest point in a column). */
7
14
  ChartTooltipVerticalAlign["ABOVE"] = "ABOVE";
15
+ /** The anchor marks a position (a point on an arc). */
8
16
  ChartTooltipVerticalAlign["CENTERED"] = "CENTERED";
9
17
  return ChartTooltipVerticalAlign;
10
18
  }({});
19
+ /** @internal Positions the chart tooltip. */
11
20
  function useChartTooltipPosition({ anchorX, anchorY, containerWidth, containerHeight, anchorHalfWidth = 0, placeAwayFromX, verticalAlign = "ABOVE" }) {
12
21
  const tooltipRef = useRef(null);
13
22
  const { width: tooltipWidth, height: tooltipHeight } = useElementClientSize(tooltipRef);
@@ -15,12 +24,12 @@ function useChartTooltipPosition({ anchorX, anchorY, containerWidth, containerHe
15
24
  const isMeasured = tooltipWidth !== void 0 && tooltipHeight !== void 0;
16
25
  const w = tooltipWidth ?? 0;
17
26
  const h = tooltipHeight ?? 0;
18
- const rawX = (placeAwayFromX !== void 0 ? anchorX < placeAwayFromX : anchorX > containerWidth / 2) ? anchorX - anchorHalfWidth - 10 - w : anchorX + anchorHalfWidth + 10;
27
+ const rawX = (placeAwayFromX !== void 0 ? anchorX < placeAwayFromX : anchorX > containerWidth / 2) ? anchorX - anchorHalfWidth - CHART_TOOLTIP_OFFSET - w : anchorX + anchorHalfWidth + CHART_TOOLTIP_OFFSET;
19
28
  const rawY = verticalAlign === "CENTERED" ? anchorY - h / 2 : Math.min(anchorY, containerHeight / 2);
20
29
  return {
21
30
  tooltipRef,
22
- x: clamp(rawX, 0, Math.max(0, containerWidth - w)),
23
- y: clamp(rawY, 0, Math.max(0, containerHeight - h)),
31
+ x: Math.round(clamp(rawX, 0, Math.max(0, containerWidth - w))),
32
+ y: Math.round(clamp(rawY, 0, Math.max(0, containerHeight - h))),
24
33
  isMeasured
25
34
  };
26
35
  }, [
@@ -1,37 +1,15 @@
1
- import type { ChartPalette, ChartSeriesStyles } from "./types";
2
- /**
3
- * Palette assignment for a chart's series, shared by all three charts.
4
- *
5
- * Every chart resolved colour the same way — look the key up in the `series`
6
- * record, take its slot, fall back to the palette — but each spelled it
7
- * differently and each rebuilt the key list itself. Doing it once here is what
8
- * makes "adding a series never recolours the existing ones" a property of the
9
- * design rather than of three separate call sites remembering to use
10
- * `indexOf` instead of the loop counter.
11
- */
1
+ import { type ChartSeriesColor } from "./chartPalette.js";
2
+ import { ChartPalette, type ChartSeriesStyles } from "./types.js";
3
+ /** @internal What `useSeriesColorResolver` returns. */
12
4
  export interface SeriesColorResolver<TKey extends string> {
13
- /**
14
- * Series keys in `series` record order.
15
- *
16
- * Insertion order is what makes a key's palette slot stable regardless of
17
- * which data happens to contain it, so this is never sorted.
18
- */
5
+ /** Series keys in `series` record order (never sorted: the order is what keeps slots stable). */
19
6
  keys: TKey[];
20
- /** Colour for a series. The record's own `color` wins over the slot. */
21
- resolve: (key: TKey, explicit?: ChartPalette) => string;
22
- /**
23
- * Colour by palette position, for marks that are not series.
24
- *
25
- * A stacked bar's segments are a second dimension with no record of their
26
- * own, so they take the ramp by position rather than by key.
27
- */
28
- resolveByIndex: (index: number, explicit?: ChartPalette) => string;
29
- /**
30
- * Neutral, for a mark that names no series at all.
31
- *
32
- * The pie's folded bucket is not one of the slices, so borrowing a hue would
33
- * imply it is.
34
- */
35
- neutral: string;
7
+ /** Color of a series: its `hex`, its `color` slot, or its position in the automatic order. */
8
+ resolve: (key: TKey) => ChartSeriesColor;
9
+ /** Color by position, for marks that are not series (a stack's components). */
10
+ resolveByIndex: (index: number, explicit?: ChartPalette) => ChartSeriesColor;
11
+ /** Neutral, for a mark that names no series. */
12
+ neutral: ChartSeriesColor;
36
13
  }
14
+ /** @internal Resolves series colors from the `series` record. */
37
15
  export declare function useSeriesColorResolver<TKey extends string>(series: ChartSeriesStyles<TKey>): SeriesColorResolver<TKey>;
@@ -1,26 +1,33 @@
1
- import { useGalaxyTheme } from "../theme/GalaxyTheme.js";
2
- import { resolveChartPaletteColor, resolveSeriesColor } from "./chartTheme.js";
1
+ import { ChartPalette } from "./types.js";
2
+ import { CHART_NEUTRAL_COLOR, resolveChartSeriesColor } from "./chartPalette.js";
3
3
  import { useCallback, useMemo } from "react";
4
4
  //#region src/charts/useSeriesColorResolver.ts
5
+ /**
6
+ * @internal Palette assignment for a chart's series, shared by every chart. A series keeps its
7
+ * slot by its position in the `series` record, so adding a series never recolors the others. No
8
+ * `useGalaxyTheme`: colors are CSS strings, so charts do not re-render on a theme switch.
9
+ */
10
+ var NEUTRAL = {
11
+ color: CHART_NEUTRAL_COLOR,
12
+ palette: ChartPalette.TERTIARY
13
+ };
14
+ /** @internal Resolves series colors from the `series` record. */
5
15
  function useSeriesColorResolver(series) {
6
- const { theme } = useGalaxyTheme();
7
16
  const keys = useMemo(() => Object.keys(series), [series]);
8
- const resolveByIndex = useCallback((index, explicit) => explicit ? resolveChartPaletteColor(theme, explicit) : resolveSeriesColor(theme, index), [theme]);
9
- const resolve = useCallback((key, explicit) => resolveSeriesColor(theme, keys.indexOf(key), explicit ?? series[key]?.color), [
10
- theme,
11
- keys,
12
- series
13
- ]);
17
+ const resolve = useCallback((key) => {
18
+ const style = series[key];
19
+ return resolveChartSeriesColor(keys.indexOf(key), style?.color, style?.hex);
20
+ }, [keys, series]);
21
+ const resolveByIndex = useCallback((index, explicit) => resolveChartSeriesColor(index, explicit), []);
14
22
  return useMemo(() => ({
15
23
  keys,
16
24
  resolve,
17
25
  resolveByIndex,
18
- neutral: theme.color.text.tertiary
26
+ neutral: NEUTRAL
19
27
  }), [
20
28
  keys,
21
29
  resolve,
22
- resolveByIndex,
23
- theme
30
+ resolveByIndex
24
31
  ]);
25
32
  }
26
33
  //#endregion
@@ -1,58 +1,169 @@
1
- import type { Icon as PhosphorIcon } from "@phosphor-icons/react";
2
- /** Chip color. Tints the background, border and label together. */
1
+ import { type Icon as PhosphorIcon } from "@phosphor-icons/react";
2
+ import { type AriaAttributes, type CSSProperties, type MouseEvent, type ReactNode } from "react";
3
+ import type { Hex, PaletteColor } from "../theme/tokens/types.js";
4
+ /** Canonical rungs; the member names the control rung the chip sits in. */
5
+ export declare enum ChipSize {
6
+ /** 16px tall, `caption` text, 10px icon. */
7
+ X_SMALL = "X_SMALL",
8
+ /** 20px tall, `body_sm` text, 12px icon (1.x `SMALL` 18px; 1.x Badge `SMALL` 16px). */
9
+ SMALL = "SMALL",
10
+ /** 24px tall, `body_md` text, 14px icon. The default (1.x `MEDIUM` 20px). */
11
+ MEDIUM = "MEDIUM",
12
+ /** 28px tall, `body_lg` text, 16px icon (1.x `LARGE` 24px). */
13
+ LARGE = "LARGE",
14
+ /** 32px tall, `body_lg` text, 16px icon. */
15
+ X_LARGE = "X_LARGE"
16
+ }
17
+ /**
18
+ * Color role (Constitution V-A color set; meaning only): tints the fill, the text and the border
19
+ * together. Categories take `color` instead.
20
+ */
3
21
  export declare enum ChipVariant {
22
+ /** `background.primary` fill, `text.primary`. */
4
23
  PRIMARY = "PRIMARY",
5
- PRIMARY_ALT = "PRIMARY_ALT",
24
+ /** `background.secondary` fill, `text.primary`. The default (1.x default). */
6
25
  SECONDARY = "SECONDARY",
26
+ /** `background.tertiary` fill, `text.primary`. */
7
27
  TERTIARY = "TERTIARY",
28
+ /** `background.secondary` fill, `text.disabled`. */
29
+ DISABLED = "DISABLED",
30
+ /** The parent's `currentColor`, with a fill and border mixed from it. */
31
+ INHERIT = "INHERIT",
32
+ /** Status: success fill and text. */
8
33
  SUCCESS = "SUCCESS",
34
+ /** Status: warning fill and text. */
9
35
  WARNING = "WARNING",
10
- ERROR = "ERROR",
11
- PINK = "PINK",
12
- ORANGE = "ORANGE",
13
- YELLOW = "YELLOW",
14
- LIME = "LIME",
15
- BLUE = "BLUE",
16
- PURPLE = "PURPLE",
17
- TEAL = "TEAL"
18
- }
19
- /** Chip height. Also drives label and icon size. */
20
- export declare enum ChipSize {
21
- SMALL = "SMALL",
22
- MEDIUM = "MEDIUM",
23
- LARGE = "LARGE"
36
+ /** Status: error fill and text. */
37
+ ERROR = "ERROR"
24
38
  }
25
- export interface ChipProps {
26
- /** Chip text. Required unless `icon` is set — with neither, nothing renders. */
27
- label?: string | number;
28
- /** @default ChipVariant.SECONDARY */
29
- variant?: ChipVariant;
30
- /** @default ChipSize.MEDIUM */
31
- size?: ChipSize;
32
- /** Custom leading graphic. Takes precedence over `icon`. */
33
- svg?: React.ReactNode;
34
- /** Phosphor icon *component* — pass `TagIcon`, not `<TagIcon />`. */
39
+ /** Every Chip prop; `label`, `count` and `ariaLabel` are optional here (see `ChipProps`). */
40
+ export interface ChipBaseProps extends AriaAttributes {
41
+ /**
42
+ * Visible text. Truncates to one line when the chip is narrower than its content; the full
43
+ * text then shows in a Tooltip.
44
+ */
45
+ label?: string;
46
+ /** Phosphor icon component (`TagIcon`, not `<TagIcon />`) before the label, sized to the rung. */
35
47
  icon?: PhosphorIcon;
36
- /** Adds a trailing × button. Omit and the chip isn't dismissible. */
37
- onDismiss?: () => void;
38
- /** Also flips the cursor to `pointer`. */
39
- onClick?: (e: React.MouseEvent<HTMLDivElement>) => void;
40
- /** Fully rounded ends instead of the default small radius. */
48
+ /**
49
+ * Content before the icon and label when `icon` is not enough: an `Avatar`, a `Beacon`, a logo.
50
+ * At most `chip height − 4px` tall. Must not be interactive.
51
+ */
52
+ leading?: ReactNode;
53
+ /**
54
+ * Shows a static `Beacon` dot in the chip's own color before everything else.
55
+ * @default false
56
+ */
57
+ hasDot?: boolean;
58
+ /** A number after the label (or alone, as a badge). Tabular figures. Values of 0 or less are hidden. */
59
+ count?: number;
60
+ /**
61
+ * Counts above this show as `"{max}+"`.
62
+ * @default 99
63
+ */
64
+ max?: number;
65
+ /**
66
+ * The control rung the chip sits in: 16 / 20 / 24 / 28 / 32px tall.
67
+ * @default ChipSize.MEDIUM
68
+ */
69
+ size?: ChipSize;
70
+ /**
71
+ * Raw color for data-driven chips; the fill and border are derived from it. Discouraged: it
72
+ * does not follow the theme. Overrides `variant` and `color`.
73
+ */
74
+ hex?: Hex;
75
+ /**
76
+ * Fully rounded ends instead of the default `radius.md`.
77
+ * @default false
78
+ */
41
79
  isPill?: boolean;
42
- /** Drop the fill and keep only the border. */
43
- noBackground?: boolean;
44
- /** Swap the label for a shimmer placeholder. */
80
+ /**
81
+ * Adds a `0.5px` hairline in the variant's border color.
82
+ * @default false
83
+ */
84
+ hasBorder?: boolean;
85
+ /** Chosen state: a `text.primary` hairline. With `onClick`, the chip is announced as a toggle (`aria-pressed`). */
86
+ isSelected?: boolean;
87
+ /**
88
+ * Disabled look (`ChipVariant.DISABLED`) and, when interactive, blocks `onClick` and `onDismiss`.
89
+ * @default false
90
+ */
91
+ isDisabled?: boolean;
92
+ /**
93
+ * Pulses a placeholder over the leading mark and the text, keeps the width, and blocks
94
+ * `onClick` and `onDismiss`.
95
+ * @default false
96
+ */
45
97
  isLoading?: boolean;
46
- /** Truncate a long label with an ellipsis. Needs a width-bounded parent. */
47
- isEllipsis?: boolean;
48
- /** Selected styling — border picks up the variant color. */
49
- isActive?: boolean;
98
+ /**
99
+ * Wraps the chip body in a `Tooltip` with this content. Pass `""` instead of `undefined` when it
100
+ * toggles, so the chip does not remount.
101
+ */
102
+ tooltip?: ReactNode;
103
+ /** Makes the chip body a `<button>`. Not called while disabled or loading. */
104
+ onClick?: (event: MouseEvent<HTMLButtonElement>) => void;
105
+ /** Adds a trailing × button named "Remove {label}". Not called while disabled or loading. */
106
+ onDismiss?: () => void;
107
+ /**
108
+ * Accessible name. Required by the type when there is neither `label` nor `count`. With a
109
+ * visible label it must start with that text (WCAG 2.5.3).
110
+ */
111
+ ariaLabel?: string;
112
+ /** DOM id on the root `<span>`. */
113
+ id?: string;
114
+ /** Any `data-*` attribute, forwarded to the root `<span>`. */
115
+ [dataAttribute: `data-${string}`]: string | number | boolean | undefined;
116
+ /** Extra class on the root `<span>`. */
117
+ className?: string;
118
+ /** Inline style on the root `<span>`; only for setting CSS custom properties. Merged after `--gx-chip-hex`. */
119
+ style?: CSSProperties;
120
+ }
121
+ /** A chip with a visible label. */
122
+ interface ChipLabelledProps {
123
+ /** Visible text. */
124
+ label: string;
125
+ }
126
+ /** A chip with a count (a badge). */
127
+ interface ChipCountedProps {
128
+ /** A number after the label (or alone, as a badge). */
129
+ count: number;
130
+ }
131
+ /** A chip with neither a label nor a count (icon-only): the accessible name is required. */
132
+ interface ChipNamedProps {
133
+ /** Accessible name. Required when there is neither `label` nor `count`. */
134
+ ariaLabel: string;
135
+ }
136
+ /** A chip colored by meaning (`variant`), or the default `SECONDARY`. */
137
+ interface ChipVariantProps {
138
+ /**
139
+ * Color role: tints the fill, the text and the border together. Neutral members (`PRIMARY` /
140
+ * `SECONDARY` / `TERTIARY`) are fill steps. Not with `color`.
141
+ * @default ChipVariant.SECONDARY
142
+ */
143
+ variant?: ChipVariant;
144
+ /** Categorical palette family. Not with `variant`. */
145
+ color?: undefined;
146
+ }
147
+ /** A chip colored by category (`color`). */
148
+ interface ChipColorProps {
149
+ /**
150
+ * Color role: tints the fill, the text and the border together. Neutral members (`PRIMARY` /
151
+ * `SECONDARY` / `TERTIARY`) are fill steps. Not with `color`.
152
+ * @default ChipVariant.SECONDARY
153
+ */
154
+ variant?: undefined;
155
+ /**
156
+ * Categorical palette family (`"blue"`, `"violet"`, …): the family's text, fill and border,
157
+ * the way a status variant renders. For categories (a source type, a team); meanings take
158
+ * `variant`. Not with `variant`.
159
+ */
160
+ color: PaletteColor;
50
161
  }
51
162
  /**
52
- * A compact tag for a value, filter, or status.
53
- *
54
- * Renders `null` when neither `label` nor `icon` is set. Adding `onDismiss`
55
- * appends a × button; adding `onClick` makes the whole chip clickable.
163
+ * Chip props. A chip with nothing to show or name (`<Chip icon={TagIcon} />`) is a type error, and
164
+ * so is a chip with both `variant` and `color`.
56
165
  */
57
- declare const Chip: ({ label, variant, size, svg, icon, onDismiss, onClick, isPill, noBackground, isLoading, isEllipsis, isActive, }: ChipProps) => import("react").JSX.Element | null;
166
+ export type ChipProps = ChipBaseProps & (ChipVariantProps | ChipColorProps) & (ChipLabelledProps | ChipCountedProps | ChipNamedProps);
167
+ /** A compact, tinted label for one short value: a tag, a category, a filter, or a count. */
168
+ declare const Chip: import("react").ForwardRefExoticComponent<ChipProps & import("react").RefAttributes<HTMLSpanElement>>;
58
169
  export default Chip;