@duetds/components 10.0.0-alpha.27 → 10.0.0-alpha.29

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 (352) hide show
  1. package/hydrate/index.js +164 -127
  2. package/hydrate/index.mjs +164 -127
  3. package/lib/cjs/{a11y-utils-B33qnv_c.js → a11y-utils-C2urHioz.js} +1 -1
  4. package/lib/cjs/{app-globals-DxEBgBDv.js → app-globals-CiRzLcdj.js} +1 -1
  5. package/lib/cjs/duet-action-button.cjs.entry.js +4 -4
  6. package/lib/cjs/duet-alert.cjs.entry.js +5 -5
  7. package/lib/cjs/duet-badge.cjs.entry.js +3 -3
  8. package/lib/cjs/duet-banner.cjs.entry.js +4 -4
  9. package/lib/cjs/duet-breadcrumb.cjs.entry.js +11 -20
  10. package/lib/cjs/duet-breadcrumbs.cjs.entry.js +5 -5
  11. package/lib/cjs/duet-button_2.cjs.entry.js +5 -5
  12. package/lib/cjs/duet-callout.cjs.entry.js +3 -3
  13. package/lib/cjs/duet-caption_4.cjs.entry.js +12 -10
  14. package/lib/cjs/duet-card.cjs.entry.js +4 -4
  15. package/lib/cjs/duet-checkbox.cjs.entry.js +4 -4
  16. package/lib/cjs/duet-checkmark.cjs.entry.js +2 -2
  17. package/lib/cjs/duet-chip.cjs.entry.js +3 -3
  18. package/lib/cjs/duet-choice_2.cjs.entry.js +6 -6
  19. package/lib/cjs/duet-collapsible.cjs.entry.js +17 -8
  20. package/lib/cjs/duet-combobox.cjs.entry.js +4 -4
  21. package/lib/cjs/duet-contact-card.cjs.entry.js +3 -3
  22. package/lib/cjs/duet-cookie-consent.cjs.entry.js +2 -2
  23. package/lib/cjs/duet-date-picker.cjs.entry.js +8 -8
  24. package/lib/cjs/duet-divider_2.cjs.entry.js +3 -3
  25. package/lib/cjs/duet-editable-table_3.cjs.entry.js +6 -5
  26. package/lib/cjs/duet-empty-state.cjs.entry.js +2 -2
  27. package/lib/cjs/duet-fieldset.cjs.entry.js +10 -6
  28. package/lib/cjs/duet-file-chooser.cjs.entry.js +2 -2
  29. package/lib/cjs/duet-footer.cjs.entry.js +4 -4
  30. package/lib/cjs/duet-grid_2.cjs.entry.js +23 -10
  31. package/lib/cjs/duet-header_2.cjs.entry.js +4 -4
  32. package/lib/cjs/duet-hero.cjs.entry.js +18 -11
  33. package/lib/cjs/duet-icon.cjs.entry.js +3 -3
  34. package/lib/cjs/duet-indicator.cjs.entry.js +2 -2
  35. package/lib/cjs/duet-input_2.cjs.entry.js +22 -23
  36. package/lib/cjs/duet-layout.cjs.entry.js +2 -2
  37. package/lib/cjs/duet-list_2.cjs.entry.js +2 -2
  38. package/lib/cjs/duet-menu-bar-button.cjs.entry.js +2 -2
  39. package/lib/cjs/duet-menu-bar-dropdown-link.cjs.entry.js +2 -2
  40. package/lib/cjs/duet-menu-bar-dropdown.cjs.entry.js +2 -2
  41. package/lib/cjs/duet-menu-bar-item.cjs.entry.js +5 -5
  42. package/lib/cjs/duet-menu-bar-link.cjs.entry.js +2 -2
  43. package/lib/cjs/duet-menu-bar.cjs.entry.js +4 -4
  44. package/lib/cjs/duet-modal.cjs.entry.js +26 -14
  45. package/lib/cjs/duet-multiselect.cjs.entry.js +10 -10
  46. package/lib/cjs/duet-nav.cjs.entry.js +3 -3
  47. package/lib/cjs/duet-notification_2.cjs.entry.js +3 -3
  48. package/lib/cjs/duet-number-input.cjs.entry.js +6 -6
  49. package/lib/cjs/duet-overlay.cjs.entry.js +2 -2
  50. package/lib/cjs/duet-page-heading.cjs.entry.js +3 -3
  51. package/lib/cjs/duet-pagination_2.cjs.entry.js +4 -4
  52. package/lib/cjs/duet-panel.cjs.entry.js +3 -3
  53. package/lib/cjs/duet-phone-input.cjs.entry.js +4 -4
  54. package/lib/cjs/duet-popup-menu_2.cjs.entry.js +4 -4
  55. package/lib/cjs/duet-progress.cjs.entry.js +3 -3
  56. package/lib/cjs/duet-promo-card.cjs.entry.js +4 -4
  57. package/lib/cjs/duet-radio_2.cjs.entry.js +4 -4
  58. package/lib/cjs/duet-range-slider.cjs.entry.js +4 -4
  59. package/lib/cjs/duet-scrollable_3.cjs.entry.js +5 -5
  60. package/lib/cjs/duet-section-layout.cjs.entry.js +1 -1
  61. package/lib/cjs/duet-select.cjs.entry.js +9 -9
  62. package/lib/cjs/duet-shaped-image.cjs.entry.js +2 -2
  63. package/lib/cjs/duet-share-chart-item.cjs.entry.js +1 -1
  64. package/lib/cjs/duet-share-chart.cjs.entry.js +5 -5
  65. package/lib/cjs/duet-show-more.cjs.entry.js +3 -3
  66. package/lib/cjs/duet-slideout-lang.cjs.entry.js +3 -3
  67. package/lib/cjs/duet-slideout-link.cjs.entry.js +5 -5
  68. package/lib/cjs/duet-slideout-panel-dropdown.cjs.entry.js +2 -2
  69. package/lib/cjs/duet-slideout-panel.cjs.entry.js +6 -6
  70. package/lib/cjs/duet-slideout.cjs.entry.js +6 -6
  71. package/lib/cjs/duet-status-icon.cjs.entry.js +1 -1
  72. package/lib/cjs/duet-step_2.cjs.entry.js +3 -3
  73. package/lib/cjs/duet-submenu-bar-dropdown-link.cjs.entry.js +2 -2
  74. package/lib/cjs/duet-submenu-bar-dropdown.cjs.entry.js +2 -2
  75. package/lib/cjs/duet-submenu-bar-item.cjs.entry.js +5 -5
  76. package/lib/cjs/duet-submenu-bar-link.cjs.entry.js +2 -2
  77. package/lib/cjs/duet-submenu-bar.cjs.entry.js +3 -3
  78. package/lib/cjs/duet-textarea.cjs.entry.js +8 -8
  79. package/lib/cjs/duet-toggle.cjs.entry.js +4 -4
  80. package/lib/cjs/duet-toolbar-dropdown-link.cjs.entry.js +2 -2
  81. package/lib/cjs/duet-toolbar-dropdown.cjs.entry.js +2 -2
  82. package/lib/cjs/duet-toolbar-item.cjs.entry.js +5 -5
  83. package/lib/cjs/duet-toolbar-link.cjs.entry.js +2 -2
  84. package/lib/cjs/duet-toolbar.cjs.entry.js +2 -2
  85. package/lib/cjs/duet-tooltip-button_2.cjs.entry.js +3 -3
  86. package/lib/cjs/duet-tooltip.cjs.entry.js +4 -4
  87. package/lib/cjs/duet-tray.cjs.entry.js +3 -3
  88. package/lib/cjs/duet-upload-aria-status.cjs.entry.js +1 -1
  89. package/lib/cjs/duet-upload-item.cjs.entry.js +4 -4
  90. package/lib/cjs/duet-visually-hidden.cjs.entry.js +1 -1
  91. package/lib/cjs/duet.cjs.js +3 -3
  92. package/lib/cjs/{errorcodes.utils-D9V4NJkh.js → errorcodes.utils-CT287Ycp.js} +1 -1
  93. package/lib/cjs/{focus-utils-2MQWj2yf.js → focus-utils-DYmtJ1FV.js} +1 -1
  94. package/lib/cjs/{index-CgbT-GDe.js → index-ULRMHMT6.js} +1 -1
  95. package/lib/cjs/{label-B2EZulEI.js → label-Cw2Vvd6f.js} +1 -1
  96. package/lib/cjs/{language-utils-DjVt82-o.js → language-utils-D_noDTNR.js} +1 -1
  97. package/lib/cjs/loader.cjs.js +3 -3
  98. package/lib/cjs/{slot-utils-mZWWDERy.js → slot-utils-CuWfl8gF.js} +1 -1
  99. package/lib/cjs/{themeable-component-DtTN09xK.js → themeable-component-vXSpPXDS.js} +1 -1
  100. package/lib/cjs/{token-utils-DsVwGXGM.js → token-utils-b3aW02zZ.js} +7 -4
  101. package/lib/collection/components/duet-alert/duet-alert.css +1 -0
  102. package/lib/collection/components/duet-breadcrumbs/duet-breadcrumb.css +1 -1
  103. package/lib/collection/components/duet-breadcrumbs/duet-breadcrumb.js +9 -22
  104. package/lib/collection/components/duet-breadcrumbs/duet-breadcrumbs.css +3 -3
  105. package/lib/collection/components/duet-button/duet-button.css +3 -0
  106. package/lib/collection/components/duet-checkbox/duet-checkbox.js +3 -3
  107. package/lib/collection/components/duet-choice-group/duet-choice-group.js +3 -3
  108. package/lib/collection/components/duet-collapsible/duet-collapsible.js +15 -6
  109. package/lib/collection/components/duet-date-picker/duet-date-picker.js +3 -3
  110. package/lib/collection/components/duet-fieldset/duet-fieldset.js +9 -4
  111. package/lib/collection/components/duet-grid/duet-grid.js +27 -12
  112. package/lib/collection/components/duet-hero/duet-hero.css +4 -0
  113. package/lib/collection/components/duet-hero/duet-hero.js +13 -6
  114. package/lib/collection/components/duet-input/duet-input.css +7 -0
  115. package/lib/collection/components/duet-input/duet-input.js +26 -42
  116. package/lib/collection/components/duet-link/duet-link.css +6 -0
  117. package/lib/collection/components/duet-menu-bar/duet-menu-bar.css +4 -0
  118. package/lib/collection/components/duet-modal/duet-modal.js +20 -8
  119. package/lib/collection/components/duet-multiselect/duet-multiselect.js +6 -6
  120. package/lib/collection/components/duet-nav/duet-nav.css +4 -0
  121. package/lib/collection/components/duet-number-input/duet-number-input.js +3 -3
  122. package/lib/collection/components/duet-page-heading/duet-page-heading.js +1 -1
  123. package/lib/collection/components/duet-panel/duet-panel.css +5 -4
  124. package/lib/collection/components/duet-paragraph/duet-paragraph.css +3 -0
  125. package/lib/collection/components/duet-paragraph/duet-paragraph.js +4 -2
  126. package/lib/collection/components/duet-phone-input/duet-phone-input.js +1 -1
  127. package/lib/collection/components/duet-radio-group/duet-radio-group.js +2 -2
  128. package/lib/collection/components/duet-select/duet-select.js +6 -6
  129. package/lib/collection/components/duet-submenu-bar/duet-submenu-bar.css +4 -0
  130. package/lib/collection/components/duet-table/duet-table-styles.js +1 -0
  131. package/lib/collection/components/duet-textarea/duet-textarea.js +4 -4
  132. package/lib/collection/utils/token-utils.js +3 -3
  133. package/lib/duet/duet.esm.js +1 -1
  134. package/lib/duet/{p-493d938a.entry.js → p-01b28129.entry.js} +1 -1
  135. package/lib/duet/{p-e439d733.entry.js → p-01bfda23.entry.js} +1 -1
  136. package/lib/duet/{p-875dd701.entry.js → p-01c80d5a.entry.js} +1 -1
  137. package/lib/duet/{p-0528f691.entry.js → p-06ca53e7.entry.js} +1 -1
  138. package/lib/duet/{p-8ff78f91.entry.js → p-098d9160.entry.js} +1 -1
  139. package/lib/duet/{p-72c7db64.entry.js → p-0a9945d3.entry.js} +1 -1
  140. package/lib/duet/{p-6fe283f7.entry.js → p-0eb86bf1.entry.js} +1 -1
  141. package/lib/duet/{p-cd4d12c2.entry.js → p-10640c4f.entry.js} +1 -1
  142. package/lib/duet/{p-b37b1542.entry.js → p-18674149.entry.js} +1 -1
  143. package/lib/duet/{p-4107efb5.entry.js → p-1d192423.entry.js} +1 -1
  144. package/lib/duet/p-1e043a65.entry.js +4 -0
  145. package/lib/duet/{p-f6b76f66.entry.js → p-218d8d0c.entry.js} +1 -1
  146. package/lib/duet/{p-9af77c24.entry.js → p-22baa879.entry.js} +1 -1
  147. package/lib/duet/{p-d11b094d.entry.js → p-22c91ab8.entry.js} +1 -1
  148. package/lib/duet/{p-c4fe8bae.entry.js → p-23cf09fc.entry.js} +1 -1
  149. package/lib/duet/{p-7379c2ed.entry.js → p-242e8590.entry.js} +1 -1
  150. package/lib/duet/p-2defb00a.entry.js +4 -0
  151. package/lib/duet/p-35d6644f.entry.js +4 -0
  152. package/lib/duet/p-366f6c75.entry.js +4 -0
  153. package/lib/duet/{p-a94cc8a6.entry.js → p-368f8b17.entry.js} +1 -1
  154. package/lib/duet/{p-208fdfe6.entry.js → p-3740d6a3.entry.js} +1 -1
  155. package/lib/duet/{p-e882bbb5.entry.js → p-38f1f411.entry.js} +1 -1
  156. package/lib/duet/{p-5efda812.entry.js → p-3a774155.entry.js} +1 -1
  157. package/lib/duet/{p-1228299f.entry.js → p-40965806.entry.js} +1 -1
  158. package/lib/duet/{p-fc7d6429.entry.js → p-43417674.entry.js} +1 -1
  159. package/lib/duet/{p-076d2d0d.entry.js → p-4743f2de.entry.js} +1 -1
  160. package/lib/duet/{p-2c976b5a.entry.js → p-49bccc83.entry.js} +1 -1
  161. package/lib/duet/{p-5a8f14cf.entry.js → p-4a0f1cdb.entry.js} +1 -1
  162. package/lib/duet/{p-c43669b3.entry.js → p-4a4795be.entry.js} +1 -1
  163. package/lib/duet/{p-b025df86.entry.js → p-4c421d4a.entry.js} +1 -1
  164. package/lib/duet/{p-91f39296.entry.js → p-5175a2dd.entry.js} +1 -1
  165. package/lib/duet/{p-5b2527f7.entry.js → p-531ccf9e.entry.js} +1 -1
  166. package/lib/duet/{p-a582e823.entry.js → p-545fc3f7.entry.js} +1 -1
  167. package/lib/duet/{p-d65a706f.entry.js → p-55905e75.entry.js} +1 -1
  168. package/lib/duet/p-5689da45.entry.js +4 -0
  169. package/lib/duet/{p-4f638a3d.entry.js → p-56fbb9c9.entry.js} +1 -1
  170. package/lib/duet/{p-bc7d4da0.entry.js → p-5eaf6164.entry.js} +1 -1
  171. package/lib/duet/{p-4b032feb.entry.js → p-5ef0982d.entry.js} +1 -1
  172. package/lib/duet/p-6442c2be.entry.js +4 -0
  173. package/lib/duet/{p-a431d704.entry.js → p-6b5e575b.entry.js} +1 -1
  174. package/lib/duet/{p-6943a2ef.entry.js → p-6c1a7d2a.entry.js} +1 -1
  175. package/lib/duet/{p-59cd72fc.entry.js → p-726b706a.entry.js} +1 -1
  176. package/lib/duet/{p-25ebe6a5.entry.js → p-73041240.entry.js} +1 -1
  177. package/lib/duet/{p-15d4751c.entry.js → p-7340a148.entry.js} +1 -1
  178. package/lib/duet/{p-bed6b29f.entry.js → p-78f0104d.entry.js} +1 -1
  179. package/lib/duet/{p-ba6dc53e.entry.js → p-7c4b51bc.entry.js} +1 -1
  180. package/lib/duet/p-7d682f0c.entry.js +4 -0
  181. package/lib/duet/p-7dde6589.entry.js +4 -0
  182. package/lib/duet/{p-9500f26b.entry.js → p-80c2a22b.entry.js} +1 -1
  183. package/lib/duet/{p-39087512.entry.js → p-86613005.entry.js} +1 -1
  184. package/lib/duet/{p-a274b8fd.entry.js → p-866d5fba.entry.js} +1 -1
  185. package/lib/duet/{p-79c93372.entry.js → p-878e745d.entry.js} +1 -1
  186. package/lib/duet/{p-7ace4629.entry.js → p-89de527f.entry.js} +1 -1
  187. package/lib/duet/{p-41dd144f.entry.js → p-8eb11318.entry.js} +1 -1
  188. package/lib/duet/p-96179df4.entry.js +4 -0
  189. package/lib/duet/{p-3facac5a.entry.js → p-994e0989.entry.js} +1 -1
  190. package/lib/duet/{p-931b4437.entry.js → p-9d630f8d.entry.js} +1 -1
  191. package/lib/duet/{p-Ob09ol4-.js → p-B0lHdUDq.js} +1 -1
  192. package/lib/duet/{p-BSOF0zb5.js → p-Bq8ssolA.js} +1 -1
  193. package/lib/duet/p-C-pON5qf.js +4 -0
  194. package/lib/duet/{p-vt84lkeQ.js → p-Cg-Sy7Qf.js} +1 -1
  195. package/lib/duet/p-CmVjSa2G.js +4 -0
  196. package/lib/duet/{p-1s1EpusX.js → p-D8Vx4GZo.js} +1 -1
  197. package/lib/duet/{p-BXJZKiJg.js → p-DNq3_6qZ.js} +1 -1
  198. package/lib/duet/p-DhhvHRbK.js +4 -0
  199. package/lib/duet/p-Do6ugHz0.js +4 -0
  200. package/lib/duet/{p-fe393084.entry.js → p-a456687d.entry.js} +1 -1
  201. package/lib/duet/p-a6eed3fb.entry.js +4 -0
  202. package/lib/duet/p-a954bbc6.entry.js +4 -0
  203. package/lib/duet/{p-ed5f5c6b.entry.js → p-ac84994d.entry.js} +1 -1
  204. package/lib/duet/{p-a9094bdc.entry.js → p-ae830c4f.entry.js} +1 -1
  205. package/lib/duet/{p-55a63695.entry.js → p-b8f14348.entry.js} +1 -1
  206. package/lib/duet/{p-deb90dc7.entry.js → p-c3e002cb.entry.js} +1 -1
  207. package/lib/duet/{p-a0e708db.entry.js → p-c6c245d2.entry.js} +1 -1
  208. package/lib/duet/p-c6c2f1dc.entry.js +4 -0
  209. package/lib/duet/{p-b6354004.entry.js → p-ca1ac603.entry.js} +1 -1
  210. package/lib/duet/{p-3389969d.entry.js → p-cb5020b3.entry.js} +1 -1
  211. package/lib/duet/{p-4289c214.entry.js → p-cc2fe910.entry.js} +1 -1
  212. package/lib/duet/{p-1995091e.entry.js → p-d0fe1162.entry.js} +1 -1
  213. package/lib/duet/{p-fe29dee3.entry.js → p-d4c5c776.entry.js} +1 -1
  214. package/lib/duet/{p-9f9576a2.entry.js → p-d77d51df.entry.js} +1 -1
  215. package/lib/duet/{p-338667ab.entry.js → p-e03b4d6d.entry.js} +1 -1
  216. package/lib/duet/{p-75fd0eca.entry.js → p-e18ded3f.entry.js} +1 -1
  217. package/lib/duet/{p-b001a8a4.entry.js → p-e1997fb2.entry.js} +1 -1
  218. package/lib/duet/p-e41e1570.entry.js +4 -0
  219. package/lib/duet/{p-3c7ba14f.entry.js → p-e443cf8a.entry.js} +1 -1
  220. package/lib/duet/{p-ef821bec.entry.js → p-e6a4707d.entry.js} +1 -1
  221. package/lib/duet/{p-ab61831a.entry.js → p-e9ff33aa.entry.js} +1 -1
  222. package/lib/duet/{p-ca2fd9dc.entry.js → p-eb7799de.entry.js} +1 -1
  223. package/lib/duet/{p-167290f7.entry.js → p-ed4f565e.entry.js} +1 -1
  224. package/lib/duet/{p-263790e3.entry.js → p-ee8f51c9.entry.js} +1 -1
  225. package/lib/duet/{p-50afabfb.entry.js → p-f25c9b3a.entry.js} +1 -1
  226. package/lib/duet/{p-503a290b.entry.js → p-f950ae45.entry.js} +1 -1
  227. package/lib/duet/{p-c745c02a.entry.js → p-fd19cbeb.entry.js} +1 -1
  228. package/lib/duet/{p-6a95d722.entry.js → p-ffa644e6.entry.js} +1 -1
  229. package/lib/duet/p-vLG7vkZg.js +4 -0
  230. package/lib/esm/{a11y-utils-CROKOfOD.js → a11y-utils-k-txkQIa.js} +1 -1
  231. package/lib/esm/{app-globals-CahJi_2c.js → app-globals-BL1PM4GK.js} +1 -1
  232. package/lib/esm/duet-action-button.entry.js +4 -4
  233. package/lib/esm/duet-alert.entry.js +5 -5
  234. package/lib/esm/duet-badge.entry.js +3 -3
  235. package/lib/esm/duet-banner.entry.js +4 -4
  236. package/lib/esm/duet-breadcrumb.entry.js +11 -20
  237. package/lib/esm/duet-breadcrumbs.entry.js +5 -5
  238. package/lib/esm/duet-button_2.entry.js +5 -5
  239. package/lib/esm/duet-callout.entry.js +3 -3
  240. package/lib/esm/duet-caption_4.entry.js +12 -10
  241. package/lib/esm/duet-card.entry.js +4 -4
  242. package/lib/esm/duet-checkbox.entry.js +4 -4
  243. package/lib/esm/duet-checkmark.entry.js +2 -2
  244. package/lib/esm/duet-chip.entry.js +3 -3
  245. package/lib/esm/duet-choice_2.entry.js +6 -6
  246. package/lib/esm/duet-collapsible.entry.js +17 -8
  247. package/lib/esm/duet-combobox.entry.js +4 -4
  248. package/lib/esm/duet-contact-card.entry.js +3 -3
  249. package/lib/esm/duet-cookie-consent.entry.js +2 -2
  250. package/lib/esm/duet-date-picker.entry.js +8 -8
  251. package/lib/esm/duet-divider_2.entry.js +3 -3
  252. package/lib/esm/duet-editable-table_3.entry.js +6 -5
  253. package/lib/esm/duet-empty-state.entry.js +2 -2
  254. package/lib/esm/duet-fieldset.entry.js +10 -6
  255. package/lib/esm/duet-file-chooser.entry.js +2 -2
  256. package/lib/esm/duet-footer.entry.js +4 -4
  257. package/lib/esm/duet-grid_2.entry.js +23 -10
  258. package/lib/esm/duet-header_2.entry.js +4 -4
  259. package/lib/esm/duet-hero.entry.js +18 -11
  260. package/lib/esm/duet-icon.entry.js +3 -3
  261. package/lib/esm/duet-indicator.entry.js +2 -2
  262. package/lib/esm/duet-input_2.entry.js +22 -23
  263. package/lib/esm/duet-layout.entry.js +2 -2
  264. package/lib/esm/duet-list_2.entry.js +2 -2
  265. package/lib/esm/duet-menu-bar-button.entry.js +2 -2
  266. package/lib/esm/duet-menu-bar-dropdown-link.entry.js +2 -2
  267. package/lib/esm/duet-menu-bar-dropdown.entry.js +2 -2
  268. package/lib/esm/duet-menu-bar-item.entry.js +5 -5
  269. package/lib/esm/duet-menu-bar-link.entry.js +2 -2
  270. package/lib/esm/duet-menu-bar.entry.js +4 -4
  271. package/lib/esm/duet-modal.entry.js +26 -14
  272. package/lib/esm/duet-multiselect.entry.js +10 -10
  273. package/lib/esm/duet-nav.entry.js +3 -3
  274. package/lib/esm/duet-notification_2.entry.js +3 -3
  275. package/lib/esm/duet-number-input.entry.js +6 -6
  276. package/lib/esm/duet-overlay.entry.js +2 -2
  277. package/lib/esm/duet-page-heading.entry.js +3 -3
  278. package/lib/esm/duet-pagination_2.entry.js +4 -4
  279. package/lib/esm/duet-panel.entry.js +3 -3
  280. package/lib/esm/duet-phone-input.entry.js +4 -4
  281. package/lib/esm/duet-popup-menu_2.entry.js +4 -4
  282. package/lib/esm/duet-progress.entry.js +3 -3
  283. package/lib/esm/duet-promo-card.entry.js +4 -4
  284. package/lib/esm/duet-radio_2.entry.js +4 -4
  285. package/lib/esm/duet-range-slider.entry.js +4 -4
  286. package/lib/esm/duet-scrollable_3.entry.js +5 -5
  287. package/lib/esm/duet-section-layout.entry.js +1 -1
  288. package/lib/esm/duet-select.entry.js +9 -9
  289. package/lib/esm/duet-shaped-image.entry.js +2 -2
  290. package/lib/esm/duet-share-chart-item.entry.js +1 -1
  291. package/lib/esm/duet-share-chart.entry.js +5 -5
  292. package/lib/esm/duet-show-more.entry.js +3 -3
  293. package/lib/esm/duet-slideout-lang.entry.js +3 -3
  294. package/lib/esm/duet-slideout-link.entry.js +5 -5
  295. package/lib/esm/duet-slideout-panel-dropdown.entry.js +2 -2
  296. package/lib/esm/duet-slideout-panel.entry.js +6 -6
  297. package/lib/esm/duet-slideout.entry.js +6 -6
  298. package/lib/esm/duet-status-icon.entry.js +1 -1
  299. package/lib/esm/duet-step_2.entry.js +3 -3
  300. package/lib/esm/duet-submenu-bar-dropdown-link.entry.js +2 -2
  301. package/lib/esm/duet-submenu-bar-dropdown.entry.js +2 -2
  302. package/lib/esm/duet-submenu-bar-item.entry.js +5 -5
  303. package/lib/esm/duet-submenu-bar-link.entry.js +2 -2
  304. package/lib/esm/duet-submenu-bar.entry.js +3 -3
  305. package/lib/esm/duet-textarea.entry.js +8 -8
  306. package/lib/esm/duet-toggle.entry.js +4 -4
  307. package/lib/esm/duet-toolbar-dropdown-link.entry.js +2 -2
  308. package/lib/esm/duet-toolbar-dropdown.entry.js +2 -2
  309. package/lib/esm/duet-toolbar-item.entry.js +5 -5
  310. package/lib/esm/duet-toolbar-link.entry.js +2 -2
  311. package/lib/esm/duet-toolbar.entry.js +2 -2
  312. package/lib/esm/duet-tooltip-button_2.entry.js +3 -3
  313. package/lib/esm/duet-tooltip.entry.js +4 -4
  314. package/lib/esm/duet-tray.entry.js +3 -3
  315. package/lib/esm/duet-upload-aria-status.entry.js +1 -1
  316. package/lib/esm/duet-upload-item.entry.js +4 -4
  317. package/lib/esm/duet-visually-hidden.entry.js +1 -1
  318. package/lib/esm/duet.js +4 -4
  319. package/lib/esm/{errorcodes.utils-6V_f8y5q.js → errorcodes.utils-DMBhYFft.js} +1 -1
  320. package/lib/esm/{focus-utils-CErdQceY.js → focus-utils-CKJz94Qb.js} +1 -1
  321. package/lib/esm/{index-vt84lkeQ.js → index-Cg-Sy7Qf.js} +1 -1
  322. package/lib/esm/{label-BosP5JdK.js → label-CiT_iRKt.js} +1 -1
  323. package/lib/esm/{language-utils-B9dLrWKg.js → language-utils-CQS4gIfI.js} +1 -1
  324. package/lib/esm/loader.js +4 -4
  325. package/lib/esm/{slot-utils-BZXZ33TK.js → slot-utils-BtxgUznn.js} +1 -1
  326. package/lib/esm/{themeable-component-CsnFpp6R.js → themeable-component-C76K02P9.js} +1 -1
  327. package/lib/esm/{token-utils-BGFYWQ6j.js → token-utils-C-c-tsXV.js} +7 -4
  328. package/lib/types/components/duet-breadcrumbs/duet-breadcrumb.d.ts +2 -4
  329. package/lib/types/components/duet-grid/duet-grid.d.ts +5 -3
  330. package/lib/types/components/duet-hero/duet-hero.d.ts +2 -0
  331. package/lib/types/components/duet-input/duet-input.d.ts +5 -10
  332. package/lib/types/components/duet-paragraph/duet-paragraph.d.ts +1 -0
  333. package/lib/types/components.d.ts +24 -4
  334. package/package.json +3 -3
  335. package/lib/duet/p-26146512.entry.js +0 -4
  336. package/lib/duet/p-3d3aff4c.entry.js +0 -4
  337. package/lib/duet/p-46eaee49.entry.js +0 -4
  338. package/lib/duet/p-537d3b11.entry.js +0 -4
  339. package/lib/duet/p-61105f0d.entry.js +0 -4
  340. package/lib/duet/p-950c4ec0.entry.js +0 -4
  341. package/lib/duet/p-Cq7Ixl9a.js +0 -4
  342. package/lib/duet/p-DejMEymG.js +0 -4
  343. package/lib/duet/p-Dr2j33H2.js +0 -4
  344. package/lib/duet/p-G09pKpI-.js +0 -4
  345. package/lib/duet/p-aWO-HcmJ.js +0 -4
  346. package/lib/duet/p-b2780442.entry.js +0 -4
  347. package/lib/duet/p-babbf633.entry.js +0 -4
  348. package/lib/duet/p-c516bf93.entry.js +0 -4
  349. package/lib/duet/p-c588fc15.entry.js +0 -4
  350. package/lib/duet/p-cbedc26b.entry.js +0 -4
  351. package/lib/duet/p-f46480c6.entry.js +0 -4
  352. package/lib/duet/p-fd989bd6.entry.js +0 -4
