@duetds/components 6.0.3 → 6.0.5

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 (434) hide show
  1. package/hydrate/index.js +77 -70
  2. package/lib/cjs/duet-action-button.cjs.entry.js +3 -3
  3. package/lib/cjs/duet-alert.cjs.entry.js +1 -1
  4. package/lib/cjs/duet-badge.cjs.entry.js +1 -1
  5. package/lib/cjs/duet-breadcrumb.cjs.entry.js +1 -1
  6. package/lib/cjs/duet-breadcrumbs.cjs.entry.js +1 -1
  7. package/lib/cjs/duet-button_2.cjs.entry.js +3 -3
  8. package/lib/cjs/duet-caption_4.cjs.entry.js +3 -3
  9. package/lib/cjs/duet-card.cjs.entry.js +3 -3
  10. package/lib/cjs/duet-checkbox.cjs.entry.js +1 -1
  11. package/lib/cjs/duet-choice_2.cjs.entry.js +10 -9
  12. package/lib/cjs/duet-collapsible.cjs.entry.js +2 -2
  13. package/lib/cjs/duet-combobox.cjs.entry.js +1 -1
  14. package/lib/cjs/duet-cookie-consent.cjs.entry.js +1 -1
  15. package/lib/cjs/duet-date-picker.cjs.entry.js +2 -2
  16. package/lib/cjs/duet-divider_2.cjs.entry.js +1 -1
  17. package/lib/cjs/duet-editable-table_3.cjs.entry.js +17 -14
  18. package/lib/cjs/duet-empty-state.cjs.entry.js +1 -1
  19. package/lib/cjs/duet-fieldset.cjs.entry.js +1 -1
  20. package/lib/cjs/duet-footer.cjs.entry.js +1 -1
  21. package/lib/cjs/duet-grid_2.cjs.entry.js +2 -2
  22. package/lib/cjs/duet-header_2.cjs.entry.js +3 -3
  23. package/lib/cjs/duet-hero.cjs.entry.js +1 -1
  24. package/lib/cjs/duet-icon.cjs.entry.js +3 -3
  25. package/lib/cjs/duet-input_2.cjs.entry.js +1 -1
  26. package/lib/cjs/duet-layout.cjs.entry.js +1 -1
  27. package/lib/cjs/duet-list_2.cjs.entry.js +1 -1
  28. package/lib/cjs/duet-modal.cjs.entry.js +2 -2
  29. package/lib/cjs/duet-notification_2.cjs.entry.js +1 -1
  30. package/lib/cjs/duet-number-input.cjs.entry.js +1 -1
  31. package/lib/cjs/duet-pagination_2.cjs.entry.js +25 -27
  32. package/lib/cjs/duet-progress.cjs.entry.js +1 -1
  33. package/lib/cjs/duet-radio_2.cjs.entry.js +1 -1
  34. package/lib/cjs/duet-range-slider.cjs.entry.js +2 -2
  35. package/lib/cjs/duet-scrollable_3.cjs.entry.js +1 -1
  36. package/lib/cjs/duet-select.cjs.entry.js +1 -1
  37. package/lib/cjs/duet-step_2.cjs.entry.js +1 -1
  38. package/lib/cjs/duet-textarea.cjs.entry.js +1 -1
  39. package/lib/cjs/duet-toggle.cjs.entry.js +1 -1
  40. package/lib/cjs/duet-tooltip.cjs.entry.js +1 -1
  41. package/lib/cjs/duet-tray.cjs.entry.js +2 -2
  42. package/lib/cjs/duet-upload-aria-status.cjs.entry.js +1 -1
  43. package/lib/cjs/duet-visually-hidden.cjs.entry.js +1 -1
  44. package/lib/cjs/duet.cjs.js +1 -1
  45. package/lib/cjs/{focus-utils-15207057.js → focus-utils-bbba1f98.js} +1 -1
  46. package/lib/cjs/{index-28a9133b.js → index-af927d29.js} +1 -1
  47. package/lib/cjs/loader.cjs.js +1 -1
  48. package/lib/cjs/{token-utils-fef5b4eb.js → token-utils-f6e2f4ef.js} +1 -1
  49. package/lib/cjs/{tokens-29450bcb.js → tokens-4c69b122.js} +18 -15
  50. package/lib/cjs/{tokens.module-ef598645.js → tokens.module-1bb2d45e.js} +12 -10
  51. package/lib/collection/components/duet-choice/duet-choice.js +4 -4
  52. package/lib/collection/components/duet-choice-group/duet-choice-group.js +4 -3
  53. package/lib/collection/components/duet-range-stepper/duet-range-stepper.js +25 -27
  54. package/lib/collection/components/duet-upload/duet-upload.js +18 -15
  55. package/lib/dist-custom-elements/duet-action-button.d.ts +11 -0
  56. package/lib/dist-custom-elements/duet-action-button.js +9 -0
  57. package/lib/dist-custom-elements/duet-alert.d.ts +11 -0
  58. package/lib/dist-custom-elements/duet-alert.js +9 -0
  59. package/lib/dist-custom-elements/duet-badge.d.ts +11 -0
  60. package/lib/dist-custom-elements/duet-badge.js +9 -0
  61. package/lib/dist-custom-elements/duet-breadcrumb.d.ts +11 -0
  62. package/lib/dist-custom-elements/duet-breadcrumb.js +73 -0
  63. package/lib/dist-custom-elements/duet-breadcrumbs.d.ts +11 -0
  64. package/lib/dist-custom-elements/duet-breadcrumbs.js +90 -0
  65. package/lib/dist-custom-elements/duet-button.d.ts +11 -0
  66. package/lib/dist-custom-elements/duet-button.js +9 -0
  67. package/lib/dist-custom-elements/duet-caption.d.ts +11 -0
  68. package/lib/dist-custom-elements/duet-caption.js +9 -0
  69. package/lib/dist-custom-elements/duet-card.d.ts +11 -0
  70. package/lib/dist-custom-elements/duet-card.js +190 -0
  71. package/lib/dist-custom-elements/duet-checkbox.d.ts +11 -0
  72. package/lib/dist-custom-elements/duet-checkbox.js +163 -0
  73. package/lib/dist-custom-elements/duet-choice-group.d.ts +11 -0
  74. package/lib/dist-custom-elements/duet-choice-group.js +227 -0
  75. package/lib/dist-custom-elements/duet-choice.d.ts +11 -0
  76. package/lib/dist-custom-elements/duet-choice.js +390 -0
  77. package/lib/dist-custom-elements/duet-collapsible.d.ts +11 -0
  78. package/lib/dist-custom-elements/duet-collapsible.js +170 -0
  79. package/lib/dist-custom-elements/duet-combobox.d.ts +11 -0
  80. package/lib/dist-custom-elements/duet-combobox.js +432 -0
  81. package/lib/dist-custom-elements/duet-cookie-consent.d.ts +11 -0
  82. package/lib/dist-custom-elements/duet-cookie-consent.js +94 -0
  83. package/lib/dist-custom-elements/duet-date-picker.d.ts +11 -0
  84. package/lib/dist-custom-elements/duet-date-picker.js +906 -0
  85. package/lib/dist-custom-elements/duet-divider.d.ts +11 -0
  86. package/lib/dist-custom-elements/duet-divider.js +9 -0
  87. package/lib/dist-custom-elements/duet-editable-table.d.ts +11 -0
  88. package/lib/dist-custom-elements/duet-editable-table.js +9 -0
  89. package/lib/dist-custom-elements/duet-empty-state.d.ts +11 -0
  90. package/lib/dist-custom-elements/duet-empty-state.js +9 -0
  91. package/lib/dist-custom-elements/duet-fieldset.d.ts +11 -0
  92. package/lib/dist-custom-elements/duet-fieldset.js +9 -0
  93. package/lib/dist-custom-elements/duet-footer.d.ts +11 -0
  94. package/lib/dist-custom-elements/duet-footer.js +199 -0
  95. package/lib/dist-custom-elements/duet-grid-item.d.ts +11 -0
  96. package/lib/dist-custom-elements/duet-grid-item.js +9 -0
  97. package/lib/dist-custom-elements/duet-grid.d.ts +11 -0
  98. package/lib/dist-custom-elements/duet-grid.js +9 -0
  99. package/lib/dist-custom-elements/duet-header.d.ts +11 -0
  100. package/lib/dist-custom-elements/duet-header.js +764 -0
  101. package/lib/dist-custom-elements/duet-heading.d.ts +11 -0
  102. package/lib/dist-custom-elements/duet-heading.js +9 -0
  103. package/lib/dist-custom-elements/duet-hero.d.ts +11 -0
  104. package/lib/dist-custom-elements/duet-hero.js +314 -0
  105. package/lib/dist-custom-elements/duet-icon.d.ts +11 -0
  106. package/lib/dist-custom-elements/duet-icon.js +9 -0
  107. package/lib/dist-custom-elements/duet-input.d.ts +11 -0
  108. package/lib/dist-custom-elements/duet-input.js +9 -0
  109. package/lib/dist-custom-elements/duet-label.d.ts +11 -0
  110. package/lib/dist-custom-elements/duet-label.js +9 -0
  111. package/lib/dist-custom-elements/duet-layout.d.ts +11 -0
  112. package/lib/dist-custom-elements/duet-layout.js +107 -0
  113. package/lib/dist-custom-elements/duet-link.d.ts +11 -0
  114. package/lib/dist-custom-elements/duet-link.js +9 -0
  115. package/lib/dist-custom-elements/duet-list-item.d.ts +11 -0
  116. package/lib/dist-custom-elements/duet-list-item.js +9 -0
  117. package/lib/dist-custom-elements/duet-list.d.ts +11 -0
  118. package/lib/dist-custom-elements/duet-list.js +9 -0
  119. package/lib/dist-custom-elements/duet-logo.d.ts +11 -0
  120. package/lib/dist-custom-elements/duet-logo.js +9 -0
  121. package/lib/dist-custom-elements/duet-modal.d.ts +11 -0
  122. package/lib/dist-custom-elements/duet-modal.js +331 -0
  123. package/lib/dist-custom-elements/duet-notification-drawer.d.ts +11 -0
  124. package/lib/dist-custom-elements/duet-notification-drawer.js +194 -0
  125. package/lib/dist-custom-elements/duet-notification.d.ts +11 -0
  126. package/lib/dist-custom-elements/duet-notification.js +114 -0
  127. package/lib/dist-custom-elements/duet-number-input.d.ts +11 -0
  128. package/lib/dist-custom-elements/duet-number-input.js +516 -0
  129. package/lib/dist-custom-elements/duet-pagination.d.ts +11 -0
  130. package/lib/dist-custom-elements/duet-pagination.js +396 -0
  131. package/lib/dist-custom-elements/duet-paragraph.d.ts +11 -0
  132. package/lib/dist-custom-elements/duet-paragraph.js +9 -0
  133. package/lib/dist-custom-elements/duet-progress.d.ts +11 -0
  134. package/lib/dist-custom-elements/duet-progress.js +9 -0
  135. package/lib/dist-custom-elements/duet-radio-group.d.ts +11 -0
  136. package/lib/dist-custom-elements/duet-radio-group.js +216 -0
  137. package/lib/dist-custom-elements/duet-radio.d.ts +11 -0
  138. package/lib/dist-custom-elements/duet-radio.js +167 -0
  139. package/lib/dist-custom-elements/duet-range-slider.d.ts +11 -0
  140. package/lib/dist-custom-elements/duet-range-slider.js +209 -0
  141. package/lib/dist-custom-elements/duet-range-stepper.d.ts +11 -0
  142. package/lib/dist-custom-elements/duet-range-stepper.js +223 -0
  143. package/lib/dist-custom-elements/duet-scrollable.d.ts +11 -0
  144. package/lib/dist-custom-elements/duet-scrollable.js +9 -0
  145. package/lib/dist-custom-elements/duet-select.d.ts +11 -0
  146. package/lib/dist-custom-elements/duet-select.js +9 -0
  147. package/lib/dist-custom-elements/duet-spacer.d.ts +11 -0
  148. package/lib/dist-custom-elements/duet-spacer.js +9 -0
  149. package/lib/dist-custom-elements/duet-spinner.d.ts +11 -0
  150. package/lib/dist-custom-elements/duet-spinner.js +9 -0
  151. package/lib/dist-custom-elements/duet-step.d.ts +11 -0
  152. package/lib/dist-custom-elements/duet-step.js +150 -0
  153. package/lib/dist-custom-elements/duet-stepper.d.ts +11 -0
  154. package/lib/dist-custom-elements/duet-stepper.js +164 -0
  155. package/lib/dist-custom-elements/duet-tab-group.d.ts +11 -0
  156. package/lib/dist-custom-elements/duet-tab-group.js +301 -0
  157. package/lib/dist-custom-elements/duet-tab.d.ts +11 -0
  158. package/lib/dist-custom-elements/duet-tab.js +59 -0
  159. package/lib/dist-custom-elements/duet-table.d.ts +11 -0
  160. package/lib/dist-custom-elements/duet-table.js +9 -0
  161. package/lib/dist-custom-elements/duet-textarea.d.ts +11 -0
  162. package/lib/dist-custom-elements/duet-textarea.js +297 -0
  163. package/lib/dist-custom-elements/duet-toggle.d.ts +11 -0
  164. package/lib/dist-custom-elements/duet-toggle.js +150 -0
  165. package/lib/dist-custom-elements/duet-tooltip.d.ts +11 -0
  166. package/lib/dist-custom-elements/duet-tooltip.js +9 -0
  167. package/lib/dist-custom-elements/duet-tray.d.ts +11 -0
  168. package/lib/dist-custom-elements/duet-tray.js +175 -0
  169. package/lib/dist-custom-elements/duet-upload-aria-status.d.ts +11 -0
  170. package/lib/dist-custom-elements/duet-upload-aria-status.js +9 -0
  171. package/lib/dist-custom-elements/duet-upload.d.ts +11 -0
  172. package/lib/dist-custom-elements/duet-upload.js +1514 -0
  173. package/lib/dist-custom-elements/duet-visually-hidden.d.ts +11 -0
  174. package/lib/dist-custom-elements/duet-visually-hidden.js +9 -0
  175. package/lib/dist-custom-elements/index.d.ts +26 -0
  176. package/lib/dist-custom-elements/index.js +37 -0
  177. package/lib/{esm/tokens-8ff8c570.js → dist-custom-elements/p-02305a1e.js} +18 -15
  178. package/lib/dist-custom-elements/p-0b3f675e.js +47 -0
  179. package/lib/{esm/focus-utils-559691b3.js → dist-custom-elements/p-0b8f16f1.js} +1 -1
  180. package/lib/dist-custom-elements/p-0ce83b83.js +154 -0
  181. package/lib/dist-custom-elements/p-0f5b2dfe.js +287 -0
  182. package/lib/dist-custom-elements/p-115c79b6.js +6 -0
  183. package/lib/dist-custom-elements/p-12721178.js +57 -0
  184. package/lib/dist-custom-elements/p-166d7b9c.js +199 -0
  185. package/lib/dist-custom-elements/p-1ad6b04e.js +1666 -0
  186. package/lib/dist-custom-elements/p-21887c28.js +275 -0
  187. package/lib/dist-custom-elements/p-24c2ac51.js +114 -0
  188. package/lib/dist-custom-elements/p-266411cf.js +307 -0
  189. package/lib/dist-custom-elements/p-2bb345c0.js +193 -0
  190. package/lib/dist-custom-elements/p-32a67b55.js +87 -0
  191. package/lib/dist-custom-elements/p-4c52333e.js +341 -0
  192. package/lib/dist-custom-elements/p-4ebf1618.js +13 -0
  193. package/lib/dist-custom-elements/p-4f516732.js +214 -0
  194. package/lib/dist-custom-elements/p-53a0c93d.js +37 -0
  195. package/lib/dist-custom-elements/p-544d933d.js +61 -0
  196. package/lib/dist-custom-elements/p-56118313.js +53 -0
  197. package/lib/dist-custom-elements/p-56b5945f.js +160 -0
  198. package/lib/dist-custom-elements/p-5a9d75e1.js +55 -0
  199. package/lib/dist-custom-elements/p-692cc270.js +125 -0
  200. package/lib/dist-custom-elements/p-6cae0682.js +75 -0
  201. package/lib/dist-custom-elements/p-704245ef.js +9 -0
  202. package/lib/dist-custom-elements/p-76f00bd5.js +10 -0
  203. package/lib/dist-custom-elements/p-7a003d73.js +37 -0
  204. package/lib/dist-custom-elements/p-7f5ad01d.js +64 -0
  205. package/lib/{esm/token-utils-df78f4d8.js → dist-custom-elements/p-86faf728.js} +1 -1
  206. package/lib/dist-custom-elements/p-8f69f7ca.js +428 -0
  207. package/lib/dist-custom-elements/p-92012dcc.js +71 -0
  208. package/lib/dist-custom-elements/p-9af8e9da.js +70 -0
  209. package/lib/dist-custom-elements/p-a087e30a.js +86 -0
  210. package/lib/dist-custom-elements/p-b9058029.js +138 -0
  211. package/lib/dist-custom-elements/p-bd779757.js +184 -0
  212. package/lib/dist-custom-elements/p-c0469b33.js +133 -0
  213. package/lib/dist-custom-elements/p-c1325e35.js +11 -0
  214. package/lib/dist-custom-elements/p-c8d44e6d.js +87 -0
  215. package/lib/dist-custom-elements/p-cfab50b5.js +110 -0
  216. package/lib/dist-custom-elements/p-d004da5f.js +6 -0
  217. package/lib/dist-custom-elements/p-d11287e1.js +129 -0
  218. package/lib/dist-custom-elements/p-d4c234ed.js +390 -0
  219. package/lib/dist-custom-elements/p-d8549efe.js +20 -0
  220. package/lib/dist-custom-elements/p-db91a981.js +98 -0
  221. package/lib/dist-custom-elements/p-e121eb6d.js +241 -0
  222. package/lib/dist-custom-elements/p-ede854e1.js +92 -0
  223. package/lib/dist-custom-elements/p-ee9a63c3.js +65 -0
  224. package/lib/dist-custom-elements/p-f11208c3.js +6 -0
  225. package/lib/dist-custom-elements/p-f1d0dca7.js +275 -0
  226. package/lib/dist-custom-elements/p-fb6be4e4.js +66 -0
  227. package/lib/duet/duet.esm.js +1 -1
  228. package/lib/duet/duet.js +1 -1
  229. package/lib/duet/{p-4c93a18e.system.entry.js → p-01ec746a.system.entry.js} +1 -1
  230. package/lib/duet/p-02305a1e.js +4 -0
  231. package/lib/duet/{p-674e546f.system.entry.js → p-02a0c4f6.system.entry.js} +1 -1
  232. package/lib/duet/{p-b01e2523.entry.js → p-02fec3bd.entry.js} +1 -1
  233. package/lib/duet/{p-300147ad.entry.js → p-032a5071.entry.js} +1 -1
  234. package/lib/duet/{p-0626271f.entry.js → p-08fe21b1.entry.js} +1 -1
  235. package/lib/duet/{p-d0cee171.entry.js → p-0b0c7f09.entry.js} +1 -1
  236. package/lib/duet/{p-1931d33f.system.js → p-100c6ed7.system.js} +1 -1
  237. package/lib/duet/{p-dab594cf.system.entry.js → p-168a22df.system.entry.js} +1 -1
  238. package/lib/duet/p-1fc60a60.system.js +4 -0
  239. package/lib/duet/{p-bb9624c3.entry.js → p-24dafa59.entry.js} +1 -1
  240. package/lib/duet/{p-d444107c.system.entry.js → p-28fcab59.system.entry.js} +1 -1
  241. package/lib/duet/{p-db15d420.system.entry.js → p-292ab686.system.entry.js} +1 -1
  242. package/lib/duet/{p-de986d77.system.entry.js → p-293b8c58.system.entry.js} +1 -1
  243. package/lib/duet/{p-9308c1e6.entry.js → p-2c698aec.entry.js} +1 -1
  244. package/lib/duet/p-32f7178a.system.js +4 -0
  245. package/lib/duet/{p-92d95bde.system.entry.js → p-3967595b.system.entry.js} +1 -1
  246. package/lib/duet/{p-72443e94.system.entry.js → p-414b1ba7.system.entry.js} +1 -1
  247. package/lib/duet/{p-ae515c54.entry.js → p-422d7157.entry.js} +1 -1
  248. package/lib/duet/{p-9fcac068.system.entry.js → p-4df190b5.system.entry.js} +1 -1
  249. package/lib/duet/{p-c41b07d7.entry.js → p-50eb1959.entry.js} +1 -1
  250. package/lib/duet/{p-de3c0f4d.js → p-532e9db7.js} +1 -1
  251. package/lib/duet/{p-16521f2d.entry.js → p-552ce747.entry.js} +1 -1
  252. package/lib/duet/{p-398a79a0.js → p-588be556.js} +1 -1
  253. package/lib/duet/{p-b008fe25.entry.js → p-58c58219.entry.js} +1 -1
  254. package/lib/duet/{p-2bd79d6b.entry.js → p-5b7db3d5.entry.js} +1 -1
  255. package/lib/duet/{p-5d967d15.entry.js → p-5bb6f856.entry.js} +1 -1
  256. package/lib/duet/{p-20271117.entry.js → p-62ff683a.entry.js} +1 -1
  257. package/lib/duet/{p-e1654a8b.system.entry.js → p-65206bf2.system.entry.js} +1 -1
  258. package/lib/duet/{p-2bba6489.entry.js → p-66bb00c2.entry.js} +1 -1
  259. package/lib/duet/{p-49db53a1.system.entry.js → p-6cc35a71.system.entry.js} +1 -1
  260. package/lib/duet/{p-63dbd5af.system.entry.js → p-7431ad27.system.entry.js} +1 -1
  261. package/lib/duet/{p-df11c241.system.entry.js → p-74bcd39f.system.entry.js} +1 -1
  262. package/lib/duet/{p-e2ac0727.system.entry.js → p-76fd11ff.system.entry.js} +1 -1
  263. package/lib/duet/{p-339e5901.system.js → p-7871ef0a.system.js} +1 -1
  264. package/lib/duet/{p-1aca544d.entry.js → p-79160b90.entry.js} +1 -1
  265. package/lib/duet/{p-23ad5f8a.entry.js → p-7d71fd3b.entry.js} +1 -1
  266. package/lib/duet/{p-946aa901.system.entry.js → p-7d866e2a.system.entry.js} +1 -1
  267. package/lib/duet/{p-9e54127f.system.entry.js → p-83120829.system.entry.js} +1 -1
  268. package/lib/duet/{p-d0f72f22.js → p-85c3f82e.js} +1 -1
  269. package/lib/duet/{p-06ab2787.system.entry.js → p-85df6ff1.system.entry.js} +1 -1
  270. package/lib/duet/{p-68c3b19f.entry.js → p-86567f28.entry.js} +1 -1
  271. package/lib/duet/{p-104bf1b5.entry.js → p-8669b09e.entry.js} +1 -1
  272. package/lib/duet/{p-9f18afd6.entry.js → p-88819152.entry.js} +1 -1
  273. package/lib/duet/{p-5d1787cb.entry.js → p-89dc739e.entry.js} +1 -1
  274. package/lib/duet/{p-6c875cfa.system.entry.js → p-8a4d7ae9.system.entry.js} +1 -1
  275. package/lib/duet/{p-571440c7.system.entry.js → p-8edd208a.system.entry.js} +1 -1
  276. package/lib/duet/{p-691f609b.entry.js → p-8efd9495.entry.js} +1 -1
  277. package/lib/duet/{p-c5499bc3.entry.js → p-8f222a1b.entry.js} +1 -1
  278. package/lib/duet/{p-6b0a4b3b.entry.js → p-98ba3424.entry.js} +1 -1
  279. package/lib/duet/{p-31004a7b.system.entry.js → p-996ba330.system.entry.js} +1 -1
  280. package/lib/duet/{p-de815460.system.entry.js → p-9999e5fa.system.entry.js} +1 -1
  281. package/lib/duet/{p-de146ffa.system.entry.js → p-9bae46c2.system.entry.js} +1 -1
  282. package/lib/duet/{p-ab2f08b3.system.entry.js → p-9cb366b1.system.entry.js} +1 -1
  283. package/lib/duet/{p-8c409ffe.system.entry.js → p-a3de163c.system.entry.js} +1 -1
  284. package/lib/duet/{p-064dd5fd.entry.js → p-a40a7074.entry.js} +1 -1
  285. package/lib/duet/{p-1010fb94.entry.js → p-a463d7ba.entry.js} +1 -1
  286. package/lib/duet/{p-087d72dd.system.entry.js → p-a755f378.system.entry.js} +1 -1
  287. package/lib/duet/{p-b066a6b7.entry.js → p-a78c751d.entry.js} +1 -1
  288. package/lib/duet/{p-c8d9da51.entry.js → p-aae486b1.entry.js} +1 -1
  289. package/lib/duet/{p-0f7f7e7d.system.entry.js → p-ade95c1a.system.entry.js} +1 -1
  290. package/lib/duet/{p-9f8a51b4.system.entry.js → p-ae270d5c.system.entry.js} +1 -1
  291. package/lib/duet/{p-94c07a46.system.entry.js → p-afd48ab5.system.entry.js} +1 -1
  292. package/lib/duet/{p-f2eaad1e.js → p-b1931fae.js} +1 -1
  293. package/lib/duet/{p-e3983bfe.entry.js → p-b1b6bfaf.entry.js} +1 -1
  294. package/lib/duet/{p-6eecfced.system.entry.js → p-bcaa46bc.system.entry.js} +1 -1
  295. package/lib/duet/{p-eb54474f.system.entry.js → p-bd95bbac.system.entry.js} +1 -1
  296. package/lib/duet/{p-09364233.entry.js → p-c14e364f.entry.js} +1 -1
  297. package/lib/duet/{p-074bfd45.entry.js → p-cd24ed34.entry.js} +1 -1
  298. package/lib/duet/{p-8157e5bb.system.entry.js → p-ceaefc71.system.entry.js} +1 -1
  299. package/lib/duet/{p-18cc5627.system.js → p-d209191d.system.js} +1 -1
  300. package/lib/duet/{p-5658ac20.system.entry.js → p-d33ad700.system.entry.js} +1 -1
  301. package/lib/duet/{p-41cb95cb.entry.js → p-d5700477.entry.js} +1 -1
  302. package/lib/duet/{p-b3dc55a6.system.entry.js → p-d8c1e717.system.entry.js} +1 -1
  303. package/lib/duet/{p-cca9c605.system.entry.js → p-d8e4683f.system.entry.js} +1 -1
  304. package/lib/duet/{p-0ae59d7c.entry.js → p-db5582e2.entry.js} +1 -1
  305. package/lib/duet/{p-f7ac05dd.system.entry.js → p-dc3379cf.system.entry.js} +1 -1
  306. package/lib/duet/{p-cfa50753.system.js → p-ddc42b65.system.js} +1 -1
  307. package/lib/duet/{p-3cc55c8a.system.entry.js → p-e1c35023.system.entry.js} +1 -1
  308. package/lib/duet/p-e6d75fab.entry.js +4 -0
  309. package/lib/duet/{p-89048c6f.entry.js → p-e99cfa9a.entry.js} +1 -1
  310. package/lib/duet/{p-4034b322.system.entry.js → p-ec08089e.system.entry.js} +1 -1
  311. package/lib/duet/{p-bec24271.system.entry.js → p-ec45b5c6.system.entry.js} +1 -1
  312. package/lib/duet/{p-5beb69ac.entry.js → p-ed41265b.entry.js} +1 -1
  313. package/lib/duet/{p-744ce6ce.entry.js → p-ed985877.entry.js} +1 -1
  314. package/lib/duet/p-f5cac1af.entry.js +4 -0
  315. package/lib/duet/{p-e0f6ebf4.system.entry.js → p-f6725c7b.system.entry.js} +1 -1
  316. package/lib/duet/{p-c2e37fb4.entry.js → p-f7012b1f.entry.js} +1 -1
  317. package/lib/duet/{p-23ba48a5.system.entry.js → p-f7856429.system.entry.js} +1 -1
  318. package/lib/duet/{p-97a369d6.entry.js → p-f9d05a5c.entry.js} +1 -1
  319. package/lib/duet/{p-ef4b4f35.entry.js → p-fb798cb8.entry.js} +1 -1
  320. package/lib/duet/{p-47ed8218.entry.js → p-fcbf70a6.entry.js} +1 -1
  321. package/lib/duet/{p-3d029dce.system.entry.js → p-fcc58f66.system.entry.js} +1 -1
  322. package/lib/duet/{p-db115036.entry.js → p-fdd0a7df.entry.js} +1 -1
  323. package/lib/duet/{p-6841adb8.system.entry.js → p-feae179e.system.entry.js} +1 -1
  324. package/lib/esm/duet-action-button.entry.js +3 -3
  325. package/lib/esm/duet-alert.entry.js +1 -1
  326. package/lib/esm/duet-badge.entry.js +1 -1
  327. package/lib/esm/duet-breadcrumb.entry.js +1 -1
  328. package/lib/esm/duet-breadcrumbs.entry.js +1 -1
  329. package/lib/esm/duet-button_2.entry.js +3 -3
  330. package/lib/esm/duet-caption_4.entry.js +3 -3
  331. package/lib/esm/duet-card.entry.js +3 -3
  332. package/lib/esm/duet-checkbox.entry.js +1 -1
  333. package/lib/esm/duet-choice_2.entry.js +10 -9
  334. package/lib/esm/duet-collapsible.entry.js +2 -2
  335. package/lib/esm/duet-combobox.entry.js +1 -1
  336. package/lib/esm/duet-cookie-consent.entry.js +1 -1
  337. package/lib/esm/duet-date-picker.entry.js +2 -2
  338. package/lib/esm/duet-divider_2.entry.js +1 -1
  339. package/lib/esm/duet-editable-table_3.entry.js +17 -14
  340. package/lib/esm/duet-empty-state.entry.js +1 -1
  341. package/lib/esm/duet-fieldset.entry.js +1 -1
  342. package/lib/esm/duet-footer.entry.js +1 -1
  343. package/lib/esm/duet-grid_2.entry.js +2 -2
  344. package/lib/esm/duet-header_2.entry.js +3 -3
  345. package/lib/esm/duet-hero.entry.js +1 -1
  346. package/lib/esm/duet-icon.entry.js +3 -3
  347. package/lib/esm/duet-input_2.entry.js +1 -1
  348. package/lib/esm/duet-layout.entry.js +1 -1
  349. package/lib/esm/duet-list_2.entry.js +1 -1
  350. package/lib/esm/duet-modal.entry.js +2 -2
  351. package/lib/esm/duet-notification_2.entry.js +1 -1
  352. package/lib/esm/duet-number-input.entry.js +1 -1
  353. package/lib/esm/duet-pagination_2.entry.js +25 -27
  354. package/lib/esm/duet-progress.entry.js +1 -1
  355. package/lib/esm/duet-radio_2.entry.js +1 -1
  356. package/lib/esm/duet-range-slider.entry.js +2 -2
  357. package/lib/esm/duet-scrollable_3.entry.js +1 -1
  358. package/lib/esm/duet-select.entry.js +1 -1
  359. package/lib/esm/duet-step_2.entry.js +1 -1
  360. package/lib/esm/duet-textarea.entry.js +1 -1
  361. package/lib/esm/duet-toggle.entry.js +1 -1
  362. package/lib/esm/duet-tooltip.entry.js +1 -1
  363. package/lib/esm/duet-tray.entry.js +2 -2
  364. package/lib/esm/duet-upload-aria-status.entry.js +1 -1
  365. package/lib/esm/duet-visually-hidden.entry.js +1 -1
  366. package/lib/esm/duet.js +1 -1
  367. package/lib/esm/focus-utils-b515b88b.js +18 -0
  368. package/lib/esm/{index-f600b8dc.js → index-d8c3ba71.js} +1 -1
  369. package/lib/esm/loader.js +1 -1
  370. package/lib/esm/token-utils-ebf797ab.js +92 -0
  371. package/lib/esm/tokens-b9d87fda.js +459 -0
  372. package/lib/esm/{tokens.module-f4572ed7.js → tokens.module-385c4cf8.js} +12 -10
  373. package/lib/esm-es5/duet-action-button.entry.js +1 -1
  374. package/lib/esm-es5/duet-alert.entry.js +1 -1
  375. package/lib/esm-es5/duet-badge.entry.js +1 -1
  376. package/lib/esm-es5/duet-breadcrumb.entry.js +1 -1
  377. package/lib/esm-es5/duet-breadcrumbs.entry.js +1 -1
  378. package/lib/esm-es5/duet-button_2.entry.js +1 -1
  379. package/lib/esm-es5/duet-caption_4.entry.js +1 -1
  380. package/lib/esm-es5/duet-card.entry.js +1 -1
  381. package/lib/esm-es5/duet-checkbox.entry.js +1 -1
  382. package/lib/esm-es5/duet-choice_2.entry.js +1 -1
  383. package/lib/esm-es5/duet-collapsible.entry.js +2 -2
  384. package/lib/esm-es5/duet-combobox.entry.js +1 -1
  385. package/lib/esm-es5/duet-cookie-consent.entry.js +1 -1
  386. package/lib/esm-es5/duet-date-picker.entry.js +1 -1
  387. package/lib/esm-es5/duet-divider_2.entry.js +1 -1
  388. package/lib/esm-es5/duet-editable-table_3.entry.js +1 -1
  389. package/lib/esm-es5/duet-empty-state.entry.js +1 -1
  390. package/lib/esm-es5/duet-fieldset.entry.js +1 -1
  391. package/lib/esm-es5/duet-footer.entry.js +1 -1
  392. package/lib/esm-es5/duet-grid_2.entry.js +1 -1
  393. package/lib/esm-es5/duet-header_2.entry.js +1 -1
  394. package/lib/esm-es5/duet-hero.entry.js +1 -1
  395. package/lib/esm-es5/duet-icon.entry.js +1 -1
  396. package/lib/esm-es5/duet-input_2.entry.js +1 -1
  397. package/lib/esm-es5/duet-layout.entry.js +1 -1
  398. package/lib/esm-es5/duet-list_2.entry.js +1 -1
  399. package/lib/esm-es5/duet-modal.entry.js +1 -1
  400. package/lib/esm-es5/duet-notification_2.entry.js +1 -1
  401. package/lib/esm-es5/duet-number-input.entry.js +1 -1
  402. package/lib/esm-es5/duet-pagination_2.entry.js +1 -1
  403. package/lib/esm-es5/duet-progress.entry.js +1 -1
  404. package/lib/esm-es5/duet-radio_2.entry.js +1 -1
  405. package/lib/esm-es5/duet-range-slider.entry.js +1 -1
  406. package/lib/esm-es5/duet-scrollable_3.entry.js +1 -1
  407. package/lib/esm-es5/duet-select.entry.js +1 -1
  408. package/lib/esm-es5/duet-step_2.entry.js +1 -1
  409. package/lib/esm-es5/duet-textarea.entry.js +1 -1
  410. package/lib/esm-es5/duet-toggle.entry.js +1 -1
  411. package/lib/esm-es5/duet-tooltip.entry.js +1 -1
  412. package/lib/esm-es5/duet-tray.entry.js +1 -1
  413. package/lib/esm-es5/duet-upload-aria-status.entry.js +1 -1
  414. package/lib/esm-es5/duet-visually-hidden.entry.js +1 -1
  415. package/lib/esm-es5/duet.js +1 -1
  416. package/lib/esm-es5/{focus-utils-559691b3.js → focus-utils-b515b88b.js} +1 -1
  417. package/lib/esm-es5/{index-f600b8dc.js → index-d8c3ba71.js} +1 -1
  418. package/lib/esm-es5/loader.js +1 -1
  419. package/lib/esm-es5/{token-utils-df78f4d8.js → token-utils-ebf797ab.js} +1 -1
  420. package/lib/esm-es5/tokens-b9d87fda.js +4 -0
  421. package/lib/esm-es5/{tokens.module-f4572ed7.js → tokens.module-385c4cf8.js} +1 -1
  422. package/lib/types/components/duet-choice-group/duet-choice-group.d.ts +1 -0
  423. package/lib/types/components/duet-range-stepper/duet-range-stepper.d.ts +2 -2
  424. package/lib/types/components/duet-upload/duet-upload.d.ts +8 -8
  425. package/lib/types/components.d.ts +6 -6
  426. package/package.json +5 -5
  427. package/lib/custom-elements-bundle/index.d.ts +0 -399
  428. package/lib/custom-elements-bundle/index.js +0 -14110
  429. package/lib/duet/p-6002f3d2.system.js +0 -4
  430. package/lib/duet/p-7c198c75.entry.js +0 -4
  431. package/lib/duet/p-a93a04b9.system.js +0 -4
  432. package/lib/duet/p-d1746325.js +0 -4
  433. package/lib/duet/p-f2ab3e5c.entry.js +0 -4
  434. package/lib/esm-es5/tokens-8ff8c570.js +0 -4
