@dbcdk/react-components 0.0.4 → 0.0.6

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 (299) hide show
  1. package/dist/assets/logo.js +2 -85
  2. package/dist/components/__stories__/_data/table.d.ts +15 -0
  3. package/dist/components/__stories__/_data/table.js +49 -0
  4. package/dist/components/__stories__/story-components/Colors.d.ts +11 -0
  5. package/dist/components/__stories__/story-components/Colors.js +96 -0
  6. package/dist/components/__stories__/story-components/Colors.module.css +27 -0
  7. package/dist/components/__stories__/story-components/Spacing.d.ts +2 -0
  8. package/dist/components/__stories__/story-components/Spacing.js +76 -0
  9. package/dist/components/__stories__/story-components/Spacing.module.css +154 -0
  10. package/dist/components/app-header/AppHeader.d.ts +4 -3
  11. package/dist/components/app-header/AppHeader.js +3 -6
  12. package/dist/components/app-header/AppHeader.module.css +10 -15
  13. package/dist/components/attribute-chip/AttributeChip.d.ts +9 -0
  14. package/dist/components/attribute-chip/AttributeChip.js +5 -0
  15. package/dist/components/attribute-chip/AttributeChip.module.css +65 -0
  16. package/dist/components/avatar/Avatar.d.ts +5 -3
  17. package/dist/components/avatar/Avatar.js +37 -37
  18. package/dist/components/avatar/Avatar.module.css +27 -0
  19. package/dist/components/breadcrumbs/Breadcrumbs.d.ts +4 -4
  20. package/dist/components/breadcrumbs/Breadcrumbs.js +4 -14
  21. package/dist/components/breadcrumbs/Breadcrumbs.module.css +19 -22
  22. package/dist/components/button/Button.d.ts +6 -2
  23. package/dist/components/button/Button.js +56 -50
  24. package/dist/components/button/Button.module.css +119 -56
  25. package/dist/components/card/Card.d.ts +23 -7
  26. package/dist/components/card/Card.js +20 -21
  27. package/dist/components/card/Card.module.css +148 -44
  28. package/dist/components/card-container/CardContainer.d.ts +6 -3
  29. package/dist/components/card-container/CardContainer.js +4 -15
  30. package/dist/components/card-container/CardContainer.module.css +40 -0
  31. package/dist/components/chip/Chip.d.ts +7 -5
  32. package/dist/components/chip/Chip.js +14 -37
  33. package/dist/components/chip/Chip.module.css +50 -27
  34. package/dist/components/circle/Circle.d.ts +3 -2
  35. package/dist/components/circle/Circle.js +3 -10
  36. package/dist/components/circle/Circle.module.css +11 -11
  37. package/dist/components/clear-button/ClearButton.d.ts +2 -1
  38. package/dist/components/clear-button/ClearButton.js +6 -17
  39. package/dist/components/clear-button/ClearButton.module.css +8 -7
  40. package/dist/components/code-block/CodeBlock.d.ts +7 -0
  41. package/dist/components/code-block/CodeBlock.js +6 -0
  42. package/dist/components/code-block/CodeBlock.module.css +60 -0
  43. package/dist/components/copy-button/CopyButton.d.ts +10 -0
  44. package/dist/components/copy-button/CopyButton.js +22 -0
  45. package/dist/components/copy-button/CopyButton.module.css +6 -0
  46. package/dist/components/datetime-picker/DateTimePicker.d.ts +42 -0
  47. package/dist/components/datetime-picker/DateTimePicker.js +403 -0
  48. package/dist/components/datetime-picker/DateTimePicker.module.css +144 -0
  49. package/dist/components/filter-field/FilterField.d.ts +6 -3
  50. package/dist/components/filter-field/FilterField.js +130 -158
  51. package/dist/components/filter-field/FilterField.module.css +35 -25
  52. package/dist/components/filtering/chip-multi-toggle/ChipMultiToggle.d.ts +36 -0
  53. package/dist/components/filtering/chip-multi-toggle/ChipMultiToggle.js +53 -0
  54. package/dist/components/filtering/chip-multi-toggle/ChipMultiToggle.module.css +60 -0
  55. package/dist/components/forms/checkbox/Checkbox.d.ts +31 -0
  56. package/dist/components/forms/checkbox/Checkbox.js +27 -0
  57. package/dist/components/{checkbox → forms/checkbox}/Checkbox.module.css +10 -11
  58. package/dist/components/forms/checkbox-group/CheckboxGroup.d.ts +47 -0
  59. package/dist/components/forms/checkbox-group/CheckboxGroup.js +75 -0
  60. package/dist/components/forms/checkbox-group/CheckboxGroup.module.css +115 -0
  61. package/dist/components/forms/input/Input.d.ts +22 -0
  62. package/dist/components/forms/input/Input.js +70 -0
  63. package/dist/components/forms/input/Input.module.css +160 -0
  64. package/dist/components/forms/input-container/InputContainer.d.ts +15 -0
  65. package/dist/components/forms/input-container/InputContainer.js +15 -0
  66. package/dist/components/forms/input-container/InputContainer.module.css +34 -0
  67. package/dist/components/forms/multi-select/MultiSelect.d.ts +20 -0
  68. package/dist/components/forms/multi-select/MultiSelect.js +19 -0
  69. package/dist/components/forms/select/Select.d.ts +21 -0
  70. package/dist/components/forms/select/Select.js +94 -0
  71. package/dist/components/forms/text-area/Textarea.d.ts +17 -0
  72. package/dist/components/forms/text-area/Textarea.js +33 -0
  73. package/dist/components/forms/text-area/Textarea.module.css +26 -0
  74. package/dist/components/headline/Headline.d.ts +9 -1
  75. package/dist/components/headline/Headline.js +18 -37
  76. package/dist/components/headline/Headline.module.css +32 -7
  77. package/dist/components/hyperlink/Hyperlink.d.ts +9 -0
  78. package/dist/components/hyperlink/Hyperlink.js +11 -0
  79. package/dist/components/hyperlink/Hyperlink.module.css +23 -0
  80. package/dist/components/icon/Icon.d.ts +4 -3
  81. package/dist/components/icon/Icon.js +11 -17
  82. package/dist/components/icon/Icon.module.css +10 -9
  83. package/dist/components/menu/Menu.js +25 -67
  84. package/dist/components/menu/Menu.module.css +10 -32
  85. package/dist/components/meta-bar/MetaBar.d.ts +11 -0
  86. package/dist/components/meta-bar/MetaBar.js +9 -0
  87. package/dist/components/meta-bar/MetaBar.module.css +12 -0
  88. package/dist/components/nav-bar/NavBar.d.ts +5 -5
  89. package/dist/components/nav-bar/NavBar.js +15 -45
  90. package/dist/components/nav-bar/NavBar.module.css +11 -16
  91. package/dist/components/overlay/modal/Modal.d.ts +23 -0
  92. package/dist/components/overlay/modal/Modal.js +92 -0
  93. package/dist/components/overlay/modal/Modal.module.css +66 -0
  94. package/dist/components/overlay/modal/provider/ModalProvider.d.ts +20 -0
  95. package/dist/components/overlay/modal/provider/ModalProvider.js +70 -0
  96. package/dist/components/overlay/side-panel/SidePanel.d.ts +16 -0
  97. package/dist/components/overlay/side-panel/SidePanel.js +10 -0
  98. package/dist/components/overlay/side-panel/SidePanel.module.css +56 -0
  99. package/dist/components/overlay/side-panel/useSidePanel.d.ts +5 -0
  100. package/dist/components/overlay/side-panel/useSidePanel.js +11 -0
  101. package/dist/components/overlay/tooltip/Tooltip.d.ts +13 -0
  102. package/dist/components/overlay/tooltip/Tooltip.js +17 -0
  103. package/dist/components/overlay/tooltip/Tooltip.module.css +106 -0
  104. package/dist/components/overlay/tooltip/TooltipProvider.d.ts +20 -0
  105. package/dist/components/overlay/tooltip/TooltipProvider.js +244 -0
  106. package/dist/components/overlay/tooltip/useTooltipTrigger.d.ts +24 -0
  107. package/dist/components/overlay/tooltip/useTooltipTrigger.js +108 -0
  108. package/dist/components/page/Page.d.ts +7 -6
  109. package/dist/components/page/Page.js +4 -21
  110. package/dist/components/page/Page.module.css +2 -2
  111. package/dist/components/page-layout/PageLayout.d.ts +12 -20
  112. package/dist/components/page-layout/PageLayout.js +35 -88
  113. package/dist/components/page-layout/PageLayout.module.css +4 -80
  114. package/dist/components/page-layout/components/page-layout-hero/PageLayoutHero.d.ts +11 -0
  115. package/dist/components/page-layout/components/page-layout-hero/PageLayoutHero.js +7 -0
  116. package/dist/components/page-layout/components/page-layout-hero/PageLayoutHero.module.css +84 -0
  117. package/dist/components/pagination/Pagination.d.ts +4 -1
  118. package/dist/components/pagination/Pagination.js +38 -105
  119. package/dist/components/pagination/Pagination.module.css +11 -3
  120. package/dist/components/panel/Panel.d.ts +4 -3
  121. package/dist/components/panel/Panel.js +5 -10
  122. package/dist/components/panel/Panel.module.css +5 -7
  123. package/dist/components/popover/Popover.d.ts +3 -1
  124. package/dist/components/popover/Popover.js +116 -124
  125. package/dist/components/popover/Popover.module.css +4 -6
  126. package/dist/components/search-box/SearchBox.d.ts +11 -8
  127. package/dist/components/search-box/SearchBox.js +112 -149
  128. package/dist/components/search-box/SearchBox.module.css +0 -1
  129. package/dist/components/segmented-progress-bar/SegmentedProgressBar.d.ts +1 -1
  130. package/dist/components/segmented-progress-bar/SegmentedProgressBar.js +47 -88
  131. package/dist/components/segmented-progress-bar/SegmentedProgressBar.module.css +5 -1
  132. package/dist/components/sidebar/Sidebar.d.ts +3 -1
  133. package/dist/components/sidebar/Sidebar.js +5 -29
  134. package/dist/components/sidebar/components/SidebarItem.js +6 -12
  135. package/dist/components/sidebar/components/expandable-sidebar-item/ExpandableSidebarItem.d.ts +4 -2
  136. package/dist/components/sidebar/components/expandable-sidebar-item/ExpandableSidebarItem.js +48 -62
  137. package/dist/components/sidebar/components/expandable-sidebar-item/ExpandableSidebarItem.module.css +9 -38
  138. package/dist/components/sidebar/components/sidebar-container/SidebarContainer.d.ts +9 -0
  139. package/dist/components/sidebar/components/sidebar-container/SidebarContainer.js +13 -0
  140. package/dist/components/sidebar/components/sidebar-container/SidebarContainer.module.css +155 -0
  141. package/dist/components/sidebar/components/sidebar-item-content/SidebarItemContent.d.ts +3 -1
  142. package/dist/components/sidebar/components/sidebar-item-content/SidebarItemContent.js +4 -18
  143. package/dist/components/sidebar/components/sidebar-item-content/SidebarItemContent.module.css +25 -12
  144. package/dist/components/sidebar/components/sidebar-items/SidebarItems.d.ts +1 -1
  145. package/dist/components/sidebar/components/sidebar-items/SidebarItems.js +9 -22
  146. package/dist/components/sidebar/components/sidenav-filteirng/SidenavFiltering.js +20 -18
  147. package/dist/components/sidebar/providers/SidebarProvider.d.ts +9 -4
  148. package/dist/components/sidebar/providers/SidebarProvider.js +188 -73
  149. package/dist/components/skeleton-loader/SkeletonLoader.js +68 -266
  150. package/dist/components/skeleton-loader/skeleton-loader-item/SkeletonLoaderItem.js +11 -34
  151. package/dist/components/skeleton-loader/skeleton-loader-item/SkeletonLoaderItem.module.css +0 -12
  152. package/dist/components/split-button/SplitButton.d.ts +7 -5
  153. package/dist/components/split-button/SplitButton.js +4 -27
  154. package/dist/components/split-pane/SplitPane.d.ts +34 -0
  155. package/dist/components/split-pane/SplitPane.js +78 -0
  156. package/dist/components/split-pane/SplitPane.module.css +106 -0
  157. package/dist/components/split-pane/provider/SplitPaneContext.d.ts +23 -0
  158. package/dist/components/split-pane/provider/SplitPaneContext.js +85 -0
  159. package/dist/components/table/Table.d.ts +28 -10
  160. package/dist/components/table/Table.js +117 -172
  161. package/dist/components/table/Table.module.css +78 -47
  162. package/dist/components/table/components/column-resizer/ColumnResizer.js +4 -15
  163. package/dist/components/table/components/empty-state/EmptyState.d.ts +41 -0
  164. package/dist/components/table/components/empty-state/EmptyState.js +27 -0
  165. package/dist/components/table/components/empty-state/EmptyState.module.css +16 -0
  166. package/dist/components/table/components/table-settings/TableSettings.d.ts +8 -0
  167. package/dist/components/table/components/table-settings/TableSettings.js +12 -0
  168. package/dist/components/table/tanstack.d.ts +14 -0
  169. package/dist/components/table/tanstack.js +162 -0
  170. package/dist/components/tabs/Tabs.d.ts +7 -3
  171. package/dist/components/tabs/Tabs.js +32 -65
  172. package/dist/components/tabs/Tabs.module.css +9 -9
  173. package/dist/components/toast/Toast.d.ts +14 -0
  174. package/dist/components/toast/Toast.js +8 -0
  175. package/dist/components/toast/Toast.module.css +102 -0
  176. package/dist/components/toast/provider/ToastProvider.d.ts +23 -0
  177. package/dist/components/toast/provider/ToastProvider.js +64 -0
  178. package/dist/components/user-display/UserDisplay.d.ts +2 -1
  179. package/dist/components/user-display/UserDisplay.js +4 -20
  180. package/dist/components/user-display/UserDisplay.module.css +2 -2
  181. package/dist/constants/severity.d.ts +1 -1
  182. package/dist/constants/severity.js +14 -16
  183. package/dist/constants/severity.types.d.ts +1 -1
  184. package/dist/constants/severity.types.js +1 -1
  185. package/dist/constants/sizes.d.ts +1 -1
  186. package/dist/constants/sizes.js +6 -7
  187. package/dist/hooks/usePagination.d.ts +33 -0
  188. package/dist/hooks/usePagination.js +79 -0
  189. package/dist/hooks/useSorting.d.ts +49 -0
  190. package/dist/hooks/useSorting.js +118 -0
  191. package/dist/hooks/useTableData.d.ts +40 -0
  192. package/dist/hooks/useTableData.js +45 -0
  193. package/dist/hooks/useTableSelection.d.ts +25 -0
  194. package/dist/hooks/useTableSelection.js +128 -0
  195. package/dist/hooks/useTableSettings.d.ts +7 -0
  196. package/dist/hooks/useTableSettings.js +24 -0
  197. package/dist/hooks/useTheme.d.ts +3 -7
  198. package/dist/hooks/useTheme.js +52 -47
  199. package/dist/hooks/useTimeDuration.d.ts +22 -0
  200. package/dist/hooks/useTimeDuration.js +36 -0
  201. package/dist/hooks/useViewportFill.d.ts +3 -2
  202. package/dist/hooks/useViewportFill.js +55 -48
  203. package/dist/index.d.ts +32 -6
  204. package/dist/index.js +33 -6
  205. package/dist/src/styles/styles.css +101 -8
  206. package/dist/styles/css-helper-classes/flex.css +101 -0
  207. package/dist/styles/css-helper-classes/typography.css +7 -0
  208. package/dist/styles/styles.css +101 -8
  209. package/dist/styles/themes/dbc/dark.css +207 -100
  210. package/dist/styles/themes/dbc/light.css +185 -90
  211. package/dist/styles/themes/forfatterweb/light.css +1 -1
  212. package/dist/styles/themes/types.js +1 -1
  213. package/dist/types/a11y-props.types.d.ts +5 -5
  214. package/dist/types/a11y-props.types.js +1 -1
  215. package/dist/types/sizes.types.d.ts +2 -2
  216. package/dist/types/sizes.types.js +1 -1
  217. package/dist/utils/arrays/nested-filtering.js +43 -33
  218. package/dist/utils/date/formatDate.js +25 -16
  219. package/package.json +33 -18
  220. package/dist/assets/logo.cjs +0 -87
  221. package/dist/components/app-header/AppHeader.cjs +0 -14
  222. package/dist/components/avatar/Avatar.cjs +0 -67
  223. package/dist/components/breadcrumbs/Breadcrumbs.cjs +0 -23
  224. package/dist/components/button/Button.cjs +0 -79
  225. package/dist/components/card/Card.cjs +0 -29
  226. package/dist/components/card-container/CardContainer.cjs +0 -23
  227. package/dist/components/checkbox/Checkbox.cjs +0 -43
  228. package/dist/components/checkbox/Checkbox.d.ts +0 -12
  229. package/dist/components/checkbox/Checkbox.js +0 -37
  230. package/dist/components/chip/Chip.cjs +0 -49
  231. package/dist/components/circle/Circle.cjs +0 -18
  232. package/dist/components/clear-button/ClearButton.cjs +0 -26
  233. package/dist/components/data-summary/DataSummary.cjs +0 -49
  234. package/dist/components/data-summary/DataSummary.d.ts +0 -19
  235. package/dist/components/data-summary/DataSummary.js +0 -43
  236. package/dist/components/data-summary/DataSummary.module.css +0 -51
  237. package/dist/components/filter-field/FilterField.cjs +0 -174
  238. package/dist/components/headline/Headline.cjs +0 -47
  239. package/dist/components/icon/Icon.cjs +0 -27
  240. package/dist/components/input/Input.cjs +0 -48
  241. package/dist/components/input/Input.d.ts +0 -13
  242. package/dist/components/input/Input.js +0 -42
  243. package/dist/components/input/Input.module.css +0 -112
  244. package/dist/components/menu/Menu.cjs +0 -96
  245. package/dist/components/multi-select/MultiSelect.cjs +0 -48
  246. package/dist/components/multi-select/MultiSelect.d.ts +0 -18
  247. package/dist/components/multi-select/MultiSelect.js +0 -46
  248. package/dist/components/nav-bar/NavBar.cjs +0 -55
  249. package/dist/components/page/Page.cjs +0 -30
  250. package/dist/components/page-layout/PageLayout.cjs +0 -101
  251. package/dist/components/pagination/Pagination.cjs +0 -117
  252. package/dist/components/panel/Panel.cjs +0 -18
  253. package/dist/components/popover/Popover.cjs +0 -132
  254. package/dist/components/search-box/SearchBox.cjs +0 -162
  255. package/dist/components/segmented-progress-bar/SegmentedProgressBar.cjs +0 -97
  256. package/dist/components/select/Select.cjs +0 -52
  257. package/dist/components/select/Select.d.ts +0 -11
  258. package/dist/components/select/Select.js +0 -50
  259. package/dist/components/sidebar/Sidebar.cjs +0 -38
  260. package/dist/components/sidebar/Sidebar.module.css +0 -66
  261. package/dist/components/sidebar/components/SidebarItem.cjs +0 -16
  262. package/dist/components/sidebar/components/expandable-sidebar-item/ExpandableSidebarItem.cjs +0 -74
  263. package/dist/components/sidebar/components/sidebar-item-content/SidebarItemContent.cjs +0 -27
  264. package/dist/components/sidebar/components/sidebar-items/SidebarItems.cjs +0 -28
  265. package/dist/components/sidebar/components/sidenav-filteirng/SidenavFiltering.cjs +0 -25
  266. package/dist/components/sidebar/providers/SidebarProvider.cjs +0 -81
  267. package/dist/components/skeleton-loader/SkeletonLoader.cjs +0 -270
  268. package/dist/components/skeleton-loader/skeleton-loader-item/SkeletonLoaderItem.cjs +0 -42
  269. package/dist/components/split-button/SplitButton.cjs +0 -37
  270. package/dist/components/table/Table.cjs +0 -181
  271. package/dist/components/table/components/column-resizer/ColumnResizer.cjs +0 -22
  272. package/dist/components/tabs/Tabs.cjs +0 -74
  273. package/dist/components/text-area/Textarea.cjs +0 -62
  274. package/dist/components/text-area/Textarea.d.ts +0 -14
  275. package/dist/components/text-area/Textarea.js +0 -56
  276. package/dist/components/text-area/Textarea.module.css +0 -3
  277. package/dist/components/tooltip/Tooltip.cjs +0 -78
  278. package/dist/components/tooltip/Tooltip.d.ts +0 -11
  279. package/dist/components/tooltip/Tooltip.js +0 -72
  280. package/dist/components/tooltip/Tooltip.module.css +0 -84
  281. package/dist/components/user-display/UserDisplay.cjs +0 -28
  282. package/dist/constants/severity.cjs +0 -21
  283. package/dist/constants/severity.types.cjs +0 -2
  284. package/dist/constants/sizes.cjs +0 -10
  285. package/dist/hooks/useTheme.cjs +0 -58
  286. package/dist/hooks/useViewportFill.cjs +0 -52
  287. package/dist/index.cjs +0 -264
  288. package/dist/styles/themes/types.cjs +0 -2
  289. package/dist/tanstack.cjs +0 -231
  290. package/dist/tanstack.d.ts +0 -25
  291. package/dist/tanstack.js +0 -206
  292. package/dist/types/a11y-props.types.cjs +0 -2
  293. package/dist/types/assets.d.cjs +0 -2
  294. package/dist/types/assets.d.js +0 -1
  295. package/dist/types/css.d.cjs +0 -2
  296. package/dist/types/css.d.js +0 -1
  297. package/dist/types/sizes.types.cjs +0 -2
  298. package/dist/utils/arrays/nested-filtering.cjs +0 -40
  299. package/dist/utils/date/formatDate.cjs +0 -19
