@duetds/components 10.0.0-alpha.23 → 10.0.0-alpha.25

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 (418) hide show
  1. package/hydrate/index.js +414 -261
  2. package/hydrate/index.mjs +414 -261
  3. package/lib/cjs/{a11y-utils-aMJTxbM9.js → a11y-utils-BeS3x4Hg.js} +1 -1
  4. package/lib/cjs/{app-globals-DN9e0v8L.js → app-globals-BvljEFtV.js} +1 -1
  5. package/lib/cjs/duet-action-button.cjs.entry.js +4 -4
  6. package/lib/cjs/duet-alert.cjs.entry.js +4 -4
  7. package/lib/cjs/duet-badge.cjs.entry.js +4 -4
  8. package/lib/cjs/duet-banner.cjs.entry.js +7 -7
  9. package/lib/cjs/duet-breadcrumb.cjs.entry.js +7 -7
  10. package/lib/cjs/duet-breadcrumbs.cjs.entry.js +6 -6
  11. package/lib/cjs/duet-button_2.cjs.entry.js +12 -12
  12. package/lib/cjs/duet-callout.cjs.entry.js +5 -5
  13. package/lib/cjs/duet-caption_4.cjs.entry.js +13 -12
  14. package/lib/cjs/duet-card.cjs.entry.js +4 -4
  15. package/lib/cjs/duet-checkbox.cjs.entry.js +2 -2
  16. package/lib/cjs/duet-checkmark.cjs.entry.js +4 -4
  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 +4 -4
  20. package/lib/cjs/duet-combobox.cjs.entry.js +4 -4
  21. package/lib/cjs/duet-contact-card.cjs.entry.js +5 -5
  22. package/lib/cjs/duet-cookie-consent.cjs.entry.js +2 -2
  23. package/lib/cjs/duet-date-picker.cjs.entry.js +6 -6
  24. package/lib/cjs/duet-divider_2.cjs.entry.js +4 -4
  25. package/lib/cjs/duet-editable-table_3.cjs.entry.js +9 -9
  26. package/lib/cjs/duet-empty-state.cjs.entry.js +2 -2
  27. package/lib/cjs/duet-fieldset.cjs.entry.js +6 -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 +4 -4
  31. package/lib/cjs/duet-header_2.cjs.entry.js +54 -12
  32. package/lib/cjs/duet-hero.cjs.entry.js +4 -4
  33. package/lib/cjs/duet-icon.cjs.entry.js +7 -7
  34. package/lib/cjs/duet-input_2.cjs.entry.js +7 -7
  35. package/lib/cjs/duet-layout.cjs.entry.js +2 -2
  36. package/lib/cjs/duet-list_2.cjs.entry.js +4 -4
  37. package/lib/cjs/duet-menu-bar-button.cjs.entry.js +4 -4
  38. package/lib/cjs/duet-menu-bar-dropdown-link.cjs.entry.js +4 -4
  39. package/lib/cjs/duet-menu-bar-dropdown.cjs.entry.js +6 -6
  40. package/lib/cjs/duet-menu-bar-item.cjs.entry.js +7 -7
  41. package/lib/cjs/duet-menu-bar-link.cjs.entry.js +4 -4
  42. package/lib/cjs/duet-menu-bar.cjs.entry.js +10 -42
  43. package/lib/cjs/duet-modal.cjs.entry.js +37 -20
  44. package/lib/cjs/duet-multiselect.cjs.entry.js +10 -10
  45. package/lib/cjs/duet-nav.cjs.entry.js +3 -3
  46. package/lib/cjs/duet-notification_2.cjs.entry.js +7 -7
  47. package/lib/cjs/duet-number-input.cjs.entry.js +14 -9
  48. package/lib/cjs/duet-overlay.cjs.entry.js +3 -3
  49. package/lib/cjs/duet-page-heading.cjs.entry.js +5 -5
  50. package/lib/cjs/duet-pagination_2.cjs.entry.js +17 -17
  51. package/lib/cjs/duet-panel.cjs.entry.js +53 -0
  52. package/lib/cjs/duet-phone-input.cjs.entry.js +4 -4
  53. package/lib/cjs/duet-popup-menu_2.cjs.entry.js +6 -6
  54. package/lib/cjs/duet-progress.cjs.entry.js +3 -3
  55. package/lib/cjs/duet-promo-card.cjs.entry.js +6 -6
  56. package/lib/cjs/duet-radio_2.cjs.entry.js +7 -7
  57. package/lib/cjs/duet-range-slider.cjs.entry.js +6 -6
  58. package/lib/cjs/duet-scrollable_3.cjs.entry.js +16 -16
  59. package/lib/cjs/duet-section-layout.cjs.entry.js +4 -4
  60. package/lib/cjs/duet-select.cjs.entry.js +9 -9
  61. package/lib/cjs/duet-shaped-image.cjs.entry.js +4 -4
  62. package/lib/cjs/duet-share-chart-item.cjs.entry.js +2 -2
  63. package/lib/cjs/duet-share-chart.cjs.entry.js +7 -7
  64. package/lib/cjs/duet-show-more.cjs.entry.js +5 -5
  65. package/lib/cjs/duet-slideout-lang.cjs.entry.js +4 -4
  66. package/lib/cjs/duet-slideout-link.cjs.entry.js +7 -7
  67. package/lib/cjs/duet-slideout-panel-dropdown.cjs.entry.js +6 -6
  68. package/lib/cjs/duet-slideout-panel.cjs.entry.js +12 -12
  69. package/lib/cjs/duet-slideout.cjs.entry.js +10 -10
  70. package/lib/cjs/duet-status-icon.cjs.entry.js +4 -4
  71. package/lib/cjs/duet-step_2.cjs.entry.js +6 -6
  72. package/lib/cjs/duet-submenu-bar-dropdown-link.cjs.entry.js +4 -4
  73. package/lib/cjs/duet-submenu-bar-dropdown.cjs.entry.js +7 -7
  74. package/lib/cjs/duet-submenu-bar-item.cjs.entry.js +6 -6
  75. package/lib/cjs/duet-submenu-bar-link.cjs.entry.js +3 -3
  76. package/lib/cjs/duet-submenu-bar.cjs.entry.js +8 -8
  77. package/lib/cjs/duet-textarea.cjs.entry.js +8 -8
  78. package/lib/cjs/duet-toggle.cjs.entry.js +6 -6
  79. package/lib/cjs/duet-toolbar-dropdown-link.cjs.entry.js +4 -4
  80. package/lib/cjs/duet-toolbar-dropdown.cjs.entry.js +6 -6
  81. package/lib/cjs/duet-toolbar-item.cjs.entry.js +8 -8
  82. package/lib/cjs/duet-toolbar-link.cjs.entry.js +4 -4
  83. package/lib/cjs/duet-toolbar.cjs.entry.js +4 -4
  84. package/lib/cjs/duet-tooltip-button_2.cjs.entry.js +8 -8
  85. package/lib/cjs/duet-tooltip.cjs.entry.js +5 -5
  86. package/lib/cjs/duet-tray.cjs.entry.js +5 -5
  87. package/lib/cjs/duet-upload-aria-status.cjs.entry.js +2 -2
  88. package/lib/cjs/duet-upload-item.cjs.entry.js +6 -6
  89. package/lib/cjs/duet-visually-hidden.cjs.entry.js +2 -2
  90. package/lib/cjs/duet.cjs.js +3 -3
  91. package/lib/cjs/{errorcodes.utils-CSxc4txc.js → errorcodes.utils-CwTzu57-.js} +1 -1
  92. package/lib/cjs/{focus-utils-R3gIGr8k.js → focus-utils-Dh4b8BiX.js} +1 -1
  93. package/lib/cjs/{index-cypK_uRu.js → index-D3O_5Hr7.js} +5 -1
  94. package/lib/cjs/{label-61f_b8fi.js → label-8AXhdqJy.js} +1 -1
  95. package/lib/cjs/{language-utils-DIDyCgUk.js → language-utils-CMK9eR4Q.js} +1 -1
  96. package/lib/cjs/loader.cjs.js +3 -3
  97. package/lib/cjs/{slot-utils-BC5Q3UDm.js → slot-utils-BIdgEejh.js} +1 -1
  98. package/lib/cjs/{themeable-component-BWW4XmUY.js → themeable-component-B3llZmjN.js} +14 -2
  99. package/lib/cjs/{token-utils-CHLLcMzU.js → token-utils-DsVwGXGM.js} +75 -7
  100. package/lib/cjs/{tokens-DYbf8HFV.js → tokens-D7zqZKjQ.js} +0 -1
  101. package/lib/collection/collection-manifest.json +1 -0
  102. package/lib/collection/common/themeable-component.js +13 -1
  103. package/lib/collection/components/duet-badge/duet-badge.js +2 -2
  104. package/lib/collection/components/duet-banner/duet-banner.css +1 -0
  105. package/lib/collection/components/duet-banner/duet-banner.js +3 -3
  106. package/lib/collection/components/duet-breadcrumbs/duet-breadcrumb.js +4 -4
  107. package/lib/collection/components/duet-breadcrumbs/duet-breadcrumbs.js +2 -2
  108. package/lib/collection/components/duet-button/duet-button.css +19 -4
  109. package/lib/collection/components/duet-button/duet-button.js +5 -5
  110. package/lib/collection/components/duet-callout/duet-callout.js +2 -2
  111. package/lib/collection/components/duet-choice/duet-checkmark.js +2 -2
  112. package/lib/collection/components/duet-choice-group/duet-choice-group.js +2 -2
  113. package/lib/collection/components/duet-contact-card/duet-contact-card.js +2 -2
  114. package/lib/collection/components/duet-fieldset/duet-fieldset.js +3 -3
  115. package/lib/collection/components/duet-grid-item/duet-grid-item.js +2 -2
  116. package/lib/collection/components/duet-header/duet-header.css +3 -0
  117. package/lib/collection/components/duet-header/duet-header.js +3 -2
  118. package/lib/collection/components/duet-icon/duet-icon.css +5 -0
  119. package/lib/collection/components/duet-icon/duet-icon.js +3 -3
  120. package/lib/collection/components/duet-label/duet-label.js +1 -1
  121. package/lib/collection/components/duet-link/duet-link.js +5 -4
  122. package/lib/collection/components/duet-list-item/duet-list-item.js +2 -2
  123. package/lib/collection/components/duet-logo/duet-logo.css +8 -0
  124. package/lib/collection/components/duet-logo/duet-logo.js +74 -5
  125. package/lib/collection/components/duet-menu-bar/duet-menu-bar.css +91 -0
  126. package/lib/collection/components/duet-menu-bar/duet-menu-bar.js +27 -39
  127. package/lib/collection/components/duet-menu-bar-button/duet-menu-bar-button.js +2 -2
  128. package/lib/collection/components/duet-menu-bar-dropdown/duet-menu-bar-dropdown.js +4 -4
  129. package/lib/collection/components/duet-menu-bar-dropdown-link/duet-menu-bar-dropdown-link.js +2 -2
  130. package/lib/collection/components/duet-menu-bar-item/duet-menu-bar-item.js +2 -2
  131. package/lib/collection/components/duet-menu-bar-link/duet-menu-bar-link.js +2 -2
  132. package/lib/collection/components/duet-modal/duet-modal.js +96 -15
  133. package/lib/collection/components/duet-multiselect/duet-multiselect.js +5 -5
  134. package/lib/collection/components/duet-nav/duet-nav.js +1 -1
  135. package/lib/collection/components/duet-notification/duet-notification.js +2 -2
  136. package/lib/collection/components/duet-notification-drawer/duet-notification-drawer.js +2 -2
  137. package/lib/collection/components/duet-number-input/duet-number-input.js +11 -6
  138. package/lib/collection/components/duet-overlay/duet-overlay.js +1 -1
  139. package/lib/collection/components/duet-page-heading/duet-page-heading.css +12 -1
  140. package/lib/collection/components/duet-page-heading/duet-page-heading.js +2 -2
  141. package/lib/collection/components/duet-pagination/duet-pagination.js +11 -11
  142. package/lib/collection/components/duet-panel/duet-panel.css +98 -0
  143. package/lib/collection/components/duet-panel/duet-panel.js +234 -0
  144. package/lib/collection/components/duet-paragraph/duet-paragraph.js +2 -2
  145. package/lib/collection/components/duet-popup-menu-item/duet-popup-menu-item.js +2 -2
  146. package/lib/collection/components/duet-promo-card/duet-promo-card.js +3 -3
  147. package/lib/collection/components/duet-radio/duet-radio.js +3 -3
  148. package/lib/collection/components/duet-radio-group/duet-radio-group.js +1 -1
  149. package/lib/collection/components/duet-range-slider/duet-range-slider.js +2 -2
  150. package/lib/collection/components/duet-range-stepper/duet-range-stepper.js +2 -2
  151. package/lib/collection/components/duet-scrollable/duet-scrollable.js +5 -5
  152. package/lib/collection/components/duet-section-layout/duet-section-layout.js +3 -3
  153. package/lib/collection/components/duet-select/duet-select.js +5 -5
  154. package/lib/collection/components/duet-shaped-image/duet-shaped-image.js +2 -2
  155. package/lib/collection/components/duet-share-chart/duet-share-chart.js +2 -2
  156. package/lib/collection/components/duet-share-chart-item/duet-share-chart-item.js +1 -1
  157. package/lib/collection/components/duet-show-more/duet-show-more.js +2 -2
  158. package/lib/collection/components/duet-slideout/duet-slideout.js +4 -4
  159. package/lib/collection/components/duet-slideout-lang/duet-slideout-lang.js +1 -1
  160. package/lib/collection/components/duet-slideout-link/duet-slideout-link.js +2 -2
  161. package/lib/collection/components/duet-slideout-panel/duet-slideout-panel.js +6 -6
  162. package/lib/collection/components/duet-slideout-panel-dropdown/duet-slideout-panel-dropdown.js +4 -4
  163. package/lib/collection/components/duet-spacer/duet-spacer.js +1 -1
  164. package/lib/collection/components/duet-spinner/duet-spinner.js +2 -2
  165. package/lib/collection/components/duet-status-icon/duet-status-icon.js +2 -2
  166. package/lib/collection/components/duet-step/duet-step.js +2 -2
  167. package/lib/collection/components/duet-stepper/duet-stepper.js +1 -1
  168. package/lib/collection/components/duet-submenu-bar/duet-submenu-bar.js +5 -5
  169. package/lib/collection/components/duet-submenu-bar-dropdown/duet-submenu-bar-dropdown.js +4 -4
  170. package/lib/collection/components/duet-submenu-bar-dropdown-link/duet-submenu-bar-dropdown-link.js +2 -2
  171. package/lib/collection/components/duet-submenu-bar-item/duet-submenu-bar-item.js +1 -1
  172. package/lib/collection/components/duet-submenu-bar-link/duet-submenu-bar-link.js +1 -1
  173. package/lib/collection/components/duet-tab/duet-tab.js +2 -2
  174. package/lib/collection/components/duet-tab-group/duet-tab-group.js +4 -4
  175. package/lib/collection/components/duet-table/duet-table.js +2 -2
  176. package/lib/collection/components/duet-textarea/duet-textarea.js +3 -3
  177. package/lib/collection/components/duet-toggle/duet-toggle.js +2 -2
  178. package/lib/collection/components/duet-toolbar/duet-toolbar.js +2 -2
  179. package/lib/collection/components/duet-toolbar-dropdown/duet-toolbar-dropdown.js +4 -4
  180. package/lib/collection/components/duet-toolbar-dropdown-link/duet-toolbar-dropdown-link.js +2 -2
  181. package/lib/collection/components/duet-toolbar-item/duet-toolbar-item.js +3 -3
  182. package/lib/collection/components/duet-toolbar-link/duet-toolbar-link.js +2 -2
  183. package/lib/collection/components/duet-tooltip/duet-tooltip-button.js +3 -3
  184. package/lib/collection/components/duet-tooltip/duet-tooltip-popup.js +2 -2
  185. package/lib/collection/components/duet-tray/duet-tray.js +2 -2
  186. package/lib/collection/components/duet-upload/duet-upload.js +2 -2
  187. package/lib/collection/components/duet-upload-aria-status/duet-upload-aria-status.js +1 -1
  188. package/lib/collection/components/duet-upload-item/duet-upload-item.js +2 -2
  189. package/lib/collection/components/duet-visually-hidden/duet-visually-hidden.js +1 -1
  190. package/lib/collection/utils/token-utils.js +59 -7
  191. package/lib/collection/utils/turva2-color-tokens.js +42 -0
  192. package/lib/duet/duet.esm.js +1 -1
  193. package/lib/duet/{p-2de0e6b5.entry.js → p-04ce95ba.entry.js} +1 -1
  194. package/lib/duet/{p-eafab2a1.entry.js → p-05766552.entry.js} +1 -1
  195. package/lib/duet/{p-3ea842ba.entry.js → p-065f7e81.entry.js} +1 -1
  196. package/lib/duet/{p-95dd811d.entry.js → p-06ed84cb.entry.js} +1 -1
  197. package/lib/duet/{p-625a23c2.entry.js → p-08ed76c2.entry.js} +1 -1
  198. package/lib/duet/{p-f3d5e40a.entry.js → p-0a448068.entry.js} +1 -1
  199. package/lib/duet/{p-44786477.entry.js → p-0dc4fe1d.entry.js} +1 -1
  200. package/lib/duet/{p-626e92a9.entry.js → p-0ebeee02.entry.js} +1 -1
  201. package/lib/duet/{p-9b9031cf.entry.js → p-106d3089.entry.js} +1 -1
  202. package/lib/duet/{p-32352972.entry.js → p-15593e3e.entry.js} +1 -1
  203. package/lib/duet/{p-54b978c0.entry.js → p-2057cc55.entry.js} +1 -1
  204. package/lib/duet/{p-061f484f.entry.js → p-2792ec0b.entry.js} +1 -1
  205. package/lib/duet/p-28a998f9.entry.js +4 -0
  206. package/lib/duet/{p-8057c9e5.entry.js → p-2d3d11db.entry.js} +1 -1
  207. package/lib/duet/{p-9d5be586.entry.js → p-2e34dd28.entry.js} +1 -1
  208. package/lib/duet/{p-f7782ce5.entry.js → p-30ade10d.entry.js} +1 -1
  209. package/lib/duet/{p-d5270614.entry.js → p-35ac072d.entry.js} +1 -1
  210. package/lib/duet/{p-70fd5cb5.entry.js → p-37222c50.entry.js} +1 -1
  211. package/lib/duet/{p-80f567c7.entry.js → p-39169420.entry.js} +1 -1
  212. package/lib/duet/{p-a544dcb2.entry.js → p-3dd4fbf1.entry.js} +1 -1
  213. package/lib/duet/{p-8ae3ba95.entry.js → p-402c8cd9.entry.js} +1 -1
  214. package/lib/duet/{p-2b2be1ce.entry.js → p-4628e002.entry.js} +1 -1
  215. package/lib/duet/{p-07cd31d4.entry.js → p-466ef37c.entry.js} +1 -1
  216. package/lib/duet/{p-f2e88086.entry.js → p-4aece4f9.entry.js} +1 -1
  217. package/lib/duet/{p-1b4e4213.entry.js → p-4ee576a2.entry.js} +1 -1
  218. package/lib/duet/p-500d799b.entry.js +4 -0
  219. package/lib/duet/{p-e8bf81e8.entry.js → p-5564a39c.entry.js} +1 -1
  220. package/lib/duet/p-5848a34c.entry.js +4 -0
  221. package/lib/duet/{p-1662ddb0.entry.js → p-5ab64521.entry.js} +1 -1
  222. package/lib/duet/{p-b3547427.entry.js → p-60be3836.entry.js} +1 -1
  223. package/lib/duet/p-625347d3.entry.js +4 -0
  224. package/lib/duet/{p-779380f8.entry.js → p-64ebf5e9.entry.js} +1 -1
  225. package/lib/duet/{p-48bcf197.entry.js → p-64f8d654.entry.js} +1 -1
  226. package/lib/duet/{p-73f38d13.entry.js → p-652eefa8.entry.js} +1 -1
  227. package/lib/duet/{p-85ddf215.entry.js → p-65a8dd89.entry.js} +1 -1
  228. package/lib/duet/{p-05cb3ef2.entry.js → p-66c7af01.entry.js} +1 -1
  229. package/lib/duet/{p-e8668d1a.entry.js → p-67290546.entry.js} +1 -1
  230. package/lib/duet/p-693fda6b.entry.js +4 -0
  231. package/lib/duet/{p-6fa05aeb.entry.js → p-6a6e4d82.entry.js} +1 -1
  232. package/lib/duet/{p-5c749aae.entry.js → p-6aa6ce7d.entry.js} +1 -1
  233. package/lib/duet/{p-e6a5676c.entry.js → p-71603edd.entry.js} +1 -1
  234. package/lib/duet/{p-c0721ad9.entry.js → p-71a6b137.entry.js} +1 -1
  235. package/lib/duet/{p-a40fbcac.entry.js → p-72c2ba6b.entry.js} +1 -1
  236. package/lib/duet/p-73290da8.entry.js +4 -0
  237. package/lib/duet/{p-2c2a8a28.entry.js → p-73ce0ef8.entry.js} +1 -1
  238. package/lib/duet/p-767afcf4.entry.js +4 -0
  239. package/lib/duet/{p-7ac87fc1.entry.js → p-774cf9f5.entry.js} +1 -1
  240. package/lib/duet/{p-89e9badf.entry.js → p-7a9f3475.entry.js} +1 -1
  241. package/lib/duet/{p-61da8d25.entry.js → p-7c814d9a.entry.js} +1 -1
  242. package/lib/duet/{p-1cc69291.entry.js → p-7f1fb1a9.entry.js} +1 -1
  243. package/lib/duet/{p-d154fb42.entry.js → p-83f6beb5.entry.js} +1 -1
  244. package/lib/duet/{p-5b2e8342.entry.js → p-8596c993.entry.js} +1 -1
  245. package/lib/duet/{p-e72e498d.entry.js → p-867aab83.entry.js} +1 -1
  246. package/lib/duet/{p-a854a83c.entry.js → p-86b74914.entry.js} +1 -1
  247. package/lib/duet/{p-11b6b71d.entry.js → p-8ed6f7c7.entry.js} +1 -1
  248. package/lib/duet/{p-b5cdfd48.entry.js → p-94e33308.entry.js} +1 -1
  249. package/lib/duet/p-960f95b4.entry.js +4 -0
  250. package/lib/duet/{p-5f437262.entry.js → p-9973c0dc.entry.js} +1 -1
  251. package/lib/duet/{p-e89f59fe.entry.js → p-9a1f29ac.entry.js} +1 -1
  252. package/lib/duet/{p-e3c9a33a.entry.js → p-9fade6a0.entry.js} +1 -1
  253. package/lib/duet/{p-0710ad83.entry.js → p-9fff2189.entry.js} +1 -1
  254. package/lib/duet/{p-CUNSbdt4.js → p-B_VBeM3r.js} +1 -1
  255. package/lib/duet/{p-B_RHZ7jo.js → p-BaR6ufr4.js} +1 -1
  256. package/lib/duet/p-BdUQgQFn.js +4 -0
  257. package/lib/duet/p-DdwVwK5C.js +4 -0
  258. package/lib/duet/p-Dr2j33H2.js +4 -0
  259. package/lib/duet/{p-Dvk6bntS.js → p-DxV3RbmM.js} +1 -1
  260. package/lib/duet/{p-fwfCVW-k.js → p-DyXNfxdT.js} +1 -1
  261. package/lib/duet/p-DzerL_yn.js +4 -0
  262. package/lib/duet/p-KocOARXM.js +4 -0
  263. package/lib/duet/p-OdY4DjJa.js +4 -0
  264. package/lib/duet/p-T5kkooky.js +4 -0
  265. package/lib/duet/{p-D5_4M8f7.js → p-Z0D6Gy9e.js} +1 -1
  266. package/lib/duet/{p-bd6f7e7b.entry.js → p-a09c6e42.entry.js} +1 -1
  267. package/lib/duet/{p-5956c71f.entry.js → p-a3a2e89e.entry.js} +1 -1
  268. package/lib/duet/{p-a94d6219.entry.js → p-a440c5b3.entry.js} +1 -1
  269. package/lib/duet/{p-835874ed.entry.js → p-a4a768bf.entry.js} +1 -1
  270. package/lib/duet/{p-e1715e1f.entry.js → p-a72b8cf4.entry.js} +1 -1
  271. package/lib/duet/{p-24f39c08.entry.js → p-ab0cd4e5.entry.js} +1 -1
  272. package/lib/duet/{p-a9353027.entry.js → p-aefcd222.entry.js} +1 -1
  273. package/lib/duet/p-b84ac47b.entry.js +4 -0
  274. package/lib/duet/{p-7cfcd244.entry.js → p-ba0fcce1.entry.js} +1 -1
  275. package/lib/duet/p-ba2b47d3.entry.js +4 -0
  276. package/lib/duet/{p-3d266d49.entry.js → p-baeb1090.entry.js} +1 -1
  277. package/lib/duet/{p-828a4e8b.entry.js → p-bcbe4d11.entry.js} +1 -1
  278. package/lib/duet/{p-fcb87d86.entry.js → p-bf5fae27.entry.js} +1 -1
  279. package/lib/duet/p-c6479694.entry.js +4 -0
  280. package/lib/duet/{p-c037858f.entry.js → p-c8308bec.entry.js} +1 -1
  281. package/lib/duet/p-d0f3a2e6.entry.js +4 -0
  282. package/lib/duet/{p-d29c6c90.entry.js → p-d28a8bc4.entry.js} +1 -1
  283. package/lib/duet/p-d2ceafd6.entry.js +4 -0
  284. package/lib/duet/{p-26ef0a2c.entry.js → p-d96af9c9.entry.js} +1 -1
  285. package/lib/duet/{p-a930cc2b.entry.js → p-dee8ff90.entry.js} +1 -1
  286. package/lib/duet/p-e9421a0e.entry.js +4 -0
  287. package/lib/duet/p-ec6e097b.entry.js +4 -0
  288. package/lib/duet/{p-b52c9aed.entry.js → p-effefdec.entry.js} +1 -1
  289. package/lib/duet/{p-9d16f09d.entry.js → p-fb3b8e0f.entry.js} +1 -1
  290. package/lib/esm/{a11y-utils-Do8wJ0uc.js → a11y-utils-CXqm1pj1.js} +1 -1
  291. package/lib/esm/{app-globals-CM7s1rys.js → app-globals-s-_CGo5t.js} +1 -1
  292. package/lib/esm/duet-action-button.entry.js +5 -5
  293. package/lib/esm/duet-alert.entry.js +4 -4
  294. package/lib/esm/duet-badge.entry.js +4 -4
  295. package/lib/esm/duet-banner.entry.js +8 -8
  296. package/lib/esm/duet-breadcrumb.entry.js +7 -7
  297. package/lib/esm/duet-breadcrumbs.entry.js +7 -7
  298. package/lib/esm/duet-button_2.entry.js +13 -13
  299. package/lib/esm/duet-callout.entry.js +5 -5
  300. package/lib/esm/duet-caption_4.entry.js +14 -13
  301. package/lib/esm/duet-card.entry.js +5 -5
  302. package/lib/esm/duet-checkbox.entry.js +2 -2
  303. package/lib/esm/duet-checkmark.entry.js +4 -4
  304. package/lib/esm/duet-chip.entry.js +3 -3
  305. package/lib/esm/duet-choice_2.entry.js +6 -6
  306. package/lib/esm/duet-collapsible.entry.js +4 -4
  307. package/lib/esm/duet-combobox.entry.js +4 -4
  308. package/lib/esm/duet-contact-card.entry.js +5 -5
  309. package/lib/esm/duet-cookie-consent.entry.js +2 -2
  310. package/lib/esm/duet-date-picker.entry.js +6 -6
  311. package/lib/esm/duet-divider_2.entry.js +5 -5
  312. package/lib/esm/duet-editable-table_3.entry.js +10 -10
  313. package/lib/esm/duet-empty-state.entry.js +2 -2
  314. package/lib/esm/duet-fieldset.entry.js +6 -6
  315. package/lib/esm/duet-file-chooser.entry.js +2 -2
  316. package/lib/esm/duet-footer.entry.js +4 -4
  317. package/lib/esm/duet-grid_2.entry.js +4 -4
  318. package/lib/esm/duet-header_2.entry.js +55 -13
  319. package/lib/esm/duet-hero.entry.js +4 -4
  320. package/lib/esm/duet-icon.entry.js +8 -8
  321. package/lib/esm/duet-input_2.entry.js +8 -8
  322. package/lib/esm/duet-layout.entry.js +2 -2
  323. package/lib/esm/duet-list_2.entry.js +4 -4
  324. package/lib/esm/duet-menu-bar-button.entry.js +4 -4
  325. package/lib/esm/duet-menu-bar-dropdown-link.entry.js +4 -4
  326. package/lib/esm/duet-menu-bar-dropdown.entry.js +6 -6
  327. package/lib/esm/duet-menu-bar-item.entry.js +7 -7
  328. package/lib/esm/duet-menu-bar-link.entry.js +4 -4
  329. package/lib/esm/duet-menu-bar.entry.js +10 -42
  330. package/lib/esm/duet-modal.entry.js +37 -20
  331. package/lib/esm/duet-multiselect.entry.js +10 -10
  332. package/lib/esm/duet-nav.entry.js +3 -3
  333. package/lib/esm/duet-notification_2.entry.js +7 -7
  334. package/lib/esm/duet-number-input.entry.js +14 -9
  335. package/lib/esm/duet-overlay.entry.js +3 -3
  336. package/lib/esm/duet-page-heading.entry.js +5 -5
  337. package/lib/esm/duet-pagination_2.entry.js +18 -18
  338. package/lib/esm/duet-panel.entry.js +51 -0
  339. package/lib/esm/duet-phone-input.entry.js +4 -4
  340. package/lib/esm/duet-popup-menu_2.entry.js +7 -7
  341. package/lib/esm/duet-progress.entry.js +3 -3
  342. package/lib/esm/duet-promo-card.entry.js +7 -7
  343. package/lib/esm/duet-radio_2.entry.js +7 -7
  344. package/lib/esm/duet-range-slider.entry.js +7 -7
  345. package/lib/esm/duet-scrollable_3.entry.js +17 -17
  346. package/lib/esm/duet-section-layout.entry.js +4 -4
  347. package/lib/esm/duet-select.entry.js +9 -9
  348. package/lib/esm/duet-shaped-image.entry.js +4 -4
  349. package/lib/esm/duet-share-chart-item.entry.js +2 -2
  350. package/lib/esm/duet-share-chart.entry.js +8 -8
  351. package/lib/esm/duet-show-more.entry.js +5 -5
  352. package/lib/esm/duet-slideout-lang.entry.js +4 -4
  353. package/lib/esm/duet-slideout-link.entry.js +7 -7
  354. package/lib/esm/duet-slideout-panel-dropdown.entry.js +6 -6
  355. package/lib/esm/duet-slideout-panel.entry.js +13 -13
  356. package/lib/esm/duet-slideout.entry.js +11 -11
  357. package/lib/esm/duet-status-icon.entry.js +4 -4
  358. package/lib/esm/duet-step_2.entry.js +6 -6
  359. package/lib/esm/duet-submenu-bar-dropdown-link.entry.js +4 -4
  360. package/lib/esm/duet-submenu-bar-dropdown.entry.js +7 -7
  361. package/lib/esm/duet-submenu-bar-item.entry.js +6 -6
  362. package/lib/esm/duet-submenu-bar-link.entry.js +3 -3
  363. package/lib/esm/duet-submenu-bar.entry.js +8 -8
  364. package/lib/esm/duet-textarea.entry.js +8 -8
  365. package/lib/esm/duet-toggle.entry.js +6 -6
  366. package/lib/esm/duet-toolbar-dropdown-link.entry.js +4 -4
  367. package/lib/esm/duet-toolbar-dropdown.entry.js +6 -6
  368. package/lib/esm/duet-toolbar-item.entry.js +8 -8
  369. package/lib/esm/duet-toolbar-link.entry.js +4 -4
  370. package/lib/esm/duet-toolbar.entry.js +4 -4
  371. package/lib/esm/duet-tooltip-button_2.entry.js +8 -8
  372. package/lib/esm/duet-tooltip.entry.js +5 -5
  373. package/lib/esm/duet-tray.entry.js +6 -6
  374. package/lib/esm/duet-upload-aria-status.entry.js +2 -2
  375. package/lib/esm/duet-upload-item.entry.js +6 -6
  376. package/lib/esm/duet-visually-hidden.entry.js +2 -2
  377. package/lib/esm/duet.js +4 -4
  378. package/lib/esm/{errorcodes.utils-jdmUflM5.js → errorcodes.utils-Bre55Njd.js} +1 -1
  379. package/lib/esm/{focus-utils-Fb4Hjq5k.js → focus-utils-vvgYykmM.js} +1 -1
  380. package/lib/esm/{index-CUNSbdt4.js → index-B_VBeM3r.js} +5 -1
  381. package/lib/esm/{label-CSouuUKb.js → label-l-Eza5H3.js} +1 -1
  382. package/lib/esm/{language-utils-fAqNRSrI.js → language-utils-B7PXWqpg.js} +1 -1
  383. package/lib/esm/loader.js +4 -4
  384. package/lib/esm/{slot-utils-CgXzS75x.js → slot-utils-aDCRCdc4.js} +1 -1
  385. package/lib/esm/{themeable-component-EVqsr6Ut.js → themeable-component-DPqozkF4.js} +14 -2
  386. package/lib/esm/{token-utils-orOLyKQw.js → token-utils-BGFYWQ6j.js} +76 -9
  387. package/lib/esm/{tokens-Dvk6bntS.js → tokens-DxV3RbmM.js} +1 -1
  388. package/lib/esm/{tokens.module-D5_4M8f7.js → tokens.module-Z0D6Gy9e.js} +1 -1
  389. package/lib/types/components/duet-logo/duet-logo.d.ts +8 -0
  390. package/lib/types/components/duet-menu-bar/duet-menu-bar.d.ts +5 -4
  391. package/lib/types/components/duet-modal/duet-modal.d.ts +17 -1
  392. package/lib/types/components/duet-number-input/duet-number-input.d.ts +3 -1
  393. package/lib/types/components/duet-panel/duet-panel.d.ts +47 -0
  394. package/lib/types/components.d.ts +123 -4
  395. package/lib/types/utils/token-utils.d.ts +4 -0
  396. package/lib/types/utils/turva2-color-tokens.d.ts +39 -0
  397. package/package.json +3 -3
  398. package/lib/duet/p-2354e2c1.entry.js +0 -4
  399. package/lib/duet/p-50Jw5Ir2.js +0 -4
  400. package/lib/duet/p-5432f24c.entry.js +0 -4
  401. package/lib/duet/p-710ae64d.entry.js +0 -4
  402. package/lib/duet/p-7a9e6423.entry.js +0 -4
  403. package/lib/duet/p-7c4f010e.entry.js +0 -4
  404. package/lib/duet/p-88773ebf.entry.js +0 -4
  405. package/lib/duet/p-89e6b8d0.entry.js +0 -4
  406. package/lib/duet/p-9d501c34.entry.js +0 -4
  407. package/lib/duet/p-BI7G8d3Z.js +0 -4
  408. package/lib/duet/p-Be6-farU.js +0 -4
  409. package/lib/duet/p-CF5Kkdym.js +0 -4
  410. package/lib/duet/p-DyjhCDQL.js +0 -4
  411. package/lib/duet/p-M3ljdQX1.js +0 -4
  412. package/lib/duet/p-b2c2a24e.entry.js +0 -4
  413. package/lib/duet/p-b314a75a.entry.js +0 -4
  414. package/lib/duet/p-b4569b01.entry.js +0 -4
  415. package/lib/duet/p-d2e1cef2.entry.js +0 -4
  416. package/lib/duet/p-e89e940b.entry.js +0 -4
  417. package/lib/duet/p-ekdrapBY.js +0 -4
  418. package/lib/duet/p-fc319c57.entry.js +0 -4