@@ -7,7 +7,7 @@ import { h, Host } from "@stencil/core";
7
7
  import { inheritGlobalTheme } from "../../common";
8
8
  import { createID } from "../../utils/create-id";
9
9
  import { isKeyboardClick, subscribeTabbingChange, unsubscribeTabbingChange } from "../../utils/keyboard-utils";
10
- import { hasSlot } from "../../utils/slot-utils";
10
+ import { getElementsFromNamedSlot, hasSlot } from "../../utils/slot-utils";
11
11
  import { sanitizeString } from "../../utils/string-utils";
12
12
  /**
13
13
  * @part duet-collapsible-heading-content - piercing selector for styling the heading content
@@ -116,10 +116,19 @@ export class DuetCollapsible {
116
116
  if (this.accessibleLabel) {
117
117
  return this.accessibleLabel;
118
118
  }
119
- if (this.heading && this.caption) {
120
- return `${this.heading}. ${this.caption}`;
119
+ const labelParts = [];
120
+ if (this.heading) {
121
+ labelParts.push(this.heading);
121
122
  }
122
- return this.heading || null;
123
+ if (this.hasAfterHeading) {
124
+ labelParts.push(getElementsFromNamedSlot(this.element, "after-heading")
125
+ .map(e => e.textContent.trim())
126
+ .join(", "));
127
+ }
128
+ if (this.caption) {
129
+ labelParts.push(this.caption);
130
+ }
131
+ return labelParts.join(". ");
123
132
  };
124
133
  this.handleClick = (e) => {
125
134
  e.preventDefault();
@@ -159,7 +168,7 @@ export class DuetCollapsible {
159
168
  */