@@ -1,85 +1,2 @@
1
- import { jsxs, jsx } from 'react/jsx-runtime';
2
-
3
- const Logo = () => /* @__PURE__ */ jsxs(
4
- "svg",
5
- {
6
- id: "bbbad536-f254-4715-8d5c-86b6d7022b08",
7
- "data-name": "Logo",
8
- xmlns: "http://www.w3.org/2000/svg",
9
- viewBox: "0 0 154 70",
10
- children: [
11
- /* @__PURE__ */ jsx(
12
- "path",
13
- {
14
- d: "M73.13,1.4a16,16,0,0,0-9.31.67,14.12,14.12,0,0,0-4.63,3,13.42,13.42,0,0,0-3,4.55,15.21,15.21,0,0,0-1.07,5.75,16,16,0,0,0,1.17,6.33,12.73,12.73,0,0,0,3.22,4.56A14,14,0,0,0,64.13,29a16.32,16.32,0,0,0,5.52.93A14.79,14.79,0,0,0,72,29.76a16.17,16.17,0,0,0,2.24-.53,14,14,0,0,0,2.17-.87A2.11,2.11,0,0,0,77.6,26.8,2.42,2.42,0,0,0,77,24.72a2.12,2.12,0,0,0-1.4-.85,2.89,2.89,0,0,0-1.68.28,7.28,7.28,0,0,1-2.1.73,11.59,11.59,0,0,1-2.19.2A11.22,11.22,0,0,1,66,24.5a7.87,7.87,0,0,1-3-1.8,8.49,8.49,0,0,1-2-3,11.83,11.83,0,0,1-.71-4.29A11.27,11.27,0,0,1,61,11.52a8.48,8.48,0,0,1,1.84-3,8.12,8.12,0,0,1,2.93-2A11.14,11.14,0,0,1,71.9,6.1a10.21,10.21,0,0,1,2,.69,3.1,3.1,0,0,0,1.68.32A1.83,1.83,0,0,0,77,6.3a2.47,2.47,0,0,0,.58-2.06,2.14,2.14,0,0,0-1.23-1.66,14.22,14.22,0,0,0-3.2-1.18",
15
- fill: "var(--color-primary)"
16
- }
17
- ),
18
- /* @__PURE__ */ jsx(
19
- "path",
20
- {
21
- d: "M51.82,20.92A9.6,9.6,0,0,1,51,25.29a6.71,6.71,0,0,1-2.29,2.63,8.77,8.77,0,0,1-3,1.27,15,15,0,0,1-3.12.35H32.43A2.43,2.43,0,0,1,30,27.07V3.67A2.43,2.43,0,0,1,32.43,1.2h10.2q3.88,0,5.79,1.82a7.12,7.12,0,0,1,1.9,5.39,6,6,0,0,1-.93,3.34,5.93,5.93,0,0,1-2.45,2.08,11,11,0,0,1,1.38.67,7.19,7.19,0,0,1,2.51,2.43A7.33,7.33,0,0,1,51.82,20.92Zm-6-2.64a3.17,3.17,0,0,0-1.74-1,10,10,0,0,0-1.86-.2h-7v7.81h7.29a4.25,4.25,0,0,0,3-1,3.84,3.84,0,0,0,1.09-3A3.88,3.88,0,0,0,45.83,18.28ZM44.19,6.77A3.25,3.25,0,0,0,41.9,6H35.22v6.31H42a3.18,3.18,0,0,0,2.11-.77,2.71,2.71,0,0,0,.93-2.22A3.26,3.26,0,0,0,44.19,6.77Z",
22
- fill: "var(--color-primary)"
23
- }
24
- ),
25
- /* @__PURE__ */ jsx(
26
- "path",
27
- {
28
- d: "M3.47,1.2A2.43,2.43,0,0,0,1,3.67v23.4a2.43,2.43,0,0,0,2.47,2.47h9.67a11.16,11.16,0,0,0,6.62-1.91,11.93,11.93,0,0,0,4.11-5.12,17.57,17.57,0,0,0,1.42-7.14,18.88,18.88,0,0,0-.79-5.49,13.75,13.75,0,0,0-2.35-4.53,10.65,10.65,0,0,0-3.83-3,11.74,11.74,0,0,0-5.18-1.1ZM20,15.37a14.37,14.37,0,0,1-.75,4.72,7.58,7.58,0,0,1-2.37,3.48,6.44,6.44,0,0,1-4.17,1.31H6.06v-19h6.68a6.34,6.34,0,0,1,5.54,2.85,9.2,9.2,0,0,1,1.32,3A15.15,15.15,0,0,1,20,15.37Z",
29
- fill: "var(--color-primary)"
30
- }
31
- ),
32
- /* @__PURE__ */ jsx(
33
- "path",
34
- {
35
- d: "M151.61,64.53a2.45,2.45,0,0,0-1.76-.67H139.29V42.73a2.32,2.32,0,0,0-.75-1.76,2.44,2.44,0,0,0-1.72-.71A2.55,2.55,0,0,0,135,41a2.34,2.34,0,0,0-.73,1.76v23.4a2.43,2.43,0,0,0,2.47,2.47h13.15a2.49,2.49,0,0,0,1.76-.67,2.2,2.2,0,0,0,.71-1.68A2.23,2.23,0,0,0,151.61,64.53Z",
36
- fill: "var(--color-primary)"
37
- }
38
- ),
39
- /* @__PURE__ */ jsx(
40
- "path",
41
- {
42
- d: "M129.85,65.44,119.9,41.72a2.51,2.51,0,0,0-.91-1.2,2.42,2.42,0,0,0-1.36-.42,2.14,2.14,0,0,0-1.44.36,2.72,2.72,0,0,0-1,1.26l-10.08,24.2a2.73,2.73,0,0,0-.12.77,2.2,2.2,0,0,0,.53,1.5,2,2,0,0,0,1.62.61,2.09,2.09,0,0,0,1.27-.43,2.49,2.49,0,0,0,.87-1.19l2.1-4.94h12.07l2.1,4.9a2.9,2.9,0,0,0,.91,1.21,2.11,2.11,0,0,0,1.32.45,2.32,2.32,0,0,0,2.27-2.39A2.62,2.62,0,0,0,129.85,65.44Zm-16.48-7.85,4-9.48,4.06,9.48Z",
43
- fill: "var(--color-primary)"
44
- }
45
- ),
46
- /* @__PURE__ */ jsx(
47
- "path",
48
- {
49
- d: "M107,40.91a2.52,2.52,0,0,0-1.76-.65h-18a2.55,2.55,0,0,0-1.76.63,2.15,2.15,0,0,0-.71,1.68,2.2,2.2,0,0,0,.71,1.7,2.52,2.52,0,0,0,1.76.65h6.35V66.13a2.39,2.39,0,0,0,.73,1.76,2.58,2.58,0,0,0,1.86.71,2.7,2.7,0,0,0,1.93-.71,2.34,2.34,0,0,0,.75-1.76V44.92h6.35a2.55,2.55,0,0,0,1.76-.63,2.15,2.15,0,0,0,.71-1.68A2.2,2.2,0,0,0,107,40.91Z",
50
- fill: "var(--color-primary)"
51
- }
52
- ),
53
- /* @__PURE__ */ jsx(
54
- "path",
55
- {
56
- d: "M80.84,41a2.26,2.26,0,0,0-1.72-.71,3.74,3.74,0,0,0-1.74.36l-6.11,3.65A2.29,2.29,0,0,0,70,46.37a2.48,2.48,0,0,0,.68,1.68,2.2,2.2,0,0,0,1.74.79,2.52,2.52,0,0,0,1.3-.36L76.25,47V66.13A2.35,2.35,0,0,0,77,67.89a2.55,2.55,0,0,0,1.86.71,2.69,2.69,0,0,0,1.92-.71,2.34,2.34,0,0,0,.75-1.76V42.73A2.45,2.45,0,0,0,80.84,41Z",
57
- fill: "var(--color-primary)"
58
- }
59
- ),
60
- /* @__PURE__ */ jsx(
61
- "path",
62
- {
63
- d: "M67.3,54a2.34,2.34,0,0,0-1.74-.71H58.92a2.44,2.44,0,0,0-1.76.69,2.51,2.51,0,0,0,0,3.48,2.44,2.44,0,0,0,1.76.69h3.81V63.4a11.67,11.67,0,0,1-2,.5,16.72,16.72,0,0,1-2.68.24,9.1,9.1,0,0,1-4.79-1.31,9.81,9.81,0,0,1-4.72-8.4,9.59,9.59,0,0,1,1.28-4.88A9.75,9.75,0,0,1,53.24,46,9,9,0,0,1,58,44.71a10.82,10.82,0,0,1,2.39.25,11.47,11.47,0,0,1,2.15.68,3.18,3.18,0,0,0,.67.25,3.05,3.05,0,0,0,.66.08,2.07,2.07,0,0,0,1.66-.77,2.63,2.63,0,0,0,.65-1.74,2.27,2.27,0,0,0-1.21-2,13.36,13.36,0,0,0-3.28-1.21,16.63,16.63,0,0,0-3.69-.4A14.45,14.45,0,0,0,52.29,41a14.63,14.63,0,0,0-4.7,3.14,14.82,14.82,0,0,0-3.18,4.63,14.53,14.53,0,0,0,0,11.33,14.89,14.89,0,0,0,7.88,7.78A14.62,14.62,0,0,0,58,69a15.78,15.78,0,0,0,4.64-.67,17.19,17.19,0,0,0,4.07-1.8,3.49,3.49,0,0,0,.87-.85A2.23,2.23,0,0,0,68,64.35V55.76A2.44,2.44,0,0,0,67.3,54Z",
64
- fill: "var(--color-primary)"
65
- }
66
- ),
67
- /* @__PURE__ */ jsx(
68
- "path",
69
- {
70
- d: "M37.94,41a2.28,2.28,0,0,0-1.72-.71,3.69,3.69,0,0,0-1.74.36l-6.12,3.65a2.31,2.31,0,0,0-1.25,2.1,2.49,2.49,0,0,0,.69,1.68,2.2,2.2,0,0,0,1.74.79,2.46,2.46,0,0,0,1.29-.36L33.34,47V66.13a2.35,2.35,0,0,0,.73,1.76,2.58,2.58,0,0,0,1.86.71,2.7,2.7,0,0,0,1.93-.71,2.36,2.36,0,0,0,.74-1.76V42.73A2.48,2.48,0,0,0,37.94,41Z",
71
- fill: "var(--color-primary)"
72
- }
73
- ),
74
- /* @__PURE__ */ jsx(
75
- "path",
76
- {
77
- d: "M3.47,40.26A2.43,2.43,0,0,0,1,42.73v23.4A2.43,2.43,0,0,0,3.47,68.6h9.67a11.16,11.16,0,0,0,6.62-1.91,12,12,0,0,0,4.11-5.12,17.57,17.57,0,0,0,1.42-7.14,18.83,18.83,0,0,0-.79-5.49,13.75,13.75,0,0,0-2.35-4.53,10.78,10.78,0,0,0-3.83-3.06,11.74,11.74,0,0,0-5.18-1.09ZM20,54.43a14.27,14.27,0,0,1-.75,4.71,7.48,7.48,0,0,1-2.37,3.48,6.39,6.39,0,0,1-4.17,1.32H6.06v-19h6.68a6.65,6.65,0,0,1,3.28.76,6.65,6.65,0,0,1,2.26,2.09,9.24,9.24,0,0,1,1.32,3A15.29,15.29,0,0,1,20,54.43Z",
78
- fill: "var(--color-primary)"
79
- }
80
- )
81
- ]
82
- }
83
- );
84
-
85
- export { Logo };
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ export const Logo = () => (_jsxs("svg", { id: "bbbad536-f254-4715-8d5c-86b6d7022b08", "data-name": "Logo", xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 154 70", children: [_jsx("path", { d: "M73.13,1.4a16,16,0,0,0-9.31.67,14.12,14.12,0,0,0-4.63,3,13.42,13.42,0,0,0-3,4.55,15.21,15.21,0,0,0-1.07,5.75,16,16,0,0,0,1.17,6.33,12.73,12.73,0,0,0,3.22,4.56A14,14,0,0,0,64.13,29a16.32,16.32,0,0,0,5.52.93A14.79,14.79,0,0,0,72,29.76a16.17,16.17,0,0,0,2.24-.53,14,14,0,0,0,2.17-.87A2.11,2.11,0,0,0,77.6,26.8,2.42,2.42,0,0,0,77,24.72a2.12,2.12,0,0,0-1.4-.85,2.89,2.89,0,0,0-1.68.28,7.28,7.28,0,0,1-2.1.73,11.59,11.59,0,0,1-2.19.2A11.22,11.22,0,0,1,66,24.5a7.87,7.87,0,0,1-3-1.8,8.49,8.49,0,0,1-2-3,11.83,11.83,0,0,1-.71-4.29A11.27,11.27,0,0,1,61,11.52a8.48,8.48,0,0,1,1.84-3,8.12,8.12,0,0,1,2.93-2A11.14,11.14,0,0,1,71.9,6.1a10.21,10.21,0,0,1,2,.69,3.1,3.1,0,0,0,1.68.32A1.83,1.83,0,0,0,77,6.3a2.47,2.47,0,0,0,.58-2.06,2.14,2.14,0,0,0-1.23-1.66,14.22,14.22,0,0,0-3.2-1.18", fill: "var(--color-brand)" }), _jsx("path", { d: "M51.82,20.92A9.6,9.6,0,0,1,51,25.29a6.71,6.71,0,0,1-2.29,2.63,8.77,8.77,0,0,1-3,1.27,15,15,0,0,1-3.12.35H32.43A2.43,2.43,0,0,1,30,27.07V3.67A2.43,2.43,0,0,1,32.43,1.2h10.2q3.88,0,5.79,1.82a7.12,7.12,0,0,1,1.9,5.39,6,6,0,0,1-.93,3.34,5.93,5.93,0,0,1-2.45,2.08,11,11,0,0,1,1.38.67,7.19,7.19,0,0,1,2.51,2.43A7.33,7.33,0,0,1,51.82,20.92Zm-6-2.64a3.17,3.17,0,0,0-1.74-1,10,10,0,0,0-1.86-.2h-7v7.81h7.29a4.25,4.25,0,0,0,3-1,3.84,3.84,0,0,0,1.09-3A3.88,3.88,0,0,0,45.83,18.28ZM44.19,6.77A3.25,3.25,0,0,0,41.9,6H35.22v6.31H42a3.18,3.18,0,0,0,2.11-.77,2.71,2.71,0,0,0,.93-2.22A3.26,3.26,0,0,0,44.19,6.77Z", fill: "var(--color-brand)" }), _jsx("path", { d: "M3.47,1.2A2.43,2.43,0,0,0,1,3.67v23.4a2.43,2.43,0,0,0,2.47,2.47h9.67a11.16,11.16,0,0,0,6.62-1.91,11.93,11.93,0,0,0,4.11-5.12,17.57,17.57,0,0,0,1.42-7.14,18.88,18.88,0,0,0-.79-5.49,13.75,13.75,0,0,0-2.35-4.53,10.65,10.65,0,0,0-3.83-3,11.74,11.74,0,0,0-5.18-1.1ZM20,15.37a14.37,14.37,0,0,1-.75,4.72,7.58,7.58,0,0,1-2.37,3.48,6.44,6.44,0,0,1-4.17,1.31H6.06v-19h6.68a6.34,6.34,0,0,1,5.54,2.85,9.2,9.2,0,0,1,1.32,3A15.15,15.15,0,0,1,20,15.37Z", fill: "var(--color-brand)" }), _jsx("path", { d: "M151.61,64.53a2.45,2.45,0,0,0-1.76-.67H139.29V42.73a2.32,2.32,0,0,0-.75-1.76,2.44,2.44,0,0,0-1.72-.71A2.55,2.55,0,0,0,135,41a2.34,2.34,0,0,0-.73,1.76v23.4a2.43,2.43,0,0,0,2.47,2.47h13.15a2.49,2.49,0,0,0,1.76-.67,2.2,2.2,0,0,0,.71-1.68A2.23,2.23,0,0,0,151.61,64.53Z", fill: "var(--color-brand)" }), _jsx("path", { d: "M129.85,65.44,119.9,41.72a2.51,2.51,0,0,0-.91-1.2,2.42,2.42,0,0,0-1.36-.42,2.14,2.14,0,0,0-1.44.36,2.72,2.72,0,0,0-1,1.26l-10.08,24.2a2.73,2.73,0,0,0-.12.77,2.2,2.2,0,0,0,.53,1.5,2,2,0,0,0,1.62.61,2.09,2.09,0,0,0,1.27-.43,2.49,2.49,0,0,0,.87-1.19l2.1-4.94h12.07l2.1,4.9a2.9,2.9,0,0,0,.91,1.21,2.11,2.11,0,0,0,1.32.45,2.32,2.32,0,0,0,2.27-2.39A2.62,2.62,0,0,0,129.85,65.44Zm-16.48-7.85,4-9.48,4.06,9.48Z", fill: "var(--color-brand)" }), _jsx("path", { d: "M107,40.91a2.52,2.52,0,0,0-1.76-.65h-18a2.55,2.55,0,0,0-1.76.63,2.15,2.15,0,0,0-.71,1.68,2.2,2.2,0,0,0,.71,1.7,2.52,2.52,0,0,0,1.76.65h6.35V66.13a2.39,2.39,0,0,0,.73,1.76,2.58,2.58,0,0,0,1.86.71,2.7,2.7,0,0,0,1.93-.71,2.34,2.34,0,0,0,.75-1.76V44.92h6.35a2.55,2.55,0,0,0,1.76-.63,2.15,2.15,0,0,0,.71-1.68A2.2,2.2,0,0,0,107,40.91Z", fill: "var(--color-brand)" }), _jsx("path", { d: "M80.84,41a2.26,2.26,0,0,0-1.72-.71,3.74,3.74,0,0,0-1.74.36l-6.11,3.65A2.29,2.29,0,0,0,70,46.37a2.48,2.48,0,0,0,.68,1.68,2.2,2.2,0,0,0,1.74.79,2.52,2.52,0,0,0,1.3-.36L76.25,47V66.13A2.35,2.35,0,0,0,77,67.89a2.55,2.55,0,0,0,1.86.71,2.69,2.69,0,0,0,1.92-.71,2.34,2.34,0,0,0,.75-1.76V42.73A2.45,2.45,0,0,0,80.84,41Z", fill: "var(--color-brand)" }), _jsx("path", { d: "M67.3,54a2.34,2.34,0,0,0-1.74-.71H58.92a2.44,2.44,0,0,0-1.76.69,2.51,2.51,0,0,0,0,3.48,2.44,2.44,0,0,0,1.76.69h3.81V63.4a11.67,11.67,0,0,1-2,.5,16.72,16.72,0,0,1-2.68.24,9.1,9.1,0,0,1-4.79-1.31,9.81,9.81,0,0,1-4.72-8.4,9.59,9.59,0,0,1,1.28-4.88A9.75,9.75,0,0,1,53.24,46,9,9,0,0,1,58,44.71a10.82,10.82,0,0,1,2.39.25,11.47,11.47,0,0,1,2.15.68,3.18,3.18,0,0,0,.67.25,3.05,3.05,0,0,0,.66.08,2.07,2.07,0,0,0,1.66-.77,2.63,2.63,0,0,0,.65-1.74,2.27,2.27,0,0,0-1.21-2,13.36,13.36,0,0,0-3.28-1.21,16.63,16.63,0,0,0-3.69-.4A14.45,14.45,0,0,0,52.29,41a14.63,14.63,0,0,0-4.7,3.14,14.82,14.82,0,0,0-3.18,4.63,14.53,14.53,0,0,0,0,11.33,14.89,14.89,0,0,0,7.88,7.78A14.62,14.62,0,0,0,58,69a15.78,15.78,0,0,0,4.64-.67,17.19,17.19,0,0,0,4.07-1.8,3.49,3.49,0,0,0,.87-.85A2.23,2.23,0,0,0,68,64.35V55.76A2.44,2.44,0,0,0,67.3,54Z", fill: "var(--color-brand)" }), _jsx("path", { d: "M37.94,41a2.28,2.28,0,0,0-1.72-.71,3.69,3.69,0,0,0-1.74.36l-6.12,3.65a2.31,2.31,0,0,0-1.25,2.1,2.49,2.49,0,0,0,.69,1.68,2.2,2.2,0,0,0,1.74.79,2.46,2.46,0,0,0,1.29-.36L33.34,47V66.13a2.35,2.35,0,0,0,.73,1.76,2.58,2.58,0,0,0,1.86.71,2.7,2.7,0,0,0,1.93-.71,2.36,2.36,0,0,0,.74-1.76V42.73A2.48,2.48,0,0,0,37.94,41Z", fill: "var(--color-brand)" }), _jsx("path", { d: "M3.47,40.26A2.43,2.43,0,0,0,1,42.73v23.4A2.43,2.43,0,0,0,3.47,68.6h9.67a11.16,11.16,0,0,0,6.62-1.91,12,12,0,0,0,4.11-5.12,17.57,17.57,0,0,0,1.42-7.14,18.83,18.83,0,0,0-.79-5.49,13.75,13.75,0,0,0-2.35-4.53,10.78,10.78,0,0,0-3.83-3.06,11.74,11.74,0,0,0-5.18-1.09ZM20,54.43a14.27,14.27,0,0,1-.75,4.71,7.48,7.48,0,0,1-2.37,3.48,6.39,6.39,0,0,1-4.17,1.32H6.06v-19h6.68a6.65,6.65,0,0,1,3.28.76,6.65,6.65,0,0,1,2.26,2.09,9.24,9.24,0,0,1,1.32,3A15.29,15.29,0,0,1,20,54.43Z", fill: "var(--color-brand)" })] }));
@@ -0,0 +1,15 @@
1
+ import type { JSX } from 'react';
2
+ import { ColumnItem } from '../../../components/table/Table';
3
+ type HarvestRunRow = {
4
+ runId: string;
5
+ source: string;
6
+ started: string;
7
+ status: 'Completed' | 'Running' | 'Failed';
8
+ updated: number;
9
+ warnings: number;
10
+ failed: number;
11
+ };
12
+ export declare const STORY_TABLE_DATA: () => HarvestRunRow[];
13
+ export declare const STORY_TABLE_COLUMNS: ColumnItem<HarvestRunRow>[];
14
+ export declare const SampleTable: () => JSX.Element;
15
+ export {};
@@ -0,0 +1,49 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Chip } from '../../../components/chip/Chip';
3
+ import { Table } from '../../../components/table/Table';
4
+ const sources = ['onix.vendor-x', 'onix.vendor-y', 'cover.provider-z'];
5
+ const statuses = ['Completed', 'Running', 'Failed'];
6
+ function randomInt(min, max) {
7
+ return Math.floor(Math.random() * (max - min + 1)) + min;
8
+ }
9
+ function randomDate(start, end) {
10
+ const date = new Date(start.getTime() + Math.random() * (end.getTime() - start.getTime()));
11
+ return date;
12
+ }
13
+ function pad(n) {
14
+ return n < 10 ? '0' + n : n;
15
+ }
16
+ function formatDate(date) {
17
+ return `${date.getFullYear()}-${pad(date.getMonth() + 1)}-${pad(date.getDate())} ${pad(date.getHours())}:00`;
18
+ }
19
+ function generateRandomRow() {
20
+ const date = randomDate(new Date(2026, 0, 27, 3), new Date(2026, 0, 27, 23));
21
+ const source = sources[randomInt(0, sources.length - 1)];
22
+ const status = statuses[randomInt(0, statuses.length - 1)];
23
+ return {
24
+ runId: `harvest:${formatDate(date).replace(' ', 'T')}`,
25
+ source,
26
+ started: formatDate(date),
27
+ status,
28
+ updated: status === 'Failed' ? 0 : randomInt(800, 2000),
29
+ warnings: randomInt(0, 40),
30
+ failed: status === 'Failed' ? randomInt(1, 5) : randomInt(0, 2),
31
+ };
32
+ }
33
+ export const STORY_TABLE_DATA = () => Array.from({ length: randomInt(10, 25) }, _ => generateRandomRow());
34
+ export const STORY_TABLE_COLUMNS = [
35
+ { id: 'runId', header: 'Kørsels-ID', accessor: 'runId', sortable: true },
36
+ { id: 'source', header: 'Kilde', accessor: 'source', sortable: true },
37
+ { id: 'started', header: 'Startet', accessor: 'started', sortable: true },
38
+ {
39
+ id: 'status',
40
+ header: 'Status',
41
+ accessor: 'status',
42
+ sortable: true,
43
+ render: (row) => (_jsxs("span", { className: "dbc-flex dbc-flex-row dbc-flex-wrap dbc-gap-xs", children: [row.status === 'Completed' && (_jsx(Chip, { size: "sm", severity: "success", children: "Fuldf\u00F8rt" })), row.status === 'Running' && (_jsx(Chip, { size: "sm", severity: "info", children: "K\u00F8rer" })), row.status === 'Failed' && (_jsx(Chip, { size: "sm", severity: "error", children: "Fejlet" }))] })),
44
+ },
45
+ { id: 'updated', header: 'Opdateret', accessor: 'updated', sortable: true },
46
+ { id: 'warnings', header: 'Advarsler', accessor: 'warnings', sortable: true },
47
+ { id: 'failed', header: 'Fejlet', accessor: 'failed', sortable: true },
48
+ ];
49
+ export const SampleTable = () => (_jsx(Table, { fillViewport: true, data: STORY_TABLE_DATA(), columns: STORY_TABLE_COLUMNS, dataKey: "runId", variant: "embedded" }));
@@ -0,0 +1,11 @@
1
+ import type { ReactNode } from 'react';
2
+ export declare const textSizes: {
3
+ name: string;
4
+ value: string;
5
+ }[];
6
+ export declare const textColors: {
7
+ name: string;
8
+ value: string;
9
+ backgroundColor: string | undefined;
10
+ }[];
11
+ export declare function Colors(): ReactNode;
@@ -0,0 +1,96 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useState } from 'react';
3
+ import { Select } from '../../../components/forms/select/Select';
4
+ import { Headline } from '../../../components/headline/Headline';
5
+ import styles from './Colors.module.css';
6
+ const colors = [
7
+ {
8
+ name: 'Brand',
9
+ value: '--color-brand',
10
+ textColor: 'var(--color-fg-on-brand)',
11
+ hoverColor: 'var(--color-brand-hover)',
12
+ },
13
+ {
14
+ name: 'Success',
15
+ value: '--color-status-success',
16
+ textColor: 'var(--color-fg-on-strong)',
17
+ // no dedicated hover token for status colors in the new theme
18
+ hoverColor: 'var(--color-status-success)',
19
+ },
20
+ {
21
+ name: 'Info',
22
+ value: '--color-status-info',
23
+ textColor: 'var(--color-fg-on-strong)',
24
+ hoverColor: 'var(--color-status-info)',
25
+ },
26
+ {
27
+ name: 'Warning',
28
+ value: '--color-status-warning',
29
+ textColor: 'var(--color-fg-on-strong)',
30
+ hoverColor: 'var(--color-status-warning)',
31
+ },
32
+ {
33
+ name: 'Error',
34
+ value: '--color-status-error',
35
+ textColor: 'var(--color-fg-on-strong)',
36
+ hoverColor: 'var(--color-status-error)',
37
+ },
38
+ {
39
+ name: 'Success background',
40
+ value: '--color-status-success-bg',
41
+ textColor: 'var(--color-status-success-fg)',
42
+ hoverColor: 'var(--color-status-success-bg)',
43
+ },
44
+ {
45
+ name: 'Info background',
46
+ value: '--color-status-info-bg',
47
+ textColor: 'var(--color-status-info-fg)',
48
+ hoverColor: 'var(--color-status-info-bg)',
49
+ },
50
+ {
51
+ name: 'Warning background',
52
+ value: '--color-status-warning-bg',
53
+ textColor: 'var(--color-status-warning-fg)',
54
+ hoverColor: 'var(--color-status-warning-bg)',
55
+ },
56
+ {
57
+ name: 'Error background',
58
+ value: '--color-status-error-bg',
59
+ textColor: 'var(--color-status-error-fg)',
60
+ hoverColor: 'var(--color-status-error-bg)',
61
+ },
62
+ ];
63
+ export const textSizes = [
64
+ { name: 'Extra small', value: '--font-size-xs' },
65
+ { name: 'Small', value: '--font-size-sm' },
66
+ { name: 'Medium', value: '--font-size-md' },
67
+ { name: 'Large', value: '--font-size-lg' },
68
+ ];
69
+ export const textColors = [
70
+ { name: 'Text Default', value: '--color-fg-default', backgroundColor: undefined },
71
+ { name: 'Text Secondary', value: '--color-fg-muted', backgroundColor: undefined },
72
+ { name: 'Text Muted', value: '--color-fg-subtle', backgroundColor: undefined },
73
+ {
74
+ name: 'Text Inverse',
75
+ value: '--color-fg-on-strong',
76
+ backgroundColor: 'var(--color-fg-default)',
77
+ },
78
+ ];
79
+ const fontWeights = [
80
+ { label: 'Default', value: 'var(--font-weight-default)' }, // <- fixed missing ')'
81
+ { label: 'Medium', value: 'var(--font-weight-medium)' },
82
+ { label: 'Bold', value: 'var(--font-weight-bold)' },
83
+ ];
84
+ const headerSizes = [1, 2, 3, 4, 5, 6];
85
+ export function Colors() {
86
+ const [fontWeight, setFontWeight] = useState(fontWeights[0].value);
87
+ return (_jsxs("div", { className: "dbc-flex dbc-flex-column dbc-gap-md", children: [_jsx(Headline, { children: "Colors" }), _jsx("div", { className: `dbc-flex dbc-gap-sm dbc-flex-wrap ${styles.container}`, style: { width: '100%' }, children: colors.map(color => (_jsx("div", { className: styles.colorItem, style: {
88
+ '--bgColor': `var(${color.value})`,
89
+ '--textColor': color.textColor,
90
+ }, children: color.name }, color.name))) }), _jsxs("div", { children: [_jsx(Headline, { addition: _jsx(Select, { selectedValue: fontWeight, onChange: e => setFontWeight(e), options: fontWeights }), children: "Typography" }), textColors.map(color => (_jsx("div", { className: "dbc-flex dbc-gap-sm", children: textSizes.map(size => (_jsxs("div", { className: styles.textColorItem, style: {
91
+ '--textColor': `var(${color.value})`,
92
+ '--bgColor': color.backgroundColor ? color.backgroundColor : 'transparent',
93
+ '--fontSize': `var(${size.value})`,
94
+ '--fontWeight': fontWeight,
95
+ }, children: [color.name, " - ", size.name] }, `${color.name}-${size.name}`))) }, color.name))), _jsx("div", { className: "dbc-flex dbc-gap-sm", children: headerSizes.map(size => (_jsxs(Headline, { size: size, children: ["Header ", size] }, `header-size-${size}`))) })] })] }));
96
+ }
@@ -0,0 +1,27 @@
1
+ .colorItem {
2
+ width: calc(100% / 3);
3
+ background-color: var(--bgColor);
4
+ padding: var(--spacing-md);
5
+ color: var(--textColor);
6
+ border-radius: var(--border-radius-default);
7
+ &:hover {
8
+ opacity: 0.8;
9
+ cursor: pointer;
10
+ transition: all 0.1s ease-in-out;
11
+ }
12
+ }
13
+
14
+ .textColorItem {
15
+ width: calc(100% / 3);
16
+ font-size: var(--fontSize);
17
+ background-color: var(--bgColor);
18
+ font-weight: var(--fontWeight);
19
+ padding: var(--spacing-md);
20
+ color: var(--textColor);
21
+ border-radius: var(--border-radius-default);
22
+ &:hover {
23
+ opacity: 0.8;
24
+ cursor: pointer;
25
+ transition: all 0.1s ease-in-out;
26
+ }
27
+ }
@@ -0,0 +1,2 @@
1
+ import type { JSX } from 'react';
2
+ export declare function Spacing(): JSX.Element;
@@ -0,0 +1,76 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { CopyButton } from '../../../components/copy-button/CopyButton';
3
+ import { Headline } from '../../../components/headline/Headline';
4
+ import styles from './Spacing.module.css';
5
+ const SIZES = ['xxs', 'xs', 'sm', 'md', 'lg', 'xl', '2xl'];
6
+ const AXES = ['all', 'block', 'inline', 'top', 'bottom', 'start', 'end'];
7
+ // Theme spacing values (px) to show in headers
8
+ const SIZE_PX = {
9
+ xxs: '4px',
10
+ xs: '8px',
11
+ sm: '12px',
12
+ md: '16px',
13
+ lg: '24px',
14
+ xl: '32px',
15
+ '2xl': '48px',
16
+ };
17
+ // map axis -> class fragment for each kind
18
+ const CLASS_PARTS = {
19
+ padding: {
20
+ all: 'p',
21
+ block: 'py',
22
+ inline: 'px',
23
+ top: 'pt',
24
+ bottom: 'pb',
25
+ start: 'ps',
26
+ end: 'pe',
27
+ },
28
+ margin: {
29
+ all: 'm',
30
+ block: 'my',
31
+ inline: 'mx',
32
+ top: 'mt',
33
+ bottom: 'mb',
34
+ start: 'ms',
35
+ end: 'me',
36
+ },
37
+ };
38
+ // Single-side helpers only go up to xl
39
+ const HAS_SINGLE_SIDE_FOR = (size) => size !== '2xl';
40
+ function makeClass(kind, axis, size) {
41
+ if ((axis === 'top' || axis === 'bottom' || axis === 'start' || axis === 'end') &&
42
+ !HAS_SINGLE_SIDE_FOR(size)) {
43
+ return null;
44
+ }
45
+ const part = CLASS_PARTS[kind][axis];
46
+ return `dbc-${part}-${size}`;
47
+ }
48
+ function Code({ children }) {
49
+ return _jsx("code", { className: styles.code, children: children });
50
+ }
51
+ const ContentBlock = ({ helperClass }) => (_jsxs("div", { className: `${styles.contentBlock} dbc-flex dbc-gap-xxs dbc-justify-center ${helperClass} dbc-items-center`, children: [helperClass, " ", _jsx(CopyButton, { text: helperClass, variant: "inline", size: "sm" })] }));
52
+ function PaddingPreview({ cls }) {
53
+ return (_jsx("div", { className: `${styles.paddingPreview} ${cls}`, children: _jsx(ContentBlock, { helperClass: cls }) }));
54
+ }
55
+ function MarginPreview({ cls }) {
56
+ return (_jsx("div", { className: styles.marginCanvas, children: _jsx("div", { className: `${styles.marginBlock} ${cls}`, children: _jsx(ContentBlock, { helperClass: cls }) }) }));
57
+ }
58
+ function Cell({ kind, axis, size }) {
59
+ const cls = makeClass(kind, axis, size);
60
+ if (!cls)
61
+ return _jsx("div", { className: styles.unavailable, children: "\u2014" });
62
+ return (_jsx("div", { className: styles.cellInner, children: _jsx("div", { className: styles.cellPreview, children: kind === 'padding' ? _jsx(PaddingPreview, { cls: cls }) : _jsx(MarginPreview, { cls: cls }) }) }));
63
+ }
64
+ function Grid({ kind, title, severity }) {
65
+ return (_jsxs("section", { className: styles.section, children: [_jsx(Headline, { marker: true, severity: severity, disableMargin: true, size: 2, children: title }), _jsx("div", { className: styles.tableContainer, children: _jsxs("table", { className: styles.table, children: [_jsx("thead", { children: _jsxs("tr", { children: [_jsx("th", { className: styles.axisCol, children: "Axis" }), SIZES.map(size => (_jsxs("th", { className: styles.sizeHead, children: [size, " ", _jsxs("span", { className: styles.sizePx, children: ["(", SIZE_PX[size], ")"] })] }, size)))] }) }), _jsx("tbody", { children: AXES.map(axis => (_jsxs("tr", { children: [_jsx("th", { className: styles.axisHead, children: axis }), SIZES.map(size => (_jsx("td", { className: styles.cell, children: _jsx(Cell, { kind: kind, axis: axis, size: size }) }, size)))] }, axis))) })] }) })] }));
66
+ }
67
+ export function Spacing() {
68
+ return (_jsxs("div", { className: styles.container, style: {
69
+ ['--pad-indicator']: 'var(--color-bg-info)',
70
+ ['--pad-border']: 'var(--color-info)',
71
+ ['--margin-indicator']: 'var(--color-bg-warning)',
72
+ ['--margin-border']: 'var(--color-warning)',
73
+ ['--dot-pad']: 'var(--color-bg-selected)',
74
+ ['--dot-mar']: 'var(--opac-bg-default)',
75
+ }, children: [_jsx("header", { className: styles.header, children: _jsx(Headline, { disableMargin: true, children: "Spacing helpers" }) }), _jsxs("section", { className: styles.intro, children: [_jsx("h2", { className: styles.h2, children: "Naming Convention" }), _jsxs("p", { className: styles.paragraph, children: ["Spacing helpers follow a simple ", _jsx("strong", { children: "prefix\u2013axis\u2013size" }), " pattern:"] }), _jsx("div", { className: styles.example, children: _jsx(Code, { children: "dbc-[prefix][axis?]-[size]" }) }), _jsxs("ul", { className: styles.list, children: [_jsxs("li", { children: [_jsx("strong", { children: "Prefix" }), ": ", _jsx(Code, { children: "p" }), " for ", _jsx("em", { children: "padding" }), ", ", _jsx(Code, { children: "m" }), " for", ' ', _jsx("em", { children: "margin" }), "."] }), _jsxs("li", { children: [_jsx("strong", { children: "Axis" }), " (optional): ", _jsx(Code, { children: "x" }), " = inline (left + right), ", _jsx(Code, { children: "y" }), ' ', "= block (top + bottom), or single sides ", _jsx(Code, { children: "t" }), " / ", _jsx(Code, { children: "b" }), " / ", _jsx(Code, { children: "s" }), ' ', "/ ", _jsx(Code, { children: "e" }), "."] }), _jsxs("li", { children: [_jsx("strong", { children: "Size" }), ": one of ", _jsx(Code, { children: "xxs" }), ", ", _jsx(Code, { children: "xs" }), ", ", _jsx(Code, { children: "sm" }), ",", ' ', _jsx(Code, { children: "md" }), ", ", _jsx(Code, { children: "lg" }), ", ", _jsx(Code, { children: "xl" }), ", ", _jsx(Code, { children: "2xl" }), "."] })] }), _jsxs("p", { className: styles.paragraph, children: ["For example: ", _jsx(Code, { children: "dbc-px-md" }), " adds medium horizontal padding, while", ' ', _jsx(Code, { children: "dbc-mt-lg" }), " adds a large top margin."] })] }), _jsx(Grid, { kind: "padding", title: "Padding", severity: "info" }), _jsx(Grid, { kind: "margin", title: "Margin", severity: "warning" })] }));
76
+ }
@@ -0,0 +1,154 @@
1
+ /* Layout */
2
+ .container {
3
+ margin-inline: auto;
4
+ display: flex;
5
+ flex-direction: column;
6
+ gap: 2rem;
7
+ padding: 1.5rem;
8
+ color: var(--color-text);
9
+ }
10
+
11
+ /* Intro copy */
12
+ .intro {
13
+ display: grid;
14
+ gap: 0.5rem;
15
+ }
16
+ .paragraph {
17
+ color: var(--color-text-secondary, #374151);
18
+ }
19
+ .example {
20
+ margin-top: 0.25rem;
21
+ }
22
+ .list {
23
+ margin: 0.5rem 0 0 1rem;
24
+ display: grid;
25
+ gap: 0.25rem;
26
+ }
27
+
28
+ .section {
29
+ display: grid;
30
+ gap: 1rem;
31
+ }
32
+ .h2 {
33
+ font-size: 1rem;
34
+ font-weight: 500;
35
+ color: #27272a;
36
+ }
37
+
38
+ .tableContainer {
39
+ overflow: auto;
40
+ border-radius: 0.75rem;
41
+ border: 1px solid var(--color-border);
42
+ background: var(--color-surface);
43
+ box-shadow: var(--shadow-xs);
44
+ }
45
+
46
+ .table {
47
+ width: 100%;
48
+ border-collapse: collapse;
49
+ overflow: auto;
50
+ font-size: var(--font-size-sm);
51
+ }
52
+
53
+ .axisCol {
54
+ width: 90px;
55
+ text-align: left;
56
+ padding: 0.625rem 0.75rem;
57
+ color: var(--color-text-muted);
58
+ font-weight: 500;
59
+ background: var(--color-background);
60
+ }
61
+
62
+ .axisHead {
63
+ text-align: left;
64
+ padding: 0.625rem 0.75rem;
65
+ color: var(--color-text-secondary, #374151);
66
+ font-weight: 500;
67
+ background: var(--opac-bg-light, rgba(0, 0, 0, 0.025));
68
+ position: sticky;
69
+ left: 0;
70
+ z-index: 1;
71
+ }
72
+ .sizeHead {
73
+ text-align: center;
74
+ padding: 0.5rem 0.5rem;
75
+ font-weight: 600;
76
+ color: var(--color-text, #1a1a1a);
77
+ white-space: nowrap;
78
+ background: var(--color-surface, #fff);
79
+ border-bottom: 1px solid var(--color-border, rgba(0, 0, 0, 0.12));
80
+ }
81
+ .sizePx {
82
+ font-weight: 400;
83
+ color: var(--color-text-muted, #5f6368);
84
+ margin-left: 0.25rem;
85
+ }
86
+
87
+ .table tbody tr:nth-child(odd) {
88
+ background: var(--bg-color);
89
+ }
90
+ .table tbody tr:nth-child(even) {
91
+ background: var(--opac-bg-default);
92
+ }
93
+
94
+ .cell {
95
+ vertical-align: middle;
96
+ padding: var(--spacing-xs);
97
+ }
98
+
99
+ .cellInner {
100
+ display: grid;
101
+ gap: var(--spacing-xxs);
102
+ align-items: center;
103
+ justify-items: center;
104
+ }
105
+
106
+ .cellPreview {
107
+ width: min(200px, 100%);
108
+ }
109
+
110
+ .code {
111
+ border-radius: var(--border-radius-default);
112
+ background: var(--color-bg-default);
113
+ padding: 0 var(--spacing-xs);
114
+ line-height: 1.5;
115
+ font-size: 12px;
116
+ font-family: var(--font-family-mono, monospace);
117
+ color: var(--color-text-secondary);
118
+ box-shadow: var(--shadow-xs);
119
+ }
120
+
121
+ .contentBlock {
122
+ border-radius: var(--border-radius-md, 0.375rem);
123
+ background: var(--color-background);
124
+ text-align: center;
125
+ font-size: var(--font-size-xs);
126
+ color: var(--color-text-secondary);
127
+ box-shadow: var(--shadow-xs);
128
+ white-space: nowrap;
129
+ overflow: hidden;
130
+ text-overflow: ellipsis;
131
+ }
132
+
133
+ .paddingPreview {
134
+ width: 100%;
135
+ border-radius: var(--border-radius-md, 0.375rem);
136
+ background: var(--pad-indicator, var(--color-bg-selected));
137
+ box-shadow: var(--shadow-xs, 0 1px 2px rgba(0, 0, 0, 0.05));
138
+ outline: 1px solid var(--pad-border, var(--color-border-selected));
139
+ }
140
+
141
+ .marginCanvas {
142
+ width: 100%;
143
+ position: relative;
144
+ display: inline-block;
145
+ border-radius: var(--border-radius-md, 0.375rem);
146
+ background: var(--margin-indicator, var(--opac-bg-default));
147
+ outline: 1px solid var(--margin-border, var(--color-border));
148
+ }
149
+
150
+ .marginBlock {
151
+ border-radius: var(--border-radius-md, 0.375rem);
152
+ background: var(--color-background, #fff);
153
+ box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.06);
154
+ }
@@ -1,5 +1,6 @@
1
- interface AppHeader {
2
- children: React.ReactNode;
1
+ import type { ReactNode, JSX } from 'react';
2
+ interface AppHeaderProps {
3
+ children: ReactNode;
3
4
  }
4
- export declare function AppHeader({ children }: AppHeader): JSX.Element;
5
+ export declare function AppHeader({ children }: AppHeaderProps): JSX.Element;
5
6
  export {};
@@ -1,8 +1,5 @@
1
- import { jsx } from 'react/jsx-runtime';
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import styles from './AppHeader.module.css';
3
-
4
- function AppHeader({ children }) {
5
- return /* @__PURE__ */ jsx("header", { children: /* @__PURE__ */ jsx("div", { className: styles.container, children }) });
3
+ export function AppHeader({ children }) {
4
+ return (_jsx("header", { children: _jsx("div", { className: styles.container, children: children }) }));
6
5
  }
7
-
8
- export { AppHeader };
@@ -1,7 +1,3 @@
1
- /* =========================
2
- AppHeader (owns the chrome)
3
- ========================= */
4
-
5
1
  .container {
6
2
  /* layout */
7
3
  display: flex;
@@ -11,21 +7,20 @@
11
7
 
12
8
  /* sizing */
13
9
  inline-size: 100%;
14
- min-block-size: 60px; /* preserve your previous height */
10
+ min-block-size: 60px;
15
11
  box-sizing: border-box;
16
12
 
17
13
  /* chrome */
18
- background-color: var(--color-surface);
19
- color: var(--color-text);
20
- border-block-end: var(--border-width-thin) solid var(--color-border);
14
+ background-color: var(--color-bg-surface);
15
+ color: var(--color-fg-default);
16
+ border-block-end: var(--border-width-thin) solid var(--color-border-default);
21
17
 
22
18
  /* density-aware vertical rhythm */
23
19
  padding-block: calc(var(--control-padding-y) + var(--density));
24
- padding-inline: var(--spacing-lg);
20
+ padding-inline: var(--spacing-md);
25
21
  }
26
22
 
27
- /* Optional content wrapper if you want to constrain width
28
- (use in JSX: <AppHeader><div className={styles.inner}>…</div></AppHeader>) */
23
+ /* Optional content wrapper */
29
24
  .inner {
30
25
  inline-size: min(100%, var(--container-xl));
31
26
  margin-inline: auto;
@@ -36,7 +31,7 @@
36
31
  gap: var(--spacing-lg);
37
32
  }
38
33
 
39
- /* Slots (optional utility classes) */
34
+ /* Slots */
40
35
  .start,
41
36
  .center,
42
37
  .end {
@@ -55,19 +50,19 @@
55
50
  box-shadow: var(--focus-ring);
56
51
  }
57
52
 
58
- /* Elevated header (e.g., when page scrolls) */
53
+ /* Elevated header */
59
54
  .elevated {
60
55
  border-block-end: 0;
61
56
  box-shadow: var(--shadow-sm);
62
57
  }
63
58
 
64
- /* Transparent header (e.g., over hero image) */
59
+ /* Transparent header */
65
60
  .transparent {
66
61
  background-color: transparent;
67
62
  border-block-end: 0;
68
63
  }
69
64
 
70
- /* Condensed density option (keeps chrome in one place) */
65
+ /* Condensed density option */
71
66
  :root[data-density='compact'] .container {
72
67
  padding-inline: var(--spacing-md);
73
68
  }
@@ -0,0 +1,9 @@
1
+ import type { JSX } from 'react';
2
+ interface AttributeChipProps {
3
+ label: string;
4
+ value: string | number | boolean;
5
+ loading?: boolean;
6
+ size?: 'sm' | 'md' | 'lg';
7
+ }
8
+ export declare function AttributeChip({ label, value, size, loading, }: AttributeChipProps): JSX.Element;
9
+ export {};
@@ -0,0 +1,5 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import styles from './AttributeChip.module.css';
3
+ export function AttributeChip({ label, value, size = 'md', loading, }) {
4
+ return (_jsxs("div", { className: `${styles.container} ${styles[size]}`, "aria-busy": loading, children: [_jsx("span", { className: styles.label, children: label }), _jsx("span", { className: styles.value, children: loading ? '—' : value === null || value === void 0 ? void 0 : value.toString() })] }));
5
+ }