@nldd/design-system 0.8.49 → 0.8.51

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 (245) hide show
  1. package/dist/components/actions/button/button.styles.d.ts.map +1 -1
  2. package/dist/components/actions/button/button.styles.js +1 -0
  3. package/dist/components/actions/button/button.styles.js.map +1 -1
  4. package/dist/components/actions/icon-button/icon-button.styles.d.ts.map +1 -1
  5. package/dist/components/actions/icon-button/icon-button.styles.js +1 -0
  6. package/dist/components/actions/icon-button/icon-button.styles.js.map +1 -1
  7. package/dist/components/components.js +93 -86
  8. package/dist/components/content/code-viewer/code-viewer.d.ts +37 -0
  9. package/dist/components/content/code-viewer/code-viewer.d.ts.map +1 -1
  10. package/dist/components/content/code-viewer/code-viewer.i18n.d.ts +8 -0
  11. package/dist/components/content/code-viewer/code-viewer.i18n.d.ts.map +1 -0
  12. package/dist/components/content/code-viewer/code-viewer.i18n.js +7 -0
  13. package/dist/components/content/code-viewer/code-viewer.i18n.js.map +1 -0
  14. package/dist/components/content/code-viewer/code-viewer.js +104 -1
  15. package/dist/components/content/code-viewer/code-viewer.js.map +1 -1
  16. package/dist/components/content/code-viewer/code-viewer.styles.d.ts.map +1 -1
  17. package/dist/components/content/code-viewer/code-viewer.styles.js +112 -1
  18. package/dist/components/content/code-viewer/code-viewer.styles.js.map +1 -1
  19. package/dist/components/content/code-viewer/code-viewer.template.d.ts.map +1 -1
  20. package/dist/components/content/code-viewer/code-viewer.template.js +50 -3
  21. package/dist/components/content/code-viewer/code-viewer.template.js.map +1 -1
  22. package/dist/components/content/icon/icon-aliases.d.ts.map +1 -1
  23. package/dist/components/content/icon/icon-aliases.js +17 -0
  24. package/dist/components/content/icon/icon-aliases.js.map +1 -1
  25. package/dist/components/content/icon/icon-registry.d.ts.map +1 -1
  26. package/dist/components/content/icon/icon-registry.js +12 -0
  27. package/dist/components/content/icon/icon-registry.js.map +1 -1
  28. package/dist/components/content/image/image.d.ts +151 -0
  29. package/dist/components/content/image/image.d.ts.map +1 -0
  30. package/dist/components/content/image/image.i18n.d.ts +8 -0
  31. package/dist/components/content/image/image.i18n.d.ts.map +1 -0
  32. package/dist/components/content/image/image.i18n.js +7 -0
  33. package/dist/components/content/image/image.i18n.js.map +1 -0
  34. package/dist/components/content/image/image.js +320 -0
  35. package/dist/components/content/image/image.js.map +1 -0
  36. package/dist/components/content/image/image.styles.d.ts +2 -0
  37. package/dist/components/content/image/image.styles.d.ts.map +1 -0
  38. package/dist/components/content/image/image.styles.js +402 -0
  39. package/dist/components/content/image/image.styles.js.map +1 -0
  40. package/dist/components/content/image/image.template.d.ts +3 -0
  41. package/dist/components/content/image/image.template.d.ts.map +1 -0
  42. package/dist/components/content/image/image.template.js +109 -0
  43. package/dist/components/content/image/image.template.js.map +1 -0
  44. package/dist/components/content/image/lqip-encoder-element.d.ts +39 -0
  45. package/dist/components/content/image/lqip-encoder-element.d.ts.map +1 -0
  46. package/dist/components/content/image/lqip-encoder-element.js +240 -0
  47. package/dist/components/content/image/lqip-encoder-element.js.map +1 -0
  48. package/dist/components/content/image/lqip-encoder.d.ts +59 -0
  49. package/dist/components/content/image/lqip-encoder.d.ts.map +1 -0
  50. package/dist/components/content/image/lqip-encoder.js +279 -0
  51. package/dist/components/content/image/lqip-encoder.js.map +1 -0
  52. package/dist/components/content/rich-text/rich-text.d.ts +9 -0
  53. package/dist/components/content/rich-text/rich-text.d.ts.map +1 -1
  54. package/dist/components/content/rich-text/rich-text.i18n.d.ts +5 -0
  55. package/dist/components/content/rich-text/rich-text.i18n.d.ts.map +1 -0
  56. package/dist/components/content/rich-text/rich-text.i18n.js +4 -0
  57. package/dist/components/content/rich-text/rich-text.i18n.js.map +1 -0
  58. package/dist/components/content/rich-text/rich-text.js +61 -0
  59. package/dist/components/content/rich-text/rich-text.js.map +1 -1
  60. package/dist/components/content/tooltip/tooltip.d.ts +10 -0
  61. package/dist/components/content/tooltip/tooltip.d.ts.map +1 -1
  62. package/dist/components/content/tooltip/tooltip.js +74 -2
  63. package/dist/components/content/tooltip/tooltip.js.map +1 -1
  64. package/dist/components/{index-BVOcPb8I.js → index-DYnIl3ts.js} +5435 -2205
  65. package/dist/components/index.d.ts +5 -0
  66. package/dist/components/index.d.ts.map +1 -1
  67. package/dist/components/index.js +5 -0
  68. package/dist/components/index.js.map +1 -1
  69. package/dist/components/inputs/checkbox/checkbox.styles.d.ts.map +1 -1
  70. package/dist/components/inputs/checkbox/checkbox.styles.js +1 -0
  71. package/dist/components/inputs/checkbox/checkbox.styles.js.map +1 -1
  72. package/dist/components/inputs/combo-box/combo-box.styles.d.ts.map +1 -1
  73. package/dist/components/inputs/combo-box/combo-box.styles.js +4 -1
  74. package/dist/components/inputs/combo-box/combo-box.styles.js.map +1 -1
  75. package/dist/components/inputs/dropdown/dropdown.styles.d.ts.map +1 -1
  76. package/dist/components/inputs/dropdown/dropdown.styles.js +1 -0
  77. package/dist/components/inputs/dropdown/dropdown.styles.js.map +1 -1
  78. package/dist/components/inputs/multi-line-text-field/multi-line-text-field.styles.d.ts.map +1 -1
  79. package/dist/components/inputs/multi-line-text-field/multi-line-text-field.styles.js +4 -1
  80. package/dist/components/inputs/multi-line-text-field/multi-line-text-field.styles.js.map +1 -1
  81. package/dist/components/inputs/password-field/password-field.styles.d.ts.map +1 -1
  82. package/dist/components/inputs/password-field/password-field.styles.js +4 -1
  83. package/dist/components/inputs/password-field/password-field.styles.js.map +1 -1
  84. package/dist/components/inputs/radio-button/radio-button.styles.d.ts.map +1 -1
  85. package/dist/components/inputs/radio-button/radio-button.styles.js +1 -0
  86. package/dist/components/inputs/radio-button/radio-button.styles.js.map +1 -1
  87. package/dist/components/inputs/search-field/search-field.styles.d.ts.map +1 -1
  88. package/dist/components/inputs/search-field/search-field.styles.js +4 -1
  89. package/dist/components/inputs/search-field/search-field.styles.js.map +1 -1
  90. package/dist/components/inputs/segmented-control/segmented-control.styles.d.ts.map +1 -1
  91. package/dist/components/inputs/segmented-control/segmented-control.styles.js +1 -0
  92. package/dist/components/inputs/segmented-control/segmented-control.styles.js.map +1 -1
  93. package/dist/components/inputs/stepper/stepper.styles.d.ts.map +1 -1
  94. package/dist/components/inputs/stepper/stepper.styles.js +1 -0
  95. package/dist/components/inputs/stepper/stepper.styles.js.map +1 -1
  96. package/dist/components/inputs/switch/switch.styles.d.ts.map +1 -1
  97. package/dist/components/inputs/switch/switch.styles.js +1 -0
  98. package/dist/components/inputs/switch/switch.styles.js.map +1 -1
  99. package/dist/components/inputs/text-field/text-field.styles.d.ts.map +1 -1
  100. package/dist/components/inputs/text-field/text-field.styles.js +4 -1
  101. package/dist/components/inputs/text-field/text-field.styles.js.map +1 -1
  102. package/dist/components/inputs/toggle-button/toggle-button.d.ts +1 -1
  103. package/dist/components/inputs/toggle-button/toggle-button.d.ts.map +1 -1
  104. package/dist/components/inputs/toggle-button/toggle-button.js +22 -14
  105. package/dist/components/inputs/toggle-button/toggle-button.js.map +1 -1
  106. package/dist/components/inputs/toggle-button/toggle-button.styles.d.ts.map +1 -1
  107. package/dist/components/inputs/toggle-button/toggle-button.styles.js +16 -11
  108. package/dist/components/inputs/toggle-button/toggle-button.styles.js.map +1 -1
  109. package/dist/components/inputs/toggle-button/toggle-button.template.d.ts.map +1 -1
  110. package/dist/components/inputs/toggle-button/toggle-button.template.js +32 -16
  111. package/dist/components/inputs/toggle-button/toggle-button.template.js.map +1 -1
  112. package/dist/components/inputs/token/token.styles.d.ts.map +1 -1
  113. package/dist/components/inputs/token/token.styles.js +1 -0
  114. package/dist/components/inputs/token/token.styles.js.map +1 -1
  115. package/dist/components/layout/box/box.d.ts +6 -0
  116. package/dist/components/layout/box/box.d.ts.map +1 -1
  117. package/dist/components/layout/box/box.js +12 -1
  118. package/dist/components/layout/box/box.js.map +1 -1
  119. package/dist/components/layout/box/box.styles.d.ts.map +1 -1
  120. package/dist/components/layout/box/box.styles.js +40 -1
  121. package/dist/components/layout/box/box.styles.js.map +1 -1
  122. package/dist/components/layout/collection/collection.d.ts +1 -0
  123. package/dist/components/layout/collection/collection.d.ts.map +1 -1
  124. package/dist/components/layout/collection/collection.i18n.d.ts +1 -0
  125. package/dist/components/layout/collection/collection.i18n.d.ts.map +1 -1
  126. package/dist/components/layout/collection/collection.i18n.js +1 -0
  127. package/dist/components/layout/collection/collection.i18n.js.map +1 -1
  128. package/dist/components/layout/collection/collection.js +14 -0
  129. package/dist/components/layout/collection/collection.js.map +1 -1
  130. package/dist/components/layout/collection/collection.styles.d.ts.map +1 -1
  131. package/dist/components/layout/collection/collection.styles.js +27 -0
  132. package/dist/components/layout/collection/collection.styles.js.map +1 -1
  133. package/dist/components/layout/collection/collection.template.d.ts.map +1 -1
  134. package/dist/components/layout/collection/collection.template.js +12 -4
  135. package/dist/components/layout/collection/collection.template.js.map +1 -1
  136. package/dist/components/lists-and-menus/list/list.d.ts +10 -3
  137. package/dist/components/lists-and-menus/list/list.d.ts.map +1 -1
  138. package/dist/components/lists-and-menus/list/list.js +8 -3
  139. package/dist/components/lists-and-menus/list/list.js.map +1 -1
  140. package/dist/components/lists-and-menus/list/list.styles.d.ts.map +1 -1
  141. package/dist/components/lists-and-menus/list/list.styles.js +33 -6
  142. package/dist/components/lists-and-menus/list/list.styles.js.map +1 -1
  143. package/dist/components/lists-and-menus/list-item/list-item.js +1 -1
  144. package/dist/components/lists-and-menus/list-item/list-item.js.map +1 -1
  145. package/dist/components/lists-and-menus/menu/menu.styles.d.ts.map +1 -1
  146. package/dist/components/lists-and-menus/menu/menu.styles.js +1 -0
  147. package/dist/components/lists-and-menus/menu/menu.styles.js.map +1 -1
  148. package/dist/components/navigation/document-tab-bar/document-tab-bar.styles.d.ts.map +1 -1
  149. package/dist/components/navigation/document-tab-bar/document-tab-bar.styles.js +1 -0
  150. package/dist/components/navigation/document-tab-bar/document-tab-bar.styles.js.map +1 -1
  151. package/dist/components/navigation/menu-bar/menu-bar.styles.d.ts.map +1 -1
  152. package/dist/components/navigation/menu-bar/menu-bar.styles.js +1 -0
  153. package/dist/components/navigation/menu-bar/menu-bar.styles.js.map +1 -1
  154. package/dist/components/navigation/menu-bar-item/menu-bar-item.styles.d.ts.map +1 -1
  155. package/dist/components/navigation/menu-bar-item/menu-bar-item.styles.js +1 -0
  156. package/dist/components/navigation/menu-bar-item/menu-bar-item.styles.js.map +1 -1
  157. package/dist/components/navigation/pagination/pagination.styles.d.ts.map +1 -1
  158. package/dist/components/navigation/pagination/pagination.styles.js +1 -0
  159. package/dist/components/navigation/pagination/pagination.styles.js.map +1 -1
  160. package/dist/components/navigation/tab-bar/tab-bar.styles.d.ts.map +1 -1
  161. package/dist/components/navigation/tab-bar/tab-bar.styles.js +1 -0
  162. package/dist/components/navigation/tab-bar/tab-bar.styles.js.map +1 -1
  163. package/dist/components/navigation/top-navigation-bar/top-navigation-bar.styles.d.ts.map +1 -1
  164. package/dist/components/navigation/top-navigation-bar/top-navigation-bar.styles.js +10 -1
  165. package/dist/components/navigation/top-navigation-bar/top-navigation-bar.styles.js.map +1 -1
  166. package/dist/components/{prism-python-C1D7CYBc.js → prism-python-C9GXiQLy.js} +1 -1
  167. package/dist/components/{prism-rust-DI5vrP6V.js → prism-rust-De_U8Otq.js} +1 -1
  168. package/dist/components/{prism-typescript-DBgOPJ4M.js → prism-typescript-BJbUDHsa.js} +1 -1
  169. package/dist/components/sample-images/butterfly-1200.jpg +0 -0
  170. package/dist/components/sample-images/butterfly-1600.jpg +0 -0
  171. package/dist/components/sample-images/butterfly-480.jpg +0 -0
  172. package/dist/components/sample-images/butterfly-960.jpg +0 -0
  173. package/dist/components/status-and-feedback/badge/badge.d.ts +2 -2
  174. package/dist/components/status-and-feedback/badge/badge.d.ts.map +1 -1
  175. package/dist/components/status-and-feedback/badge/badge.js +1 -1
  176. package/dist/components/status-and-feedback/badge/badge.js.map +1 -1
  177. package/dist/components/status-and-feedback/badge/badge.styles.d.ts.map +1 -1
  178. package/dist/components/status-and-feedback/badge/badge.styles.js +126 -1
  179. package/dist/components/status-and-feedback/badge/badge.styles.js.map +1 -1
  180. package/dist/components/status-and-feedback/banner/banner.d.ts +89 -0
  181. package/dist/components/status-and-feedback/banner/banner.d.ts.map +1 -0
  182. package/dist/components/status-and-feedback/banner/banner.i18n.d.ts +5 -0
  183. package/dist/components/status-and-feedback/banner/banner.i18n.d.ts.map +1 -0
  184. package/dist/components/status-and-feedback/banner/banner.i18n.js +4 -0
  185. package/dist/components/status-and-feedback/banner/banner.i18n.js.map +1 -0
  186. package/dist/components/status-and-feedback/banner/banner.js +206 -0
  187. package/dist/components/status-and-feedback/banner/banner.js.map +1 -0
  188. package/dist/components/status-and-feedback/banner/banner.styles.d.ts +2 -0
  189. package/dist/components/status-and-feedback/banner/banner.styles.d.ts.map +1 -0
  190. package/dist/components/status-and-feedback/banner/banner.styles.js +160 -0
  191. package/dist/components/status-and-feedback/banner/banner.styles.js.map +1 -0
  192. package/dist/components/status-and-feedback/banner/banner.template.d.ts +3 -0
  193. package/dist/components/status-and-feedback/banner/banner.template.d.ts.map +1 -0
  194. package/dist/components/status-and-feedback/banner/banner.template.js +51 -0
  195. package/dist/components/status-and-feedback/banner/banner.template.js.map +1 -0
  196. package/dist/components/status-and-feedback/progress/progress.d.ts +77 -0
  197. package/dist/components/status-and-feedback/progress/progress.d.ts.map +1 -0
  198. package/dist/components/status-and-feedback/progress/progress.i18n.d.ts +5 -0
  199. package/dist/components/status-and-feedback/progress/progress.i18n.d.ts.map +1 -0
  200. package/dist/components/status-and-feedback/progress/progress.i18n.js +4 -0
  201. package/dist/components/status-and-feedback/progress/progress.i18n.js.map +1 -0
  202. package/dist/components/status-and-feedback/progress/progress.js +137 -0
  203. package/dist/components/status-and-feedback/progress/progress.js.map +1 -0
  204. package/dist/components/status-and-feedback/progress/progress.styles.d.ts +2 -0
  205. package/dist/components/status-and-feedback/progress/progress.styles.d.ts.map +1 -0
  206. package/dist/components/status-and-feedback/progress/progress.styles.js +57 -0
  207. package/dist/components/status-and-feedback/progress/progress.styles.js.map +1 -0
  208. package/dist/components/status-and-feedback/progress/progress.template.d.ts +4 -0
  209. package/dist/components/status-and-feedback/progress/progress.template.d.ts.map +1 -0
  210. package/dist/components/status-and-feedback/progress/progress.template.js +26 -0
  211. package/dist/components/status-and-feedback/progress/progress.template.js.map +1 -0
  212. package/dist/components/status-and-feedback/progress-bar/progress-bar.d.ts +131 -0
  213. package/dist/components/status-and-feedback/progress-bar/progress-bar.d.ts.map +1 -0
  214. package/dist/components/status-and-feedback/progress-bar/progress-bar.i18n.d.ts +8 -0
  215. package/dist/components/status-and-feedback/progress-bar/progress-bar.i18n.d.ts.map +1 -0
  216. package/dist/components/status-and-feedback/progress-bar/progress-bar.i18n.js +7 -0
  217. package/dist/components/status-and-feedback/progress-bar/progress-bar.i18n.js.map +1 -0
  218. package/dist/components/status-and-feedback/progress-bar/progress-bar.js +426 -0
  219. package/dist/components/status-and-feedback/progress-bar/progress-bar.js.map +1 -0
  220. package/dist/components/status-and-feedback/progress-bar/progress-bar.styles.d.ts +3 -0
  221. package/dist/components/status-and-feedback/progress-bar/progress-bar.styles.d.ts.map +1 -0
  222. package/dist/components/status-and-feedback/progress-bar/progress-bar.styles.js +400 -0
  223. package/dist/components/status-and-feedback/progress-bar/progress-bar.styles.js.map +1 -0
  224. package/dist/components/status-and-feedback/progress-bar/progress-bar.template.d.ts +3 -0
  225. package/dist/components/status-and-feedback/progress-bar/progress-bar.template.d.ts.map +1 -0
  226. package/dist/components/status-and-feedback/progress-bar/progress-bar.template.js +60 -0
  227. package/dist/components/status-and-feedback/progress-bar/progress-bar.template.js.map +1 -0
  228. package/dist/components/status-and-feedback/progress-circle/progress-circle.d.ts +132 -0
  229. package/dist/components/status-and-feedback/progress-circle/progress-circle.d.ts.map +1 -0
  230. package/dist/components/status-and-feedback/progress-circle/progress-circle.i18n.d.ts +8 -0
  231. package/dist/components/status-and-feedback/progress-circle/progress-circle.i18n.d.ts.map +1 -0
  232. package/dist/components/status-and-feedback/progress-circle/progress-circle.i18n.js +7 -0
  233. package/dist/components/status-and-feedback/progress-circle/progress-circle.i18n.js.map +1 -0
  234. package/dist/components/status-and-feedback/progress-circle/progress-circle.js +437 -0
  235. package/dist/components/status-and-feedback/progress-circle/progress-circle.js.map +1 -0
  236. package/dist/components/status-and-feedback/progress-circle/progress-circle.styles.d.ts +3 -0
  237. package/dist/components/status-and-feedback/progress-circle/progress-circle.styles.d.ts.map +1 -0
  238. package/dist/components/status-and-feedback/progress-circle/progress-circle.styles.js +245 -0
  239. package/dist/components/status-and-feedback/progress-circle/progress-circle.styles.js.map +1 -0
  240. package/dist/components/status-and-feedback/progress-circle/progress-circle.template.d.ts +14 -0
  241. package/dist/components/status-and-feedback/progress-circle/progress-circle.template.d.ts.map +1 -0
  242. package/dist/components/status-and-feedback/progress-circle/progress-circle.template.js +115 -0
  243. package/dist/components/status-and-feedback/progress-circle/progress-circle.template.js.map +1 -0
  244. package/dist/css/settings.css +346 -18
  245. package/package.json +21 -1
