@nldd/design-system 0.8.74 → 0.8.76

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 (268) hide show
  1. package/README.md +6 -1
  2. package/custom-elements.json +74 -1
  3. package/dist/assets/styles/{style-resets.d.ts → shadow-resets.d.ts} +1 -1
  4. package/dist/assets/styles/shadow-resets.d.ts.map +1 -0
  5. package/dist/assets/styles/{style-resets.fixtures.d.ts → shadow-resets.fixtures.d.ts} +4 -4
  6. package/dist/assets/styles/shadow-resets.fixtures.d.ts.map +1 -0
  7. package/dist/assets/styles/{style-resets.fixtures.js → shadow-resets.fixtures.js} +4 -4
  8. package/dist/assets/styles/shadow-resets.fixtures.js.map +1 -0
  9. package/dist/assets/styles/{style-resets.js → shadow-resets.js} +1 -1
  10. package/dist/assets/styles/shadow-resets.js.map +1 -0
  11. package/dist/components/actions/button/button.styles.js +1 -1
  12. package/dist/components/actions/button/button.styles.js.map +1 -1
  13. package/dist/components/actions/icon-button/icon-button.styles.js +1 -1
  14. package/dist/components/actions/icon-button/icon-button.styles.js.map +1 -1
  15. package/dist/components/actions/menu/menu.d.ts.map +1 -1
  16. package/dist/components/actions/menu/menu.js +19 -1
  17. package/dist/components/actions/menu/menu.js.map +1 -1
  18. package/dist/components/actions/menu/menu.styles.d.ts.map +1 -1
  19. package/dist/components/actions/menu/menu.styles.js +18 -15
  20. package/dist/components/actions/menu/menu.styles.js.map +1 -1
  21. package/dist/components/actions/menu/menu.template.d.ts.map +1 -1
  22. package/dist/components/actions/menu/menu.template.js +11 -9
  23. package/dist/components/actions/menu/menu.template.js.map +1 -1
  24. package/dist/components/actions/split-button/split-button.styles.js +1 -1
  25. package/dist/components/actions/split-button/split-button.styles.js.map +1 -1
  26. package/dist/components/actions/toolbar/toolbar.styles.js +1 -1
  27. package/dist/components/actions/toolbar/toolbar.styles.js.map +1 -1
  28. package/dist/components/components.js +1 -1
  29. package/dist/components/content/avatar/avatar.styles.js +1 -1
  30. package/dist/components/content/avatar/avatar.styles.js.map +1 -1
  31. package/dist/components/content/blockquote/blockquote.styles.js +1 -1
  32. package/dist/components/content/blockquote/blockquote.styles.js.map +1 -1
  33. package/dist/components/content/byline/byline.styles.js +1 -1
  34. package/dist/components/content/byline/byline.styles.js.map +1 -1
  35. package/dist/components/content/code-viewer/code-viewer.styles.js +1 -1
  36. package/dist/components/content/code-viewer/code-viewer.styles.js.map +1 -1
  37. package/dist/components/content/icon/icon-aliases.d.ts.map +1 -1
  38. package/dist/components/content/icon/icon-aliases.js +4 -0
  39. package/dist/components/content/icon/icon-aliases.js.map +1 -1
  40. package/dist/components/content/icon/icon-gallery-status.d.ts.map +1 -1
  41. package/dist/components/content/icon/icon-gallery-status.js +3 -0
  42. package/dist/components/content/icon/icon-gallery-status.js.map +1 -1
  43. package/dist/components/content/icon/icon-registry.d.ts.map +1 -1
  44. package/dist/components/content/icon/icon-registry.js +3 -0
  45. package/dist/components/content/icon/icon-registry.js.map +1 -1
  46. package/dist/components/content/image/image.styles.js +1 -1
  47. package/dist/components/content/image/image.styles.js.map +1 -1
  48. package/dist/components/content/keyboard-shortcut/keyboard-shortcut.styles.js +1 -1
  49. package/dist/components/content/keyboard-shortcut/keyboard-shortcut.styles.js.map +1 -1
  50. package/dist/components/content/tag/tag.styles.js +1 -1
  51. package/dist/components/content/tag/tag.styles.js.map +1 -1
  52. package/dist/components/content/title/title.styles.d.ts.map +1 -1
  53. package/dist/components/content/title/title.styles.js +10 -2
  54. package/dist/components/content/title/title.styles.js.map +1 -1
  55. package/dist/components/content/token/token.styles.js +1 -1
  56. package/dist/components/content/token/token.styles.js.map +1 -1
  57. package/dist/components/content/tooltip/tooltip.d.ts +1 -0
  58. package/dist/components/content/tooltip/tooltip.d.ts.map +1 -1
  59. package/dist/components/content/tooltip/tooltip.js +20 -0
  60. package/dist/components/content/tooltip/tooltip.js.map +1 -1
  61. package/dist/components/content/tooltip/tooltip.styles.js +1 -1
  62. package/dist/components/content/tooltip/tooltip.styles.js.map +1 -1
  63. package/dist/components/content/tooltip/tooltip.template.d.ts.map +1 -1
  64. package/dist/components/content/tooltip/tooltip.template.js +7 -0
  65. package/dist/components/content/tooltip/tooltip.template.js.map +1 -1
  66. package/dist/components/forms/form-field/form-field.styles.js +1 -1
  67. package/dist/components/forms/form-field/form-field.styles.js.map +1 -1
  68. package/dist/components/{index-CI0H6jWT.js → index-B04kRPqo.js} +518 -255
  69. package/dist/components/{index-73GOYriu.js → index-C51CBKdx.js} +1 -1
  70. package/dist/components/{index-fjTBz8ya.js → index-C6fLE8SI.js} +1 -1
  71. package/dist/components/{index-CChmEZdd.js → index-CGIRur7T.js} +1 -1
  72. package/dist/components/{index-JawcAuAj.js → index-Ch1zpGsx.js} +1 -1
  73. package/dist/components/{index-CAIa-ZY1.js → index-CnPUd-yq.js} +1 -1
  74. package/dist/components/{index-BBerWrN2.js → index-DumgCqWu.js} +1 -1
  75. package/dist/components/inputs/checkbox-field/checkbox-field.styles.js +1 -1
  76. package/dist/components/inputs/checkbox-field/checkbox-field.styles.js.map +1 -1
  77. package/dist/components/inputs/code-editor/code-editor.styles.js +1 -1
  78. package/dist/components/inputs/code-editor/code-editor.styles.js.map +1 -1
  79. package/dist/components/inputs/combo-box/combo-box.styles.js +1 -1
  80. package/dist/components/inputs/combo-box/combo-box.styles.js.map +1 -1
  81. package/dist/components/inputs/date-field/date-field.styles.d.ts.map +1 -1
  82. package/dist/components/inputs/date-field/date-field.styles.js +1 -2
  83. package/dist/components/inputs/date-field/date-field.styles.js.map +1 -1
  84. package/dist/components/inputs/date-field/date-field.template.d.ts.map +1 -1
  85. package/dist/components/inputs/date-field/date-field.template.js +6 -0
  86. package/dist/components/inputs/date-field/date-field.template.js.map +1 -1
  87. package/dist/components/inputs/date-picker/date-picker.d.ts +23 -2
  88. package/dist/components/inputs/date-picker/date-picker.d.ts.map +1 -1
  89. package/dist/components/inputs/date-picker/date-picker.i18n.d.ts +1 -0
  90. package/dist/components/inputs/date-picker/date-picker.i18n.d.ts.map +1 -1
  91. package/dist/components/inputs/date-picker/date-picker.i18n.js +1 -0
  92. package/dist/components/inputs/date-picker/date-picker.i18n.js.map +1 -1
  93. package/dist/components/inputs/date-picker/date-picker.js +85 -25
  94. package/dist/components/inputs/date-picker/date-picker.js.map +1 -1
  95. package/dist/components/inputs/date-picker/date-picker.styles.d.ts.map +1 -1
  96. package/dist/components/inputs/date-picker/date-picker.styles.js +15 -4
  97. package/dist/components/inputs/date-picker/date-picker.styles.js.map +1 -1
  98. package/dist/components/inputs/date-picker/date-picker.template.d.ts.map +1 -1
  99. package/dist/components/inputs/date-picker/date-picker.template.js +77 -48
  100. package/dist/components/inputs/date-picker/date-picker.template.js.map +1 -1
  101. package/dist/components/inputs/dropdown/dropdown.styles.js +1 -1
  102. package/dist/components/inputs/dropdown/dropdown.styles.js.map +1 -1
  103. package/dist/components/inputs/multi-line-text-field/multi-line-text-field.styles.js +1 -1
  104. package/dist/components/inputs/multi-line-text-field/multi-line-text-field.styles.js.map +1 -1
  105. package/dist/components/inputs/number-field/number-field.styles.js +1 -1
  106. package/dist/components/inputs/number-field/number-field.styles.js.map +1 -1
  107. package/dist/components/inputs/password-field/password-field.styles.d.ts.map +1 -1
  108. package/dist/components/inputs/password-field/password-field.styles.js +1 -6
  109. package/dist/components/inputs/password-field/password-field.styles.js.map +1 -1
  110. package/dist/components/inputs/radio-button-field/radio-button-field.styles.js +1 -1
  111. package/dist/components/inputs/radio-button-field/radio-button-field.styles.js.map +1 -1
  112. package/dist/components/inputs/radio-button-group/radio-button-group.styles.js +1 -1
  113. package/dist/components/inputs/radio-button-group/radio-button-group.styles.js.map +1 -1
  114. package/dist/components/inputs/search-field/search-field.styles.js +1 -1
  115. package/dist/components/inputs/search-field/search-field.styles.js.map +1 -1
  116. package/dist/components/inputs/segmented-control/segmented-control.styles.js +1 -1
  117. package/dist/components/inputs/segmented-control/segmented-control.styles.js.map +1 -1
  118. package/dist/components/inputs/switch-field/switch-field.styles.js +1 -1
  119. package/dist/components/inputs/switch-field/switch-field.styles.js.map +1 -1
  120. package/dist/components/inputs/text-editor/text-editor.styles.js +1 -1
  121. package/dist/components/inputs/text-editor/text-editor.styles.js.map +1 -1
  122. package/dist/components/inputs/text-field/text-field.styles.js +1 -1
  123. package/dist/components/inputs/text-field/text-field.styles.js.map +1 -1
  124. package/dist/components/inputs/toggle-button/toggle-button.styles.js +1 -1
  125. package/dist/components/inputs/toggle-button/toggle-button.styles.js.map +1 -1
  126. package/dist/components/inputs/token-field/token-field.styles.js +1 -1
  127. package/dist/components/inputs/token-field/token-field.styles.js.map +1 -1
  128. package/dist/components/layout/card/card.d.ts +3 -0
  129. package/dist/components/layout/card/card.d.ts.map +1 -1
  130. package/dist/components/layout/card/card.js +6 -0
  131. package/dist/components/layout/card/card.js.map +1 -1
  132. package/dist/components/layout/card/card.styles.d.ts.map +1 -1
  133. package/dist/components/layout/card/card.styles.js +12 -2
  134. package/dist/components/layout/card/card.styles.js.map +1 -1
  135. package/dist/components/layout/collection/collection.d.ts +1 -0
  136. package/dist/components/layout/collection/collection.d.ts.map +1 -1
  137. package/dist/components/layout/collection/collection.js +54 -4
  138. package/dist/components/layout/collection/collection.js.map +1 -1
  139. package/dist/components/layout/container/container.styles.d.ts.map +1 -1
  140. package/dist/components/layout/container/container.styles.js +84 -70
  141. package/dist/components/layout/container/container.styles.js.map +1 -1
  142. package/dist/components/layout/container/container.template.d.ts.map +1 -1
  143. package/dist/components/layout/container/container.template.js +13 -5
  144. package/dist/components/layout/container/container.template.js.map +1 -1
  145. package/dist/components/layout/page-footer/page-footer.styles.js +1 -1
  146. package/dist/components/layout/page-footer/page-footer.styles.js.map +1 -1
  147. package/dist/components/layout/page-sections/hero/hero.styles.js +1 -1
  148. package/dist/components/layout/page-sections/hero/hero.styles.js.map +1 -1
  149. package/dist/components/layout/popover/popover.d.ts.map +1 -1
  150. package/dist/components/layout/popover/popover.js +21 -8
  151. package/dist/components/layout/popover/popover.js.map +1 -1
  152. package/dist/components/layout/window/window.styles.js +1 -1
  153. package/dist/components/layout/window/window.styles.js.map +1 -1
  154. package/dist/components/lists-and-tables/cells/cell/cell.styles.d.ts.map +1 -1
  155. package/dist/components/lists-and-tables/cells/cell/cell.styles.js +3 -2
  156. package/dist/components/lists-and-tables/cells/cell/cell.styles.js.map +1 -1
  157. package/dist/components/lists-and-tables/cells/description-cell/description-cell.styles.d.ts.map +1 -1
  158. package/dist/components/lists-and-tables/cells/description-cell/description-cell.styles.js +3 -2
  159. package/dist/components/lists-and-tables/cells/description-cell/description-cell.styles.js.map +1 -1
  160. package/dist/components/lists-and-tables/cells/drag-handle-cell/drag-handle-cell.styles.d.ts.map +1 -1
  161. package/dist/components/lists-and-tables/cells/drag-handle-cell/drag-handle-cell.styles.js +2 -1
  162. package/dist/components/lists-and-tables/cells/drag-handle-cell/drag-handle-cell.styles.js.map +1 -1
  163. package/dist/components/lists-and-tables/cells/icon-cell/icon-cell.styles.d.ts.map +1 -1
  164. package/dist/components/lists-and-tables/cells/icon-cell/icon-cell.styles.js +2 -1
  165. package/dist/components/lists-and-tables/cells/icon-cell/icon-cell.styles.js.map +1 -1
  166. package/dist/components/lists-and-tables/cells/text-cell/text-cell.styles.d.ts.map +1 -1
  167. package/dist/components/lists-and-tables/cells/text-cell/text-cell.styles.js +3 -2
  168. package/dist/components/lists-and-tables/cells/text-cell/text-cell.styles.js.map +1 -1
  169. package/dist/components/lists-and-tables/cells/timeline-track-cell/timeline-track-cell.d.ts +7 -3
  170. package/dist/components/lists-and-tables/cells/timeline-track-cell/timeline-track-cell.d.ts.map +1 -1
  171. package/dist/components/lists-and-tables/cells/timeline-track-cell/timeline-track-cell.js +4 -2
  172. package/dist/components/lists-and-tables/cells/timeline-track-cell/timeline-track-cell.js.map +1 -1
  173. package/dist/components/lists-and-tables/cells/timeline-track-cell/timeline-track-cell.styles.d.ts.map +1 -1
  174. package/dist/components/lists-and-tables/cells/timeline-track-cell/timeline-track-cell.styles.js +2 -1
  175. package/dist/components/lists-and-tables/cells/timeline-track-cell/timeline-track-cell.styles.js.map +1 -1
  176. package/dist/components/lists-and-tables/cells/title-cell/title-cell.styles.d.ts.map +1 -1
  177. package/dist/components/lists-and-tables/cells/title-cell/title-cell.styles.js +3 -2
  178. package/dist/components/lists-and-tables/cells/title-cell/title-cell.styles.js.map +1 -1
  179. package/dist/components/lists-and-tables/list-item/list-item.d.ts +19 -6
  180. package/dist/components/lists-and-tables/list-item/list-item.d.ts.map +1 -1
  181. package/dist/components/lists-and-tables/list-item/list-item.js +30 -7
  182. package/dist/components/lists-and-tables/list-item/list-item.js.map +1 -1
  183. package/dist/components/lists-and-tables/list-item/list-item.styles.d.ts.map +1 -1
  184. package/dist/components/lists-and-tables/list-item/list-item.styles.js +4 -1
  185. package/dist/components/lists-and-tables/list-item/list-item.styles.js.map +1 -1
  186. package/dist/components/lists-and-tables/table/table.styles.d.ts.map +1 -1
  187. package/dist/components/lists-and-tables/table/table.styles.js +10 -4
  188. package/dist/components/lists-and-tables/table/table.styles.js.map +1 -1
  189. package/dist/components/navigation/breadcrumbs/breadcrumbs.styles.js +1 -1
  190. package/dist/components/navigation/breadcrumbs/breadcrumbs.styles.js.map +1 -1
  191. package/dist/components/navigation/document-tab-bar/document-tab-bar.styles.js +1 -1
  192. package/dist/components/navigation/document-tab-bar/document-tab-bar.styles.js.map +1 -1
  193. package/dist/components/navigation/link/link.styles.js +1 -1
  194. package/dist/components/navigation/link/link.styles.js.map +1 -1
  195. package/dist/components/navigation/menu-bar/menu-bar.styles.js +1 -1
  196. package/dist/components/navigation/menu-bar/menu-bar.styles.js.map +1 -1
  197. package/dist/components/navigation/menu-bar-item/menu-bar-item.styles.js +1 -1
  198. package/dist/components/navigation/menu-bar-item/menu-bar-item.styles.js.map +1 -1
  199. package/dist/components/navigation/pagination/pagination.styles.js +1 -1
  200. package/dist/components/navigation/pagination/pagination.styles.js.map +1 -1
  201. package/dist/components/navigation/skip-link/skip-link.styles.js +1 -1
  202. package/dist/components/navigation/skip-link/skip-link.styles.js.map +1 -1
  203. package/dist/components/navigation/tab-bar/tab-bar.styles.js +1 -1
  204. package/dist/components/navigation/tab-bar/tab-bar.styles.js.map +1 -1
  205. package/dist/components/navigation/top-navigation-bar/top-navigation-bar.styles.js +1 -1
  206. package/dist/components/navigation/top-navigation-bar/top-navigation-bar.styles.js.map +1 -1
  207. package/dist/components/navigation/top-title-bar/top-title-bar.styles.js +1 -1
  208. package/dist/components/navigation/top-title-bar/top-title-bar.styles.js.map +1 -1
  209. package/dist/components/status-and-feedback/activity-indicator/activity-indicator.styles.js +1 -1
  210. package/dist/components/status-and-feedback/activity-indicator/activity-indicator.styles.js.map +1 -1
  211. package/dist/components/status-and-feedback/badge/badge.styles.js +1 -1
  212. package/dist/components/status-and-feedback/badge/badge.styles.js.map +1 -1
  213. package/dist/components/status-and-feedback/banner/banner.styles.d.ts.map +1 -1
  214. package/dist/components/status-and-feedback/banner/banner.styles.js +26 -16
  215. package/dist/components/status-and-feedback/banner/banner.styles.js.map +1 -1
  216. package/dist/components/status-and-feedback/banner/banner.template.d.ts.map +1 -1
  217. package/dist/components/status-and-feedback/banner/banner.template.js +36 -34
  218. package/dist/components/status-and-feedback/banner/banner.template.js.map +1 -1
  219. package/dist/components/status-and-feedback/inline-dialog/inline-dialog.styles.js +1 -1
  220. package/dist/components/status-and-feedback/inline-dialog/inline-dialog.styles.js.map +1 -1
  221. package/dist/components/status-and-feedback/just-in-time-education/just-in-time-education.styles.js +1 -1
  222. package/dist/components/status-and-feedback/just-in-time-education/just-in-time-education.styles.js.map +1 -1
  223. package/dist/components/status-and-feedback/modal-dialog/modal-dialog.styles.js +1 -1
  224. package/dist/components/status-and-feedback/modal-dialog/modal-dialog.styles.js.map +1 -1
  225. package/dist/components/status-and-feedback/progress-bar/progress-bar.d.ts.map +1 -1
  226. package/dist/components/status-and-feedback/progress-bar/progress-bar.js +4 -28
  227. package/dist/components/status-and-feedback/progress-bar/progress-bar.js.map +1 -1
  228. package/dist/components/status-and-feedback/progress-bar/progress-bar.styles.d.ts.map +1 -1
  229. package/dist/components/status-and-feedback/progress-bar/progress-bar.styles.js +19 -2
  230. package/dist/components/status-and-feedback/progress-bar/progress-bar.styles.js.map +1 -1
  231. package/dist/components/status-and-feedback/progress-bar/progress-bar.template.d.ts +2 -1
  232. package/dist/components/status-and-feedback/progress-bar/progress-bar.template.d.ts.map +1 -1
  233. package/dist/components/status-and-feedback/progress-bar/progress-bar.template.js +36 -1
  234. package/dist/components/status-and-feedback/progress-bar/progress-bar.template.js.map +1 -1
  235. package/dist/components/status-and-feedback/progress-circle/progress-circle.styles.js +1 -1
  236. package/dist/components/status-and-feedback/progress-circle/progress-circle.styles.js.map +1 -1
  237. package/dist/components/status-and-feedback/status-bar/status-bar.styles.js +1 -1
  238. package/dist/components/status-and-feedback/status-bar/status-bar.styles.js.map +1 -1
  239. package/dist/components/status-and-feedback/step-indicator/step-indicator.styles.js +1 -1
  240. package/dist/components/status-and-feedback/step-indicator/step-indicator.styles.js.map +1 -1
  241. package/dist/css/{palettes.generated.css → colors.generated.css} +1 -1
  242. package/dist/css/document-reset.css +16 -0
  243. package/dist/css/global-system-font.css +6 -0
  244. package/dist/css/global.css +3 -2
  245. package/dist/css/rich-text.css +35 -0
  246. package/dist/css/rijksoverheid-fonts.css +40 -0
  247. package/dist/css/tokens.css +2 -0
  248. package/dist/css/{settings.css → variables.css} +9 -39
  249. package/dist/types/vue.d.ts +7 -1
  250. package/dist/utilities/codemirror/theme.js +1 -1
  251. package/dist/utilities/page-section-mixin.d.ts.map +1 -1
  252. package/dist/utilities/page-section-mixin.js +0 -1
  253. package/dist/utilities/page-section-mixin.js.map +1 -1
  254. package/dist/utilities/visibility-mixin.d.ts.map +1 -1
  255. package/dist/utilities/visibility-mixin.js +0 -1
  256. package/dist/utilities/visibility-mixin.js.map +1 -1
  257. package/dist/utilities/with-translations.d.ts.map +1 -1
  258. package/dist/utilities/with-translations.js.map +1 -1
  259. package/package.json +14 -8
  260. package/dist/assets/styles/style-resets.d.ts.map +0 -1
  261. package/dist/assets/styles/style-resets.fixtures.d.ts.map +0 -1
  262. package/dist/assets/styles/style-resets.fixtures.js.map +0 -1
  263. package/dist/assets/styles/style-resets.js.map +0 -1
  264. package/dist/assets/styles/tokens.d.ts +0 -25
  265. package/dist/assets/styles/tokens.d.ts.map +0 -1
  266. package/dist/assets/styles/tokens.js +0 -25
  267. package/dist/assets/styles/tokens.js.map +0 -1
  268. package/dist/css/reset.css +0 -7
