@nldd/design-system 0.8.79 → 0.8.82

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 (446) hide show
  1. package/custom-elements.json +2400 -664
  2. package/dist/components/actions/button/button.styles.d.ts.map +1 -1
  3. package/dist/components/actions/button/button.styles.js +4 -1
  4. package/dist/components/actions/button/button.styles.js.map +1 -1
  5. package/dist/components/actions/icon-button/icon-button.styles.d.ts.map +1 -1
  6. package/dist/components/actions/icon-button/icon-button.styles.js +4 -1
  7. package/dist/components/actions/icon-button/icon-button.styles.js.map +1 -1
  8. package/dist/components/actions/menu/menu.d.ts +44 -3
  9. package/dist/components/actions/menu/menu.d.ts.map +1 -1
  10. package/dist/components/actions/menu/menu.js +86 -33
  11. package/dist/components/actions/menu/menu.js.map +1 -1
  12. package/dist/components/actions/menu/menu.template.d.ts +1 -1
  13. package/dist/components/actions/menu/menu.template.d.ts.map +1 -1
  14. package/dist/components/actions/menu/menu.template.js +7 -3
  15. package/dist/components/actions/menu/menu.template.js.map +1 -1
  16. package/dist/components/actions/toolbar/toolbar.d.ts +29 -0
  17. package/dist/components/actions/toolbar/toolbar.d.ts.map +1 -1
  18. package/dist/components/actions/toolbar/toolbar.i18n.d.ts +1 -0
  19. package/dist/components/actions/toolbar/toolbar.i18n.d.ts.map +1 -1
  20. package/dist/components/actions/toolbar/toolbar.i18n.js +1 -0
  21. package/dist/components/actions/toolbar/toolbar.i18n.js.map +1 -1
  22. package/dist/components/actions/toolbar/toolbar.js +74 -0
  23. package/dist/components/actions/toolbar/toolbar.js.map +1 -1
  24. package/dist/components/actions/toolbar/toolbar.styles.d.ts.map +1 -1
  25. package/dist/components/actions/toolbar/toolbar.styles.js +39 -5
  26. package/dist/components/actions/toolbar/toolbar.styles.js.map +1 -1
  27. package/dist/components/actions/toolbar/toolbar.template.d.ts.map +1 -1
  28. package/dist/components/actions/toolbar/toolbar.template.js +19 -1
  29. package/dist/components/actions/toolbar/toolbar.template.js.map +1 -1
  30. package/dist/components/breakpoints-CkxsiRgH.js +10 -0
  31. package/dist/components/components.js +51975 -114
  32. package/dist/components/content/avatar/avatar.d.ts +51 -47
  33. package/dist/components/content/avatar/avatar.d.ts.map +1 -1
  34. package/dist/components/content/avatar/avatar.js +85 -75
  35. package/dist/components/content/avatar/avatar.js.map +1 -1
  36. package/dist/components/content/avatar/avatar.styles.js +2 -2
  37. package/dist/components/content/avatar/avatar.template.d.ts +1 -0
  38. package/dist/components/content/avatar/avatar.template.d.ts.map +1 -1
  39. package/dist/components/content/avatar/avatar.template.js +26 -18
  40. package/dist/components/content/avatar/avatar.template.js.map +1 -1
  41. package/dist/components/content/avatar-group/avatar-group.d.ts +90 -0
  42. package/dist/components/content/avatar-group/avatar-group.d.ts.map +1 -0
  43. package/dist/components/content/avatar-group/avatar-group.i18n.d.ts +6 -0
  44. package/dist/components/content/avatar-group/avatar-group.i18n.d.ts.map +1 -0
  45. package/dist/components/content/avatar-group/avatar-group.i18n.js +5 -0
  46. package/dist/components/content/avatar-group/avatar-group.i18n.js.map +1 -0
  47. package/dist/components/content/avatar-group/avatar-group.js +169 -0
  48. package/dist/components/content/avatar-group/avatar-group.js.map +1 -0
  49. package/dist/components/content/avatar-group/avatar-group.styles.d.ts +2 -0
  50. package/dist/components/content/avatar-group/avatar-group.styles.d.ts.map +1 -0
  51. package/dist/components/content/avatar-group/avatar-group.styles.js +132 -0
  52. package/dist/components/content/avatar-group/avatar-group.styles.js.map +1 -0
  53. package/dist/components/content/avatar-group/avatar-group.template.d.ts +3 -0
  54. package/dist/components/content/avatar-group/avatar-group.template.d.ts.map +1 -0
  55. package/dist/components/content/avatar-group/avatar-group.template.js +50 -0
  56. package/dist/components/content/avatar-group/avatar-group.template.js.map +1 -0
  57. package/dist/components/content/blockquote/blockquote.d.ts +3 -3
  58. package/dist/components/content/blockquote/blockquote.d.ts.map +1 -1
  59. package/dist/components/content/blockquote/blockquote.js +8 -8
  60. package/dist/components/content/blockquote/blockquote.js.map +1 -1
  61. package/dist/components/content/blockquote/blockquote.styles.js +1 -1
  62. package/dist/components/content/blockquote/blockquote.template.js +1 -1
  63. package/dist/components/content/blockquote/blockquote.template.js.map +1 -1
  64. package/dist/components/content/code-viewer/code-viewer.d.ts +4 -4
  65. package/dist/components/content/code-viewer/code-viewer.d.ts.map +1 -1
  66. package/dist/components/content/code-viewer/code-viewer.js +5 -13
  67. package/dist/components/content/code-viewer/code-viewer.js.map +1 -1
  68. package/dist/components/content/code-viewer/code-viewer.styles.js +1 -1
  69. package/dist/components/content/icon/icon-aliases.d.ts.map +1 -1
  70. package/dist/components/content/icon/icon-aliases.js +18 -0
  71. package/dist/components/content/icon/icon-aliases.js.map +1 -1
  72. package/dist/components/content/icon/icon-gallery-status.d.ts.map +1 -1
  73. package/dist/components/content/icon/icon-gallery-status.js +75 -27
  74. package/dist/components/content/icon/icon-gallery-status.js.map +1 -1
  75. package/dist/components/content/icon/icon-registry.d.ts.map +1 -1
  76. package/dist/components/content/icon/icon-registry.js +25 -13
  77. package/dist/components/content/icon/icon-registry.js.map +1 -1
  78. package/dist/components/content/identity/identity.d.ts +71 -0
  79. package/dist/components/content/identity/identity.d.ts.map +1 -0
  80. package/dist/components/content/identity/identity.js +124 -0
  81. package/dist/components/content/identity/identity.js.map +1 -0
  82. package/dist/components/content/identity/identity.styles.d.ts +2 -0
  83. package/dist/components/content/identity/identity.styles.d.ts.map +1 -0
  84. package/dist/components/content/{byline/byline.styles.js → identity/identity.styles.js} +28 -47
  85. package/dist/components/content/identity/identity.styles.js.map +1 -0
  86. package/dist/components/content/identity/identity.template.d.ts +3 -0
  87. package/dist/components/content/identity/identity.template.d.ts.map +1 -0
  88. package/dist/components/content/{byline/byline.template.js → identity/identity.template.js} +12 -11
  89. package/dist/components/content/identity/identity.template.js.map +1 -0
  90. package/dist/components/content/tag/tag.d.ts +15 -10
  91. package/dist/components/content/tag/tag.d.ts.map +1 -1
  92. package/dist/components/content/tag/tag.js +15 -10
  93. package/dist/components/content/tag/tag.js.map +1 -1
  94. package/dist/components/content/title/title.d.ts +4 -4
  95. package/dist/components/content/title/title.js +4 -4
  96. package/dist/components/content/title/title.styles.js +1 -1
  97. package/dist/components/content/title/title.template.js +2 -2
  98. package/dist/components/content/token/token.d.ts +6 -2
  99. package/dist/components/content/token/token.d.ts.map +1 -1
  100. package/dist/components/content/token/token.js +6 -2
  101. package/dist/components/content/token/token.js.map +1 -1
  102. package/dist/components/content/tooltip/tooltip.d.ts +26 -25
  103. package/dist/components/content/tooltip/tooltip.d.ts.map +1 -1
  104. package/dist/components/content/tooltip/tooltip.js +31 -25
  105. package/dist/components/content/tooltip/tooltip.js.map +1 -1
  106. package/dist/components/decorate-BKn10QQi.js +9 -0
  107. package/dist/components/dist-BYVOPNHp.js +381 -0
  108. package/dist/components/dist-Bq4xc7Bm.js +624 -0
  109. package/dist/components/dist-C0PiB1dr.js +870 -0
  110. package/dist/components/dist-C400RcFU.js +1498 -0
  111. package/dist/components/dist-CCg5Mso_.js +390 -0
  112. package/dist/components/dist-CJR_Rwhh.js +464 -0
  113. package/dist/components/dist-Ccw7ZfsU.js +18481 -0
  114. package/dist/components/dist-OBifyiJS.js +887 -0
  115. package/dist/components/dist-TpIL8G4G.js +1480 -0
  116. package/dist/components/dist-afrAoubg.js +1181 -0
  117. package/dist/components/dist-bO14jlsr.js +78 -0
  118. package/dist/components/forms/form-field/form-field.d.ts +59 -2
  119. package/dist/components/forms/form-field/form-field.d.ts.map +1 -1
  120. package/dist/components/forms/form-field/form-field.js +120 -35
  121. package/dist/components/forms/form-field/form-field.js.map +1 -1
  122. package/dist/components/gherkin-uCVRxsGf.js +108 -0
  123. package/dist/components/icon-CIpJq_cf.js +751 -0
  124. package/dist/components/icon-button-BAkUJTn6.js +1676 -0
  125. package/dist/components/index.d.ts +4 -1
  126. package/dist/components/index.d.ts.map +1 -1
  127. package/dist/components/index.js +4 -1
  128. package/dist/components/index.js.map +1 -1
  129. package/dist/components/input-modality-DhTeUxKi.js +43 -0
  130. package/dist/components/inputs/checkbox/checkbox.d.ts +13 -0
  131. package/dist/components/inputs/checkbox/checkbox.d.ts.map +1 -1
  132. package/dist/components/inputs/checkbox/checkbox.js +18 -0
  133. package/dist/components/inputs/checkbox/checkbox.js.map +1 -1
  134. package/dist/components/inputs/checkbox/checkbox.styles.d.ts.map +1 -1
  135. package/dist/components/inputs/checkbox/checkbox.styles.js +17 -0
  136. package/dist/components/inputs/checkbox/checkbox.styles.js.map +1 -1
  137. package/dist/components/inputs/checkbox/checkbox.template.d.ts.map +1 -1
  138. package/dist/components/inputs/checkbox/checkbox.template.js +11 -0
  139. package/dist/components/inputs/checkbox/checkbox.template.js.map +1 -1
  140. package/dist/components/inputs/checkbox-field/checkbox-field.d.ts +9 -0
  141. package/dist/components/inputs/checkbox-field/checkbox-field.d.ts.map +1 -1
  142. package/dist/components/inputs/checkbox-field/checkbox-field.js +11 -0
  143. package/dist/components/inputs/checkbox-field/checkbox-field.js.map +1 -1
  144. package/dist/components/inputs/code-editor/code-editor.d.ts +3 -0
  145. package/dist/components/inputs/code-editor/code-editor.d.ts.map +1 -1
  146. package/dist/components/inputs/code-editor/code-editor.js +3 -0
  147. package/dist/components/inputs/code-editor/code-editor.js.map +1 -1
  148. package/dist/components/inputs/combo-box/combo-box.d.ts +6 -0
  149. package/dist/components/inputs/combo-box/combo-box.d.ts.map +1 -1
  150. package/dist/components/inputs/combo-box/combo-box.js +21 -0
  151. package/dist/components/inputs/combo-box/combo-box.js.map +1 -1
  152. package/dist/components/inputs/date-field/date-field.d.ts +6 -0
  153. package/dist/components/inputs/date-field/date-field.d.ts.map +1 -1
  154. package/dist/components/inputs/date-field/date-field.js +11 -0
  155. package/dist/components/inputs/date-field/date-field.js.map +1 -1
  156. package/dist/components/inputs/date-picker/date-picker.d.ts +3 -0
  157. package/dist/components/inputs/date-picker/date-picker.d.ts.map +1 -1
  158. package/dist/components/inputs/date-picker/date-picker.js +4 -1
  159. package/dist/components/inputs/date-picker/date-picker.js.map +1 -1
  160. package/dist/components/inputs/date-picker/date-picker.styles.d.ts.map +1 -1
  161. package/dist/components/inputs/date-picker/date-picker.styles.js +7 -2
  162. package/dist/components/inputs/date-picker/date-picker.styles.js.map +1 -1
  163. package/dist/components/inputs/dropdown/dropdown.d.ts +29 -0
  164. package/dist/components/inputs/dropdown/dropdown.d.ts.map +1 -1
  165. package/dist/components/inputs/dropdown/dropdown.js +44 -1
  166. package/dist/components/inputs/dropdown/dropdown.js.map +1 -1
  167. package/dist/components/inputs/file-field/file-field.d.ts +115 -0
  168. package/dist/components/inputs/file-field/file-field.d.ts.map +1 -0
  169. package/dist/components/inputs/file-field/file-field.i18n.d.ts +10 -0
  170. package/dist/components/inputs/file-field/file-field.i18n.d.ts.map +1 -0
  171. package/dist/components/inputs/file-field/file-field.i18n.js +9 -0
  172. package/dist/components/inputs/file-field/file-field.i18n.js.map +1 -0
  173. package/dist/components/inputs/file-field/file-field.js +249 -0
  174. package/dist/components/inputs/file-field/file-field.js.map +1 -0
  175. package/dist/components/inputs/file-field/file-field.styles.d.ts +2 -0
  176. package/dist/components/inputs/file-field/file-field.styles.d.ts.map +1 -0
  177. package/dist/components/inputs/file-field/file-field.styles.js +134 -0
  178. package/dist/components/inputs/file-field/file-field.styles.js.map +1 -0
  179. package/dist/components/inputs/file-field/file-field.template.d.ts +7 -0
  180. package/dist/components/inputs/file-field/file-field.template.d.ts.map +1 -0
  181. package/dist/components/inputs/file-field/file-field.template.js +63 -0
  182. package/dist/components/inputs/file-field/file-field.template.js.map +1 -0
  183. package/dist/components/inputs/multi-line-text-field/multi-line-text-field.d.ts +3 -0
  184. package/dist/components/inputs/multi-line-text-field/multi-line-text-field.d.ts.map +1 -1
  185. package/dist/components/inputs/multi-line-text-field/multi-line-text-field.js +3 -0
  186. package/dist/components/inputs/multi-line-text-field/multi-line-text-field.js.map +1 -1
  187. package/dist/components/inputs/number-field/number-field.d.ts +9 -0
  188. package/dist/components/inputs/number-field/number-field.d.ts.map +1 -1
  189. package/dist/components/inputs/number-field/number-field.js +12 -0
  190. package/dist/components/inputs/number-field/number-field.js.map +1 -1
  191. package/dist/components/inputs/number-field/number-field.template.d.ts.map +1 -1
  192. package/dist/components/inputs/number-field/number-field.template.js +1 -0
  193. package/dist/components/inputs/number-field/number-field.template.js.map +1 -1
  194. package/dist/components/inputs/password-field/password-field.d.ts +9 -0
  195. package/dist/components/inputs/password-field/password-field.d.ts.map +1 -1
  196. package/dist/components/inputs/password-field/password-field.js +12 -0
  197. package/dist/components/inputs/password-field/password-field.js.map +1 -1
  198. package/dist/components/inputs/password-field/password-field.template.d.ts.map +1 -1
  199. package/dist/components/inputs/password-field/password-field.template.js +1 -0
  200. package/dist/components/inputs/password-field/password-field.template.js.map +1 -1
  201. package/dist/components/inputs/radio-button/radio-button.d.ts +13 -0
  202. package/dist/components/inputs/radio-button/radio-button.d.ts.map +1 -1
  203. package/dist/components/inputs/radio-button/radio-button.js +18 -0
  204. package/dist/components/inputs/radio-button/radio-button.js.map +1 -1
  205. package/dist/components/inputs/radio-button/radio-button.styles.d.ts.map +1 -1
  206. package/dist/components/inputs/radio-button/radio-button.styles.js +11 -0
  207. package/dist/components/inputs/radio-button/radio-button.styles.js.map +1 -1
  208. package/dist/components/inputs/radio-button/radio-button.template.d.ts.map +1 -1
  209. package/dist/components/inputs/radio-button/radio-button.template.js +10 -0
  210. package/dist/components/inputs/radio-button/radio-button.template.js.map +1 -1
  211. package/dist/components/inputs/radio-button-field/radio-button-field.d.ts +9 -0
  212. package/dist/components/inputs/radio-button-field/radio-button-field.d.ts.map +1 -1
  213. package/dist/components/inputs/radio-button-field/radio-button-field.js +11 -0
  214. package/dist/components/inputs/radio-button-field/radio-button-field.js.map +1 -1
  215. package/dist/components/inputs/radio-button-group/radio-button-group.d.ts +16 -0
  216. package/dist/components/inputs/radio-button-group/radio-button-group.d.ts.map +1 -1
  217. package/dist/components/inputs/radio-button-group/radio-button-group.js +33 -0
  218. package/dist/components/inputs/radio-button-group/radio-button-group.js.map +1 -1
  219. package/dist/components/inputs/search-field/search-field.d.ts +6 -0
  220. package/dist/components/inputs/search-field/search-field.d.ts.map +1 -1
  221. package/dist/components/inputs/search-field/search-field.js +6 -0
  222. package/dist/components/inputs/search-field/search-field.js.map +1 -1
  223. package/dist/components/inputs/segmented-control/segmented-control.d.ts +16 -0
  224. package/dist/components/inputs/segmented-control/segmented-control.d.ts.map +1 -1
  225. package/dist/components/inputs/segmented-control/segmented-control.js +26 -7
  226. package/dist/components/inputs/segmented-control/segmented-control.js.map +1 -1
  227. package/dist/components/inputs/stepper/stepper.d.ts +17 -0
  228. package/dist/components/inputs/stepper/stepper.d.ts.map +1 -1
  229. package/dist/components/inputs/stepper/stepper.js +22 -0
  230. package/dist/components/inputs/stepper/stepper.js.map +1 -1
  231. package/dist/components/inputs/stepper/stepper.template.js +1 -1
  232. package/dist/components/inputs/stepper/stepper.template.js.map +1 -1
  233. package/dist/components/inputs/switch/switch.d.ts +3 -0
  234. package/dist/components/inputs/switch/switch.d.ts.map +1 -1
  235. package/dist/components/inputs/switch/switch.js +3 -0
  236. package/dist/components/inputs/switch/switch.js.map +1 -1
  237. package/dist/components/inputs/switch-field/switch-field.d.ts +3 -0
  238. package/dist/components/inputs/switch-field/switch-field.d.ts.map +1 -1
  239. package/dist/components/inputs/switch-field/switch-field.js +3 -0
  240. package/dist/components/inputs/switch-field/switch-field.js.map +1 -1
  241. package/dist/components/inputs/text-editor/text-editor.caret.d.ts.map +1 -1
  242. package/dist/components/inputs/text-editor/text-editor.caret.js +7 -1
  243. package/dist/components/inputs/text-editor/text-editor.caret.js.map +1 -1
  244. package/dist/components/inputs/text-editor/text-editor.d.ts +3 -4
  245. package/dist/components/inputs/text-editor/text-editor.d.ts.map +1 -1
  246. package/dist/components/inputs/text-editor/text-editor.js +4 -7
  247. package/dist/components/inputs/text-editor/text-editor.js.map +1 -1
  248. package/dist/components/inputs/text-editor/text-editor.styles.d.ts.map +1 -1
  249. package/dist/components/inputs/text-editor/text-editor.styles.js +1 -9
  250. package/dist/components/inputs/text-editor/text-editor.styles.js.map +1 -1
  251. package/dist/components/inputs/text-field/text-field.d.ts +9 -0
  252. package/dist/components/inputs/text-field/text-field.d.ts.map +1 -1
  253. package/dist/components/inputs/text-field/text-field.js +12 -0
  254. package/dist/components/inputs/text-field/text-field.js.map +1 -1
  255. package/dist/components/inputs/text-field/text-field.template.d.ts.map +1 -1
  256. package/dist/components/inputs/text-field/text-field.template.js +1 -0
  257. package/dist/components/inputs/text-field/text-field.template.js.map +1 -1
  258. package/dist/components/inputs/time-field/time-field.d.ts +6 -0
  259. package/dist/components/inputs/time-field/time-field.d.ts.map +1 -1
  260. package/dist/components/inputs/time-field/time-field.js +11 -0
  261. package/dist/components/inputs/time-field/time-field.js.map +1 -1
  262. package/dist/components/inputs/time-field/time-field.template.js +1 -1
  263. package/dist/components/inputs/time-picker/time-picker.d.ts +3 -0
  264. package/dist/components/inputs/time-picker/time-picker.d.ts.map +1 -1
  265. package/dist/components/inputs/time-picker/time-picker.js +4 -1
  266. package/dist/components/inputs/time-picker/time-picker.js.map +1 -1
  267. package/dist/components/inputs/time-picker/time-picker.styles.d.ts.map +1 -1
  268. package/dist/components/inputs/time-picker/time-picker.styles.js +7 -2
  269. package/dist/components/inputs/time-picker/time-picker.styles.js.map +1 -1
  270. package/dist/components/inputs/toggle-button/toggle-button.d.ts +10 -0
  271. package/dist/components/inputs/toggle-button/toggle-button.d.ts.map +1 -1
  272. package/dist/components/inputs/toggle-button/toggle-button.js +14 -0
  273. package/dist/components/inputs/toggle-button/toggle-button.js.map +1 -1
  274. package/dist/components/inputs/toggle-button-group/toggle-button-group.d.ts +11 -0
  275. package/dist/components/inputs/toggle-button-group/toggle-button-group.d.ts.map +1 -1
  276. package/dist/components/inputs/toggle-button-group/toggle-button-group.js +16 -6
  277. package/dist/components/inputs/toggle-button-group/toggle-button-group.js.map +1 -1
  278. package/dist/components/inputs/token-field/token-field.d.ts +6 -0
  279. package/dist/components/inputs/token-field/token-field.d.ts.map +1 -1
  280. package/dist/components/inputs/token-field/token-field.js +13 -0
  281. package/dist/components/inputs/token-field/token-field.js.map +1 -1
  282. package/dist/components/layout/box/box.d.ts +17 -7
  283. package/dist/components/layout/box/box.d.ts.map +1 -1
  284. package/dist/components/layout/box/box.js +17 -7
  285. package/dist/components/layout/box/box.js.map +1 -1
  286. package/dist/components/layout/box/box.styles.d.ts.map +1 -1
  287. package/dist/components/layout/box/box.styles.js +9 -2
  288. package/dist/components/layout/box/box.styles.js.map +1 -1
  289. package/dist/components/layout/container/container.d.ts +10 -0
  290. package/dist/components/layout/container/container.d.ts.map +1 -1
  291. package/dist/components/layout/container/container.js +38 -0
  292. package/dist/components/layout/container/container.js.map +1 -1
  293. package/dist/components/layout/container/container.styles.d.ts.map +1 -1
  294. package/dist/components/layout/container/container.styles.js +10 -1
  295. package/dist/components/layout/container/container.styles.js.map +1 -1
  296. package/dist/components/layout/page/page.styles.d.ts.map +1 -1
  297. package/dist/components/layout/page/page.styles.js +8 -1
  298. package/dist/components/layout/page/page.styles.js.map +1 -1
  299. package/dist/components/layout/page-sections/hero/hero.d.ts +32 -33
  300. package/dist/components/layout/page-sections/hero/hero.d.ts.map +1 -1
  301. package/dist/components/layout/page-sections/hero/hero.js +32 -33
  302. package/dist/components/layout/page-sections/hero/hero.js.map +1 -1
  303. package/dist/components/layout/page-sections/hero/hero.template.js +1 -1
  304. package/dist/components/layout/page-sections/hero/hero.template.js.map +1 -1
  305. package/dist/components/layout/page-sections/simple-section/simple-section.d.ts +7 -0
  306. package/dist/components/layout/page-sections/simple-section/simple-section.d.ts.map +1 -1
  307. package/dist/components/layout/page-sections/simple-section/simple-section.js +12 -0
  308. package/dist/components/layout/page-sections/simple-section/simple-section.js.map +1 -1
  309. package/dist/components/layout/page-sections/simple-section/simple-section.styles.d.ts.map +1 -1
  310. package/dist/components/layout/page-sections/simple-section/simple-section.styles.js +19 -0
  311. package/dist/components/layout/page-sections/simple-section/simple-section.styles.js.map +1 -1
  312. package/dist/components/layout/popover/popover.d.ts +34 -28
  313. package/dist/components/layout/popover/popover.d.ts.map +1 -1
  314. package/dist/components/layout/popover/popover.js +44 -31
  315. package/dist/components/layout/popover/popover.js.map +1 -1
  316. package/dist/components/layout/sheet/sheet.d.ts +2 -0
  317. package/dist/components/layout/sheet/sheet.d.ts.map +1 -1
  318. package/dist/components/layout/sheet/sheet.js +12 -1
  319. package/dist/components/layout/sheet/sheet.js.map +1 -1
  320. package/dist/components/lists-and-tables/cells/description-cell/description-cell.styles.d.ts.map +1 -1
  321. package/dist/components/lists-and-tables/cells/description-cell/description-cell.styles.js +9 -1
  322. package/dist/components/lists-and-tables/cells/description-cell/description-cell.styles.js.map +1 -1
  323. package/dist/components/lists-and-tables/cells/text-cell/text-cell.styles.d.ts.map +1 -1
  324. package/dist/components/lists-and-tables/cells/text-cell/text-cell.styles.js +9 -1
  325. package/dist/components/lists-and-tables/cells/text-cell/text-cell.styles.js.map +1 -1
  326. package/dist/components/lists-and-tables/cells/timeline-track-cell/timeline-track-cell.d.ts +14 -14
  327. package/dist/components/lists-and-tables/cells/timeline-track-cell/timeline-track-cell.d.ts.map +1 -1
  328. package/dist/components/lists-and-tables/cells/timeline-track-cell/timeline-track-cell.js +13 -13
  329. package/dist/components/lists-and-tables/cells/title-cell/title-cell.styles.d.ts.map +1 -1
  330. package/dist/components/lists-and-tables/cells/title-cell/title-cell.styles.js +13 -2
  331. package/dist/components/lists-and-tables/cells/title-cell/title-cell.styles.js.map +1 -1
  332. package/dist/components/lists-and-tables/list/list.d.ts +8 -11
  333. package/dist/components/lists-and-tables/list/list.d.ts.map +1 -1
  334. package/dist/components/lists-and-tables/list/list.js +8 -10
  335. package/dist/components/lists-and-tables/list/list.js.map +1 -1
  336. package/dist/components/lists-and-tables/list/list.styles.d.ts.map +1 -1
  337. package/dist/components/lists-and-tables/list/list.styles.js +13 -6
  338. package/dist/components/lists-and-tables/list/list.styles.js.map +1 -1
  339. package/dist/components/lists-and-tables/list-item/list-item.d.ts +20 -16
  340. package/dist/components/lists-and-tables/list-item/list-item.d.ts.map +1 -1
  341. package/dist/components/lists-and-tables/list-item/list-item.js +44 -30
  342. package/dist/components/lists-and-tables/list-item/list-item.js.map +1 -1
  343. package/dist/components/navigation/top-navigation-bar/top-navigation-bar.js +1 -1
  344. package/dist/components/navigation/top-navigation-bar/top-navigation-bar.js.map +1 -1
  345. package/dist/components/navigation/top-title-bar/top-title-bar.d.ts +15 -0
  346. package/dist/components/navigation/top-title-bar/top-title-bar.d.ts.map +1 -1
  347. package/dist/components/navigation/top-title-bar/top-title-bar.js +44 -1
  348. package/dist/components/navigation/top-title-bar/top-title-bar.js.map +1 -1
  349. package/dist/components/navigation/top-title-bar/top-title-bar.template.d.ts.map +1 -1
  350. package/dist/components/navigation/top-title-bar/top-title-bar.template.js +3 -1
  351. package/dist/components/navigation/top-title-bar/top-title-bar.template.js.map +1 -1
  352. package/dist/components/reflect-non-default-OLaK60rT.js +37 -0
  353. package/dist/components/rolldown-runtime-D7D4PA-g.js +13 -0
  354. package/dist/components/shadow-resets-aG-rgyNQ.js +61 -0
  355. package/dist/components/shell-C61GCsJA.js +223 -0
  356. package/dist/components/status-and-feedback/badge/badge.d.ts +23 -11
  357. package/dist/components/status-and-feedback/badge/badge.d.ts.map +1 -1
  358. package/dist/components/status-and-feedback/badge/badge.js +32 -14
  359. package/dist/components/status-and-feedback/badge/badge.js.map +1 -1
  360. package/dist/components/status-and-feedback/badge/badge.styles.d.ts.map +1 -1
  361. package/dist/components/status-and-feedback/badge/badge.styles.js +59 -2
  362. package/dist/components/status-and-feedback/badge/badge.styles.js.map +1 -1
  363. package/dist/components/status-and-feedback/badge/badge.template.d.ts.map +1 -1
  364. package/dist/components/status-and-feedback/badge/badge.template.js +6 -1
  365. package/dist/components/status-and-feedback/badge/badge.template.js.map +1 -1
  366. package/dist/components/status-and-feedback/banner/banner.styles.d.ts.map +1 -1
  367. package/dist/components/status-and-feedback/banner/banner.styles.js +6 -0
  368. package/dist/components/status-and-feedback/banner/banner.styles.js.map +1 -1
  369. package/dist/components/status-and-feedback/modal-dialog/modal-dialog.d.ts +2 -0
  370. package/dist/components/status-and-feedback/modal-dialog/modal-dialog.d.ts.map +1 -1
  371. package/dist/components/status-and-feedback/modal-dialog/modal-dialog.js +14 -1
  372. package/dist/components/status-and-feedback/modal-dialog/modal-dialog.js.map +1 -1
  373. package/dist/components/status-and-feedback/notification/notification-region.d.ts +6 -0
  374. package/dist/components/status-and-feedback/notification/notification-region.d.ts.map +1 -0
  375. package/dist/components/status-and-feedback/notification/notification-region.js +245 -0
  376. package/dist/components/status-and-feedback/notification/notification-region.js.map +1 -0
  377. package/dist/components/status-and-feedback/notification/notification.d.ts +129 -0
  378. package/dist/components/status-and-feedback/notification/notification.d.ts.map +1 -0
  379. package/dist/components/status-and-feedback/notification/notification.i18n.d.ts +6 -0
  380. package/dist/components/status-and-feedback/notification/notification.i18n.d.ts.map +1 -0
  381. package/dist/components/status-and-feedback/notification/notification.i18n.js +5 -0
  382. package/dist/components/status-and-feedback/notification/notification.i18n.js.map +1 -0
  383. package/dist/components/status-and-feedback/notification/notification.js +269 -0
  384. package/dist/components/status-and-feedback/notification/notification.js.map +1 -0
  385. package/dist/components/status-and-feedback/notification/notification.styles.d.ts +2 -0
  386. package/dist/components/status-and-feedback/notification/notification.styles.d.ts.map +1 -0
  387. package/dist/components/status-and-feedback/notification/notification.styles.js +177 -0
  388. package/dist/components/status-and-feedback/notification/notification.styles.js.map +1 -0
  389. package/dist/components/status-and-feedback/notification/notification.template.d.ts +4 -0
  390. package/dist/components/status-and-feedback/notification/notification.template.d.ts.map +1 -0
  391. package/dist/components/status-and-feedback/notification/notification.template.js +40 -0
  392. package/dist/components/status-and-feedback/notification/notification.template.js.map +1 -0
  393. package/dist/components/status-and-feedback/progress-bar/progress-bar.styles.d.ts.map +1 -1
  394. package/dist/components/status-and-feedback/progress-bar/progress-bar.styles.js +1 -0
  395. package/dist/components/status-and-feedback/progress-bar/progress-bar.styles.js.map +1 -1
  396. package/dist/components/status-and-feedback/step-indicator/step-indicator.d.ts +30 -30
  397. package/dist/components/status-and-feedback/step-indicator/step-indicator.d.ts.map +1 -1
  398. package/dist/components/status-and-feedback/step-indicator/step-indicator.js +33 -30
  399. package/dist/components/status-and-feedback/step-indicator/step-indicator.js.map +1 -1
  400. package/dist/components/toml-C2HBbPgG.js +59 -0
  401. package/dist/components/visibility-mixin-GxbwkBb1.js +104 -0
  402. package/dist/components/with-translations-DzAdFTK8.js +48 -0
  403. package/dist/css/variables.css +24 -0
  404. package/dist/nldd.min.js +10763 -9942
  405. package/dist/types/vue.d.ts +270 -153
  406. package/dist/utilities/implicit-submission.d.ts +31 -0
  407. package/dist/utilities/implicit-submission.d.ts.map +1 -0
  408. package/dist/utilities/implicit-submission.js +65 -0
  409. package/dist/utilities/implicit-submission.js.map +1 -0
  410. package/dist/utilities/open-when-rendered.d.ts +21 -0
  411. package/dist/utilities/open-when-rendered.d.ts.map +1 -0
  412. package/dist/utilities/open-when-rendered.js +30 -0
  413. package/dist/utilities/open-when-rendered.js.map +1 -0
  414. package/dist/utilities/owned-attribute.d.ts +19 -0
  415. package/dist/utilities/owned-attribute.d.ts.map +1 -0
  416. package/dist/utilities/owned-attribute.js +32 -0
  417. package/dist/utilities/owned-attribute.js.map +1 -0
  418. package/dist/utilities/reflect-non-default.d.ts +3 -3
  419. package/dist/utilities/reflect-non-default.d.ts.map +1 -1
  420. package/dist/utilities/reflect-non-default.js +7 -4
  421. package/dist/utilities/reflect-non-default.js.map +1 -1
  422. package/dist/utilities/visibility-mixin.d.ts +5 -0
  423. package/dist/utilities/visibility-mixin.d.ts.map +1 -1
  424. package/dist/utilities/visibility-mixin.js +22 -0
  425. package/dist/utilities/visibility-mixin.js.map +1 -1
  426. package/package.json +34 -23
  427. package/dist/components/content/byline/byline.d.ts +0 -73
  428. package/dist/components/content/byline/byline.d.ts.map +0 -1
  429. package/dist/components/content/byline/byline.js +0 -125
  430. package/dist/components/content/byline/byline.js.map +0 -1
  431. package/dist/components/content/byline/byline.styles.d.ts +0 -2
  432. package/dist/components/content/byline/byline.styles.d.ts.map +0 -1
  433. package/dist/components/content/byline/byline.styles.js.map +0 -1
  434. package/dist/components/content/byline/byline.template.d.ts +0 -3
  435. package/dist/components/content/byline/byline.template.d.ts.map +0 -1
  436. package/dist/components/content/byline/byline.template.js.map +0 -1
  437. package/dist/components/gherkin-DhZlEZiy.js +0 -115
  438. package/dist/components/index--8_4HvE9.js +0 -688
  439. package/dist/components/index-BMeSmtdw.js +0 -384
  440. package/dist/components/index-Bonuul3m.js +0 -73466
  441. package/dist/components/index-CdOU-HVN.js +0 -81
  442. package/dist/components/index-CqhFJR7l.js +0 -703
  443. package/dist/components/index-CwmDMN6X.js +0 -177
  444. package/dist/components/index-yX0V7C44.js +0 -405
  445. package/dist/components/shell-BlsXDxCn.js +0 -222
  446. package/dist/components/toml-BOuWGMcf.js +0 -76