@@ -1,18 +1,36 @@
1
1
  import { html, nothing } from 'lit';
2
2
  import '../../content/tooltip/tooltip.js';
3
3
  export function toggleButtonTemplate(component) {
4
- const variant = component._effectiveVariant;
5
- const showText = (variant === 'text' || variant === 'icon-and-text') && !!component.text;
6
- const label = component.accessibleLabel || nothing;
7
- const tooltipText = variant === 'icon' ? (component.accessibleLabel || component.text) : '';
8
- // Always render the slot so auto-detect can observe slotchange and so
9
- // consumers can supply an icon via slot before the attribute. CSS hides
10
- // the icon when variant resolves to 'text'. When variant is explicitly
11
- // 'icon' but the consumer hasn't supplied one, fall back to the
12
- // icon-placeholder as a visible hint.
4
+ /* `variant` forces what's rendered (not just styling):
5
+ * - 'icon' suppress text even if provided
6
+ * - 'text' → suppress icon even if provided
7
+ * - 'icon-and-text' same as unset: render whatever is there
8
+ *
9
+ * Styling (square vs auto, icon size) is driven entirely by what's
10
+ * in the DOM via :has(.toggle-button__text) in the stylesheet. */
11
+ const showText = component.variant !== 'icon' && !!component.text;
12
+ const showIcon = component.variant !== 'text' && component._hasIcon;
13
+ /* When variant="icon" hides a provided text, fall the text back to
14
+ * aria-label so screen readers still announce the button. Explicit
15
+ * accessible-label always wins. */
16
+ const ariaLabel = component.accessibleLabel
17
+ || (component.variant === 'icon' && component.text ? component.text : '')
18
+ || nothing;
19
+ /* Tooltip surfaces the off-screen label when an icon is visible but
20
+ * no text is. accessible-label takes precedence; text is the fallback
21
+ * (e.g. variant="icon" + text="Bold" → tooltip shows "Bold"). */
22
+ const isIconOnlyDisplay = showIcon && !showText;
23
+ const tooltipText = isIconOnlyDisplay ? (component.accessibleLabel || component.text || '') : '';
24
+ /* Always render the icon area so the slot stays in shadow DOM for
25
+ * assignment + slotchange detection — even when variant="text" hides
26
+ * it visually (CSS handles that via :host([variant="text"]) below).
27
+ * Without the slot present, slotted content can't be projected and a
28
+ * subsequent variant change couldn't pick it up because no slotchange
29
+ * would have fired. An empty slot collapses to 0×0 via display:contents,
30
+ * so it costs nothing visually. */
13
31
  const icon = component.icon
14
32
  ? html `<nldd-icon class="toggle-button__icon" name=${component.icon}></nldd-icon>`
15
- : html `<slot name="icon" @slotchange=${component.requestUpdate}>${variant === 'icon' ? html `<nldd-icon class="toggle-button__icon" name="icon-placeholder"></nldd-icon>` : nothing}</slot>`;
33
+ : html `<slot name="icon" @slotchange=${component.requestUpdate}></slot>`;
16
34
  const textContent = showText
17
35
  ? html `<span class="toggle-button__text">${component.text}</span>`
18
36
  : nothing;
@@ -20,14 +38,13 @@ export function toggleButtonTemplate(component) {
20
38
  if (component.type === 'checkbox' || component.type === 'radio') {
21
39
  result = html `
22
40
  <label class="toggle-button">
23
- <input
24
- class="toggle-button__input"
41
+ <input class="toggle-button__input"
25
42
  type=${component.type}
26
43
  .checked=${component.selected}
27
44
  ?disabled=${component.disabled}
28
45
  name=${component.name || nothing}
29
46
  value=${component.value}
30
- aria-label=${label}
47
+ aria-label=${ariaLabel}
31
48
  @change=${component._handleInputChange}
32
49
  >
33
50
  ${icon}
@@ -37,12 +54,11 @@ export function toggleButtonTemplate(component) {
37
54
  }
38
55
  else {
39
56
  result = html `
40
- <button
41
- class="toggle-button"
57
+ <button class="toggle-button"
42
58
  type="button"
43
59
  aria-pressed=${component.selected}
44
60
  ?disabled=${component.disabled}
45
- aria-label=${label}
61
+ aria-label=${ariaLabel}
46
62
  @click=${component._handleButtonClick}
47
63
  >
48
64
  ${icon}
@@ -1 +1 @@
1
- {"version":3,"file":"toggle-button.template.js","sourceRoot":"","sources":["../../../../src/components/inputs/toggle-button/toggle-button.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAkB,MAAM,KAAK,CAAC;AAEpD,OAAO,kCAAkC,CAAC;AAG1C,MAAM,UAAU,oBAAoB,CAAC,SAA2B;IAC/D,MAAM,OAAO,GAAG,SAAS,CAAC,iBAAiB,CAAC;IAC5C,MAAM,QAAQ,GAAG,CAAC,OAAO,KAAK,MAAM,IAAI,OAAO,KAAK,eAAe,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC;IACzF,MAAM,KAAK,GAAG,SAAS,CAAC,eAAe,IAAI,OAAO,CAAC;IACnD,MAAM,WAAW,GAAG,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,eAAe,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAE5F,sEAAsE;IACtE,wEAAwE;IACxE,uEAAuE;IACvE,gEAAgE;IAChE,sCAAsC;IACtC,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI;QAC1B,CAAC,CAAC,IAAI,CAAA,+CAA+C,SAAS,CAAC,IAAI,eAAe;QAClF,CAAC,CAAC,IAAI,CAAA,iCAAiC,SAAS,CAAC,aAAa,IAAI,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAA,6EAA6E,CAAC,CAAC,CAAC,OAAO,SAAS,CAAC;IAE7L,MAAM,WAAW,GAAG,QAAQ;QAC3B,CAAC,CAAC,IAAI,CAAA,qCAAqC,SAAS,CAAC,IAAI,SAAS;QAClE,CAAC,CAAC,OAAO,CAAC;IAEX,IAAI,MAAsB,CAAC;IAE3B,IAAI,SAAS,CAAC,IAAI,KAAK,UAAU,IAAI,SAAS,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QACjE,MAAM,GAAG,IAAI,CAAA;;;;YAIH,SAAS,CAAC,IAAI;gBACV,SAAS,CAAC,QAAQ;iBACjB,SAAS,CAAC,QAAQ;YACvB,SAAS,CAAC,IAAI,IAAI,OAAO;aACxB,SAAS,CAAC,KAAK;kBACV,KAAK;eACR,SAAS,CAAC,kBAAkB;;MAErC,IAAI;MACJ,WAAW;;GAEd,CAAC;IACH,CAAC;SAAM,CAAC;QACP,MAAM,GAAG,IAAI,CAAA;;;;mBAII,SAAS,CAAC,QAAQ;gBACrB,SAAS,CAAC,QAAQ;iBACjB,KAAK;aACT,SAAS,CAAC,kBAAkB;;MAEnC,IAAI;MACJ,WAAW;;GAEd,CAAC;IACH,CAAC;IAED,IAAI,WAAW,EAAE,CAAC;QACjB,OAAO,IAAI,CAAA,sBAAsB,WAAW,IAAI,MAAM,iBAAiB,CAAC;IACzE,CAAC;IACD,OAAO,MAAM,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"toggle-button.template.js","sourceRoot":"","sources":["../../../../src/components/inputs/toggle-button/toggle-button.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAkB,MAAM,KAAK,CAAC;AAEpD,OAAO,kCAAkC,CAAC;AAG1C,MAAM,UAAU,oBAAoB,CAAC,SAA2B;IAC/D;;;;;;sEAMkE;IAClE,MAAM,QAAQ,GAAG,SAAS,CAAC,OAAO,KAAK,MAAM,IAAI,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC;IAClE,MAAM,QAAQ,GAAG,SAAS,CAAC,OAAO,KAAK,MAAM,IAAI,SAAS,CAAC,QAAQ,CAAC;IAEpE;;uCAEmC;IACnC,MAAM,SAAS,GAAG,SAAS,CAAC,eAAe;WACvC,CAAC,SAAS,CAAC,OAAO,KAAK,MAAM,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;WACtE,OAAO,CAAC;IAEZ;;qEAEiE;IACjE,MAAM,iBAAiB,GAAG,QAAQ,IAAI,CAAC,QAAQ,CAAC;IAChD,MAAM,WAAW,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,eAAe,IAAI,SAAS,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAEjG;;;;;;uCAMmC;IACnC,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI;QAC1B,CAAC,CAAC,IAAI,CAAA,+CAA+C,SAAS,CAAC,IAAI,eAAe;QAClF,CAAC,CAAC,IAAI,CAAA,iCAAiC,SAAS,CAAC,aAAa,UAAU,CAAC;IAE1E,MAAM,WAAW,GAAG,QAAQ;QAC3B,CAAC,CAAC,IAAI,CAAA,qCAAqC,SAAS,CAAC,IAAI,SAAS;QAClE,CAAC,CAAC,OAAO,CAAC;IAEX,IAAI,MAAsB,CAAC;IAE3B,IAAI,SAAS,CAAC,IAAI,KAAK,UAAU,IAAI,SAAS,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QACjE,MAAM,GAAG,IAAI,CAAA;;;YAGH,SAAS,CAAC,IAAI;gBACV,SAAS,CAAC,QAAQ;iBACjB,SAAS,CAAC,QAAQ;YACvB,SAAS,CAAC,IAAI,IAAI,OAAO;aACxB,SAAS,CAAC,KAAK;kBACV,SAAS;eACZ,SAAS,CAAC,kBAAkB;;MAErC,IAAI;MACJ,WAAW;;GAEd,CAAC;IACH,CAAC;SAAM,CAAC;QACP,MAAM,GAAG,IAAI,CAAA;;;mBAGI,SAAS,CAAC,QAAQ;gBACrB,SAAS,CAAC,QAAQ;iBACjB,SAAS;aACb,SAAS,CAAC,kBAAkB;;MAEnC,IAAI;MACJ,WAAW;;GAEd,CAAC;IACH,CAAC;IAED,IAAI,WAAW,EAAE,CAAC;QACjB,OAAO,IAAI,CAAA,sBAAsB,WAAW,IAAI,MAAM,iBAAiB,CAAC;IACzE,CAAC;IACD,OAAO,MAAM,CAAC;AACf,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"token.styles.d.ts","sourceRoot":"","sources":["../../../../src/components/inputs/token/token.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,WAAW,yBAoHvB,CAAC"}
1
+ {"version":3,"file":"token.styles.d.ts","sourceRoot":"","sources":["../../../../src/components/inputs/token/token.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,WAAW,yBAqHvB,CAAC"}
@@ -6,6 +6,7 @@ export const tokenStyles = css `
6
6
 
7
7
  :host {
8
8
  display: inline-block;
9
+ user-select: none;
9
10
  -webkit-tap-highlight-color: transparent;
10
11
  }
11
12
 
@@ -1 +1 @@
1
- {"version":3,"file":"token.styles.js","sourceRoot":"","sources":["../../../../src/components/inputs/token/token.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,WAAW,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoH7B,CAAC"}
1
+ {"version":3,"file":"token.styles.js","sourceRoot":"","sources":["../../../../src/components/inputs/token/token.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,WAAW,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqH7B,CAAC"}
@@ -6,11 +6,17 @@
6
6
  * helping users understand their relationship at a glance.
7
7
  *
8
8
  * @element nldd-box
9
+ * @attr {'tinted'|'base'} background - Surface fill.
10
+ * - `tinted` (default): for a box on a plain page bg.
11
+ * - `base`: for a box sitting on an already-tinted parent (the border
12
+ * ring gets +2 palette steps so it still reads against a card-on-card).
9
13
  * @slot - Place components inside the box
10
14
  */
11
15
  import { LitElement } from 'lit';
16
+ export type BoxBackground = 'tinted' | 'base';
12
17
  export declare class NLDDBox extends LitElement {
13
18
  static styles: import("lit").CSSResult;
19
+ background: BoxBackground;
14
20
  render(): import("lit-html").TemplateResult;
15
21
  }
16
22
  declare global {
@@ -1 +1 @@
1
- {"version":3,"file":"box.d.ts","sourceRoot":"","sources":["../../../../src/components/layout/box/box.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AAKjC,qBACa,OAAQ,SAAQ,UAAU;IACtC,OAAgB,MAAM,0BAAa;IAE1B,MAAM;CAGf;AAED,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,qBAAqB;QAC9B,UAAU,EAAE,OAAO,CAAC;KACpB;CACD"}
1
+ {"version":3,"file":"box.d.ts","sourceRoot":"","sources":["../../../../src/components/layout/box/box.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AAKjC,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE9C,qBACa,OAAQ,SAAQ,UAAU;IACtC,OAAgB,MAAM,0BAAa;IAGnC,UAAU,EAAE,aAAa,CAAY;IAE5B,MAAM;CAGf;AAED,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,qBAAqB;QAC9B,UAAU,EAAE,OAAO,CAAC;KACpB;CACD"}
@@ -12,18 +12,29 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
12
12
  * helping users understand their relationship at a glance.
13
13
  *
14
14
  * @element nldd-box
15
+ * @attr {'tinted'|'base'} background - Surface fill.
16
+ * - `tinted` (default): for a box on a plain page bg.
17
+ * - `base`: for a box sitting on an already-tinted parent (the border
18
+ * ring gets +2 palette steps so it still reads against a card-on-card).
15
19
  * @slot - Place components inside the box
16
20
  */
17
21
  import { LitElement } from 'lit';
18
- import { customElement } from 'lit/decorators.js';
22
+ import { customElement, property } from 'lit/decorators.js';
19
23
  import { boxStyles } from './box.styles.js';
20
24
  import { boxTemplate } from './box.template.js';
21
25
  let NLDDBox = class NLDDBox extends LitElement {
26
+ constructor() {
27
+ super(...arguments);
28
+ this.background = 'tinted';
29
+ }
22
30
  render() {
23
31
  return boxTemplate(this);
24
32
  }
25
33
  };
26
34
  NLDDBox.styles = boxStyles;
35
+ __decorate([
36
+ property({ reflect: true })
37
+ ], NLDDBox.prototype, "background", void 0);
27
38
  NLDDBox = __decorate([
28
39
  customElement('nldd-box')
29
40
  ], NLDDBox);
@@ -1 +1 @@
1
- {"version":3,"file":"box.js","sourceRoot":"","sources":["../../../../src/components/layout/box/box.ts"],"names":[],"mappings":";;;;;;AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGzC,IAAM,OAAO,GAAb,MAAM,OAAQ,SAAQ,UAAU;IAG7B,MAAM;QACd,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;;AAJe,cAAM,GAAG,SAAS,AAAZ,CAAa;AADvB,OAAO;IADnB,aAAa,CAAC,UAAU,CAAC;GACb,OAAO,CAMnB"}
1
+ {"version":3,"file":"box.js","sourceRoot":"","sources":["../../../../src/components/layout/box/box.ts"],"names":[],"mappings":";;;;;;AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAKzC,IAAM,OAAO,GAAb,MAAM,OAAQ,SAAQ,UAAU;IAAhC;;QAIN,eAAU,GAAkB,QAAQ,CAAC;IAKtC,CAAC;IAHS,MAAM;QACd,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;;AAPe,cAAM,GAAG,SAAS,AAAZ,CAAa;AAGnC;IADC,QAAQ,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;2CACS;AAJzB,OAAO;IADnB,aAAa,CAAC,UAAU,CAAC;GACb,OAAO,CASnB"}
@@ -1 +1 @@
1
- {"version":3,"file":"box.styles.d.ts","sourceRoot":"","sources":["../../../../src/components/layout/box/box.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,SAAS,yBAsBrB,CAAC"}
1
+ {"version":3,"file":"box.styles.d.ts","sourceRoot":"","sources":["../../../../src/components/layout/box/box.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,SAAS,yBA6DrB,CAAC"}
@@ -5,6 +5,9 @@ export const boxStyles = css `
5
5
  /* # Host */
6
6
 
7
7
  :host {
8
+ --_background-color: var(--components-box-background-color);
9
+ --_border-color: var(--components-box-border-color);
10
+
8
11
  display: block;
9
12
  }
10
13
 
@@ -13,13 +16,49 @@ export const boxStyles = css `
13
16
  }
14
17
 
15
18
 
19
+ /* ## Background variants
20
+ Default is tinted (matches :host above). base = card-on-tinted, the
21
+ border ring picks the +2-step semantic so the frame still reads
22
+ against an already-tinted parent. */
23
+
24
+ :host([background="tinted"]) {
25
+ --_background-color: var(--components-box-background-color);
26
+ --_border-color: var(--components-box-border-color);
27
+ }
28
+
29
+ :host([background="base"]) {
30
+ --_background-color: var(--components-box-base-background-color);
31
+ --_border-color: var(--components-box-base-border-color);
32
+ }
33
+
34
+
16
35
  /* # Block */
17
36
 
18
37
  .box {
19
38
  box-sizing: border-box;
20
39
  border-radius: var(--components-box-corner-radius);
21
- background-color: var(--components-box-background-color);
40
+ /* Inner box-shadow paints a 1px border ring inside the radius
41
+ without taking layout space. The color is one to two palette
42
+ steps above the surface bg depending on the variant, giving the
43
+ box a defined edge that reads as "subtle dimensional lift"
44
+ rather than a hard border. */
45
+ box-shadow: inset 0 0 0 1px var(--_border-color);
46
+ background-color: var(--_background-color);
22
47
  padding: var(--components-box-padding);
23
48
  }
49
+
50
+
51
+ /* # Accessibility
52
+ box-shadow is dropped by Windows High Contrast / forced-colors mode,
53
+ so the border ring would disappear and the box would lose its
54
+ defined edge against the system background. Restore the edge with a
55
+ real border in that mode. CanvasText is the system foreground color
56
+ so the border always meets contrast. */
57
+
58
+ @media (forced-colors: active) {
59
+ .box {
60
+ border: 1px solid CanvasText;
61
+ }
62
+ }
24
63
  `;
25
64
  //# sourceMappingURL=box.styles.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"box.styles.js","sourceRoot":"","sources":["../../../../src/components/layout/box/box.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,SAAS,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;CAsB3B,CAAC"}
1
+ {"version":3,"file":"box.styles.js","sourceRoot":"","sources":["../../../../src/components/layout/box/box.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,SAAS,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6D3B,CAAC"}
@@ -50,6 +50,7 @@ export declare class NLDDCollection extends LitElement {
50
50
  _totalCount: number;
51
51
  _atStart: boolean;
52
52
  _atEnd: boolean;
53
+ _isScrollable: boolean;
53
54
  _hasFooterSlot: boolean;
54
55
  _onFooterSlotChange: (e: Event) => void;
55
56
  private _itemsEl;
@@ -1 +1 @@
1
- {"version":3,"file":"collection.d.ts","sourceRoot":"","sources":["../../../../src/components/layout/collection/collection.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AAKjC,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AACvE,OAAO,gCAAgC,CAAC;AACxC,OAAO,wCAAwC,CAAC;AAChD,OAAO,0CAA0C,CAAC;AAClD,OAAO,4BAA4B,CAAC;AAEpC,KAAK,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,mBAAmB,CAAC;AAEpD,qBACa,cAAe,SAAQ,UAAU;IAC7C,OAAgB,MAAM,0BAAoB;IAG1C,MAAM,EAAE,MAAM,CAAU;IAGxB,YAAY,UAAS;IAGrB,QAAQ,SAAM;IAGd,QAAQ,UAAS;IAGjB,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAG9B,YAAY,EAAE,OAAO,CAAC,0BAA0B,CAAC,CAAM;IAIhD,EAAE,CAAC,GAAG,EAAE,MAAM,0BAA0B,GAAG,MAAM;IAKxD,aAAa,SAAK;IAGlB,WAAW,SAAK;IAGhB,QAAQ,UAAQ;IAGhB,MAAM,UAAS;IAGf,cAAc,UAAS;IAEvB,mBAAmB,GAAI,GAAG,KAAK,KAAG,IAAI,CAGpC;IAGF,OAAO,CAAC,QAAQ,CAAe;IAE/B,OAAO,CAAC,eAAe,CAKrB;IAGF,OAAO,CAAC,YAAY,CAAsB;IAE1C,OAAO,CAAC,qBAAqB,CAAmC;IAChE,OAAO,CAAC,eAAe,CAA6B;IACpD,OAAO,CAAC,uBAAuB,CAAS;IAE/B,iBAAiB,IAAI,IAAI;IAKzB,oBAAoB,IAAI,IAAI;IAM5B,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAyB/D,OAAO,CAAC,qBAAqB;IAW7B,OAAO,CAAC,wBAAwB;IAOhC,aAAa,CAAC,CAAC,EAAE,KAAK,GAAG,IAAI;IAS7B,OAAO,CAAC,gBAAgB;IAQxB,SAAS,IAAI,IAAI;IAMjB,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED,SAAS,CAAC,SAAS,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI;IAOzB,MAAM;CAGf;AAED,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,qBAAqB;QAC9B,iBAAiB,EAAE,cAAc,CAAC;KAClC;CACD"}
1
+ {"version":3,"file":"collection.d.ts","sourceRoot":"","sources":["../../../../src/components/layout/collection/collection.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AAKjC,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AACvE,OAAO,gCAAgC,CAAC;AACxC,OAAO,wCAAwC,CAAC;AAChD,OAAO,0CAA0C,CAAC;AAClD,OAAO,4BAA4B,CAAC;AAEpC,KAAK,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,mBAAmB,CAAC;AAEpD,qBACa,cAAe,SAAQ,UAAU;IAC7C,OAAgB,MAAM,0BAAoB;IAG1C,MAAM,EAAE,MAAM,CAAU;IAGxB,YAAY,UAAS;IAGrB,QAAQ,SAAM;IAGd,QAAQ,UAAS;IAGjB,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAG9B,YAAY,EAAE,OAAO,CAAC,0BAA0B,CAAC,CAAM;IAIhD,EAAE,CAAC,GAAG,EAAE,MAAM,0BAA0B,GAAG,MAAM;IAKxD,aAAa,SAAK;IAGlB,WAAW,SAAK;IAGhB,QAAQ,UAAQ;IAGhB,MAAM,UAAS;IAGf,aAAa,UAAS;IAGtB,cAAc,UAAS;IAEvB,mBAAmB,GAAI,GAAG,KAAK,KAAG,IAAI,CAGpC;IAGF,OAAO,CAAC,QAAQ,CAAe;IAE/B,OAAO,CAAC,eAAe,CASrB;IAGF,OAAO,CAAC,YAAY,CAAsB;IAE1C,OAAO,CAAC,qBAAqB,CAAmC;IAChE,OAAO,CAAC,eAAe,CAA6B;IACpD,OAAO,CAAC,uBAAuB,CAAS;IAE/B,iBAAiB,IAAI,IAAI;IAKzB,oBAAoB,IAAI,IAAI;IAM5B,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAyB/D,OAAO,CAAC,qBAAqB;IAgB7B,OAAO,CAAC,wBAAwB;IAQhC,aAAa,CAAC,CAAC,EAAE,KAAK,GAAG,IAAI;IAS7B,OAAO,CAAC,gBAAgB;IAQxB,SAAS,IAAI,IAAI;IAMjB,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED,SAAS,CAAC,SAAS,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI;IAOzB,MAAM;CAGf;AAED,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,qBAAqB;QAC9B,iBAAiB,EAAE,cAAc,CAAC;KAClC;CACD"}
@@ -2,6 +2,7 @@ export declare const nlddCollectionTranslations: {
2
2
  'components.collection.previous-action': string;
3
3
  'components.collection.next-action': string;
4
4
  'components.collection.load-more-action': string;
5
+ 'components.collection.region-label': string;
5
6
  };
6
7
  export type NLDDCollectionTranslations = typeof nlddCollectionTranslations;
7
8
  //# sourceMappingURL=collection.i18n.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"collection.i18n.d.ts","sourceRoot":"","sources":["../../../../src/components/layout/collection/collection.i18n.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,0BAA0B;;;;CAItC,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG,OAAO,0BAA0B,CAAC"}
1
+ {"version":3,"file":"collection.i18n.d.ts","sourceRoot":"","sources":["../../../../src/components/layout/collection/collection.i18n.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,0BAA0B;;;;;CAKtC,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG,OAAO,0BAA0B,CAAC"}
@@ -2,5 +2,6 @@ export const nlddCollectionTranslations = {
2
2
  'components.collection.previous-action': 'Vorige',
3
3
  'components.collection.next-action': 'Volgende',
4
4
  'components.collection.load-more-action': 'Toon meer',
5
+ 'components.collection.region-label': 'Collectie',
5
6
  };
6
7
  //# sourceMappingURL=collection.i18n.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"collection.i18n.js","sourceRoot":"","sources":["../../../../src/components/layout/collection/collection.i18n.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACzC,uCAAuC,EAAE,QAAQ;IACjD,mCAAmC,EAAE,UAAU;IAC/C,wCAAwC,EAAE,WAAW;CACrD,CAAC"}
1
+ {"version":3,"file":"collection.i18n.js","sourceRoot":"","sources":["../../../../src/components/layout/collection/collection.i18n.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACzC,uCAAuC,EAAE,QAAQ;IACjD,mCAAmC,EAAE,UAAU;IAC/C,wCAAwC,EAAE,WAAW;IACrD,oCAAoC,EAAE,WAAW;CACjD,CAAC"}
@@ -57,6 +57,7 @@ let NLDDCollection = class NLDDCollection extends LitElement {
57
57
  this._totalCount = 0;
58
58
  this._atStart = true;
59
59
  this._atEnd = false;
60
+ this._isScrollable = false;
60
61
  this._hasFooterSlot = false;
61
62
  this._onFooterSlotChange = (e) => {
62
63
  const slot = e.target;
@@ -68,6 +69,10 @@ let NLDDCollection = class NLDDCollection extends LitElement {
68
69
  return;
69
70
  this._atStart = el.scrollLeft < 1;
70
71
  this._atEnd = el.scrollLeft + el.clientWidth >= el.scrollWidth - 1;
72
+ /* Track overflow so the template can make the scroll container
73
+ * keyboard-focusable. Without focus, arrow-key users can't scroll
74
+ * a non-focusable region (WCAG 2.1.1). */
75
+ this._isScrollable = el.scrollWidth > el.clientWidth;
71
76
  };
72
77
  this._scrollListenerAttached = false;
73
78
  }
@@ -113,6 +118,11 @@ let NLDDCollection = class NLDDCollection extends LitElement {
113
118
  this._resizeObserver = new ResizeObserver(() => this._scrollListener());
114
119
  this._resizeObserver.observe(this._itemsEl);
115
120
  this._scrollListenerAttached = true;
121
+ // Compute initial overflow synchronously. The ResizeObserver only
122
+ // fires on the next animation frame, so without this the first
123
+ // render shows tabindex/aria-label missing until the observer
124
+ // catches up — flaky in tests and a brief flash in real use.
125
+ this._scrollListener();
116
126
  }
117
127
  }
118
128
  _teardownScrollListeners() {
@@ -120,6 +130,7 @@ let NLDDCollection = class NLDDCollection extends LitElement {
120
130
  this._resizeObserver?.disconnect();
121
131
  this._resizeObserver = undefined;
122
132
  this._scrollListenerAttached = false;
133
+ this._isScrollable = false;
123
134
  }
124
135
  _onSlotChange(e) {
125
136
  const slot = e.target;
@@ -185,6 +196,9 @@ __decorate([
185
196
  __decorate([
186
197
  state()
187
198
  ], NLDDCollection.prototype, "_atEnd", void 0);
199
+ __decorate([
200
+ state()
201
+ ], NLDDCollection.prototype, "_isScrollable", void 0);
188
202
  __decorate([
189
203
  state()
190
204
  ], NLDDCollection.prototype, "_hasFooterSlot", void 0);
@@ -1 +1 @@
1
- {"version":3,"file":"collection.js","sourceRoot":"","sources":["../../../../src/components/layout/collection/collection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"collection.js","sourceRoot":"","sources":["../../../../src/components/layout/collection/collection.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"collection.styles.d.ts","sourceRoot":"","sources":["../../../../src/components/layout/collection/collection.styles.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,gBAAgB,yBAwH5B,CAAC"}
1
+ {"version":3,"file":"collection.styles.d.ts","sourceRoot":"","sources":["../../../../src/components/layout/collection/collection.styles.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,gBAAgB,yBAmJ5B,CAAC"}
@@ -9,6 +9,7 @@ export const collectionStyles = css `
9
9
 
10
10
  :host {
11
11
  --_item-width: var(--primitives-area-280);
12
+ --_focus-ring-z-index: 1;
12
13
 
13
14
  display: flex;
14
15
  width: 100%;
@@ -104,6 +105,32 @@ export const collectionStyles = css `
104
105
  scroll-snap-align: start;
105
106
  }
106
107
 
108
+ /* The horizontal-scroll items has a mask-image that fades the left
109
+ * and right edges, which would clip an outline drawn directly on it.
110
+ * The .collection__scroll-area wrapper has no mask and is the layout
111
+ * box that matches the visible content area; its ::after sits above
112
+ * slotted cards via z-index, so card box-shadows can't overlap the
113
+ * ring. :has() works here because both elements are in the same
114
+ * shadow tree (unlike :host(:has()), which doesn't pierce). */
115
+ .collection__scroll-area {
116
+ position: relative;
117
+ }
118
+
119
+ .collection__items:focus-visible {
120
+ outline: none;
121
+ }
122
+
123
+ .collection__scroll-area:has(.collection__items:focus-visible)::after {
124
+ content: '';
125
+ position: absolute;
126
+ inset: 0;
127
+ z-index: var(--_focus-ring-z-index);
128
+ outline: var(--semantics-focus-ring-outline);
129
+ outline-offset: var(--semantics-focus-ring-outline-offset);
130
+ box-shadow: var(--semantics-focus-ring-box-shadow);
131
+ pointer-events: none;
132
+ }
133
+
107
134
 
108
135
  /* # Footer */
109
136
 
@@ -1 +1 @@
1
- {"version":3,"file":"collection.styles.js","sourceRoot":"","sources":["../../../../src/components/layout/collection/collection.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC;AAEpE,MAAM,KAAK,GAAG,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;AAC3C,MAAM,KAAK,GAAG,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;AAE3C,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,CAAA;;;;;;;;;;;;;;uBAcZ,KAAK;;;;uBAIL,KAAK;;;;;;;;;;;;;;;;;uBAiBL,KAAK;;;;uBAIL,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiF3B,CAAC"}
1
+ {"version":3,"file":"collection.styles.js","sourceRoot":"","sources":["../../../../src/components/layout/collection/collection.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC;AAEpE,MAAM,KAAK,GAAG,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;AAC3C,MAAM,KAAK,GAAG,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;AAE3C,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;uBAeZ,KAAK;;;;uBAIL,KAAK;;;;;;;;;;;;;;;;;uBAiBL,KAAK;;;;uBAIL,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2G3B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"collection.template.d.ts","sourceRoot":"","sources":["../../../../src/components/layout/collection/collection.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,cAAc,EAAE,MAAM,KAAK,CAAC;AACpD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEtD,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,cAAc,GAAG,cAAc,CAyC5E"}
1
+ {"version":3,"file":"collection.template.d.ts","sourceRoot":"","sources":["../../../../src/components/layout/collection/collection.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,cAAc,EAAE,MAAM,KAAK,CAAC;AAEpD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEtD,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,cAAc,GAAG,cAAc,CAgD5E"}
@@ -1,11 +1,19 @@
1
1
  import { html, nothing } from 'lit';
2
+ import { ifDefined } from 'lit/directives/if-defined.js';
2
3
  export function collectionTemplate(component) {
3
4
  const isHorizontal = component.layout === 'horizontal-scroll';
4
5
  const showLoadMore = !isHorizontal && component.showLoadMore && component._hasMore;
5
6
  const showFooter = isHorizontal || showLoadMore || component._hasFooterSlot;
7
+ const scrollable = isHorizontal && component._isScrollable;
6
8
  return html `
7
- <div class="collection__items">
8
- <slot @slotchange=${(e) => component._onSlotChange(e)}></slot>
9
+ <div class="collection__scroll-area">
10
+ <div class="collection__items"
11
+ tabindex=${ifDefined(scrollable ? '0' : undefined)}
12
+ role=${ifDefined(scrollable ? 'region' : undefined)}
13
+ aria-label=${ifDefined(scrollable ? component._t('components.collection.region-label') : undefined)}
14
+ >
15
+ <slot @slotchange=${(e) => component._onSlotChange(e)}></slot>
16
+ </div>
9
17
  </div>
10
18
  <footer class="collection__footer" ?hidden=${!showFooter}>
11
19
  <slot name="footer" @slotchange=${component._onFooterSlotChange}>
@@ -15,7 +23,7 @@ export function collectionTemplate(component) {
15
23
  icon="chevron-left"
16
24
  text=${component._t('components.collection.previous-action')}
17
25
  tooltip-timing="never"
18
- ?disabled=${component._atStart}
26
+ .disabled=${component._atStart}
19
27
  @click=${() => component._scrollBy(-1)}
20
28
  ></nldd-icon-button>
21
29
  <nldd-button-bar-divider></nldd-button-bar-divider>
@@ -23,7 +31,7 @@ export function collectionTemplate(component) {
23
31
  icon="chevron-right"
24
32
  text=${component._t('components.collection.next-action')}
25
33
  tooltip-timing="never"
26
- ?disabled=${component._atEnd}
34
+ .disabled=${component._atEnd}
27
35
  @click=${() => component._scrollBy(1)}
28
36
  ></nldd-icon-button>
29
37
  </nldd-button-bar>
@@ -1 +1 @@
1
- {"version":3,"file":"collection.template.js","sourceRoot":"","sources":["../../../../src/components/layout/collection/collection.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAkB,MAAM,KAAK,CAAC;AAGpD,MAAM,UAAU,kBAAkB,CAAC,SAAyB;IAC3D,MAAM,YAAY,GAAG,SAAS,CAAC,MAAM,KAAK,mBAAmB,CAAC;IAC9D,MAAM,YAAY,GAAG,CAAC,YAAY,IAAI,SAAS,CAAC,YAAY,IAAI,SAAS,CAAC,QAAQ,CAAC;IACnF,MAAM,UAAU,GAAG,YAAY,IAAI,YAAY,IAAI,SAAS,CAAC,cAAc,CAAC;IAE5E,OAAO,IAAI,CAAA;;uBAEW,CAAC,CAAQ,EAAE,EAAE,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC;;+CAEhB,CAAC,UAAU;qCACrB,SAAS,CAAC,mBAAmB;MAC5D,YAAY,CAAC,CAAC,CAAC,IAAI,CAAA;;;;cAIX,SAAS,CAAC,EAAE,CAAC,uCAAuC,CAAC;;mBAEhD,SAAS,CAAC,QAAQ;gBACrB,GAAG,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;;;;;cAK/B,SAAS,CAAC,EAAE,CAAC,mCAAmC,CAAC;;mBAE5C,SAAS,CAAC,MAAM;gBACnB,GAAG,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC;;;KAGvC,CAAC,CAAC,CAAC,OAAO;MACT,YAAY,CAAC,CAAC,CAAC,IAAI,CAAA;;;aAGZ,SAAS,CAAC,EAAE,CAAC,wCAAwC,CAAC;;eAEpD,GAAG,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE;;KAErC,CAAC,CAAC,CAAC,OAAO;;;EAGb,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"collection.template.js","sourceRoot":"","sources":["../../../../src/components/layout/collection/collection.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAkB,MAAM,KAAK,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAGzD,MAAM,UAAU,kBAAkB,CAAC,SAAyB;IAC3D,MAAM,YAAY,GAAG,SAAS,CAAC,MAAM,KAAK,mBAAmB,CAAC;IAC9D,MAAM,YAAY,GAAG,CAAC,YAAY,IAAI,SAAS,CAAC,YAAY,IAAI,SAAS,CAAC,QAAQ,CAAC;IACnF,MAAM,UAAU,GAAG,YAAY,IAAI,YAAY,IAAI,SAAS,CAAC,cAAc,CAAC;IAC5E,MAAM,UAAU,GAAG,YAAY,IAAI,SAAS,CAAC,aAAa,CAAC;IAE3D,OAAO,IAAI,CAAA;;;eAGG,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;WAC3C,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;iBACtC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,oCAAoC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;;wBAE/E,CAAC,CAAQ,EAAE,EAAE,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC;;;+CAGjB,CAAC,UAAU;qCACrB,SAAS,CAAC,mBAAmB;MAC5D,YAAY,CAAC,CAAC,CAAC,IAAI,CAAA;;;;cAIX,SAAS,CAAC,EAAE,CAAC,uCAAuC,CAAC;;mBAEhD,SAAS,CAAC,QAAQ;gBACrB,GAAG,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;;;;;cAK/B,SAAS,CAAC,EAAE,CAAC,mCAAmC,CAAC;;mBAE5C,SAAS,CAAC,MAAM;gBACnB,GAAG,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC;;;KAGvC,CAAC,CAAC,CAAC,OAAO;MACT,YAAY,CAAC,CAAC,CAAC,IAAI,CAAA;;;aAGZ,SAAS,CAAC,EAAE,CAAC,wCAAwC,CAAC;;eAEpD,GAAG,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE;;KAErC,CAAC,CAAC,CAAC,OAAO;;;EAGb,CAAC;AACH,CAAC"}
@@ -1,7 +1,8 @@
1
1
  import { LitElement } from 'lit';
2
2
  import type { NLDDListTranslations } from './list.i18n.js';
3
3
  import '../../status-and-feedback/inline-dialog/inline-dialog.js';
4
- export type ListVariant = 'simple' | 'box' | 'box-on-tinted';
4
+ export type ListVariant = 'simple' | 'box';
5
+ export type ListBackground = 'tinted' | 'base';
5
6
  export type ListType = 'list' | 'navigation';
6
7
  export interface NLDDReorderEventDetail {
7
8
  fromIndex: number;
@@ -10,7 +11,7 @@ export interface NLDDReorderEventDetail {
10
11
  /**
11
12
  * A container for `nldd-list-item` elements, with optional header and footer slots.
12
13
  *
13
- * The `type` attribute switches the list's a11y role and behaviour:
14
+ * The `type` attribute switches the list's a11y role and behavior:
14
15
  * - `list` (default) — `role="list"`, items `role="listitem"`. Reorderable allowed.
15
16
  * Items may individually be buttons or links; the list itself
16
17
  * has no special keyboard semantics.
@@ -41,8 +42,14 @@ export interface NLDDReorderEventDetail {
41
42
  */
42
43
  export declare class NLDDList extends LitElement {
43
44
  static styles: import("lit").CSSResult[];
44
- /** Visual style of the list. */
45
+ /** Visual style of the list. `simple` is a plain vertical strip with
46
+ * no chrome (no rounded corners, no fill, no border); `box` is a
47
+ * framed card with rounded corners, fill, and an inset border ring. */
45
48
  variant: ListVariant;
49
+ /** Surface fill for `variant="box"`. `tinted` (default) for a list on
50
+ * a plain page; `base` for a list on an already-tinted parent. No
51
+ * effect when `variant="simple"`. */
52
+ background?: ListBackground;
46
53
  /** A11y semantics. See class docblock. */
47
54
  type: ListType;
48
55
  /** Enables drag-to-reorder. Only valid when `type="list"` (the default). */
@@ -1 +1 @@
1
- {"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../../src/components/lists-and-menus/list/list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AAMjC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,0DAA0D,CAAC;AAElE,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,KAAK,GAAG,eAAe,CAAC;AAC7D,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,YAAY,CAAC;AAE7C,MAAM,WAAW,sBAAsB;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,qBACa,QAAS,SAAQ,UAAU;IACvC,OAAgB,MAAM,4BAAgB;IAEtC,gCAAgC;IAEhC,OAAO,EAAE,WAAW,CAAY;IAEhC,0CAA0C;IAE1C,IAAI,EAAE,QAAQ,CAAU;IAExB,4EAA4E;IAE5E,WAAW,UAAS;IAEpB,yCAAyC;IAEzC,UAAU,UAAS;IAEnB;;;;OAIG;IAEH,SAAS,SAAM;IAEf;;;OAGG;IAEH,mBAAmB,SAAM;IAEzB,wFAAwF;IAExF,YAAY,EAAE,OAAO,CAAC,oBAAoB,CAAC,CAAM;IAGjD,OAAO,CAAC,mBAAmB,CAA+B;IAG1D,OAAO,CAAC,UAAU,CAAS;IAG3B,OAAO,CAAC,QAAQ,CAAS;IAIzB,OAAO,CAAC,WAAW,CAA6B;IAChD,OAAO,CAAC,kBAAkB,CAAM;IAChC,OAAO,CAAC,YAAY,CAA+B;IACnD,OAAO,CAAC,iBAAiB,CAAM;IAC/B,OAAO,CAAC,UAAU,CAAuB;IACzC,OAAO,CAAC,MAAM,CAA+B;IAC7C,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,SAAS,CAAwB;IAIzC,OAAO,CAAC,cAAc,CAAiC;IAI9C,YAAY;IA4CZ,iBAAiB;IAajB,oBAAoB;IASpB,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC;IAiB9C,OAAO,CAAC,cAAc;IA0BtB,OAAO,CAAC,SAAS;IAOjB,OAAO,CAAC,YAAY;IAepB,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,cAAc,CA2BpB;IAEF,OAAO,CAAC,aAAa,CAAK;IAE1B,OAAO,CAAC,cAAc,CA8BpB;IAEF,OAAO,CAAC,YAAY,CAElB;IAEF,OAAO,CAAC,gBAAgB,CAEtB;IAOF,OAAO,CAAC,UAAU,CA4ChB;IAEF,OAAO,CAAC,qBAAqB;IAU7B,OAAO,CAAC,UAAU;IA0ClB;;;OAGG;IACH,OAAO,CAAC,aAAa;IAqBrB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,QAAQ;IAgChB,OAAO,CAAC,WAAW;IAMnB,OAAO,CAAC,YAAY;IA0BpB,OAAO,CAAC,EAAE;IAYV,OAAO,CAAC,SAAS;IAWR,MAAM;CAUf;AAED,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,qBAAqB;QAC9B,WAAW,EAAE,QAAQ,CAAC;KACtB;CACD"}
1
+ {"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../../src/components/lists-and-menus/list/list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AAMjC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,0DAA0D,CAAC;AAElE,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,KAAK,CAAC;AAC3C,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,MAAM,CAAC;AAC/C,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,YAAY,CAAC;AAE7C,MAAM,WAAW,sBAAsB;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,qBACa,QAAS,SAAQ,UAAU;IACvC,OAAgB,MAAM,4BAAgB;IAEtC;;4EAEwE;IAExE,OAAO,EAAE,WAAW,CAAY;IAEhC;;0CAEsC;IAEtC,UAAU,CAAC,EAAE,cAAc,CAAC;IAE5B,0CAA0C;IAE1C,IAAI,EAAE,QAAQ,CAAU;IAExB,4EAA4E;IAE5E,WAAW,UAAS;IAEpB,yCAAyC;IAEzC,UAAU,UAAS;IAEnB;;;;OAIG;IAEH,SAAS,SAAM;IAEf;;;OAGG;IAEH,mBAAmB,SAAM;IAEzB,wFAAwF;IAExF,YAAY,EAAE,OAAO,CAAC,oBAAoB,CAAC,CAAM;IAGjD,OAAO,CAAC,mBAAmB,CAA+B;IAG1D,OAAO,CAAC,UAAU,CAAS;IAG3B,OAAO,CAAC,QAAQ,CAAS;IAIzB,OAAO,CAAC,WAAW,CAA6B;IAChD,OAAO,CAAC,kBAAkB,CAAM;IAChC,OAAO,CAAC,YAAY,CAA+B;IACnD,OAAO,CAAC,iBAAiB,CAAM;IAC/B,OAAO,CAAC,UAAU,CAAuB;IACzC,OAAO,CAAC,MAAM,CAA+B;IAC7C,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,SAAS,CAAwB;IAIzC,OAAO,CAAC,cAAc,CAAiC;IAI9C,YAAY;IA4CZ,iBAAiB;IAajB,oBAAoB;IASpB,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC;IAiB9C,OAAO,CAAC,cAAc;IA0BtB,OAAO,CAAC,SAAS;IAOjB,OAAO,CAAC,YAAY;IAepB,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,cAAc,CA2BpB;IAEF,OAAO,CAAC,aAAa,CAAK;IAE1B,OAAO,CAAC,cAAc,CA8BpB;IAEF,OAAO,CAAC,YAAY,CAElB;IAEF,OAAO,CAAC,gBAAgB,CAEtB;IAOF,OAAO,CAAC,UAAU,CA4ChB;IAEF,OAAO,CAAC,qBAAqB;IAU7B,OAAO,CAAC,UAAU;IA0ClB;;;OAGG;IACH,OAAO,CAAC,aAAa;IAqBrB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,QAAQ;IAgChB,OAAO,CAAC,WAAW;IAMnB,OAAO,CAAC,YAAY;IA0BpB,OAAO,CAAC,EAAE;IAYV,OAAO,CAAC,SAAS;IAWR,MAAM;CAUf;AAED,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,qBAAqB;QAC9B,WAAW,EAAE,QAAQ,CAAC;KACtB;CACD"}
@@ -13,7 +13,7 @@ import '../../status-and-feedback/inline-dialog/inline-dialog.js';
13
13
  /**
14
14
  * A container for `nldd-list-item` elements, with optional header and footer slots.
15
15
  *
16
- * The `type` attribute switches the list's a11y role and behaviour:
16
+ * The `type` attribute switches the list's a11y role and behavior:
17
17
  * - `list` (default) — `role="list"`, items `role="listitem"`. Reorderable allowed.
18
18
  * Items may individually be buttons or links; the list itself
19
19
  * has no special keyboard semantics.
@@ -45,7 +45,9 @@ import '../../status-and-feedback/inline-dialog/inline-dialog.js';
45
45
  let NLDDList = class NLDDList extends LitElement {
46
46
  constructor() {
47
47
  super(...arguments);
48
- /** Visual style of the list. */
48
+ /** Visual style of the list. `simple` is a plain vertical strip with
49
+ * no chrome (no rounded corners, no fill, no border); `box` is a
50
+ * framed card with rounded corners, fill, and an inset border ring. */
49
51
  this.variant = 'simple';
50
52
  /** A11y semantics. See class docblock. */
51
53
  this.type = 'list';
@@ -225,7 +227,7 @@ let NLDDList = class NLDDList extends LitElement {
225
227
  super.connectedCallback();
226
228
  // Set container-type/name as inline style on the host. Doing this from
227
229
  // a `:host` rule inside the shadow DOM works in Chromium but Safari
228
- // does not always recognise the host as a container for slotted
230
+ // does not always recognize the host as a container for slotted
229
231
  // descendants — a known engine inconsistency. Same workaround as
230
232
  // nldd-page and nldd-card.
231
233
  this.style.containerType = 'inline-size';
@@ -461,6 +463,9 @@ NLDDList.styles = [listStyles];
461
463
  __decorate([
462
464
  property({ reflect: true })
463
465
  ], NLDDList.prototype, "variant", void 0);
466
+ __decorate([
467
+ property({ reflect: true })
468
+ ], NLDDList.prototype, "background", void 0);
464
469
  __decorate([
465
470
  property({ reflect: true })
466
471
  ], NLDDList.prototype, "type", void 0);