@@ -1,4 +1,4 @@
1
- import { L as LRParser, E as ExternalTokenizer, C as ContextTracker, s as styleTags, t as tags, a as LanguageSupport, l as ifNotIn, h as syntaxTree, b as LRLanguage, i as indentNodeProp, e as delimitedIndent, f as foldNodeProp, d as foldInside, N as NodeWeakMap, I as IterMode, m as completeFromList, n as snippetCompletion } from "./index-CI0H6jWT.js";
1
+ import { L as LRParser, E as ExternalTokenizer, C as ContextTracker, s as styleTags, t as tags, a as LanguageSupport, l as ifNotIn, h as syntaxTree, b as LRLanguage, i as indentNodeProp, e as delimitedIndent, f as foldNodeProp, d as foldInside, N as NodeWeakMap, I as IterMode, m as completeFromList, n as snippetCompletion } from "./index-B04kRPqo.js";
2
2
  const printKeyword = 1, indent = 194, dedent = 195, newline$1 = 196, blankLineStart = 197, newlineBracketed = 198, eof = 199, stringContent = 200, Escape = 2, replacementStart = 3, stringEnd = 201, ParenL = 24, ParenthesizedExpression = 25, TupleExpression = 49, ComprehensionExpression = 50, BracketL = 55, ArrayExpression = 56, ArrayComprehensionExpression = 57, BraceL = 59, DictionaryExpression = 60, DictionaryComprehensionExpression = 61, SetExpression = 62, SetComprehensionExpression = 63, ArgList = 65, subscript = 238, String$1 = 71, stringStart = 241, stringStartD = 242, stringStartL = 243, stringStartLD = 244, stringStartR = 245, stringStartRD = 246, stringStartRL = 247, stringStartRLD = 248, FormatString = 72, stringStartF = 249, stringStartFD = 250, stringStartFL = 251, stringStartFLD = 252, stringStartFR = 253, stringStartFRD = 254, stringStartFRL = 255, stringStartFRLD = 256, FormatReplacement = 73, nestedFormatReplacement = 77, importList = 263, TypeParamList = 112, ParamList = 130, SequencePattern = 151, MappingPattern = 152, PatternArgList = 155;