160
169
  render() {
161
170
  const HeadingTagName = this.headingLevel ? sanitizeString(this.headingLevel) : "div";
162
- return (h(Host, { key: 'c9d5a712bfb5b37c276871acd49f1f427115123c', class: { "duet-m-0": this.margin === "none", negative: this.negative } }, h(HeadingTagName, { key: '66b546314cf88918517dac44746c8cd01f600777' }, h("button", { key: '42d5229a2e076b434f18414c83c86b2000923a5b', class: {
171
+ return (h(Host, { key: '4c35285a6b1bb57e8a4b9606a6f30df1d17d700d', class: { "duet-m-0": this.margin === "none", negative: this.negative } }, h(HeadingTagName, { key: '10373d162861548e8bf0e6a6ec48cc9e6feada66' }, h("button", { key: 'f2a7de72d427282d7344fa887eae3ec9d1108598', class: {
163
172
  "duet-collapsible-heading": true,
164
173
  "duet-collapsible-heading-centered": this.centerHeading,
165
174
  "duet-theme-turva": this.theme === "turva",
@@ -167,7 +176,7 @@ export class DuetCollapsible {
167
176
  "has-after-heading": this.hasAfterHeading,
168
177
  "full-width": this.headingFullWidth,
169
178
  "has-caption": !!this.caption,
170
- }, style: { "font-size": this.getFontSizeFromTokens() }, role: "button", ref: button => (this.nativeButton = button), "aria-label": this.getAccessibleLabel(), "aria-expanded": this.open ? "true" : "false", "aria-controls": this.id, onClick: this.handleClick, onKeyDown: this.handleKeyDown }, h("div", { key: '2ea194820ac005ad8b7764d11b157f2852f508f1', class: "duet-collapsible-heading-wrapper" }, h("div", { key: '8858a6837ac03c2c7ca3d6d0710073a1ad3c1cf9', class: "duet-collapsible-heading-icon" }, h("duet-icon", { key: '5f369d914ae01a0f79667e4ae2d50355bbf04e43', margin: "none", size: this.getEquivalentIconSize(), icon: icon.svg })), h("div", { key: 'edd61cefab1acfa7a8b11cacb611521c49821f4b', class: "duet-collapsible-heading-content", part: "duet-collapsible-heading-content" }, this.heading), this.hasAfterHeading && (h("div", { key: 'afa02200acd4f871aaaa2b6b351af15c195f14b4', part: "duet-collapsible-after-heading" }, h("slot", { key: '7c07f36202471bfad63252268d336c18d71ac88d', name: "after-heading" })))), this.caption && (h("div", { key: '595b23e11232e4f90f973b88459231dfec2e0dbc', class: "duet-collapsible-heading-caption" }, h("duet-caption", { key: '7cc446a7c23a2b6a044e256e18d5e1fbf14f4de2', size: "small", margin: "none" }, this.caption))))), h("div", { key: 'cd2888df0b2d63a3787e678c4fec6e7698b1cb0b', id: this.id, class: { "duet-collapsible-content": true, "duet-theme-turva": this.theme === "turva" }, part: "duet-collapsible-content" }, h("slot", { key: '643e40fc94d87cce2769b7930bd83514cb0b3d6f' }))));
179
+ }, style: { "font-size": this.getFontSizeFromTokens() }, role: "button", ref: button => (this.nativeButton = button), "aria-label": this.getAccessibleLabel(), "aria-expanded": this.open ? "true" : "false", "aria-controls": this.id, onClick: this.handleClick, onKeyDown: this.handleKeyDown }, h("div", { key: 'c14f682e6f885865d5261150ce734ed7da7ecbca', class: "duet-collapsible-heading-wrapper" }, h("div", { key: '68a1f424f6a8acb4851ec5847b847a39386a9c2d', class: "duet-collapsible-heading-icon" }, h("duet-icon", { key: '06679c60e3aee0f6c6230ab00d85910cf06073c0', margin: "none", size: this.getEquivalentIconSize(), icon: icon.svg })), h("div", { key: '2514a96bfde0da2606ebe29e31170408dc4bd004', class: "duet-collapsible-heading-content", part: "duet-collapsible-heading-content" }, this.heading), this.hasAfterHeading && (h("div", { key: '16129fc66c34f9a107aa21c64c2af5ef4e8345c9', part: "duet-collapsible-after-heading" }, h("slot", { key: '952802b3fad8ea858438be89acd628e758bab39f', name: "after-heading" })))), this.caption && (h("div", { key: '365284fa408a990dc24d00e8701da4ac8b54fac3', class: "duet-collapsible-heading-caption" }, h("duet-caption", { key: '31f4325613bd800ad627d614e00705323d9d5049', size: "small", margin: "none" }, this.caption))))), h("div", { key: '3472e80b23745a5deb2a186f8670873ad74628a8', id: this.id, class: { "duet-collapsible-content": true, "duet-theme-turva": this.theme === "turva" }, part: "duet-collapsible-content" }, h("slot", { key: '09bab3ef3b7b7ee8015e79723f3c28095663883a' }))));
171
180
  }
172
181
  static get is() { return "duet-collapsible"; }
173
182
  static get encapsulation() { return "shadow"; }
@@ -480,13 +480,13 @@ export class DuetDatePicker {
480
480
  if (maxDate) {
481
481
  maxYear = Math.min(maxYear, maxDate.getFullYear());
482
482
  }
483
- return (h(Host, { key: '19c0a0a7ca3a67641f2e2fd47b1f66ef3942be00', class: { "duet-expand": this.expand, "duet-m-0": this.margin === "none" } }, h("div", { key: '4c0294d785d5fbfc00d0b19369c365e03ec540a1', class: "duet-date" }, h(DatePickerInput, { key: '33285b02172cd08e881bbdb2fca5624b5a99f8cb', hasFocus: this.inputHasFocus, value: this.value, valueAsDate: valueAsDate, formattedValue: this.inputValue, language: this.language, onInput: this.handleInputChange, onBlur: this.handleBlur, onFocus: this.handleFocus, onClick: this.toggleOpen, name: this.name, disabled: this.disabled, error: this.error || (!this.disableBuiltInErrors && this.internalValidityError) || null, role: this.role, required: this.required, theme: this.theme, tooltip: this.tooltip, tooltipDirection: this.tooltipDirection, labelHidden: this.labelHidden, placeholder: this.placeholder, inputLabel: this.label, identifier: this.identifier, buttonRef: element => (this.datePickerButton = element), inputRef: element => (this.datePickerInput = element), accessibleActiveDescendant: this.accessibleActiveDescendant, accessibleControls: this.accessibleControls, accessibleOwns: this.accessibleOwns, accessibleDescribedBy: this.accessibleDescribedBy, accessibleLiveError: this.accessibleLiveError, echoPlaceholder: this.echoPlaceholder, caption: this.caption })), h("div", { key: '2c9407fdc22f7f3f9345bf342d606483806cf0e6', class: {
483
+ return (h(Host, { key: '37f45a71c4032ac634736a6920fb025734c3bbe2', class: { "duet-expand": this.expand, "duet-m-0": this.margin === "none" } }, h("div", { key: '61c829b503df044c1b67f460b7dacd7398078cba', class: "duet-date" }, h(DatePickerInput, { key: '8a04908b051939c5c8eb85cf7efdeac0d3a21d6c', hasFocus: this.inputHasFocus, value: this.value, valueAsDate: valueAsDate, formattedValue: this.inputValue, language: this.language, onInput: this.handleInputChange, onBlur: this.handleBlur, onFocus: this.handleFocus, onClick: this.toggleOpen, name: this.name, disabled: this.disabled, error: this.error || (!this.disableBuiltInErrors && this.internalValidityError) || null, role: this.role, required: this.required, theme: this.theme, tooltip: this.tooltip, tooltipDirection: this.tooltipDirection, labelHidden: this.labelHidden, placeholder: this.placeholder, inputLabel: this.label, identifier: this.identifier, buttonRef: element => (this.datePickerButton = element), inputRef: element => (this.datePickerInput = element), accessibleActiveDescendant: this.accessibleActiveDescendant, accessibleControls: this.accessibleControls, accessibleOwns: this.accessibleOwns, accessibleDescribedBy: this.accessibleDescribedBy, accessibleLiveError: this.accessibleLiveError, echoPlaceholder: this.echoPlaceholder, caption: this.caption })), h("div", { key: 'acd43f63f5682534c6bf78625fe43c6c86a46dc0', class: {
484
484
  "duet-theme-turva": this.theme === "turva",
485
485
  "duet-date-dialog": true,
486
486
  left: this.direction === "left",
487
487
  error: !!this.error,
488
488
  active: this.open,
489
- }, role: "dialog", "aria-modal": "true", "aria-hidden": this.open ? "false" : "true", "aria-labelledby": this.dialogLabelId, onTouchMove: this.handleTouchMove, onTouchStart: this.handleTouchStart, onTouchEnd: this.handleTouchEnd }, h("duet-overlay", { key: 'acfc613bbfb189023c734698aa31d8559adbcc7c', visible: this.open, "display-device": "x-small" }), h(FocusGuard, { key: '6a8197e6d5f96312d6f7c150ae5978334ee44af7', moveFocusTo: this.focusedDayNode }), h("div", { key: '16d4fd5169ce40f3bcd66805a28ed366891e88e7', class: "duet-date-dialog-wrapper", onKeyDown: this.handleEscKey, ref: element => (this.dialogWrapperNode = element) }, h("duet-visually-hidden", { key: 'eb26a4f9a803ce065946f742bdcb64db803a0b32', "aria-live": "polite" }, text.keyboardInstruction), h("div", { key: '00ca0c13193e6443c4989582e3eb1f570fd3e113', class: "duet-date-dialog-mobile-header" }, h(DuetInternalLabel, { key: 'd3a5c701a6f1d8c2a2a99194fe1152a76133c9c6', margin: "none" }, this.label), h("button", { key: 'fb2a86e1f251a338a2cb6b4e30260995c485cced', class: "duet-date-picker-close", ref: element => (this.closeButtonNode = element), onClick: () => this.hide(), type: "button" }, h("duet-icon", { key: '7ac51349e66f258160ecd1ca093c739555dbac8a', name: "navigation-close-small", margin: "none", color: "currentColor", size: "xx-small" }), h("duet-visually-hidden", { key: 'd22d21a5ff614c658b83edb6631b893b8e9fefe4' }, text.closeLabel))), h("div", { key: 'dafd3a931c7efed8c5d36996e306635e130e5cc4', class: "duet-date-dialog-header" }, h("div", { key: '655b64aeb6eb804538da39d1540bd975dc0d42a8', class: "duet-date-dialog-dropdowns" }, h("duet-visually-hidden", { key: 'ec0305c056c683a7e8cede20f22317e231b85bbd' }, h("h2", { key: '82779b7ba7a438b467a21ecb2871f64b7bce6714', id: this.dialogLabelId, "aria-live": "polite", "aria-atomic": "true" }, text.monthLabels[focusedMonth], " ", this.focusedDay.getFullYear())), h("duet-visually-hidden", { key: '9f050f46de2be9dc3c1f9d6965eb72901ca12d67' }, h("label", { key: '940dfb77c9440379d63297393a3cb7af96deba3e', htmlFor: this.monthSelectId }, text.monthSelectLabel)), h("div", { key: '5d5c3bb349257c8e43f6e63ce1e142b6c630519f', class: "duet-date-dialog-select" }, h("select", { key: '74ef4df111f0793d17a3e4439fea8690f5c5169c', id: this.monthSelectId, class: "duet-date-month-select", ref: element => (this.monthSelectNode = element), onChange: this.handleMonthSelect }, text.monthLabels.map((month, i) => (h("option", { key: month, value: i, selected: i === focusedMonth, disabled: !inRange(new Date(focusedYear, i, 1), minDate ? startOfMonth(minDate) : null, maxDate ? endOfMonth(maxDate) : null) }, month)))), h("div", { key: '894fdd48da75442d368a1101a5c4a8042b3cf418', class: "duet-date-dialog-select-label", "aria-hidden": "true" }, h("span", { key: 'b3b88e90b0e690f29dcd72937b36ca2a027177e6' }, text.monthLabelsShort[focusedMonth]), h("duet-icon", { key: 'd030fc66e0e0fdcda78f26d7a117ea252932be5a', name: "action-arrow-down-small", color: "currentColor", margin: "none", size: "xxx-small" }))), h("duet-visually-hidden", { key: '83f4b90e3d44537cb079f91f911385931d43f89c' }, h("label", { key: 'c2dfc3a34d2236e45726eff1523b22f22b532cfa', htmlFor: this.yearSelectId }, text.yearSelectLabel)), h("div", { key: '708dad74eb23709ac341e0bb60ca2960a2fc2131', class: "duet-date-dialog-select" }, h("select", { key: 'ddda42ee0a550dac56dc85c5e96be637771b5f2e', id: this.yearSelectId, class: "duet-date-year-select", onChange: this.handleYearSelect }, range(minYear, maxYear).map(year => (h("option", { key: year, selected: year === focusedYear }, year)))), h("div", { key: 'ea037965dc2d924343aaac84ef2bd3afe3940b67', class: "duet-date-dialog-select-label", "aria-hidden": "true" }, h("span", { key: '3c6bd199597d6635350ea348f90cf8d94f9c1121' }, this.focusedDay.getFullYear()), h("duet-icon", { key: 'cdd40b45f01e58dfdb1380aeef672632252c75a7', name: "action-arrow-down-small", color: "currentColor", margin: "none", size: "xxx-small" })))), h("div", { key: 'a23a3b6969f46d06bdbd80ce21adeeaa6705ad14', class: "duet-date-dialog-buttons" }, h("duet-action-button", { key: '2140b1f39112967e325f84f505880e582eb5f5f7', accessibleLabel: i18n[this.language].prevMonthLabel, actionName: i18n[this.language].prevMonthLabel, class: "duet-date-dialog-prev", onClick: this.handlePreviousMonthClick, disabled: prevMonthDisabled, "icon-name": "action-arrow-left-small" }, text.prevMonthLabel), h("duet-action-button", { key: '00a9ecf746d5a43e4c7f6bc66a77d00cfcbfb800', accessibleLabel: i18n[this.language].nextMonthLabel, actionName: i18n[this.language].nextMonthLabel, class: "duet-date-dialog-next", onClick: this.handleNextMonthClick, disabled: nextMonthDisabled, "icon-name": "action-arrow-right-small" }, text.nextMonthLabel))), h(DatePickerMonth, { key: 'ad33c40984a96557732fb910e1c640e6d09363e6', selectedDate: valueAsDate, focusedDate: this.focusedDay, onDateSelect: this.handleDaySelect, onKeyboardNavigation: this.handleKeyboardNavigation, labelledById: this.dialogLabelId, language: this.language, theme: this.theme, min: minDate, max: maxDate, focusedDayRef: element => (this.focusedDayNode = element), onFocusEnter: this.enableActiveFocus, onFocusExit: this.disableActiveFocus })), h(FocusGuard, { key: '117953981892ef42470c071ddbde955972a2461d', moveFocusTo: this.closeButtonNode }))));
489
+ }, role: "dialog", "aria-modal": "true", "aria-hidden": this.open ? "false" : "true", "aria-labelledby": this.dialogLabelId, onTouchMove: this.handleTouchMove, onTouchStart: this.handleTouchStart, onTouchEnd: this.handleTouchEnd }, h("duet-overlay", { key: '88bd9a51351af2edf1e2e07f155c1eabbff10646', visible: this.open, "display-device": "x-small" }), h(FocusGuard, { key: '08fa3fd43496f0250e63598a879eb03ff81ade36', moveFocusTo: this.focusedDayNode }), h("div", { key: 'a7d8dd867afa616cd47543b8c47a160b710b70f3', class: "duet-date-dialog-wrapper", onKeyDown: this.handleEscKey, ref: element => (this.dialogWrapperNode = element) }, h("duet-visually-hidden", { key: '81c99489839f6ceb28ac6f25f73a0d92f054b0bc', "aria-live": "polite" }, text.keyboardInstruction), h("div", { key: '404552e44ed007048db39d1d20108c6c38aca2bf', class: "duet-date-dialog-mobile-header" }, h(DuetInternalLabel, { key: 'd49183b544c8e2a4a23ca281a62b3c4be8a90ebf', margin: "none" }, this.label), h("button", { key: '3adb95e86f08e23c1b60e6e19ec3d9d23467f33f', class: "duet-date-picker-close", ref: element => (this.closeButtonNode = element), onClick: () => this.hide(), type: "button" }, h("duet-icon", { key: 'c500a093b3fdae7155e3a5aed30539f009f156c2', name: "navigation-close-small", margin: "none", color: "currentColor", size: "xx-small" }), h("duet-visually-hidden", { key: '1f23e50c6c479195a622d512ac4ee5d866ebcd9b' }, text.closeLabel))), h("div", { key: '662972a21f2c4cd532471209c9d49e51142f0b25', class: "duet-date-dialog-header" }, h("div", { key: 'fb7cbfa6f3ccded04f8d481447c5847a1293d535', class: "duet-date-dialog-dropdowns" }, h("duet-visually-hidden", { key: '8aa30a4e48fcc57ee56d7564284ff219260e8d5f' }, h("h2", { key: '7a40dd8ca6344ac0ccf504ce73b476a3f5e4b0f6', id: this.dialogLabelId, "aria-live": "polite", "aria-atomic": "true" }, text.monthLabels[focusedMonth], " ", this.focusedDay.getFullYear())), h("duet-visually-hidden", { key: '7ef05a1a7fab5bebf6d24bc78bb9789efd85835e' }, h("label", { key: 'b93bb5d18acd17fb2bc22bc43c00d16199d254da', htmlFor: this.monthSelectId }, text.monthSelectLabel)), h("div", { key: '72f8d34639a3a7de933c91e781b9aafa8e3fb668', class: "duet-date-dialog-select" }, h("select", { key: 'a09e0ba04dfd0da49e8d141c8b2c520d49a6108d', id: this.monthSelectId, class: "duet-date-month-select", ref: element => (this.monthSelectNode = element), onChange: this.handleMonthSelect }, text.monthLabels.map((month, i) => (h("option", { key: month, value: i, selected: i === focusedMonth, disabled: !inRange(new Date(focusedYear, i, 1), minDate ? startOfMonth(minDate) : null, maxDate ? endOfMonth(maxDate) : null) }, month)))), h("div", { key: '85e19eac15e8475ea1a891b49796c2999e9800b8', class: "duet-date-dialog-select-label", "aria-hidden": "true" }, h("span", { key: 'ae692bf29092ba59affd6258f57ef9dcc1847f2e' }, text.monthLabelsShort[focusedMonth]), h("duet-icon", { key: 'aed73b3af5c337b8e7ff70699106d3c685206ff1', name: "action-arrow-down-small", color: "currentColor", margin: "none", size: "xxx-small" }))), h("duet-visually-hidden", { key: '860526bf60d4e94dfd2c19a5eabcd049b8273d82' }, h("label", { key: '6852a9ff1990eddd80f8c0edfa59cc762d68fcc9', htmlFor: this.yearSelectId }, text.yearSelectLabel)), h("div", { key: '28bf2d2a99952eb203a2198f558b7ccba9ae99c3', class: "duet-date-dialog-select" }, h("select", { key: 'efafa17aa2c9306af0ca13dbee83cdefeed076b2', id: this.yearSelectId, class: "duet-date-year-select", onChange: this.handleYearSelect }, range(minYear, maxYear).map(year => (h("option", { key: year, selected: year === focusedYear }, year)))), h("div", { key: '5d9f4154d302ea2733b72a2f613abd9f7f569be8', class: "duet-date-dialog-select-label", "aria-hidden": "true" }, h("span", { key: 'a6996b5aa61aa5227048b4eb1b8cb227b0dcda33' }, this.focusedDay.getFullYear()), h("duet-icon", { key: '6c999d099466d7b9ac2dd54ba7cf9b80732d82ef', name: "action-arrow-down-small", color: "currentColor", margin: "none", size: "xxx-small" })))), h("div", { key: '7c63a65698b7a07d10c9b75ad21a6c7585c99034', class: "duet-date-dialog-buttons" }, h("duet-action-button", { key: '3599aaffa6d0b601b35cfa244faa11b705724ef0', accessibleLabel: i18n[this.language].prevMonthLabel, actionName: i18n[this.language].prevMonthLabel, class: "duet-date-dialog-prev", onClick: this.handlePreviousMonthClick, disabled: prevMonthDisabled, "icon-name": "action-arrow-left-small" }, text.prevMonthLabel), h("duet-action-button", { key: 'dfff287908a10fd3b84abbd643af6d095bb70537', accessibleLabel: i18n[this.language].nextMonthLabel, actionName: i18n[this.language].nextMonthLabel, class: "duet-date-dialog-next", onClick: this.handleNextMonthClick, disabled: nextMonthDisabled, "icon-name": "action-arrow-right-small" }, text.nextMonthLabel))), h(DatePickerMonth, { key: '4f9b1c1fd0791045a5d04055e1c61182f11ebe86', selectedDate: valueAsDate, focusedDate: this.focusedDay, onDateSelect: this.handleDaySelect, onKeyboardNavigation: this.handleKeyboardNavigation, labelledById: this.dialogLabelId, language: this.language, theme: this.theme, min: minDate, max: maxDate, focusedDayRef: element => (this.focusedDayNode = element), onFocusEnter: this.enableActiveFocus, onFocusExit: this.disableActiveFocus })), h(FocusGuard, { key: '06daea4e6567faa83c290236d3bafd2ed6bb310e', moveFocusTo: this.closeButtonNode }))));
490
490
  }
491
491
  static get is() { return "duet-date-picker"; }
492
492
  static get encapsulation() { return "shadow"; }
@@ -794,7 +794,7 @@ export class DuetDatePicker {
794
794
  },
795
795
  "getter": false,
796
796
  "setter": false,
797
- "reflect": false,
797
+ "reflect": true,
798
798
  "defaultValue": "\"\""
799
799
  },
