@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
@@ -0,0 +1,25 @@
1
+ import { type AriaAttributes, type CSSProperties } from "react";
2
+ import { Orientation } from "../theme/enums.js";
3
+ export interface DividerProps extends AriaAttributes {
4
+ /**
5
+ * Direction of the rule. A vertical rule needs a flex or grid parent to stretch in.
6
+ * @default Orientation.HORIZONTAL
7
+ */
8
+ orientation?: Orientation;
9
+ /**
10
+ * Caption centered in a break in a horizontal rule (1.x `HorizontalDivider label`). Ignored
11
+ * when vertical.
12
+ */
13
+ label?: string;
14
+ /** DOM id on the root element. */
15
+ id?: string;
16
+ /** Any `data-*` attribute, forwarded to the root element. */
17
+ [dataAttribute: `data-${string}`]: string | number | boolean | undefined;
18
+ /** Extra class on the root element. */
19
+ className?: string;
20
+ /** Inline style on the root element; only for setting CSS custom properties. */
21
+ style?: CSSProperties;
22
+ }
23
+ /** A hairline rule between content, horizontal (optionally labeled) or vertical. */
24
+ declare const Divider: import("react").ForwardRefExoticComponent<DividerProps & import("react").RefAttributes<HTMLElement>>;
25
+ export default Divider;
@@ -0,0 +1,70 @@
1
+ import { Orientation } from "../theme/enums.js";
2
+ /* empty css */
3
+ import { styled } from "@linaria/react";
4
+ import { forwardRef } from "react";
5
+ import { jsx } from "react/jsx-runtime";
6
+ import { cx } from "@linaria/core";
7
+ //#region src/layout/Divider.tsx
8
+ /**
9
+ * A `0.5px` hairline rule that separates content. Replaces 1.x `HorizontalDivider` and
10
+ * `VerticalDivider` (Constitution XII.4): `orientation` picks the direction.
11
+ *
12
+ * - Horizontal, no label: an `<hr>` (implicit `role="separator"`) that spans its parent's width.
13
+ * - Horizontal with a `label`: a `<div role="separator">` whose two rules (`::before` / `::after`)
14
+ * frame a centered `caption` / `text.tertiary` caption. A separator's children are presentational,
15
+ * so the label is also its accessible name (`aria-label`).
16
+ * - Vertical: a `<div role="separator" aria-orientation="vertical">` that stretches to the height
17
+ * of its flex or grid parent (`align-self: stretch`); it has no height of its own.
18
+ *
19
+ * The line is always `border.primary`. Divider takes no `variant` (Constitution V-A).
20
+ */
21
+ var Root = /*#__PURE__*/ styled("div")({
22
+ name: "Root",
23
+ class: "gx-Divider-rb40n7o",
24
+ propsAsIs: false
25
+ });
26
+ /** The line for each direction: the hairline mixin, kept on one side only. */
27
+ var DIVIDER_ORIENTATION_TO_CSS_MAP = {
28
+ [Orientation.HORIZONTAL]: "gx-Divider-Orientation_HORIZONTAL-o1cvhdy5",
29
+ [Orientation.VERTICAL]: "gx-Divider-Orientation_VERTICAL-os39g9n"
30
+ };
31
+ /**
32
+ * A horizontal rule broken by a caption: the root is a flex row, the label text its middle item,
33
+ * and the two rules are `::before` / `::after`, each taking half the remaining width.
34
+ */
35
+ var LABELED_CSS = "gx-Divider-LABELED_CSS-l1ce7i54";
36
+ /** A hairline rule between content, horizontal (optionally labeled) or vertical. */
37
+ var Divider = forwardRef(function Divider({ orientation = Orientation.HORIZONTAL, label, id, className, style, ...rest }, ref) {
38
+ const rootRef = ref;
39
+ if (orientation === Orientation.VERTICAL) return /* @__PURE__ */ jsx(Root, {
40
+ ...rest,
41
+ ref: rootRef,
42
+ role: "separator",
43
+ "aria-orientation": "vertical",
44
+ id,
45
+ className: cx(DIVIDER_ORIENTATION_TO_CSS_MAP[orientation], className),
46
+ style
47
+ });
48
+ if (label) return /* @__PURE__ */ jsx(Root, {
49
+ ...rest,
50
+ ref: rootRef,
51
+ role: "separator",
52
+ "aria-orientation": "horizontal",
53
+ "aria-label": rest["aria-label"] ?? label,
54
+ id,
55
+ className: cx(LABELED_CSS, className),
56
+ style,
57
+ children: label
58
+ });
59
+ return /* @__PURE__ */ jsx(Root, {
60
+ ...rest,
61
+ as: "hr",
62
+ ref: rootRef,
63
+ id,
64
+ className: cx(DIVIDER_ORIENTATION_TO_CSS_MAP[orientation], className),
65
+ style
66
+ });
67
+ });
68
+ Divider.displayName = "Divider";
69
+ //#endregion
70
+ export { Divider as default };
@@ -0,0 +1,139 @@
1
+ import { type AriaAttributes, type CSSProperties, type ElementType, type MouseEvent, type ReactNode, type UIEvent } from "react";
2
+ import type { Space, SpaceShorthand } from "../theme/enums.js";
3
+ /** Main-axis direction of the flex container (`flex-direction`). */
4
+ export declare enum FlexDirection {
5
+ /** Left to right. */
6
+ ROW = "ROW",
7
+ /** Top to bottom. */
8
+ COLUMN = "COLUMN",
9
+ /** Right to left. */
10
+ ROW_REVERSE = "ROW_REVERSE",
11
+ /** Bottom to top. */
12
+ COLUMN_REVERSE = "COLUMN_REVERSE"
13
+ }
14
+ /** Cross-axis alignment of children (`align-items`). */
15
+ export declare enum AlignItems {
16
+ /** Pack children at the cross-axis start. */
17
+ START = "START",
18
+ /** Center children on the cross axis. */
19
+ CENTER = "CENTER",
20
+ /** Pack children at the cross-axis end. */
21
+ END = "END",
22
+ /** Align children's text baselines. */
23
+ BASELINE = "BASELINE",
24
+ /** Stretch children to fill the cross axis. */
25
+ STRETCH = "STRETCH"
26
+ }
27
+ /** Main-axis distribution of children (`justify-content`). */
28
+ export declare enum JustifyContent {
29
+ /** Pack children at the main-axis start. */
30
+ START = "START",
31
+ /** Center children on the main axis. */
32
+ CENTER = "CENTER",
33
+ /** Pack children at the main-axis end. */
34
+ END = "END",
35
+ /** First and last child at the edges, equal space between. */
36
+ SPACE_BETWEEN = "SPACE_BETWEEN",
37
+ /** Equal space around each child (half-size at the edges). */
38
+ SPACE_AROUND = "SPACE_AROUND",
39
+ /** Equal space between children and at the edges. */
40
+ SPACE_EVENLY = "SPACE_EVENLY"
41
+ }
42
+ /** Wrapping when children overflow the main axis (`flex-wrap`). */
43
+ export declare enum FlexWrap {
44
+ /** Keep every child on one line. */
45
+ NOWRAP = "NOWRAP",
46
+ /** Wrap onto new lines below / after. */
47
+ WRAP = "WRAP",
48
+ /** Wrap onto new lines above / before. */
49
+ WRAP_REVERSE = "WRAP_REVERSE"
50
+ }
51
+ export interface FlexProps extends AriaAttributes {
52
+ /** Content of the flex container. */
53
+ children?: ReactNode;
54
+ /**
55
+ * Main-axis direction.
56
+ * @default FlexDirection.ROW
57
+ */
58
+ direction?: FlexDirection;
59
+ /**
60
+ * Cross-axis alignment of children.
61
+ * @default AlignItems.STRETCH
62
+ */
63
+ alignItems?: AlignItems;
64
+ /**
65
+ * Main-axis distribution of children.
66
+ * @default JustifyContent.START
67
+ */
68
+ justifyContent?: JustifyContent;
69
+ /**
70
+ * Whether children wrap onto new lines.
71
+ * @default FlexWrap.NOWRAP
72
+ */
73
+ wrap?: FlexWrap;
74
+ /** Space between children from the space scale: one value, or `[row, column]`. */
75
+ gap?: Space | [Space, Space];
76
+ /** Padding from the space scale: one value, or 2–4 in CSS shorthand order (`[12, 16]`). */
77
+ padding?: SpaceShorthand;
78
+ /** `flex-grow` of this container inside a parent flex container. */
79
+ grow?: number;
80
+ /** `flex-shrink` of this container inside a parent flex container. */
81
+ shrink?: number;
82
+ /** `flex-basis` of this container inside a parent flex container. A number is px. */
83
+ basis?: number | string;
84
+ /** CSS `width`. A number is px. `fillWidth` wins over it. */
85
+ width?: number | string;
86
+ /** CSS `height`. A number is px. Use `"100%"` to fill the parent (1.x `fillHeight`). */
87
+ height?: number | string;
88
+ /** CSS `min-width`. A number is px. Pass `0` to let nested text shrink and ellipsize. */
89
+ minWidth?: number | string;
90
+ /** CSS `max-width`. A number is px. */
91
+ maxWidth?: number | string;
92
+ /** CSS `min-height`. A number is px. */
93
+ minHeight?: number | string;
94
+ /** CSS `max-height`. A number is px. */
95
+ maxHeight?: number | string;
96
+ /**
97
+ * Stretch to the parent's full width (`width: 100%`). Wins over `width`.
98
+ * @default false
99
+ */
100
+ fillWidth?: boolean;
101
+ /**
102
+ * CSS `overflow`.
103
+ * @default "visible"
104
+ */
105
+ overflow?: CSSProperties["overflow"];
106
+ /**
107
+ * Element or component to render (`"section"`, `"nav"`, `"ul"`, a router link).
108
+ * @default "div"
109
+ */
110
+ as?: ElementType;
111
+ /**
112
+ * Pointer-only shortcut (a clickable row or card area); also sets `cursor: pointer`. Flex never
113
+ * becomes a control (no role, no Tab stop, no Enter/Space), so the same action must also be a
114
+ * `Button` or `Link` inside or beside it. Never the only path to an action.
115
+ */
116
+ onClick?: (event: MouseEvent<HTMLElement>) => void;
117
+ /**
118
+ * Mouse-down handler. Pointer-only like `onClick`: the action must also be reachable through a
119
+ * `Button` or `Link`.
120
+ */
121
+ onMouseDown?: (event: MouseEvent<HTMLElement>) => void;
122
+ /** Mouse-enter handler. */
123
+ onMouseEnter?: (event: MouseEvent<HTMLElement>) => void;
124
+ /** Mouse-leave handler. */
125
+ onMouseLeave?: (event: MouseEvent<HTMLElement>) => void;
126
+ /** Scroll handler (set `overflow` so the container scrolls). */
127
+ onScroll?: (event: UIEvent<HTMLElement>) => void;
128
+ /** DOM id on the root element. */
129
+ id?: string;
130
+ /** Any `data-*` attribute, forwarded to the root element. */
131
+ [dataAttribute: `data-${string}`]: string | number | boolean | undefined;
132
+ /** Extra class on the root element. */
133
+ className?: string;
134
+ /** Inline style on the root element; only for setting CSS custom properties. */
135
+ style?: CSSProperties;
136
+ }
137
+ /** The flexbox layout primitive: direction, alignment, wrapping, `gap`, `padding` and sizing. */
138
+ declare const Flex: import("react").ForwardRefExoticComponent<FlexProps & import("react").RefAttributes<HTMLElement>>;
139
+ export default Flex;
@@ -0,0 +1,165 @@
1
+ import { gapToCss, getCssSizeValue, spaceToCss } from "../utils/css.js";
2
+ /* empty css */
3
+ import { styled } from "@linaria/react";
4
+ import { forwardRef } from "react";
5
+ import { jsx } from "react/jsx-runtime";
6
+ import { cx } from "@linaria/core";
7
+ //#region src/layout/Flex.tsx
8
+ /**
9
+ * The flexbox layout primitive: a `display: flex` element with every flex and sizing knob as a
10
+ * prop. Replaces 1.x `FlexWrapper`. Spacing is `gap` and `padding` from the space scale; there is
11
+ * no `margin` (Constitution II.5).
12
+ *
13
+ * The four flex axes are enums, each a `Record` of `css` blocks. Continuous values (`gap`,
14
+ * `padding`, `grow` / `shrink` / `basis`, sizes, `overflow`) are set as `--gx-flex-*` custom
15
+ * properties on the root, and a block that reads each one is switched on only when its prop is
16
+ * set. So a nested `Flex` never inherits its parent's values, and nothing extra reaches a custom
17
+ * `as` component (Linaria forwards `$`-props to one).
18
+ */
19
+ /** Main-axis direction of the flex container (`flex-direction`). */
20
+ var FlexDirection = /* @__PURE__ */ function(FlexDirection) {
21
+ /** Left to right. */
22
+ FlexDirection["ROW"] = "ROW";
23
+ /** Top to bottom. */
24
+ FlexDirection["COLUMN"] = "COLUMN";
25
+ /** Right to left. */
26
+ FlexDirection["ROW_REVERSE"] = "ROW_REVERSE";
27
+ /** Bottom to top. */
28
+ FlexDirection["COLUMN_REVERSE"] = "COLUMN_REVERSE";
29
+ return FlexDirection;
30
+ }({});
31
+ /** Cross-axis alignment of children (`align-items`). */
32
+ var AlignItems = /* @__PURE__ */ function(AlignItems) {
33
+ /** Pack children at the cross-axis start. */
34
+ AlignItems["START"] = "START";
35
+ /** Center children on the cross axis. */
36
+ AlignItems["CENTER"] = "CENTER";
37
+ /** Pack children at the cross-axis end. */
38
+ AlignItems["END"] = "END";
39
+ /** Align children's text baselines. */
40
+ AlignItems["BASELINE"] = "BASELINE";
41
+ /** Stretch children to fill the cross axis. */
42
+ AlignItems["STRETCH"] = "STRETCH";
43
+ return AlignItems;
44
+ }({});
45
+ /** Main-axis distribution of children (`justify-content`). */
46
+ var JustifyContent = /* @__PURE__ */ function(JustifyContent) {
47
+ /** Pack children at the main-axis start. */
48
+ JustifyContent["START"] = "START";
49
+ /** Center children on the main axis. */
50
+ JustifyContent["CENTER"] = "CENTER";
51
+ /** Pack children at the main-axis end. */
52
+ JustifyContent["END"] = "END";
53
+ /** First and last child at the edges, equal space between. */
54
+ JustifyContent["SPACE_BETWEEN"] = "SPACE_BETWEEN";
55
+ /** Equal space around each child (half-size at the edges). */
56
+ JustifyContent["SPACE_AROUND"] = "SPACE_AROUND";
57
+ /** Equal space between children and at the edges. */
58
+ JustifyContent["SPACE_EVENLY"] = "SPACE_EVENLY";
59
+ return JustifyContent;
60
+ }({});
61
+ /** Wrapping when children overflow the main axis (`flex-wrap`). */
62
+ var FlexWrap = /* @__PURE__ */ function(FlexWrap) {
63
+ /** Keep every child on one line. */
64
+ FlexWrap["NOWRAP"] = "NOWRAP";
65
+ /** Wrap onto new lines below / after. */
66
+ FlexWrap["WRAP"] = "WRAP";
67
+ /** Wrap onto new lines above / before. */
68
+ FlexWrap["WRAP_REVERSE"] = "WRAP_REVERSE";
69
+ return FlexWrap;
70
+ }({});
71
+ var Root = /*#__PURE__*/ styled("div")({
72
+ name: "Root",
73
+ class: "gx-Flex-r22h3tg",
74
+ propsAsIs: false
75
+ });
76
+ var FLEX_DIRECTION_TO_CSS_MAP = {
77
+ ["ROW"]: "gx-Flex-ROW-ripb3mw",
78
+ ["COLUMN"]: "gx-Flex-COLUMN-c147zu1f",
79
+ ["ROW_REVERSE"]: "gx-Flex-ROW_REVERSE-r5z2mdh",
80
+ ["COLUMN_REVERSE"]: "gx-Flex-COLUMN_REVERSE-c3j35kc"
81
+ };
82
+ var ALIGN_ITEMS_TO_CSS_MAP = {
83
+ ["START"]: "gx-Flex-START-s1b4y19v",
84
+ ["CENTER"]: "gx-Flex-CENTER-cfsw75q",
85
+ ["END"]: "gx-Flex-END-eo9axya",
86
+ ["BASELINE"]: "gx-Flex-BASELINE-b235uy7",
87
+ ["STRETCH"]: "gx-Flex-STRETCH-smnprdc"
88
+ };
89
+ var JUSTIFY_CONTENT_TO_CSS_MAP = {
90
+ ["START"]: "gx-Flex-START-s1404740",
91
+ ["CENTER"]: "gx-Flex-CENTER-crtrl7j",
92
+ ["END"]: "gx-Flex-END-e1jkv0lh",
93
+ ["SPACE_BETWEEN"]: "gx-Flex-SPACE_BETWEEN-s1qbqc8u",
94
+ ["SPACE_AROUND"]: "gx-Flex-SPACE_AROUND-s100xdib",
95
+ ["SPACE_EVENLY"]: "gx-Flex-SPACE_EVENLY-s3efucf"
96
+ };
97
+ var FLEX_WRAP_TO_CSS_MAP = {
98
+ ["NOWRAP"]: "gx-Flex-NOWRAP-nhuum21",
99
+ ["WRAP"]: "gx-Flex-WRAP-w8fil63",
100
+ ["WRAP_REVERSE"]: "gx-Flex-WRAP_REVERSE-w16eom7c"
101
+ };
102
+ var FILL_WIDTH_CSS = "gx-Flex-FILL_WIDTH_CSS-fy5wrww";
103
+ var CLICKABLE_CSS = "gx-Flex-CLICKABLE_CSS-cactce2";
104
+ /** Each block reads the `--gx-flex-<property>` custom property the component sets beside it. */
105
+ var FLEX_CSS_PROPERTY_TO_CSS_MAP = {
106
+ gap: "gx-Flex-gap-gykdsqa",
107
+ padding: "gx-Flex-padding-pa761e0",
108
+ "flex-grow": "gx-Flex-flex-grow-f8lz0a5",
109
+ "flex-shrink": "gx-Flex-flex-shrink-f13hffr4",
110
+ "flex-basis": "gx-Flex-flex-basis-fwerc9i",
111
+ width: "gx-Flex-width-wmz3cbh",
112
+ height: "gx-Flex-height-h1pgp62m",
113
+ "min-width": "gx-Flex-min-width-mo6wszl",
114
+ "max-width": "gx-Flex-max-width-m6qjj2a",
115
+ "min-height": "gx-Flex-min-height-mvgtan7",
116
+ "max-height": "gx-Flex-max-height-moffi4z",
117
+ overflow: "gx-Flex-overflow-o717o85"
118
+ };
119
+ /** A length prop as CSS (number → px), or `undefined` when unset. */
120
+ var toLength = (value) => value === void 0 ? void 0 : getCssSizeValue(value);
121
+ /** The flexbox layout primitive: direction, alignment, wrapping, `gap`, `padding` and sizing. */
122
+ var Flex = forwardRef(function Flex({ children, direction = "ROW", alignItems = "STRETCH", justifyContent = "START", wrap = "NOWRAP", gap, padding, grow, shrink, basis, width, height, minWidth, maxWidth, minHeight, maxHeight, fillWidth = false, overflow, as = "div", onClick, onMouseDown, onMouseEnter, onMouseLeave, onScroll, id, className, style, ...rest }, ref) {
123
+ const values = {
124
+ gap: gap === void 0 ? void 0 : gapToCss(gap),
125
+ padding: padding === void 0 ? void 0 : spaceToCss(padding),
126
+ "flex-grow": grow === void 0 ? void 0 : String(grow),
127
+ "flex-shrink": shrink === void 0 ? void 0 : String(shrink),
128
+ "flex-basis": toLength(basis),
129
+ width: fillWidth ? void 0 : toLength(width),
130
+ height: toLength(height),
131
+ "min-width": toLength(minWidth),
132
+ "max-width": toLength(maxWidth),
133
+ "min-height": toLength(minHeight),
134
+ "max-height": toLength(maxHeight),
135
+ overflow
136
+ };
137
+ const classNames = [];
138
+ const variables = {};
139
+ for (const property of Object.keys(values)) {
140
+ const value = values[property];
141
+ if (value === void 0) continue;
142
+ classNames.push(FLEX_CSS_PROPERTY_TO_CSS_MAP[property]);
143
+ variables[`--gx-flex-${property}`] = value;
144
+ }
145
+ return /* @__PURE__ */ jsx(Root, {
146
+ ...rest,
147
+ as,
148
+ ref,
149
+ id,
150
+ onClick,
151
+ onMouseDown,
152
+ onMouseEnter,
153
+ onMouseLeave,
154
+ onScroll,
155
+ className: cx(FLEX_DIRECTION_TO_CSS_MAP[direction], ALIGN_ITEMS_TO_CSS_MAP[alignItems], JUSTIFY_CONTENT_TO_CSS_MAP[justifyContent], FLEX_WRAP_TO_CSS_MAP[wrap], fillWidth && FILL_WIDTH_CSS, onClick !== void 0 && CLICKABLE_CSS, ...classNames, className),
156
+ style: {
157
+ ...variables,
158
+ ...style
159
+ },
160
+ children
161
+ });
162
+ });
163
+ Flex.displayName = "Flex";
164
+ //#endregion
165
+ export { AlignItems, FlexDirection, FlexWrap, JustifyContent, Flex as default };
@@ -0,0 +1,72 @@
1
+ import { type AriaAttributes, type CSSProperties, type ElementType, type MouseEvent, type ReactNode } from "react";
2
+ import type { SpaceShorthand } from "../theme/enums.js";
3
+ export interface FlexItemProps extends AriaAttributes {
4
+ /** Content of the item. Laid out in normal flow; nest a `Flex` to arrange it. */
5
+ children?: ReactNode;
6
+ /**
7
+ * `flex-grow`: this item's share of the parent's spare main-axis space.
8
+ * @default 0
9
+ */
10
+ grow?: number;
11
+ /**
12
+ * `flex-shrink`: how much this item gives up when the parent is too small. `0` keeps its size.
13
+ * @default 1
14
+ */
15
+ shrink?: number;
16
+ /**
17
+ * `flex-basis`: the main-axis size before growing or shrinking. A number is px.
18
+ * @default auto
19
+ */
20
+ basis?: number | string;
21
+ /** CSS `width`. A number is px. `fillWidth` wins over it. */
22
+ width?: number | string;
23
+ /** CSS `height`. A number is px. Use `"100%"` to fill the parent (1.x `fillHeight`). */
24
+ height?: number | string;
25
+ /** CSS `min-width`. A number is px. Pass `0` to let nested text shrink and ellipsize. */
26
+ minWidth?: number | string;
27
+ /** CSS `max-width`. A number is px. */
28
+ maxWidth?: number | string;
29
+ /** CSS `min-height`. A number is px. */
30
+ minHeight?: number | string;
31
+ /** CSS `max-height`. A number is px. */
32
+ maxHeight?: number | string;
33
+ /**
34
+ * Stretch to the parent's full width (`width: 100%`). Wins over `width`.
35
+ * @default false
36
+ */
37
+ fillWidth?: boolean;
38
+ /** Padding from the space scale: one value, or 2–4 in CSS shorthand order (`[12, 16]`). */
39
+ padding?: SpaceShorthand;
40
+ /**
41
+ * CSS `overflow`.
42
+ * @default "visible"
43
+ */
44
+ overflow?: CSSProperties["overflow"];
45
+ /**
46
+ * CSS `position`.
47
+ * @default static
48
+ */
49
+ position?: CSSProperties["position"];
50
+ /**
51
+ * Element or component to render (`"li"`, `"section"`, a router link).
52
+ * @default "div"
53
+ */
54
+ as?: ElementType;
55
+ /**
56
+ * Pointer-only shortcut (a clickable cell or card area); also sets `cursor: pointer`. FlexItem
57
+ * never becomes a control (no role, no Tab stop, no Enter/Space), so the same action must also be
58
+ * a `Button` or `Link` inside or beside it. Never the only path to an action.
59
+ */
60
+ onClick?: (event: MouseEvent<HTMLElement>) => void;
61
+ /** DOM id on the root element. */
62
+ id?: string;
63
+ /** Any `data-*` attribute, forwarded to the root element. */
64
+ [dataAttribute: `data-${string}`]: string | number | boolean | undefined;
65
+ /** Extra class on the root element. */
66
+ className?: string;
67
+ /** Inline style on the root element; only for setting CSS custom properties. */
68
+ style?: CSSProperties;
69
+ }
70
+ /** One child of a `Flex` with its own grow, shrink, basis and sizing. Not a flex container. */
71
+ declare const FlexItem: import("react").ForwardRefExoticComponent<FlexItemProps & import("react").RefAttributes<HTMLElement>>;
72
+ export default FlexItem;
@@ -0,0 +1,84 @@
1
+ import { getCssSizeValue, spaceToCss } from "../utils/css.js";
2
+ /* empty css */
3
+ import { styled } from "@linaria/react";
4
+ import { forwardRef } from "react";
5
+ import { jsx } from "react/jsx-runtime";
6
+ import { cx } from "@linaria/core";
7
+ //#region src/layout/FlexItem.tsx
8
+ /**
9
+ * One child of a `Flex` that needs its own `grow` / `shrink` / `basis` or sizing. Replaces 1.x
10
+ * `FlexItem`. It is not a flex container: it renders a plain block, and its children lay out in
11
+ * normal flow. To arrange an item's children, nest a `Flex` (or use a `Flex` with `grow` as the
12
+ * item itself).
13
+ *
14
+ * Every value is continuous, so each one is set as a `--gx-flex-item-*` custom property on the
15
+ * root, and a block that reads it is switched on only when its prop is set. So a nested item never
16
+ * inherits its parent's values, unset props fall back to the CSS initial values (`flex: 0 1 auto`,
17
+ * `width: auto`, `position: static`, `overflow: visible`), and nothing extra reaches a custom `as`
18
+ * component (Linaria forwards `$`-props to one).
19
+ */
20
+ var Root = /*#__PURE__*/ styled("div")({
21
+ name: "Root",
22
+ class: "gx-FlexItem-r10jnoxq",
23
+ propsAsIs: false
24
+ });
25
+ var FILL_WIDTH_CSS = "gx-FlexItem-FILL_WIDTH_CSS-f11ur0tg";
26
+ var CLICKABLE_CSS = "gx-FlexItem-CLICKABLE_CSS-c1phfxjv";
27
+ /** Each block reads the `--gx-flex-item-<property>` custom property the component sets beside it. */
28
+ var FLEX_ITEM_CSS_PROPERTY_TO_CSS_MAP = {
29
+ "flex-grow": "gx-FlexItem-flex-grow-f19z5ofo",
30
+ "flex-shrink": "gx-FlexItem-flex-shrink-f1ubwkdb",
31
+ "flex-basis": "gx-FlexItem-flex-basis-f1lmdfjo",
32
+ width: "gx-FlexItem-width-wpfo0uk",
33
+ height: "gx-FlexItem-height-hjbuyhl",
34
+ "min-width": "gx-FlexItem-min-width-md3yo4w",
35
+ "max-width": "gx-FlexItem-max-width-mxr0aw9",
36
+ "min-height": "gx-FlexItem-min-height-m13lhdnj",
37
+ "max-height": "gx-FlexItem-max-height-m1bfjjj5",
38
+ padding: "gx-FlexItem-padding-p1ye3txw",
39
+ overflow: "gx-FlexItem-overflow-o1gw7qyr",
40
+ position: "gx-FlexItem-position-pzd5vzh"
41
+ };
42
+ /** A length prop as CSS (number → px), or `undefined` when unset. */
43
+ var toLength = (value) => value === void 0 ? void 0 : getCssSizeValue(value);
44
+ /** One child of a `Flex` with its own grow, shrink, basis and sizing. Not a flex container. */
45
+ var FlexItem = forwardRef(function FlexItem({ children, grow, shrink, basis, width, height, minWidth, maxWidth, minHeight, maxHeight, fillWidth = false, padding, overflow, position, as = "div", onClick, id, className, style, ...rest }, ref) {
46
+ const values = {
47
+ "flex-grow": grow === void 0 ? void 0 : String(grow),
48
+ "flex-shrink": shrink === void 0 ? void 0 : String(shrink),
49
+ "flex-basis": toLength(basis),
50
+ width: fillWidth ? void 0 : toLength(width),
51
+ height: toLength(height),
52
+ "min-width": toLength(minWidth),
53
+ "max-width": toLength(maxWidth),
54
+ "min-height": toLength(minHeight),
55
+ "max-height": toLength(maxHeight),
56
+ padding: padding === void 0 ? void 0 : spaceToCss(padding),
57
+ overflow,
58
+ position
59
+ };
60
+ const classNames = [];
61
+ const variables = {};
62
+ for (const property of Object.keys(values)) {
63
+ const value = values[property];
64
+ if (value === void 0) continue;
65
+ classNames.push(FLEX_ITEM_CSS_PROPERTY_TO_CSS_MAP[property]);
66
+ variables[`--gx-flex-item-${property}`] = value;
67
+ }
68
+ return /* @__PURE__ */ jsx(Root, {
69
+ ...rest,
70
+ as,
71
+ ref,
72
+ id,
73
+ onClick,
74
+ className: cx(fillWidth && FILL_WIDTH_CSS, onClick !== void 0 && CLICKABLE_CSS, ...classNames, className),
75
+ style: {
76
+ ...variables,
77
+ ...style
78
+ },
79
+ children
80
+ });
81
+ });
82
+ FlexItem.displayName = "FlexItem";
83
+ //#endregion
84
+ export { FlexItem as default };