3
3
  const newline = 10, carriageReturn = 13, space = 32, tab = 9, hash = 35, parenOpen = 40, dot = 46, braceOpen = 123, braceClose = 125, singleQuote = 39, doubleQuote = 34, backslash = 92, letter_o = 111, letter_x = 120, letter_N = 78, letter_u = 117, letter_U = 85;
4
4
  const bracketed = /* @__PURE__ */ new Set([
@@ -1,4 +1,4 @@
1
- import { a as LanguageSupport, b as LRLanguage, i as indentNodeProp, c as continuedIndent, f as foldNodeProp, s as styleTags, E as ExternalTokenizer, l as ifNotIn, m as completeFromList, L as LRParser, h as syntaxTree, t as tags } from "./index-CI0H6jWT.js";
1
+ import { a as LanguageSupport, b as LRLanguage, i as indentNodeProp, c as continuedIndent, f as foldNodeProp, s as styleTags, E as ExternalTokenizer, l as ifNotIn, m as completeFromList, L as LRParser, h as syntaxTree, t as tags } from "./index-B04kRPqo.js";
2
2
  const whitespace = 36, LineComment = 1, BlockComment = 2, String$1 = 3, Number = 4, Bool = 5, Null = 6, ParenL = 7, ParenR = 8, BraceL = 9, BraceR = 10, BracketL = 11, BracketR = 12, Semi = 13, Dot = 14, Operator = 15, Punctuation = 16, SpecialVar = 17, Identifier = 18, QuotedIdentifier = 19, Keyword = 20, Type = 21, Bits = 22, Bytes = 23, Builtin = 24;
3
3
  function isAlpha(ch) {
4
4
  return ch >= 65 && ch <= 90 || ch >= 97 && ch <= 122 || ch >= 48 && ch <= 57;
@@ -1,4 +1,4 @@
1
- import { L as LRParser, s as styleTags, t as tags, a as LanguageSupport, b as LRLanguage, i as indentNodeProp, c as continuedIndent, f as foldNodeProp, d as foldInside } from "./index-CI0H6jWT.js";
1
+ import { L as LRParser, s as styleTags, t as tags, a as LanguageSupport, b as LRLanguage, i as indentNodeProp, c as continuedIndent, f as foldNodeProp, d as foldInside } from "./index-B04kRPqo.js";
2
2
  const jsonHighlighting = styleTags({
3
3
  String: tags.string,
4
4
  Number: tags.number,
@@ -1,4 +1,4 @@
1
- import { L as LRParser, E as ExternalTokenizer, C as ContextTracker, s as styleTags, t as tags, a as LanguageSupport, g as EditorView, h as syntaxTree, j as EditorSelection, b as LRLanguage, i as indentNodeProp, f as foldNodeProp, k as bracketMatchingHandle } from "./index-CI0H6jWT.js";
1
+ import { L as LRParser, E as ExternalTokenizer, C as ContextTracker, s as styleTags, t as tags, a as LanguageSupport, g as EditorView, h as syntaxTree, j as EditorSelection, b as LRLanguage, i as indentNodeProp, f as foldNodeProp, k as bracketMatchingHandle } from "./index-B04kRPqo.js";
2
2
  const StartTag = 1, StartCloseTag = 2, MissingCloseTag = 3, mismatchedStartCloseTag = 4, incompleteStartCloseTag = 5, commentContent$1 = 36, piContent$1 = 37, cdataContent$1 = 38, Element$1 = 11, OpenTag = 13;
3
3
  function nameChar(ch) {
4
4
  return ch == 45 || ch == 46 || ch == 58 || ch >= 65 && ch <= 90 || ch == 95 || ch >= 97 && ch <= 122 || ch >= 161;
@@ -1,4 +1,4 @@
1
- import { L as LRParser, E as ExternalTokenizer, C as ContextTracker, s as styleTags, t as tags, a as LanguageSupport, p as parseMixed, b as LRLanguage, i as indentNodeProp, e as delimitedIndent, f as foldNodeProp, d as foldInside } from "./index-CI0H6jWT.js";
1
+ import { L as LRParser, E as ExternalTokenizer, C as ContextTracker, s as styleTags, t as tags, a as LanguageSupport, p as parseMixed, b as LRLanguage, i as indentNodeProp, e as delimitedIndent, f as foldNodeProp, d as foldInside } from "./index-B04kRPqo.js";
2
2
  const blockEnd = 63, eof = 64, DirectiveEnd = 1, DocEnd = 2, sequenceStartMark = 3, sequenceContinueMark = 4, explicitMapStartMark = 5, explicitMapContinueMark = 6, flowMapMark = 7, mapStartMark = 65, mapContinueMark = 66, Literal = 8, QuotedLiteral = 9, Anchor = 10, Alias = 11, Tag = 12, BlockLiteralContent = 13, BracketL = 19, FlowSequence = 20, Colon = 29, BraceL = 33, FlowMapping = 34, BlockLiteralHeader = 47;
3
3
  const type_Top = 0, type_Seq = 1, type_Map = 2, type_Flow = 3, type_Lit = 4;
4
4
  class Context {
@@ -1,4 +1,4 @@
1
- import { L as LRParser, E as ExternalTokenizer, s as styleTags, t as tags, a as LanguageSupport, b as LRLanguage, i as indentNodeProp, c as continuedIndent, f as foldNodeProp, d as foldInside } from "./index-CI0H6jWT.js";
1
+ import { L as LRParser, E as ExternalTokenizer, s as styleTags, t as tags, a as LanguageSupport, b as LRLanguage, i as indentNodeProp, c as continuedIndent, f as foldNodeProp, d as foldInside } from "./index-B04kRPqo.js";
2
2
  const closureParamDelim = 1, tpOpen = 2, tpClose = 3, RawString = 4, Float = 5;
3
3
  const _b = 98, _e = 101, _f = 102, _r = 114, _E = 69, Zero = 48, Dot = 46, Plus = 43, Minus = 45, Hash = 35, Quote = 34, Pipe = 124, LessThan = 60, GreaterThan = 62;
4
4
  function isNum(ch) {
@@ -1,5 +1,5 @@
1
1
  import { css } from 'lit';
2
- import { inheritedTextReset } from '../../../assets/styles/style-resets.js';
2
+ import { inheritedTextReset } from '../../../assets/styles/shadow-resets.js';
3
3
  export const checkboxFieldStyles = css `
4
4
  :host {
5
5
  box-sizing: border-box;
@@ -1 +1 @@
1
- {"version":3,"file":"checkbox-field.styles.js","sourceRoot":"","sources":["../../../../src/components/inputs/checkbox-field/checkbox-field.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAE5E,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAA;;;;;;;;;IASlC,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyCrB,CAAC"}
1
+ {"version":3,"file":"checkbox-field.styles.js","sourceRoot":"","sources":["../../../../src/components/inputs/checkbox-field/checkbox-field.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAE7E,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAA;;;;;;;;;IASlC,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyCrB,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { css } from 'lit';
2
- import { inheritedTextReset } from '../../../assets/styles/style-resets.js';
2
+ import { inheritedTextReset } from '../../../assets/styles/shadow-resets.js';
3
3
  export const codeEditorStyles = css `
4
4
  :host {
5
5
  box-sizing: border-box;
@@ -1 +1 @@
1
- {"version":3,"file":"code-editor.styles.js","sourceRoot":"","sources":["../../../../src/components/inputs/code-editor/code-editor.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAE5E,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;IA2B/B,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqGrB,CAAC"}
1
+ {"version":3,"file":"code-editor.styles.js","sourceRoot":"","sources":["../../../../src/components/inputs/code-editor/code-editor.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAE7E,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;IA2B/B,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqGrB,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { css } from 'lit';
2
- import { inheritedTextReset } from '../../../assets/styles/style-resets.js';
2
+ import { inheritedTextReset } from '../../../assets/styles/shadow-resets.js';
3
3
  export const comboBoxStyles = css `
4
4
  :host {
5
5
  box-sizing: border-box;
@@ -1 +1 @@
1
- {"version":3,"file":"combo-box.styles.js","sourceRoot":"","sources":["../../../../src/components/inputs/combo-box/combo-box.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAE5E,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;IAmB7B,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuJrB,CAAC"}
1
+ {"version":3,"file":"combo-box.styles.js","sourceRoot":"","sources":["../../../../src/components/inputs/combo-box/combo-box.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAE7E,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;IAmB7B,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuJrB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"date-field.styles.d.ts","sourceRoot":"","sources":["../../../../src/components/inputs/date-field/date-field.styles.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,eAAe,yBAgP3B,CAAC"}
1
+ {"version":3,"file":"date-field.styles.d.ts","sourceRoot":"","sources":["../../../../src/components/inputs/date-field/date-field.styles.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,eAAe,yBA+O3B,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { css, unsafeCSS } from 'lit';
2
- import { inheritedTextReset } from '../../../assets/styles/style-resets.js';
2
+ import { inheritedTextReset } from '../../../assets/styles/shadow-resets.js';
3
3
  import { breakpoints } from '../../../assets/styles/breakpoints.js';
4
4
  const mdMin = unsafeCSS(breakpoints.mdMin);
5
5
  export const dateFieldStyles = css `
@@ -87,7 +87,6 @@ export const dateFieldStyles = css `
87
87
  border-radius: var(--_corner-radius);
88
88
  background-color: var(--_background-color);
89
89
  min-height: var(--_min-size);
90
- overflow: hidden;
91
90
  padding-left: calc(var(--_inline-padding) - var(--semantics-input-fields-border-width));
92
91
  flex-direction: row;
93
92
  align-items: center;
@@ -1 +1 @@
1
- {"version":3,"file":"date-field.styles.js","sourceRoot":"","sources":["../../../../src/components/inputs/date-field/date-field.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AACrC,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAC5E,OAAO,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC;AAEpE,MAAM,KAAK,GAAG,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;AAE3C,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAsC9B,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAqMA,KAAK;;;;;CAK1B,CAAC"}
1
+ {"version":3,"file":"date-field.styles.js","sourceRoot":"","sources":["../../../../src/components/inputs/date-field/date-field.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AACrC,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAC7E,OAAO,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC;AAEpE,MAAM,KAAK,GAAG,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;AAE3C,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAsC9B,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAoMA,KAAK;;;;;CAK1B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"date-field.template.d.ts","sourceRoot":"","sources":["../../../../src/components/inputs/date-field/date-field.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,cAAc,EAAE,MAAM,KAAK,CAAC;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,4CAA4C,CAAC;AACpD,OAAO,8BAA8B,CAAC;AACtC,OAAO,mCAAmC,CAAC;AAC3C,OAAO,uCAAuC,CAAC;AAC/C,OAAO,mDAAmD,CAAC;AAC3D,OAAO,iCAAiC,CAAC;AAEzC;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,qFAAqF,CAAC;AA4GvH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,aAAa,GAAG,cAAc,CAqB1E"}
1
+ {"version":3,"file":"date-field.template.d.ts","sourceRoot":"","sources":["../../../../src/components/inputs/date-field/date-field.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,cAAc,EAAE,MAAM,KAAK,CAAC;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,4CAA4C,CAAC;AACpD,OAAO,8BAA8B,CAAC;AACtC,OAAO,mCAAmC,CAAC;AAC3C,OAAO,uCAAuC,CAAC;AAC/C,OAAO,mDAAmD,CAAC;AAC3D,OAAO,iCAAiC,CAAC;AAEzC;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,qFAAqF,CAAC;AAkHvH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,aAAa,GAAG,cAAc,CAqB1E"}
@@ -37,6 +37,11 @@ function renderValidationIcon(component) {
37
37
  * The native one could not be closed in Safari: it ties dismissal to the input,
38
38
  * and that input has to be invisible for the button beside it to be the only
39
39
  * control.
40
+ *
41
+ * It hangs off the trigger, which sits at the end of the field, so bottom-start
42
+ * would run the calendar out to the right and leave it barely touching the field
43
+ * it belongs to. bottom-end lands it under the input instead; against the left
44
+ * edge of the screen Floating UI falls back to opening rightward on its own.
40
45
  */
41
46
  function renderPicker(component) {
42
47
  if (component.noPicker)
@@ -55,6 +60,7 @@ function renderPicker(component) {
55
60
  ></nldd-icon-button>
56
61
  <nldd-popover
57
62
  accessible-label=${component._pickerLabel}
63
+ placement="bottom-end"
58
64
  width=${component._pickerPopoverWidth}
59
65
  @toggle=${component._handlePopoverToggle}
60
66
  >
@@ -1 +1 @@
1
- {"version":3,"file":"date-field.template.js","sourceRoot":"","sources":["../../../../src/components/inputs/date-field/date-field.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAkB,MAAM,KAAK,CAAC;AAEpD,OAAO,4CAA4C,CAAC;AACpD,OAAO,8BAA8B,CAAC;AACtC,OAAO,mCAAmC,CAAC;AAC3C,OAAO,uCAAuC,CAAC;AAC/C,OAAO,mDAAmD,CAAC;AAC3D,OAAO,iCAAiC,CAAC;AAEzC;;;;;GAKG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,kFAAkF,CAAC;AAEvH,kFAAkF;AAClF,SAAS,oBAAoB,CAAC,SAAwB;IACrD,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC9E,IAAI,CAAC,IAAI;QAAE,OAAO,OAAO,CAAC;IAC1B,OAAO,IAAI,CAAA;;;;YAIA,IAAI;;;;;EAKd,CAAC;AACH,CAAC;AAED;;;2DAG2D;AAE3D;;;;;GAKG;AACH,SAAS,YAAY,CAAC,SAAwB;IAC7C,IAAI,SAAS,CAAC,QAAQ;QAAE,OAAO,OAAO,CAAC;IACvC,MAAM,UAAU,GAAG,SAAS,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IACzD,OAAO,IAAI,CAAA;;;;WAID,UAAU;;WAEV,SAAS,CAAC,EAAE,CAAC,2CAA2C,CAAC;;gBAEpD,SAAS,CAAC,QAAQ,IAAI,SAAS,CAAC,QAAQ;aAC3C,SAAS,CAAC,kBAAkB;;;uBAGlB,SAAS,CAAC,YAAY;YACjC,SAAS,CAAC,mBAAmB;cAC3B,SAAS,CAAC,oBAAoB;;;YAGhC,SAAS,CAAC,YAAY;oBACd,SAAS,CAAC,EAAE,CAAC,qCAAqC,CAAC;gBACvD,SAAS,CAAC,oBAAoB;;;eAG/B,SAAS,CAAC,mBAAmB;;;oBAGxB,SAAS,CAAC,uBAAuB;;OAE9C,SAAS,CAAC,iBAAiB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAA;;;gBAGnC,SAAS,CAAC,KAAK;eAChB,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO;eACzD,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO;aAChE,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO;aAC5D,SAAS,CAAC,GAAG,IAAI,OAAO;aACxB,SAAS,CAAC,GAAG,IAAI,OAAO;;MAE/B;;;;EAIJ,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,WAAW,CAAC,SAAwB,EAAE,GAAY;IAC1D,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK;QAC5B,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,CAAC,GAAG;gBACzC,CAAC,CAAC,gDAAgD;gBAClD,CAAC,CAAC,kDAAkD,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QAClE,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC;IACzB,OAAO,IAAI,CAAA;;QAEJ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO;;;YAG3C,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC,aAAa;iBACrD,SAAS,CAAC,WAAW,IAAI,OAAO;eAClC,SAAS,CAAC,QAAQ;eAClB,SAAS,CAAC,QAAQ;eAClB,SAAS,CAAC,QAAQ;kBACf,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,YAAY,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO;gBACtD,KAAK,IAAI,OAAO;sBACV,SAAS,CAAC,eAAe,IAAI,OAAO;kBACxC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;cACxC,CAAC,CAAgB,EAAE,EAAE,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC,EAAE,GAAG,CAAC;YAC7D,CAAC,CAAQ,EAAE,EAAE,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,EAAE,GAAG,CAAC;aAC3C,CAAC,CAAQ,EAAE,EAAE,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,EAAE,GAAG,CAAC;;EAExD,CAAC;AACH,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,SAAwB;IACzD,OAAO,IAAI,CAAA;;UAEF,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO;gBAC7B,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO;eAClD,SAAS,CAAC,gBAAgB;;KAEpC,WAAW,CAAC,SAAS,EAAE,KAAK,CAAC;KAC7B,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA;;;;OAIpB,SAAS,CAAC,EAAE,CAAC,sDAAsD,CAAC;;MAErE,WAAW,CAAC,SAAS,EAAE,IAAI,CAAC;IAC9B,CAAC,CAAC,CAAC,OAAO;;KAET,oBAAoB,CAAC,SAAS,CAAC;KAC/B,YAAY,CAAC,SAAS,CAAC;;EAE1B,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"date-field.template.js","sourceRoot":"","sources":["../../../../src/components/inputs/date-field/date-field.template.ts"],"names":[],"mappings":"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"}
@@ -35,6 +35,7 @@ declare const NLDDDatePicker_base: (abstract new (...args: any[]) => LitElement
35
35
  'components.date-picker.view-previous-month-action': string;
36
36
  'components.date-picker.view-next-month-action': string;
37
37
  'components.date-picker.view-today-action': string;
38
+ 'components.date-picker.choose-month-action': string;
38
39
  'components.date-picker.choose-year-action': string;
39
40
  'components.date-picker.january-lowercase': string;
40
41
  'components.date-picker.january-capitalize': string;
@@ -89,7 +90,7 @@ declare const NLDDDatePicker_base: (abstract new (...args: any[]) => LitElement
89
90
  'components.date-picker.range-selected-text': string;
90
91
  'components.date-picker.range-blocked-text': string;
91
92
  }>;
92
- _t(key: "components.date-picker.view-previous-month-action" | "components.date-picker.view-next-month-action" | "components.date-picker.view-today-action" | "components.date-picker.choose-year-action" | "components.date-picker.january-lowercase" | "components.date-picker.january-capitalize" | "components.date-picker.february-lowercase" | "components.date-picker.february-capitalize" | "components.date-picker.march-lowercase" | "components.date-picker.march-capitalize" | "components.date-picker.april-lowercase" | "components.date-picker.april-capitalize" | "components.date-picker.may-lowercase" | "components.date-picker.may-capitalize" | "components.date-picker.june-lowercase" | "components.date-picker.june-capitalize" | "components.date-picker.july-lowercase" | "components.date-picker.july-capitalize" | "components.date-picker.august-lowercase" | "components.date-picker.august-capitalize" | "components.date-picker.september-lowercase" | "components.date-picker.september-capitalize" | "components.date-picker.october-lowercase" | "components.date-picker.october-capitalize" | "components.date-picker.november-lowercase" | "components.date-picker.november-capitalize" | "components.date-picker.december-lowercase" | "components.date-picker.december-capitalize" | "components.date-picker.sunday-lowercase" | "components.date-picker.monday-lowercase" | "components.date-picker.tuesday-lowercase" | "components.date-picker.wednesday-lowercase" | "components.date-picker.thursday-lowercase" | "components.date-picker.friday-lowercase" | "components.date-picker.saturday-lowercase" | "components.date-picker.sunday-short-lowercase" | "components.date-picker.monday-short-lowercase" | "components.date-picker.tuesday-short-lowercase" | "components.date-picker.wednesday-short-lowercase" | "components.date-picker.thursday-short-lowercase" | "components.date-picker.friday-short-lowercase" | "components.date-picker.saturday-short-lowercase" | "components.date-picker.week-number-column-label" | "components.date-picker.week-number-column-short-label" | "components.date-picker.week-number-label" | "components.date-picker.date-label" | "components.date-picker.today-lowercase" | "components.date-picker.unavailable-lowercase-label" | "components.date-picker.range-anchor-lowercase-label" | "components.date-picker.range-start-lowercase-label" | "components.date-picker.range-end-lowercase-label" | "components.date-picker.in-range-lowercase-label" | "components.date-picker.date-selected-text" | "components.date-picker.range-anchor-text" | "components.date-picker.range-selected-text" | "components.date-picker.range-blocked-text", vars?: Record<string, string | number>): string;
93
+ _t(key: "components.date-picker.view-previous-month-action" | "components.date-picker.view-next-month-action" | "components.date-picker.view-today-action" | "components.date-picker.choose-month-action" | "components.date-picker.choose-year-action" | "components.date-picker.january-lowercase" | "components.date-picker.january-capitalize" | "components.date-picker.february-lowercase" | "components.date-picker.february-capitalize" | "components.date-picker.march-lowercase" | "components.date-picker.march-capitalize" | "components.date-picker.april-lowercase" | "components.date-picker.april-capitalize" | "components.date-picker.may-lowercase" | "components.date-picker.may-capitalize" | "components.date-picker.june-lowercase" | "components.date-picker.june-capitalize" | "components.date-picker.july-lowercase" | "components.date-picker.july-capitalize" | "components.date-picker.august-lowercase" | "components.date-picker.august-capitalize" | "components.date-picker.september-lowercase" | "components.date-picker.september-capitalize" | "components.date-picker.october-lowercase" | "components.date-picker.october-capitalize" | "components.date-picker.november-lowercase" | "components.date-picker.november-capitalize" | "components.date-picker.december-lowercase" | "components.date-picker.december-capitalize" | "components.date-picker.sunday-lowercase" | "components.date-picker.monday-lowercase" | "components.date-picker.tuesday-lowercase" | "components.date-picker.wednesday-lowercase" | "components.date-picker.thursday-lowercase" | "components.date-picker.friday-lowercase" | "components.date-picker.saturday-lowercase" | "components.date-picker.sunday-short-lowercase" | "components.date-picker.monday-short-lowercase" | "components.date-picker.tuesday-short-lowercase" | "components.date-picker.wednesday-short-lowercase" | "components.date-picker.thursday-short-lowercase" | "components.date-picker.friday-short-lowercase" | "components.date-picker.saturday-short-lowercase" | "components.date-picker.week-number-column-label" | "components.date-picker.week-number-column-short-label" | "components.date-picker.week-number-label" | "components.date-picker.date-label" | "components.date-picker.today-lowercase" | "components.date-picker.unavailable-lowercase-label" | "components.date-picker.range-anchor-lowercase-label" | "components.date-picker.range-start-lowercase-label" | "components.date-picker.range-end-lowercase-label" | "components.date-picker.in-range-lowercase-label" | "components.date-picker.date-selected-text" | "components.date-picker.range-anchor-text" | "components.date-picker.range-selected-text" | "components.date-picker.range-blocked-text", vars?: Record<string, string | number>): string;
93
94
  }) & typeof LitElement;
94
95
  export declare class NLDDDatePicker extends NLDDDatePicker_base {
95
96
  static styles: import("lit").CSSResult;
@@ -115,6 +116,7 @@ export declare class NLDDDatePicker extends NLDDDatePicker_base {
115
116
  /** Pointer preview of the range being drawn. Visual only - never announced. */
116
117
  _hover: string;
117
118
  _announcement: string;
119
+ _monthMenuOpen: boolean;
118
120
  _yearMenuOpen: boolean;
119
121
  /**
120
122
  * Stacked layout: the paging controls move below the grid and grow to md. Not
@@ -130,7 +132,9 @@ export declare class NLDDDatePicker extends NLDDDatePicker_base {
130
132
  _stacked: boolean;
131
133
  private _stackedQuery?;
132
134
  private _handleStackedChange;
135
+ _handleMonthMenuToggle(e: Event): Promise<void>;
133
136
  _handleYearMenuToggle(e: Event): Promise<void>;
137
+ private _openMenuOnSelection;
134
138
  /** Set when the keyboard moved focus, so only then is focus pulled to a cell. */
135
139
  private _restoreFocus;
136
140
  connectedCallback(): void;
@@ -173,19 +177,36 @@ export declare class NLDDDatePicker extends NLDDDatePicker_base {
173
177
  _weekNumber(week: string[]): number;
174
178
  get _viewYear(): number;
175
179
  get _viewMonth(): number;
180
+ /**
181
+ * Months offered in the title menu, bounded by min and max the way the year
182
+ * list is. Without this the menu lists twelve months while a bound quietly
183
+ * clamps eleven of them back to the one you were already on.
184
+ *
185
+ * The arrows page the view past a bound (only the focused day is clamped), so
186
+ * the month on screen is not necessarily one you can choose. It is left out
187
+ * when it falls outside, and the menu then shows no selection - which is the
188
+ * truth: you are looking at a month this calendar will not accept.
189
+ */
190
+ get _months(): number[];
176
191
  /**
177
192
  * Years offered in the title menu. Bounded by min and max where they are set,
178
193
  * because those already say which years can be reached; without them a window
179
194
  * wide enough for a birthdate on one side and for planning on the other.
180
195
  */
181
196
  get _years(): number[];
197
+ _handleMonthSelect(month: number): void;
182
198
  _handleYearSelect(year: number): void;
199
+ /**
200
+ * Radio items keep their menu open, which is right when you are ticking
201
+ * several - but here one month or one year is the whole answer.
202
+ */
203
+ private _closeMenu;
183
204
  /**
184
205
  * Dutch writes month names in lower case, so the capital here is the ordinary
185
206
  * sentence-initial one of a heading, not a proper noun. The translation itself
186
207
  * stays lower case because it is reused mid-sentence in the day labels.
187
208
  */
188
- get _title(): string;
209
+ get _monthLabel(): string;
189
210
  _isSelected(iso: string): boolean;
190
211
  /**
191
212
  * How the range band runs through this day. Derived from one span so the
@@ -1 +1 @@
1
- {"version":3,"file":"date-picker.d.ts","sourceRoot":"","sources":["../../../../src/components/inputs/date-picker/date-picker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,EAAE,UAAU,EAAE,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAUtD,OAAO,4CAA4C,CAAC;AACpD,OAAO,kCAAkC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2E1C,qBACa,cAAe,SAAQ,mBAGnC;IACA,OAAgB,MAAM,0BAAoB;IAG1C,KAAK,SAAM;IAGX,KAAK,SAAM;IAGX,GAAG,SAAM;IAET,sFAAsF;IAEtF,KAAK,SAAM;IAGX,KAAK,UAAS;IAGd,GAAG,SAAM;IAGT,GAAG,SAAM;IAGT,cAAc,SAAK;IAGnB,WAAW,UAAS;IAGpB,eAAe,SAAM;IAErB,yFAAyF;IAEzF,iBAAiB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;IAE7C,6CAA6C;IAE7C,QAAQ,SAAM;IAEd,oCAAoC;IAEpC,KAAK,SAAM;IAEX,gEAAgE;IAEhE,OAAO,SAAM;IAEb,+EAA+E;IAE/E,MAAM,SAAM;IAGZ,aAAa,SAAM;IAGnB,aAAa,UAAS;IAEtB;;;;;;;;;;OAUG;IAEH,QAAQ,UAAS;IAEjB,OAAO,CAAC,aAAa,CAAC,CAAiB;IAEvC,OAAO,CAAC,oBAAoB,CAE1B;IAEW,qBAAqB,CAAC,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;IA4B3D,iFAAiF;IACjF,OAAO,CAAC,aAAa,CAAS;IAErB,iBAAiB,IAAI,IAAI;IASzB,oBAAoB,IAAI,IAAI;IAM5B,UAAU,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI;IAczC,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI;IAoC/C,OAAO,CAAC,YAAY;IAIpB;;;;;OAKG;IACM,KAAK,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG,IAAI;IAM5C,OAAO,CAAC,aAAa;IAOrB,IAAW,IAAI,IAAI,MAAM,CAExB;IAED,IAAW,IAAI,IAAI,MAAM,CAExB;IAED,qFAAqF;IAC9E,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAMpC,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAO3C,qEAAqE;IACrE,IAAW,SAAS,IAAI,MAAM,EAAE,CAE/B;IAED;;;;;;;;;OASG;IACH,IAAW,MAAM,IAAI,MAAM,EAAE,EAAE,CAK9B;IAEM,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAI5C;;;;OAIG;IACI,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM;IAS1C,IAAW,SAAS,IAAI,MAAM,CAE7B;IAED,IAAW,UAAU,IAAI,MAAM,CAE9B;IAED;;;;OAIG;IACH,IAAW,MAAM,IAAI,MAAM,EAAE,CAS5B;IAEM,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAU5C;;;;OAIG;IACH,IAAW,MAAM,IAAI,MAAM,CAG1B;IAIM,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAUxC;;;;;OAKG;IACI,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK;IAU/D,8EAA8E;IACvE,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIvC,OAAO,CAAC,YAAY;IAQb,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIrC;;;;;OAKG;IACI,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAa9B,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAmB9B,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAUvC,OAAO,CAAC,UAAU;IAYX,cAAc,CAAC,CAAC,EAAE,aAAa,GAAG,IAAI;IA0BtC,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAUlC,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAIzC;;;;;;;;OAQG;IACH,mEAAmE;IACnE,OAAO,CAAC,kBAAkB,CAAS;IAE5B,iBAAiB,CAAC,CAAC,EAAE,UAAU,GAAG,IAAI;IAMtC,kBAAkB,CAAC,CAAC,EAAE,UAAU,GAAG,IAAI;IAIvC,gBAAgB,IAAI,IAAI;IAO/B,sEAAsE;IACtE,OAAO,CAAC,WAAW,CAAM;IAEzB,8DAA8D;IAC9D,OAAO,CAAC,QAAQ,CAAS;IAEzB,OAAO,CAAC,cAAc,CAAS;IAE/B;;;;;OAKG;IACI,qBAAqB,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,YAAY,GAAG,IAAI;IAazD,sBAAsB,CAAC,CAAC,EAAE,YAAY,GAAG,IAAI;IAapD,OAAO,CAAC,gBAAgB;IAKxB,OAAO,CAAC,oBAAoB,CAgB1B;IAEF,OAAO,CAAC,OAAO;IA4Bf;6EACyE;IACzE,OAAO,CAAC,oBAAoB;IAQ5B,OAAO,CAAC,YAAY;IAoBpB,OAAO,CAAC,WAAW;IASnB,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,KAAK;IAIb;;;;OAIG;IACH,IAAW,eAAe,IAAI,OAAO,CAEpC;IAED;;;;OAIG;IACI,YAAY,IAAI,IAAI;IAOlB,MAAM;CAGf;AAED,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,qBAAqB;QAC9B,kBAAkB,EAAE,cAAc,CAAC;KACnC;CACD"}
1
+ {"version":3,"file":"date-picker.d.ts","sourceRoot":"","sources":["../../../../src/components/inputs/date-picker/date-picker.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@ export declare const nlddDatePickerTranslations: {
6
6
  'components.date-picker.view-previous-month-action': string;
7
7
  'components.date-picker.view-next-month-action': string;
8
8
  'components.date-picker.view-today-action': string;
9
+ 'components.date-picker.choose-month-action': string;
9
10
  'components.date-picker.choose-year-action': string;
10
11
  'components.date-picker.january-lowercase': string;
11
12
  'components.date-picker.january-capitalize': string;
@@ -1 +1 @@
1
- {"version":3,"file":"date-picker.i18n.d.ts","sourceRoot":"","sources":["../../../../src/components/inputs/date-picker/date-picker.i18n.ts"],"names":[],"mappings":"AAAA,+CAA+C;AAC/C,eAAO,MAAM,YAAY,yFAA0F,CAAC;AAEpH,kDAAkD;AAClD,eAAO,MAAM,UAAU,qIAAsI,CAAC;AAE9J,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkFtC,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG,OAAO,0BAA0B,CAAC"}
1
+ {"version":3,"file":"date-picker.i18n.d.ts","sourceRoot":"","sources":["../../../../src/components/inputs/date-picker/date-picker.i18n.ts"],"names":[],"mappings":"AAAA,+CAA+C;AAC/C,eAAO,MAAM,YAAY,yFAA0F,CAAC;AAEpH,kDAAkD;AAClD,eAAO,MAAM,UAAU,qIAAsI,CAAC;AAE9J,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmFtC,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG,OAAO,0BAA0B,CAAC"}
@@ -7,6 +7,7 @@ export const nlddDatePickerTranslations = {
7
7
  'components.date-picker.view-previous-month-action': 'Vorige maand',
8
8
  'components.date-picker.view-next-month-action': 'Volgende maand',
9
9
  'components.date-picker.view-today-action': 'Vandaag',
10
+ 'components.date-picker.choose-month-action': 'Kies een maand',
10
11
  'components.date-picker.choose-year-action': 'Kies een jaar',
11
12
  // Twee vormen, want de maandnaam staat zowel midden in een datumlabel
12
13
  // ("maandag 29 juni 2026") als los in de kop erboven. Welke vorm waar hoort is
@@ -1 +1 @@
1
- {"version":3,"file":"date-picker.i18n.js","sourceRoot":"","sources":["../../../../src/components/inputs/date-picker/date-picker.i18n.ts"],"names":[],"mappings":"AAAA,+CAA+C;AAC/C,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,CAAU,CAAC;AAEpH,kDAAkD;AAClD,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,CAAU,CAAC;AAE9J,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACzC,iDAAiD;IACjD,mDAAmD,EAAE,cAAc;IACnE,+CAA+C,EAAE,gBAAgB;IACjE,0CAA0C,EAAE,SAAS;IACrD,2CAA2C,EAAE,eAAe;IAE5D,sEAAsE;IACtE,+EAA+E;IAC/E,2EAA2E;IAC3E,0CAA0C,EAAE,SAAS;IACrD,2CAA2C,EAAE,SAAS;IACtD,2CAA2C,EAAE,UAAU;IACvD,4CAA4C,EAAE,UAAU;IACxD,wCAAwC,EAAE,OAAO;IACjD,yCAAyC,EAAE,OAAO;IAClD,wCAAwC,EAAE,OAAO;IACjD,yCAAyC,EAAE,OAAO;IAClD,sCAAsC,EAAE,KAAK;IAC7C,uCAAuC,EAAE,KAAK;IAC9C,uCAAuC,EAAE,MAAM;IAC/C,wCAAwC,EAAE,MAAM;IAChD,uCAAuC,EAAE,MAAM;IAC/C,wCAAwC,EAAE,MAAM;IAChD,yCAAyC,EAAE,UAAU;IACrD,0CAA0C,EAAE,UAAU;IACtD,4CAA4C,EAAE,WAAW;IACzD,6CAA6C,EAAE,WAAW;IAC1D,0CAA0C,EAAE,SAAS;IACrD,2CAA2C,EAAE,SAAS;IACtD,2CAA2C,EAAE,UAAU;IACvD,4CAA4C,EAAE,UAAU;IACxD,2CAA2C,EAAE,UAAU;IACvD,4CAA4C,EAAE,UAAU;IAExD,yCAAyC,EAAE,QAAQ;IACnD,yCAAyC,EAAE,SAAS;IACpD,0CAA0C,EAAE,SAAS;IACrD,4CAA4C,EAAE,UAAU;IACxD,2CAA2C,EAAE,WAAW;IACxD,yCAAyC,EAAE,SAAS;IACpD,2CAA2C,EAAE,UAAU;IAEvD,+CAA+C,EAAE,IAAI;IACrD,+CAA+C,EAAE,IAAI;IACrD,gDAAgD,EAAE,IAAI;IACtD,kDAAkD,EAAE,IAAI;IACxD,iDAAiD,EAAE,IAAI;IACvD,+CAA+C,EAAE,IAAI;IACrD,iDAAiD,EAAE,IAAI;IAEvD,0EAA0E;IAC1E,gBAAgB;IAChB,iDAAiD,EAAE,YAAY;IAC/D,uDAAuD,EAAE,IAAI;IAC7D,0CAA0C,EAAE,aAAa;IAEzD,oEAAoE;IACpE,wEAAwE;IACxE,0EAA0E;IAC1E,mCAAmC,EAAE,gCAAgC;IAErE,6EAA6E;IAC7E,0EAA0E;IAC1E,wCAAwC,EAAE,SAAS;IACnD,oDAAoD,EAAE,kBAAkB;IACxE,2EAA2E;IAC3E,6EAA6E;IAC7E,qDAAqD,EAAE,oCAAoC;IAC3F,oDAAoD,EAAE,sBAAsB;IAC5E,kDAAkD,EAAE,sBAAsB;IAC1E,iDAAiD,EAAE,eAAe;IAElE,wEAAwE;IACxE,gFAAgF;IAChF,0EAA0E;IAC1E,2CAA2C,EAAE,uBAAuB;IACpE,uEAAuE;IACvE,sDAAsD;IACtD,0CAA0C,EAAE,kEAAkE;IAC9G,4CAA4C,EAAE,yCAAyC;IACvF,2CAA2C,EAAE,uEAAuE;CACpH,CAAC"}
1
+ {"version":3,"file":"date-picker.i18n.js","sourceRoot":"","sources":["../../../../src/components/inputs/date-picker/date-picker.i18n.ts"],"names":[],"mappings":"AAAA,+CAA+C;AAC/C,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,CAAU,CAAC;AAEpH,kDAAkD;AAClD,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,CAAU,CAAC;AAE9J,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACzC,iDAAiD;IACjD,mDAAmD,EAAE,cAAc;IACnE,+CAA+C,EAAE,gBAAgB;IACjE,0CAA0C,EAAE,SAAS;IACrD,4CAA4C,EAAE,gBAAgB;IAC9D,2CAA2C,EAAE,eAAe;IAE5D,sEAAsE;IACtE,+EAA+E;IAC/E,2EAA2E;IAC3E,0CAA0C,EAAE,SAAS;IACrD,2CAA2C,EAAE,SAAS;IACtD,2CAA2C,EAAE,UAAU;IACvD,4CAA4C,EAAE,UAAU;IACxD,wCAAwC,EAAE,OAAO;IACjD,yCAAyC,EAAE,OAAO;IAClD,wCAAwC,EAAE,OAAO;IACjD,yCAAyC,EAAE,OAAO;IAClD,sCAAsC,EAAE,KAAK;IAC7C,uCAAuC,EAAE,KAAK;IAC9C,uCAAuC,EAAE,MAAM;IAC/C,wCAAwC,EAAE,MAAM;IAChD,uCAAuC,EAAE,MAAM;IAC/C,wCAAwC,EAAE,MAAM;IAChD,yCAAyC,EAAE,UAAU;IACrD,0CAA0C,EAAE,UAAU;IACtD,4CAA4C,EAAE,WAAW;IACzD,6CAA6C,EAAE,WAAW;IAC1D,0CAA0C,EAAE,SAAS;IACrD,2CAA2C,EAAE,SAAS;IACtD,2CAA2C,EAAE,UAAU;IACvD,4CAA4C,EAAE,UAAU;IACxD,2CAA2C,EAAE,UAAU;IACvD,4CAA4C,EAAE,UAAU;IAExD,yCAAyC,EAAE,QAAQ;IACnD,yCAAyC,EAAE,SAAS;IACpD,0CAA0C,EAAE,SAAS;IACrD,4CAA4C,EAAE,UAAU;IACxD,2CAA2C,EAAE,WAAW;IACxD,yCAAyC,EAAE,SAAS;IACpD,2CAA2C,EAAE,UAAU;IAEvD,+CAA+C,EAAE,IAAI;IACrD,+CAA+C,EAAE,IAAI;IACrD,gDAAgD,EAAE,IAAI;IACtD,kDAAkD,EAAE,IAAI;IACxD,iDAAiD,EAAE,IAAI;IACvD,+CAA+C,EAAE,IAAI;IACrD,iDAAiD,EAAE,IAAI;IAEvD,0EAA0E;IAC1E,gBAAgB;IAChB,iDAAiD,EAAE,YAAY;IAC/D,uDAAuD,EAAE,IAAI;IAC7D,0CAA0C,EAAE,aAAa;IAEzD,oEAAoE;IACpE,wEAAwE;IACxE,0EAA0E;IAC1E,mCAAmC,EAAE,gCAAgC;IAErE,6EAA6E;IAC7E,0EAA0E;IAC1E,wCAAwC,EAAE,SAAS;IACnD,oDAAoD,EAAE,kBAAkB;IACxE,2EAA2E;IAC3E,6EAA6E;IAC7E,qDAAqD,EAAE,oCAAoC;IAC3F,oDAAoD,EAAE,sBAAsB;IAC5E,kDAAkD,EAAE,sBAAsB;IAC1E,iDAAiD,EAAE,eAAe;IAElE,wEAAwE;IACxE,gFAAgF;IAChF,0EAA0E;IAC1E,2CAA2C,EAAE,uBAAuB;IACpE,uEAAuE;IACvE,sDAAsD;IACtD,0CAA0C,EAAE,kEAAkE;IAC9G,4CAA4C,EAAE,yCAAyC;IACvF,2CAA2C,EAAE,uEAAuE;CACpH,CAAC"}
@@ -105,6 +105,14 @@ function withYear(iso, year) {
105
105
  const lastDay = new Date(Date.UTC(year, month, 0)).getUTCDate();
106
106
  return toIso(year, month, Math.min(day, lastDay)) ?? iso;
107
107
  }
108
+ function withMonth(iso, month) {
109
+ const year = Number(iso.slice(0, 4));
110
+ const day = Number(iso.slice(8, 10));
111
+ // 31 January to February keeps the day it can reach, the same way withYear
112
+ // handles 29 February in a common year.
113
+ const lastDay = new Date(Date.UTC(year, month, 0)).getUTCDate();
114
+ return toIso(year, month, Math.min(day, lastDay)) ?? iso;
115
+ }
108
116
  function clampIso(iso, min, max) {
109
117
  if (min && iso < min)
110
118
  return min;
@@ -135,6 +143,7 @@ let NLDDDatePicker = class NLDDDatePicker extends withTranslations(LitElement, n
135
143
  /** Pointer preview of the range being drawn. Visual only - never announced. */
136
144
  this._hover = '';
137
145
  this._announcement = '';
146
+ this._monthMenuOpen = false;
138
147
  this._yearMenuOpen = false;
139
148
  /**
140
149
  * Stacked layout: the paging controls move below the grid and grow to md. Not
@@ -189,19 +198,27 @@ let NLDDDatePicker = class NLDDDatePicker extends withTranslations(LitElement, n
189
198
  this._commitRange(origin, iso);
190
199
  };
191
200
  }
201
+ async _handleMonthMenuToggle(e) {
202
+ this._monthMenuOpen = e.newState === 'open';
203
+ if (this._monthMenuOpen)
204
+ await this._openMenuOnSelection('.date-picker__month-menu');
205
+ }
192
206
  async _handleYearMenuToggle(e) {
193
207
  this._yearMenuOpen = e.newState === 'open';
194
- if (!this._yearMenuOpen)
195
- return;
208
+ if (this._yearMenuOpen)
209
+ await this._openMenuOnSelection('.date-picker__year-menu');
210
+ }
211
+ async _openMenuOnSelection(selector) {
196
212
  // The menu sets its own focus after its update resolves, so waiting for that
197
213
  // first is what keeps it from overwriting the line below.
198
- const menu = this.shadowRoot?.querySelector('nldd-menu');
214
+ const menu = this.shadowRoot?.querySelector(selector);
199
215
  await menu?.updateComplete;
200
- // The list runs to a hundred years or more, and the menu starts on its first
201
- // item - so an arrow key walks a century back from the year you are actually
202
- // looking at. Move to the year in view instead, and scroll it into sight.
216
+ // The year list runs to a hundred years or more, and the menu starts on its
217
+ // first item - so an arrow key walks a century back from the year you are
218
+ // actually looking at. Move to the entry in view instead, and scroll it into
219
+ // sight. The month list is shorter but wants the same behaviour.
203
220
  const focusSelected = () => {
204
- const selected = this.shadowRoot?.querySelector('nldd-menu-item[selected]');
221
+ const selected = menu?.querySelector('nldd-menu-item[selected]');
205
222
  if (!selected || this.shadowRoot?.activeElement === selected)
206
223
  return;
207
224
  // Both of these scroll every scrollable ancestor by default, and the page
@@ -271,9 +288,11 @@ let NLDDDatePicker = class NLDDDatePicker extends withTranslations(LitElement, n
271
288
  // link to the anchor component - nldd-button sets that up via `expandable` -
272
289
  // which a plain button does not do, so without this the title never opens
273
290
  // anything.
274
- const menu = this.shadowRoot?.querySelector('nldd-menu');
275
- const title = this.shadowRoot?.querySelector('.date-picker__title-button');
276
- if (menu && title) {
291
+ for (const part of ['month', 'year']) {
292
+ const menu = this.shadowRoot?.querySelector(`.date-picker__${part}-menu`);
293
+ const title = this.shadowRoot?.querySelector(`.date-picker__title-${part}-button`);
294
+ if (!menu || !title)
295
+ continue;
277
296
  if (menu.anchorElement !== title)
278
297
  menu.anchorElement = title;
279
298
  if (title.popoverTargetElement !== menu)
@@ -365,6 +384,32 @@ let NLDDDatePicker = class NLDDDatePicker extends withTranslations(LitElement, n
365
384
  get _viewMonth() {
366
385
  return Number(this._view.slice(5, 7));
367
386
  }
387
+ /**
388
+ * Months offered in the title menu, bounded by min and max the way the year
389
+ * list is. Without this the menu lists twelve months while a bound quietly
390
+ * clamps eleven of them back to the one you were already on.
391
+ *
392
+ * The arrows page the view past a bound (only the focused day is clamped), so
393
+ * the month on screen is not necessarily one you can choose. It is left out
394
+ * when it falls outside, and the menu then shows no selection - which is the
395
+ * truth: you are looking at a month this calendar will not accept.
396
+ */
397
+ get _months() {
398
+ const minYear = this._min ? Number(this._min.slice(0, 4)) : null;
399
+ const maxYear = this._max ? Number(this._max.slice(0, 4)) : null;
400
+ // Paged a whole year past a bound: no month of this view year is
401
+ // choosable, so there is nothing to offer. Comparing only the month
402
+ // numbers here would fall back to all twelve, one falsely selected.
403
+ if (minYear !== null && this._viewYear < minYear)
404
+ return [];
405
+ if (maxYear !== null && this._viewYear > maxYear)
406
+ return [];
407
+ const first = minYear === this._viewYear ? Number(this._min.slice(5, 7)) : 1;
408
+ const last = maxYear === this._viewYear ? Number(this._max.slice(5, 7)) : 12;
409
+ if (last < first)
410
+ return [];
411
+ return Array.from({ length: last - first + 1 }, (_, i) => first + i);
412
+ }
368
413
  /**
369
414
  * Years offered in the title menu. Bounded by min and max where they are set,
370
415
  * because those already say which years can be reached; without them a window
@@ -372,21 +417,33 @@ let NLDDDatePicker = class NLDDDatePicker extends withTranslations(LitElement, n
372
417
  */
373
418
  get _years() {
374
419
  const current = Number(todayIso().slice(0, 4));
375
- let first = this._min ? Number(this._min.slice(0, 4)) : current - 120;
376
- let last = this._max ? Number(this._max.slice(0, 4)) : current + 20;
377
- // The year on screen must always be in the list, or the menu would show no
378
- // selection at all after paging past the edge of the window.
379
- first = Math.min(first, this._viewYear);
380
- last = Math.max(last, this._viewYear);
420
+ // A bound is a hard edge and stays where it is. The default window is an
421
+ // arbitrary one, so it stretches to whatever year the arrows reached rather
422
+ // than leaving the menu without a selection.
423
+ const first = this._min ? Number(this._min.slice(0, 4)) : Math.min(current - 120, this._viewYear);
424
+ const last = this._max ? Number(this._max.slice(0, 4)) : Math.max(current + 20, this._viewYear);
425
+ if (last < first)
426
+ return [];
381
427
  return Array.from({ length: last - first + 1 }, (_, i) => first + i);
382
428
  }
429
+ _handleMonthSelect(month) {
430
+ this._view = firstOfMonth(clampIso(withMonth(this._view, month), this._min, this._max));
431
+ this._focused = clampIso(withMonth(this._focused, month), this._min, this._max);
432
+ this._restoreFocus = Boolean(this._focusedCell());
433
+ this._closeMenu('.date-picker__month-menu');
434
+ }
383
435
  _handleYearSelect(year) {
384
436
  this._view = firstOfMonth(clampIso(withYear(this._view, year), this._min, this._max));
385
437
  this._focused = clampIso(withYear(this._focused, year), this._min, this._max);
386
438
  this._restoreFocus = Boolean(this._focusedCell());
387
- // Radio items keep their menu open, which is right when you are ticking
388
- // several - but here one year is the whole answer.
389
- const menu = this.shadowRoot?.querySelector('nldd-menu');
439
+ this._closeMenu('.date-picker__year-menu');
440
+ }
441
+ /**
442
+ * Radio items keep their menu open, which is right when you are ticking
443
+ * several - but here one month or one year is the whole answer.
444
+ */
445
+ _closeMenu(selector) {
446
+ const menu = this.shadowRoot?.querySelector(selector);
390
447
  if (menu?.matches(':popover-open'))
391
448
  menu.hidePopover?.();
392
449
  }
@@ -395,9 +452,8 @@ let NLDDDatePicker = class NLDDDatePicker extends withTranslations(LitElement, n
395
452
  * sentence-initial one of a heading, not a proper noun. The translation itself
396
453
  * stays lower case because it is reused mid-sentence in the day labels.
397
454
  */
398
- get _title() {
399
- const month = this._t(`components.date-picker.${MONTH_KEYS[this._viewMonth - 1]}-capitalize`);
400
- return `${month} ${this._viewYear}`;
455
+ get _monthLabel() {
456
+ return this._t(`components.date-picker.${MONTH_KEYS[this._viewMonth - 1]}-capitalize`);
401
457
  }
402
458
  // — Cell state ———————————————————————————————————————————————————————————
403
459
  _isSelected(iso) {
@@ -493,10 +549,12 @@ let NLDDDatePicker = class NLDDDatePicker extends withTranslations(LitElement, n
493
549
  const next = addMonths(this._view, months);
494
550
  this._view = next;
495
551
  // Keep the roving tabindex on an equivalent day in the new month so the
496
- // keyboard does not jump back to the 1st on every month change.
552
+ // keyboard does not jump back to the 1st on every month change. Only the
553
+ // tabindex: focus stays on the arrow that was activated, so paging twice
554
+ // is pressing the same control twice. Keyboard paging from inside the
555
+ // grid (PageUp/PageDown) runs through _moveFocus, which does re-focus.
497
556
  const day = Math.min(Number(this._focused.slice(8, 10)), Number(lastOfMonth(next).slice(8, 10)));
498
557
  this._focused = clampIso(`${next.slice(0, 7)}-${String(day).padStart(2, '0')}`, this._min, this._max);
499
- this._restoreFocus = Boolean(this._focusedCell());
500
558
  }
501
559
  _moveFocus(iso) {
502
560
  const target = clampIso(iso, this._min, this._max);
@@ -700,7 +758,6 @@ let NLDDDatePicker = class NLDDDatePicker extends withTranslations(LitElement, n
700
758
  const today = todayIso();
701
759
  this._view = firstOfMonth(today);
702
760
  this._focused = today;
703
- this._restoreFocus = Boolean(this._focusedCell());
704
761
  }
705
762
  render() {
706
763
  return datePickerTemplate(this);
@@ -755,6 +812,9 @@ __decorate([
755
812
  __decorate([
756
813
  state()
757
814
  ], NLDDDatePicker.prototype, "_announcement", void 0);
815
+ __decorate([
816
+ state()
817
+ ], NLDDDatePicker.prototype, "_monthMenuOpen", void 0);
758
818
  __decorate([
759
819
  state()
760
820
  ], NLDDDatePicker.prototype, "_yearMenuOpen", void 0);