lintje 0.2.0 → 0.3.0

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 (276) hide show
  1. package/README.md +2 -2
  2. package/dist-elements/actions.js +1 -1
  3. package/dist-elements/chunks/{base-Bg-IFOPG.js → base-CbmWxUig.js} +444 -272
  4. package/dist-elements/chunks/{controls-B1455oPG.js → controls-DxmnDSBr.js} +6 -0
  5. package/dist-elements/chunks/dialog-DChINFxD.js +28 -0
  6. package/dist-elements/chunks/{disclosure-BXTX04gM.js → disclosure-D39vAR5q.js} +1 -1
  7. package/dist-elements/chunks/{disclosure-CMXhX-Vb.js → disclosure-DLkXPUpV.js} +6 -6
  8. package/dist-elements/chunks/download-Ct9q2anY.js +206 -0
  9. package/dist-elements/chunks/{focus-trap-9BnE-xWv.js → focus-trap-BwOxE5BX.js} +1 -1
  10. package/dist-elements/chunks/input-CRW_exv_.js +195 -0
  11. package/dist-elements/chunks/{player-DXOZEyEy.js → player-B8QXJ0Z5.js} +26 -26
  12. package/dist-elements/chunks/{sentence-BI3lwEuT.js → sentence-B19AyZBS.js} +3 -3
  13. package/dist-elements/chunks/{stagger-qGD3wmhg.js → stagger-BHoOgy0g.js} +81 -75
  14. package/dist-elements/core.js +1 -1
  15. package/dist-elements/custom-elements.json +980 -670
  16. package/dist-elements/data-types.json +6798 -0
  17. package/dist-elements/feedback.js +2 -1
  18. package/dist-elements/frame.js +0 -2
  19. package/dist-elements/guides/dashboard.md +8 -0
  20. package/dist-elements/guides/events.md +4 -5
  21. package/dist-elements/guides/loading.md +8 -7
  22. package/dist-elements/guides/page-contents.md +110 -0
  23. package/dist-elements/guides/start.md +12 -0
  24. package/dist-elements/inputs.js +2 -1
  25. package/dist-elements/layout.js +1 -1
  26. package/dist-elements/lintje.js +6975 -6120
  27. package/dist-elements/overlays.js +2 -2
  28. package/dist-elements/skills/lintje/SKILL.md +1 -1
  29. package/dist-elements/tables.js +1 -1
  30. package/dist-elements/tag/activity-log.js +15 -15
  31. package/dist-elements/tag/ai-label.js +10 -10
  32. package/dist-elements/tag/announcement.js +36 -76
  33. package/dist-elements/tag/app-search.js +49 -49
  34. package/dist-elements/tag/audio-player.js +57 -57
  35. package/dist-elements/tag/badge.js +1 -1
  36. package/dist-elements/tag/breadcrumbs.js +15 -15
  37. package/dist-elements/tag/button.js +1 -1
  38. package/dist-elements/tag/card-list.js +12 -12
  39. package/dist-elements/tag/card.js +39 -44
  40. package/dist-elements/tag/chart.js +1050 -795
  41. package/dist-elements/tag/chat-answer.js +49 -49
  42. package/dist-elements/tag/chat-composer.js +75 -71
  43. package/dist-elements/tag/chat-message.js +8 -8
  44. package/dist-elements/tag/chat-strip.js +22 -22
  45. package/dist-elements/tag/chat-suggestions.js +12 -12
  46. package/dist-elements/tag/chat.js +56 -56
  47. package/dist-elements/tag/checkbox-group.d.ts +1 -0
  48. package/dist-elements/tag/checkbox-group.js +59 -0
  49. package/dist-elements/tag/checkbox.js +8 -8
  50. package/dist-elements/tag/code.js +9 -9
  51. package/dist-elements/tag/combobox.js +18 -18
  52. package/dist-elements/tag/conflict-alert.js +12 -12
  53. package/dist-elements/tag/copy-button.js +14 -14
  54. package/dist-elements/tag/data-table.js +878 -530
  55. package/dist-elements/tag/date-input.js +30 -30
  56. package/dist-elements/tag/date-range.js +37 -37
  57. package/dist-elements/tag/description-list.js +29 -32
  58. package/dist-elements/tag/dialog.d.ts +1 -0
  59. package/dist-elements/tag/dialog.js +144 -0
  60. package/dist-elements/tag/document-viewer.js +23 -23
  61. package/dist-elements/tag/drawer.js +28 -32
  62. package/dist-elements/tag/empty-state.js +19 -30
  63. package/dist-elements/tag/error-page.d.ts +1 -0
  64. package/dist-elements/tag/error-page.js +109 -0
  65. package/dist-elements/tag/error-summary.js +10 -10
  66. package/dist-elements/tag/expander.js +8 -8
  67. package/dist-elements/tag/explainer.js +11 -11
  68. package/dist-elements/tag/field.js +5 -5
  69. package/dist-elements/tag/file-upload.js +34 -34
  70. package/dist-elements/tag/filter-bar.js +56 -56
  71. package/dist-elements/tag/filter-sheet.js +11 -11
  72. package/dist-elements/tag/filter-zone.js +31 -31
  73. package/dist-elements/tag/footer.js +21 -21
  74. package/dist-elements/tag/form-actions.js +29 -25
  75. package/dist-elements/tag/form-section.js +6 -6
  76. package/dist-elements/tag/form.js +12 -12
  77. package/dist-elements/tag/gallery.js +14 -14
  78. package/dist-elements/tag/grid-item.js +1 -1
  79. package/dist-elements/tag/grid.js +1 -1
  80. package/dist-elements/tag/hero.js +12 -12
  81. package/dist-elements/tag/highlight.js +5 -5
  82. package/dist-elements/tag/icon-button.js +1 -1
  83. package/dist-elements/tag/icon.js +1 -1
  84. package/dist-elements/tag/job-list.js +22 -44
  85. package/dist-elements/tag/kpi-row.js +12 -10
  86. package/dist-elements/tag/kpi.js +146 -137
  87. package/dist-elements/tag/level-meter.js +11 -11
  88. package/dist-elements/tag/list.js +55 -55
  89. package/dist-elements/tag/logo.js +30 -30
  90. package/dist-elements/tag/map.js +690 -665
  91. package/dist-elements/tag/menu-button.js +70 -69
  92. package/dist-elements/tag/modal.js +28 -37
  93. package/dist-elements/tag/multiselect.js +34 -34
  94. package/dist-elements/tag/note.js +5 -5
  95. package/dist-elements/tag/notifications.js +36 -36
  96. package/dist-elements/tag/number-input.js +12 -12
  97. package/dist-elements/tag/page-header.js +140 -37
  98. package/dist-elements/tag/pagination.js +53 -48
  99. package/dist-elements/tag/popover.js +1 -1
  100. package/dist-elements/tag/progress-bar.js +1 -1
  101. package/dist-elements/tag/prose.js +6 -6
  102. package/dist-elements/tag/qr-code.js +7 -7
  103. package/dist-elements/tag/radio-group.js +12 -12
  104. package/dist-elements/tag/range.js +22 -22
  105. package/dist-elements/tag/recording-status.js +14 -14
  106. package/dist-elements/tag/repeater.js +10 -10
  107. package/dist-elements/tag/segmented.js +13 -13
  108. package/dist-elements/tag/select.js +10 -10
  109. package/dist-elements/tag/shell.js +356 -339
  110. package/dist-elements/tag/skeleton.js +1 -1
  111. package/dist-elements/tag/slot-picker.js +14 -14
  112. package/dist-elements/tag/sortable-list.js +14 -14
  113. package/dist-elements/tag/spinner.js +1 -1
  114. package/dist-elements/tag/split-pane.js +12 -12
  115. package/dist-elements/tag/status-dot.js +1 -1
  116. package/dist-elements/tag/stepper.js +21 -21
  117. package/dist-elements/tag/streaming-text.js +13 -13
  118. package/dist-elements/tag/sub-nav.js +39 -38
  119. package/dist-elements/tag/tabs.js +38 -38
  120. package/dist-elements/tag/tag-input.js +19 -19
  121. package/dist-elements/tag/text-editor.js +24 -24
  122. package/dist-elements/tag/text-input.js +14 -14
  123. package/dist-elements/tag/textarea.js +14 -14
  124. package/dist-elements/tag/tile.js +1 -1
  125. package/dist-elements/tag/time-input.js +19 -19
  126. package/dist-elements/tag/toast.js +32 -23
  127. package/dist-elements/tag/toggle.js +8 -8
  128. package/dist-elements/tag/toggletip.js +27 -27
  129. package/dist-elements/tag/tooltip.js +1 -1
  130. package/dist-elements/tag/transcript.js +48 -48
  131. package/dist-elements/tag/translator.js +13 -13
  132. package/dist-elements/tag/tree-view.js +13 -13
  133. package/dist-elements/tag/user-menu.js +37 -37
  134. package/dist-elements/tag/video-player.js +21 -21
  135. package/dist-elements/tokens.css +120 -96
  136. package/dist-elements/types/bundle/feedback.d.ts +1 -0
  137. package/dist-elements/types/bundle/frame.d.ts +0 -2
  138. package/dist-elements/types/bundle/inputs.d.ts +1 -0
  139. package/dist-elements/types/bundle/overlays.d.ts +1 -1
  140. package/dist-elements/types/components/actions/copy-button/copy-button.d.ts +6 -7
  141. package/dist-elements/types/components/actions/menu-button/menu-button.d.ts +13 -15
  142. package/dist-elements/types/components/actions/qr-code/qr-code.d.ts +9 -9
  143. package/dist-elements/types/components/charts/chart/chart.d.ts +5 -4
  144. package/dist-elements/types/components/charts/kpi/kpi.d.ts +16 -8
  145. package/dist-elements/types/components/charts/kpi-row/kpi-row.d.ts +1 -7
  146. package/dist-elements/types/components/charts/note/note.d.ts +1 -1
  147. package/dist-elements/types/components/chat/chat/chat.d.ts +8 -10
  148. package/dist-elements/types/components/chat/chat-answer/chat-answer.d.ts +7 -8
  149. package/dist-elements/types/components/chat/chat-composer/chat-composer.d.ts +8 -10
  150. package/dist-elements/types/components/chat/chat-message/chat-message.d.ts +6 -7
  151. package/dist-elements/types/components/chat/chat-strip/chat-strip.d.ts +5 -5
  152. package/dist-elements/types/components/chat/chat-suggestions/chat-suggestions.d.ts +9 -10
  153. package/dist-elements/types/components/content/audio-player/audio-player.d.ts +10 -12
  154. package/dist-elements/types/components/content/code/code.d.ts +2 -3
  155. package/dist-elements/types/components/content/document-viewer/document-viewer.d.ts +8 -9
  156. package/dist-elements/types/components/content/gallery/gallery.d.ts +5 -4
  157. package/dist-elements/types/components/content/highlight/highlight.d.ts +4 -3
  158. package/dist-elements/types/components/content/prose/prose.d.ts +2 -3
  159. package/dist-elements/types/components/content/transcript/transcript.d.ts +12 -25
  160. package/dist-elements/types/components/content/translator/translator.d.ts +11 -15
  161. package/dist-elements/types/components/content/video-player/video-player.d.ts +11 -13
  162. package/dist-elements/types/components/feedback/ai-label/ai-label.d.ts +3 -4
  163. package/dist-elements/types/components/feedback/announcement/announcement.d.ts +3 -7
  164. package/dist-elements/types/components/feedback/conflict-alert/conflict-alert.d.ts +3 -4
  165. package/dist-elements/types/components/feedback/empty-state/empty-state.d.ts +5 -8
  166. package/dist-elements/types/components/feedback/error-page/error-page.d.ts +52 -0
  167. package/dist-elements/types/components/feedback/job-list/job-list.d.ts +9 -12
  168. package/dist-elements/types/components/feedback/level-meter/level-meter.d.ts +4 -6
  169. package/dist-elements/types/components/feedback/recording-status/recording-status.d.ts +5 -6
  170. package/dist-elements/types/components/feedback/streaming-text/streaming-text.d.ts +10 -7
  171. package/dist-elements/types/components/feedback/toast/toast.d.ts +8 -9
  172. package/dist-elements/types/components/filters/filter-bar/filter-bar.d.ts +9 -4
  173. package/dist-elements/types/components/filters/filter-sheet/filter-sheet.d.ts +5 -5
  174. package/dist-elements/types/components/filters/filter-zone/filter-zone.d.ts +4 -4
  175. package/dist-elements/types/components/forms/error-summary/error-summary.d.ts +5 -6
  176. package/dist-elements/types/components/forms/form/form.d.ts +5 -5
  177. package/dist-elements/types/components/forms/form-actions/form-actions.d.ts +9 -7
  178. package/dist-elements/types/components/forms/form-section/form-section.d.ts +6 -5
  179. package/dist-elements/types/components/forms/repeater/repeater.d.ts +13 -7
  180. package/dist-elements/types/components/forms/stepper/stepper.d.ts +5 -4
  181. package/dist-elements/types/components/frame/app-search/app-search.d.ts +6 -7
  182. package/dist-elements/types/components/frame/breadcrumbs/breadcrumbs.d.ts +2 -2
  183. package/dist-elements/types/components/frame/footer/footer.d.ts +3 -2
  184. package/dist-elements/types/components/frame/hero/hero.d.ts +7 -9
  185. package/dist-elements/types/components/frame/notifications/notifications.d.ts +5 -9
  186. package/dist-elements/types/components/frame/page-header/page-header.d.ts +12 -15
  187. package/dist-elements/types/components/frame/shell/shell.d.ts +14 -13
  188. package/dist-elements/types/components/frame/sub-nav/sub-nav.d.ts +10 -6
  189. package/dist-elements/types/components/frame/user-menu/user-menu.d.ts +11 -10
  190. package/dist-elements/types/components/index.d.ts +8 -9
  191. package/dist-elements/types/components/inputs/checkbox/checkbox.d.ts +4 -4
  192. package/dist-elements/types/components/inputs/checkbox-group/checkbox-group.d.ts +33 -0
  193. package/dist-elements/types/components/inputs/combobox/combobox.d.ts +12 -6
  194. package/dist-elements/types/components/inputs/date-input/date-input.d.ts +5 -5
  195. package/dist-elements/types/components/inputs/date-range/date-range.d.ts +11 -6
  196. package/dist-elements/types/components/inputs/field/field.d.ts +5 -3
  197. package/dist-elements/types/components/inputs/file-upload/file-upload.d.ts +6 -8
  198. package/dist-elements/types/components/inputs/multiselect/multiselect.d.ts +4 -6
  199. package/dist-elements/types/components/inputs/number-input/number-input.d.ts +8 -7
  200. package/dist-elements/types/components/inputs/radio-group/radio-group.d.ts +2 -4
  201. package/dist-elements/types/components/inputs/range/range.d.ts +5 -6
  202. package/dist-elements/types/components/inputs/segmented/segmented.d.ts +7 -4
  203. package/dist-elements/types/components/inputs/select/select.d.ts +6 -3
  204. package/dist-elements/types/components/inputs/slot-picker/slot-picker.d.ts +6 -5
  205. package/dist-elements/types/components/inputs/tag-input/tag-input.d.ts +7 -5
  206. package/dist-elements/types/components/inputs/text-editor/text-editor.d.ts +6 -6
  207. package/dist-elements/types/components/inputs/text-input/text-input.d.ts +11 -6
  208. package/dist-elements/types/components/inputs/textarea/textarea.d.ts +12 -11
  209. package/dist-elements/types/components/inputs/time-input/time-input.d.ts +7 -8
  210. package/dist-elements/types/components/inputs/toggle/toggle.d.ts +3 -1
  211. package/dist-elements/types/components/layout/expander/expander.d.ts +9 -10
  212. package/dist-elements/types/components/layout/split-pane/split-pane.d.ts +6 -6
  213. package/dist-elements/types/components/layout/tabs/tabs.d.ts +11 -9
  214. package/dist-elements/types/components/map/map/map.d.ts +10 -9
  215. package/dist-elements/types/components/overlays/dialog/dialog.d.ts +49 -0
  216. package/dist-elements/types/components/overlays/drawer/drawer.d.ts +6 -5
  217. package/dist-elements/types/components/overlays/modal/modal.d.ts +7 -12
  218. package/dist-elements/types/components/overlays/toggletip/toggletip.d.ts +3 -7
  219. package/dist-elements/types/components/shared/charts/index.d.ts +4 -1
  220. package/dist-elements/types/components/shared/charts/kinds.d.ts +86 -0
  221. package/dist-elements/types/components/shared/charts/line-chart/line-chart.d.ts +2 -2
  222. package/dist-elements/types/components/shared/charts/map-chart/leaflet.d.ts +5 -0
  223. package/dist-elements/types/components/shared/charts/shared/chart-states.d.ts +8 -19
  224. package/dist-elements/types/components/shared/charts/shared/controller.d.ts +7 -0
  225. package/dist-elements/types/components/shared/charts/shared/types.d.ts +29 -0
  226. package/dist-elements/types/components/shared/charts/stacked-area-chart/stacked-area-chart.d.ts +13 -0
  227. package/dist-elements/types/components/shared/dialog.d.ts +9 -0
  228. package/dist-elements/types/components/shared/overflow.d.ts +58 -0
  229. package/dist-elements/types/components/tables/activity-log/activity-log.d.ts +2 -3
  230. package/dist-elements/types/components/tables/card/card.d.ts +14 -20
  231. package/dist-elements/types/components/tables/card-list/card-list.d.ts +9 -11
  232. package/dist-elements/types/components/tables/data-table/data-table.d.ts +85 -16
  233. package/dist-elements/types/components/tables/data-table/filters.d.ts +13 -4
  234. package/dist-elements/types/components/tables/description-list/description-list.d.ts +12 -11
  235. package/dist-elements/types/components/tables/list/list.d.ts +9 -20
  236. package/dist-elements/types/components/tables/pagination/pagination.d.ts +12 -11
  237. package/dist-elements/types/components/tables/sortable-list/sortable-list.d.ts +5 -6
  238. package/dist-elements/types/components/tables/tree-view/tree-view.d.ts +4 -4
  239. package/dist-elements/types/core/media.d.ts +2 -2
  240. package/dist-elements/types/core/motion.d.ts +5 -0
  241. package/dist-elements/types/core/print.d.ts +15 -0
  242. package/dist-elements/types/core/shortcuts.d.ts +2 -2
  243. package/dist-elements/types/icons/icon/icon.d.ts +2 -3
  244. package/dist-elements/types/icons/register.d.ts +1 -1
  245. package/dist-elements/types/primitives/badge/badge.d.ts +9 -5
  246. package/dist-elements/types/primitives/button/button.d.ts +12 -9
  247. package/dist-elements/types/primitives/grid/grid.d.ts +3 -3
  248. package/dist-elements/types/primitives/grid-item/grid-item.d.ts +1 -1
  249. package/dist-elements/types/primitives/icon-button/icon-button.d.ts +7 -5
  250. package/dist-elements/types/primitives/index.d.ts +3 -1
  251. package/dist-elements/types/primitives/popover/popover.d.ts +5 -4
  252. package/dist-elements/types/primitives/progress-bar/progress-bar.d.ts +8 -6
  253. package/dist-elements/types/primitives/shared/announcement-block.d.ts +38 -0
  254. package/dist-elements/types/primitives/shared/empty-state-block.d.ts +26 -0
  255. package/dist-elements/types/primitives/shared/tone.d.ts +18 -0
  256. package/dist-elements/types/primitives/skeleton/skeleton.d.ts +1 -1
  257. package/dist-elements/types/primitives/spinner/spinner.d.ts +1 -2
  258. package/dist-elements/types/primitives/status-dot/status-dot.d.ts +4 -5
  259. package/dist-elements/types/primitives/tile/tile.d.ts +17 -5
  260. package/dist-elements/types/primitives/tooltip/tooltip.d.ts +6 -6
  261. package/dist-elements/types/types.d.ts +70 -10
  262. package/dist-icons/functioneel-kolommen.svg +1 -0
  263. package/dist-icons/functioneel-trechter.svg +1 -0
  264. package/package.json +1 -1
  265. package/dist-elements/chunks/confirm-dialog-D5EVGuil.js +0 -4
  266. package/dist-elements/chunks/download-y528pIHP.js +0 -230
  267. package/dist-elements/chunks/input-BtuNFSWk.js +0 -195
  268. package/dist-elements/tag/confirm-dialog.d.ts +0 -1
  269. package/dist-elements/tag/confirm-dialog.js +0 -118
  270. package/dist-elements/tag/session-expiry.d.ts +0 -1
  271. package/dist-elements/tag/session-expiry.js +0 -184
  272. package/dist-elements/tag/shortcuts.d.ts +0 -1
  273. package/dist-elements/tag/shortcuts.js +0 -104
  274. package/dist-elements/types/components/frame/session-expiry/session-expiry.d.ts +0 -55
  275. package/dist-elements/types/components/frame/shortcuts/shortcuts.d.ts +0 -41
  276. package/dist-elements/types/components/overlays/confirm-dialog/confirm-dialog.d.ts +0 -41