@@ -126,10 +126,10 @@ export class DuetNotificationDrawer {
126
126
  * Always the last one in the class.
127
127
  */
128
128
  render() {
129
- return (h("div", { key: '659136cc65a195a1de4228bd580d2368d2244a86', class: {
129
+ return (h("div", { key: '5a100874ee332b5f81a62d4d398273cfb1b039e6', class: {
130
130
  "duet-drawer": true,
131
131
  "duet-theme-turva": this.theme === "turva",
132
- }, onKeyDown: this.handleKeyDown }, h("button", { key: 'abe8757b0f4db9939465b4ab6011c8625b5baf76', ref: el => (this.drawerButtonEl = el), type: "button", class: "duet-drawer-toggle", id: "duet-drawer-toggle", "aria-controls": "duet-drawer-content", "aria-expanded": this.isOpen ? "true" : "false", onClick: this.toggleMenu }, this.icon && (h("div", { key: 'a99654516249d53e1a9fd81021998c2e461365a7', class: "duet-drawer-icon" }, h("duet-icon", { key: '76b8f2f443ab22637765dfef1db4000215ef5a19', margin: "none", size: "x-small", name: this.icon, color: "currentColor" }), this.badge && h("div", { key: '6efbba81b7cf33402531b445e5e297d5e48a4fc6', class: "duet-drawer-badge" }))), h("span", { key: '5b9df974799ba860b7d2d964fc22c50d18aa0282', class: "duet-drawer-label" }, this.label), h("div", { key: 'ed02df2f85e017956770c841d1882b6a6ae45280', class: "duet-drawer-caret" }, h("duet-icon", { key: '646368ab0a187e896f1110e4015a05b3bad71a9d', margin: "none", size: "auto", icon: arrowDownIcon.svg, color: "currentColor" }))), h("div", { key: '0e2cfc291004260d5f02350fd624396768c06b3b', id: "duet-drawer-content", class: {
132
+ }, onKeyDown: this.handleKeyDown }, h("button", { key: '277c6476693a7d387596fbfbfb23abc166faebc9', ref: el => (this.drawerButtonEl = el), type: "button", class: "duet-drawer-toggle", id: "duet-drawer-toggle", "aria-controls": "duet-drawer-content", "aria-expanded": this.isOpen ? "true" : "false", onClick: this.toggleMenu }, this.icon && (h("div", { key: 'd951e69affa0c3eb4ec008e8aeb89ec555e36206', class: "duet-drawer-icon" }, h("duet-icon", { key: '2aac18cf9ac8ef0f7294eba31290be645b8d6492', margin: "none", size: "x-small", name: this.icon, color: "currentColor" }), this.badge && h("div", { key: '58263ae4479e929348353d164fd036a8e822ba8d', class: "duet-drawer-badge" }))), h("span", { key: 'e046d2b1be747afa753163314d777aea3dd25eda', class: "duet-drawer-label" }, this.label), h("div", { key: '34cbbf033a8ac22acb04e995235df355a22c806d', class: "duet-drawer-caret" }, h("duet-icon", { key: '2b3c734862192aeaa3b8e7866a08000fd6e776d9', margin: "none", size: "auto", icon: arrowDownIcon.svg, color: "currentColor" }))), h("div", { key: 'c2f6ce8c30baba066a0eda032d3162638a24b0a6', id: "duet-drawer-content", class: {
133
133
  "duet-drawer-content": true,
134
134
  "duet-drawer-right": this.direction === "right",
135
135
  "duet-drawer-left": this.direction === "left",
@@ -55,7 +55,8 @@ export class DuetNumberInput {
55
55
  sv: "{current} euro valt",
56
56
  };
57
57
  /**
58
- * Format of message used to announce current amount when switching between amounts.
58
+ * Format of message used to announce current amount when switching between amounts. Note that the default has "euros"
59
+ * so if you use another unit is is essential you set this attribute to reflect that unit.
59
60
  * The string {current} is replaced with the current amount.
60
61
  * @default {fi: "{current} euroa valittuna", en: "{current} euros selected", sv: "{current} valda euro"}
61
62
  */
@@ -273,7 +274,7 @@ export class DuetNumberInput {
273
274
  // Set the localized prop value.
274
275
  this.value = this.localizeValue(value);
275
276
  // Finally also set the visible input value and unit.
276
- this.duetInputElement.value = `${this.value} ${this.unit}`;
277
+ this.duetInputElement.value = `${this.value}${this.getUnitString()}`;
277
278
  };
278
279
  this.add = (ev) => {
279
280
  // If this was called via a html button, prevent the default functionality
@@ -371,6 +372,10 @@ export class DuetNumberInput {
371
372
  this.emitNull(ev);
372
373
  }
373
374
  }
375
+ // prefix existing unit with white space or return empty string if no unit
376
+ getUnitString() {
377
+ return this.unit ? ` ${this.unit}` : "";
378
+ }
374
379
  formatAnnouncement() {
375
380
  const current = !!this.value ? SafeParseFloat(this.value, this.locale) : null;
376
381
  if (current == null) {
@@ -384,13 +389,13 @@ export class DuetNumberInput {
384
389
  */
385
390
  render() {
386
391
  const identifier = this.identifier || this.inputId;
387
- const maxlength = `${this.localizeValue(this.max)} ${this.unit}`.length;
392
+ const maxlength = `${this.localizeValue(this.max)}${this.getUnitString()}`.length;
388
393
  const cleanedValue = !!this.value ? SafeParseFloat(this.value, this.locale) : null;
389
- return (h(Host, { key: '2339fa56635a7ba8fc6edec30d3675317fcbe27f', class: {
394
+ return (h(Host, { key: 'ff7a3b099b6146f8db869268ecc2609fefa88ca6', class: {
390
395
  "duet-theme-turva": this.theme === "turva",
391
396
  "duet-expand": this.expand,
392
397
  "duet-m-0": this.margin === "none",
393
- } }, h("div", { key: 'dff60647793af3de902477ed0ea4cfebe2a0b060', class: "duet-number-container" }, h("duet-input", { key: '55a832b70fd619b16560dcc8de2a11da3ae90344', ref: input => (this.duetInputElement = input), onDuetChange: event => this.handleChange(event), onDuetFocus: this.handleFocus, onDuetBlur: event => this.handleBlur(event), onKeyDown: event => this.handleKeyDown(event), label: this.label, value: this.value ? `${this.value} ${this.unit}` : "", error: this.error, "aria-valuemin": this.min, "aria-valuemax": this.max, "aria-valuenow": cleanedValue != null ? cleanedValue : "", maxlength: maxlength, name: this.name, component: "number", required: this.required, disabled: this.disabled, role: this.role, labelHidden: this.labelHidden, tooltip: this.tooltip, identifier: identifier, theme: this.theme, margin: "none", expand: true, numericKeyboard: true, autoComplete: "off", type: "text", accessibleActiveDescendant: this.accessibleActiveDescendant, accessibleLabelledBy: this.accessibleLabelledBy, accessibleDescription: this.accessibleDescription, accessibleDetails: this.accessibleDetails, accessibleControls: this.accessibleControls, accessibleOwns: this.accessibleOwns, accessibleDescribedBy: this.accessibleDescribedBy }, h("slot", { key: '1e4b7cc87d46de0233457c6e087217b27fb2a6df', name: "tooltip" }), h("div", { key: '5a2660b2592fd4a96172bf4ce53d5d810e9479c6', class: { "duet-number-buttons": true, "duet-no-label": this.labelHidden } }, h("button", { key: 'dddc2edb43610eed98a1db9de1ac006d6f721099', disabled: this.disabled, "aria-disabled": cleanedValue == null || cleanedValue === this.min ? "true" : "false", class: "duet-number-button duet-number-button-subtract", onClick: this.subtract, type: "button" }, h("duet-visually-hidden", { key: 'e29c3ce840c8e2d776ed9430ed84f1a0ead9a5a3' }, this.accessibleSubtract, " ", this.step), h("duet-icon", { key: 'e5eb7418c9f6711b21e6550bad87f017d97cff6e', icon: subtractIcon.svg, size: "small", margin: "none", color: this.theme === "turva" ? "secondary-turva" : "secondary" })), h("button", { key: '688035f8fcb3f56a36d2d7b13a9d494388eafd39', disabled: this.disabled, "aria-disabled": cleanedValue === this.max ? "true" : "false", class: "duet-number-button duet-number-button-add", onClick: this.add, type: "button" }, h("duet-visually-hidden", { key: '8779e5d09e06ff7f63ff715d45bd72c513c1c1dc' }, this.accessibleAdd, " ", this.step), h("duet-icon", { key: 'f6548c254afa31a6346042f11113aad09baefce3', icon: addIcon.svg, size: "small", margin: "none", color: this.theme === "turva" ? "secondary-turva" : "secondary" })))), this.accessibleLiveEnabled && (h("duet-visually-hidden", { key: '4e272274bdb8a1c9cc068e76e846b49647200fd6', "aria-live": "polite", "aria-atomic": "true", "aria-relevant": "all" }, this.formatAnnouncement())))));
398
+ } }, h("div", { key: '04d204f9d0dc1bf334606a101b0b4b5e165d36a3', class: "duet-number-container" }, h("duet-input", { key: '464c323e615b8978944cdeec09e0e1a1503391a0', ref: input => (this.duetInputElement = input), onDuetChange: event => this.handleChange(event), onDuetFocus: this.handleFocus, onDuetBlur: event => this.handleBlur(event), onKeyDown: event => this.handleKeyDown(event), label: this.label, value: this.value ? `${this.value}${this.getUnitString()}` : "", error: this.error, "aria-valuemin": this.min, "aria-valuemax": this.max, "aria-valuenow": cleanedValue != null ? cleanedValue : "", maxlength: maxlength, name: this.name, component: "number", required: this.required, disabled: this.disabled, role: this.role, labelHidden: this.labelHidden, tooltip: this.tooltip, identifier: identifier, theme: this.theme, margin: "none", expand: true, numericKeyboard: true, autoComplete: "off", type: "text", accessibleActiveDescendant: this.accessibleActiveDescendant, accessibleLabelledBy: this.accessibleLabelledBy, accessibleDescription: this.accessibleDescription, accessibleDetails: this.accessibleDetails, accessibleControls: this.accessibleControls, accessibleOwns: this.accessibleOwns, accessibleDescribedBy: this.accessibleDescribedBy }, h("slot", { key: '876fa9e487574bd143648c8649105ac9f5972829', name: "tooltip" }), h("div", { key: '60053c4b4c4602d494693804539eff2149fe2a64', class: { "duet-number-buttons": true, "duet-no-label": this.labelHidden } }, h("button", { key: '083dc0860543ddc7e2532620e345ad9d8d163d13', disabled: this.disabled, "aria-disabled": cleanedValue == null || cleanedValue === this.min ? "true" : "false", class: "duet-number-button duet-number-button-subtract", onClick: this.subtract, type: "button" }, h("duet-visually-hidden", { key: '5323ecaf1f86fa97f9267b70bc048dadcca7d34f' }, this.accessibleSubtract, " ", this.step), h("duet-icon", { key: 'd6ab1819fe4c96d6e379570c5a5c4eb41a1a775f', icon: subtractIcon.svg, size: "small", margin: "none", color: this.theme === "turva" ? "secondary-turva" : "secondary" })), h("button", { key: '82b9a72bfeba3653c85f853c2e9d295d146b2152', disabled: this.disabled, "aria-disabled": cleanedValue === this.max ? "true" : "false", class: "duet-number-button duet-number-button-add", onClick: this.add, type: "button" }, h("duet-visually-hidden", { key: '697550e4c1f874401d2e17f60c6c4f324fc97bd8' }, this.accessibleAdd, " ", this.step), h("duet-icon", { key: '7947d70d3a48a3ea7e36a46aa79c6abc82d52565', icon: addIcon.svg, size: "small", margin: "none", color: this.theme === "turva" ? "secondary-turva" : "secondary" })))), this.accessibleLiveEnabled && (h("duet-visually-hidden", { key: '0759711664742966c214cb765c179706affc7b2f', "aria-live": "polite", "aria-atomic": "true", "aria-relevant": "all" }, this.formatAnnouncement())))));
394
399
  }
395
400
  static get is() { return "duet-number-input"; }
396
401
  static get encapsulation() { return "shadow"; }
@@ -665,7 +670,7 @@ export class DuetNumberInput {
665
670
  "name": "default",
666
671
  "text": "{fi: \"{current} euroa valittuna\", en: \"{current} euros selected\", sv: \"{current} valda euro\"}"
667
672
  }],
668
- "text": "Format of message used to announce current amount when switching between amounts.\nThe string {current} is replaced with the current amount."
673
+ "text": "Format of message used to announce current amount when switching between amounts. Note that the default has \"euros\"\nso if you use another unit is is essential you set this attribute to reflect that unit.\nThe string {current} is replaced with the current amount."
669
674
  },
670
675
  "getter": false,
671
676
  "setter": false,
@@ -59,7 +59,7 @@ export class DuetOverlay {
59
59
  * Always the last one in the class.
60
60
  */
61
61
  render() {
62
- return (h(Host, { key: 'a940aabf27c88503105399e2bd8e078e6fbbce34', "aria-hidden": "true" }, h("div", { key: '73a03ee885277cf9829fe0eda10af78fa8df61ca', style: { zIndex: this.zIndex }, class: {
62
+ return (h(Host, { key: '022e03bd6245ccf60d2b1f5b2067b68e97722f0f', "aria-hidden": "true" }, h("div", { key: 'b29aabf87beb396113a3bcda0cc6fbdecfabc797', style: { zIndex: this.zIndex }, class: {
63
63
  "duet-overlay": true,
64
64
  "duet-theme-turva": this.theme === "turva",
65
65
  "keep-stacking-context": this.keepStackingContext,
@@ -231,8 +231,19 @@
231
231
  background-color: rgb(198, 12, 48);
232
232
  }
233
233
 
234
+ :host(.duet-theme-turva2) .duet-page-heading.duet-theme-turva .background .background-mask {
235
+ background-image: none;
236
+ }
234
237
  :host(.duet-theme-turva2) .duet-page-heading.duet-theme-turva .brand-shaped-icon {
235
- background: rgba(230, 23, 64, 0.9);
238
+ background: #172a3b;
239
+ border-radius: 16%;
240
+ transform: rotate(0);
241
+ -webkit-mask-image: none;
242
+ mask-image: none;
243
+ }
244
+ :host(.duet-theme-turva2) .duet-page-heading.duet-theme-turva .brand-shaped-icon duet-icon {
245
+ top: 0;
246
+ transform: rotate(0);
236
247
  }
237
248
  :host(.duet-theme-turva2) .duet-page-heading.duet-theme-turva .progress-step {
238
249
  background-color: #b2c2cd;
@@ -43,12 +43,12 @@ export class DuetPageHeading {
43
43
  */
44
44
  render() {
45
45
  const layout = this.layout === "narrow" ? "narrow" : this.layout === "fluid" ? "fluid" : "auto";
46
- return (h("div", { key: '8f818b186229d038b98fac98c1ef02fc6bbbbd2d', class: {
46
+ return (h("div", { key: '7580ec6ad47222aa71f87e9b030152fcbc230a6c', class: {
47
47
  "duet-page-heading": true,
48
48
  "duet-theme-turva": this.theme === "turva",
49
49
  "has-icon": !!this.icon,
50
50
  [layout]: true,
51
- } }, h("div", { key: '6c42ddfcc4f65c95ccd4bceb1956b60e610e359c', class: "background" }, this.theme === "turva" && h("div", { key: '9184e6a6696c793a0060e0492c3b508c38f6afff', class: "background-mask" }), this.theme !== "turva" && h("div", { key: '0c6f06c85f2f010bfa32f1867bc00f3f126c0304', class: "brand-shape" }), this.theme !== "turva" && h("div", { key: '744abcada9154113142f7ab873d15a6b1526e8b4', class: "brand-shape second-shape" }), this.icon && (h("div", { key: 'f83dae2fe07c0281b210f113cd79bd32b91862f4', class: "brand-shaped-icon" }, h("duet-icon", { key: '3cd1eee3628ce5819928da75d29a2d67bfeb40aa', background: "none", name: this.icon, margin: "none", size: "auto", responsive: false })))), h("div", { key: 'af626d8cb5b1a075dd37a7431ec5bb343100d7e7', class: "heading" }, h("slot", { key: '042d9bbc8fb8c1c5dd7fe5ec65b734276117629b', name: "heading" }), this.progressCurrentStep && this.progressTotalSteps && (h("div", { key: '20ebc9e86f822c59513030d34a633f68f2a188de' }, h("duet-spacer", { key: 'f8e666d65264a949ba60d896b82b457638161fbd', size: "large" }), h("div", { key: 'fe52a841e12dcf6145521a47d4349efd7f83878b', role: "presentation" }, this.progressIndicator()))))));
51
+ } }, h("div", { key: '41d70adffe75142d1bb229064c284c6b6ce447e7', class: "background" }, this.theme === "turva" && h("div", { key: '44a17513b00dfec52ee689008fec882a083d467f', class: "background-mask" }), this.theme !== "turva" && h("div", { key: 'd9d50fca7431f9d49058030b51b5548e4db8af04', class: "brand-shape" }), this.theme !== "turva" && h("div", { key: '1b93a6948bf23c1bc9bc7dafa64b6df7eea10a91', class: "brand-shape second-shape" }), this.icon && (h("div", { key: '4007f3e9d29cbfd246dc8ae43074ef7ea53fd694', class: "brand-shaped-icon" }, h("duet-icon", { key: 'efe66977b0559e745a17e6da691f8390af017c56', background: "none", name: this.icon, margin: "none", size: "auto", responsive: false })))), h("div", { key: '50070a51cbd61ddcd380063f9635cfb9edbb8b24', class: "heading" }, h("slot", { key: '1ae7e6e3261bb8dd1104bc47b1b87142a5f1cfdd', name: "heading" }), this.progressCurrentStep && this.progressTotalSteps && (h("div", { key: '01bf2c3472defbd1a7fe6c0af2b9cb4cc99185db' }, h("duet-spacer", { key: '723e327a2c3913b0e130d4326a163e326e57eaf4', size: "large" }), h("div", { key: '0bb28f56e6b92b7990467fcca1a16a0893380ce1', role: "presentation" }, this.progressIndicator()))))));
52
52
  }
53
53
  static get is() { return "duet-page-heading"; }
54
54
  static get encapsulation() { return "shadow"; }
@@ -394,32 +394,32 @@ export class DuetPagination {
394
394
  * Always the last one in the class.
395
395
  */
396
396
  render() {
397
- return (h(Host, { key: '32fcbc1ab1d2e72c8e3f681c8b5405362be964e3', onKeyDown: e => this.onKeyboardDown(e), class: { "duet-theme-turva": this.theme === "turva" } }, h("nav", { key: '020a385482262cd9ea6bbd8d32e55976a95d7543', role: "navigation", "aria-labelledby": this.accessibleLabelledBy ? `${this.accessibleLabelledBy} ${this.listId}` : this.listId, "aria-describedby": this.accessibleDescribedBy ? `${this.accessibleDescribedBy} ${this.listId}` : this.listId, "aria-descriptions": this.accessibleDescription, "aria-details": this.accessibleDetails, ref: el => (this.nativeNav = el), "aria-controls": this.ariaControls, class: {
397
+ return (h(Host, { key: '0a70358ce0f093e096e1dbbb1d5d8cdfe9767d69', onKeyDown: e => this.onKeyboardDown(e), class: { "duet-theme-turva": this.theme === "turva" } }, h("nav", { key: 'ceccfac31b9f41448ce5eca46838898d914cb04a', role: "navigation", "aria-labelledby": this.accessibleLabelledBy ? `${this.accessibleLabelledBy} ${this.listId}` : this.listId, "aria-describedby": this.accessibleDescribedBy ? `${this.accessibleDescribedBy} ${this.listId}` : this.listId, "aria-descriptions": this.accessibleDescription, "aria-details": this.accessibleDetails, ref: el => (this.nativeNav = el), "aria-controls": this.ariaControls, class: {
398
398
  "duet-pagination-nav": true,
399
399
  [`duet-pagination-variation-${this.variation}`]: true,
400
- } }, this.numbersStore !== "" && (h("div", { key: '953681769a2c37b202d257783517eb0a067d58a2', "aria-live": "assertive", "aria-relevant": "text", class: "duet-pagination-overlay", "aria-label": `${this.accessibleLabels.jump_to} ${this.numbersStore}`, part: "navigation-overlay" }, h("duet-badge", { key: '64b7cec76275874d10409a43c2a9268091aa63ee', theme: this.theme }, "jump to page : ", this.numbersStore))), h("ol", { key: '2810f47527a6ccfbb2957495acd0c9314586b4b2', id: this.listId, class: {
400
+ } }, this.numbersStore !== "" && (h("div", { key: '92cbdd700b88123610e781217175f508bea468f2', "aria-live": "assertive", "aria-relevant": "text", class: "duet-pagination-overlay", "aria-label": `${this.accessibleLabels.jump_to} ${this.numbersStore}`, part: "navigation-overlay" }, h("duet-badge", { key: 'b006f1470134d68ac4851a60a897ea2b72c1f504', theme: this.theme }, "jump to page : ", this.numbersStore))), h("ol", { key: 'd08269283c6af3331e90f1793ee4407d6452c462', id: this.listId, class: {
401
401
  "duet-pagination": true,
402
402
  "duet-pagination-is-dimmed": this.numbersStore !== "",
403
- }, role: "menubar", "aria-label": this.accessibleLabels.pagination_label, "aria-description": this.accessibleLabels.description }, (this.variation === "compact" || this.matchesCompactBreakpoint) && (h("li", { key: 'fcee9f5f028b340bf8b20cbaeebdea80e9e0c738', class: {
403
+ }, role: "menubar", "aria-label": this.accessibleLabels.pagination_label, "aria-description": this.accessibleLabels.description }, (this.variation === "compact" || this.matchesCompactBreakpoint) && (h("li", { key: '1b3c4f778862c5880011076f8c9f75b535e6b3cd', class: {
404
404
  "duet-pagination-page-button": true,
405
405
  "duet-pagination-button-first": true,
406
- }, role: "menuitem", part: "navigation-arrow" }, h("duet-action-button", { key: 'aa7e10b2c1fa46f2634e15bf1c11a7b317745885', disabled: (this.internalSectionIndex === 0 && this.current <= 1) || this.disabled, "data-direction": "back", accessibleLabel: this.accessibleLabels.first_page, title: this.accessibleLabels.first_page, onClick: e => this.jumpToStart(e), "icon-name": "action-move-to-first", theme: this.theme, url: this.processedPageLinks ? this.processedPageLinks[0] : undefined }))), h("li", { key: 'c209b2a485ac203090db53813c9bc5b52740692f', class: {
406
+ }, role: "menuitem", part: "navigation-arrow" }, h("duet-action-button", { key: '9b83bfe8deff8790d0cb1e1a35b0ec7c7f1d3b0b', disabled: (this.internalSectionIndex === 0 && this.current <= 1) || this.disabled, "data-direction": "back", accessibleLabel: this.accessibleLabels.first_page, title: this.accessibleLabels.first_page, onClick: e => this.jumpToStart(e), "icon-name": "action-move-to-first", theme: this.theme, url: this.processedPageLinks ? this.processedPageLinks[0] : undefined }))), h("li", { key: '5c27b7649f0eb55d1d0d62d900b232004f004504', class: {
407
407
  "duet-pagination-page-button": true,
408
408
  "duet-pagination-button-first": true,
409
- }, role: "menuitem", part: "navigation-arrow" }, h("duet-action-button", { key: '52fe136a3fd99f42538a87c24672770197ff34fd', disabled: !!((this.internalSectionIndex === 0 && this.current <= 1) ||
409
+ }, role: "menuitem", part: "navigation-arrow" }, h("duet-action-button", { key: '083ece272410b52d311ba5059d01c5b551f2f95a', disabled: !!((this.internalSectionIndex === 0 && this.current <= 1) ||
410
410
  (this.current <= 1 && this.processedPageLinks) ||
411
- this.disabled), "data-direction": "back", onClick: e => this.onMouseHandler(e, -1), "accessible-label": this.accessibleLabels.previous_page, title: this.accessibleLabels.previous_page, "icon-name": "action-arrow-left-small", theme: this.theme, url: this.processedPageLinks ? this.processedPageLinks[this.current - 2] : undefined })), this.internalSectionIndex !== 0 && this.shouldDisplayNavigation() && (h(Fragment, { key: '03be7831dee21cb070175cf3e50ae89b0eba49b3' }, h("li", { key: '81cee7f4767a20b952964f8ce856621caad7b1cb', class: "duet-pagination-item", role: "menuitem", part: "navigation-jump" }, h("duet-button", { key: 'd280492036cb4ae490d70498078e8e649fe94ee2', disabled: this.disabled, class: "duet-pagination-link duet-pagination-link-jump-back", "center-text": "true", variation: "plain", color: this.theme !== "turva" ? "secondary" : "secondary-turva", margin: "none", accessibleLabel: this.accessibleLabels.first_page, onClick: e => this.jumpToStart(e), theme: this.theme, url: this.processedPageLinks ? this.processedPageLinks[0] : undefined }, h("div", { key: 'e6aa3d3cc594fed23cb4d0146ebdd07c62e1cc25', class: "duet-pagination-page-number" }, "1"))), h("li", { key: 'dc4cbf113dc745b52d8787bc89429e32b68f53cb', class: "duet-pagination-item", role: "menuitem", part: "navigation-section" }, h("duet-button", { key: 'dd58996ba1d6c5a32018d173150afdd995fa9b75', disabled: this.disabled, class: "duet-pagination-link duet-pagination-link-dots-back", "center-text": "true", color: this.theme !== "turva" ? "secondary" : "secondary-turva", variation: "plain", margin: "none", accessibleLabel: this.accessibleLabels.prev_section.replace("{0}", `${this.visibleItems}`), onClick: e => this.sectionClickHandler(e, -1), theme: this.theme }, h("div", { key: '2d354dd1353d1a3445b585cde4659f4aa3a39733', class: "duet-pagination-page-number", "aria-hidden": "true" }, "\u2026"))))), (this.shouldDisplayNavigation() && this.renderPageNumbers()) || this.renderSelect(), (this.internalSectionIndex + 1) * this.visibleItems < this.totalPages &&
412
- this.shouldDisplayNavigation() && (h(Fragment, { key: '7b20cc74d44f1b9cf952ee69fcac743ba66eda24' }, (this.internalSectionIndex + 1) * this.visibleItems !== this.totalPages - 1 && (h("li", { key: 'fd54712037bfcd681f00929685daeee86cf4ed69', class: "duet-pagination-item", role: "menuitem", part: "navigation-section" }, h("duet-button", { key: 'd1df047e013903691bbd00c4fd495ab408f73a58', disabled: this.disabled, class: "duet-pagination-link duet-pagination-link-dots-forward", "center-text": "true", color: this.theme !== "turva" ? "secondary" : "secondary-turva", variation: "plain", margin: "none", accessibleLabel: this.accessibleLabels.next_section.replace("{0}", `${this.visibleItems}`), onClick: e => this.sectionClickHandler(e, 1), theme: this.theme }, h("div", { key: 'a0a24b8be4d7b24fa7c15bd35c5f29b74ad0083e', class: "duet-pagination-page-number", "aria-hidden": "true" }, "\u2026")))), h("li", { key: 'e996b1229282d32e9f0fb4c0eeb1fbab748e0c8d', class: "duet-pagination-item", role: "menuitem", part: "navigation-jump" }, h("duet-button", { key: 'c8dc915042f3bde87bac5f0fbdfe6ba5cf6f42fd', disabled: this.disabled, class: "duet-pagination-link duet-pagination-link-jump-forward", "center-text": "true", color: this.theme !== "turva" ? "secondary" : "secondary-turva", variation: "plain", margin: "none", accessibleLabel: this.accessibleLabels.last_page, onClick: e => this.jumpToEnd(e), theme: this.theme, url: this.processedPageLinks
411
+ this.disabled), "data-direction": "back", onClick: e => this.onMouseHandler(e, -1), "accessible-label": this.accessibleLabels.previous_page, title: this.accessibleLabels.previous_page, "icon-name": "action-arrow-left-small", theme: this.theme, url: this.processedPageLinks ? this.processedPageLinks[this.current - 2] : undefined })), this.internalSectionIndex !== 0 && this.shouldDisplayNavigation() && (h(Fragment, { key: '332242feaa14df10ee1b67dbebc767fe366c34c4' }, h("li", { key: 'b03d55993042862a51c456d0a65958f33794fbee', class: "duet-pagination-item", role: "menuitem", part: "navigation-jump" }, h("duet-button", { key: '5eb8e18454bf78af277bc43286fb12d28af4e5f5', disabled: this.disabled, class: "duet-pagination-link duet-pagination-link-jump-back", "center-text": "true", variation: "plain", color: this.theme !== "turva" ? "secondary" : "secondary-turva", margin: "none", accessibleLabel: this.accessibleLabels.first_page, onClick: e => this.jumpToStart(e), theme: this.theme, url: this.processedPageLinks ? this.processedPageLinks[0] : undefined }, h("div", { key: '4631477be8ebc0c294f0aadec56efd0dc56c727f', class: "duet-pagination-page-number" }, "1"))), h("li", { key: '67268023a93c95fa305033c938cda65456f1bdf0', class: "duet-pagination-item", role: "menuitem", part: "navigation-section" }, h("duet-button", { key: 'e9fe07279987c58857d72d70008998f859d7b531', disabled: this.disabled, class: "duet-pagination-link duet-pagination-link-dots-back", "center-text": "true", color: this.theme !== "turva" ? "secondary" : "secondary-turva", variation: "plain", margin: "none", accessibleLabel: this.accessibleLabels.prev_section.replace("{0}", `${this.visibleItems}`), onClick: e => this.sectionClickHandler(e, -1), theme: this.theme }, h("div", { key: 'b01ec5da3a5355fb19d810bb67c25f5063fd3c3e', class: "duet-pagination-page-number", "aria-hidden": "true" }, "\u2026"))))), (this.shouldDisplayNavigation() && this.renderPageNumbers()) || this.renderSelect(), (this.internalSectionIndex + 1) * this.visibleItems < this.totalPages &&
412
+ this.shouldDisplayNavigation() && (h(Fragment, { key: '93b37ef102d9d74bf259b0da952e249df751806f' }, (this.internalSectionIndex + 1) * this.visibleItems !== this.totalPages - 1 && (h("li", { key: '49a99877b3ef31c365edcd87ad3853ff0bdd2e06', class: "duet-pagination-item", role: "menuitem", part: "navigation-section" }, h("duet-button", { key: '7a61e3153910f73b9b5ca458c84c0b5690c37a7a', disabled: this.disabled, class: "duet-pagination-link duet-pagination-link-dots-forward", "center-text": "true", color: this.theme !== "turva" ? "secondary" : "secondary-turva", variation: "plain", margin: "none", accessibleLabel: this.accessibleLabels.next_section.replace("{0}", `${this.visibleItems}`), onClick: e => this.sectionClickHandler(e, 1), theme: this.theme }, h("div", { key: '54230cb78461870c410262951dea3591979e476f', class: "duet-pagination-page-number", "aria-hidden": "true" }, "\u2026")))), h("li", { key: '6a218768ef3d2f4f19bc763704ca4ecf640ac953', class: "duet-pagination-item", role: "menuitem", part: "navigation-jump" }, h("duet-button", { key: '13b446158c56459c4193f8a56915e393a32e85bd', disabled: this.disabled, class: "duet-pagination-link duet-pagination-link-jump-forward", "center-text": "true", color: this.theme !== "turva" ? "secondary" : "secondary-turva", variation: "plain", margin: "none", accessibleLabel: this.accessibleLabels.last_page, onClick: e => this.jumpToEnd(e), theme: this.theme, url: this.processedPageLinks
413
413
  ? this.processedPageLinks[this.processedPageLinks.length - 1]
414
- : undefined }, h("div", { key: '01808887dfd64e716f50b336d7347e2b2b3bd40f', class: "duet-pagination-page-number" }, this.totalPages))))), h("li", { key: '417732a79f9d070cd3ccd0dfc79bbc300c30e60c', class: {
414
+ : undefined }, h("div", { key: '372d0d315cbc8ac6edc3bfae39220c446c6d6a98', class: "duet-pagination-page-number" }, this.totalPages))))), h("li", { key: '0638ff6dfc64a693f0595137ad8cd393489d4a8d', class: {
415
415
  "duet-pagination-page-button": true,
416
416
  "duet-pagination-button-last": true,
417
- }, role: "menuitem", part: "navigation-arrow" }, h("duet-action-button", { key: '0fdb57959080ef0126266df23717517b6f5be405', disabled: !!((this.current === this.totalPages &&
417
+ }, role: "menuitem", part: "navigation-arrow" }, h("duet-action-button", { key: 'd7595281e09ac50160ce945f85bea6315e01621d', disabled: !!((this.current === this.totalPages &&
418
418
  this.internalSectionIndex === Math.ceil(this.totalPages / this.visibleItems) - 1) ||
419
- (this.current === this.totalPages && this.processedPageLinks)) || this.disabled, class: "duet-date-dialog-next", "accessible-label": this.accessibleLabels.next_page, title: this.accessibleLabels.next_page, onClick: e => this.onMouseHandler(e, 1), "icon-name": "action-move-to-next", theme: this.theme, url: this.processedPageLinks ? this.processedPageLinks[this.current] : undefined })), (this.variation === "compact" || this.matchesCompactBreakpoint) && (h("li", { key: 'c8d1ff36a756d28252a339e9972088d7e451f54b', class: {
419
+ (this.current === this.totalPages && this.processedPageLinks)) || this.disabled, class: "duet-date-dialog-next", "accessible-label": this.accessibleLabels.next_page, title: this.accessibleLabels.next_page, onClick: e => this.onMouseHandler(e, 1), "icon-name": "action-move-to-next", theme: this.theme, url: this.processedPageLinks ? this.processedPageLinks[this.current] : undefined })), (this.variation === "compact" || this.matchesCompactBreakpoint) && (h("li", { key: 'f2c14e79716cbd0e8876b4f3a41d96f6e4c93003', class: {
420
420
  "duet-pagination-page-button": true,
421
421
  "duet-pagination-button-last": true,
422
- }, role: "menuitem", part: "navigation-arrow" }, h("duet-action-button", { key: '7e6029710b0c761b62a21f7aabab346cfe318957', disabled: (this.current === this.totalPages &&
422
+ }, role: "menuitem", part: "navigation-arrow" }, h("duet-action-button", { key: '96c1da12be49a1062bf008da7829eb6bb030ae66', disabled: (this.current === this.totalPages &&
423
423
  this.internalSectionIndex === Math.ceil(this.totalPages / this.visibleItems) - 1) ||
424
424
  this.disabled, accessibleLabel: this.accessibleLabels.last_page, title: this.accessibleLabels.last_page, onClick: e => this.jumpToEnd(e), "icon-name": "action-move-to-last", theme: this.theme, url: this.processedPageLinks ? this.processedPageLinks[this.totalPages - 1] : undefined })))))));
425
425
  }
@@ -0,0 +1,98 @@
1
+ :host {
2
+ box-sizing: border-box;
3
+ padding: 0;
4
+ margin: 0;
5
+ background: transparent;
6
+ border: 0;
7
+ -moz-appearance: none;
8
+ -webkit-appearance: none;
9
+ appearance: none;
10
+ position: relative;
11
+ display: block;
12
+ width: 100%;
13
+ margin: 8px 0 20px 0;
14
+ }
15
+ @media (min-width: 36em) {
16
+ :host {
17
+ margin: 12px 0 28px 0;
18
+ }
19
+ }
20
+ :host .duet-m-0 {
21
+ margin: 0 !important;
22
+ }
23
+
24
+ .duet-panel {
25
+ font-family: "localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
26
+ color: rgb(8, 42, 77);
27
+ background-color: rgb(255, 255, 255);
28
+ border: 0 solid rgb(212, 223, 229);
29
+ border-radius: 16px;
30
+ }
31
+ .duet-panel.duet-theme-turva {
32
+ font-family: "turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
33
+ color: rgb(23, 28, 58);
34
+ border-color: rgb(222, 224, 228);
35
+ }
36
+ .duet-panel.padding-small {
37
+ padding: 16px;
38
+ border-radius: 12px;
39
+ }
40
+ @media (min-width: 36em) {
41
+ .duet-panel.padding-small {
42
+ padding: 20px;
43
+ }
44
+ }
45
+ .duet-panel.padding-medium {
46
+ padding: 20px;
47
+ }
48
+ @media (min-width: 36em) {
49
+ .duet-panel.padding-medium {
50
+ padding: 28px;
51
+ }
52
+ }
53
+ .duet-panel.padding-large {
54
+ padding: 28px;
55
+ }
56
+ @media (min-width: 36em) {
57
+ .duet-panel.padding-large {
58
+ padding: 36px;
59
+ }
60
+ }
61
+ .duet-panel.border {
62
+ border-width: 1px;
63
+ }
64
+ .duet-panel.secondary {
65
+ background-color: rgb(245, 248, 250);
66
+ }
67
+ .duet-panel.secondary.duet-theme-turva {
68
+ background-color: rgb(245, 247, 250);
69
+ }
70
+ .duet-panel.accent {
71
+ background-color: rgb(240, 247, 250);
72
+ border-color: rgb(198, 225, 238);
73
+ }
74
+ .duet-panel.accent.duet-theme-turva {
75
+ background-color: rgb(245, 247, 250);
76
+ border-color: rgb(199, 202, 207);
77
+ }
78
+ .duet-panel.accent.secondary {
79
+ background-color: rgb(217, 236, 245);
80
+ }
81
+ .duet-panel.accent.secondary.duet-theme-turva {
82
+ background-color: rgb(222, 224, 228);
83
+ }
84
+
85
+ :host(.duet-theme-turva2) .duet-panel.duet-theme-turva {
86
+ color: #172a3b;
87
+ border-color: #d4dde2;
88
+ }
89
+ :host(.duet-theme-turva2) .duet-panel.duet-theme-turva.secondary {
90
+ background-color: #f5f6f7;
91
+ }
92
+ :host(.duet-theme-turva2) .duet-panel.duet-theme-turva.accent {
93
+ background-color: #fdf7f2;
94
+ border-color: #f1cab2;
95
+ }
96
+ :host(.duet-theme-turva2) .duet-panel.duet-theme-turva.accent.secondary {
97
+ background-color: #fbe1d1;
98
+ }
@@ -0,0 +1,234 @@
1
+ /*!
2
+ * Built with Duet Design System
3
+ */
4
+ import { h, Host } from "@stencil/core";
5
+ import { inheritGlobalTheme } from "../../common/themeable-component";
6
+ export class DuetPanel {
7
+ constructor() {
8
+ /**
9
+ * Theme of the panel.
10
+ */
11
+ this.theme = "";
12
+ /**
13
+ * Controls the padding of the component. Padding is automatically responsive.
14
+ */
15
+ this.padding = "medium";
16
+ /**
17
+ * The color variation of the panel. Combination of palette ("default", "accent") and palette variation ("primary",
18
+ * "secondary"). You can ommit "default" and "primary" - they are the defaults.
19
+ */
20
+ this.variation = "";
21
+ /**
22
+ * Controls the margin of the component.
23
+ */
24
+ this.margin = "auto";
25
+ }
26
+ /**
27
+ * Component lifecycle events.
28
+ */
29
+ componentWillLoad() {
30
+ inheritGlobalTheme(this);
31
+ }
32
+ render() {
33
+ return (h(Host, { key: 'ce2c9ad02ea4b482491120c4564322a7ab1b97c8' }, h("section", { key: '058ae2c34b915888645f0a0fbce8c905f9a99330', "aria-label": this.accessibleLabel, "aria-labelledby": this.accessibleLabelledBy, "aria-describedby": this.accessibleDescribedBy, class: {
34
+ "duet-panel": true,
35
+ "duet-theme-turva": this.theme === "turva",
36
+ [this.variation.split("-")[0]]: true,
37
+ [this.variation.split("-")[1]]: true,
38
+ [`padding-${this.padding}`]: true,
39
+ border: this.border,
40
+ "duet-m-0": this.margin === "none",
41
+ } }, h("slot", { key: 'eabfa138724309e78227fb8e48507a2a065c5822' }))));
42
+ }
43
+ static get is() { return "duet-panel"; }
44
+ static get encapsulation() { return "shadow"; }
45
+ static get originalStyleUrls() {
46
+ return {
47
+ "$": ["duet-panel.scss"]
48
+ };
49
+ }
50
+ static get styleUrls() {
51
+ return {
52
+ "$": ["duet-panel.css"]
53
+ };
54
+ }
55
+ static get properties() {
56
+ return {
57
+ "theme": {
58
+ "type": "string",
59
+ "attribute": "theme",
60
+ "mutable": true,
61
+ "complexType": {
62
+ "original": "DuetTheme",
63
+ "resolved": "\"\" | \"default\" | \"turva\"",
64
+ "references": {
65
+ "DuetTheme": {
66
+ "location": "import",
67
+ "path": "../../common-types",
68
+ "id": "src/common-types.d.ts::DuetTheme"
69
+ }
70
+ }
71
+ },
72
+ "required": false,
73
+ "optional": false,
74
+ "docs": {
75
+ "tags": [],
76
+ "text": "Theme of the panel."
77
+ },
78
+ "getter": false,
79
+ "setter": false,
80
+ "reflect": false,
81
+ "defaultValue": "\"\""
82
+ },
83
+ "padding": {
84
+ "type": "string",
85
+ "attribute": "padding",
86
+ "mutable": false,
87
+ "complexType": {
88
+ "original": "\"small\" | \"medium\" | \"large\"",
89
+ "resolved": "\"large\" | \"medium\" | \"small\"",
90
+ "references": {}
91
+ },
92
+ "required": false,
93
+ "optional": false,
94
+ "docs": {
95
+ "tags": [],
96
+ "text": "Controls the padding of the component. Padding is automatically responsive."
97
+ },
98
+ "getter": false,
99
+ "setter": false,
100
+ "reflect": false,
101
+ "defaultValue": "\"medium\""
102
+ },
103
+ "variation": {
104
+ "type": "string",
105
+ "attribute": "variation",
106
+ "mutable": false,
107
+ "complexType": {
108
+ "original": "DuetPanelVariation",
109
+ "resolved": "\"\" | \"accent\" | \"accent-primary\" | \"accent-secondary\" | \"default\" | \"default-primary\" | \"default-secondary\" | \"primary\" | \"primary-accent\" | \"primary-default\" | \"secondary\" | \"secondary-accent\" | \"secondary-default\"",
110
+ "references": {
111
+ "DuetPanelVariation": {
112
+ "location": "local",
113
+ "path": "/Users/juha-matti.laaksonen/duetds/packages/components/src/components/duet-panel/duet-panel.tsx",
114
+ "id": "src/components/duet-panel/duet-panel.tsx::DuetPanelVariation"
115
+ }
116
+ }
117
+ },
118
+ "required": false,
119
+ "optional": false,
120
+ "docs": {
121
+ "tags": [],
122
+ "text": "The color variation of the panel. Combination of palette (\"default\", \"accent\") and palette variation (\"primary\",\n\"secondary\"). You can ommit \"default\" and \"primary\" - they are the defaults."
123
+ },
124
+ "getter": false,
125
+ "setter": false,
126
+ "reflect": false,
127
+ "defaultValue": "\"\""
128
+ },
129
+ "margin": {
130
+ "type": "string",
131
+ "attribute": "margin",
132
+ "mutable": false,
133
+ "complexType": {
134
+ "original": "DuetMargin",
135
+ "resolved": "\"auto\" | \"none\"",
136
+ "references": {
137
+ "DuetMargin": {
138
+ "location": "import",
139
+ "path": "../../common-types",
140
+ "id": "src/common-types.d.ts::DuetMargin"
141
+ }
142
+ }
143
+ },
144
+ "required": false,
145
+ "optional": false,
146
+ "docs": {
147
+ "tags": [],
148
+ "text": "Controls the margin of the component."
149
+ },
150
+ "getter": false,
151
+ "setter": false,
152
+ "reflect": false,
153
+ "defaultValue": "\"auto\""
154
+ },
155
+ "border": {
156
+ "type": "boolean",
157
+ "attribute": "border",
158
+ "mutable": false,
159
+ "complexType": {
160
+ "original": "boolean",
161
+ "resolved": "boolean",
162
+ "references": {}
163
+ },
164
+ "required": false,
165
+ "optional": false,
166
+ "docs": {
167
+ "tags": [],
168
+ "text": "Set this attribute to draw a border around the panel."
169
+ },
170
+ "getter": false,
171
+ "setter": false,
172
+ "reflect": false
173
+ },
174
+ "accessibleLabel": {
175
+ "type": "string",
176
+ "attribute": "accessible-label",
177
+ "mutable": false,
178
+ "complexType": {
179
+ "original": "string",
180
+ "resolved": "string",
181
+ "references": {}
182
+ },
183
+ "required": false,
184
+ "optional": false,
185
+ "docs": {
186
+ "tags": [],
187
+ "text": "Adds accessible label for the panel that is only shown for screen readers."
188
+ },
189
+ "getter": false,
190
+ "setter": false,
191
+ "reflect": false
192
+ },
193
+ "accessibleLabelledBy": {
194
+ "type": "string",
195
+ "attribute": "accessible-labelled-by",
196
+ "mutable": false,
197
+ "complexType": {
198
+ "original": "string",
199
+ "resolved": "string",
200
+ "references": {}
201
+ },
202
+ "required": false,
203
+ "optional": false,
204
+ "docs": {
205
+ "tags": [],
206
+ "text": "Indicates the id of a component that labels the panel."
207
+ },
208
+ "getter": false,
209
+ "setter": false,
210
+ "reflect": false
211
+ },
212
+ "accessibleDescribedBy": {
213
+ "type": "string",
214
+ "attribute": "accessible-described-by",
215
+ "mutable": false,
216
+ "complexType": {
217
+ "original": "string",
218
+ "resolved": "string",
219
+ "references": {}
220
+ },
221
+ "required": false,
222
+ "optional": false,
223
+ "docs": {
224
+ "tags": [],
225
+ "text": "Indicates the id of a component that describes the panel."
226
+ },
227
+ "getter": false,
228
+ "setter": false,
229
+ "reflect": false
230
+ }
231
+ };
232
+ }
233
+ static get elementRef() { return "element"; }
234
+ }
@@ -51,7 +51,7 @@ export class DuetParagraph {
51
51
  const color = getColorByName(this.color);
52
52
  // aria-describedby is to fix accessibility issue in Chrome where duet-paragraphs
53
53
  // are not announced when placed inside duet-modal
54
- return (h(Host, { key: 'b7f1df2b017984133517a2742be5e5444f1e6894', "aria-describedby": this.id }, h("p", { key: '607059f9661102231b510b5923e0c71472f22804', id: this.id, class: {
54
+ return (h(Host, { key: '844328a8133f4abbbbd2424b38cc14b019fd23d4', "aria-describedby": this.id }, h("p", { key: 'dfd78aa829ee142323997f6bebde60ac47bb98e7', id: this.id, class: {
55
55
  "duet-paragraph": true,
56
56
  "duet-paragraph-small": this.size === "small",
57
57
  "duet-paragraph-semi-bold": this.weight === "semi-bold",
@@ -59,7 +59,7 @@ export class DuetParagraph {
59
59
  "duet-m-0": this.margin === "none",
60
60
  [this.variation]: true,
61
61
  "duet-theme-turva": this.theme === "turva",
62
- }, style: { color }, part: "duet-paragraph" }, h("slot", { key: 'e5e6da5cbb23f9fb7bfc3773c3b8e79666054878' }))));
62
+ }, style: { color }, part: "duet-paragraph" }, h("slot", { key: 'f014b5496f1b791cc2879b09bd12dd85649fb0e3' }))));
63
63
  }
64
64
  static get is() { return "duet-paragraph"; }
65
65
  static get encapsulation() { return "shadow"; }
@@ -101,11 +101,11 @@ export class DuetPopupMenuItem {
101
101
  };
102
102
  // Without the role ternary Safari/iPhone wouldn't announce the label for role menuitem.
103
103
  // This is a tradeoff and now Safari announces these items as buttons and links with the label.
104
- return (h(Host, { key: '33503307cc147ac1f0ec51265bac886e7267edcf', role: this.accessibleRole === "menuitem" && this.isSafariBrowser ? null : this.accessibleRole }, h(TagName, { key: '0ce2340e9aad19f55f3bfc03c160a8d484a28b5e', ref: element => (this.itemElement = element), tabIndex: this.accessibleRole === "listitem" ? 0 : -1, onFocus: this.onFocus, onBlur: this.onBlur, role: `${TagName === "a" ? "link" : "button"}`, "aria-label": this.accessibleLabel, class: classes, value: this.value, href: this.url, target: this.external ? "_blank" : undefined, rel: this.external ? "noopener" : undefined, lang: TagName === "button" ? undefined : this.targetLanguage, hreflang: TagName === "button" ? undefined : this.targetLanguage }, this.leadingIcon && (h("duet-icon", { key: 'db1d518461e1e63e4dbcd05a22a7f1b8b7ef94db', name: this.leadingIcon, size: "x-small", color: this.leadingIconColor ? this.leadingIconColor : "currentColor", class: "duet-popup-menu-item-leading", margin: "none" })), h("span", { key: '511507d031e8f5e418010445e9a694a3ab9deb37', class: "duet-popup-menu-item-label" }, h("slot", { key: 'a03c6bd4fbb5c14d176185d902287bad135c1a89' })), (this.trailingIcon || this.active || (this.url && this.external)) && (h("duet-icon", { key: '8985f3bc0b8a1dce8d1c798951de645ad528218c', name: this.url && this.external
104
+ return (h(Host, { key: '8e31b4732e423f363115f217c220217f85a3899a', role: this.accessibleRole === "menuitem" && this.isSafariBrowser ? null : this.accessibleRole }, h(TagName, { key: '4c9a0b3966b5b11b3f8286fdc7bbe83ce93f5df9', ref: element => (this.itemElement = element), tabIndex: this.accessibleRole === "listitem" ? 0 : -1, onFocus: this.onFocus, onBlur: this.onBlur, role: `${TagName === "a" ? "link" : "button"}`, "aria-label": this.accessibleLabel, class: classes, value: this.value, href: this.url, target: this.external ? "_blank" : undefined, rel: this.external ? "noopener" : undefined, lang: TagName === "button" ? undefined : this.targetLanguage, hreflang: TagName === "button" ? undefined : this.targetLanguage }, this.leadingIcon && (h("duet-icon", { key: 'decd1fdc669965de735b9538d8256ea34b7d12b7', name: this.leadingIcon, size: "x-small", color: this.leadingIconColor ? this.leadingIconColor : "currentColor", class: "duet-popup-menu-item-leading", margin: "none" })), h("span", { key: 'bd28f3d116506e2168fc3e5530d086fa0dd0edcd', class: "duet-popup-menu-item-label" }, h("slot", { key: '0aebe6bcf50f8fbbd7d89bbdc0c4f484f67adb6d' })), (this.trailingIcon || this.active || (this.url && this.external)) && (h("duet-icon", { key: '616a80b13b29eb90f003a163bbcded07a551b58c', name: this.url && this.external
105
105
  ? newWindowIcon.title
106
106
  : this.active
107
107
  ? "messaging-checked-small"
108
- : this.trailingIcon, size: (this.url && this.external) || this.active ? "xx-small" : "x-small", color: "currentColor", class: "duet-popup-menu-item-trailing", margin: "none" })), this.trailingText && h("span", { key: '24b2f476192cc27482f54cfaf4e8cc0ad851afd6', class: "duet-popup-menu-item-trailing" }, this.trailingText))));
108
+ : this.trailingIcon, size: (this.url && this.external) || this.active ? "xx-small" : "x-small", color: "currentColor", class: "duet-popup-menu-item-trailing", margin: "none" })), this.trailingText && h("span", { key: '74e587e4cc5c0c431f068bb7974ee8c385cf4259', class: "duet-popup-menu-item-trailing" }, this.trailingText))));
109
109
  }
110
110
  static get is() { return "duet-popup-menu-item"; }
111
111
  static get encapsulation() { return "shadow"; }
@@ -4,7 +4,7 @@
4
4
  import { h, Host } from "@stencil/core";
5
5
  import { inheritGlobalTheme } from "../../common/themeable-component";
6
6
  import { checkNamedSlotElement, hasSlot } from "../../utils/slot-utils";
7
- import { getColorByName } from "../../utils/token-utils";
7
+ import { getColorByName, postfixTheme } from "../../utils/token-utils";
8
8
  /**
9
9
  * @slot pre-heading - Slot for pre-heading content.
10
10
  * @slot heading - Slot for heading content. Only span should be used in this slot.
@@ -70,12 +70,12 @@ export class DuetPromoCard {
70
70
  backgroundColor: backgroundColor ? backgroundColor : "none",
71
71
  };
72
72
  const TagName = this.url ? "a" : "div";
73
- return (h(Host, { key: '3a5662e6386cd667e1d45e2cab994aa5bd1b773a', class: { "duet-m-0": this.margin === "none" } }, h("aside", { key: '5728664532e387b3f7efcf2218d1e67d44dd1b10', class: {
73
+ return (h(Host, { key: '427288a23a020a8ba83d29535a990685e56136cd', class: { "duet-m-0": this.margin === "none" } }, h("aside", { key: 'b34e5beb86c428cf1d23c252c9867d8109fa28c9', class: {
74
74
  "duet-promo-card": true,
75
75
  "duet-theme-turva": this.theme === "turva",
76
76
  "no-bg-color": !this.backgroundColor,
77
77
  "duet-promo-card-link": !!this.url,
78
- }, style: bannerStyles }, h(TagName, { key: 'e480b0256b7a089d4303a5a6fa78fb525a4b2ae0', href: this.url, class: "content-wrapper", ref: element => (this.aOrDivElement = element) }, h("img", { key: '473b0bdfd6ae90a68ae7a04e0addc3fb402f8171', class: "image", src: this.image, alt: "", role: "presentation" }), h("div", { key: 'a542187fb985500d24aaa324f6a7c9269697d6e7', class: "content" }, this.hasPreHeadingSlot && (h("div", { key: '7a24d8d814e13f3be34cfaee6eb1bbbf645231ba', class: "pre-heading" }, h("slot", { key: 'dd4c3e0b6cac6b110eca89c23dcaeb8baeb50d7b', name: "pre-heading" }))), this.hasHeadingSlot && (h("div", { key: '0e4074478c99a3887522e209a85da659a324d286', class: "heading" }, h("duet-heading", { key: 'a2e8a5c15c81c90385609ff4ddbc2fb5742ed515', theme: this.theme, level: this.headingLevel, "visual-level": "h3", margin: "none", color: this.textColor }, h("span", { key: '8b593e2814d241d19936d9e6ba2007f177ea9396' }, h("slot", { key: 'cf167b6e704d037c49c4b3b2a7c1c29296e95ab7', name: "heading" }))))), this.hasDescriptionSlot && (h("div", { key: '719fe7ab4c0782ea29bbe56c25dc8abdb850ecbe', class: "description" }, h("duet-paragraph", { key: 'afe3a70bc62b79e86debb6b1a8666e7977072621', theme: this.theme, margin: "none", color: this.textColor }, h("span", { key: 'a07701bd187bfc012874cf3c4db5efb4b43dc89f' }, h("slot", { key: '1624a69fcacc0e7139c666a92cc27ae945531186', name: "description" }))))), this.hasActionSlot && (h("div", { key: '23eb8e15458d40820d6cb0db31b93dc7939b5335', class: "action" }, h("slot", { key: 'd66fd22007273332d4d3f6757662e8316a477f3f', name: "action" }))))))));
78
+ }, style: bannerStyles }, h(TagName, { key: '3d17bf1dc1fa3bc580ef7feb08e1d749dafaec34', href: this.url, class: "content-wrapper", ref: element => (this.aOrDivElement = element) }, h("img", { key: 'ba518b8e4449f267ebef440bed06ebb1349d90c5', class: "image", src: this.image, alt: "", role: "presentation" }), h("div", { key: '638d94d31bb60bec7019ed852f70269f73241d7e', class: "content" }, this.hasPreHeadingSlot && (h("div", { key: '08e8bb35ced5d1f6fc9a442c017e96f3294c3341', class: "pre-heading" }, h("slot", { key: '3cc1c6bcaeea2e811bf8984b0574cc7086e997c3', name: "pre-heading" }))), this.hasHeadingSlot && (h("div", { key: 'edfb7d324d0d5f68392b7b4b2386183cad567698', class: "heading" }, h("duet-heading", { key: '57820fcebf0e3c172c232611843679bb47e41e61', theme: this.theme, level: this.headingLevel, "visual-level": "h3", margin: "none", color: postfixTheme(this.textColor, this.theme) }, h("span", { key: 'e2b7014be3e8d44f00a418f76e1f9959a783e9e6' }, h("slot", { key: '094c582e2f0dfc6055563892bfa02dd9d5de4261', name: "heading" }))))), this.hasDescriptionSlot && (h("div", { key: '2af2637554173d2c40ad28bee0e589b6dc92a19c', class: "description" }, h("duet-paragraph", { key: 'f9a47265148a494e1803f5493ab359cfe4abb895', theme: this.theme, margin: "none", color: postfixTheme(this.textColor, this.theme) }, h("span", { key: '42af2e9a0d151bb22d303f453d481bb69891746c' }, h("slot", { key: '3a4173db824f27939a8abc88124a8751d10cbc71', name: "description" }))))), this.hasActionSlot && (h("div", { key: '59a84926d8d346d724980bef00e42a48a44574d1', class: "action" }, h("slot", { key: '52109f0d34365be7e7fe8ec5091ee5ddc5c83bce', name: "action" }))))))));
79
79
  }
80
80
  static get is() { return "duet-promo-card"; }
81
81
  static get encapsulation() { return "shadow"; }