800
800
  "disableBuiltInErrors": {
@@ -30,6 +30,10 @@ export class DuetFieldset {
30
30
  * If caption is present, larger lineheight is used regardless of this prop.
31
31
  */
32
32
  this.compactLabel = false;
33
+ /**
34
+ * An error message to be shown next to the label.
35
+ */
36
+ this.error = "";
33
37
  /**
34
38
  * The aria-live attribute for the error message. When the input is validated on blur, use "off", as using "polite" or "assertive"
35
39
  * makes the screen reader read the error message twice. When the input is validated on submit, use "polite", as "off" would leave
@@ -71,20 +75,20 @@ export class DuetFieldset {
71
75
  * Always the last one in the class.
72
76
  */
73
77
  render() {
74
- return (h(Host, { key: '258a1f3685f4b3062dde173a5794b9b28c09907f', class: { "duet-m-0": this.margin === "none" } }, h("fieldset", { key: '2c02911b79dc15bab34df3f44a51422915f85512', "aria-labelledby": this.labelId, "aria-describedby": this.error ? this.errorId : null,
78
+ return (h(Host, { key: 'e1a788de39eaef07a1abaa996870dd726b226aee', class: { "duet-m-0": this.margin === "none" } }, h("fieldset", { key: 'e7d2b6ecb24666f6a563d4923bb228bdf7e8820d', "aria-labelledby": this.labelId, "aria-describedby": this.error ? this.errorId : null,
75
79
  // NVDA and VoiceOver do not yet support aria-errormessage
76
80
  // once they do, we can remove errors from the aria-describedby
77
81
  // aria-errormessage={this.error ? this.errorId : null}
78
82
  class: {
79
83
  "duet-fieldset": true,
80
84
  "duet-theme-turva": this.theme === "turva",
81
- } }, h("legend", { key: 'e8cc33c8ce84e853fc7c7346b530e2e6aaad3183', id: this.labelId }, h(this.labelHeadingLevel, { key: '67c582882054f866aeeb51fe1a3cd265fba86c3d' }, this.label), this.caption && h("span", { key: 'd7e7385c337f132b5f9c9a05fa1d0882059b5b4f' }, this.caption)), h("div", { key: '1bde79106ff72cb9a950abb9063c1f361ebc88b8', class: {
85
+ } }, h("legend", { key: '9412c1763b18075c6c6d585389c3ac9d22542f64', id: this.labelId }, h(this.labelHeadingLevel, { key: '9c1c5cfef779deef96e68e7f3760f0eeec8d347a' }, this.label), this.caption && h("span", { key: 'd166f280495ee9e156e705fe52455b18c5a13ea2' }, this.caption)), h("div", { key: 'e390d201c421bbd2086946b4548dc98d5c58fead', class: {
82
86
  "duet-legend-wrapper": true,
83
87
  "duet-legend-has-caption": !!this.caption,
84
88
  "duet-legend-has-tooltip": this.hasTooltip,
85
89
  "duet-legend-hidden": this.labelHidden,
86
90
  "duet-legend-compact": this.compactLabel,
87
- } }, h("div", { key: '5bdd5a1d10ec0ca02f0d663c4c0398cf4f15f912', class: "duet-fieldset-label" }, h("span", { key: '6da5eaba488e3691f1b3f5e4641b0043f7b264dc', "aria-hidden": "true" }, this.label), h("slot", { key: '8720d1bc6a9fd0b88a2e2f3ec04a783f33c25f8f', onSlotchange: this.checkHasTooltip, name: "tooltip" })), this.caption && (h("div", { key: 'f2701433f3204d8c606d025e2db9824f8975dd6b', class: "duet-fieldset-caption", "aria-hidden": "true" }, h("duet-caption", { key: 'edf83cd535f5139e64f86a962f9a247e33d9b3b1', theme: this.theme, margin: "none" }, this.caption)))), h("slot", { key: 'b8aa86236854c21d9662cf8bf46c70d5cf8c0d68' }), h("span", { key: 'b8877c8c9a710aa4b59d77ebd847ff3f13b57d6d', class: "duet-fieldset-help duet-fieldset-error", id: this.errorId, "aria-atomic": "true", "aria-live": this.accessibleLiveError, "aria-relevant": "additions removals" }, this.error && h("span", { key: 'b8781cebef3af6ea44dd2754ae2ae7c05f63b1f1', class: { "duet-m-0": this.lastItemIsChip } }, this.error)))));
91
+ } }, h("div", { key: '10861fb7ec43cc4aec34ae9b04b1b191dd7a0d5c', class: "duet-fieldset-label" }, h("span", { key: '63b295dc887c75eb4bc062d214bb5b6a899e0f83', "aria-hidden": "true" }, this.label), h("slot", { key: 'dc154b5f9980e99c525884e32f7811e36fe634fc', onSlotchange: this.checkHasTooltip, name: "tooltip" })), this.caption && (h("div", { key: '1803a70997b3d2de928d501cfb86864bfa3af614', class: "duet-fieldset-caption", "aria-hidden": "true" }, h("duet-caption", { key: 'c574d64b9a375d0af50bc0bed35ea0418139f579', theme: this.theme, margin: "none" }, this.caption)))), h("slot", { key: '48665d8be4d66036d4d69090d7a98ee01f99dbac' }), h("span", { key: '9815f8bf073a39267673baf538de5908b52758e9', class: "duet-fieldset-help duet-fieldset-error", id: this.errorId, "aria-atomic": "true", "aria-live": this.accessibleLiveError, "aria-relevant": "additions removals" }, this.error && h("span", { key: '93bfa1f3fb33cf3bc23055948b416a18369b8497', class: { "duet-m-0": this.lastItemIsChip } }, this.error)))));
88
92
  }
89
93
  static get is() { return "duet-fieldset"; }
90
94
  static get encapsulation() { return "shadow"; }
@@ -230,7 +234,8 @@ export class DuetFieldset {
230
234
  },
231
235
  "getter": false,
232
236
  "setter": false,
233
- "reflect": false
237
+ "reflect": true,
238
+ "defaultValue": "\"\""
234
239
  },