@@ -0,0 +1,223 @@
1
+ //#region node_modules/@codemirror/legacy-modes/mode/shell.js
2
+ var words = {};
3
+ function define(style, dict) {
4
+ for (var i = 0; i < dict.length; i++) words[dict[i]] = style;
5
+ }
6
+ var commonAtoms = ["true", "false"];
7
+ var commonKeywords = [
8
+ "if",
9
+ "then",
10
+ "do",
11
+ "else",
12
+ "elif",
13
+ "while",
14
+ "until",
15
+ "for",
16
+ "in",
17
+ "esac",
18
+ "fi",
19
+ "fin",
20
+ "fil",
21
+ "done",
22
+ "exit",
23
+ "set",
24
+ "unset",
25
+ "export",
26
+ "function"
27
+ ];
28
+ var commonCommands = [
29
+ "ab",
30
+ "awk",
31
+ "bash",
32
+ "beep",
33
+ "cat",
34
+ "cc",
35
+ "cd",
36
+ "chown",
37
+ "chmod",
38
+ "chroot",
39
+ "clear",
40
+ "cp",
41
+ "curl",
42
+ "cut",
43
+ "diff",
44
+ "echo",
45
+ "find",
46
+ "gawk",
47
+ "gcc",
48
+ "get",
49
+ "git",
50
+ "grep",
51
+ "hg",
52
+ "kill",
53
+ "killall",
54
+ "ln",
55
+ "ls",
56
+ "make",
57
+ "mkdir",
58
+ "openssl",
59
+ "mv",
60
+ "nc",
61
+ "nl",
62
+ "node",
63
+ "npm",
64
+ "ping",
65
+ "ps",
66
+ "restart",
67
+ "rm",
68
+ "rmdir",
69
+ "sed",
70
+ "service",
71
+ "sh",
72
+ "shopt",
73
+ "shred",
74
+ "source",
75
+ "sort",
76
+ "sleep",
77
+ "ssh",
78
+ "start",
79
+ "stop",
80
+ "su",
81
+ "sudo",
82
+ "svn",
83
+ "tee",
84
+ "telnet",
85
+ "top",
86
+ "touch",
87
+ "vi",
88
+ "vim",
89
+ "wall",
90
+ "wc",
91
+ "wget",
92
+ "who",
93
+ "write",
94
+ "yes",
95
+ "zsh"
96
+ ];
97
+ define("atom", commonAtoms);
98
+ define("keyword", commonKeywords);
99
+ define("builtin", commonCommands);
100
+ function tokenBase(stream, state) {
101
+ if (stream.eatSpace()) return null;
102
+ var sol = stream.sol();
103
+ var ch = stream.next();
104
+ if (ch === "\\") {
105
+ stream.next();
106
+ return null;
107
+ }
108
+ if (ch === "'" || ch === "\"" || ch === "`") {
109
+ state.tokens.unshift(tokenString(ch, ch === "`" ? "quote" : "string"));
110
+ return tokenize(stream, state);
111
+ }
112
+ if (ch === "#") {
113
+ if (sol && stream.eat("!")) {
114
+ stream.skipToEnd();
115
+ return "meta";
116
+ }
117
+ stream.skipToEnd();
118
+ return "comment";
119
+ }
120
+ if (ch === "$") {
121
+ state.tokens.unshift(tokenDollar);
122
+ return tokenize(stream, state);
123
+ }
124
+ if (ch === "+" || ch === "=") return "operator";
125
+ if (ch === "-") {
126
+ stream.eat("-");
127
+ stream.eatWhile(/\w/);
128
+ return "attribute";
129
+ }
130
+ if (ch == "<") {
131
+ if (stream.match("<<")) return "operator";
132
+ var heredoc = stream.match(/^<-?\s*(?:['"]([^'"]*)['"]|([^'"\s]*))/);
133
+ if (heredoc) {
134
+ state.tokens.unshift(tokenHeredoc(heredoc[1] || heredoc[2]));
135
+ return "string.special";
136
+ }
137
+ }
138
+ if (/\d/.test(ch)) {
139
+ stream.eatWhile(/\d/);
140
+ if (stream.eol() || !/\w/.test(stream.peek())) return "number";
141
+ }
142
+ stream.eatWhile(/[\w-]/);
143
+ var cur = stream.current();
144
+ if (stream.peek() === "=" && /\w+/.test(cur)) return "def";
145
+ return words.hasOwnProperty(cur) ? words[cur] : null;
146
+ }
147
+ function tokenString(quote, style) {
148
+ var close = quote == "(" ? ")" : quote == "{" ? "}" : quote;
149
+ return function(stream, state) {
150
+ var next, escaped = false;
151
+ while ((next = stream.next()) != null) {
152
+ if (next === close && !escaped) {
153
+ state.tokens.shift();
154
+ break;
155
+ } else if (next === "$" && !escaped && quote !== "'" && stream.peek() != close) {
156
+ escaped = true;
157
+ stream.backUp(1);
158
+ state.tokens.unshift(tokenDollar);
159
+ break;
160
+ } else if (!escaped && quote !== close && next === quote) {
161
+ state.tokens.unshift(tokenString(quote, style));
162
+ return tokenize(stream, state);
163
+ } else if (!escaped && /['"]/.test(next) && !/['"]/.test(quote)) {
164
+ state.tokens.unshift(tokenStringStart(next, "string"));
165
+ stream.backUp(1);
166
+ break;
167
+ }
168
+ escaped = !escaped && next === "\\";
169
+ }
170
+ return style;
171
+ };
172
+ }
173
+ function tokenStringStart(quote, style) {
174
+ return function(stream, state) {
175
+ state.tokens[0] = tokenString(quote, style);
176
+ stream.next();
177
+ return tokenize(stream, state);
178
+ };
179
+ }
180
+ var tokenDollar = function(stream, state) {
181
+ if (state.tokens.length > 1) stream.eat("$");
182
+ var ch = stream.next();
183
+ if (/['"({]/.test(ch)) {
184
+ state.tokens[0] = tokenString(ch, ch == "(" ? "quote" : ch == "{" ? "def" : "string");
185
+ return tokenize(stream, state);
186
+ }
187
+ if (!/\d/.test(ch)) stream.eatWhile(/\w/);
188
+ state.tokens.shift();
189
+ return "def";
190
+ };
191
+ function tokenHeredoc(delim) {
192
+ return function(stream, state) {
193
+ if (stream.sol() && stream.string == delim) state.tokens.shift();
194
+ stream.skipToEnd();
195
+ return "string.special";
196
+ };
197
+ }
198
+ function tokenize(stream, state) {
199
+ return (state.tokens[0] || tokenBase)(stream, state);
200
+ }
201
+ var shell = {
202
+ name: "shell",
203
+ startState: function() {
204
+ return { tokens: [] };
205
+ },
206
+ token: function(stream, state) {
207
+ return tokenize(stream, state);
208
+ },
209
+ languageData: {
210
+ autocomplete: commonAtoms.concat(commonKeywords, commonCommands),
211
+ closeBrackets: { brackets: [
212
+ "(",
213
+ "[",
214
+ "{",
215
+ "'",
216
+ "\"",
217
+ "`"
218
+ ] },
219
+ commentTokens: { line: "#" }
220
+ }
221
+ };
222
+ //#endregion
223
+ export { shell };
@@ -1,18 +1,28 @@
1
1
  /**
2
2
  * Nederlandse Digitale Dienst Badge Component (Lit + TypeScript)
3
3
  *
4
- * Een notificatie-indicator, vaak voor ongelezen aantallen of statusdots. Kan tekst,
5
- * een getal en/of een icoon tonen. Zonder inhoud verschijnt automatisch een stip.
6
- * Gebruik in een hoek van een ander element (bijv. een icon) of standalone.
4
+ * Shows the state of something, or how much of it there is: a status, a number
5
+ * of unread messages, a dot saying something is new. What it says is decided by
6
+ * the system, and it changes without anyone touching it. A badge is never
7
+ * interactive.
8
+ *
9
+ * It shows text, a number and/or an icon; with no content it becomes a dot. Put
10
+ * it in a corner of another element (an icon, for instance) or on its own.
11
+ *
12
+ * For a property someone assigns to something, such as a category, a role or a
13
+ * certification, use `nldd-tag`. For standalone data the user works with, such
14
+ * as a chosen person or an active filter, use `nldd-token`.
7
15
  *
8
16
  * @element nldd-badge
9
- * @attr {string} color - Semantisch ('critical' | 'accent' | 'neutral' | 'warning' | 'success') of een Rijkskleur ('lintblauw' | 'hemelblauw' | 'oranje' | …). Default: 'critical'
10
- * @attr {string} size - Grootte: 'sm' | 'md' (default: 'md')
11
- * @attr {string} text - Tekst (heeft voorrang op number)
12
- * @attr {number} number - Numerieke waarde. Wordt beknopt als meer dan max
13
- * @attr {number} max - Maximum waarde boven welke number wordt getoond als "{max}+" (default: 99)
14
- * @attr {string} icon - Icoon naam. Icon-only wordt als vierkant gerenderd; met text/number komt het icoon links.
15
- * @attr {string} accessible-label - Toegankelijk label voor screenreaders. Fallback naar text/number; anders naar i18n default ("Notificatie").
17
+ * @attr {string} size - Size: 'sm' | 'md' (default: 'md')
18
+ * @attr {string} color - Semantic ('critical' | 'accent' | 'neutral' | 'warning' | 'success') or a Rijkshuisstijl color ('lintblauw' | 'hemelblauw' | 'oranje' | …). Default: 'critical'
19
+ * @attr {boolean} pulse - Grows a ring out of the badge and fades it, for something happening right now (a live connection, an outage). Respects `prefers-reduced-motion`.
20
+ * @attr {string} text - Text (takes precedence over number)
21
+ * @attr {number} number - Numeric value. Shortened when it is over max
22
+ * @attr {number} max - Value above which number is shown as "{max}+" (default: 99)
23
+ * @attr {string} icon - Icon name. Icon-only renders as a square; with text or number the icon goes on the left.
24
+ * @attr {string} accessible-label - Accessible label for screen readers. Falls back to text/number; otherwise to the i18n default ("Notificatie").
25
+ * @attr {boolean} decorative - Hides the badge from assistive software (use when the text beside it says the same, such as a dot next to a status word)
16
26
  */
17
27
  import { LitElement } from 'lit';
18
28
  import './../../content/icon/icon.js';
@@ -26,13 +36,15 @@ declare const NLDDBadge_base: (abstract new (...args: any[]) => LitElement & {
26
36
  }) & typeof LitElement;
27
37
  export declare class NLDDBadge extends NLDDBadge_base {
28
38
  static styles: import("lit").CSSResult;
29
- color: Color;
30
39
  size: Size;
40
+ color: Color;
41
+ pulse: boolean;
31
42
  text: string;
32
43
  number: number | undefined;
33
44
  max: number;
34
45
  icon: string;
35
46
  accessibleLabel: string;
47
+ decorative: boolean;
36
48
  get _hasText(): boolean;
37
49
  get _isDot(): boolean;
38
50
  get _isIconOnly(): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"badge.d.ts","sourceRoot":"","sources":["../../../../src/components/status-and-feedback/badge/badge.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AAOjC,OAAO,8BAA8B,CAAC;AAEtC,KAAK,KAAK,GACP,UAAU,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,GACzD,WAAW,GAAG,aAAa,GAAG,YAAY,GAAG,YAAY,GACzD,OAAO,GAAG,QAAQ,GAClB,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,QAAQ,GACzC,YAAY,GAAG,MAAM,GACrB,aAAa,GAAG,OAAO,GACvB,aAAa,GAAG,OAAO,GAAG,UAAU,GAAG,WAAW,CAAC;AACtD,KAAK,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;;;;;;;AAExB,qBACa,SAAU,SAAQ,cAAmD;IACjF,OAAgB,MAAM,0BAAe;IAGrC,KAAK,EAAE,KAAK,CAAc;IAG1B,IAAI,EAAE,IAAI,CAAQ;IAGlB,IAAI,SAAM;IAGV,MAAM,EAAE,MAAM,GAAG,SAAS,CAAa;IAGvC,GAAG,SAAM;IAGT,IAAI,SAAM;IAGV,eAAe,SAAM;IAErB,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED,IAAI,MAAM,IAAI,OAAO,CAEpB;IAED,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED,IAAI,aAAa,IAAI,MAAM,CAM1B;IAED,IAAI,UAAU,IAAI,MAAM,CAIvB;IAEQ,MAAM;CAGf;AAED,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,qBAAqB;QAC9B,YAAY,EAAE,SAAS,CAAC;KACxB;CACD"}
1
+ {"version":3,"file":"badge.d.ts","sourceRoot":"","sources":["../../../../src/components/status-and-feedback/badge/badge.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AAOjC,OAAO,8BAA8B,CAAC;AAEtC,KAAK,KAAK,GACP,UAAU,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,GACzD,WAAW,GAAG,aAAa,GAAG,YAAY,GAAG,YAAY,GACzD,OAAO,GAAG,QAAQ,GAClB,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,QAAQ,GACzC,YAAY,GAAG,MAAM,GACrB,aAAa,GAAG,OAAO,GACvB,aAAa,GAAG,OAAO,GAAG,UAAU,GAAG,WAAW,CAAC;AACtD,KAAK,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;;;;;;;AAExB,qBACa,SAAU,SAAQ,cAAmD;IACjF,OAAgB,MAAM,0BAAe;IAGrC,IAAI,EAAE,IAAI,CAAQ;IAGlB,KAAK,EAAE,KAAK,CAAc;IAG1B,KAAK,UAAS;IAGd,IAAI,SAAM;IAGV,MAAM,EAAE,MAAM,GAAG,SAAS,CAAa;IAGvC,GAAG,SAAM;IAGT,IAAI,SAAM;IAGV,eAAe,SAAM;IAGrB,UAAU,UAAS;IAEnB,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED,IAAI,MAAM,IAAI,OAAO,CAEpB;IAED,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED,IAAI,aAAa,IAAI,MAAM,CAM1B;IAED,IAAI,UAAU,IAAI,MAAM,CAIvB;IAEQ,MAAM;CAGf;AAED,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,qBAAqB;QAC9B,YAAY,EAAE,SAAS,CAAC;KACxB;CACD"}
@@ -1,18 +1,28 @@
1
1
  /**
2
2
  * Nederlandse Digitale Dienst Badge Component (Lit + TypeScript)
3
3
  *
4
- * Een notificatie-indicator, vaak voor ongelezen aantallen of statusdots. Kan tekst,
5
- * een getal en/of een icoon tonen. Zonder inhoud verschijnt automatisch een stip.
6
- * Gebruik in een hoek van een ander element (bijv. een icon) of standalone.
4
+ * Shows the state of something, or how much of it there is: a status, a number
5
+ * of unread messages, a dot saying something is new. What it says is decided by
6
+ * the system, and it changes without anyone touching it. A badge is never
7
+ * interactive.
8
+ *
9
+ * It shows text, a number and/or an icon; with no content it becomes a dot. Put
10
+ * it in a corner of another element (an icon, for instance) or on its own.
11
+ *
12
+ * For a property someone assigns to something, such as a category, a role or a
13
+ * certification, use `nldd-tag`. For standalone data the user works with, such
14
+ * as a chosen person or an active filter, use `nldd-token`.
7
15
  *
8
16
  * @element nldd-badge
9
- * @attr {string} color - Semantisch ('critical' | 'accent' | 'neutral' | 'warning' | 'success') of een Rijkskleur ('lintblauw' | 'hemelblauw' | 'oranje' | …). Default: 'critical'
10
- * @attr {string} size - Grootte: 'sm' | 'md' (default: 'md')
11
- * @attr {string} text - Tekst (heeft voorrang op number)
12
- * @attr {number} number - Numerieke waarde. Wordt beknopt als meer dan max
13
- * @attr {number} max - Maximum waarde boven welke number wordt getoond als "{max}+" (default: 99)
14
- * @attr {string} icon - Icoon naam. Icon-only wordt als vierkant gerenderd; met text/number komt het icoon links.
15
- * @attr {string} accessible-label - Toegankelijk label voor screenreaders. Fallback naar text/number; anders naar i18n default ("Notificatie").
17
+ * @attr {string} size - Size: 'sm' | 'md' (default: 'md')
18
+ * @attr {string} color - Semantic ('critical' | 'accent' | 'neutral' | 'warning' | 'success') or a Rijkshuisstijl color ('lintblauw' | 'hemelblauw' | 'oranje' | …). Default: 'critical'
19
+ * @attr {boolean} pulse - Grows a ring out of the badge and fades it, for something happening right now (a live connection, an outage). Respects `prefers-reduced-motion`.
20
+ * @attr {string} text - Text (takes precedence over number)
21
+ * @attr {number} number - Numeric value. Shortened when it is over max
22
+ * @attr {number} max - Value above which number is shown as "{max}+" (default: 99)
23
+ * @attr {string} icon - Icon name. Icon-only renders as a square; with text or number the icon goes on the left.
24
+ * @attr {string} accessible-label - Accessible label for screen readers. Falls back to text/number; otherwise to the i18n default ("Notificatie").
25
+ * @attr {boolean} decorative - Hides the badge from assistive software (use when the text beside it says the same, such as a dot next to a status word)
16
26
  */
17
27
  var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
18
28
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
@@ -31,13 +41,15 @@ import './../../content/icon/icon.js';
31
41
  let NLDDBadge = class NLDDBadge extends withTranslations(LitElement, nlddBadgeTranslations) {
32
42
  constructor() {
33
43
  super(...arguments);
34
- this.color = 'critical';
35
44
  this.size = 'md';
45
+ this.color = 'critical';
46
+ this.pulse = false;
36
47
  this.text = '';
37
48
  this.number = undefined;
38
49
  this.max = 99;
39
50
  this.icon = '';
40
51
  this.accessibleLabel = '';
52
+ this.decorative = false;
41
53
  }
42
54
  get _hasText() {
43
55
  return !!this.text || typeof this.number === 'number';
@@ -68,12 +80,15 @@ let NLDDBadge = class NLDDBadge extends withTranslations(LitElement, nlddBadgeTr
68
80
  }
69
81
  };
70
82
  NLDDBadge.styles = badgeStyles;
83
+ __decorate([
84
+ property({ reflect: true, converter: reflectNonDefault('md') })
85
+ ], NLDDBadge.prototype, "size", void 0);
71
86
  __decorate([
72
87
  property({ reflect: true, converter: reflectNonDefault('critical') })
73
88
  ], NLDDBadge.prototype, "color", void 0);
74
89
  __decorate([
75
- property({ reflect: true, converter: reflectNonDefault('md') })
76
- ], NLDDBadge.prototype, "size", void 0);
90
+ property({ type: Boolean, reflect: true })
91
+ ], NLDDBadge.prototype, "pulse", void 0);
77
92
  __decorate([
78
93
  property({ reflect: true, converter: reflectNonDefault('') })
79
94
  ], NLDDBadge.prototype, "text", void 0);
@@ -81,7 +96,7 @@ __decorate([
81
96
  property({ type: Number, reflect: true })
82
97
  ], NLDDBadge.prototype, "number", void 0);
83
98
  __decorate([
84
- property({ type: Number, reflect: true })
99
+ property({ reflect: true, converter: reflectNonDefault(99) })
85
100
  ], NLDDBadge.prototype, "max", void 0);
86
101
  __decorate([
87
102
  property({ type: String })
@@ -89,6 +104,9 @@ __decorate([
89
104
  __decorate([
90
105
  property({ type: String, attribute: 'accessible-label' })
91
106
  ], NLDDBadge.prototype, "accessibleLabel", void 0);
107
+ __decorate([
108
+ property({ type: Boolean, reflect: true })
109
+ ], NLDDBadge.prototype, "decorative", void 0);
92
110
  NLDDBadge = __decorate([
93
111
  customElement('nldd-badge')
94
112
  ], NLDDBadge);
@@ -1 +1 @@
1
- {"version":3,"file":"badge.js","sourceRoot":"","sources":["../../../../src/components/status-and-feedback/badge/badge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"badge.js","sourceRoot":"","sources":["../../../../src/components/status-and-feedback/badge/badge.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"badge.styles.d.ts","sourceRoot":"","sources":["../../../../src/components/status-and-feedback/badge/badge.styles.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,WAAW,yBAmPvB,CAAC"}
1
+ {"version":3,"file":"badge.styles.d.ts","sourceRoot":"","sources":["../../../../src/components/status-and-feedback/badge/badge.styles.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,WAAW,yBA4SvB,CAAC"}
@@ -17,9 +17,11 @@ export const badgeStyles = css `
17
17
  --_gap: var(--primitives-space-3);
18
18
  --_content-color: var(--semantics-categories-critical-filled-content-color);
19
19
  --_font: var(--primitives-font-body-xs-medium-flat);
20
- --_dot-size: var(--primitives-space-10);
20
+ --_dot-size: var(--primitives-space-12);
21
21
  --_icon-size: var(--primitives-space-14);
22
22
  --_icon-offset-correction: var(--primitives-space-1);
23
+ --_pulse-spread: var(--primitives-space-8);
24
+ --_pulse-duration: 1.5s;
23
25
 
24
26
  ${inheritedTextReset}
25
27
  display: inline-flex;
@@ -27,11 +29,12 @@ export const badgeStyles = css `
27
29
  }
28
30
 
29
31
  :host([size="sm"]) {
32
+ --_pulse-spread: var(--primitives-space-6);
30
33
  --_height: var(--primitives-space-16);
31
34
  --_inline-padding: var(--primitives-space-4);
32
35
  --_gap: var(--primitives-space-2);
33
36
  --_font: var(--primitives-font-body-xxs-medium-flat);
34
- --_dot-size: var(--primitives-space-6);
37
+ --_dot-size: var(--primitives-space-8);
35
38
  --_icon-size: var(--primitives-space-12);
36
39
  }
37
40
 
@@ -182,6 +185,7 @@ export const badgeStyles = css `
182
185
  .badge {
183
186
  box-sizing: border-box;
184
187
  display: inline-flex;
188
+ position: relative;
185
189
  border-radius: var(--components-badge-corner-radius);
186
190
  box-shadow:
187
191
  0 0 0 1px var(--context-parent-background-color, var(--semantics-surfaces-base-background-color)),
@@ -206,6 +210,59 @@ export const badgeStyles = css `
206
210
  }
207
211
  }
208
212
 
213
+ /* Grows out of the badge and fades: it borrows the badge's own shape and
214
+ colour, so it works on a dot as well as on a counter. Behind the content
215
+ and inert, so it never affects layout or hit area.
216
+
217
+ A growing box-shadow rather than a scale: scaling multiplies, so a wide
218
+ badge would throw a halo that is far wider than it is tall. A spread adds
219
+ the same distance on every side, whatever the badge measures.
220
+
221
+ Painted after the badge, so the ring passes over the contrast border the
222
+ badge draws in the surface colour instead of starting behind it. The
223
+ element itself is transparent (the ring is the shadow, which paints
224
+ outside the box), so nothing covers the badge's own fill or text. */
225
+ .badge__pulse {
226
+ position: absolute;
227
+ inset: 0;
228
+ border-radius: inherit;
229
+ box-shadow: 0 0 0 0 var(--_background-color);
230
+ pointer-events: none;
231
+ animation: badge-pulse var(--_pulse-duration) infinite;
232
+ }
233
+
234
+ /* The ring rides on the shadow's own colour rather than on the element's
235
+ opacity: at spread zero the shadow has no area, so it can start at full
236
+ strength without a flash, and it is already transparent when the spread
237
+ snaps back for the next cycle. Same shape as Shoelace's badge pulse. */
238
+ @keyframes badge-pulse {
239
+ 0% {
240
+ box-shadow: 0 0 0 0 var(--_background-color);
241
+ }
242
+ 70% {
243
+ box-shadow: 0 0 0 var(--_pulse-spread) transparent;
244
+ }
245
+ 100% {
246
+ box-shadow: 0 0 0 0 transparent;
247
+ }
248
+ }
249
+
250
+ /* The ring is decoration on top of a badge that is visible anyway, so it
251
+ simply goes away rather than pulsing its opacity in place. */
252
+ @media (prefers-reduced-motion: reduce) {
253
+ .badge__pulse {
254
+ display: none;
255
+ }
256
+ }
257
+
258
+ /* Forced colors paints the badge in system colours; a ring in the same
259
+ Canvas would read as a second, half-drawn badge. */
260
+ @media (forced-colors: active) {
261
+ .badge__pulse {
262
+ display: none;
263
+ }
264
+ }
265
+
209
266
  .badge--dot {
210
267
  min-width: var(--_dot-size);
211
268
  width: var(--_dot-size);
@@ -1 +1 @@
1
- {"version":3,"file":"badge.styles.js","sourceRoot":"","sources":["../../../../src/components/status-and-feedback/badge/badge.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAE7E,MAAM,CAAC,MAAM,WAAW,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;IAqB1B,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8NrB,CAAC"}
1
+ {"version":3,"file":"badge.styles.js","sourceRoot":"","sources":["../../../../src/components/status-and-feedback/badge/badge.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAE7E,MAAM,CAAC,MAAM,WAAW,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;IAuB1B,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqRrB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"badge.template.d.ts","sourceRoot":"","sources":["../../../../src/components/status-and-feedback/badge/badge.template.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,wBAAgB,QAAQ,CAAC,SAAS,EAAE,SAAS,wCAoB5C"}
1
+ {"version":3,"file":"badge.template.d.ts","sourceRoot":"","sources":["../../../../src/components/status-and-feedback/badge/badge.template.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,wBAAgB,QAAQ,CAAC,SAAS,EAAE,SAAS,wCAyB5C"}
@@ -6,12 +6,17 @@ export function template(component) {
6
6
  if (component._isIconOnly)
7
7
  modifiers.push('badge--icon-only');
8
8
  const classes = ['badge', ...modifiers].join(' ');
9
- const needsAriaImg = component._isDot || component._isIconOnly;
9
+ // A badge without text or an icon-only badge has nothing to read, so it carries
10
+ // its own label. Unless it is decorative: then the words beside it already say
11
+ // what the colour says, and announcing it again is noise.
12
+ const needsAriaImg = !component.decorative && (component._isDot || component._isIconOnly);
10
13
  return html `
11
14
  <span class=${classes}
12
15
  role=${needsAriaImg ? 'img' : nothing}
13
16
  aria-label=${needsAriaImg ? component._ariaLabel : nothing}
17
+ aria-hidden=${component.decorative ? 'true' : nothing}
14
18
  >
19
+ ${component.pulse ? html `<span class="badge__pulse"></span>` : ''}
15
20
  ${component.icon ? html `
16
21
  <span class="badge__icon">
17
22
  <nldd-icon name=${component.icon}></nldd-icon>
@@ -1 +1 @@
1
- {"version":3,"file":"badge.template.js","sourceRoot":"","sources":["../../../../src/components/status-and-feedback/badge/badge.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AAGpC,MAAM,UAAU,QAAQ,CAAC,SAAoB;IAC5C,MAAM,SAAS,GAAG,EAAE,CAAC;IACrB,IAAI,SAAS,CAAC,MAAM;QAAE,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACnD,IAAI,SAAS,CAAC,WAAW;QAAE,SAAS,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAC9D,MAAM,OAAO,GAAG,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAClD,MAAM,YAAY,GAAG,SAAS,CAAC,MAAM,IAAI,SAAS,CAAC,WAAW,CAAC;IAE/D,OAAO,IAAI,CAAA;gBACI,OAAO;UACb,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO;gBACxB,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO;;KAExD,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA;;uBAEH,SAAS,CAAC,IAAI;;IAEjC,CAAC,CAAC,CAAC,EAAE;KACJ,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAA,6BAA6B,SAAS,CAAC,aAAa,SAAS,CAAC,CAAC,CAAC,EAAE;;EAE9F,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"badge.template.js","sourceRoot":"","sources":["../../../../src/components/status-and-feedback/badge/badge.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AAGpC,MAAM,UAAU,QAAQ,CAAC,SAAoB;IAC5C,MAAM,SAAS,GAAG,EAAE,CAAC;IACrB,IAAI,SAAS,CAAC,MAAM;QAAE,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACnD,IAAI,SAAS,CAAC,WAAW;QAAE,SAAS,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAC9D,MAAM,OAAO,GAAG,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAClD,gFAAgF;IAChF,+EAA+E;IAC/E,0DAA0D;IAC1D,MAAM,YAAY,GAAG,CAAC,SAAS,CAAC,UAAU,IAAI,CAAC,SAAS,CAAC,MAAM,IAAI,SAAS,CAAC,WAAW,CAAC,CAAC;IAE1F,OAAO,IAAI,CAAA;gBACI,OAAO;UACb,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO;gBACxB,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO;iBAC5C,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;;KAEnD,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA,oCAAoC,CAAC,CAAC,CAAC,EAAE;KAC/D,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA;;uBAEH,SAAS,CAAC,IAAI;;IAEjC,CAAC,CAAC,CAAC,EAAE;KACJ,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAA,6BAA6B,SAAS,CAAC,aAAa,SAAS,CAAC,CAAC,CAAC,EAAE;;EAE9F,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"banner.styles.d.ts","sourceRoot":"","sources":["../../../../src/components/status-and-feedback/banner/banner.styles.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,YAAY,yBA8KxB,CAAC"}
1
+ {"version":3,"file":"banner.styles.d.ts","sourceRoot":"","sources":["../../../../src/components/status-and-feedback/banner/banner.styles.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,YAAY,yBAoLxB,CAAC"}
@@ -136,14 +136,20 @@ export const bannerStyles = css `
136
136
  padding-top: calc(var(--_text-icon-offset) - var(--primitives-space-2));
137
137
  }
138
138
 
139
+ /* A banner carries text it did not write: a server message, an identifier, a
140
+ URL. One token longer than the banner is wide would otherwise run past the
141
+ edge and get clipped, so a word that cannot fit on a line of its own is
142
+ broken rather than lost. */
139
143
  .banner__text {
140
144
  margin: 0;
145
+ overflow-wrap: break-word;
141
146
  font: var(--primitives-font-body-md-bold-tight);
142
147
  text-wrap: pretty;
143
148
  }
144
149
 
145
150
  .banner__supporting-text {
146
151
  margin: 0;
152
+ overflow-wrap: break-word;
147
153
  font: var(--primitives-font-body-md-regular-tight);
148
154
  text-wrap: pretty;
149
155
  }
@@ -1 +1 @@
1
- {"version":3,"file":"banner.styles.js","sourceRoot":"","sources":["../../../../src/components/status-and-feedback/banner/banner.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAE7E,MAAM,CAAC,MAAM,YAAY,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA4B3B,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkJrB,CAAC"}
1
+ {"version":3,"file":"banner.styles.js","sourceRoot":"","sources":["../../../../src/components/status-and-feedback/banner/banner.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAE7E,MAAM,CAAC,MAAM,YAAY,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA4B3B,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwJrB,CAAC"}
@@ -34,6 +34,8 @@ export declare class NLDDModalDialog extends LitElement {
34
34
  accessibleLabel: string;
35
35
  private _closing;
36
36
  private get _dialog();
37
+ /** Cancels a `show()` that is waiting for the first render; null when none is. */
38
+ private _cancelPendingOpen;
37
39
  show(): void;
38
40
  private _manageFocus;
39
41
  hide(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"modal-dialog.d.ts","sourceRoot":"","sources":["../../../../src/components/status-and-feedback/modal-dialog/modal-dialog.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AAYjC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,mCAAmC,CAAC;AAE3C,qBACa,eAAgB,SAAQ,UAAU;IAC9C,OAAgB,MAAM,0BAAqB;IAG3C,OAAO,EAAE,mBAAmB,GAAG,EAAE,CAAM;IAGvC,IAAI,SAAM;IAGV,IAAI,SAAM;IAGV,cAAc,SAAM;IAEpB,oFAAoF;IAEpF,eAAe,SAAM;IAErB,OAAO,CAAC,QAAQ,CAAS;IAEzB,OAAO,KAAK,OAAO,GAElB;IAED,IAAI,IAAI,IAAI;IAQZ,OAAO,CAAC,YAAY;IAapB,IAAI,IAAI,IAAI;IA+BZ,6CAA6C;IAC7C,OAAO,CAAC,cAAc,CAAK;IAE3B;;;mEAG+D;IAC/D,OAAO,CAAC,sBAAsB,CAAS;IAEvC,wBAAwB,GAAI,GAAG,YAAY,KAAG,IAAI,CAEhD;IAEF;;;;2EAIuE;IACvE,OAAO,CAAC,aAAa;IASrB,oBAAoB,GAAI,GAAG,UAAU,KAAG,IAAI,CAO3C;IAED,aAAa,CAAC,CAAC,EAAE,KAAK,GAAG,IAAI;IAKpB,MAAM;CAGf;AAED,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,qBAAqB;QAC9B,mBAAmB,EAAE,eAAe,CAAC;KACrC;CACD"}
1
+ {"version":3,"file":"modal-dialog.d.ts","sourceRoot":"","sources":["../../../../src/components/status-and-feedback/modal-dialog/modal-dialog.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AAajC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,mCAAmC,CAAC;AAE3C,qBACa,eAAgB,SAAQ,UAAU;IAC9C,OAAgB,MAAM,0BAAqB;IAG3C,OAAO,EAAE,mBAAmB,GAAG,EAAE,CAAM;IAGvC,IAAI,SAAM;IAGV,IAAI,SAAM;IAGV,cAAc,SAAM;IAEpB,oFAAoF;IAEpF,eAAe,SAAM;IAErB,OAAO,CAAC,QAAQ,CAAS;IAEzB,OAAO,KAAK,OAAO,GAElB;IAED,kFAAkF;IAClF,OAAO,CAAC,kBAAkB,CAA6B;IAEvD,IAAI,IAAI,IAAI;IAqBZ,OAAO,CAAC,YAAY;IAapB,IAAI,IAAI,IAAI;IAmCZ,6CAA6C;IAC7C,OAAO,CAAC,cAAc,CAAK;IAE3B;;;mEAG+D;IAC/D,OAAO,CAAC,sBAAsB,CAAS;IAEvC,wBAAwB,GAAI,GAAG,YAAY,KAAG,IAAI,CAEhD;IAEF;;;;2EAIuE;IACvE,OAAO,CAAC,aAAa;IASrB,oBAAoB,GAAI,GAAG,UAAU,KAAG,IAAI,CAO3C;IAED,aAAa,CAAC,CAAC,EAAE,KAAK,GAAG,IAAI;IAKpB,MAAM;CAGf;AAED,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,qBAAqB;QAC9B,mBAAmB,EAAE,eAAe,CAAC;KACrC;CACD"}
@@ -38,6 +38,7 @@ import { modalDialogStyles } from './modal-dialog.styles.js';
38
38
  import { modalDialogTemplate } from './modal-dialog.template.js';
39
39
  import { isPointerMode } from '../../../utilities/input-modality.js';
40
40
  import { focusAutofocusTarget } from '../../../utilities/autofocus.js';
41
+ import { openWhenRendered } from '../../../utilities/open-when-rendered.js';
41
42
  import '../inline-dialog/inline-dialog.js';
42
43
  let NLDDModalDialog = class NLDDModalDialog extends LitElement {
43
44
  constructor() {
@@ -49,6 +50,8 @@ let NLDDModalDialog = class NLDDModalDialog extends LitElement {
49
50
  /** Accessible name for the dialog — forwarded as aria-label. Falls back to text. */
50
51
  this.accessibleLabel = '';
51
52
  this._closing = false;
53
+ /** Cancels a `show()` that is waiting for the first render; null when none is. */
54
+ this._cancelPendingOpen = null;
52
55
  /** Timer id for the close fallback above. */
53
56
  this._closeFallback = 0;
54
57
  /** Whether the press preceding a click started on the backdrop rather than
@@ -73,7 +76,14 @@ let NLDDModalDialog = class NLDDModalDialog extends LitElement {
73
76
  }
74
77
  show() {
75
78
  const dialog = this._dialog;
76
- if (!dialog || dialog.open)
79
+ if (!dialog) {
80
+ this._cancelPendingOpen?.();
81
+ this._cancelPendingOpen = openWhenRendered(this, () => this._dialog, () => this.show());
82
+ return;
83
+ }
84
+ this._cancelPendingOpen?.();
85
+ this._cancelPendingOpen = null;
86
+ if (dialog.open)
77
87
  return;
78
88
  dialog.showModal();
79
89
  this._manageFocus();
@@ -93,6 +103,9 @@ let NLDDModalDialog = class NLDDModalDialog extends LitElement {
93
103
  dialog.focus();
94
104
  }
95
105
  hide() {
106
+ // A hide() beats a show() that is still waiting for the first render.
107
+ this._cancelPendingOpen?.();
108
+ this._cancelPendingOpen = null;
96
109
  const dialog = this._dialog;
97
110
  if (!dialog || !dialog.open || this._closing)
98
111
  return;