@@ -1,16 +1,16 @@
1
- import { $ as e, Bt as t, G as n, Gt as r, Ht as i, Z as a, et as o, f as s, qt as c } from "../chunks/base-Bg-IFOPG.js";
2
- import { r as l, t as u } from "../chunks/input-BtuNFSWk.js";
1
+ import { Yt as e, Zt as t, en as n, et as r, lt as i, m as a, nn as o, st as s, ut as c } from "../chunks/base-CbmWxUig.js";
2
+ import { r as l, t as u } from "../chunks/input-CRW_exv_.js";
3
3
  import { a as d, c as f, d as p, f as m, g as h, i as g, l as _, m as v, n as y, o as b, r as x, s as S, t as C, u as w } from "../chunks/date-format-mHtZyBys.js";
4
4
  //#region src/components/inputs/date-input/date-input.css?inline
5
- var T = "/* The date input: a text field with a calendar button, and the calendar in a `lintje-popover`. */\n:host {\n display: block;\n min-width: 0;\n}\n:host([hidden]) { display: none; }\n:host([stacked]) {\n width: 100%;\n --h-control: var(--h-touch);\n}\n/* Below 768 px: the touch height and the full width, as `stacked`. */\n@media (max-width: 767px) {\n :host {\n width: 100%;\n --h-control: var(--h-touch);\n }\n}\n\n/* --- */\n\n/* --- The field ----------------------------------------------------------- */\n.lintje-date-input { position: relative; display: flex; align-items: center; }\n.lintje-date-input__control {\n width: 100%; height: var(--h-control);\n padding: 0 calc(var(--h-control) - 2px + var(--space-2)) 0 14px;\n border: 1px solid var(--color-border-field);\n background: var(--color-bg-surface);\n color: var(--color-text-primary);\n font-size: 1rem;\n font-variant-numeric: tabular-nums;\n border-radius: var(--radius);\n}\n.lintje-date-input__control::placeholder { color: var(--color-text-placeholder); opacity: 1; }\n.lintje-date-input__control.is-error { border: 2px solid var(--color-error); }\n/* Disabled wins over error: after it, the whole border back to 1 px strong. */\n.lintje-date-input__control:disabled {\n border: 1px solid var(--color-border-strong);\n background: var(--color-bg-subtle);\n color: var(--color-text-disabled);\n cursor: not-allowed;\n}\n\n.lintje-date-input__toggle {\n position: absolute; top: 1px; right: 1px;\n width: calc(var(--h-control) - 2px); height: calc(var(--h-control) - 2px);\n display: flex; align-items: center; justify-content: center;\n border-left: 1px solid var(--color-border-default);\n background: transparent;\n color: var(--color-accent-text);\n transition: background var(--dur-hover) var(--ease-in-motion);\n}\n/* A transparent hit area reaches the target height, never to the left where the typing part is. */\n.lintje-date-input__toggle::after {\n content: '';\n position: absolute;\n inset: min(0px, calc((100% - var(--h-target)) / 2)) min(0px, calc(100% - var(--h-target)))\n min(0px, calc((100% - var(--h-target)) / 2)) 0;\n}\n/* The button steps in past the 2 px error border; a disabled field has 1 px again. */\n.lintje-date-input__control.is-error:not(:disabled) + .lintje-date-input__toggle {\n top: 2px; right: 2px;\n width: calc(var(--h-control) - 4px); height: calc(var(--h-control) - 4px);\n}\n.lintje-date-input__toggle:hover:not(:disabled) { background: var(--color-bg-selected); }\n.lintje-date-input__toggle:disabled { color: var(--color-text-disabled); cursor: not-allowed; }\n\n/* --- The calendar -------------------------------------------------------- */\n.lintje-date-input__calendar {\n width: calc(7 * var(--h-option) + 2 * var(--space-3)); max-width: 100%;\n padding: var(--space-3);\n color: var(--color-text-primary);\n}\n.lintje-date-input__month { display: flex; align-items: center; gap: var(--space-1); }\n.lintje-date-input__month-label { flex: 1; text-align: center; font-size: 1rem; font-weight: 700; }\n/* A transparent hit area, above and below only, reaches the target height. */\n.lintje-date-input__nav {\n position: relative;\n flex: none;\n width: var(--h-icon-button); height: var(--h-icon-button);\n display: inline-flex; align-items: center; justify-content: center;\n border: 1px solid transparent;\n background: transparent;\n color: var(--color-text-primary);\n transition: background var(--dur-hover) var(--ease-in-motion);\n}\n.lintje-date-input__nav:hover { background: var(--color-bg-subtle); }\n.lintje-date-input__nav::after {\n content: '';\n position: absolute;\n inset: min(0px, calc((100% - var(--h-target)) / 2)) 0;\n}\n\n.lintje-date-input__grid {\n display: grid; grid-template-columns: repeat(7, minmax(0, 1fr));\n margin-top: var(--space-2);\n}\n/* A row is there for the grid's ARIA only. */\n.lintje-date-input__row { display: contents; }\n.lintje-date-input__weekday {\n padding: var(--space-1) 0;\n text-align: center;\n font-size: var(--label-size); font-weight: var(--label-weight);\n letter-spacing: var(--label-tracking); text-transform: uppercase;\n color: var(--color-text-muted);\n}\n.lintje-date-input__day {\n height: var(--h-option);\n display: flex; align-items: center; justify-content: center;\n background: transparent;\n color: var(--color-text-primary);\n font-size: 0.875rem;\n font-variant-numeric: tabular-nums;\n transition: background var(--dur-hover) var(--ease-in-motion);\n}\n.lintje-date-input__day:hover { background: var(--color-bg-subtle); }\n.lintje-date-input__day.is-today { box-shadow: inset 0 0 0 1px var(--color-accent-line); }\n/* The border is an inset ring, so the cell keeps its size. */\n.lintje-date-input__day.is-selected {\n background: var(--color-action-primary);\n color: var(--color-action-primary-text);\n box-shadow: inset 0 0 0 1px var(--color-action-primary-border);\n font-weight: 700;\n}\n.lintje-date-input__day.is-selected.is-today {\n box-shadow: inset 0 0 0 1px var(--color-action-primary-border),\n inset 0 0 0 2px var(--color-accent-line);\n}\n/* Outside `min`/`max`: arrow keys still pass over it. */\n.lintje-date-input__day.is-blocked {\n background: transparent;\n color: var(--color-text-disabled);\n cursor: not-allowed;\n}\n\n@media (max-width: 767px) {\n /* The popover's edge margin, less its 1 px border on either side. */\n .lintje-date-input__calendar { width: calc(100vw - var(--space-4) - 2px); }\n}\n\n/* Forced colours drop rings and fills: they become borders inside the cell. */\n@media (forced-colors: active) {\n .lintje-date-input__day.is-today { border: 1px solid CanvasText; }\n .lintje-date-input__day.is-selected { border: 1px solid Highlight; }\n .lintje-date-input__day.is-selected.is-today:not(:focus-visible) {\n outline: 1px solid CanvasText;\n outline-offset: -2px;\n }\n .lintje-date-input__day.is-blocked { color: GrayText; }\n}\n", E = class extends l {
5
+ var T = "/* The date input: a text field with a calendar button, and the calendar in a `lintje-popover`. */\n:host {\n display: block;\n min-width: 0;\n}\n:host([hidden]) { display: none; }\n:host([stacked]) {\n width: 100%;\n --h-control: var(--h-touch);\n}\n/* Below 768 px: the touch height and the full width, as `stacked`. */\n@media screen and (max-width: 767px) {\n :host {\n width: 100%;\n --h-control: var(--h-touch);\n }\n}\n\n/* --- */\n\n/* --- The field ----------------------------------------------------------- */\n.lintje-date-input { position: relative; display: flex; align-items: center; }\n.lintje-date-input__control {\n width: 100%; height: var(--h-control);\n padding: 0 calc(var(--h-control) - 2px + var(--space-2)) 0 14px;\n border: 1px solid var(--color-border-field);\n background: var(--color-bg-surface);\n color: var(--color-text-primary);\n font-size: 1rem;\n font-variant-numeric: tabular-nums;\n border-radius: var(--radius);\n}\n.lintje-date-input__control::placeholder { color: var(--color-text-placeholder); opacity: 1; }\n.lintje-date-input__control.is-error { border: 2px solid var(--color-error); }\n/* Disabled wins over error: after it, the whole border back to 1 px strong. */\n.lintje-date-input__control:disabled {\n border: 1px solid var(--color-border-strong);\n background: var(--color-bg-subtle);\n color: var(--color-text-disabled);\n cursor: not-allowed;\n}\n\n.lintje-date-input__toggle {\n position: absolute; top: 1px; right: 1px;\n width: calc(var(--h-control) - 2px); height: calc(var(--h-control) - 2px);\n display: flex; align-items: center; justify-content: center;\n border-left: 1px solid var(--color-border-default);\n background: transparent;\n color: var(--color-accent-text);\n transition: background var(--dur-hover) var(--ease-in-motion);\n}\n/* A transparent hit area reaches the target height, never to the left where the typing part is. */\n.lintje-date-input__toggle::after {\n content: '';\n position: absolute;\n inset: min(0px, calc((100% - var(--h-target)) / 2)) min(0px, calc(100% - var(--h-target)))\n min(0px, calc((100% - var(--h-target)) / 2)) 0;\n}\n/* The button steps in past the 2 px error border; a disabled field has 1 px again. */\n.lintje-date-input__control.is-error:not(:disabled) + .lintje-date-input__toggle {\n top: 2px; right: 2px;\n width: calc(var(--h-control) - 4px); height: calc(var(--h-control) - 4px);\n}\n.lintje-date-input__toggle:hover:not(:disabled) { background: var(--color-bg-selected); }\n.lintje-date-input__toggle:disabled { color: var(--color-text-disabled); cursor: not-allowed; }\n\n/* --- The calendar -------------------------------------------------------- */\n.lintje-date-input__calendar {\n width: calc(7 * var(--h-option) + 2 * var(--space-3)); max-width: 100%;\n padding: var(--space-3);\n color: var(--color-text-primary);\n}\n.lintje-date-input__month { display: flex; align-items: center; gap: var(--space-1); }\n.lintje-date-input__month-label { flex: 1; text-align: center; font-size: 1rem; font-weight: 700; }\n/* A transparent hit area, above and below only, reaches the target height. */\n.lintje-date-input__nav {\n position: relative;\n flex: none;\n width: var(--h-icon-button); height: var(--h-icon-button);\n display: inline-flex; align-items: center; justify-content: center;\n border: 1px solid transparent;\n background: transparent;\n color: var(--color-text-primary);\n transition: background var(--dur-hover) var(--ease-in-motion);\n}\n.lintje-date-input__nav:hover { background: var(--color-bg-subtle); }\n.lintje-date-input__nav::after {\n content: '';\n position: absolute;\n inset: min(0px, calc((100% - var(--h-target)) / 2)) 0;\n}\n\n.lintje-date-input__grid {\n display: grid; grid-template-columns: repeat(7, minmax(0, 1fr));\n margin-top: var(--space-2);\n}\n/* A row is there for the grid's ARIA only. */\n.lintje-date-input__row { display: contents; }\n.lintje-date-input__weekday {\n padding: var(--space-1) 0;\n text-align: center;\n font-size: var(--label-size); font-weight: var(--label-weight);\n letter-spacing: var(--label-tracking); text-transform: uppercase;\n color: var(--color-text-muted);\n}\n.lintje-date-input__day {\n height: var(--h-option);\n display: flex; align-items: center; justify-content: center;\n background: transparent;\n color: var(--color-text-primary);\n font-size: 0.875rem;\n font-variant-numeric: tabular-nums;\n transition: background var(--dur-hover) var(--ease-in-motion);\n}\n.lintje-date-input__day:hover { background: var(--color-bg-subtle); }\n.lintje-date-input__day.is-today { box-shadow: inset 0 0 0 1px var(--color-accent-line); }\n/* The border is an inset ring, so the cell keeps its size. */\n.lintje-date-input__day.is-selected {\n background: var(--color-action-primary);\n color: var(--color-action-primary-text);\n box-shadow: inset 0 0 0 1px var(--color-action-primary-border);\n font-weight: 700;\n}\n.lintje-date-input__day.is-selected.is-today {\n box-shadow: inset 0 0 0 1px var(--color-action-primary-border),\n inset 0 0 0 2px var(--color-accent-line);\n}\n/* Outside `min`/`max`: arrow keys still pass over it. */\n.lintje-date-input__day.is-blocked {\n background: transparent;\n color: var(--color-text-disabled);\n cursor: not-allowed;\n}\n\n@media screen and (max-width: 767px) {\n /* The popover's edge margin, less its 1 px border on either side. */\n .lintje-date-input__calendar { width: calc(100vw - var(--space-4) - 2px); }\n}\n\n/* Forced colours drop rings and fills: they become borders inside the cell. */\n@media (forced-colors: active) {\n .lintje-date-input__day.is-today { border: 1px solid CanvasText; }\n .lintje-date-input__day.is-selected { border: 1px solid Highlight; }\n .lintje-date-input__day.is-selected.is-today:not(:focus-visible) {\n outline: 1px solid CanvasText;\n outline-offset: -2px;\n }\n .lintje-date-input__day.is-blocked { color: GrayText; }\n}\n", E = class extends l {
6
6
  constructor(...e) {
7
7
  super(...e), this.value = null, this.placeholder = "", this.stacked = !1, this.open = !1, this.hint = "dd-mm-jjjj", this.text = "", this.problem = "", this.focusDay = "";
8
8
  }
9
9
  static {
10
10
  this.styles = [
11
- e,
12
- i(u),
13
- i(T)
11
+ i,
12
+ t(u),
13
+ t(T)
14
14
  ];
15
15
  }
16
16
  static {
@@ -88,7 +88,7 @@ var T = "/* The date input: a text field with a calendar button, and the calenda
88
88
  }
89
89
  onFocusOut(e) {
90
90
  let t = e.relatedTarget;
91
- this.open && t && !this.renderRoot.contains(t) && !n(this, t) && (this.open = !1);
91
+ this.open && t && !this.renderRoot.contains(t) && !r(this, t) && (this.open = !1);
92
92
  }
93
93
  pick(e) {
94
94
  this.outOfBounds(e) || (this.choose(e), this.open = !1, this.renderRoot.querySelector(".lintje-date-input__control")?.focus());
@@ -101,8 +101,8 @@ var T = "/* The date input: a text field with a calendar button, and the calenda
101
101
  this.focusDay = g(this.focusDay, e);
102
102
  }
103
103
  renderCalendar() {
104
- let e = this.focusDay || this.todayDay, t = v(e).slice(0, 7), n = this.todayDay;
105
- return c`<div class="lintje-date-input__calendar">
104
+ let e = this.focusDay || this.todayDay, t = v(e).slice(0, 7), r = this.todayDay;
105
+ return o`<div class="lintje-date-input__calendar">
106
106
  <div class="lintje-date-input__month">
107
107
  <button
108
108
  type="button"
@@ -110,7 +110,7 @@ var T = "/* The date input: a text field with a calendar button, and the calenda
110
110
  aria-label="Vorige maand"
111
111
  @click=${() => this.shiftMonth(-1)}
112
112
  >
113
- ${o("functioneel-delta-rechts", {
113
+ ${c("functioneel-delta-rechts", {
114
114
  size: 16,
115
115
  flip: "horizontal"
116
116
  })}
@@ -124,7 +124,7 @@ var T = "/* The date input: a text field with a calendar button, and the calenda
124
124
  aria-label="Volgende maand"
125
125
  @click=${() => this.shiftMonth(1)}
126
126
  >
127
- ${o("functioneel-delta-rechts", { size: 16 })}
127
+ ${c("functioneel-delta-rechts", { size: 16 })}
128
128
  </button>
129
129
  </div>
130
130
  <div
@@ -134,26 +134,26 @@ var T = "/* The date input: a text field with a calendar button, and the calenda
134
134
  @keydown=${this.onGridKeydown}
135
135
  >
136
136
  <div class="lintje-date-input__row" role="row">
137
- ${y.map((e) => c`<span class="lintje-date-input__weekday" role="columnheader">${e}</span>`)}
137
+ ${y.map((e) => o`<span class="lintje-date-input__weekday" role="columnheader">${e}</span>`)}
138
138
  </div>
139
- ${w(e).map((i) => c`<div class="lintje-date-input__row" role="row">
139
+ ${w(e).map((i) => o`<div class="lintje-date-input__row" role="row">
140
140
  ${i.map((i) => {
141
- if (!i.startsWith(t)) return c`<span class="lintje-date-input__blank" role="gridcell"></span>`;
142
- let o = !!this.outOfBounds(i);
143
- return c`<button
141
+ if (!i.startsWith(t)) return o`<span class="lintje-date-input__blank" role="gridcell"></span>`;
142
+ let a = !!this.outOfBounds(i);
143
+ return o`<button
144
144
  type="button"
145
145
  role="gridcell"
146
- class=${a({
146
+ class=${s({
147
147
  "lintje-date-input__day": !0,
148
- "is-blocked": o,
149
- "is-today": i === n,
148
+ "is-blocked": a,
149
+ "is-today": i === r,
150
150
  "is-selected": i === this.value
151
151
  })}
152
152
  tabindex=${i === e ? "0" : "-1"}
153
153
  aria-label=${b(i)}
154
154
  aria-selected=${i === this.value ? "true" : "false"}
155
- aria-current=${i === n ? "date" : r}
156
- aria-disabled=${o ? "true" : r}
155
+ aria-current=${i === r ? "date" : n}
156
+ aria-disabled=${a ? "true" : n}
157
157
  @click=${() => this.pick(i)}
158
158
  >
159
159
  ${Number(i.slice(8))}
@@ -165,7 +165,7 @@ var T = "/* The date input: a text field with a calendar button, and the calenda
165
165
  }
166
166
  render() {
167
167
  let e = this.message;
168
- return c`<div class="lintje-field" @focusout=${this.onFocusOut}>
168
+ return o`<div class="lintje-field" @focusout=${this.onFocusOut}>
169
169
  ${this.renderLabel(this.controlId)}
170
170
  <div class="lintje-date-input">
171
171
  <input
@@ -173,16 +173,16 @@ var T = "/* The date input: a text field with a calendar button, and the calenda
173
173
  id=${this.controlId}
174
174
  inputmode="numeric"
175
175
  autocomplete="off"
176
- class=${a({
176
+ class=${s({
177
177
  "lintje-date-input__control": !0,
178
178
  "is-error": !!e
179
179
  })}
180
- .value=${s(this.text)}
181
- placeholder=${this.placeholder || r}
180
+ .value=${a(this.text)}
181
+ placeholder=${this.placeholder || n}
182
182
  aria-labelledby=${this.labelId}
183
183
  aria-describedby=${this.describedBy}
184
- aria-invalid=${e ? "true" : r}
185
- aria-required=${this.required ? "true" : r}
184
+ aria-invalid=${e ? "true" : n}
185
+ aria-required=${this.required ? "true" : n}
186
186
  ?disabled=${this.disabled}
187
187
  @change=${this.onChange}
188
188
  @keydown=${this.onFieldKeydown}
@@ -196,7 +196,7 @@ var T = "/* The date input: a text field with a calendar button, and the calenda
196
196
  ?disabled=${this.disabled}
197
197
  @click=${this.toggle}
198
198
  >
199
- ${o("functioneel-kalender", { size: 18 })}
199
+ ${c("functioneel-kalender", { size: 18 })}
200
200
  </button>
201
201
  </div>
202
202
  <lintje-popover
@@ -205,12 +205,12 @@ var T = "/* The date input: a text field with a calendar button, and the calenda
205
205
  label="Kalender"
206
206
  @lintje-close=${this.onPopoverClose}
207
207
  >
208
- ${this.open ? this.renderCalendar() : r}
208
+ ${this.open ? this.renderCalendar() : n}
209
209
  </lintje-popover>
210
210
  ${this.renderFoot()}
211
211
  </div>`;
212
212
  }
213
213
  };
214
- t("lintje-date-input", E);
214
+ e("lintje-date-input", E);
215
215
  //#endregion
216
216
  export { E as LintjeDateInput };
@@ -1,9 +1,9 @@
1
- import { $ as e, Bt as t, G as n, Gt as r, Ht as i, U as a, W as o, Z as s, et as c, qt as l } from "../chunks/base-Bg-IFOPG.js";
2
- import "../chunks/focus-trap-9BnE-xWv.js";
3
- import { r as u, t as d } from "../chunks/input-BtuNFSWk.js";
1
+ import { $ as e, Q as t, Yt as n, Zt as r, en as i, et as a, lt as o, nn as s, st as c, ut as l } from "../chunks/base-CbmWxUig.js";
2
+ import "../chunks/focus-trap-BwOxE5BX.js";
3
+ import { r as u, t as d } from "../chunks/input-CRW_exv_.js";
4
4
  import { g as f, h as p, i as m, l as h, m as g, o as _, r as v, t as y } from "../chunks/date-format-mHtZyBys.js";
5
5
  //#region src/components/inputs/date-range/date-range.css?inline
6
- var b = "/* The date range picker. The popover is positioned against the host (`position: relative`). */\n:host {\n display: block;\n position: relative;\n}\n\n/* --- */\n\n.lintje-date-range-picker { position: relative; display: flex; flex-direction: column; gap: 6px; }\n.lintje-date-range-picker__field {\n display: flex; align-items: center; justify-content: space-between; gap: 10px;\n min-width: 210px; height: var(--h-control);\n padding: 0 12px 0 14px;\n border: 1px solid var(--color-border-field);\n background: var(--color-bg-surface);\n color: var(--color-text-placeholder);\n font-size: 1rem;\n}\n.lintje-date-range-picker__field.is-filled { color: var(--color-text-primary); font-weight: 700; }\n.lintje-date-range-picker__field.is-error { border: 2px solid var(--color-error); }\n.lintje-date-range-picker__field:disabled {\n border: 1px solid var(--color-border-strong);\n background: var(--color-bg-subtle);\n color: var(--color-text-disabled);\n cursor: not-allowed;\n}\n.lintje-date-range-picker__icon { color: var(--color-text-primary); }\n\n.lintje-date-range-picker__popover {\n position: absolute; top: calc(100% + 4px); left: 0; z-index: 50;\n /* Seven cells, six 1 px gaps, the grid's padding and the border. */\n width: calc(7 * var(--h-option) + 6px + 2 * var(--space-2) + 2px);\n background: var(--color-bg-surface);\n border: 1px solid var(--color-border-popover);\n box-shadow: var(--shadow-popover);\n animation: lintje-popover-in var(--dur-popover) var(--ease-in-motion);\n}\n.lintje-date-range-picker__month {\n display: flex; align-items: center; justify-content: space-between;\n padding: var(--space-2) var(--space-3);\n border-bottom: 1px solid var(--color-border-default);\n font-size: 1rem; font-weight: 700;\n}\n/* A transparent hit area reaches the target height. */\n.lintje-date-range-picker__nav {\n position: relative;\n width: var(--h-icon-button); height: var(--h-icon-button);\n display: flex; align-items: center; justify-content: center;\n color: var(--color-text-primary);\n}\n.lintje-date-range-picker__nav:hover { background: var(--color-bg-subtle); }\n.lintje-date-range-picker__nav::after {\n content: '';\n position: absolute;\n inset: min(0px, calc((100% - var(--h-target)) / 2));\n}\n\n.lintje-date-range-picker__grid {\n display: grid; grid-template-columns: repeat(7, var(--h-option));\n gap: 1px; padding: var(--space-2);\n}\n/* A row is there for the grid's ARIA only. */\n.lintje-date-range-picker__row { display: contents; }\n.lintje-date-range-picker__weekday {\n text-align: center; font-size: 0.875rem; font-weight: 700;\n color: var(--color-text-muted); padding-bottom: 4px;\n}\n.lintje-date-range-picker__day {\n height: var(--h-option);\n display: flex; align-items: center; justify-content: center;\n font-size: 0.875rem; color: var(--color-text-primary);\n font-variant-numeric: tabular-nums;\n}\n.lintje-date-range-picker__day:hover:not(.is-blocked) { background: var(--color-bg-subtle); }\n.lintje-date-range-picker__day.is-outside { color: var(--color-text-disabled); }\n/* After `maxDate`: `aria-disabled`, so the arrow keys still pass over it. */\n.lintje-date-range-picker__day.is-blocked { color: var(--color-text-disabled); cursor: not-allowed; }\n.lintje-date-range-picker__day.is-today { box-shadow: inset 0 0 0 1px var(--color-info); font-weight: 700; }\n.lintje-date-range-picker__day.is-in-range { background: var(--color-bg-selected); }\n/* An inset ring like `.is-today`: the cell keeps its size and an edge on a dark surface. */\n.lintje-date-range-picker__day.is-endpoint {\n background: var(--color-action-primary); color: var(--color-action-primary-text); font-weight: 700;\n box-shadow: inset 0 0 0 1px var(--color-action-primary-border);\n}\n/* Today and an endpoint: both rings, so the \"today\" marker survives. */\n.lintje-date-range-picker__day.is-endpoint.is-today {\n box-shadow: inset 0 0 0 1px var(--color-action-primary-border), inset 0 0 0 2px var(--color-info);\n}\n\n.lintje-date-range-picker__presets {\n /* The row gap keeps the hit areas below from overlapping. */\n display: flex; flex-wrap: wrap; gap: var(--space-4) var(--space-2);\n padding: var(--space-2) var(--space-3);\n border-top: 1px solid var(--color-border-default);\n}\n.lintje-date-range-picker__preset {\n position: relative;\n height: var(--h-chip);\n padding: 0 8px;\n border: 1px solid var(--color-border-default);\n background: var(--color-bg-subtle);\n font-size: 0.875rem; color: var(--color-text-primary);\n}\n/* A transparent hit area, above and below only, reaches the target height. */\n.lintje-date-range-picker__preset::after {\n content: '';\n position: absolute;\n inset: min(0px, calc((100% - var(--h-target)) / 2)) 0;\n}\n/* The accent line, not the fill colour: in dark the primary on #333333 is 1.2:1. */\n.lintje-date-range-picker__preset:hover { border-color: var(--color-accent-line); }\n\n.lintje-date-range-picker__footer {\n display: flex; flex-direction: column; gap: var(--space-2);\n padding: var(--space-3);\n border-top: 1px solid var(--color-border-default);\n font: var(--text-small); color: var(--color-text-muted);\n}\n.lintje-date-range-picker__actions { display: flex; gap: var(--space-2); justify-content: flex-end; }\n\n/* --- Stacked in the filter sheet ----------------------------------------- */\n:host([stacked]) {\n width: 100%;\n}\n\n/* Below 768 px the 48 px cells would run off a narrow phone: the popover keeps the page's gutter\n on either side and the cells share what is left. */\n@media (max-width: 767px) {\n .lintje-date-range-picker__popover { max-width: calc(100vw - 2 * var(--space-4)); }\n .lintje-date-range-picker__grid { grid-template-columns: repeat(7, minmax(0, 1fr)); }\n}\n\n/* Forced colours drop rings and fills: they become borders inside the cell. */\n@media (forced-colors: active) {\n .lintje-date-range-picker__day.is-in-range { border-block: 1px solid CanvasText; }\n .lintje-date-range-picker__day.is-today { border: 1px solid CanvasText; }\n .lintje-date-range-picker__day.is-endpoint { border: 1px solid Highlight; }\n .lintje-date-range-picker__day.is-endpoint.is-today:not(:focus-visible) {\n outline: 1px solid CanvasText;\n outline-offset: -2px;\n }\n}\n", x = [
6
+ var b = "/* The date range picker. The popover is positioned against the host (`position: relative`). */\n:host {\n display: block;\n position: relative;\n}\n\n/* --- */\n\n.lintje-date-range-picker { position: relative; display: flex; flex-direction: column; gap: 6px; }\n.lintje-date-range-picker__field {\n display: flex; align-items: center; justify-content: space-between; gap: 10px;\n min-width: 210px; height: var(--h-control);\n padding: 0 12px 0 14px;\n border: 1px solid var(--color-border-field);\n background: var(--color-bg-surface);\n color: var(--color-text-placeholder);\n font-size: 1rem;\n}\n.lintje-date-range-picker__field.is-filled { color: var(--color-text-primary); font-weight: 700; }\n.lintje-date-range-picker__field.is-error { border: 2px solid var(--color-error); }\n.lintje-date-range-picker__field:disabled {\n border: 1px solid var(--color-border-strong);\n background: var(--color-bg-subtle);\n color: var(--color-text-disabled);\n cursor: not-allowed;\n}\n.lintje-date-range-picker__icon { color: var(--color-text-primary); }\n\n.lintje-date-range-picker__popover {\n position: absolute; top: calc(100% + 4px); left: 0; z-index: 50;\n /* Seven cells, six 1 px gaps, the grid's padding and the border. */\n width: calc(7 * var(--h-option) + 6px + 2 * var(--space-2) + 2px);\n background: var(--color-bg-surface);\n border: 1px solid var(--color-border-popover);\n box-shadow: var(--shadow-popover);\n animation: lintje-popover-in var(--dur-popover) var(--ease-in-motion);\n}\n.lintje-date-range-picker__month {\n display: flex; align-items: center; justify-content: space-between;\n padding: var(--space-2) var(--space-3);\n border-bottom: 1px solid var(--color-border-default);\n font-size: 1rem; font-weight: 700;\n}\n/* A transparent hit area reaches the target height. */\n.lintje-date-range-picker__nav {\n position: relative;\n width: var(--h-icon-button); height: var(--h-icon-button);\n display: flex; align-items: center; justify-content: center;\n color: var(--color-text-primary);\n}\n.lintje-date-range-picker__nav:hover { background: var(--color-bg-subtle); }\n.lintje-date-range-picker__nav::after {\n content: '';\n position: absolute;\n inset: min(0px, calc((100% - var(--h-target)) / 2));\n}\n\n.lintje-date-range-picker__grid {\n display: grid; grid-template-columns: repeat(7, var(--h-option));\n gap: 1px; padding: var(--space-2);\n}\n/* A row is there for the grid's ARIA only. */\n.lintje-date-range-picker__row { display: contents; }\n.lintje-date-range-picker__weekday {\n text-align: center; font-size: 0.875rem; font-weight: 700;\n color: var(--color-text-muted); padding-bottom: 4px;\n}\n.lintje-date-range-picker__day {\n height: var(--h-option);\n display: flex; align-items: center; justify-content: center;\n font-size: 0.875rem; color: var(--color-text-primary);\n font-variant-numeric: tabular-nums;\n}\n.lintje-date-range-picker__day:hover:not(.is-blocked) { background: var(--color-bg-subtle); }\n.lintje-date-range-picker__day.is-outside { color: var(--color-text-disabled); }\n/* After `maxDate`: `aria-disabled`, so the arrow keys still pass over it. */\n.lintje-date-range-picker__day.is-blocked { color: var(--color-text-disabled); cursor: not-allowed; }\n.lintje-date-range-picker__day.is-today { box-shadow: inset 0 0 0 1px var(--color-info); font-weight: 700; }\n.lintje-date-range-picker__day.is-in-range { background: var(--color-bg-selected); }\n/* An inset ring like `.is-today`: the cell keeps its size and an edge on a dark surface. */\n.lintje-date-range-picker__day.is-endpoint {\n background: var(--color-action-primary); color: var(--color-action-primary-text); font-weight: 700;\n box-shadow: inset 0 0 0 1px var(--color-action-primary-border);\n}\n/* Today and an endpoint: both rings, so the \"today\" marker survives. */\n.lintje-date-range-picker__day.is-endpoint.is-today {\n box-shadow: inset 0 0 0 1px var(--color-action-primary-border), inset 0 0 0 2px var(--color-info);\n}\n\n.lintje-date-range-picker__presets {\n /* The row gap keeps the hit areas below from overlapping. */\n display: flex; flex-wrap: wrap; gap: var(--space-4) var(--space-2);\n padding: var(--space-2) var(--space-3);\n border-top: 1px solid var(--color-border-default);\n}\n.lintje-date-range-picker__preset {\n position: relative;\n height: var(--h-chip);\n padding: 0 8px;\n border: 1px solid var(--color-border-default);\n background: var(--color-bg-subtle);\n font-size: 0.875rem; color: var(--color-text-primary);\n}\n/* A transparent hit area, above and below only, reaches the target height. */\n.lintje-date-range-picker__preset::after {\n content: '';\n position: absolute;\n inset: min(0px, calc((100% - var(--h-target)) / 2)) 0;\n}\n/* The accent line, not the fill colour: in dark the primary on #333333 is 1.2:1. */\n.lintje-date-range-picker__preset:hover { border-color: var(--color-accent-line); }\n\n.lintje-date-range-picker__footer {\n display: flex; flex-direction: column; gap: var(--space-2);\n padding: var(--space-3);\n border-top: 1px solid var(--color-border-default);\n font: var(--text-small); color: var(--color-text-muted);\n}\n.lintje-date-range-picker__actions { display: flex; gap: var(--space-2); justify-content: flex-end; }\n\n/* --- Stacked in the filter sheet ----------------------------------------- */\n:host([stacked]) {\n width: 100%;\n}\n\n/* Below 768 px the 48 px cells would run off a narrow phone: the popover keeps the page's gutter\n on either side and the cells share what is left. */\n@media screen and (max-width: 767px) {\n .lintje-date-range-picker__popover { max-width: calc(100vw - 2 * var(--space-4)); }\n .lintje-date-range-picker__grid { grid-template-columns: repeat(7, minmax(0, 1fr)); }\n}\n\n/* Forced colours drop rings and fills: they become borders inside the cell. */\n@media (forced-colors: active) {\n .lintje-date-range-picker__day.is-in-range { border-block: 1px solid CanvasText; }\n .lintje-date-range-picker__day.is-today { border: 1px solid CanvasText; }\n .lintje-date-range-picker__day.is-endpoint { border: 1px solid Highlight; }\n .lintje-date-range-picker__day.is-endpoint.is-today:not(:focus-visible) {\n outline: 1px solid CanvasText;\n outline-offset: -2px;\n }\n}\n", x = [
7
7
  "ma",
8
8
  "di",
9
9
  "wo",
@@ -55,8 +55,8 @@ function A(e, t, n) {
55
55
  return e && t ? ", begin- en einddatum" : e ? ", begindatum" : t ? ", einddatum" : n ? ", in periode" : "";
56
56
  }
57
57
  var j = class extends u {
58
- constructor(...e) {
59
- super(...e), this.accessibleName = "", this.stacked = !1, this.open = !1, this.range = {
58
+ constructor(...t) {
59
+ super(...t), this.accessibleName = "", this.stacked = !1, this.open = !1, this.range = {
60
60
  from: null,
61
61
  to: null
62
62
  }, this.draft = {
@@ -64,15 +64,15 @@ var j = class extends u {
64
64
  to: null
65
65
  }, this.focusDay = "", this.onOutsideClick = (e) => {
66
66
  this.open && (e.composedPath().includes(this) || (this.open = !1));
67
- }, this.onEscape = (e) => {
68
- this.open && e.key === "Escape" && o(this) && (e.stopPropagation(), this.close());
67
+ }, this.onEscape = (t) => {
68
+ this.open && t.key === "Escape" && e(this) && (t.stopPropagation(), this.close());
69
69
  };
70
70
  }
71
71
  static {
72
72
  this.styles = [
73
- e,
74
- i(b),
75
- i(d)
73
+ o,
74
+ r(b),
75
+ r(d)
76
76
  ];
77
77
  }
78
78
  static {
@@ -104,12 +104,12 @@ var j = class extends u {
104
104
  };
105
105
  }
106
106
  async close() {
107
- let e = this.renderRoot.querySelector(".lintje-date-range-picker__popover"), t = e !== null && a(e);
108
- this.open = !1, await this.updateComplete, t && this.renderRoot.querySelector(".lintje-date-range-picker__field")?.focus();
107
+ let e = this.renderRoot.querySelector(".lintje-date-range-picker__popover"), n = e !== null && t(e);
108
+ this.open = !1, await this.updateComplete, n && this.renderRoot.querySelector(".lintje-date-range-picker__field")?.focus();
109
109
  }
110
110
  onFocusOut(e) {
111
111
  let t = e.relatedTarget;
112
- this.open && t && !this.renderRoot.contains(t) && !n(this, t) && (this.open = !1);
112
+ this.open && t && !this.renderRoot.contains(t) && !a(this, t) && (this.open = !1);
113
113
  }
114
114
  connectedCallback() {
115
115
  super.connectedCallback(), document.addEventListener("mousedown", this.onOutsideClick), document.addEventListener("keydown", this.onEscape, !0);
@@ -163,17 +163,17 @@ var j = class extends u {
163
163
  }), this.close();
164
164
  }
165
165
  render() {
166
- let e = f(this.day), t = this.month ?? O(this.range.from) ?? this.day, n = f(t).slice(0, 7), i = D(this.draft.from), a = D(this.draft.to), o = this.maxDate ? f(this.maxDate) : null, u = p(`${n}-01`), d = Array.from({ length: 42 }, (e, t) => v(u, t)), m = Array.from({ length: 6 }, (e, t) => d.slice(t * 7, t * 7 + 7)), g = [
166
+ let e = f(this.day), t = this.month ?? O(this.range.from) ?? this.day, n = f(t).slice(0, 7), r = D(this.draft.from), a = D(this.draft.to), o = this.maxDate ? f(this.maxDate) : null, u = p(`${n}-01`), d = Array.from({ length: 42 }, (e, t) => v(u, t)), m = Array.from({ length: 6 }, (e, t) => d.slice(t * 7, t * 7 + 7)), g = [
167
167
  this.focusDay,
168
- i,
168
+ r,
169
169
  e
170
170
  ].find((e) => e && d.includes(e)) ?? `${n}-01`, y = this.accessibleName || this.labelText, b = !!(this.range.from && this.range.to), S = b ? `${this.range.from} – ${this.range.to}` : "dd-mm-jjjj – dd-mm-jjjj", C = O(this.draft.from), T = O(this.draft.to), E = C && T ? Math.round((T.getTime() - C.getTime()) / 864e5) + 1 : 0, k = E > 0 || b && !this.draft.from && !this.draft.to;
171
- return l`<div class="lintje-date-range-picker" @focusout=${this.onFocusOut}>
172
- ${this.label ? this.renderLabel() : r}
171
+ return s`<div class="lintje-date-range-picker" @focusout=${this.onFocusOut}>
172
+ ${this.label ? this.renderLabel() : i}
173
173
  <button
174
174
  type="button"
175
- aria-label=${y ? `${y}, ${b ? S : "geen periode gekozen"}` : r}
176
- class=${s({
175
+ aria-label=${y ? `${y}, ${b ? S : "geen periode gekozen"}` : i}
176
+ class=${c({
177
177
  "lintje-date-range-picker__field": !0,
178
178
  "is-filled": !!this.range.from,
179
179
  "is-error": !!this.error
@@ -181,18 +181,18 @@ var j = class extends u {
181
181
  aria-expanded=${this.open}
182
182
  aria-haspopup="dialog"
183
183
  aria-describedby=${this.describedBy}
184
- aria-invalid=${this.error ? "true" : r}
184
+ aria-invalid=${this.error ? "true" : i}
185
185
  ?disabled=${this.disabled}
186
186
  @click=${this.toggle}
187
187
  >
188
188
  <span>${S}</span>
189
- ${c("functioneel-kalender", {
189
+ ${l("functioneel-kalender", {
190
190
  size: 16,
191
191
  className: "lintje-date-range-picker__icon"
192
192
  })}
193
193
  </button>
194
194
 
195
- ${this.open ? l`<div
195
+ ${this.open ? s`<div
196
196
  class="lintje-date-range-picker__popover"
197
197
  role="dialog"
198
198
  aria-label=${y || "Periode"}
@@ -204,7 +204,7 @@ var j = class extends u {
204
204
  aria-label="Vorige maand"
205
205
  @click=${() => this.shiftMonth(t, -1, g)}
206
206
  >
207
- ${c("functioneel-delta-rechts", {
207
+ ${l("functioneel-delta-rechts", {
208
208
  size: 16,
209
209
  flip: "horizontal"
210
210
  })}
@@ -216,7 +216,7 @@ var j = class extends u {
216
216
  aria-label="Volgende maand"
217
217
  @click=${() => this.shiftMonth(t, 1, g)}
218
218
  >
219
- ${c("functioneel-delta-rechts", { size: 16 })}
219
+ ${l("functioneel-delta-rechts", { size: 16 })}
220
220
  </button>
221
221
  </div>
222
222
 
@@ -227,30 +227,30 @@ var j = class extends u {
227
227
  @keydown=${(e) => this.onGridKeydown(e, g, d)}
228
228
  >
229
229
  <div class="lintje-date-range-picker__row" role="row">
230
- ${x.map((e) => l`<span class="lintje-date-range-picker__weekday" role="columnheader"
230
+ ${x.map((e) => s`<span class="lintje-date-range-picker__weekday" role="columnheader"
231
231
  >${e}</span
232
232
  >`)}
233
233
  </div>
234
- ${m.map((t) => l`<div class="lintje-date-range-picker__row" role="row">
234
+ ${m.map((t) => s`<div class="lintje-date-range-picker__row" role="row">
235
235
  ${t.map((t) => {
236
- let c = o !== null && t > o, u = t === i, d = t === a, f = i !== null && a !== null && t > i && t < a;
237
- return l`<button
236
+ let l = o !== null && t > o, u = t === r, d = t === a, f = r !== null && a !== null && t > r && t < a;
237
+ return s`<button
238
238
  type="button"
239
239
  role="gridcell"
240
240
  tabindex=${t === g ? "0" : "-1"}
241
241
  aria-label=${_(t) + A(u, d, f)}
242
242
  aria-selected=${u || d || f ? "true" : "false"}
243
- aria-current=${t === e ? "date" : r}
244
- aria-disabled=${c ? "true" : r}
245
- class=${s({
243
+ aria-current=${t === e ? "date" : i}
244
+ aria-disabled=${l ? "true" : i}
245
+ class=${c({
246
246
  "lintje-date-range-picker__day": !0,
247
247
  "is-outside": !t.startsWith(n),
248
- "is-blocked": c,
248
+ "is-blocked": l,
249
249
  "is-today": t === e,
250
250
  "is-endpoint": u || d,
251
251
  "is-in-range": f
252
252
  })}
253
- @click=${() => this.pick(t, c)}
253
+ @click=${() => this.pick(t, l)}
254
254
  >
255
255
  ${Number(t.slice(8))}
256
256
  </button>`;
@@ -259,7 +259,7 @@ var j = class extends u {
259
259
  </div>
260
260
 
261
261
  <div class="lintje-date-range-picker__presets">
262
- ${w.map(([e]) => l`<button
262
+ ${w.map(([e]) => s`<button
263
263
  type="button"
264
264
  class="lintje-date-range-picker__preset"
265
265
  @click=${() => this.applyPreset(e)}
@@ -293,11 +293,11 @@ var j = class extends u {
293
293
  >
294
294
  </div>
295
295
  </div>
296
- </div>` : r}
296
+ </div>` : i}
297
297
  ${this.renderFoot()}
298
298
  </div>`;
299
299
  }
300
300
  };
301
- t("lintje-date-range", j);
301
+ n("lintje-date-range", j);
302
302
  //#endregion
303
303
  export { j as LintjeDateRange, w as PRESETS, E as formatDate, T as presetRange };
@@ -1,18 +1,15 @@
1
- import { $ as e, Bt as t, Gt as n, Ht as r, I as i, O as a, X as o, Y as s, Z as c, et as l, k as u, qt as d, ut as f } from "../chunks/base-Bg-IFOPG.js";
1
+ import { F as e, H as t, J as n, P as r, Yt as i, Zt as a, at as o, bt as s, en as c, lt as l, nn as u, ot as d, st as f, ut as p } from "../chunks/base-CbmWxUig.js";
2
2
  //#region src/components/tables/description-list/description-list.css?inline
3
- var p = ":host { display: block; min-width: 0; }\n:host([layout='grid']) { container-type: inline-size; }\n:host([hidden]) { display: none; }\n\n/* ------------------------------------------------------------------------ */\n\n.lintje-description-list {\n margin: 0;\n font: var(--text-ui);\n font-variant-numeric: tabular-nums;\n}\n\n/* Every row has the same fractions, so the columns line up without an outer grid. */\n.lintje-description-list__row {\n display: grid;\n grid-template-columns: minmax(0, 1fr) minmax(0, 1.6fr);\n border-bottom: 1px solid var(--color-border-default);\n}\n.lintje-description-list__row:last-child { border-bottom: 0; }\n\n.lintje-description-list__label {\n padding: 10px var(--space-3) 10px 0;\n color: var(--color-text-muted);\n}\n.lintje-description-list__value {\n display: flex; justify-content: space-between; align-items: baseline;\n gap: var(--space-3);\n min-width: 0;\n margin: 0;\n padding: 10px 0;\n color: var(--color-text-primary);\n overflow-wrap: anywhere;\n}\n\n.lintje-description-list__missing { color: var(--color-text-muted); }\n\n.lintje-description-list__link { color: var(--color-link); }\n.lintje-description-list__action {\n flex: none;\n font-weight: 700;\n color: var(--color-link);\n transition: color var(--dur-hover) var(--ease-in-motion);\n}\n.lintje-description-list__link:hover,\n.lintje-description-list__action:hover { color: var(--color-link-hover); }\n\n/* `layout=\"column\"` and every list below 768 px: label above value, no lines. */\n.lintje-description-list--column .lintje-description-list__row { display: block; border-bottom: 0; }\n.lintje-description-list--column .lintje-description-list__row + .lintje-description-list__row { margin-top: 10px; }\n.lintje-description-list--column .lintje-description-list__label { padding: 0; font: var(--text-small); }\n.lintje-description-list--column .lintje-description-list__value { padding: 0; }\n@media (max-width: 767px) {\n .lintje-description-list:not(.lintje-description-list--grid) .lintje-description-list__row { display: block; border-bottom: 0; }\n .lintje-description-list:not(.lintje-description-list--grid) .lintje-description-list__row + .lintje-description-list__row { margin-top: 10px; }\n .lintje-description-list:not(.lintje-description-list--grid) .lintje-description-list__label { padding: 0; font: var(--text-small); }\n .lintje-description-list:not(.lintje-description-list--grid) .lintje-description-list__value { padding: 0; }\n}\n\n.lintje-description-list__main { display: inline-flex; align-items: baseline; gap: var(--space-2); min-width: 0; }\n.lintje-description-list__main .lintje-icon { align-self: center; flex: none; }\n.lintje-description-list__tags { display: flex; flex-wrap: wrap; gap: var(--space-2); margin: 0; padding: 0; list-style: none; }\n.lintje-description-list__tag {\n display: inline-flex; align-items: center;\n min-height: var(--h-chip);\n padding: 0 var(--space-3);\n border: 1px solid var(--color-border-strong);\n background: var(--color-bg-surface);\n font-weight: 700;\n}\n\n/* --- Grid: cells side by side, divided by a line, each with its own tone ----------------- */\n.lintje-description-list--grid {\n display: grid;\n grid-template-columns: repeat(var(--lintje-columns, 4), minmax(0, 1fr));\n gap: 1px;\n background: var(--color-border-default);\n}\n.lintje-description-list--grid .lintje-description-list__row {\n display: flex; flex-direction: column; gap: var(--space-1);\n min-width: 0;\n padding: var(--space-3) var(--space-4);\n border: 0;\n background: var(--color-bg-subtle);\n}\n.lintje-description-list--grid .lintje-description-list__row.is-wide { grid-column: span 2; }\n/* On a surface that is not the page's own (a hero's wash) the cells are panels: the surface, framed. */\n:host([surface]) .lintje-description-list--grid { border: 1px solid var(--color-border-default); }\n:host([surface]) .lintje-description-list--grid .lintje-description-list__row:not(.is-changed):not(.is-warning):not(.is-error) {\n background: var(--color-bg-surface);\n}\n.lintje-description-list--grid .lintje-description-list__label {\n display: flex; align-items: center; gap: var(--space-2);\n padding: 0;\n font: var(--text-meta);\n}\n.lintje-description-list--grid .lintje-description-list__value {\n /* The values of one row stand on one line, however tall each is. */\n flex: 1 1 auto;\n flex-direction: column; align-items: flex-start; justify-content: center;\n gap: var(--space-2);\n padding: 0;\n font-weight: 700;\n}\n/* What differs from the default: the chosen option's quiet surface with an edge on top. */\n.lintje-description-list--grid .is-changed {\n background: var(--color-choice-active-bg);\n box-shadow: inset 0 3px 0 var(--color-accent-line);\n}\n.lintje-description-list--grid .is-warning {\n background: var(--color-warning-bg);\n box-shadow: inset 0 3px 0 var(--color-warning);\n}\n.lintje-description-list--grid .is-error {\n background: var(--color-error-bg);\n box-shadow: inset 0 3px 0 var(--color-error-line);\n}\n.lintje-description-list--grid .lintje-description-list__action { font: var(--text-meta); font-weight: 700; }\n.lintje-description-list--grid .is-large .lintje-description-list__value {\n font: var(--text-kpi);\n letter-spacing: var(--kpi-tracking);\n font-variant-numeric: tabular-nums;\n}\n@container (max-width: 30rem) {\n .lintje-description-list--grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }\n /* A wide cell, and a last one alone on its row, take the whole row: no empty cell beside it. */\n .lintje-description-list--grid .lintje-description-list__row.is-wide,\n .lintje-description-list--grid .lintje-description-list__row:last-child:nth-child(odd) {\n grid-column: 1 / -1;\n }\n}\n\n@media (prefers-reduced-motion: reduce) {\n .lintje-description-list__action { transition: none; }\n}\n\n@media (forced-colors: active) {\n .lintje-description-list--grid .lintje-description-list__row { border: 1px solid CanvasText; }\n}\n", m = {
4
- warning: "functioneel-waarschuwing",
5
- error: "functioneel-foutmelding"
6
- }, h = class extends a {
3
+ var m = ":host { display: block; min-width: 0; }\n/* A size container has no width of its own: in a column that shrinks to its content it would\n be none, so the grid takes the room it stands in. */\n:host([layout='grid']) { container-type: inline-size; width: 100%; }\n:host([hidden]) { display: none; }\n\n/* ------------------------------------------------------------------------ */\n\n.lintje-description-list {\n margin: 0;\n font: var(--text-ui);\n font-variant-numeric: tabular-nums;\n}\n\n/* Every row has the same fractions, so the columns line up without an outer grid. */\n.lintje-description-list__row {\n display: grid;\n grid-template-columns: minmax(0, 1fr) minmax(0, 1.6fr);\n border-bottom: 1px solid var(--color-border-default);\n}\n.lintje-description-list__row:last-child { border-bottom: 0; }\n\n.lintje-description-list__label {\n padding: 10px var(--space-3) 10px 0;\n color: var(--color-text-muted);\n}\n.lintje-description-list__value {\n display: flex; justify-content: space-between; align-items: baseline;\n gap: var(--space-3);\n min-width: 0;\n margin: 0;\n padding: 10px 0;\n color: var(--color-text-primary);\n overflow-wrap: anywhere;\n}\n\n.lintje-description-list__missing { color: var(--color-text-muted); }\n\n.lintje-description-list__link { color: var(--color-link); }\n.lintje-description-list__action {\n flex: none;\n font-weight: 700;\n color: var(--color-link);\n transition: color var(--dur-hover) var(--ease-in-motion);\n}\n.lintje-description-list__link:hover,\n.lintje-description-list__action:hover { color: var(--color-link-hover); }\n\n/* `layout=\"column\"` and every list below 768 px: label above value, no lines. */\n.lintje-description-list--column .lintje-description-list__row { display: block; border-bottom: 0; }\n.lintje-description-list--column .lintje-description-list__row + .lintje-description-list__row { margin-top: 10px; }\n.lintje-description-list--column .lintje-description-list__label { padding: 0; font: var(--text-small); }\n.lintje-description-list--column .lintje-description-list__value { padding: 0; }\n@media screen and (max-width: 767px) {\n .lintje-description-list:not(.lintje-description-list--grid) .lintje-description-list__row { display: block; border-bottom: 0; }\n .lintje-description-list:not(.lintje-description-list--grid) .lintje-description-list__row + .lintje-description-list__row { margin-top: 10px; }\n .lintje-description-list:not(.lintje-description-list--grid) .lintje-description-list__label { padding: 0; font: var(--text-small); }\n .lintje-description-list:not(.lintje-description-list--grid) .lintje-description-list__value { padding: 0; }\n}\n\n.lintje-description-list__main { display: inline-flex; align-items: baseline; gap: var(--space-2); min-width: 0; }\n.lintje-description-list__main .lintje-icon { align-self: center; flex: none; }\n.lintje-description-list__tags { display: flex; flex-wrap: wrap; gap: var(--space-2); margin: 0; padding: 0; list-style: none; }\n.lintje-description-list__tag {\n display: inline-flex; align-items: center;\n min-height: var(--h-chip);\n padding: 0 var(--space-3);\n border: 1px solid var(--color-border-strong);\n background: var(--color-bg-surface);\n font-weight: 700;\n}\n\n/* --- Grid: cells side by side, divided by a line, each with its own tone ----------------- */\n.lintje-description-list--grid {\n display: grid;\n grid-template-columns: repeat(var(--lintje-columns, 4), minmax(0, 1fr));\n gap: 1px;\n background: var(--color-border-default);\n}\n.lintje-description-list--grid .lintje-description-list__row {\n display: flex; flex-direction: column; gap: var(--space-1);\n min-width: 0;\n padding: var(--space-3) var(--space-4);\n border: 0;\n background: var(--color-bg-subtle);\n}\n.lintje-description-list--grid .lintje-description-list__row.is-wide { grid-column: span 2; }\n/* On a surface that is not the page's own (a hero's wash) the cells are panels: the surface, framed. */\n:host([surface]) .lintje-description-list--grid { border: 1px solid var(--color-border-default); }\n:host([surface]) .lintje-description-list--grid .lintje-description-list__row:not(.is-changed):not(.is-success):not(.is-info):not(.is-attention):not(.is-warning):not(.is-error) {\n background: var(--color-bg-surface);\n}\n.lintje-description-list--grid .lintje-description-list__label {\n display: flex; align-items: center; gap: var(--space-2);\n padding: 0;\n font: var(--text-meta);\n}\n.lintje-description-list--grid .lintje-description-list__value {\n /* The values of one row stand on one line, however tall each is. */\n flex: 1 1 auto;\n flex-direction: column; align-items: flex-start; justify-content: center;\n gap: var(--space-2);\n padding: 0;\n font-weight: 700;\n}\n/* What differs from the default: the chosen option's quiet surface with an edge on top. */\n.lintje-description-list--grid .is-changed {\n background: var(--color-choice-active-bg);\n box-shadow: inset 0 3px 0 var(--color-accent-line);\n}\n.lintje-description-list--grid .lintje-description-list__row.is-success {\n background: var(--color-success-bg);\n box-shadow: inset 0 3px 0 var(--color-success-line);\n}\n.lintje-description-list--grid .lintje-description-list__row.is-info {\n background: var(--color-info-bg);\n box-shadow: inset 0 3px 0 var(--color-info-line);\n}\n.lintje-description-list--grid .lintje-description-list__row.is-attention {\n background: var(--color-attention-bg);\n box-shadow: inset 0 3px 0 var(--color-attention-line);\n}\n.lintje-description-list--grid .lintje-description-list__row.is-warning {\n background: var(--color-warning-bg);\n box-shadow: inset 0 3px 0 var(--color-attention-line);\n}\n.lintje-description-list--grid .lintje-description-list__row.is-error {\n background: var(--color-error-bg);\n box-shadow: inset 0 3px 0 var(--color-error-line);\n}\n.lintje-description-list__row.is-success .lintje-description-list__main .lintje-icon { color: var(--color-success-line); }\n.lintje-description-list__row.is-info .lintje-description-list__main .lintje-icon { color: var(--color-info-line); }\n.lintje-description-list__row.is-error .lintje-description-list__main .lintje-icon { color: var(--color-error-line); }\n.lintje-description-list__row.is-attention .lintje-description-list__main .lintje-icon { color: var(--color-attention-line); }\n.lintje-description-list__row.is-warning .lintje-description-list__main .lintje-icon { color: var(--color-attention-line); }\n.lintje-description-list__row.is-busy .lintje-description-list__main .lintje-icon { color: var(--color-accent-text); }\n.lintje-description-list__row.is-neutral .lintje-description-list__main .lintje-icon { color: var(--color-text-muted); }\n.lintje-description-list__row.is-subtle .lintje-description-list__main .lintje-icon { color: var(--color-text-muted); }\n.lintje-description-list__row.is-live .lintje-description-list__main .lintje-icon { color: var(--color-error-line); }\n.lintje-description-list--grid .lintje-description-list__action { font: var(--text-meta); font-weight: 700; }\n.lintje-description-list--grid .is-large .lintje-description-list__value {\n font: var(--text-kpi);\n letter-spacing: var(--kpi-tracking);\n font-variant-numeric: tabular-nums;\n}\n@container (max-width: 30rem) {\n .lintje-description-list--grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }\n /* A wide cell, and a last one alone on its row, take the whole row: no empty cell beside it. */\n .lintje-description-list--grid .lintje-description-list__row.is-wide,\n .lintje-description-list--grid .lintje-description-list__row:last-child:nth-child(odd) {\n grid-column: 1 / -1;\n }\n}\n\n@media (prefers-reduced-motion: reduce) {\n .lintje-description-list__action { transition: none; }\n}\n\n@media (forced-colors: active) {\n .lintje-description-list--grid .lintje-description-list__row { border: 1px solid CanvasText; }\n}\n", h = class extends r {
7
4
  constructor(...e) {
8
5
  super(...e), this.items = [], this.columns = 4, this.surface = !1, this.layout = "row";
9
6
  }
10
7
  static {
11
8
  this.styles = [
9
+ l,
10
+ o,
12
11
  e,
13
- s,
14
- u,
15
- r(p)
12
+ a(m)
16
13
  ];
17
14
  }
18
15
  static {
@@ -29,44 +26,44 @@ var p = ":host { display: block; min-width: 0; }\n:host([layout='grid']) { conta
29
26
  }
30
27
  };
31
28
  }
32
- follow(e, t) {
33
- i(e) && this.followLink(t, e);
29
+ follow(e, n) {
30
+ t(e) && this.followLink(n, e);
34
31
  }
35
32
  value(e) {
36
- if (e.tags) return e.tags.length ? d`<ul class="lintje-description-list__tags">
37
- ${e.tags.map((e) => d`<li class="lintje-description-list__tag">${e}</li>`)}
38
- </ul>` : d`<span class="lintje-description-list__missing">Geen</span>`;
33
+ if (e.tags) return e.tags.length ? u`<ul class="lintje-description-list__tags">
34
+ ${e.tags.map((e) => u`<li class="lintje-description-list__tag">${e}</li>`)}
35
+ </ul>` : u`<span class="lintje-description-list__missing">Geen</span>`;
39
36
  let t = e.value === null || e.value === void 0 || e.value === "";
40
- if (t && e.slot) return d``;
41
- if (t) return d`<span class="lintje-description-list__missing"
37
+ if (t && e.slot) return u``;
38
+ if (t) return u`<span class="lintje-description-list__missing"
42
39
  ><span aria-hidden="true">—</span><span class="visually-hidden">geen waarde</span></span
43
40
  >`;
44
41
  if (e.href) {
45
42
  let t = e.href;
46
- return d`<a
43
+ return u`<a
47
44
  class="lintje-description-list__link"
48
45
  href=${t}
49
46
  @click=${(e) => this.follow(e, t)}
50
47
  >${e.value}</a
51
48
  >`;
52
49
  }
53
- return d`<span>${e.value}</span>`;
50
+ return u`<span>${e.value}</span>`;
54
51
  }
55
52
  action(e) {
56
- if (!e.action) return n;
57
- let { href: t } = e.action, r = e.action.label ?? "Wijzigen";
58
- return d`<a
53
+ if (!e.action) return c;
54
+ let { href: t } = e.action, n = e.action.label ?? "Wijzigen";
55
+ return u`<a
59
56
  class="lintje-description-list__action"
60
57
  href=${t}
61
- aria-label=${`${e.label} ${r.toLowerCase()}`}
58
+ aria-label=${`${e.label} ${n.toLowerCase()}`}
62
59
  @click=${(e) => this.follow(e, t)}
63
- >${r}</a
60
+ >${n}</a
64
61
  >`;
65
62
  }
66
63
  renderItem(e) {
67
64
  let t = this.layout === "grid", r = e.tone;
68
- return d`<div
69
- class=${c({
65
+ return u`<div
66
+ class=${f({
70
67
  "lintje-description-list__row": !0,
71
68
  "is-wide": t && e.span === 2,
72
69
  "is-large": t && !!e.large,
@@ -74,34 +71,34 @@ var p = ":host { display: block; min-width: 0; }\n:host([layout='grid']) { conta
74
71
  })}
75
72
  >
76
73
  <dt class="lintje-description-list__label"
77
- >${t && e.icon ? l(e.icon, { size: 16 }) : n}${e.label}</dt
74
+ >${t && e.icon ? p(e.icon, { size: 16 }) : c}${e.label}</dt
78
75
  >
79
76
  <dd class="lintje-description-list__value">
80
77
  <span class="lintje-description-list__main">
81
- ${r && r !== "changed" ? l(m[r], { size: 16 }) : n}
78
+ ${r && r !== "changed" ? p(n[r], { size: 16 }) : c}
82
79
  ${this.value(e)}
83
80
  </span>
84
- ${e.slot ? d`<slot name=${e.slot}></slot>` : n}
85
- ${r === "changed" ? o({
81
+ ${e.slot ? u`<slot name=${e.slot}></slot>` : c}
82
+ ${r === "changed" ? d({
86
83
  value: "Aangepast",
87
84
  tone: "neutral",
88
85
  className: "lintje-description-list__changed"
89
- }) : n}
86
+ }) : c}
90
87
  ${this.action(e)}
91
88
  </dd>
92
89
  </div>`;
93
90
  }
94
91
  render() {
95
- let e = c({
92
+ let e = f({
96
93
  "lintje-description-list": !0,
97
94
  "lintje-description-list--column": this.layout === "column",
98
95
  "lintje-description-list--grid": this.layout === "grid"
99
96
  });
100
- return d`<dl class=${e} ${f({ "--lintje-columns": String(this.columns) })}>
97
+ return u`<dl class=${e} ${s({ "--lintje-columns": String(this.columns) })}>
101
98
  ${this.items.map((e) => this.renderItem(e))}
102
99
  </dl>`;
103
100
  }
104
101
  };
105
- t("lintje-description-list", h);
102
+ i("lintje-description-list", h);
106
103
  //#endregion
107
104
  export { h as LintjeDescriptionList };
@@ -0,0 +1 @@
1
+ export * from '../types/components/overlays/dialog/dialog.js'