235
240
  "accessibleLiveError": {
236
241
  "type": "string",
@@ -26,9 +26,10 @@ export class DuetGrid {
26
26
  */
27
27
  this.rowReverse = false;
28
28
  /**
29
- * Adjusts the vertical alignment of the grid items, if set to "form_distribute"
29
+ * Adjusts the vertical alignment of the grid items, if set to "form-distribute"
30
30
  * the grid will try to calculate correct paddings for any duet-input fields inside duet-grid-items,
31
- * so that they align even when displaying errors.
31
+ * so that they align even when displaying errors. Value "form_distribute" is deprecated, use
32
+ * "form-distribute" for new development.
32
33
  */
33
34
  this.alignment = "top";
34
35
  /**
@@ -44,6 +45,12 @@ export class DuetGrid {
44
45
  */
45
46
  this.gridTemplate = null;
46
47
  }
48
+ validateAlignment(newValue) {
49
+ if (newValue === "form_distribute") {
50
+ console.warn(`DuetGrid alignment value "form_distribute" is deprecated, replace with "form-distribute"`);
51
+ this.alignment = "form-distribute";
52
+ }
53
+ }
47
54
  /**
48
55
  * Private functions
49
56
  */
@@ -71,10 +78,15 @@ export class DuetGrid {
71
78
  this.childObserver.observe(this.element, { childList: true });
72
79
  }
73
80
  // the next two functions are used to watch for changes in the grid items, and are process intensive - so only run when needed
74
- if (this.alignment === "form_distribute") {
81
+ if (this.alignment === "form-distribute") {
75
82
  if (!Build.isServer) {
76
83
  this.formDistributeObserver = new MutationObserver(this.updateGridItemsWithInputFields.bind(this));
77
- this.formDistributeObserver.observe(this.element, { subtree: true, childList: true, characterData: true });
84
+ this.formDistributeObserver.observe(this.element, {
85
+ subtree: true,
86
+ childList: true,
87
+ characterData: true,
88
+ attributeFilter: ["error"],
89
+ });
78
90
  window.addEventListener("resize", this.debounceWindowResizeHandler);
79
91
  }
80
92
  this.updateGridItemsWithInputFields();
@@ -108,7 +120,7 @@ export class DuetGrid {
108
120
  });
109
121
  }
110
122
  async updateGridItemsWithInputFields() {
111
- // Duet components that need to taken into account in form_distribute
123
+ // Duet components that need to taken into account in form-distribute
112
124
  const elementNames = [
113
125
  "duet-button",
114
126
  "duet-checkbox",
@@ -185,11 +197,11 @@ export class DuetGrid {
185
197
  * Always the last one in the class.
186
198
  */
187
199
  render() {
188
- return (h(Host, { key: '2bb3d9243ec7a125fb661965f3cbaf286783b81d', class: {
200
+ return (h(Host, { key: '9212e2e0bff89f3625e4194c7c1ea2d8f71576c9', class: {
189
201
  "duet-grid": true,
190
202
  "duet-no-stacking": !this.responsive,
191
203
  "duet-grid-align-top": this.alignment === "top", // flex-start
192
- "duet-grid-align-bottom": this.alignment === "bottom" || this.alignment === "form_distribute", // flex-end
204
+ "duet-grid-align-bottom": this.alignment === "bottom" || this.alignment === "form-distribute", // flex-end
193
205
  "duet-grid-align-center": this.alignment === "center", // center
194
206
  "duet-grid-align-stretch": this.alignment === "stretch", // stretch
195
207
  "duet-grid-align-baseline": this.alignment === "baseline", // baseline
@@ -212,7 +224,7 @@ export class DuetGrid {
212
224
  "duet-grid-row-reverse": this.rowReverse,
213
225
  [`duet-grid-variation-${this.gridTemplate ? "grid" : "flex"}`]: true,
214
226
  [`duet-grid-template-${this.gridTemplate}`]: true,
215
- } }, h("slot", { key: 'c24fa9a1a433f68a451601ab0313149b4c2cd13d' })));
227
+ } }, h("slot", { key: '3b4490d66c0ad8256492ab43535a62150495ca41' })));
216
228
  }
217
229
  static get is() { return "duet-grid"; }
218
230
  static get encapsulation() { return "shadow"; }
@@ -323,10 +335,10 @@ export class DuetGrid {
323
335
  "alignment": {
324
336
  "type": "string",
325
337
  "attribute": "alignment",
326
- "mutable": false,
338
+ "mutable": true,
327
339
  "complexType": {
328
340
  "original": "DuetGridAlignment",
329
- "resolved": "\"baseline\" | \"bottom\" | \"center\" | \"form_distribute\" | \"stretch\" | \"top\"",
341
+ "resolved": "\"baseline\" | \"bottom\" | \"center\" | \"form-distribute\" | \"form_distribute\" | \"stretch\" | \"top\"",
330
342
  "references": {
331
343
  "DuetGridAlignment": {
332
344
  "location": "local",
@@ -339,11 +351,11 @@ export class DuetGrid {
339
351
  "optional": false,
340
352
  "docs": {
341
353
  "tags": [],
342
- "text": "Adjusts the vertical alignment of the grid items, if set to \"form_distribute\"\nthe grid will try to calculate correct paddings for any duet-input fields inside duet-grid-items,\nso that they align even when displaying errors."
354
+ "text": "Adjusts the vertical alignment of the grid items, if set to \"form-distribute\"\nthe grid will try to calculate correct paddings for any duet-input fields inside duet-grid-items,\nso that they align even when displaying errors. Value \"form_distribute\" is deprecated, use\n\"form-distribute\" for new development."
343
355
  },
344
356
  "getter": false,
345
357
  "setter": false,
346
- "reflect": false,
358
+ "reflect": true,
347
359
  "defaultValue": "\"top\""
348
360
  },
349
361
  "distribution": {
@@ -423,6 +435,9 @@ export class DuetGrid {
423
435
  static get elementRef() { return "element"; }
424
436
  static get watchers() {
425
437
  return [{
438
+ "propName": "alignment",
439
+ "methodName": "validateAlignment"
440
+ }, {
426
441
  "propName": "responsive",
427
442
  "methodName": "updateGridItems"
428
443
  }, {
@@ -284,6 +284,10 @@
284
284
  top: 310px;
285
285
  }
286
286
  }
287
+ .duet-hero.duet-hero-campaign ::slotted(.duet-heading), .duet-hero.duet-hero-section ::slotted(.duet-heading) {
288
+ font-size: inherit !important;
289
+ color: inherit !important;
290
+ }
287
291
  .duet-hero.duet-hero-campaign .duet-hero-text, .duet-hero.duet-hero-section .duet-hero-text {
288
292
  width: 100%;
289
293
  }
@@ -180,13 +180,20 @@ export class DuetHero {
180
180
  * Component lifecycle events.
181
181
  */
182
182
  componentWillLoad() {
183
+ const headings = "h1, h2, h3, h4, h5, h6";
183
184
  inheritGlobalTheme(this);
184
185
  this.hasPreHeadingSlot = hasSlot(this.element, "pre-heading");
185
186
  this.hasHeadingSlot = hasSlot(this.element, "heading");
186
187
  this.hasSubHeadingSlot = hasSlot(this.element, "subheading");
187
188
  checkNamedSlotElement(this.element, "pre-heading", "span");
188
- checkNamedSlotElement(this.element, "heading", "span");
189
+ checkNamedSlotElement(this.element, "heading", `span, ${headings}`);
189
190
  checkNamedSlotElement(this.element, "subheading", "span");
191
+ if (this.hasHeadingSlot && getElementsFromNamedSlot(this.element, "heading")[0].matches(headings)) {
192
+ this.hasHeadingSlotNative = true;
193
+ }
194
+ if (this.hasSubHeadingSlot && getElementsFromNamedSlot(this.element, "subheading")[0].matches(headings)) {
195
+ this.hasSubHeadingSlotNative = true;
196
+ }
190
197
  this.refresh();
191
198
  }
192
199
  connectedCallback() {
@@ -270,7 +277,7 @@ export class DuetHero {
270
277
  outlineColor = "color-primary-turva";
271
278
  }
272
279
  }
273
- return (h("div", { key: '050542b6acfc853e803793b7ce454506a9c485d4', role: "region", class: {
280
+ return (h("div", { key: 'fc3ecc930f72a824e8e8e488594714fe52f31fff', role: "region", class: {
274
281
  "duet-hero": true,
275
282
  "duet-theme-turva": this.theme === "turva",
276
283
  "duet-has-category-icon": !!this.categoryIcon,
@@ -288,17 +295,17 @@ export class DuetHero {
288
295
  "duet-hero-text-center": (this.textCenter && !this.leftAlign) || campaignOrSection,
289
296
  "duet-hero-left-align": this.leftAlign && !campaignOrSection,
290
297
  "duet-hero-narrow": this.layout === "narrow",
291
- }, part: "duet-hero" }, campaignOrSection && this.image && (h("div", { key: 'db9f7d160ebee968dca3e4efead01b0af6288043', class: "background-area" }, h("div", { key: 'c0bf3537b54cc4d8b04b72360be1bc922b887c0d', class: "background-container" }, h("div", { key: '39f9c4466c54b54fce2f8ea33c9163a4ca5a8cf1', class: "background" }, h("img", { key: 'bc5aefeac085a2f758668ec48b3ffd4d313b43a5', class: `${imageSizeIsCover ? "cover" : ""} ${imagePositionIsCenter ? "center" : ""}`, src: this.image, alt: "", role: "presentation" })), h("div", { key: '296411aa792beefc76a425f5b39f16f39486c5c2', class: "brand-shape" })))), this.variation === "product" && this.image && (h("div", { key: '7f53ee027d3b917a9bc5284dbb152ae96ab034ad', class: { "background-area": true, [this.layout]: true } }, h("div", { key: 'e5119c084fc6b292252a111c4acb3e2ea6c6cd77', class: { "background-container": true, [this.layout]: true } }, h("div", { key: '3faf62ed852d07e8458c379a06ed3cfd3ca3fafb', class: { background: true, [this.layout]: true } }, h("div", { key: '43b7df5d771099f7c819c23c820b18fb053b67f0', class: { "background-mask": true, [this.layout]: true } }), this.theme !== "turva" && h("div", { key: '3ac9ab64a699f79eafe749c027383f7753437805', class: { "brand-shape": true, [this.layout]: true } }), h("div", { key: '2bd54c40138a7a732cf0bae9a5b57137a3cfded4', class: { "brand-shaped-image": true, [this.layout]: true } }, h("div", { key: '63a9404b8e42499bcd15bacdca4658931c49fbcc', class: { "brand-shaped-image-wrapper": true, [this.layout]: true } }, h("div", { key: '038c455f20502c4600208d6a4e31a8dabd9b7799', class: { "brand-shaped-image-bg": true, [this.layout]: true }, style: styles }))), this.categoryIcon && (h("div", { key: '9b5e7df86df015dbabfaff2fc4f37c1c54f82cd3', class: { "brand-shaped-icon": true, [this.layout]: true } }, h("duet-icon", { key: 'd9ab558d532f77eca798e2998ba5cd592881f03a', class: { [this.layout]: true }, background: "none", name: this.categoryIcon, margin: "none", size: "auto", responsive: false }))))))), this.variation === "content" && this.image && (h("div", { key: 'fe41770dc2aa046b1f7eeb76ac8d77dd0ff964cf', class: "background-area" }, h("div", { key: 'a1821e7ecd479f6d5e78d30aa60b9eaca214de30', class: "background" }, h("div", { key: '37093f57801077d47fc4da19453b47979039d1f5', class: "background-mask" }), this.theme !== "turva" && h("div", { key: '6c2ca91302a3ddccfc3f61043d660d5c86ef2bd6', class: "brand-shape" }), h("div", { key: '5e862b201459878273988077df6fe7d10abcbf55', class: "brand-shaped-image" }, h("div", { key: '915e7aed1c7561bb280156e72b7b03fc6f711c81', class: "brand-shaped-image-wrapper" }, h("div", { key: 'abcbf26a40434f3470ef7576b3f342dcd6e75081', class: "brand-shaped-image-bg", style: styles })))))), h("div", { key: '8b81e3958219408f71b8c7a53b325097f9d95c0c', class: { "duet-hero-wrapper": true, [this.layout]: true } }, this.image && this.variation === "image" && (h("div", { key: 'cba83e5423eae68e909b4ca76af31aa2ad621b0b', class: "duet-hero-image-mask" }, h("div", { key: '7b6f261e94a3233c4254a729c94196e0c6f27324', class: "duet-hero-image-wrapper" }, h("div", { key: '7e8b9202b8ffe7b6e5f91b432ec68dd3272789bd', class: "duet-hero-image", style: styles })))), (this.variation === "gray" || this.variation === "light" || this.variation === "minimal") &&
292
- this.processedBack && (h("div", { key: '2623bba361537fb8e0c7103ad62b76cd25e33388', class: "duet-hero-back" }, h("duet-button", { key: '1e4c727a46d6554826d3e30653244c1a51162b92', style: buttonStyles, variation: "plain", icon: "action-arrow-left-small", theme: this.theme, iconSize: "small", color: buttonColor, padding: "none", margin: "none", fixed: true, url: this.processedBack.href, identifier: this.processedBack.id, onClick: event => this.handleClick(event, {
298
+ }, part: "duet-hero" }, campaignOrSection && this.image && (h("div", { key: 'a8cdeb3e0c17fed0de61ab1c84a5f8b4eb92d43f', class: "background-area" }, h("div", { key: 'c0e772e0eb58c3b59be2ef2441653d7d9355b7be', class: "background-container" }, h("div", { key: 'ff30622beb78548046143236845a8c6252dc4c40', class: "background" }, h("img", { key: '4ed685b3b1f5926867fcf8e53050a4f4dbe71060', class: `${imageSizeIsCover ? "cover" : ""} ${imagePositionIsCenter ? "center" : ""}`, src: this.image, alt: "", role: "presentation" })), h("div", { key: '8757c109c1ecbf249d31b7f3fdfe062e7cbcdf46', class: "brand-shape" })))), this.variation === "product" && this.image && (h("div", { key: 'b6b734d21571cbe03adab7be1942caa351eb886e', class: { "background-area": true, [this.layout]: true } }, h("div", { key: '5e6e459f153a9665bc8993789961ae5d23ff389e', class: { "background-container": true, [this.layout]: true } }, h("div", { key: '593f8f68c2df59b1e6499eb6f59394dee782891e', class: { background: true, [this.layout]: true } }, h("div", { key: '49aaadfc675e5cc1cf528cfb3516577d3baa1c4f', class: { "background-mask": true, [this.layout]: true } }), this.theme !== "turva" && h("div", { key: '52d15566f49e4ee0d72ab9ec10f992d55291a2cd', class: { "brand-shape": true, [this.layout]: true } }), h("div", { key: 'a7275c16c76b667037cfe0044b21b11ce09bf413', class: { "brand-shaped-image": true, [this.layout]: true } }, h("div", { key: 'a3522f3ed67befbb439ee07195e959180b3e01a1', class: { "brand-shaped-image-wrapper": true, [this.layout]: true } }, h("div", { key: '3cb4ef66b9af1357e75318bc6f97e732e1787ce2', class: { "brand-shaped-image-bg": true, [this.layout]: true }, style: styles }))), this.categoryIcon && (h("div", { key: 'c15dfb764fe13d5766c3ad5e2b4bf012c739e257', class: { "brand-shaped-icon": true, [this.layout]: true } }, h("duet-icon", { key: 'd5f3d4a50473d2e2b56575de789e42c246c69987', class: { [this.layout]: true }, background: "none", name: this.categoryIcon, margin: "none", size: "auto", responsive: false }))))))), this.variation === "content" && this.image && (h("div", { key: 'c0ace6245e4431276a7e72a618b37f967d0b4bc5', class: "background-area" }, h("div", { key: 'cf04f88d15da106d8416d910835e07e87dd04bea', class: "background" }, h("div", { key: '0536ea5ec869a1ec253ab616a12485b01433982d', class: "background-mask" }), this.theme !== "turva" && h("div", { key: 'd7933f6c85dc709697ba451cf89cda8f7a9e3f03', class: "brand-shape" }), h("div", { key: 'c5fd0f3a99befd7d054303c9ebfd596989e7ccb8', class: "brand-shaped-image" }, h("div", { key: '96c71979b18e456b1a94fbb2bc1ae56bbf5cf318', class: "brand-shaped-image-wrapper" }, h("div", { key: 'acd8a1ce0a639e28970c6ca41b789bcfac03f9c7', class: "brand-shaped-image-bg", style: styles })))))), h("div", { key: '8d08cf63aac9a03e1874b8cbfa4741ee1f1c4949', class: { "duet-hero-wrapper": true, [this.layout]: true } }, this.image && this.variation === "image" && (h("div", { key: '6da49938f8cf4c5038179fb9b48e0d8d5b8a521a', class: "duet-hero-image-mask" }, h("div", { key: '1682a488a00e1188d2be47d0aa895277f065adee', class: "duet-hero-image-wrapper" }, h("div", { key: '6fc100efe321915493d840f3fd2f01100fa954fd', class: "duet-hero-image", style: styles })))), (this.variation === "gray" || this.variation === "light" || this.variation === "minimal") &&
299
+ this.processedBack && (h("div", { key: '2777feaa8cc994cf4215d49143c69bee06d85552', class: "duet-hero-back" }, h("duet-button", { key: '57315d5cb34c6db55f6642224b442b12ebb7fe9a', style: buttonStyles, variation: "plain", icon: "action-arrow-left-small", theme: this.theme, iconSize: "small", color: buttonColor, padding: "none", margin: "none", fixed: true, url: this.processedBack.href, identifier: this.processedBack.id, onClick: event => this.handleClick(event, {
293
300
  label: this.processedBack.label,
294
301
  href: this.processedBack.href,
295
302
  id: this.processedBack.id,
296
303
  analyticsId: this.processedBack.analyticsId,
297
- }) }, this.processedBack.label))), (this.variation === "gray" || this.variation === "minimal") && this.categoryIcon && (h("duet-icon", { key: 'b3222a455e2be4304240b213ec34ff9a8254511d', class: { "duet-hero-icon": true, "duet-hero-icon-has-heading": this.preHeading !== "" }, size: "x-large", background: this.categoryIconColor, name: this.categoryIcon })), h("div", { key: '1f369768e19771c9d962558704707072c355577f', class: { "duet-hero-text": true }, part: "duet-hero-text" }, (this.preHeading || this.hasPreHeadingSlot) && (h("duet-paragraph", { key: '319f24f87d1adfa4840e1b3c4adfa9e5a4efdbcc', margin: "none", class: "duet-hero-pre", size: this.variation === "content" ? "small" : "medium", "aria-hidden": "true" }, this.preHeading ? (this.preHeading) : (h("span", null, h("slot", { name: "pre-heading" }))))), h("slot", { key: 'cab3fd5560e97bdaa5e7da9833bebdb1b58c77aa', name: "badge" }), (this.heading || this.hasHeadingSlot) && (h("duet-heading", { key: '070825e4bae09477947bc840a07df3a49f72cda3', theme: this.theme, level: this.level, class: { "duet-hero-heading": true, "duet-hero-heading-has-pre": this.preHeading !== "" }, color: headingColor, visualLevel: headingVisualLevel, margin: campaignOrSection ? "none" : "auto", accessibleLabel: this.getAccessibleHeading() }, this.heading ? this.heading : h("slot", { name: "heading" }))), campaignOrSection && this.hasSubHeadingSlot && (h("duet-heading", { key: '593ff167e8e2027765467078c3a8e7fb6478a0f2', theme: this.theme, level: this.subHeadingLevel, class: { "duet-hero-subheading": true }, color: this.theme === "turva" ? "secondary-turva" : "secondary", visualLevel: "h2" }, h("slot", { key: 'b0dfe6f310419cd5129b6419c2f98fcee3510439', name: "subheading" }))), this.description && (h("duet-paragraph", { key: 'e4f7966e4118c83e518b170818e0a07b8bff8f0c', theme: this.theme, color: textColor, variation: "intro" }, this.description)), (this.variation === "gray" || this.variation === "minimal") && this.processedListItems && (h("duet-list", { key: 'c50112688f95b19886481c47f6158f9ce5a73dc0', theme: this.theme, "label-width": "30", breakpoint: "large", mobile: this.leftAlign ? undefined : "center" }, this.processedListItems.map(item => (h("duet-list-item", null, h("span", { slot: "label" }, item.label), h("span", { slot: "value" }, item.value)))))), this.buttonLabel && (h("duet-button", { key: '1d9a44bd408aad6ed6f7571660b6284a2622c9ee', url: this.buttonUrl, icon: this.icon, iconRight: this.iconRight, iconSize: this.iconSize, variation: buttonVariation, theme: this.theme, identifier: this.buttonId, onClick: event => this.handleClick(event, this.buttonData), fixed: true }, this.buttonLabel)), h("slot", { key: '6409f66cd66a04c3720b95444ca4354e1927bf92' })), (this.variation === "gray" || this.variation === "minimal") && this.processedActions && (h("div", { key: '8103af21642ae0c19bb00cf2918afe83bca217ac', class: "duet-hero-links" }, this.processedActions.map(item => (h("a", { class: "duet-hero-link", href: item.href, id: item.id, target: item.external ? "_blank" : "_self", onClick: event => this.handleClick(event, item) }, h("div", { class: "duet-hero-action-icon" }, h("duet-icon", { size: "small", margin: "none", name: item.icon, color: "currentColor", outline: outlineColor })), h("span", null, item.label), item.external && h("duet-visually-hidden", null, ", ", this.accessibleLabelExternal), item.external && (h("div", { class: "duet-hero-action-arrow" }, h("duet-icon", { icon: newWindowIcon.svg, size: "xx-small", margin: "none", color: "currentColor" })))))))), this.image &&
304
+ }) }, this.processedBack.label))), (this.variation === "gray" || this.variation === "minimal") && this.categoryIcon && (h("duet-icon", { key: '282df2be20e350964563837a2344b4fd3fbd6812', class: { "duet-hero-icon": true, "duet-hero-icon-has-heading": this.preHeading !== "" }, size: "x-large", background: this.categoryIconColor, name: this.categoryIcon })), h("div", { key: '0a04e8f9ada19e0e157a52295248291e4ce30703', class: { "duet-hero-text": true }, part: "duet-hero-text" }, (this.preHeading || this.hasPreHeadingSlot) && (h("duet-paragraph", { key: '38897d3fc34f854e13e2675bc3c79005a7ba16b1', margin: "none", class: "duet-hero-pre", size: this.variation === "content" ? "small" : "medium", "aria-hidden": "true" }, this.preHeading ? (this.preHeading) : (h("span", null, h("slot", { name: "pre-heading" }))))), h("slot", { key: 'c77b97021d7c7a735ce0aeba42fabce91d83da39', name: "badge" }), (this.heading || this.hasHeadingSlot) && (h("duet-heading", { key: 'cd22335d7881e672e2df6367d58c734784ff5f6e', theme: this.theme, level: this.hasHeadingSlotNative ? "div" : this.level, class: { "duet-hero-heading": true, "duet-hero-heading-has-pre": this.preHeading !== "" }, color: headingColor, visualLevel: headingVisualLevel, margin: campaignOrSection ? "none" : "auto", accessibleLabel: this.getAccessibleHeading() }, this.heading ? this.heading : h("slot", { name: "heading" }))), campaignOrSection && this.hasSubHeadingSlot && (h("duet-heading", { key: 'ce92b7e2ce3f86fa082b8601dd070d5a76b27437', theme: this.theme, level: this.hasSubHeadingSlotNative ? "div" : this.subHeadingLevel, class: { "duet-hero-subheading": true }, color: this.theme === "turva" ? "secondary-turva" : "secondary", visualLevel: "h2" }, h("slot", { key: 'f79855d9d88deba48f86e05f2318cf9459da6db0', name: "subheading" }))), this.description && (h("duet-paragraph", { key: '9b3cefb7c435efb47e07a1501e18dee9db1b6b5b', theme: this.theme, color: textColor, variation: "intro" }, this.description)), (this.variation === "gray" || this.variation === "minimal") && this.processedListItems && (h("duet-list", { key: '1c4915294fb3b2335ff981939207a961069d6b74', theme: this.theme, "label-width": "30", breakpoint: "large", mobile: this.leftAlign ? undefined : "center" }, this.processedListItems.map(item => (h("duet-list-item", null, h("span", { slot: "label" }, item.label), h("span", { slot: "value" }, item.value)))))), this.buttonLabel && (h("duet-button", { key: 'ba2b9cded251cad0aea4ebd4c66d1fddf78bea38', url: this.buttonUrl, icon: this.icon, iconRight: this.iconRight, iconSize: this.iconSize, variation: buttonVariation, theme: this.theme, identifier: this.buttonId, onClick: event => this.handleClick(event, this.buttonData), fixed: true }, this.buttonLabel)), h("slot", { key: '0570f78ab10d749668c6dc20bb97db5896ce1039' })), (this.variation === "gray" || this.variation === "minimal") && this.processedActions && (h("div", { key: '647db5a0b2aa0416fd2a499bf168523b2f090e81', class: "duet-hero-links" }, this.processedActions.map(item => (h("a", { class: "duet-hero-link", href: item.href, id: item.id, target: item.external ? "_blank" : "_self", onClick: event => this.handleClick(event, item) }, h("div", { class: "duet-hero-action-icon" }, h("duet-icon", { size: "small", margin: "none", name: item.icon, color: "currentColor", outline: outlineColor })), h("span", null, item.label), item.external && h("duet-visually-hidden", null, ", ", this.accessibleLabelExternal), item.external && (h("div", { class: "duet-hero-action-arrow" }, h("duet-icon", { icon: newWindowIcon.svg, size: "xx-small", margin: "none", color: "currentColor" })))))))), this.image &&
298
305
  this.variation !== "image" &&
299
306
  !campaignOrSection &&
300
307
  this.variation !== "product" &&
301
- this.variation !== "content" && h("div", { key: '2e854294f691337a3683daa831b498bdcdf56945', class: "duet-hero-image", style: styles }), h("slot", { key: '21cb460439eddf5f9a251722b9c6c3b3864a701d', name: "bottom" }))));
308
+ this.variation !== "content" && h("div", { key: '32f36cc551b37aefb3a06403431479f4d4e7460d', class: "duet-hero-image", style: styles }), h("slot", { key: 'd53f84c8a9c995bb049ba25531b49b8119d40353', name: "bottom" }))));
302
309
  }
303
310
  static get is() { return "duet-hero"; }
304
311
  static get encapsulation() { return "shadow"; }
@@ -123,6 +123,13 @@ input[type=search]::-webkit-search-cancel-button {
123
123
  -webkit-appearance: none;
124
124
  }
125
125
 
126
+ input[type=time]::-webkit-datetime-edit-fields-wrapper {
127
+ padding: 0;
128
+ }
129
+ input[type=time]::-webkit-calendar-picker-indicator {
130
+ display: none;
131
+ }
132
+
126
133
  duet-tooltip,
127
134
  ::slotted(duet-tooltip) {
128
135
  position: relative;
@@ -160,8 +160,7 @@ export class DuetInput {
160
160
  */
161
161
  this.variation = "default";
162
162
  /**
163
- * @internal
164
- * Render a container for chips
163
+ * Render a container into which Duet Chip components can be added with the method "addChip".
165
164
  */
166
165
  this.chips = false;
167
166
  /**
@@ -465,32 +464,32 @@ export class DuetInput {
465
464
  }
466
465
  }
467
466
  /**
468
- * @internal
469
- * Add a chip to the input
467
+ * Add a chip to the input. Property "chips" must be true.
470
468
  */
471
469
  async addChip(chip) {
470
+ if (!this.chips) {
471
+ console.error("The method addChips requires the property chips to be true");
472
+ return;
473
+ }
472
474
  const container = this.element.shadowRoot.querySelector(".duet-input-relative");
473
475
  const input = container.querySelector("input:not(duet-chip input)");
474
476
  chip.id = createID("DuetInputChip");
475
477
  container.insertBefore(chip, input);
476
478
  }
477
479
  /**
478
- * @internal
479
- * Does the input have a chip with the given value and text
480
+ * Does the input have a chip with the given value and text.
480
481
  */
481
482
  async hasChip({ value, text }) {
482
483
  return this.getAllChips().some(chip => chip.value === value && chip.textContent === text);
483
484
  }
484
485
  /**
485
- * @internal
486
- * Get all chips from the input
486
+ * Get all chips from the input.
487
487
  */
488
488
  async getChips() {
489
489
  return this.getAllChips();
490
490
  }
491
491
  /**
492
- * @internal
493
- * Remove all chips from the input
492
+ * Remove all chips from the input.
494
493
  */
495
494
  async clearChips() {
496
495
  this.getAllChips().forEach(chip => chip.remove());
@@ -528,7 +527,7 @@ export class DuetInput {
528
527
  this.type !== "password" &&
529
528
  this.type !== "time" &&
530
529
  this.variation !== "button";
531
- return (h(Host, { key: 'a510fa25a1bfafc15b45ec3ae52673542c9431f8', class: { "duet-expand": this.expand, "duet-m-0": this.margin === "none" }, onKeyUp: e => this.keyHandler(e) }, this.type === "time" && (h("duet-visually-hidden", { key: 'de872f33e40e697f2bfbbd44cf50baa6119d7cf1', "aria-live": "polite", "aria-atomic": "true" }, selectedTime ? `${this.timeAnnouncement[this.language]} ${selectedTime.toLocaleTimeString()}` : "")), h("div", { key: 'c90de920afdad7d205699cea7d5f4fdd1572a87b', class: {
530
+ return (h(Host, { key: '114adc16746f53eff8aaf5e8d40f7705dc7e6f21', class: { "duet-expand": this.expand, "duet-m-0": this.margin === "none" }, onKeyUp: e => this.keyHandler(e) }, this.type === "time" && (h("duet-visually-hidden", { key: 'dd579486970d79ed302f16de907aaaec01d24a08', "aria-live": "polite", "aria-atomic": "true" }, selectedTime ? `${this.timeAnnouncement[this.language]} ${selectedTime.toLocaleTimeString()}` : "")), h("div", { key: 'd687b1b683ffab3045c2668cd691123682549163', class: {
532
531
  "duet-input-container": true,
533
532
  "duet-theme-turva": this.theme === "turva",
534
533
  [`duet-input-variation-${this.variation}`]: true,
@@ -542,7 +541,7 @@ export class DuetInput {
542
541
  "has-clear": this.clear,
543
542
  "has-focus": this.isFocused,
544
543
  disabled: this.disabled,
545
- } }, h("div", { key: '25af0df12601480977d1073be0dac1f37edce26e', class: "duet-input-label-container" }, h(DuetInternalLabel, { key: '8472acbdb1f02f3177acb1cc359b684359577c97', theme: this.theme === "turva" ? "turva" : "default", margin: this.isCaptionVisible ? "small" : "auto", color: this.labelColor, weight: this.labelWeight, id: this.labelId, for: identifier }, this.label), this.tooltip && (h("duet-tooltip", { key: '6ae13a9809afd8abea403d05594d0ac605043f13', class: "duet-input-tooltip", direction: this.tooltipDirection, accessibleInputLabel: this.label, theme: this.theme === "turva" ? "turva" : "default" }, this.tooltip)), h("slot", { key: '456f3ee403878a23c7141e9b063c8d8e04e95be2', name: "tooltip" })), this.caption && (h("duet-caption", { key: 'c4c6f0174d210348bbbab129508fc99917243f2c', id: this.topCaptionId, size: "medium" }, this.caption)), h("div", { key: 'ba63a0017715fab0c39fca2a948c9bfbfdad1f31', class: "duet-input-relative" }, this.placeholder && this.echoPlaceholder && (this.value || this.type === "time") && (h("duet-caption", { key: 'eaad95087d69b5b4a8e72b43ddb184bf8b941087', id: this.topCaptionPlaceholderId, class: "duet-input-placeholder", margin: "none", size: "small" }, this.placeholder)), this.chips && (h("duet-visually-hidden", { key: '2013c4ffb1127068ced232f02ef8885f3e8f614e', id: this.chipCountId }, ", ", `${this.getAllChips().length} ${getLocaleString(this.chipsSelectedDesriptionLabel)}`, ",")), this.variation === "button-left" && h("slot", { key: '5fbfb4ca2fd57a0ae853d4ec2512c79fa85aefd0', name: "button-left" }), h("input", Object.assign({ key: '060cab78180db35d613d8e8944ae17fc61dcb7c8', ref: input => (this.nativeInput = input), onInput: this.onInput, onBlur: this.onBlur, onFocus: this.onFocus, type: this.getInputType(), class: {
544
+ } }, h("div", { key: 'fa683202d05f4eab1f4ce8a24bda5a145c862f4d', class: "duet-input-label-container" }, h(DuetInternalLabel, { key: '54065b39f6bab8d3082096f2fb9151e2d92d9c04', theme: this.theme === "turva" ? "turva" : "default", margin: this.isCaptionVisible ? "small" : "auto", color: this.labelColor, weight: this.labelWeight, id: this.labelId, for: identifier }, this.label), this.tooltip && (h("duet-tooltip", { key: '1ab4bede74df49fcc2a11eb4d259ee49a25eb6f6', class: "duet-input-tooltip", direction: this.tooltipDirection, accessibleInputLabel: this.label, theme: this.theme === "turva" ? "turva" : "default" }, this.tooltip)), h("slot", { key: '14ab07e67e7cdbeac4e96128177b336daed9500f', name: "tooltip" })), this.caption && (h("duet-caption", { key: 'fa7deb88045a38d9b31bc395d87e061c599edd2f', id: this.topCaptionId, size: "medium" }, this.caption)), h("div", { key: 'efc1fcb507a40731adf2e3e698951a450c58898d', class: "duet-input-relative" }, this.placeholder && this.echoPlaceholder && (this.value || this.type === "time") && (h("duet-caption", { key: '1224f040086ac6a27de0080a01e61c282b6082c3', id: this.topCaptionPlaceholderId, class: "duet-input-placeholder", margin: "none", size: "small" }, this.placeholder)), this.chips && (h("duet-visually-hidden", { key: '61f65a6638d3be429701fc1485216b46132b1b99', id: this.chipCountId }, ", ", `${this.getAllChips().length} ${getLocaleString(this.chipsSelectedDesriptionLabel)}`, ",")), this.variation === "button-left" && h("slot", { key: '26dadaa62adc545911f4c6e54621dd72318e7d36', name: "button-left" }), h("input", Object.assign({ key: '7d254243306b9cdbdbd86be50068c307b34bc316', ref: input => (this.nativeInput = input), onInput: this.onInput, onBlur: this.onBlur, onFocus: this.onFocus, type: this.getInputType(), class: {
546
545
  "duet-input": true,
547
546
  disabled: this.disabled,
548
547
  "is-number": this.component === "number",
@@ -550,17 +549,17 @@ export class DuetInput {
550
549
  "after-chip": this.getAllChips().length > 0,
551
550
  "align-right": this.inputAlign === "right",
552
551
  [`input-padding-${this.inputPadding}`]: true,
553
- }, value: this.value, disabled: this.disabled, "aria-invalid": this.error ? "true" : "false", "aria-labelledby": this.accessibleLabelledBy ? `${this.labelId} ${this.accessibleLabelledBy}` : this.labelId, "aria-controls": this.accessibleControls, "aria-autocomplete": this.accessibleAutocomplete, "aria-activedescendant": this.accessibleActiveDescendant, "aria-details": this.accessibleDetails, "aria-description": this.accessibleDescription, "aria-expanded": this.accessibleExpanded, "aria-haspopup": this.accessibleHasPopup, "aria-owns": this.accessibleOwns, "aria-describedby": this.getAriaDescribedBy(), placeholder: this.placeholder, spellcheck: "false", minlength: this.minlength, maxlength: this.maxlength, autocomplete: this.type === "password" ? "off" : this.autoComplete, required: this.required, role: this.role, name: this.name, id: identifier }, inputProps)), !this.value && hasInputIcon && (h("div", { key: '2ef57d881263ad7285afe3bd58ed9de8913131ca', class: "duet-input-icon" }, h("duet-icon", { key: '0424cb373c27e808b8ed1e1f44ca28b077af2f43', margin: "none", size: "small", icon: icons[this.type].svg, color: "currentColor" }))), this.clear && this.value && (h("div", { key: '2ba7ed30cf2409845b231bbc21cb1a7b9e001196', class: {
552
+ }, value: this.value, disabled: this.disabled, "aria-invalid": this.error ? "true" : "false", "aria-labelledby": this.accessibleLabelledBy ? `${this.labelId} ${this.accessibleLabelledBy}` : this.labelId, "aria-controls": this.accessibleControls, "aria-autocomplete": this.accessibleAutocomplete, "aria-activedescendant": this.accessibleActiveDescendant, "aria-details": this.accessibleDetails, "aria-description": this.accessibleDescription, "aria-expanded": this.accessibleExpanded, "aria-haspopup": this.accessibleHasPopup, "aria-owns": this.accessibleOwns, "aria-describedby": this.getAriaDescribedBy(), placeholder: this.placeholder, spellcheck: "false", minlength: this.minlength, maxlength: this.maxlength, autocomplete: this.type === "password" ? "off" : this.autoComplete, required: this.required, role: this.role, name: this.name, id: identifier }, inputProps)), !this.value && hasInputIcon && (h("div", { key: '634cf27751d584258d0afba60e28e3ffc77077b7', class: "duet-input-icon" }, h("duet-icon", { key: '0ac55c1115030c99f3e5339749e881184920f704', margin: "none", size: "small", icon: icons[this.type].svg, color: "currentColor" }))), this.clear && this.value && (h("div", { key: 'f59573bd40a8e5fb4d1c82b1619b9be8ab75ec45', class: {
554
553
  "duet-input-clear-icon": true,
555
554
  "duet-input-clear-icon-single": !hasInputIcon,
556
555
  "duet-input-clear-icon-double": !!this.icon,
557
556
  "duet-input-clear-icon-button": this.variation === "button",
558
557
  [`input-padding-${this.inputPadding}`]: true,
559
- } }, h("button", { key: '7be0f3cce53d669a7cb2553ea0c720a0a8f234fb', onClick: this.handleClearClick, id: this.clearId, "aria-label": this.clearLabel[this.language], "aria-keyshortcuts": "Escape" }, h("duet-icon", { key: 'd51041231a488756076772109503dcb42a47cef9', margin: "none", size: "medium", name: "action-clear-input", color: "currentColor" })))), this.icon && this.variation !== "button" && (h("div", { key: '34624c33d8582374f0deddee30d4cc3968fa38db', class: "duet-input-icon" }, h("duet-icon", { key: 'f1fde9b9334ea64219f70363ec2bf40aa9e57d6f', margin: "none", size: "small", name: this.icon, color: "currentColor" }))), this.variation === "button" && h("slot", { key: '5f490c321a2ac47676a4aff02e30f0871b640dc2', name: "button" }), this.variation === "revealable" && (h("duet-button", { key: 'd8c8a40544d07411b453bfa332c9741851bf6226', ref: button => (this.togglePasswordRevealedButton = button), onBlur: this.onBlur, onFocus: this.onFocus, onClick: this.togglePasswordRevealed, icon: this.isPasswordRevealed ? "action-hide" : "action-show", accessibleLabel: this.isPasswordRevealed
558
+ } }, h("button", { key: '591370f9af7be91b78a1553a5bba5f6a0fa69a57', onClick: this.handleClearClick, id: this.clearId, "aria-label": this.clearLabel[this.language], "aria-keyshortcuts": "Escape" }, h("duet-icon", { key: '2c4124a3e9b05925f2e29b54eb8cd5ebdb315f18', margin: "none", size: "medium", name: "action-clear-input", color: "currentColor" })))), this.icon && this.variation !== "button" && (h("div", { key: '9803a77a5ae599994e1fd4b7dcc3a91c7efcabdb', class: "duet-input-icon" }, h("duet-icon", { key: 'b7618b017964582807de116dcc37c70b498aa97f', margin: "none", size: "small", name: this.icon, color: "currentColor" }))), this.variation === "button" && h("slot", { key: 'a2359de76233b102bee918f4c9349f7785c46169', name: "button" }), this.variation === "revealable" && (h("duet-button", { key: '4d69f99e663c77e7574b9b5c1229648533464925', ref: button => (this.togglePasswordRevealedButton = button), onBlur: this.onBlur, onFocus: this.onFocus, onClick: this.togglePasswordRevealed, icon: this.isPasswordRevealed ? "action-hide" : "action-show", accessibleLabel: this.isPasswordRevealed
560
559
  ? this.hidePasswordLabel[this.language]
561
- : this.showPasswordLabel[this.language], margin: "none", variation: "input-button-embedded", fixed: true, iconOnly: true })), this.variation === "revealable" && this.isPasswordRevealed !== undefined && (h("duet-visually-hidden", { key: '6c96533d140ef424e33a3a67961042c3d3838161' }, h("span", { key: '6ab1b5959e16b393688eaa068d772b0a600badaf', "aria-live": "polite" }, this.isPasswordRevealed
560
+ : this.showPasswordLabel[this.language], margin: "none", variation: "input-button-embedded", fixed: true, iconOnly: true })), this.variation === "revealable" && this.isPasswordRevealed !== undefined && (h("duet-visually-hidden", { key: '4e683b6138b1e9c651f5b16b375cdd90db28b093' }, h("span", { key: 'e20e93bb8aae9f8dc9bee33b7cf9b9bc7b7ce615', "aria-live": "polite" }, this.isPasswordRevealed
562
561
  ? this.passwordShownAriaAnnouncement[this.language]
563
- : this.passwordHiddenAriaAnnouncement[this.language]))), h("slot", { key: '5546955121bfe120490c3b22825c1035c096dd6c' })), h("span", { key: '79328cf71b7ba877431ed97a0ec98cadc31efa56', class: "duet-input-help", id: this.errorId, "aria-atomic": "true", "aria-live": this.accessibleLiveError, "aria-relevant": "additions removals" }, this.error && h("span", { key: 'f483bcaa8219c1636b5f0b83ee1ee33bd49ec1d5', class: "duet-input-error" }, this.error)))));
562
+ : this.passwordHiddenAriaAnnouncement[this.language]))), h("slot", { key: '04f3a1b6af610d890d77b7aa42041145144299b0' })), h("span", { key: '89b2554748c89a52f5ecce6a32a39f001468db58', class: "duet-input-help", id: this.errorId, "aria-atomic": "true", "aria-live": this.accessibleLiveError, "aria-relevant": "additions removals" }, this.error && h("span", { key: '870e9c2ca62ca98d42c295f63ab813726140aeff', class: "duet-input-error" }, this.error)))));
564
563
  }
565
564
  static get is() { return "duet-input"; }
566
565
  static get encapsulation() { return "shadow"; }
@@ -1111,11 +1110,8 @@ export class DuetInput {
1111
1110
  "required": false,
1112
1111
  "optional": false,
1113
1112
  "docs": {
1114
- "tags": [{
1115
- "name": "internal",
1116
- "text": "Render a container for chips"
1117
- }],
1118
- "text": ""
1113
+ "tags": [],
1114
+ "text": "Render a container into which Duet Chip components can be added with the method \"addChip\"."
1119
1115
  },
1120
1116
  "getter": false,
1121
1117
  "setter": false,
@@ -1203,7 +1199,7 @@ export class DuetInput {
1203
1199
  },
1204
1200
  "getter": false,
1205
1201
  "setter": false,
1206
- "reflect": false,
1202
+ "reflect": true,
1207
1203
  "defaultValue": "\"\""
1208
1204
  },
1209
1205
  "labelHidden": {
@@ -1741,11 +1737,8 @@ export class DuetInput {
1741
1737
  "return": "Promise<void>"
1742
1738
  },
1743
1739
  "docs": {
1744
- "text": "",
1745
- "tags": [{
1746
- "name": "internal",
1747
- "text": "Add a chip to the input"
1748
- }]
1740
+ "text": "Add a chip to the input. Property \"chips\" must be true.",
1741
+ "tags": []
1749
1742
  }
1750
1743
  },
1751
1744
  "hasChip": {
@@ -1765,11 +1758,8 @@ export class DuetInput {
1765
1758
  "return": "Promise<boolean>"
1766
1759
  },
1767
1760
  "docs": {
1768
- "text": "",
1769
- "tags": [{
1770
- "name": "internal",
1771
- "text": "Does the input have a chip with the given value and text"
1772
- }]
1761
+ "text": "Does the input have a chip with the given value and text.",
1762
+ "tags": []
1773
1763
  }
1774
1764
  },
1775
1765
  "getChips": {
@@ -1789,11 +1779,8 @@ export class DuetInput {
1789
1779
  "return": "Promise<HTMLDuetChipElement[]>"
1790
1780
  },
1791
1781
  "docs": {
1792
- "text": "",
1793
- "tags": [{
1794
- "name": "internal",
1795
- "text": "Get all chips from the input"
1796
- }]
1782
+ "text": "Get all chips from the input.",
1783
+ "tags": []
1797
1784
  }
1798
1785
  },
1799
1786
  "clearChips": {
@@ -1809,11 +1796,8 @@ export class DuetInput {
1809
1796
  "return": "Promise<void>"
1810
1797
  },
1811
1798
  "docs": {
1812
- "text": "",
1813
- "tags": [{
1814
- "name": "internal",
1815
- "text": "Remove all chips from the input"
1816
- }]
1799
+ "text": "Remove all chips from the input.",
1800
+ "tags": []
1817
1801
  }
1818
1802
  }
1819
1803
  };
@@ -430,6 +430,12 @@ button {
430
430
  }
431
431
  }
432
432
 
433
+ :host(.duet-theme-turva2) .duet-link.duet-theme-turva {
434
+ color: #b90329;
435
+ }
436
+ :host(.duet-theme-turva2) .duet-link.duet-theme-turva:hover {
437
+ color: #8c001e;
438
+ }
433
439
  :host(.duet-theme-turva2) .duet-tab-to-link.duet-theme-turva {
434
440
  color: #172a3b;
435
441
  }
@@ -22,6 +22,10 @@
22
22
  appearance: none;
23
23
  position: relative;
24
24
  width: 100%;
25
+ pointer-events: none;
26
+ }
27
+ :host * {
28
+ pointer-events: auto;
25
29
  }
26
30
 
27
31
  .duet-menu-bar {