@@ -0,0 +1,129 @@
1
+ /*!
2
+ * Built with Duet Design System
3
+ */
4
+ import { p as proxyCustomElement, H, h, b as Host } from './p-1ad6b04e.js';
5
+ import { g as colorGrayLightest, h as colorBrandGrayTurva, i as colorPrimaryTurva, j as colorBrandBlue } from './p-266411cf.js';
6
+ import { i as inheritGlobalTheme } from './p-4ebf1618.js';
7
+ import { c as createID } from './p-c1325e35.js';
8
+ import { a as getLanguage } from './p-ede854e1.js';
9
+
10
+ const duetLogoCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-right:8px !important;display:inline-block;width:auto;vertical-align:middle}:host:last-child,:host:last-of-type{margin-right:0 !important}:host(.duet-m-0){margin:0 !important}.duet-logo{-webkit-user-select:none;user-select:none;display:block;width:154px;height:40px;border-radius:4px}.duet-logo:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}.duet-theme-turva .duet-logo:focus,.duet-logo:focus.duet-theme-turva{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-logo.duet-logo-en{width:166px}.duet-logo.duet-logo-sv{width:167px}.duet-logo.duet-theme-turva{width:110px;height:40px}.duet-logo svg{display:block;width:100%;height:auto}.duet-logo.large{width:184.8px;height:48px}.duet-logo.large.duet-logo-en{width:199.2px}.duet-logo.large.duet-logo-sv{width:200.4px}.duet-logo.large.duet-theme-turva{width:149.6px;height:54.4px}";
11
+
12
+ const TurvaLogo = ({ inverse, logoId }) => {
13
+ const logoColor = inverse ? colorGrayLightest : colorBrandGrayTurva;
14
+ const textColor = inverse ? colorGrayLightest : colorPrimaryTurva;
15
+ return (h("svg", { role: "img", xmlns: "http://www.w3.org/2000/svg", "aria-labelledby": logoId, viewBox: "0 0 305 111" }, h("title", { id: logoId }, "Turva"), h("path", { fill: logoColor, d: "M79 90.1A40.5 40.5 0 0 0 98.3 58H79v32.2z" }), h("path", { fill: logoColor, d: "M45.1 57.9V46.4h52.3a40.5 40.5 0 1 0-30 48.5V58H45z" }), h("path", { fill: textColor, d: "M278.9 80.3v-9.8l-7.4.4c-2.4.3-4.3.6-5.7 1-1.7.4-4 1.3-5 2.3-1 1-2.3 2.8-2.3 4.6 0 2 .8 3.8 2 4.8s3.3 2 5.7 2a22 22 0 0 0 12.7-5.3zm4.2 8H279v-4.1l-3 1.9-2.8 1.5a17.4 17.4 0 0 1-7.4 1.6c-3 0-6.3-.7-8-2.3a9.6 9.6 0 0 1-3.4-7.2 9 9 0 0 1 1.8-5.9c1.1-1.6 3.1-3.3 5.2-4.2 2.1-1 4.7-1.6 7.7-1.9 3.4-.4 6.8-.6 9.8-.7v-1.1a6 6 0 0 0-.7-3.3 8 8 0 0 0-2.6-2.5c-.8-.5-2.2-1-3.4-1.1a25.7 25.7 0 0 0-8.8.4c-1.9.4-3.3 1-5.4 1.7h-.3v-4.3c1.2-.3 2.3-.7 4.5-1a37.7 37.7 0 0 1 12.8 0c1.8.4 2.9 1 4.2 2 1.3 1 2.3 2.3 3 3.8.7 1.5 1 3.2 1 4.7v22zM250.1 56l-14 32.4h-4.8L217.4 56h4.5l12 27.7L245.6 56zM137.7 88.2l-2.7.7c-.9.2-2 .4-4.2.4a9 9 0 0 1-7.2-3c-1.9-1.8-2.6-5-2.6-9.3V60.2h-5.2V56h5.2V47h4.2v9h12.6v4.2h-12.6v14.2c0 1.8 0 4.3.2 5.4 0 1 .3 2.5.8 3.4.5.8 1.4 1.4 2.2 1.8.8.4 2.7.5 4.1.5 1-.1 1.7-.2 2.7-.5l2.2-.6h.3v3.8zM176.4 88.4h-4.2v-3.9c-2 1.6-4.5 2.8-6.3 3.6-1.8.8-3.8 1.3-6 1.3-3.6 0-6-1.2-8-3.4s-2.5-5.5-2.5-9.9v-20h4.2V74c0 1.8.1 3.8.3 5 .2 1.3.5 3 1 3.8a5 5 0 0 0 2.2 2c1 .5 2.2.7 4 .7 1.5 0 3.1-.4 5-1.2 1.7-.8 4.5-2.4 6-3.6V56.1h4.3v32.3zM210.4 61h-.3a21.6 21.6 0 0 0-5.4-.7c-1.9 0-3.6.4-5.3 1.2a31 31 0 0 0-5.4 3.7v23.2h-4.3V56h4.3v5.2c2.3-1.9 5-3.2 6.7-4 1.8-.8 3.6-1.2 5.5-1.2a22.3 22.3 0 0 1 4.2.4v4.4z" })));
16
+ };
17
+ const i18n = {
18
+ fi: {
19
+ viewBox: "0 0 427 111",
20
+ title: "LähiTapiola",
21
+ path: "M131.6 69.6v1.3l-.3 1c0 .2-.2.4-.3.5l-.5.1h-16c-.5 0-1-.1-1.4-.5-.5-.3-.7-.9-.7-1.7V38.7l.2-.5c.1-.2.3-.3.6-.4l1-.2a15.7 15.7 0 0 1 4.6.2c.3.1.5.2.6.4l.2.5v28h11l.4.1.3.5.2 1 .1 1.3M164.3 70c.2.5.4 1 .4 1.4 0 .4 0 .7-.2.9-.2.2-.5.3-1 .3a25.2 25.2 0 0 1-5.4 0l-.6-.4-.3-.6-2.3-7h-13l-2.3 6.8c0 .3-.2.5-.3.6-.1.2-.3.4-.6.4l-1 .3a25.9 25.9 0 0 1-3.9 0l-1-.5c-.1-.2-.2-.5-.1-.8 0-.4.2-1 .4-1.5l10.7-31 .4-.7c.1-.2.4-.3.7-.4l1.3-.2a47.7 47.7 0 0 1 6.2.2c.4 0 .6.2.8.4l.4.8 10.7 31zm-17.9-38.8c0 1.3-.2 2.2-.7 2.7-.5.5-1.4.7-2.8.7s-2.3-.2-2.8-.7c-.5-.5-.7-1.4-.7-2.6 0-1.2.2-2.1.7-2.6.5-.5 1.4-.8 2.8-.8s2.4.3 2.8.7c.5.5.7 1.4.7 2.6zm2 13.1h-.1l-5 14.9h10l-5-14.9zm9.8-13c0 1.2-.2 2-.7 2.6-.5.5-1.5.7-2.9.7s-2.3-.2-2.8-.7c-.4-.5-.7-1.4-.7-2.6 0-1.2.3-2.1.8-2.6s1.4-.8 2.8-.8 2.3.3 2.8.7c.5.5.7 1.4.7 2.6zM196.4 71.6c0 .2 0 .3-.2.5l-.5.3-1.1.2a14 14 0 0 1-4.5-.2c-.3 0-.5-.2-.6-.3a.7.7 0 0 1-.2-.5V57.5h-13v14c0 .3 0 .4-.2.6l-.5.3-1.1.2a14.3 14.3 0 0 1-4.5-.2c-.3 0-.5-.2-.6-.3a.8.8 0 0 1-.2-.5v-33c0-.1 0-.3.2-.4.1-.2.3-.3.6-.4l1-.2a15.6 15.6 0 0 1 4.6.2l.5.4.2.5v12.8h13V38.7c0-.2 0-.4.2-.5.1-.2.3-.3.6-.4l1-.2a15.9 15.9 0 0 1 4.6.2l.5.4c.2.1.2.3.2.5v32.9zM211.1 71.6c0 .2 0 .3-.2.5l-.5.3-1.1.2a14.3 14.3 0 0 1-4.5-.2c-.3 0-.5-.2-.6-.3a.8.8 0 0 1-.2-.5v-33c0-.1 0-.3.2-.4.1-.2.3-.3.6-.4l1-.2a15.3 15.3 0 0 1 4.6.2l.5.4c.2.1.2.3.2.5v32.9zM242 40.6l-.1 1.3-.2 1-.4.4-.4.2h-8.7v28c0 .3 0 .4-.2.6l-.6.3a14 14 0 0 1-5.6 0c-.3 0-.4-.2-.6-.3a.8.8 0 0 1-.1-.5V43.5h-8.8c-.1 0-.3 0-.4-.2-.1 0-.3-.3-.3-.5l-.2-.9a10.9 10.9 0 0 1 .2-3.6c0-.2.2-.4.3-.5l.4-.1H241l.4.1.4.5.2 1v1.3M270.3 70l.4 1.4c0 .4 0 .7-.2.9-.2.2-.6.3-1 .3a24.3 24.3 0 0 1-5.5 0l-.5-.4-.3-.6-2.4-7h-13l-2.3 6.8-.2.6c-.2.2-.3.4-.6.4a25.9 25.9 0 0 1-5 .2c-.4 0-.7-.2-.9-.4-.2-.2-.2-.5-.2-.8 0-.4.2-1 .4-1.5l10.8-31c0-.3.2-.5.3-.7l.7-.4 1.3-.2a47.8 47.8 0 0 1 6.2.2c.4 0 .7.2.8.4l.4.8 10.8 31zm-16-25.7l-5 14.9h9.9l-5-14.9zM299 48.3c0 2-.3 3.7-.9 5.2a10 10 0 0 1-2.7 3.8c-1.1 1-2.6 1.8-4.3 2.3a20 20 0 0 1-6 .8h-2.9v11.2l-.1.5-.6.3-1.1.2a14 14 0 0 1-4.5-.2c-.3 0-.5-.2-.6-.3a.8.8 0 0 1-.2-.5V40.2c0-.8.3-1.5.7-1.9.4-.4 1-.6 1.7-.6h8.3a28 28 0 0 1 5 .5c1 .2 2.1.6 3.2 1.1a8.8 8.8 0 0 1 4.5 5.1c.3 1.2.5 2.5.5 3.9m-7.4.5c0-1.2-.2-2.2-.6-3-.5-.8-1-1.4-1.6-1.8-.7-.4-1.3-.6-2-.7l-2.2-.1h-3V55h3.2c1.1 0 2-.2 2.9-.5a4.9 4.9 0 0 0 3-3.2c.2-.8.3-1.6.3-2.5M311.6 71.6c0 .2 0 .3-.2.5l-.5.3-1.1.2a14.2 14.2 0 0 1-4.5-.2c-.3 0-.5-.2-.6-.3a.8.8 0 0 1-.2-.5v-33c0-.1 0-.3.2-.4.1-.2.3-.3.6-.4l1-.2a15.2 15.2 0 0 1 4.6.2l.5.4c.2.1.2.3.2.5v32.9zM350.6 54.7c0 2.9-.4 5.5-1.1 7.8-.7 2.2-1.8 4.2-3.2 5.8a13.7 13.7 0 0 1-5.3 3.6 21.3 21.3 0 0 1-14.4.2 12.3 12.3 0 0 1-8-8.8 28 28 0 0 1 0-15.6c.8-2.2 1.8-4.2 3.3-5.7a14 14 0 0 1 5.2-3.7c2.1-.8 4.5-1.2 7.3-1.2 2.7 0 5 .3 7 1s3.7 1.8 5 3.2a14 14 0 0 1 3.1 5.6c.7 2.2 1 4.8 1 7.8m-7.4.4c0-1.8-.1-3.5-.4-5-.3-1.5-.8-2.8-1.5-3.9a7 7 0 0 0-2.7-2.4 9.4 9.4 0 0 0-4.3-1c-1.8 0-3.2.4-4.4 1a8 8 0 0 0-2.8 2.7 11 11 0 0 0-1.5 3.8 27.8 27.8 0 0 0 0 9.8 11 11 0 0 0 1.4 3.9c.7 1 1.6 1.9 2.7 2.5 1.2.5 2.6.8 4.4.8 1.7 0 3.2-.3 4.3-1a7.8 7.8 0 0 0 2.9-2.6c.7-1.1 1.2-2.4 1.5-3.9.3-1.5.4-3 .4-4.7M375.7 69.6a10.5 10.5 0 0 1-.3 2.3c0 .2-.2.4-.3.5l-.5.1h-16c-.6 0-1-.1-1.5-.5-.4-.3-.6-.9-.6-1.7V38.7c0-.2 0-.4.2-.5.1-.2.3-.3.6-.4l1-.2a15.7 15.7 0 0 1 4.6.2c.3.1.5.2.6.4l.1.5v28h11l.5.1.3.5.2 1v1.3M408.4 70c.2.6.4 1 .4 1.4 0 .4 0 .7-.2.9-.2.2-.5.3-1 .3a24.3 24.3 0 0 1-5.4 0 1 1 0 0 1-.6-.4 2 2 0 0 1-.3-.6l-2.3-7h-13.1l-2.2 6.8c0 .3-.2.5-.3.6-.1.2-.3.4-.6.4a26 26 0 0 1-5 .2c-.3 0-.7-.2-.8-.4-.2-.2-.3-.5-.2-.8 0-.4.2-1 .4-1.5l10.7-31 .4-.7c.1-.2.4-.3.7-.4l1.3-.2a47.7 47.7 0 0 1 6.2.2c.3 0 .6.2.7.4l.4.8 10.8 31zm-16-25.7l-5 14.9h10l-5-14.9zM22.5 68.5c-6.9-6.9-6.9-18 0-24.9l23.8-23.8a17.6 17.6 0 0 1 20-3.4v.1L42.9 39.9a5.9 5.9 0 0 0 8.2 8.3l4.2-4.1c2.3-2.4 4.7-2.4 6.7-.4l9 8.9c2.3 2.4 2.6 4.4 0 7.1l-8.5 8.5c-2.4 2.3-4.6 2.5-7.1 0L39 51.9a5.9 5.9 0 0 0-8.3 8.3L51.5 81c4 4 10.6 4 14.7 0l17.4-17.5c4-4 4-10.6 0-14.7L70.3 35.4c-2.1-2-2-4.4.2-6.6l4.3-4.2.5-.7L92 40.6a21.8 21.8 0 0 1 0 31L74.2 89.2a21.9 21.9 0 0 1-30.9 0L22.5 68.5z",
22
+ },
23
+ sv: {
24
+ viewBox: "0 0 463 111",
25
+ title: "LokalTapiola",
26
+ path: "M131 69.6l-.1 1.4-.2.9-.4.5-.4.2h-16c-.6 0-1.1-.2-1.5-.6-.4-.3-.6-.9-.6-1.7V38.7l.1-.5.6-.4 1.1-.2a15 15 0 0 1 4.5.2c.3.1.5.2.6.4l.2.5v28h11c.1 0 .3 0 .4.2.2 0 .3.2.4.4l.2 1v1.3M157.4 55c0-1.7-.1-3.4-.4-4.9-.3-1.5-.8-2.8-1.5-3.9a7 7 0 0 0-2.7-2.4 9.5 9.5 0 0 0-4.3-1c-1.8 0-3.2.4-4.4 1a8 8 0 0 0-2.8 2.7c-.8 1-1.3 2.4-1.6 3.8a27.6 27.6 0 0 0 0 9.8 11 11 0 0 0 1.5 4c.7 1 1.6 1.8 2.7 2.4 1.2.6 2.6.8 4.4.8a7.9 7.9 0 0 0 7.2-3.6c.7-1 1.2-2.4 1.5-3.9.3-1.5.4-3 .4-4.7m7.5-.4c0 3-.4 5.5-1.1 7.8-.7 2.3-1.8 4.2-3.2 5.8a13.7 13.7 0 0 1-5.3 3.6c-2 .9-4.5 1.3-7.3 1.3-2.7 0-5-.4-7-1a12.4 12.4 0 0 1-8.1-8.9 28 28 0 0 1 0-15.6 14 14 0 0 1 8.5-9.4c2.1-.8 4.5-1.2 7.3-1.2 2.6 0 5 .3 7 1a12.4 12.4 0 0 1 8.1 8.8c.7 2.2 1 4.8 1 7.8M196.3 71.5l-.1.5a1 1 0 0 1-.6.4l-1.2.2a17 17 0 0 1-4.3 0c-.5-.1-.9-.2-1.1-.4l-.5-.7L177.9 55v16.5l-.1.6-.6.3-1 .2a15 15 0 0 1-4.6-.2c-.3 0-.5-.2-.6-.3a.8.8 0 0 1-.2-.6V38.7c0-.2 0-.4.2-.5.1-.2.3-.3.6-.4l1-.2a14.8 14.8 0 0 1 4.6.2c.3.1.5.2.6.4l.1.5v14.8l10.2-14.8.5-.6.7-.3a20.7 20.7 0 0 1 5.7 0l.6.4.2.5-.3 1-.9 1.5-9.6 12.5 10.5 15.8.7 1.4.1.6M213.6 44.3l-5 14.9h10l-5-14.9zm16 25.6l.4 1.6c0 .3 0 .6-.2.8-.2.2-.6.3-1 .4a26.7 26.7 0 0 1-5.5-.2 1 1 0 0 1-.5-.3l-.3-.6-2.3-7H207l-2.2 6.8-.3.7-.6.4-1.1.2a27.7 27.7 0 0 1-3.8 0c-.5-.1-.8-.2-1-.4-.2-.2-.2-.5-.2-1l.4-1.4 10.8-31c0-.3.2-.5.4-.7.1-.2.3-.4.6-.4l1.4-.2a44.9 44.9 0 0 1 6.2.2c.3 0 .6.2.7.4l.4.8 10.8 31zM253.6 69.6V71l-.2.9-.4.5-.4.2h-16c-.6 0-1.1-.2-1.5-.6-.4-.3-.6-.9-.6-1.7V38.7c0-.2 0-.4.2-.5 0-.2.3-.3.5-.4l1.1-.2a15 15 0 0 1 4.5.2c.3.1.5.2.6.4l.2.5v28h11c.1 0 .3 0 .4.2.2 0 .3.2.4.4l.2 1v1.3M276.3 40.6v1.3l-.3 1-.3.4-.5.2h-8.7v28.1c0 .2 0 .3-.2.5l-.6.3-1 .2a15.2 15.2 0 0 1-4.6-.2l-.6-.3a.7.7 0 0 1-.1-.5V43.5h-8.8c-.1 0-.3 0-.4-.2-.2 0-.3-.3-.3-.5l-.2-.9a10.7 10.7 0 0 1 .2-3.6c0-.2.1-.4.3-.5l.4-.1h24.6l.5.1.3.5.2 1v1.3M288.6 44.3l-5 14.9h10l-5-14.9zm16 25.6l.4 1.6c0 .3 0 .6-.2.8-.2.2-.5.3-1 .4a26.8 26.8 0 0 1-5.4-.2 1 1 0 0 1-.6-.3l-.3-.6-2.3-7H282l-2.2 6.8-.3.7-.6.4-1 .2a27.9 27.9 0 0 1-3.9 0c-.5-.1-.8-.2-1-.4-.2-.2-.2-.5-.2-1l.4-1.4 10.8-31 .4-.7c.1-.2.3-.4.7-.4l1.3-.2a45 45 0 0 1 6.2.2c.3 0 .6.2.7.4l.4.8 10.8 31zM326 48.8c0-1.2-.3-2.2-.7-3-.4-.8-1-1.4-1.6-1.8-.6-.4-1.3-.6-2-.7l-2.1-.1h-3V55h3.2c1.1 0 2-.2 2.8-.5.8-.3 1.4-.7 1.9-1.2a8 8 0 0 0 1.5-4.5m7.4-.5c0 2-.3 3.7-1 5.2a10 10 0 0 1-2.6 3.8c-1.2 1-2.6 1.8-4.3 2.4a20 20 0 0 1-6 .8h-3V72l-.7.3-1 .2a14.8 14.8 0 0 1-4.6-.2c-.2 0-.4-.2-.5-.3a.8.8 0 0 1-.2-.5V40.2c0-.8.2-1.5.7-1.9.4-.4 1-.6 1.7-.6h8.2a27.3 27.3 0 0 1 5 .5c1.1.2 2.2.6 3.2 1.1 1 .6 2 1.3 2.8 2.1.7.9 1.3 1.9 1.7 3 .4 1.2.6 2.5.6 3.9M346 71.6c0 .2 0 .3-.2.5l-.6.3-1 .2a15.1 15.1 0 0 1-4.6-.2c-.2 0-.4-.2-.5-.3a.8.8 0 0 1-.2-.5v-33c0-.1 0-.3.2-.4 0-.2.3-.3.5-.4l1.1-.2a14.5 14.5 0 0 1 4.5.2c.3.1.5.2.6.4l.2.5v32.9zM377.5 55c0-1.7-.1-3.4-.4-4.9-.3-1.5-.8-2.8-1.5-3.9a7 7 0 0 0-2.7-2.4 9.5 9.5 0 0 0-4.3-1c-1.8 0-3.2.4-4.4 1a8 8 0 0 0-2.8 2.7c-.8 1-1.3 2.4-1.6 3.8a27.8 27.8 0 0 0 0 9.8 11 11 0 0 0 1.5 4c.7 1 1.6 1.8 2.7 2.4 1.2.6 2.6.8 4.4.8a7.9 7.9 0 0 0 7.2-3.6c.7-1 1.2-2.4 1.5-3.9.3-1.5.4-3 .4-4.7m7.5-.4c0 3-.4 5.5-1.1 7.8-.7 2.3-1.8 4.2-3.2 5.8a13.8 13.8 0 0 1-5.3 3.6c-2 .9-4.5 1.3-7.2 1.3-2.8 0-5.1-.4-7.1-1a12.3 12.3 0 0 1-8.1-8.9 28 28 0 0 1 0-15.6 14 14 0 0 1 8.5-9.4c2.1-.8 4.5-1.2 7.3-1.2 2.6 0 5 .3 7 1a12.4 12.4 0 0 1 8.1 8.8c.7 2.2 1 4.8 1 7.8M410.1 69.6V71l-.3.9c0 .2-.2.4-.3.5l-.5.2h-16c-.6 0-1-.2-1.5-.6-.4-.3-.6-.9-.6-1.7V38.7c0-.2 0-.4.2-.5.1-.2.3-.3.6-.4l1-.2a14.9 14.9 0 0 1 4.6.2c.3.1.5.2.6.4l.2.5v28h11c.1 0 .3 0 .4.2l.3.4.2 1 .1 1.3M426.8 44.3l-5 14.9h10l-5-14.9zm16 25.6l.5 1.6c0 .3 0 .6-.3.8-.2.2-.5.3-1 .4a26.8 26.8 0 0 1-5.4-.2 1 1 0 0 1-.6-.3l-.2-.6-2.4-7h-13l-2.3 6.8c0 .3-.2.5-.3.7l-.5.4-1.1.2a27.6 27.6 0 0 1-3.9 0l-1-.4c-.1-.2-.2-.5-.1-1l.4-1.4 10.7-31 .4-.7c.2-.2.4-.4.7-.4l1.3-.2a45 45 0 0 1 6.2.2c.4 0 .6.2.8.4l.4.8 10.8 31zM21.8 68.6c-7-7-7-18.1 0-25l23.8-23.8a17.7 17.7 0 0 1 20-3.4L42.2 40a5.9 5.9 0 0 0 8.2 8.3l4.2-4.1c2.3-2.4 4.6-2.4 6.7-.4l9 9c2.3 2.3 2.6 4.4 0 7l-8.6 8.5c-2.3 2.3-4.5 2.5-7 0L38.3 51.9a5.9 5.9 0 0 0-8.3 8.3L50.8 81c4 4 10.6 4 14.6 0L83 63.4c4-4 4-10.6 0-14.7L69.6 35.4c-2.1-2-2-4.4.2-6.6l4.3-4.3.5-.6 16.7 16.7a21.9 21.9 0 0 1 0 31L73.5 89.3a21.9 21.9 0 0 1-31 0L21.9 68.6z",
27
+ },
28
+ en: {
29
+ viewBox: "0 0 460 111",
30
+ title: "LocalTapiola",
31
+ path: "M131.6 69.7V71l-.3 1c0 .2-.2.4-.3.5l-.5.1h-16c-.5 0-1-.1-1.4-.5-.5-.3-.7-1-.7-1.7V38.7l.2-.4c.1-.2.3-.3.6-.4l1-.2a14.8 14.8 0 0 1 4.6.2c.3.1.5.2.6.4l.2.4v28h11l.4.2.3.5.2 1 .1 1.3M158 55.2c0-1.8 0-3.5-.4-5-.2-1.5-.7-2.8-1.4-3.9a7 7 0 0 0-2.8-2.4 9.4 9.4 0 0 0-4.3-1c-1.7 0-3.2.4-4.4 1a8 8 0 0 0-2.8 2.7c-.7 1-1.2 2.4-1.5 3.8a27.6 27.6 0 0 0 0 9.8 11 11 0 0 0 1.4 3.9c.7 1 1.6 1.9 2.8 2.5 1.1.5 2.6.8 4.3.8a7.9 7.9 0 0 0 7.2-3.6c.7-1.1 1.2-2.4 1.5-3.9.3-1.5.5-3 .5-4.7m7.4-.4c0 2.9-.4 5.5-1 7.8-.8 2.2-1.9 4.2-3.3 5.8A13.7 13.7 0 0 1 156 72c-2.1.8-4.6 1.3-7.3 1.3s-5-.4-7.1-1.1a12.3 12.3 0 0 1-8-8.8 28 28 0 0 1 0-15.6 14 14 0 0 1 8.5-9.4c2-.8 4.5-1.2 7.2-1.2s5 .3 7 1 3.7 1.8 5.1 3.2c1.4 1.5 2.4 3.3 3 5.6.8 2.2 1.1 4.8 1.1 7.8M213.2 44.4l-5 14.8h10l-5-14.8zm16 25.6c.3.6.4 1.2.4 1.5 0 .4 0 .7-.2.9-.2.2-.5.3-1 .3a26.6 26.6 0 0 1-5.4-.1c-.3 0-.5-.2-.6-.3l-.3-.6-2.3-7h-13l-2.3 6.8c0 .3-.2.5-.3.6l-.5.4-1.1.2a27.2 27.2 0 0 1-3.9 0c-.4 0-.8-.2-1-.4-.1-.2-.2-.5-.1-.8l.4-1.6L208.7 39l.4-.7.7-.5 1.3-.1a47 47 0 0 1 6.2.1c.4.1.6.3.8.5l.4.8L229.2 70zM253.3 69.7l-.1 1.3-.2 1-.3.5-.5.1h-16c-.6 0-1-.1-1.5-.5-.4-.3-.6-1-.6-1.7V38.7c0-.1 0-.3.2-.4.1-.2.3-.3.6-.4l1-.2a14.8 14.8 0 0 1 4.6.2l.5.4c.2.1.2.3.2.4v28h11l.5.2.3.5.2 1v1.3M275.9 40.7V42l-.3 1-.3.4-.5.2h-8.7v28c0 .2 0 .4-.2.6l-.6.3-1 .2a15.3 15.3 0 0 1-4.6-.2c-.2 0-.4-.2-.5-.3a.7.7 0 0 1-.2-.5V43.6h-8.7c-.2 0-.4 0-.5-.2l-.3-.5-.2-.9a10.9 10.9 0 0 1 .2-3.6c0-.2.2-.4.3-.5l.5-.1h24.5l.5.1.3.5.2 1v1.3M288.2 44.4l-5 14.8h10l-5-14.8zm16 25.6l.4 1.5c0 .4 0 .7-.2.9-.2.2-.6.3-1 .3a26.7 26.7 0 0 1-5.5-.1 1 1 0 0 1-.5-.3l-.3-.6-2.3-7h-13.1l-2.2 6.8-.3.6c-.1.2-.3.3-.6.4l-1 .2a27.3 27.3 0 0 1-3.9 0c-.5 0-.8-.2-1-.4-.2-.2-.2-.5-.2-.8l.4-1.6L283.7 39l.4-.7c.1-.2.3-.4.7-.5l1.3-.1a47.4 47.4 0 0 1 6.2.1c.3.1.6.3.7.5l.4.8L304.2 70zM325.5 48.9c0-1.2-.2-2.2-.6-3-.5-.8-1-1.4-1.6-1.8-.6-.4-1.3-.6-2-.7l-2.1-.2h-3v11.9h3.1c1.2 0 2.1-.2 2.9-.5.7-.3 1.4-.7 1.8-1.3.5-.5.9-1.2 1.1-2 .3-.7.4-1.5.4-2.4m7.4-.5c0 2-.3 3.7-.9 5.2a10 10 0 0 1-2.6 3.8c-1.2 1-2.6 1.8-4.3 2.3-1.7.6-3.7.8-6 .8h-3v11.2l-.1.5-.6.3-1 .2a14.9 14.9 0 0 1-4.6-.2c-.3 0-.5-.2-.6-.3a.8.8 0 0 1-.1-.5V40.3c0-.8.2-1.5.6-1.9.5-.4 1-.6 1.8-.6h8.2a27.6 27.6 0 0 1 5 .5c1 .2 2.1.6 3.2 1.1a8.9 8.9 0 0 1 4.5 5.1c.3 1.2.5 2.4.5 3.9M345.5 71.7l-.1.5-.6.3-1 .2a15 15 0 0 1-4.6-.2c-.3 0-.5-.2-.6-.3a.8.8 0 0 1-.2-.5v-33c0-.1 0-.3.2-.4.1-.2.3-.3.6-.4l1-.2a14.5 14.5 0 0 1 4.6.2c.3.1.5.2.6.4l.1.4v33zM377 55.2c0-1.8 0-3.5-.4-5-.3-1.5-.7-2.8-1.4-3.9a7 7 0 0 0-2.8-2.4 9.4 9.4 0 0 0-4.3-1c-1.8 0-3.2.4-4.4 1a8 8 0 0 0-2.8 2.7c-.7 1-1.2 2.4-1.5 3.8a27.8 27.8 0 0 0 0 9.8 11 11 0 0 0 1.4 3.9c.7 1 1.6 1.9 2.8 2.5 1.1.5 2.6.8 4.3.8a7.9 7.9 0 0 0 7.2-3.6c.7-1.1 1.2-2.4 1.5-3.9.3-1.5.5-3 .5-4.7m7.4-.4c0 2.9-.4 5.5-1 7.8-.8 2.2-1.9 4.2-3.3 5.8A13.8 13.8 0 0 1 375 72a21.6 21.6 0 0 1-14.4.2 12.3 12.3 0 0 1-8-8.8 28 28 0 0 1 0-15.6c.8-2.2 1.9-4.2 3.3-5.7a14 14 0 0 1 5.2-3.7c2.1-.8 4.6-1.2 7.3-1.2s5 .3 7 1 3.7 1.8 5 3.2c1.4 1.5 2.5 3.3 3.2 5.6.7 2.2 1 4.8 1 7.8M409.6 69.7a11.5 11.5 0 0 1-.3 2.3c0 .2-.2.4-.3.5l-.5.1h-16c-.5 0-1-.1-1.4-.5-.4-.3-.7-1-.7-1.7V38.7l.2-.4c.1-.2.3-.3.6-.4l1.1-.2a14.7 14.7 0 0 1 4.5.2c.3.1.5.2.6.4l.2.4v28h11l.4.2.3.5.2 1 .1 1.3M426.3 44.4l-5 14.8h10l-5-14.8zm16 25.6c.3.6.4 1.2.4 1.5.1.4 0 .7-.2.9-.2.2-.5.3-1 .3a26.7 26.7 0 0 1-5.4-.1c-.3 0-.5-.2-.6-.3l-.3-.6-2.3-7h-13l-2.3 6.8c0 .3-.2.5-.3.6 0 .2-.3.3-.5.4l-1.1.2a27.1 27.1 0 0 1-3.9 0c-.4 0-.7-.2-1-.4-.1-.2-.2-.5-.1-.8l.4-1.6L421.8 39l.4-.7.7-.5 1.3-.1a47.3 47.3 0 0 1 6.2.1c.4.1.6.3.8.5l.4.8L442.3 70zM22.5 68.6c-6.9-6.9-6.9-18 0-25L46.3 20a17.6 17.6 0 0 1 20-3.4v.1L42.9 40a5.9 5.9 0 0 0 8.2 8.3l4.2-4.1c2.3-2.4 4.7-2.4 6.7-.4l9 8.9c2.3 2.4 2.6 4.4 0 7.1l-8.5 8.5c-2.4 2.3-4.6 2.5-7.1 0L39 52a5.9 5.9 0 0 0-8.3 8.3L51.5 81c4 4 10.6 4 14.7 0l17.4-17.5c4-4 4-10.6 0-14.7L70.3 35.5c-2.1-2-2-4.4.2-6.6l4.3-4.3.5-.6L92 40.7a21.8 21.8 0 0 1 0 31L74.2 89.3a21.8 21.8 0 0 1-30.9 0L22.5 68.6zM195.7 67.4a13.7 13.7 0 0 1-.2 2l-.2.5-.5.6c-.2.2-.5.5-1.1.8l-2 1a18.2 18.2 0 0 1-6.3 1A18 18 0 0 1 179 72c-2-.7-3.6-1.8-5-3.3a14.7 14.7 0 0 1-3-5.4c-.7-2.2-1.1-4.8-1.1-7.7 0-3 .4-5.6 1.2-7.9.8-2.3 1.9-4.2 3.3-5.7 1.4-1.6 3.1-2.8 5-3.6a17.2 17.2 0 0 1 14 .6l1.3.8.5.6.2.7.1.9a16.4 16.4 0 0 1-.2 3.5c0 .2-.2.4-.3.5l-.5.2-1-.5a16.8 16.8 0 0 0-4-2 10 10 0 0 0-6.9.3 8 8 0 0 0-2.7 2.4c-.8 1-1.4 2.3-1.8 3.8-.4 1.5-.6 3.2-.6 5 0 2 .3 3.9.7 5.4.4 1.5 1 2.7 1.8 3.7s1.7 1.7 2.8 2.1c1.1.5 2.3.7 3.7.7a10.6 10.6 0 0 0 5.6-1.4l1.7-1c.4-.2.7-.4 1-.4l.4.1c0 .1.2.2.2.5l.2.9v1.5",
32
+ },
33
+ };
34
+ const DefaultLogo = ({ inverse, logoId, language }) => {
35
+ const logoColor = inverse ? colorGrayLightest : colorBrandBlue;
36
+ const { title, path, viewBox } = i18n[language];
37
+ return (h("svg", { role: "img", xmlns: "http://www.w3.org/2000/svg", fill: logoColor, "aria-labelledby": logoId, viewBox: viewBox }, h("title", { id: logoId }, title), h("path", { d: path })));
38
+ };
39
+ const DuetLogo = /*@__PURE__*/ proxyCustomElement(class extends H {
40
+ constructor() {
41
+ super();
42
+ this.__registerHost();
43
+ this.__attachShadow();
44
+ /**
45
+ * Own Properties.
46
+ */
47
+ this.logoId = createID("DuetLogo");
48
+ /**
49
+ * Theme of the logo.
50
+ */
51
+ this.theme = "";
52
+ /**
53
+ * Controls the margin of the component.
54
+ */
55
+ this.margin = "auto";
56
+ /**
57
+ * Use inverse version of the logo (white logo on dark background).
58
+ */
59
+ this.inverse = false;
60
+ /**
61
+ * Size variation of the logo.
62
+ */
63
+ this.size = "medium";
64
+ /**
65
+ * Where the logo links to.
66
+ */
67
+ this.href = "/";
68
+ /**
69
+ * The language of the logo.
70
+ * @deprecated this is now handled via the html lang tag, and is no longer used - kept to avoid breaking changes and ease unit testing
71
+ * @default "fi"
72
+ */
73
+ this.language = getLanguage();
74
+ }
75
+ /**
76
+ * Component lifecycle events.
77
+ */
78
+ componentWillLoad() {
79
+ inheritGlobalTheme(this);
80
+ }
81
+ /**
82
+ * Sets focus on the specified `duet-logo`. Use this method instead of the global
83
+ * `logo.focus()`.
84
+ */
85
+ async setFocus(options) {
86
+ if (this.nativeLink) {
87
+ this.nativeLink.focus(options);
88
+ }
89
+ }
90
+ /**
91
+ * render() function
92
+ * Always the last one in the class.
93
+ */
94
+ render() {
95
+ const TagName = this.href ? "a" : "div";
96
+ return (h(Host, { class: { "duet-m-0": this.margin === "none" } }, h(TagName, { href: this.href, ref: link => (this.nativeLink = link), class: {
97
+ "duet-logo": true,
98
+ [this.size]: true,
99
+ "duet-theme-turva": this.theme === "turva",
100
+ "duet-logo-en": this.language === "en",
101
+ "duet-logo-sv": this.language === "sv",
102
+ } }, this.theme === "turva" ? (h(TurvaLogo, { logoId: this.logoId, inverse: this.inverse })) : (h(DefaultLogo, { logoId: this.logoId, inverse: this.inverse, language: this.language })))));
103
+ }
104
+ get element() { return this; }
105
+ static get style() { return duetLogoCss; }
106
+ }, [1, "duet-logo", {
107
+ "theme": [1025],
108
+ "margin": [1],
109
+ "inverse": [4],
110
+ "size": [1],
111
+ "href": [1537],
112
+ "language": [1537],
113
+ "setFocus": [64]
114
+ }]);
115
+ function defineCustomElement() {
116
+ if (typeof customElements === "undefined") {
117
+ return;
118
+ }
119
+ const components = ["duet-logo"];
120
+ components.forEach(tagName => { switch (tagName) {
121
+ case "duet-logo":
122
+ if (!customElements.get(tagName)) {
123
+ customElements.define(tagName, DuetLogo);
124
+ }
125
+ break;
126
+ } });
127
+ }
128
+
129
+ export { DuetLogo as D, defineCustomElement as d };
@@ -0,0 +1,390 @@
1
+ /*!
2
+ * Built with Duet Design System
3
+ */
4
+ /*
5
+ Stencil Client Platform v2.16.0 | MIT Licensed | https://stenciljs.com
6
+ */
7
+ /**
8
+ * @license
9
+ * Copyright Google Inc. All Rights Reserved.
10
+ *
11
+ * Use of this source code is governed by an MIT-style license that can be
12
+ * found in the LICENSE file at https://angular.io/license
13
+ *
14
+ * This file is a port of shadowCSS from webcomponents.js to TypeScript.
15
+ * https://github.com/webcomponents/webcomponentsjs/blob/4efecd7e0e/src/ShadowCSS/ShadowCSS.js
16
+ * https://github.com/angular/angular/blob/master/packages/compiler/src/shadow_css.ts
17
+ */
18
+ const safeSelector = (selector) => {
19
+ const placeholders = [];
20
+ let index = 0;
21
+ // Replaces attribute selectors with placeholders.
22
+ // The WS in [attr="va lue"] would otherwise be interpreted as a selector separator.
23
+ selector = selector.replace(/(\[[^\]]*\])/g, (_, keep) => {
24
+ const replaceBy = `__ph-${index}__`;
25
+ placeholders.push(keep);
26
+ index++;
27
+ return replaceBy;
28
+ });
29
+ // Replaces the expression in `:nth-child(2n + 1)` with a placeholder.
30
+ // WS and "+" would otherwise be interpreted as selector separators.
31
+ const content = selector.replace(/(:nth-[-\w]+)(\([^)]+\))/g, (_, pseudo, exp) => {
32
+ const replaceBy = `__ph-${index}__`;
33
+ placeholders.push(exp);
34
+ index++;
35
+ return pseudo + replaceBy;
36
+ });
37
+ const ss = {
38
+ content,
39
+ placeholders,
40
+ };
41
+ return ss;
42
+ };
43
+ const restoreSafeSelector = (placeholders, content) => {
44
+ return content.replace(/__ph-(\d+)__/g, (_, index) => placeholders[+index]);
45
+ };
46
+ const _polyfillHost = '-shadowcsshost';
47
+ const _polyfillSlotted = '-shadowcssslotted';
48
+ // note: :host-context pre-processed to -shadowcsshostcontext.
49
+ const _polyfillHostContext = '-shadowcsscontext';
50
+ const _parenSuffix = ')(?:\\((' + '(?:\\([^)(]*\\)|[^)(]*)+?' + ')\\))?([^,{]*)';
51
+ const _cssColonHostRe = new RegExp('(' + _polyfillHost + _parenSuffix, 'gim');
52
+ const _cssColonHostContextRe = new RegExp('(' + _polyfillHostContext + _parenSuffix, 'gim');
53
+ const _cssColonSlottedRe = new RegExp('(' + _polyfillSlotted + _parenSuffix, 'gim');
54
+ const _polyfillHostNoCombinator = _polyfillHost + '-no-combinator';
55
+ const _polyfillHostNoCombinatorRe = /-shadowcsshost-no-combinator([^\s]*)/;
56
+ const _shadowDOMSelectorsRe = [/::shadow/g, /::content/g];
57
+ const _selectorReSuffix = '([>\\s~+[.,{:][\\s\\S]*)?$';
58
+ const _polyfillHostRe = /-shadowcsshost/gim;
59
+ const _colonHostRe = /:host/gim;
60
+ const _colonSlottedRe = /::slotted/gim;
61
+ const _colonHostContextRe = /:host-context/gim;
62
+ const _commentRe = /\/\*\s*[\s\S]*?\*\//g;
63
+ const stripComments = (input) => {
64
+ return input.replace(_commentRe, '');
65
+ };
66
+ const _commentWithHashRe = /\/\*\s*#\s*source(Mapping)?URL=[\s\S]+?\*\//g;
67
+ const extractCommentsWithHash = (input) => {
68
+ return input.match(_commentWithHashRe) || [];
69
+ };
70
+ const _ruleRe = /(\s*)([^;\{\}]+?)(\s*)((?:{%BLOCK%}?\s*;?)|(?:\s*;))/g;
71
+ const _curlyRe = /([{}])/g;
72
+ const _selectorPartsRe = /(^.*?[^\\])??((:+)(.*)|$)/;
73
+ const OPEN_CURLY = '{';
74
+ const CLOSE_CURLY = '}';
75
+ const BLOCK_PLACEHOLDER = '%BLOCK%';
76
+ const processRules = (input, ruleCallback) => {
77
+ const inputWithEscapedBlocks = escapeBlocks(input);
78
+ let nextBlockIndex = 0;
79
+ return inputWithEscapedBlocks.escapedString.replace(_ruleRe, (...m) => {
80
+ const selector = m[2];
81
+ let content = '';
82
+ let suffix = m[4];
83
+ let contentPrefix = '';
84
+ if (suffix && suffix.startsWith('{' + BLOCK_PLACEHOLDER)) {
85
+ content = inputWithEscapedBlocks.blocks[nextBlockIndex++];
86
+ suffix = suffix.substring(BLOCK_PLACEHOLDER.length + 1);
87
+ contentPrefix = '{';
88
+ }
89
+ const cssRule = {
90
+ selector,
91
+ content,
92
+ };
93
+ const rule = ruleCallback(cssRule);
94
+ return `${m[1]}${rule.selector}${m[3]}${contentPrefix}${rule.content}${suffix}`;
95
+ });
96
+ };
97
+ const escapeBlocks = (input) => {
98
+ const inputParts = input.split(_curlyRe);
99
+ const resultParts = [];
100
+ const escapedBlocks = [];
101
+ let bracketCount = 0;
102
+ let currentBlockParts = [];
103
+ for (let partIndex = 0; partIndex < inputParts.length; partIndex++) {
104
+ const part = inputParts[partIndex];
105
+ if (part === CLOSE_CURLY) {
106
+ bracketCount--;
107
+ }
108
+ if (bracketCount > 0) {
109
+ currentBlockParts.push(part);
110
+ }
111
+ else {
112
+ if (currentBlockParts.length > 0) {
113
+ escapedBlocks.push(currentBlockParts.join(''));
114
+ resultParts.push(BLOCK_PLACEHOLDER);
115
+ currentBlockParts = [];
116
+ }
117
+ resultParts.push(part);
118
+ }
119
+ if (part === OPEN_CURLY) {
120
+ bracketCount++;
121
+ }
122
+ }
123
+ if (currentBlockParts.length > 0) {
124
+ escapedBlocks.push(currentBlockParts.join(''));
125
+ resultParts.push(BLOCK_PLACEHOLDER);
126
+ }
127
+ const strEscapedBlocks = {
128
+ escapedString: resultParts.join(''),
129
+ blocks: escapedBlocks,
130
+ };
131
+ return strEscapedBlocks;
132
+ };
133
+ const insertPolyfillHostInCssText = (selector) => {
134
+ selector = selector
135
+ .replace(_colonHostContextRe, _polyfillHostContext)
136
+ .replace(_colonHostRe, _polyfillHost)
137
+ .replace(_colonSlottedRe, _polyfillSlotted);
138
+ return selector;
139
+ };
140
+ const convertColonRule = (cssText, regExp, partReplacer) => {
141
+ // m[1] = :host(-context), m[2] = contents of (), m[3] rest of rule
142
+ return cssText.replace(regExp, (...m) => {
143
+ if (m[2]) {
144
+ const parts = m[2].split(',');
145
+ const r = [];
146
+ for (let i = 0; i < parts.length; i++) {
147
+ const p = parts[i].trim();
148
+ if (!p)
149
+ break;
150
+ r.push(partReplacer(_polyfillHostNoCombinator, p, m[3]));
151
+ }
152
+ return r.join(',');
153
+ }
154
+ else {
155
+ return _polyfillHostNoCombinator + m[3];
156
+ }
157
+ });
158
+ };
159
+ const colonHostPartReplacer = (host, part, suffix) => {
160
+ return host + part.replace(_polyfillHost, '') + suffix;
161
+ };
162
+ const convertColonHost = (cssText) => {
163
+ return convertColonRule(cssText, _cssColonHostRe, colonHostPartReplacer);
164
+ };
165
+ const colonHostContextPartReplacer = (host, part, suffix) => {
166
+ if (part.indexOf(_polyfillHost) > -1) {
167
+ return colonHostPartReplacer(host, part, suffix);
168
+ }
169
+ else {
170
+ return host + part + suffix + ', ' + part + ' ' + host + suffix;
171
+ }
172
+ };
173
+ const convertColonSlotted = (cssText, slotScopeId) => {
174
+ const slotClass = '.' + slotScopeId + ' > ';
175
+ const selectors = [];
176
+ cssText = cssText.replace(_cssColonSlottedRe, (...m) => {
177
+ if (m[2]) {
178
+ const compound = m[2].trim();
179
+ const suffix = m[3];
180
+ const slottedSelector = slotClass + compound + suffix;
181
+ let prefixSelector = '';
182
+ for (let i = m[4] - 1; i >= 0; i--) {
183
+ const char = m[5][i];
184
+ if (char === '}' || char === ',') {
185
+ break;
186
+ }
187
+ prefixSelector = char + prefixSelector;
188
+ }
189
+ const orgSelector = prefixSelector + slottedSelector;
190
+ const addedSelector = `${prefixSelector.trimRight()}${slottedSelector.trim()}`;
191
+ if (orgSelector.trim() !== addedSelector.trim()) {
192
+ const updatedSelector = `${addedSelector}, ${orgSelector}`;
193
+ selectors.push({
194
+ orgSelector,
195
+ updatedSelector,
196
+ });
197
+ }
198
+ return slottedSelector;
199
+ }
200
+ else {
201
+ return _polyfillHostNoCombinator + m[3];
202
+ }
203
+ });
204
+ return {
205
+ selectors,
206
+ cssText,
207
+ };
208
+ };
209
+ const convertColonHostContext = (cssText) => {
210
+ return convertColonRule(cssText, _cssColonHostContextRe, colonHostContextPartReplacer);
211
+ };
212
+ const convertShadowDOMSelectors = (cssText) => {
213
+ return _shadowDOMSelectorsRe.reduce((result, pattern) => result.replace(pattern, ' '), cssText);
214
+ };
215
+ const makeScopeMatcher = (scopeSelector) => {
216
+ const lre = /\[/g;
217
+ const rre = /\]/g;
218
+ scopeSelector = scopeSelector.replace(lre, '\\[').replace(rre, '\\]');
219
+ return new RegExp('^(' + scopeSelector + ')' + _selectorReSuffix, 'm');
220
+ };
221
+ const selectorNeedsScoping = (selector, scopeSelector) => {
222
+ const re = makeScopeMatcher(scopeSelector);
223
+ return !re.test(selector);
224
+ };
225
+ const injectScopingSelector = (selector, scopingSelector) => {
226
+ return selector.replace(_selectorPartsRe, (_, before = '', _colonGroup, colon = '', after = '') => {
227
+ return before + scopingSelector + colon + after;
228
+ });
229
+ };
230
+ const applySimpleSelectorScope = (selector, scopeSelector, hostSelector) => {
231
+ // In Android browser, the lastIndex is not reset when the regex is used in String.replace()
232
+ _polyfillHostRe.lastIndex = 0;
233
+ if (_polyfillHostRe.test(selector)) {
234
+ const replaceBy = `.${hostSelector}`;
235
+ return selector
236
+ .replace(_polyfillHostNoCombinatorRe, (_, selector) => injectScopingSelector(selector, replaceBy))
237
+ .replace(_polyfillHostRe, replaceBy + ' ');
238
+ }
239
+ return scopeSelector + ' ' + selector;
240
+ };
241
+ const applyStrictSelectorScope = (selector, scopeSelector, hostSelector) => {
242
+ const isRe = /\[is=([^\]]*)\]/g;
243
+ scopeSelector = scopeSelector.replace(isRe, (_, ...parts) => parts[0]);
244
+ const className = '.' + scopeSelector;
245
+ const _scopeSelectorPart = (p) => {
246
+ let scopedP = p.trim();
247
+ if (!scopedP) {
248
+ return '';
249
+ }
250
+ if (p.indexOf(_polyfillHostNoCombinator) > -1) {
251
+ scopedP = applySimpleSelectorScope(p, scopeSelector, hostSelector);
252
+ }
253
+ else {
254
+ // remove :host since it should be unnecessary
255
+ const t = p.replace(_polyfillHostRe, '');
256
+ if (t.length > 0) {
257
+ scopedP = injectScopingSelector(t, className);
258
+ }
259
+ }
260
+ return scopedP;
261
+ };
262
+ const safeContent = safeSelector(selector);
263
+ selector = safeContent.content;
264
+ let scopedSelector = '';
265
+ let startIndex = 0;
266
+ let res;
267
+ const sep = /( |>|\+|~(?!=))\s*/g;
268
+ // If a selector appears before :host it should not be shimmed as it
269
+ // matches on ancestor elements and not on elements in the host's shadow
270
+ // `:host-context(div)` is transformed to
271
+ // `-shadowcsshost-no-combinatordiv, div -shadowcsshost-no-combinator`
272
+ // the `div` is not part of the component in the 2nd selectors and should not be scoped.
273
+ // Historically `component-tag:host` was matching the component so we also want to preserve
274
+ // this behavior to avoid breaking legacy apps (it should not match).
275
+ // The behavior should be:
276
+ // - `tag:host` -> `tag[h]` (this is to avoid breaking legacy apps, should not match anything)
277
+ // - `tag :host` -> `tag [h]` (`tag` is not scoped because it's considered part of a
278
+ // `:host-context(tag)`)
279
+ const hasHost = selector.indexOf(_polyfillHostNoCombinator) > -1;
280
+ // Only scope parts after the first `-shadowcsshost-no-combinator` when it is present
281
+ let shouldScope = !hasHost;
282
+ while ((res = sep.exec(selector)) !== null) {
283
+ const separator = res[1];
284
+ const part = selector.slice(startIndex, res.index).trim();
285
+ shouldScope = shouldScope || part.indexOf(_polyfillHostNoCombinator) > -1;
286
+ const scopedPart = shouldScope ? _scopeSelectorPart(part) : part;
287
+ scopedSelector += `${scopedPart} ${separator} `;
288
+ startIndex = sep.lastIndex;
289
+ }
290
+ const part = selector.substring(startIndex);
291
+ shouldScope = shouldScope || part.indexOf(_polyfillHostNoCombinator) > -1;
292
+ scopedSelector += shouldScope ? _scopeSelectorPart(part) : part;
293
+ // replace the placeholders with their original values
294
+ return restoreSafeSelector(safeContent.placeholders, scopedSelector);
295
+ };
296
+ const scopeSelector = (selector, scopeSelectorText, hostSelector, slotSelector) => {
297
+ return selector
298
+ .split(',')
299
+ .map((shallowPart) => {
300
+ if (slotSelector && shallowPart.indexOf('.' + slotSelector) > -1) {
301
+ return shallowPart.trim();
302
+ }
303
+ if (selectorNeedsScoping(shallowPart, scopeSelectorText)) {
304
+ return applyStrictSelectorScope(shallowPart, scopeSelectorText, hostSelector).trim();
305
+ }
306
+ else {
307
+ return shallowPart.trim();
308
+ }
309
+ })
310
+ .join(', ');
311
+ };
312
+ const scopeSelectors = (cssText, scopeSelectorText, hostSelector, slotSelector, commentOriginalSelector) => {
313
+ return processRules(cssText, (rule) => {
314
+ let selector = rule.selector;
315
+ let content = rule.content;
316
+ if (rule.selector[0] !== '@') {
317
+ selector = scopeSelector(rule.selector, scopeSelectorText, hostSelector, slotSelector);
318
+ }
319
+ else if (rule.selector.startsWith('@media') ||
320
+ rule.selector.startsWith('@supports') ||
321
+ rule.selector.startsWith('@page') ||
322
+ rule.selector.startsWith('@document')) {
323
+ content = scopeSelectors(rule.content, scopeSelectorText, hostSelector, slotSelector);
324
+ }
325
+ const cssRule = {
326
+ selector: selector.replace(/\s{2,}/g, ' ').trim(),
327
+ content,
328
+ };
329
+ return cssRule;
330
+ });
331
+ };
332
+ const scopeCssText = (cssText, scopeId, hostScopeId, slotScopeId, commentOriginalSelector) => {
333
+ cssText = insertPolyfillHostInCssText(cssText);
334
+ cssText = convertColonHost(cssText);
335
+ cssText = convertColonHostContext(cssText);
336
+ const slotted = convertColonSlotted(cssText, slotScopeId);
337
+ cssText = slotted.cssText;
338
+ cssText = convertShadowDOMSelectors(cssText);
339
+ if (scopeId) {
340
+ cssText = scopeSelectors(cssText, scopeId, hostScopeId, slotScopeId);
341
+ }
342
+ cssText = cssText.replace(/-shadowcsshost-no-combinator/g, `.${hostScopeId}`);
343
+ cssText = cssText.replace(/>\s*\*\s+([^{, ]+)/gm, ' $1 ');
344
+ return {
345
+ cssText: cssText.trim(),
346
+ slottedSelectors: slotted.selectors,
347
+ };
348
+ };
349
+ const scopeCss = (cssText, scopeId, commentOriginalSelector) => {
350
+ const hostScopeId = scopeId + '-h';
351
+ const slotScopeId = scopeId + '-s';
352
+ const commentsWithHash = extractCommentsWithHash(cssText);
353
+ cssText = stripComments(cssText);
354
+ const orgSelectors = [];
355
+ if (commentOriginalSelector) {
356
+ const processCommentedSelector = (rule) => {
357
+ const placeholder = `/*!@___${orgSelectors.length}___*/`;
358
+ const comment = `/*!@${rule.selector}*/`;
359
+ orgSelectors.push({ placeholder, comment });
360
+ rule.selector = placeholder + rule.selector;
361
+ return rule;
362
+ };
363
+ cssText = processRules(cssText, (rule) => {
364
+ if (rule.selector[0] !== '@') {
365
+ return processCommentedSelector(rule);
366
+ }
367
+ else if (rule.selector.startsWith('@media') ||
368
+ rule.selector.startsWith('@supports') ||
369
+ rule.selector.startsWith('@page') ||
370
+ rule.selector.startsWith('@document')) {
371
+ rule.content = processRules(rule.content, processCommentedSelector);
372
+ return rule;
373
+ }
374
+ return rule;
375
+ });
376
+ }
377
+ const scoped = scopeCssText(cssText, scopeId, hostScopeId, slotScopeId);
378
+ cssText = [scoped.cssText, ...commentsWithHash].join('\n');
379
+ if (commentOriginalSelector) {
380
+ orgSelectors.forEach(({ placeholder, comment }) => {
381
+ cssText = cssText.replace(placeholder, comment);
382
+ });
383
+ }
384
+ scoped.slottedSelectors.forEach((slottedSelector) => {
385
+ cssText = cssText.replace(slottedSelector.orgSelector, slottedSelector.updatedSelector);
386
+ });
387
+ return cssText;
388
+ };
389
+
390
+ export { scopeCss };
@@ -0,0 +1,20 @@
1
+ /*!
2
+ * Built with Duet Design System
3
+ */
4
+ const isArrowLeftKey = (e) => e.keyCode === 37;
5
+ const isArrowUpKey = (e) => e.keyCode === 38;
6
+ const isArrowRightKey = (e) => e.keyCode === 39;
7
+ const isArrowDownKey = (e) => e.keyCode === 40;
8
+ const isArrowKey = (e) => isArrowDownKey(e) || isArrowRightKey(e) || isArrowUpKey(e) || isArrowLeftKey(e);
9
+ const isEscapeKey = (e) => e.key === "Escape" || e.key === "Esc" || e.keyCode === 27;
10
+ const isTabKey = (e) => e.key === "Tab" || e.keyCode === 9;
11
+ const isBackspaceKey = (e) => e.keyCode === 8;
12
+ const isSpaceKey = (e) => e.key === "Space" || e.keyCode === 32;
13
+ const isPlusKey = (e) => e.key === "+" || e.keyCode === 43;
14
+ const isMinusKey = (e) => e.key === "-" || e.keyCode === 45;
15
+ const isQuestionKey = (e) => e.key === "?";
16
+ const isEnterKey = (e) => e.key === "Enter" || e.keyCode === 13;
17
+ const isKeyboardClick = (e) => isEnterKey(e) || isSpaceKey(e);
18
+ const isNumber = (e) => (e.keyCode >= 48 && e.keyCode <= 57) || (e.keyCode >= 96 && e.keyCode <= 105);
19
+
20
+ export { isQuestionKey as a, isEscapeKey as b, isEnterKey as c, isTabKey as d, isArrowUpKey as e, isArrowDownKey as f, isSpaceKey as g, isArrowLeftKey as h, isKeyboardClick as i, isArrowRightKey as j, isBackspaceKey as k, isArrowKey as l, isNumber as m, isMinusKey as n, isPlusKey as o };
@@ -0,0 +1,98 @@
1
+ /*!
2
+ * Built with Duet Design System
3
+ */
4
+ import { p as proxyCustomElement, H, h } from './p-1ad6b04e.js';
5
+ import { i as inheritGlobalTheme } from './p-4ebf1618.js';
6
+ import { s as sanitizeString } from './p-5a9d75e1.js';
7
+ import { g as getColorByName } from './p-86faf728.js';
8
+
9
+ const duetHeadingCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;position:relative;display:block;width:100%}.duet-heading{margin-bottom:16px !important;width:100%;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-style:normal;font-weight:800;font-variant-numeric:tabular-nums;line-height:1.25;color:#00294d;text-decoration:none;letter-spacing:-0.01rem;word-break:break-word}@media (min-width: 36em){.duet-heading{margin-bottom:20px !important}}.duet-heading.duet-theme-turva{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-style:italic;font-weight:700;color:#171c3a}.duet-heading.duet-heading-border{padding-bottom:20px;border-bottom:1px solid #e1e3e6}.duet-heading.duet-heading-border.duet-heading-border-solid{border-bottom-color:#657787}.duet-heading.duet-heading-hyphenate{-webkit-hyphens:auto;hyphens:auto}.duet-heading.h0{font-size:9.4vw}.duet-heading.h0.duet-p-0{padding:0 !important}.duet-heading.h0.duet-m-0{margin:0 !important}@media (max-width: 31.914893617rem){.duet-heading.h0{font-size:3rem}}@media (min-width: 47.8723404255rem){.duet-heading.h0{font-size:4.5rem}}@media (max-width: 22.5em){.duet-heading.h0{font-size:2.25rem}}.duet-heading.h1{font-size:7vw}.duet-heading.h1.duet-p-0{padding:0 !important}.duet-heading.h1.duet-m-0{margin:0 !important}@media (max-width: 32.1428571429rem){.duet-heading.h1{font-size:2.25rem}}@media (min-width: 42.8571428571rem){.duet-heading.h1{font-size:3rem}}@media (max-width: 22.5em){.duet-heading.h1{font-size:1.5rem}}.duet-heading.h2{font-size:5.8vw}.duet-heading.h2.duet-p-0{padding:0 !important}.duet-heading.h2.duet-m-0{margin:0 !important}@media (max-width: 25.8620689655rem){.duet-heading.h2{font-size:1.5rem}}@media (min-width: 38.7931034483rem){.duet-heading.h2{font-size:2.25rem}}.duet-heading.h2.duet-theme-turva{font-style:normal}@media (max-width: 22.5em){.duet-heading.h2{font-size:1.375rem}}.duet-heading.h3{margin-bottom:12px !important;font-size:4.2vw}.duet-heading.h3.duet-p-0{padding:0 !important}.duet-heading.h3.duet-m-0{margin:0 !important}@media (max-width: 29.7619047619rem){.duet-heading.h3{font-size:1.25rem}}@media (min-width: 35.7142857143rem){.duet-heading.h3{font-size:1.5rem}}.duet-heading.h3.duet-theme-turva{font-style:normal}.duet-heading.h3.duet-heading-border{padding-bottom:20px}.duet-heading.h4{margin-bottom:8px !important;font-size:4vw;letter-spacing:0}.duet-heading.h4.duet-p-0{padding:0 !important}.duet-heading.h4.duet-m-0{margin:0 !important}@media (max-width: 27.5rem){.duet-heading.h4{font-size:1.1rem}}@media (min-width: 31.25rem){.duet-heading.h4{font-size:1.25rem}}.duet-heading.h4.duet-theme-turva{font-style:normal;font-weight:700}.duet-heading.h4.duet-heading-border{padding-bottom:20px}.duet-heading.h5{margin-bottom:8px !important;font-size:4vw;font-weight:600;letter-spacing:0}.duet-heading.h5.duet-p-0{padding:0 !important}.duet-heading.h5.duet-m-0{margin:0 !important}@media (max-width: 27.5rem){.duet-heading.h5{font-size:1.1rem}}@media (min-width: 28.4090909091rem){.duet-heading.h5{font-size:1.1363636364rem}}.duet-heading.h5.duet-theme-turva{font-style:normal;font-weight:700}.duet-heading.h5.duet-heading-border{padding-bottom:16px}.duet-heading.h6{margin-bottom:8px !important;font-size:1rem;font-weight:600;letter-spacing:0}.duet-heading.h6.duet-p-0{padding:0 !important}.duet-heading.h6.duet-m-0{margin:0 !important}.duet-heading.h6.duet-theme-turva{font-style:normal;font-weight:700}.duet-heading.h6.duet-heading-border{padding-bottom:16px}.duet-heading.duet-normal,.duet-heading.duet-theme-turva.duet-normal{font-style:normal !important;font-weight:400 !important}.duet-heading.duet-semibold,.duet-heading.duet-theme-turva.duet-semibold{font-style:normal !important;font-weight:600 !important}";
10
+
11
+ const DuetHeading = /*@__PURE__*/ proxyCustomElement(class extends H {
12
+ constructor() {
13
+ super();
14
+ this.__registerHost();
15
+ this.__attachShadow();
16
+ /**
17
+ * The actual heading level used in the HTML markup.
18
+ */
19
+ this.level = "h2";
20
+ /**
21
+ * Controls the margin of the component.
22
+ */
23
+ this.margin = "auto";
24
+ /**
25
+ * Enable or disable the border underneath the heading, solid will darken the border
26
+ */
27
+ this.border = false;
28
+ /**
29
+ * This property allows you to set normal or semibold font weight for all sizes
30
+ * when needed.
31
+ */
32
+ this.weight = "auto";
33
+ /**
34
+ * Custom color for the heading as a design token entered in camelCase or
35
+ * kebab-case. Example: "color-primary".
36
+ */
37
+ this.color = "";
38
+ /**
39
+ * Theme of the heading.
40
+ */
41
+ this.theme = "";
42
+ /**
43
+ * Enable hyphenation for long titles. Useful when there is no control over content e.g. user-generated content.
44
+ */
45
+ this.hyphenate = false;
46
+ }
47
+ /**
48
+ * Component lifecycle events.
49
+ */
50
+ componentWillLoad() {
51
+ inheritGlobalTheme(this);
52
+ }
53
+ /**
54
+ * render() function
55
+ * Always the last one in the class.
56
+ */
57
+ render() {
58
+ const TagName = sanitizeString(this.level);
59
+ const color = getColorByName(this.color);
60
+ return (h(TagName, { class: {
61
+ "duet-heading": true,
62
+ "duet-heading-border": this.border !== false,
63
+ "duet-heading-border-solid": this.border === "solid",
64
+ "duet-normal": this.weight === "normal",
65
+ "duet-semibold": this.weight === "semibold",
66
+ "duet-heading-hyphenate": this.hyphenate,
67
+ "duet-m-0": this.margin === "none",
68
+ [this.visualLevel ? this.visualLevel : this.level]: true,
69
+ "duet-theme-turva": this.theme === "turva",
70
+ }, style: { color } }, h("slot", null)));
71
+ }
72
+ get element() { return this; }
73
+ static get style() { return duetHeadingCss; }
74
+ }, [1, "duet-heading", {
75
+ "level": [513],
76
+ "margin": [1],
77
+ "visualLevel": [1, "visual-level"],
78
+ "border": [8],
79
+ "weight": [1],
80
+ "color": [1],
81
+ "theme": [1025],
82
+ "hyphenate": [4]
83
+ }]);
84
+ function defineCustomElement() {
85
+ if (typeof customElements === "undefined") {
86
+ return;
87
+ }
88
+ const components = ["duet-heading"];
89
+ components.forEach(tagName => { switch (tagName) {
90
+ case "duet-heading":
91
+ if (!customElements.get(tagName)) {
92
+ customElements.define(tagName, DuetHeading);
93
+ }
94
+ break;
95
+ } });
96
+ }
97
+
98
+ export { DuetHeading as D, defineCustomElement as d };