@duetds/components 6.0.3 → 6.0.4

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 (430) hide show
  1. package/hydrate/index.js +46 -38
  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 +3 -3
  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 +1 -1
  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-8a615003.js} +1 -1
  46. package/lib/cjs/{index-28a9133b.js → index-d106d801.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-group/duet-choice-group.js +1 -1
  52. package/lib/collection/components/duet-upload/duet-upload.js +18 -15
  53. package/lib/dist-custom-elements/duet-action-button.d.ts +11 -0
  54. package/lib/dist-custom-elements/duet-action-button.js +9 -0
  55. package/lib/dist-custom-elements/duet-alert.d.ts +11 -0
  56. package/lib/dist-custom-elements/duet-alert.js +9 -0
  57. package/lib/dist-custom-elements/duet-badge.d.ts +11 -0
  58. package/lib/dist-custom-elements/duet-badge.js +9 -0
  59. package/lib/dist-custom-elements/duet-breadcrumb.d.ts +11 -0
  60. package/lib/dist-custom-elements/duet-breadcrumb.js +73 -0
  61. package/lib/dist-custom-elements/duet-breadcrumbs.d.ts +11 -0
  62. package/lib/dist-custom-elements/duet-breadcrumbs.js +90 -0
  63. package/lib/dist-custom-elements/duet-button.d.ts +11 -0
  64. package/lib/dist-custom-elements/duet-button.js +9 -0
  65. package/lib/dist-custom-elements/duet-caption.d.ts +11 -0
  66. package/lib/dist-custom-elements/duet-caption.js +9 -0
  67. package/lib/dist-custom-elements/duet-card.d.ts +11 -0
  68. package/lib/dist-custom-elements/duet-card.js +190 -0
  69. package/lib/dist-custom-elements/duet-checkbox.d.ts +11 -0
  70. package/lib/dist-custom-elements/duet-checkbox.js +163 -0
  71. package/lib/dist-custom-elements/duet-choice-group.d.ts +11 -0
  72. package/lib/dist-custom-elements/duet-choice-group.js +226 -0
  73. package/lib/dist-custom-elements/duet-choice.d.ts +11 -0
  74. package/lib/dist-custom-elements/duet-choice.js +390 -0
  75. package/lib/dist-custom-elements/duet-collapsible.d.ts +11 -0
  76. package/lib/dist-custom-elements/duet-collapsible.js +170 -0
  77. package/lib/dist-custom-elements/duet-combobox.d.ts +11 -0
  78. package/lib/dist-custom-elements/duet-combobox.js +432 -0
  79. package/lib/dist-custom-elements/duet-cookie-consent.d.ts +11 -0
  80. package/lib/dist-custom-elements/duet-cookie-consent.js +94 -0
  81. package/lib/dist-custom-elements/duet-date-picker.d.ts +11 -0
  82. package/lib/dist-custom-elements/duet-date-picker.js +906 -0
  83. package/lib/dist-custom-elements/duet-divider.d.ts +11 -0
  84. package/lib/dist-custom-elements/duet-divider.js +9 -0
  85. package/lib/dist-custom-elements/duet-editable-table.d.ts +11 -0
  86. package/lib/dist-custom-elements/duet-editable-table.js +9 -0
  87. package/lib/dist-custom-elements/duet-empty-state.d.ts +11 -0
  88. package/lib/dist-custom-elements/duet-empty-state.js +9 -0
  89. package/lib/dist-custom-elements/duet-fieldset.d.ts +11 -0
  90. package/lib/dist-custom-elements/duet-fieldset.js +9 -0
  91. package/lib/dist-custom-elements/duet-footer.d.ts +11 -0
  92. package/lib/dist-custom-elements/duet-footer.js +199 -0
  93. package/lib/dist-custom-elements/duet-grid-item.d.ts +11 -0
  94. package/lib/dist-custom-elements/duet-grid-item.js +9 -0
  95. package/lib/dist-custom-elements/duet-grid.d.ts +11 -0
  96. package/lib/dist-custom-elements/duet-grid.js +9 -0
  97. package/lib/dist-custom-elements/duet-header.d.ts +11 -0
  98. package/lib/dist-custom-elements/duet-header.js +764 -0
  99. package/lib/dist-custom-elements/duet-heading.d.ts +11 -0
  100. package/lib/dist-custom-elements/duet-heading.js +9 -0
  101. package/lib/dist-custom-elements/duet-hero.d.ts +11 -0
  102. package/lib/dist-custom-elements/duet-hero.js +314 -0
  103. package/lib/dist-custom-elements/duet-icon.d.ts +11 -0
  104. package/lib/dist-custom-elements/duet-icon.js +9 -0
  105. package/lib/dist-custom-elements/duet-input.d.ts +11 -0
  106. package/lib/dist-custom-elements/duet-input.js +9 -0
  107. package/lib/dist-custom-elements/duet-label.d.ts +11 -0
  108. package/lib/dist-custom-elements/duet-label.js +9 -0
  109. package/lib/dist-custom-elements/duet-layout.d.ts +11 -0
  110. package/lib/dist-custom-elements/duet-layout.js +107 -0
  111. package/lib/dist-custom-elements/duet-link.d.ts +11 -0
  112. package/lib/dist-custom-elements/duet-link.js +9 -0
  113. package/lib/dist-custom-elements/duet-list-item.d.ts +11 -0
  114. package/lib/dist-custom-elements/duet-list-item.js +9 -0
  115. package/lib/dist-custom-elements/duet-list.d.ts +11 -0
  116. package/lib/dist-custom-elements/duet-list.js +9 -0
  117. package/lib/dist-custom-elements/duet-logo.d.ts +11 -0
  118. package/lib/dist-custom-elements/duet-logo.js +9 -0
  119. package/lib/dist-custom-elements/duet-modal.d.ts +11 -0
  120. package/lib/dist-custom-elements/duet-modal.js +331 -0
  121. package/lib/dist-custom-elements/duet-notification-drawer.d.ts +11 -0
  122. package/lib/dist-custom-elements/duet-notification-drawer.js +194 -0
  123. package/lib/dist-custom-elements/duet-notification.d.ts +11 -0
  124. package/lib/dist-custom-elements/duet-notification.js +114 -0
  125. package/lib/dist-custom-elements/duet-number-input.d.ts +11 -0
  126. package/lib/dist-custom-elements/duet-number-input.js +516 -0
  127. package/lib/dist-custom-elements/duet-pagination.d.ts +11 -0
  128. package/lib/dist-custom-elements/duet-pagination.js +396 -0
  129. package/lib/dist-custom-elements/duet-paragraph.d.ts +11 -0
  130. package/lib/dist-custom-elements/duet-paragraph.js +9 -0
  131. package/lib/dist-custom-elements/duet-progress.d.ts +11 -0
  132. package/lib/dist-custom-elements/duet-progress.js +9 -0
  133. package/lib/dist-custom-elements/duet-radio-group.d.ts +11 -0
  134. package/lib/dist-custom-elements/duet-radio-group.js +216 -0
  135. package/lib/dist-custom-elements/duet-radio.d.ts +11 -0
  136. package/lib/dist-custom-elements/duet-radio.js +167 -0
  137. package/lib/dist-custom-elements/duet-range-slider.d.ts +11 -0
  138. package/lib/dist-custom-elements/duet-range-slider.js +209 -0
  139. package/lib/dist-custom-elements/duet-range-stepper.d.ts +11 -0
  140. package/lib/dist-custom-elements/duet-range-stepper.js +225 -0
  141. package/lib/dist-custom-elements/duet-scrollable.d.ts +11 -0
  142. package/lib/dist-custom-elements/duet-scrollable.js +9 -0
  143. package/lib/dist-custom-elements/duet-select.d.ts +11 -0
  144. package/lib/dist-custom-elements/duet-select.js +9 -0
  145. package/lib/dist-custom-elements/duet-spacer.d.ts +11 -0
  146. package/lib/dist-custom-elements/duet-spacer.js +9 -0
  147. package/lib/dist-custom-elements/duet-spinner.d.ts +11 -0
  148. package/lib/dist-custom-elements/duet-spinner.js +9 -0
  149. package/lib/dist-custom-elements/duet-step.d.ts +11 -0
  150. package/lib/dist-custom-elements/duet-step.js +150 -0
  151. package/lib/dist-custom-elements/duet-stepper.d.ts +11 -0
  152. package/lib/dist-custom-elements/duet-stepper.js +164 -0
  153. package/lib/dist-custom-elements/duet-tab-group.d.ts +11 -0
  154. package/lib/dist-custom-elements/duet-tab-group.js +301 -0
  155. package/lib/dist-custom-elements/duet-tab.d.ts +11 -0
  156. package/lib/dist-custom-elements/duet-tab.js +59 -0
  157. package/lib/dist-custom-elements/duet-table.d.ts +11 -0
  158. package/lib/dist-custom-elements/duet-table.js +9 -0
  159. package/lib/dist-custom-elements/duet-textarea.d.ts +11 -0
  160. package/lib/dist-custom-elements/duet-textarea.js +297 -0
  161. package/lib/dist-custom-elements/duet-toggle.d.ts +11 -0
  162. package/lib/dist-custom-elements/duet-toggle.js +150 -0
  163. package/lib/dist-custom-elements/duet-tooltip.d.ts +11 -0
  164. package/lib/dist-custom-elements/duet-tooltip.js +9 -0
  165. package/lib/dist-custom-elements/duet-tray.d.ts +11 -0
  166. package/lib/dist-custom-elements/duet-tray.js +175 -0
  167. package/lib/dist-custom-elements/duet-upload-aria-status.d.ts +11 -0
  168. package/lib/dist-custom-elements/duet-upload-aria-status.js +9 -0
  169. package/lib/dist-custom-elements/duet-upload.d.ts +11 -0
  170. package/lib/dist-custom-elements/duet-upload.js +1514 -0
  171. package/lib/dist-custom-elements/duet-visually-hidden.d.ts +11 -0
  172. package/lib/dist-custom-elements/duet-visually-hidden.js +9 -0
  173. package/lib/dist-custom-elements/index.d.ts +26 -0
  174. package/lib/dist-custom-elements/index.js +37 -0
  175. package/lib/dist-custom-elements/p-01de0640.js +37 -0
  176. package/lib/{esm/tokens-8ff8c570.js → dist-custom-elements/p-02305a1e.js} +18 -15
  177. package/lib/dist-custom-elements/p-08cfe544.js +125 -0
  178. package/lib/dist-custom-elements/p-09ed1ffa.js +160 -0
  179. package/lib/dist-custom-elements/p-0a928609.js +241 -0
  180. package/lib/dist-custom-elements/p-0b3f675e.js +47 -0
  181. package/lib/{esm/focus-utils-559691b3.js → dist-custom-elements/p-0b8f16f1.js} +1 -1
  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-14dcd82b.js +133 -0
  185. package/lib/dist-custom-elements/p-16d518fd.js +66 -0
  186. package/lib/dist-custom-elements/p-213ef84c.js +87 -0
  187. package/lib/dist-custom-elements/p-266411cf.js +307 -0
  188. package/lib/dist-custom-elements/p-3d987b87.js +75 -0
  189. package/lib/dist-custom-elements/p-3fc2d124.js +1666 -0
  190. package/lib/dist-custom-elements/p-4717744e.js +110 -0
  191. package/lib/dist-custom-elements/p-4ebf1618.js +13 -0
  192. package/lib/dist-custom-elements/p-56118313.js +53 -0
  193. package/lib/dist-custom-elements/p-565779f5.js +199 -0
  194. package/lib/dist-custom-elements/p-5a9d75e1.js +55 -0
  195. package/lib/dist-custom-elements/p-65d3ead5.js +428 -0
  196. package/lib/dist-custom-elements/p-6886544b.js +129 -0
  197. package/lib/dist-custom-elements/p-6e74e660.js +275 -0
  198. package/lib/dist-custom-elements/p-704245ef.js +9 -0
  199. package/lib/dist-custom-elements/p-76f00bd5.js +10 -0
  200. package/lib/dist-custom-elements/p-7739604d.js +214 -0
  201. package/lib/dist-custom-elements/p-81c9b244.js +65 -0
  202. package/lib/{esm/token-utils-df78f4d8.js → dist-custom-elements/p-86faf728.js} +1 -1
  203. package/lib/dist-custom-elements/p-88511d7a.js +275 -0
  204. package/lib/dist-custom-elements/p-9c732bb9.js +193 -0
  205. package/lib/dist-custom-elements/p-acdba2db.js +114 -0
  206. package/lib/dist-custom-elements/p-b08e57cf.js +37 -0
  207. package/lib/dist-custom-elements/p-b9058029.js +138 -0
  208. package/lib/dist-custom-elements/p-bd4b92c4.js +86 -0
  209. package/lib/dist-custom-elements/p-bd779757.js +184 -0
  210. package/lib/dist-custom-elements/p-c1325e35.js +11 -0
  211. package/lib/dist-custom-elements/p-c70f3ccb.js +70 -0
  212. package/lib/dist-custom-elements/p-d004da5f.js +6 -0
  213. package/lib/dist-custom-elements/p-d4c234ed.js +390 -0
  214. package/lib/dist-custom-elements/p-d8549efe.js +20 -0
  215. package/lib/dist-custom-elements/p-d96debb6.js +287 -0
  216. package/lib/dist-custom-elements/p-da03a443.js +154 -0
  217. package/lib/dist-custom-elements/p-e294c0fb.js +341 -0
  218. package/lib/dist-custom-elements/p-e4d5fbc0.js +87 -0
  219. package/lib/dist-custom-elements/p-e5c8a58f.js +71 -0
  220. package/lib/dist-custom-elements/p-ede854e1.js +92 -0
  221. package/lib/dist-custom-elements/p-ef8eff22.js +64 -0
  222. package/lib/dist-custom-elements/p-f11208c3.js +6 -0
  223. package/lib/dist-custom-elements/p-f7db7c40.js +98 -0
  224. package/lib/dist-custom-elements/p-fc5362e7.js +61 -0
  225. package/lib/duet/duet.esm.js +1 -1
  226. package/lib/duet/duet.js +1 -1
  227. package/lib/duet/{p-6c875cfa.system.entry.js → p-01c551f1.system.entry.js} +1 -1
  228. package/lib/duet/p-02305a1e.js +4 -0
  229. package/lib/duet/{p-1010fb94.entry.js → p-033bfa67.entry.js} +1 -1
  230. package/lib/duet/{p-946aa901.system.entry.js → p-07a850a5.system.entry.js} +1 -1
  231. package/lib/duet/{p-9e54127f.system.entry.js → p-09e2ff96.system.entry.js} +1 -1
  232. package/lib/duet/{p-d0cee171.entry.js → p-0b74af40.entry.js} +1 -1
  233. package/lib/duet/{p-2bd79d6b.entry.js → p-0c2a51ac.entry.js} +1 -1
  234. package/lib/duet/{p-eb54474f.system.entry.js → p-0c9f0b8a.system.entry.js} +1 -1
  235. package/lib/duet/{p-104bf1b5.entry.js → p-0d96924d.entry.js} +1 -1
  236. package/lib/duet/{p-d444107c.system.entry.js → p-0e48bca9.system.entry.js} +1 -1
  237. package/lib/duet/{p-de815460.system.entry.js → p-0e98f667.system.entry.js} +1 -1
  238. package/lib/duet/{p-cfa50753.system.js → p-1999f503.system.js} +1 -1
  239. package/lib/duet/{p-4034b322.system.entry.js → p-1a41550e.system.entry.js} +1 -1
  240. package/lib/duet/{p-bec24271.system.entry.js → p-1bd57792.system.entry.js} +1 -1
  241. package/lib/duet/{p-dab594cf.system.entry.js → p-1e0d7680.system.entry.js} +1 -1
  242. package/lib/duet/{p-6841adb8.system.entry.js → p-1ebd7945.system.entry.js} +1 -1
  243. package/lib/duet/p-1fc60a60.system.js +4 -0
  244. package/lib/duet/{p-47ed8218.entry.js → p-21662682.entry.js} +1 -1
  245. package/lib/duet/{p-b008fe25.entry.js → p-23943f39.entry.js} +1 -1
  246. package/lib/duet/{p-92d95bde.system.entry.js → p-23a8fa64.system.entry.js} +1 -1
  247. package/lib/duet/{p-72443e94.system.entry.js → p-264a0e0c.system.entry.js} +1 -1
  248. package/lib/duet/{p-5d967d15.entry.js → p-27f72e70.entry.js} +1 -1
  249. package/lib/duet/{p-09364233.entry.js → p-2a3b1a2e.entry.js} +1 -1
  250. package/lib/duet/{p-df11c241.system.entry.js → p-2b320481.system.entry.js} +1 -1
  251. package/lib/duet/p-32f7178a.system.js +4 -0
  252. package/lib/duet/{p-e3983bfe.entry.js → p-3620ded5.entry.js} +1 -1
  253. package/lib/duet/{p-b01e2523.entry.js → p-3904232a.entry.js} +1 -1
  254. package/lib/duet/{p-2bba6489.entry.js → p-3b173cbd.entry.js} +1 -1
  255. package/lib/duet/{p-087d72dd.system.entry.js → p-430acad4.system.entry.js} +1 -1
  256. package/lib/duet/{p-23ba48a5.system.entry.js → p-4463946b.system.entry.js} +1 -1
  257. package/lib/duet/{p-8157e5bb.system.entry.js → p-44e9b1c8.system.entry.js} +1 -1
  258. package/lib/duet/p-49ce11a1.entry.js +4 -0
  259. package/lib/duet/{p-06ab2787.system.entry.js → p-4d6feeb5.system.entry.js} +1 -1
  260. package/lib/duet/{p-f7ac05dd.system.entry.js → p-4d767c61.system.entry.js} +1 -1
  261. package/lib/duet/{p-e0f6ebf4.system.entry.js → p-4f1fe415.system.entry.js} +1 -1
  262. package/lib/duet/{p-de3c0f4d.js → p-532e9db7.js} +1 -1
  263. package/lib/duet/{p-9f8a51b4.system.entry.js → p-55fd512b.system.entry.js} +1 -1
  264. package/lib/duet/{p-398a79a0.js → p-588be556.js} +1 -1
  265. package/lib/duet/{p-074bfd45.entry.js → p-5af6d9e2.entry.js} +1 -1
  266. package/lib/duet/{p-9308c1e6.entry.js → p-5e1d64d8.entry.js} +1 -1
  267. package/lib/duet/{p-4c93a18e.system.entry.js → p-5f6452ce.system.entry.js} +1 -1
  268. package/lib/duet/{p-de986d77.system.entry.js → p-60e29f52.system.entry.js} +1 -1
  269. package/lib/duet/{p-e1654a8b.system.entry.js → p-613c4099.system.entry.js} +1 -1
  270. package/lib/duet/{p-94c07a46.system.entry.js → p-61444a3d.system.entry.js} +1 -1
  271. package/lib/duet/{p-d0f72f22.js → p-6aca8584.js} +1 -1
  272. package/lib/duet/{p-db15d420.system.entry.js → p-6e5f2016.system.entry.js} +1 -1
  273. package/lib/duet/{p-63dbd5af.system.entry.js → p-6f93638a.system.entry.js} +1 -1
  274. package/lib/duet/{p-c8d9da51.entry.js → p-71105750.entry.js} +1 -1
  275. package/lib/duet/{p-db115036.entry.js → p-73c6e5fb.entry.js} +1 -1
  276. package/lib/duet/{p-b3dc55a6.system.entry.js → p-751f6957.system.entry.js} +1 -1
  277. package/lib/duet/{p-1931d33f.system.js → p-77600ed7.system.js} +1 -1
  278. package/lib/duet/{p-571440c7.system.entry.js → p-77ca874f.system.entry.js} +1 -1
  279. package/lib/duet/{p-c2e37fb4.entry.js → p-787f9eba.entry.js} +1 -1
  280. package/lib/duet/{p-674e546f.system.entry.js → p-7ad2cb10.system.entry.js} +1 -1
  281. package/lib/duet/{p-b066a6b7.entry.js → p-7de4d97d.entry.js} +1 -1
  282. package/lib/duet/{p-3d029dce.system.entry.js → p-8107aeb5.system.entry.js} +1 -1
  283. package/lib/duet/{p-31004a7b.system.entry.js → p-86cb85b9.system.entry.js} +1 -1
  284. package/lib/duet/{p-f2eaad1e.js → p-875ae637.js} +1 -1
  285. package/lib/duet/{p-de146ffa.system.entry.js → p-8aafa8e7.system.entry.js} +1 -1
  286. package/lib/duet/{p-064dd5fd.entry.js → p-8b09a46f.entry.js} +1 -1
  287. package/lib/duet/{p-16521f2d.entry.js → p-8c08e7ba.entry.js} +1 -1
  288. package/lib/duet/{p-0626271f.entry.js → p-8e8f8b29.entry.js} +1 -1
  289. package/lib/duet/{p-300147ad.entry.js → p-9094fcf8.entry.js} +1 -1
  290. package/lib/duet/{p-5beb69ac.entry.js → p-988a781d.entry.js} +1 -1
  291. package/lib/duet/{p-cca9c605.system.entry.js → p-a395d4bc.system.entry.js} +1 -1
  292. package/lib/duet/{p-97a369d6.entry.js → p-a585113b.entry.js} +1 -1
  293. package/lib/duet/{p-ef4b4f35.entry.js → p-aa8973fc.entry.js} +1 -1
  294. package/lib/duet/{p-23ad5f8a.entry.js → p-ab7f4070.entry.js} +1 -1
  295. package/lib/duet/{p-49db53a1.system.entry.js → p-ab89d948.system.entry.js} +1 -1
  296. package/lib/duet/{p-20271117.entry.js → p-aef02083.entry.js} +1 -1
  297. package/lib/duet/{p-c5499bc3.entry.js → p-afdc57da.entry.js} +1 -1
  298. package/lib/duet/{p-9f18afd6.entry.js → p-b2abaa9e.entry.js} +1 -1
  299. package/lib/duet/{p-744ce6ce.entry.js → p-b55e55b5.entry.js} +1 -1
  300. package/lib/duet/{p-3cc55c8a.system.entry.js → p-bbc91480.system.entry.js} +1 -1
  301. package/lib/duet/{p-1aca544d.entry.js → p-bbe1a2cd.entry.js} +1 -1
  302. package/lib/duet/{p-8c409ffe.system.entry.js → p-bd3c926c.system.entry.js} +1 -1
  303. package/lib/duet/{p-e2ac0727.system.entry.js → p-bec16aea.system.entry.js} +1 -1
  304. package/lib/duet/p-bf59e11d.entry.js +4 -0
  305. package/lib/duet/{p-ab2f08b3.system.entry.js → p-c4217626.system.entry.js} +1 -1
  306. package/lib/duet/{p-5658ac20.system.entry.js → p-c5f6ea62.system.entry.js} +1 -1
  307. package/lib/duet/{p-41cb95cb.entry.js → p-c6d05091.entry.js} +1 -1
  308. package/lib/duet/{p-0f7f7e7d.system.entry.js → p-c73a591d.system.entry.js} +1 -1
  309. package/lib/duet/{p-6b0a4b3b.entry.js → p-c863a0d1.entry.js} +1 -1
  310. package/lib/duet/{p-c41b07d7.entry.js → p-c986532d.entry.js} +1 -1
  311. package/lib/duet/{p-ae515c54.entry.js → p-caa49454.entry.js} +1 -1
  312. package/lib/duet/{p-9fcac068.system.entry.js → p-ccb0de84.system.entry.js} +1 -1
  313. package/lib/duet/{p-18cc5627.system.js → p-d209191d.system.js} +1 -1
  314. package/lib/duet/{p-bb9624c3.entry.js → p-defba7cd.entry.js} +1 -1
  315. package/lib/duet/{p-339e5901.system.js → p-df785776.system.js} +1 -1
  316. package/lib/duet/{p-691f609b.entry.js → p-e9862947.entry.js} +1 -1
  317. package/lib/duet/{p-5d1787cb.entry.js → p-eb74c96e.entry.js} +1 -1
  318. package/lib/duet/{p-0ae59d7c.entry.js → p-ece47184.entry.js} +1 -1
  319. package/lib/duet/{p-89048c6f.entry.js → p-f09f968c.entry.js} +1 -1
  320. package/lib/duet/{p-68c3b19f.entry.js → p-f97776be.entry.js} +1 -1
  321. package/lib/duet/{p-6eecfced.system.entry.js → p-fe8fc877.system.entry.js} +1 -1
  322. package/lib/esm/duet-action-button.entry.js +3 -3
  323. package/lib/esm/duet-alert.entry.js +1 -1
  324. package/lib/esm/duet-badge.entry.js +1 -1
  325. package/lib/esm/duet-breadcrumb.entry.js +1 -1
  326. package/lib/esm/duet-breadcrumbs.entry.js +1 -1
  327. package/lib/esm/duet-button_2.entry.js +3 -3
  328. package/lib/esm/duet-caption_4.entry.js +3 -3
  329. package/lib/esm/duet-card.entry.js +3 -3
  330. package/lib/esm/duet-checkbox.entry.js +1 -1
  331. package/lib/esm/duet-choice_2.entry.js +3 -3
  332. package/lib/esm/duet-collapsible.entry.js +2 -2
  333. package/lib/esm/duet-combobox.entry.js +1 -1
  334. package/lib/esm/duet-cookie-consent.entry.js +1 -1
  335. package/lib/esm/duet-date-picker.entry.js +2 -2
  336. package/lib/esm/duet-divider_2.entry.js +1 -1
  337. package/lib/esm/duet-editable-table_3.entry.js +17 -14
  338. package/lib/esm/duet-empty-state.entry.js +1 -1
  339. package/lib/esm/duet-fieldset.entry.js +1 -1
  340. package/lib/esm/duet-footer.entry.js +1 -1
  341. package/lib/esm/duet-grid_2.entry.js +2 -2
  342. package/lib/esm/duet-header_2.entry.js +3 -3
  343. package/lib/esm/duet-hero.entry.js +1 -1
  344. package/lib/esm/duet-icon.entry.js +3 -3
  345. package/lib/esm/duet-input_2.entry.js +1 -1
  346. package/lib/esm/duet-layout.entry.js +1 -1
  347. package/lib/esm/duet-list_2.entry.js +1 -1
  348. package/lib/esm/duet-modal.entry.js +2 -2
  349. package/lib/esm/duet-notification_2.entry.js +1 -1
  350. package/lib/esm/duet-number-input.entry.js +1 -1
  351. package/lib/esm/duet-pagination_2.entry.js +1 -1
  352. package/lib/esm/duet-progress.entry.js +1 -1
  353. package/lib/esm/duet-radio_2.entry.js +1 -1
  354. package/lib/esm/duet-range-slider.entry.js +2 -2
  355. package/lib/esm/duet-scrollable_3.entry.js +1 -1
  356. package/lib/esm/duet-select.entry.js +1 -1
  357. package/lib/esm/duet-step_2.entry.js +1 -1
  358. package/lib/esm/duet-textarea.entry.js +1 -1
  359. package/lib/esm/duet-toggle.entry.js +1 -1
  360. package/lib/esm/duet-tooltip.entry.js +1 -1
  361. package/lib/esm/duet-tray.entry.js +2 -2
  362. package/lib/esm/duet-upload-aria-status.entry.js +1 -1
  363. package/lib/esm/duet-visually-hidden.entry.js +1 -1
  364. package/lib/esm/duet.js +1 -1
  365. package/lib/esm/focus-utils-236f580e.js +18 -0
  366. package/lib/esm/{index-f600b8dc.js → index-b601aac1.js} +1 -1
  367. package/lib/esm/loader.js +1 -1
  368. package/lib/esm/token-utils-ebf797ab.js +92 -0
  369. package/lib/esm/tokens-b9d87fda.js +459 -0
  370. package/lib/esm/{tokens.module-f4572ed7.js → tokens.module-385c4cf8.js} +12 -10
  371. package/lib/esm-es5/duet-action-button.entry.js +1 -1
  372. package/lib/esm-es5/duet-alert.entry.js +1 -1
  373. package/lib/esm-es5/duet-badge.entry.js +1 -1
  374. package/lib/esm-es5/duet-breadcrumb.entry.js +1 -1
  375. package/lib/esm-es5/duet-breadcrumbs.entry.js +1 -1
  376. package/lib/esm-es5/duet-button_2.entry.js +1 -1
  377. package/lib/esm-es5/duet-caption_4.entry.js +1 -1
  378. package/lib/esm-es5/duet-card.entry.js +1 -1
  379. package/lib/esm-es5/duet-checkbox.entry.js +1 -1
  380. package/lib/esm-es5/duet-choice_2.entry.js +1 -1
  381. package/lib/esm-es5/duet-collapsible.entry.js +2 -2
  382. package/lib/esm-es5/duet-combobox.entry.js +1 -1
  383. package/lib/esm-es5/duet-cookie-consent.entry.js +1 -1
  384. package/lib/esm-es5/duet-date-picker.entry.js +1 -1
  385. package/lib/esm-es5/duet-divider_2.entry.js +1 -1
  386. package/lib/esm-es5/duet-editable-table_3.entry.js +1 -1
  387. package/lib/esm-es5/duet-empty-state.entry.js +1 -1
  388. package/lib/esm-es5/duet-fieldset.entry.js +1 -1
  389. package/lib/esm-es5/duet-footer.entry.js +1 -1
  390. package/lib/esm-es5/duet-grid_2.entry.js +1 -1
  391. package/lib/esm-es5/duet-header_2.entry.js +1 -1
  392. package/lib/esm-es5/duet-hero.entry.js +1 -1
  393. package/lib/esm-es5/duet-icon.entry.js +1 -1
  394. package/lib/esm-es5/duet-input_2.entry.js +1 -1
  395. package/lib/esm-es5/duet-layout.entry.js +1 -1
  396. package/lib/esm-es5/duet-list_2.entry.js +1 -1
  397. package/lib/esm-es5/duet-modal.entry.js +1 -1
  398. package/lib/esm-es5/duet-notification_2.entry.js +1 -1
  399. package/lib/esm-es5/duet-number-input.entry.js +1 -1
  400. package/lib/esm-es5/duet-pagination_2.entry.js +1 -1
  401. package/lib/esm-es5/duet-progress.entry.js +1 -1
  402. package/lib/esm-es5/duet-radio_2.entry.js +1 -1
  403. package/lib/esm-es5/duet-range-slider.entry.js +1 -1
  404. package/lib/esm-es5/duet-scrollable_3.entry.js +1 -1
  405. package/lib/esm-es5/duet-select.entry.js +1 -1
  406. package/lib/esm-es5/duet-step_2.entry.js +1 -1
  407. package/lib/esm-es5/duet-textarea.entry.js +2 -2
  408. package/lib/esm-es5/duet-toggle.entry.js +1 -1
  409. package/lib/esm-es5/duet-tooltip.entry.js +1 -1
  410. package/lib/esm-es5/duet-tray.entry.js +1 -1
  411. package/lib/esm-es5/duet-upload-aria-status.entry.js +1 -1
  412. package/lib/esm-es5/duet-visually-hidden.entry.js +1 -1
  413. package/lib/esm-es5/duet.js +1 -1
  414. package/lib/esm-es5/{focus-utils-559691b3.js → focus-utils-236f580e.js} +1 -1
  415. package/lib/esm-es5/{index-f600b8dc.js → index-b601aac1.js} +1 -1
  416. package/lib/esm-es5/loader.js +1 -1
  417. package/lib/esm-es5/{token-utils-df78f4d8.js → token-utils-ebf797ab.js} +1 -1
  418. package/lib/esm-es5/tokens-b9d87fda.js +4 -0
  419. package/lib/esm-es5/{tokens.module-f4572ed7.js → tokens.module-385c4cf8.js} +1 -1
  420. package/lib/types/components/duet-upload/duet-upload.d.ts +8 -8
  421. package/lib/types/components.d.ts +4 -4
  422. package/package.json +5 -5
  423. package/lib/custom-elements-bundle/index.d.ts +0 -399
  424. package/lib/custom-elements-bundle/index.js +0 -14110
  425. package/lib/duet/p-6002f3d2.system.js +0 -4
  426. package/lib/duet/p-7c198c75.entry.js +0 -4
  427. package/lib/duet/p-a93a04b9.system.js +0 -4
  428. package/lib/duet/p-d1746325.js +0 -4
  429. package/lib/duet/p-f2ab3e5c.entry.js +0 -4
  430. package/lib/esm-es5/tokens-8ff8c570.js +0 -4
@@ -0,0 +1,428 @@
1
+ /*!
2
+ * Built with Duet Design System
3
+ */
4
+ import { p as proxyCustomElement, H, c as createEvent, h, b as Host } from './p-3fc2d124.js';
5
+ import { f as formSearch } from './p-d004da5f.js';
6
+ import { i as inheritGlobalTheme } from './p-4ebf1618.js';
7
+ import { c as createID } from './p-c1325e35.js';
8
+ import { c as cleanValue, r as resetCursor } from './p-56118313.js';
9
+ import { b as isEscapeKey } from './p-d8549efe.js';
10
+ import { g as getLocaleString } from './p-ede854e1.js';
11
+ import { d as defineCustomElement$5 } from './p-e5c8a58f.js';
12
+ import { d as defineCustomElement$4 } from './p-7739604d.js';
13
+ import { d as defineCustomElement$3 } from './p-16d518fd.js';
14
+ import { d as defineCustomElement$2 } from './p-88511d7a.js';
15
+ import { d as defineCustomElement$1 } from './p-b08e57cf.js';
16
+
17
+ var formEmail={"title":"form-email","tags":"form email","svg":"<svg fill=\"currentColor\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\"><path d=\"M12 23.999c-3.205 0-6.218-1.248-8.484-3.514S.001 15.206.001 12.001s1.248-6.218 3.514-8.485C5.782 1.25 8.795.001 12 .001s6.218 1.248 8.485 3.514A11.92 11.92 0 0 1 24 12v2.25A3.754 3.754 0 0 1 20.25 18a3.77 3.77 0 0 1-3.48-2.365A6.009 6.009 0 0 1 12 18c-3.308 0-6-2.692-6-6s2.692-6 6-6 6 2.692 6 6v2.25c0 1.241 1.009 2.25 2.25 2.25s2.25-1.009 2.25-2.25V12c0-2.804-1.092-5.441-3.075-7.424A10.433 10.433 0 0 0 12 1.501c-2.804 0-5.441 1.092-7.424 3.075S1.501 9.196 1.501 12c0 2.805 1.092 5.441 3.075 7.424s4.619 3.074 7.423 3.074c2.257 0 4.494-.746 6.299-2.1a.749.749 0 1 1 .9 1.199A12.049 12.049 0 0 1 12 23.999zM12 7.5c-2.481 0-4.5 2.019-4.5 4.5s2.019 4.5 4.5 4.5 4.5-2.019 4.5-4.5-2.019-4.5-4.5-4.5z\"/></svg>"};
18
+
19
+ const duetInputCss = "*.sc-duet-input,*.sc-duet-input::after,*.sc-duet-input::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.sc-duet-input-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-right:16px !important;margin-bottom:12px !important;display:inline-flex;width:100%;min-width:calc(33.333% - 8px);max-width:100%;text-align:left;vertical-align:bottom}.sc-duet-input-h:last-child,.sc-duet-input-h:last-of-type{margin-right:0 !important}@media (min-width: 36em){.sc-duet-input-h{width:calc(50% - 16px - 3px)}}.duet-expand.sc-duet-input-h{width:100% !important}.duet-m-0.sc-duet-input-h{margin:0 !important}duet-tooltip.sc-duet-input{position:absolute;top:12px;right:0}@media (min-width: 48em){duet-tooltip.sc-duet-input{position:relative;top:4px;right:auto}}duet-caption.sc-duet-input:not(:last-of-type){margin-bottom:0}.duet-input-placeholder.sc-duet-input{position:absolute;top:-9px;left:9px;z-index:200;display:block;width:auto;max-width:60%;padding:0 0.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:white}.duet-input-icon.sc-duet-input{position:absolute;top:50%;right:16px;z-index:200;width:20px;height:20px;font-size:0;line-height:normal;color:#00294d;pointer-events:none;transform:translateY(-50%)}.duet-theme-turva.sc-duet-input .duet-input-icon.sc-duet-input{color:#171c3a}.duet-input-container.sc-duet-input{position:relative;width:100%;height:100%}.duet-input-container.has-clear.sc-duet-input .duet-input-clear-icon.sc-duet-input{position:relative;z-index:250}.duet-input-container.has-clear.sc-duet-input .duet-input-clear-icon.sc-duet-input button.sc-duet-input{position:absolute;top:-24px;right:0;min-width:48px;min-height:48px}.duet-input-container.has-clear.sc-duet-input .duet-input-clear-icon.sc-duet-input button.sc-duet-input:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}.duet-theme-turva.sc-duet-input .duet-input-container.has-clear.sc-duet-input .duet-input-clear-icon.sc-duet-input button.sc-duet-input:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-input-container.has-clear.sc-duet-input .duet-input-clear-icon.sc-duet-input button.sc-duet-input:active{opacity:0.75;transition:none}.duet-input-container.has-clear.has-icon.sc-duet-input .duet-input-clear-icon.sc-duet-input{top:-24px;right:24px}.duet-input.sc-duet-input{position:relative;z-index:100;display:block !important;width:100% !important;min-width:8rem;max-width:initial !important;height:auto !important;padding:12px 14px !important;margin:initial !important;margin-bottom:initial !important;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1rem;font-weight:400 !important;font-variant-numeric:tabular-nums;line-height:1.5 !important;color:#00294d !important;cursor:initial !important;background:white !important;background-clip:initial !important;border:1px solid #909599 !important;border-radius:4px !important;box-shadow:initial !important;transition:box-shadow 150ms ease, border 150ms ease !important}.duet-input.is-number.sc-duet-input{padding-right:112px !important}.duet-input.is-date.sc-duet-input{padding-right:64px !important}.has-error.sc-duet-input .duet-input.sc-duet-input{border-color:#de2362 !important}.has-error.sc-duet-input .duet-input.sc-duet-input+.duet-input-icon.sc-duet-input{color:#de2362 !important}.duet-theme-turva.has-error.sc-duet-input .duet-input.sc-duet-input{border-color:#e02a0d !important}.duet-theme-turva.has-error.sc-duet-input .duet-input.sc-duet-input+.duet-input-icon.sc-duet-input{color:#e02a0d !important}.has-icon.sc-duet-input .duet-input.sc-duet-input{padding-right:48px !important}.duet-theme-turva.sc-duet-input .duet-input.sc-duet-input{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:#171c3a !important;border-color:#747475 !important}.duet-input.sc-duet-input::-ms-clear{display:none}.duet-input.sc-duet-input::-webkit-contacts-auto-fill-button{display:none !important}.duet-input.sc-duet-input::-webkit-input-placeholder{color:#657787;opacity:1 !important;transition:color 300ms ease}.duet-theme-turva.sc-duet-input .duet-input.sc-duet-input::-webkit-input-placeholder{color:#747475}.duet-input.sc-duet-input:focus::-webkit-input-placeholder{color:#cfd2d4}.duet-theme-turva.sc-duet-input .duet-input.sc-duet-input:focus::-webkit-input-placeholder{color:#cfcfd1}.duet-input.sc-duet-input::-moz-placeholder{color:#657787;opacity:1 !important}.duet-theme-turva.sc-duet-input .duet-input.sc-duet-input::-moz-placeholder{color:#747475}.duet-input.sc-duet-input:focus::-moz-placeholder{color:#cfd2d4}.duet-theme-turva.sc-duet-input .duet-input.sc-duet-input:focus::-moz-placeholder{color:#cfcfd1}.duet-input.sc-duet-input:-ms-input-placeholder{color:#657787}.duet-theme-turva.sc-duet-input .duet-input.sc-duet-input:-ms-input-placeholder{color:#747475}.duet-input.sc-duet-input:focus:-ms-input-placeholder{color:#cfd2d4}.duet-theme-turva.sc-duet-input .duet-input.sc-duet-input:focus:-ms-input-placeholder{color:#cfcfd1}.duet-input[disabled].sc-duet-input{color:#00294d !important;cursor:text !important;background:#f5f8fa !important;border-color:#f5f8fa !important;box-shadow:none !important;opacity:1 !important;-webkit-text-fill-color:#00294d !important}.duet-theme-turva.sc-duet-input .duet-input[disabled].sc-duet-input{color:#171c3a !important;background:#f5f5f7 !important;border-color:#f5f5f7 !important;-webkit-text-fill-color:#171c3a !important}.duet-input.sc-duet-input:hover:not(:disabled){box-shadow:0 0 0 1px #909599 !important}.duet-theme-turva.sc-duet-input .duet-input.sc-duet-input:hover:not(:disabled){box-shadow:0 0 0 1px #747475 !important}.has-error.sc-duet-input .duet-input.sc-duet-input:hover:not(:disabled){box-shadow:0 0 0 1px #de2362}.duet-theme-turva.has-error.sc-duet-input .duet-input.sc-duet-input:hover:not(:disabled){box-shadow:0 0 0 1px #e02a0d}.duet-input.sc-duet-input:focus{border-color:#0077b3 !important;outline:0;box-shadow:0 0 0 1px #0077b3 !important;transition:none}.duet-theme-turva.sc-duet-input .duet-input.sc-duet-input:focus{border-color:#171c3a !important;box-shadow:0 0 0 1px #171c3a !important}.duet-theme-turva.sc-duet-input .duet-input.sc-duet-input:focus+.duet-input-icon.sc-duet-input{color:#171c3a}.has-error.sc-duet-input .duet-input.sc-duet-input:focus{box-shadow:0 0 0 1px #de2362}.duet-theme-turva.has-error.sc-duet-input .duet-input.sc-duet-input:focus{box-shadow:0 0 0 1px #e02a0d}.duet-input.sc-duet-input:focus+.duet-input-icon.sc-duet-input{color:#0077b3}.duet-input[type=search].sc-duet-input:not(:placeholder-shown):focus+.duet-input-icon.sc-duet-input{display:none}.duet-input.sc-duet-input:not(:focus):not(:hover):invalid{box-shadow:none !important}.duet-input[type=number].sc-duet-input::-webkit-inner-spin-button,.duet-input[type=number].sc-duet-input::-webkit-outer-spin-button,.duet-input[type=time].sc-duet-input::-webkit-inner-spin-button,.duet-input[type=time].sc-duet-input::-webkit-outer-spin-button{display:none;margin:0;-webkit-appearance:none}.duet-input.sc-duet-input::-webkit-search-cancel-button{margin-right:-28px}.duet-input-help.sc-duet-input{display:block;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:0.875rem;font-weight:400;line-height:1.25;color:#657787;border-radius:4px}.duet-input-help.sc-duet-input span.sc-duet-input{display:block;margin-top:8px}.duet-theme-turva.sc-duet-input .duet-input-help.sc-duet-input{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:#747475}.has-error.sc-duet-input .duet-input-help.sc-duet-input{color:#de2362}.duet-theme-turva.has-error.sc-duet-input .duet-input-help.sc-duet-input{color:#e02a0d}.duet-label-hidden.sc-duet-input duet-label.sc-duet-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);border:0}.duet-input-relative.sc-duet-input{position:relative;width:100%}.duet-input-variation-button.sc-duet-input{position:relative;width:100%}.duet-input-variation-button.sc-duet-input .duet-input-relative.sc-duet-input{display:flex;flex-direction:row;flex-wrap:nowrap;align-content:center;align-items:center;justify-content:flex-start;width:auto}.duet-input-variation-button.sc-duet-input .duet-input-relative.sc-duet-input duet-button.sc-duet-input{z-index:250;margin-bottom:0}.duet-input-variation-button.sc-duet-input .duet-input-relative.sc-duet-input .duet-input.sc-duet-input{border-right-width:0 !important;border-top-right-radius:0 !important;border-bottom-right-radius:0 !important}";
20
+
21
+ const icons = {
22
+ search: formSearch,
23
+ email: formEmail,
24
+ };
25
+ const DuetInput = /*@__PURE__*/ proxyCustomElement(class extends H {
26
+ constructor() {
27
+ super();
28
+ this.__registerHost();
29
+ this.duetInput = createEvent(this, "duetInput", 7);
30
+ this.duetChange = createEvent(this, "duetChange", 3);
31
+ this.duetBlur = createEvent(this, "duetBlur", 7);
32
+ this.duetClear = createEvent(this, "duetClear", 7);
33
+ this.duetFocus = createEvent(this, "duetFocus", 7);
34
+ /**
35
+ * Own Properties
36
+ */
37
+ this.inputId = createID("DuetInput");
38
+ this.clearId = createID("DuetInputClear");
39
+ this.labelId = createID("DuetLabel");
40
+ this.topCaptionId = createID("DuetCaptionTop");
41
+ this.topCaptionPlaceholderId = createID("DuetCaptionPlaceholderTop");
42
+ this.errorId = createID("DuetError");
43
+ this.disallowPatternRegex = null;
44
+ this.clearLabel = getLocaleString({
45
+ en: "Clear",
46
+ fi: "Tyhjennä",
47
+ sv: "Rensa",
48
+ });
49
+ this.timeAnnouncement = getLocaleString({
50
+ en: "Time",
51
+ fi: "Aika",
52
+ sv: "Tid",
53
+ });
54
+ /**
55
+ * Indicates the id or a string of space seperated ids of a component(s) that describes the input.
56
+ */
57
+ this.accessibleDescribedBy = "";
58
+ /**
59
+ * Indicates value of any popup element associated with the input.
60
+ */
61
+ this.accessibleHasPopup = undefined;
62
+ /**
63
+ * Aria Details of the component
64
+ */
65
+ this.accessibleDetails = undefined;
66
+ /**
67
+ * String of id's that indicate alternative labels elements
68
+ */
69
+ this.accessibleLabelledBy = undefined;
70
+ /**
71
+ * Aria description the button
72
+ */
73
+ this.accessibleDescription = undefined;
74
+ /**
75
+ * Set the amount of time, in milliseconds, to wait to trigger the duetChange
76
+ * event after each keystroke.
77
+ */
78
+ this.debounce = 0;
79
+ /**
80
+ * If set, the input field will display a clear button that can be accessed with tabbing.
81
+ */
82
+ this.clear = false;
83
+ /**
84
+ * If form input field has a placeholder text, and user types anything (causing the placeholder text to disappear),
85
+ * settings this to true will "echo" it into the caption slot - this option will be false by default for the next few versions, but will eventually be true by default (scheduled for 4.30.0)
86
+ */
87
+ this.echoPlaceholder = false;
88
+ /**
89
+ * Theme of the input.
90
+ */
91
+ this.theme = "";
92
+ /**
93
+ * Expands the input to fill 100% of the container width.
94
+ */
95
+ this.expand = false;
96
+ /**
97
+ * Makes the input component disabled. This prevents users from being able to
98
+ * interact with the input, and conveys its inactive state to assistive technologies.
99
+ */
100
+ this.disabled = false;
101
+ /**
102
+ * Controls the margin of the component.
103
+ */
104
+ this.margin = "auto";
105
+ /**
106
+ * Set whether the input is required or not. Please note that this is necessary for
107
+ * accessible inputs when the user is required to fill them. When using this property
108
+ * you need to also set “novalidate” attribute to your form element to prevent
109
+ * browser from displaying its own validation errors.
110
+ */
111
+ this.required = false;
112
+ /**
113
+ * Type of the input.
114
+ */
115
+ this.type = "text";
116
+ /**
117
+ * Variation of button.
118
+ */
119
+ this.variation = "default";
120
+ /**
121
+ * Label for the input.
122
+ */
123
+ this.label = "label";
124
+ /**
125
+ * Display the input in error state along with an error message.
126
+ */
127
+ this.error = "";
128
+ /**
129
+ * Visually hide the label, but still show it to screen readers.
130
+ */
131
+ this.labelHidden = false;
132
+ /**
133
+ * Enable numeric keyboard for the input.
134
+ */
135
+ this.numericKeyboard = false;
136
+ /**
137
+ * Used internally in Duet to adjust whether this component acts as e.g. number input.
138
+ */
139
+ this.component = "input";
140
+ /**
141
+ * Enable or disable automatic completion by the browser
142
+ */
143
+ this.autoComplete = "on";
144
+ /**
145
+ * A regular expression that matches any characters which should be *disallowed*.
146
+ * This differs from `pattern`, as it actively prevents users entering any characters which match the regular expression.
147
+ * e.g. the following will disallow any non-numeric characters `[^0-9]`
148
+ */
149
+ this.disallowPattern = null;
150
+ /**
151
+ * Tooltip to display next to the label of the input.
152
+ */
153
+ this.tooltip = "";
154
+ /**
155
+ * With direction setting you can force the tooltip to always open towards left
156
+ * or right instead of automatically determining the direction.
157
+ */
158
+ this.tooltipDirection = "auto";
159
+ /**
160
+ * Component event handling.
161
+ */
162
+ this.onInput = (ev) => {
163
+ if (this.disallowPatternRegex) {
164
+ cleanValue(this.nativeInput, this.disallowPatternRegex);
165
+ }
166
+ this.value = this.nativeInput.value || "";
167
+ this.duetInput.emit({
168
+ originalEvent: ev,
169
+ value: this.value,
170
+ component: "duet-input",
171
+ });
172
+ };
173
+ this.onBlur = (ev) => {
174
+ this.duetBlur.emit({
175
+ originalEvent: ev,
176
+ value: this.value,
177
+ component: "duet-input",
178
+ });
179
+ };
180
+ this.onFocus = (ev) => {
181
+ this.duetFocus.emit({
182
+ originalEvent: ev,
183
+ value: this.value,
184
+ component: "duet-input",
185
+ });
186
+ };
187
+ this.onClear = (ev) => {
188
+ this.duetFocus.emit({
189
+ originalEvent: ev,
190
+ value: this.value,
191
+ component: "duet-input",
192
+ });
193
+ };
194
+ /** Private functions
195
+ *
196
+ */
197
+ this.getDescribedBy = () => {
198
+ let describedBy = "";
199
+ if (this.isCaptionVisible && this.topCaptionId) {
200
+ describedBy = this.topCaptionId;
201
+ if (this.accessibleDescribedBy) {
202
+ describedBy += " " + this.accessibleDescribedBy;
203
+ }
204
+ }
205
+ else if (this.accessibleDescribedBy.length > 0) {
206
+ describedBy = this.accessibleDescribedBy;
207
+ }
208
+ else {
209
+ describedBy = undefined;
210
+ }
211
+ return describedBy;
212
+ };
213
+ this.handleClearClick = event => {
214
+ const clearing = this.clearInput();
215
+ this.onClear(event);
216
+ return clearing;
217
+ };
218
+ this.keyHandler = event => {
219
+ if (isEscapeKey(event) && this.clear) {
220
+ this.handleClearClick(event);
221
+ }
222
+ return event;
223
+ };
224
+ }
225
+ disallowedPatternChange() {
226
+ this.disallowPatternRegex = this.disallowPattern ? new RegExp(this.disallowPattern, "g") : null;
227
+ }
228
+ valueChanged() {
229
+ var _a;
230
+ if (((_a = this === null || this === void 0 ? void 0 : this.nativeInput) === null || _a === void 0 ? void 0 : _a.value) !== this.value) {
231
+ const restoreCursor = resetCursor(this.nativeInput);
232
+ this.nativeInput.value = this.value;
233
+ // restore selection position after having set value
234
+ // (in webkit based browsers settings value trigger cursor position and will set it to EndOfText)
235
+ restoreCursor();
236
+ }
237
+ this.isCaptionVisible = !!this.caption;
238
+ const emitEvent = () => this.duetChange.emit({
239
+ value: this.value,
240
+ component: "duet-input",
241
+ });
242
+ if (this.debounce === 0) {
243
+ emitEvent();
244
+ }
245
+ else {
246
+ clearTimeout(this.timeoutId);
247
+ this.timeoutId = setTimeout(emitEvent, this.debounce);
248
+ }
249
+ }
250
+ /**
251
+ * Component lifecycle events.
252
+ */
253
+ componentWillLoad() {
254
+ inheritGlobalTheme(this);
255
+ this.disallowedPatternChange();
256
+ this.isCaptionVisible = !!this.caption;
257
+ }
258
+ /**
259
+ * Sets focus on the specified `duet-input`. Use this method instead of the global
260
+ * `input.focus()`.
261
+ */
262
+ async setFocus(options) {
263
+ if (this.nativeInput) {
264
+ this.nativeInput.focus(options);
265
+ }
266
+ }
267
+ /**
268
+ * Reset the cursor position on the native element
269
+ * `input.resetCursor()`.
270
+ */
271
+ async resetCursor() {
272
+ if (this.nativeInput) {
273
+ const restoreCursor = resetCursor(this.nativeInput);
274
+ this.nativeInput.value = this.value;
275
+ restoreCursor();
276
+ }
277
+ }
278
+ /**
279
+ * Reset the cursor position on the native element
280
+ * `input.resetCursor()`.
281
+ */
282
+ async clearInput() {
283
+ if (this.nativeInput) {
284
+ this.nativeInput.value = "";
285
+ this.value = "";
286
+ }
287
+ }
288
+ /**
289
+ * render() function
290
+ * Always the last one in the class.
291
+ */
292
+ render() {
293
+ const identifier = this.identifier || this.inputId;
294
+ const inputProps = {};
295
+ if (this.numericKeyboard) {
296
+ inputProps.inputmode = "numeric";
297
+ }
298
+ // Set validation regexes
299
+ if (this.pattern && this.type !== "tel") {
300
+ inputProps.pattern = this.pattern;
301
+ }
302
+ else if (!this.pattern && this.type === "tel") {
303
+ inputProps.pattern = "[0-9+ ]+";
304
+ }
305
+ let selectedTime;
306
+ if (this.value) {
307
+ selectedTime = new Date();
308
+ try {
309
+ selectedTime.setHours(Number(this.value.slice(0, 2)), Number(this.value.slice(3, 5)), 0, 0);
310
+ }
311
+ catch (e) {
312
+ selectedTime = undefined;
313
+ }
314
+ }
315
+ return (h(Host, { class: { "duet-expand": this.expand, "duet-m-0": this.margin === "none" }, onKeyUp: e => this.keyHandler(e) }, this.type === "time" && (h("duet-visually-hidden", { "aria-live": "polite", "aria-atomic": "true" }, selectedTime ? `${this.timeAnnouncement} ${selectedTime.toLocaleTimeString()}` : "")), h("div", { class: {
316
+ "duet-input-container": true,
317
+ "duet-theme-turva": this.theme === "turva",
318
+ [`duet-input-variation-${this.variation}`]: true,
319
+ "duet-label-hidden": this.labelHidden,
320
+ "duet-input-top-caption-shown": this.isCaptionVisible,
321
+ "has-icon": !!this.icon ||
322
+ (this.type !== "text" && this.type !== "tel" && this.type !== "password" && this.type !== "time"),
323
+ "has-error": !!this.error,
324
+ "has-clear": this.clear,
325
+ } }, h("duet-label", { theme: this.theme === "turva" ? "turva" : "default", class: { "duet-has-tooltip": !!this.tooltip }, margin: this.isCaptionVisible ? "small" : "auto", id: this.labelId, for: identifier }, this.label), this.tooltip && (h("duet-tooltip", { direction: this.tooltipDirection, accessibleInputLabel: this.label }, this.tooltip)), this.caption && (h("duet-caption", { id: this.topCaptionId, size: "medium" }, this.caption)), h("div", { class: "duet-input-relative" }, this.placeholder && this.echoPlaceholder && (this.value || this.type === "time") && (h("duet-caption", { id: this.topCaptionPlaceholderId, class: "duet-input-placeholder", margin: "none", size: "small" }, this.placeholder)), h("input", Object.assign({ ref: input => (this.nativeInput = input), onInput: this.onInput, onBlur: this.onBlur, onFocus: this.onFocus, type: this.type, class: {
326
+ "duet-input": true,
327
+ disabled: this.disabled,
328
+ "is-number": this.component === "number",
329
+ "is-date": this.component === "date",
330
+ }, value: this.value, disabled: this.disabled, "aria-invalid": this.error ? "true" : "false", "aria-labelledby": this.accessibleLabelledBy
331
+ ? `${this.labelId} ${this.errorId} ${this.accessibleLabelledBy}`
332
+ : `${this.labelId} ${this.errorId}`, "aria-controls": this.accessibleControls, "aria-autocomplete": this.accessibleAutocomplete, "aria-activedescendant": this.accessibleActiveDescendant, "aria-details": this.accessibleDetails, "aria-description": this.accessibleDescription, "aria-expanded": this.accessibleExpanded, "aria-haspopup": this.accessibleHasPopup, "aria-owns": this.accessibleOwns, "aria-describedby": this.getDescribedBy(), placeholder: this.placeholder, spellcheck: "false", minlength: this.minlength, maxlength: this.maxlength, autocomplete: this.autoComplete, required: this.required, role: this.role, name: this.name, id: identifier }, inputProps)), !this.icon &&
333
+ this.type !== "text" &&
334
+ this.type !== "tel" &&
335
+ this.type !== "password" &&
336
+ this.type !== "time" &&
337
+ this.variation !== "button" && (h("div", { class: "duet-input-icon" }, h("duet-icon", { margin: "none", size: "small", icon: icons[this.type].svg, color: "currentColor" }))), this.clear && this.value && (h("div", { class: "duet-input-clear-icon" }, h("button", { onClick: this.handleClearClick, id: this.clearId, "aria-label": this.clearLabel, "aria-keyshortcuts": "Escape" }, h("duet-icon", { margin: "none", size: "xx-small", name: "activity-close", color: "currentColor" })))), this.icon && this.variation !== "button" && (h("div", { class: "duet-input-icon" }, h("duet-icon", { margin: "none", size: "small", name: this.icon, color: "currentColor" }))), this.variation === "button" && h("slot", { name: "button" }), h("slot", null)), h("span", { class: "duet-input-help", id: this.errorId, "aria-live": "assertive", "aria-relevant": "additions removals" }, this.error && h("span", { class: "duet-input-error" }, this.error)))));
338
+ }
339
+ get element() { return this; }
340
+ static get watchers() { return {
341
+ "disallowPattern": ["disallowedPatternChange"],
342
+ "value": ["valueChanged"]
343
+ }; }
344
+ static get style() { return duetInputCss; }
345
+ }, [6, "duet-input", {
346
+ "accessibleActiveDescendant": [1, "accessible-active-descendant"],
347
+ "accessibleAutocomplete": [1, "accessible-autocomplete"],
348
+ "accessibleControls": [1, "accessible-controls"],
349
+ "accessibleOwns": [1, "accessible-owns"],
350
+ "accessibleExpanded": [1, "accessible-expanded"],
351
+ "accessibleDescribedBy": [1, "accessible-described-by"],
352
+ "accessibleHasPopup": [1, "accessible-has-popup"],
353
+ "accessibleDetails": [1, "accessible-details"],
354
+ "accessibleLabelledBy": [1, "accessible-labelled-by"],
355
+ "accessibleDescription": [1, "accessible-description"],
356
+ "debounce": [2],
357
+ "clear": [4],
358
+ "caption": [1],
359
+ "echoPlaceholder": [4, "echo-placeholder"],
360
+ "theme": [1025],
361
+ "expand": [4],
362
+ "disabled": [516],
363
+ "identifier": [1],
364
+ "margin": [1],
365
+ "required": [4],
366
+ "type": [1],
367
+ "variation": [1],
368
+ "label": [1],
369
+ "error": [1],
370
+ "labelHidden": [4, "label-hidden"],
371
+ "numericKeyboard": [4, "numeric-keyboard"],
372
+ "name": [1],
373
+ "pattern": [1],
374
+ "maxlength": [2],
375
+ "minlength": [2],
376
+ "placeholder": [1],
377
+ "component": [1],
378
+ "role": [1],
379
+ "icon": [1],
380
+ "autoComplete": [1, "auto-complete"],
381
+ "disallowPattern": [1, "disallow-pattern"],
382
+ "value": [1025],
383
+ "tooltip": [1],
384
+ "tooltipDirection": [1, "tooltip-direction"],
385
+ "setFocus": [64],
386
+ "resetCursor": [64],
387
+ "clearInput": [64]
388
+ }]);
389
+ function defineCustomElement() {
390
+ if (typeof customElements === "undefined") {
391
+ return;
392
+ }
393
+ const components = ["duet-input", "duet-caption", "duet-icon", "duet-label", "duet-tooltip", "duet-visually-hidden"];
394
+ components.forEach(tagName => { switch (tagName) {
395
+ case "duet-input":
396
+ if (!customElements.get(tagName)) {
397
+ customElements.define(tagName, DuetInput);
398
+ }
399
+ break;
400
+ case "duet-caption":
401
+ if (!customElements.get(tagName)) {
402
+ defineCustomElement$5();
403
+ }
404
+ break;
405
+ case "duet-icon":
406
+ if (!customElements.get(tagName)) {
407
+ defineCustomElement$4();
408
+ }
409
+ break;
410
+ case "duet-label":
411
+ if (!customElements.get(tagName)) {
412
+ defineCustomElement$3();
413
+ }
414
+ break;
415
+ case "duet-tooltip":
416
+ if (!customElements.get(tagName)) {
417
+ defineCustomElement$2();
418
+ }
419
+ break;
420
+ case "duet-visually-hidden":
421
+ if (!customElements.get(tagName)) {
422
+ defineCustomElement$1();
423
+ }
424
+ break;
425
+ } });
426
+ }
427
+
428
+ export { DuetInput as D, defineCustomElement as d };
@@ -0,0 +1,129 @@
1
+ /*!
2
+ * Built with Duet Design System
3
+ */
4
+ import { p as proxyCustomElement, H, h, b as Host } from './p-3fc2d124.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 };