@duetds/components 6.6.2 → 6.7.1

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 (801) hide show
  1. package/hydrate/index.d.ts +17 -16
  2. package/hydrate/index.js +387 -227
  3. package/lib/cjs/{dom-bcfa684c.js → dom-c42e1019.js} +1 -1
  4. package/lib/cjs/duet-action-button.cjs.entry.js +3 -3
  5. package/lib/cjs/duet-alert.cjs.entry.js +26 -5
  6. package/lib/cjs/duet-badge.cjs.entry.js +2 -2
  7. package/lib/cjs/duet-breadcrumb.cjs.entry.js +2 -2
  8. package/lib/cjs/duet-breadcrumbs.cjs.entry.js +3 -3
  9. package/lib/cjs/duet-button_2.cjs.entry.js +4 -4
  10. package/lib/cjs/duet-caption_4.cjs.entry.js +9 -7
  11. package/lib/cjs/duet-card.cjs.entry.js +2 -2
  12. package/lib/cjs/duet-checkbox.cjs.entry.js +2 -2
  13. package/lib/cjs/duet-checkmark.cjs.entry.js +2 -2
  14. package/lib/cjs/duet-choice_2.cjs.entry.js +4 -4
  15. package/lib/cjs/duet-collapsible.cjs.entry.js +2 -2
  16. package/lib/cjs/duet-combobox.cjs.entry.js +3 -3
  17. package/lib/cjs/duet-contact-card.cjs.entry.js +64 -0
  18. package/lib/cjs/duet-cookie-consent.cjs.entry.js +2 -2
  19. package/lib/cjs/duet-date-picker.cjs.entry.js +4 -4
  20. package/lib/cjs/duet-divider_2.cjs.entry.js +2 -2
  21. package/lib/cjs/duet-editable-table_3.cjs.entry.js +7 -7
  22. package/lib/cjs/duet-empty-state.cjs.entry.js +2 -2
  23. package/lib/cjs/duet-fieldset.cjs.entry.js +2 -2
  24. package/lib/cjs/duet-footer.cjs.entry.js +3 -3
  25. package/lib/cjs/duet-grid_2.cjs.entry.js +2 -2
  26. package/lib/cjs/duet-header_2.cjs.entry.js +10 -4
  27. package/lib/cjs/duet-hero.cjs.entry.js +4 -4
  28. package/lib/cjs/duet-icon.cjs.entry.js +2 -2
  29. package/lib/cjs/duet-input_2.cjs.entry.js +32 -21
  30. package/lib/cjs/duet-layout.cjs.entry.js +1 -1
  31. package/lib/cjs/duet-list_2.cjs.entry.js +2 -2
  32. package/lib/cjs/duet-menu-bar-button.cjs.entry.js +2 -2
  33. package/lib/cjs/duet-menu-bar-dropdown-link.cjs.entry.js +2 -2
  34. package/lib/cjs/duet-menu-bar-dropdown.cjs.entry.js +2 -2
  35. package/lib/cjs/duet-menu-bar-link.cjs.entry.js +2 -2
  36. package/lib/cjs/duet-menu-bar.cjs.entry.js +3 -3
  37. package/lib/cjs/duet-modal.cjs.entry.js +7 -5
  38. package/lib/cjs/duet-multiselect.cjs.entry.js +3 -3
  39. package/lib/cjs/duet-nav.cjs.entry.js +4 -4
  40. package/lib/cjs/duet-notification_2.cjs.entry.js +4 -4
  41. package/lib/cjs/duet-number-input.cjs.entry.js +3 -3
  42. package/lib/cjs/duet-page-heading.cjs.entry.js +2 -2
  43. package/lib/cjs/duet-pagination_2.cjs.entry.js +18 -4
  44. package/lib/cjs/duet-progress.cjs.entry.js +3 -3
  45. package/lib/cjs/duet-radio_2.cjs.entry.js +2 -2
  46. package/lib/cjs/duet-range-slider.cjs.entry.js +2 -2
  47. package/lib/cjs/duet-scrollable_3.cjs.entry.js +18 -19
  48. package/lib/cjs/duet-section-layout.cjs.entry.js +1 -1
  49. package/lib/cjs/duet-select.cjs.entry.js +2 -2
  50. package/lib/cjs/duet-slideout-lang.cjs.entry.js +3 -3
  51. package/lib/cjs/duet-slideout-link.cjs.entry.js +2 -2
  52. package/lib/cjs/duet-slideout-panel-dropdown.cjs.entry.js +2 -2
  53. package/lib/cjs/duet-slideout-panel.cjs.entry.js +4 -4
  54. package/lib/cjs/duet-slideout.cjs.entry.js +6 -5
  55. package/lib/cjs/duet-step_2.cjs.entry.js +3 -3
  56. package/lib/cjs/duet-submenu-bar-dropdown-link.cjs.entry.js +2 -2
  57. package/lib/cjs/duet-submenu-bar-dropdown.cjs.entry.js +2 -2
  58. package/lib/cjs/duet-submenu-bar-link.cjs.entry.js +2 -2
  59. package/lib/cjs/duet-submenu-bar.cjs.entry.js +2 -2
  60. package/lib/cjs/duet-textarea.cjs.entry.js +2 -2
  61. package/lib/cjs/duet-toggle.cjs.entry.js +2 -2
  62. package/lib/cjs/duet-toolbar-dropdown-link.cjs.entry.js +2 -2
  63. package/lib/cjs/duet-toolbar-dropdown.cjs.entry.js +2 -2
  64. package/lib/cjs/duet-toolbar-link.cjs.entry.js +2 -2
  65. package/lib/cjs/duet-toolbar.cjs.entry.js +2 -2
  66. package/lib/cjs/duet-tooltip.cjs.entry.js +3 -3
  67. package/lib/cjs/duet-tray.cjs.entry.js +3 -3
  68. package/lib/cjs/duet-upload-aria-status.cjs.entry.js +1 -1
  69. package/lib/cjs/duet-visually-hidden.cjs.entry.js +1 -1
  70. package/lib/cjs/duet.cjs.js +37 -6
  71. package/lib/cjs/{focus-utils-73de6126.js → focus-utils-b2f050a2.js} +1 -1
  72. package/lib/cjs/{index-c7042fe2.js → index-5d835acd.js} +130 -6
  73. package/lib/cjs/{language-utils-4f62a7db.js → language-utils-44df1d37.js} +36 -0
  74. package/lib/cjs/loader.cjs.js +4 -3
  75. package/lib/cjs/{shadow-css-1ea48714.js → shadow-css-6c99270e.js} +1 -1
  76. package/lib/collection/collection-manifest.json +5 -4
  77. package/lib/collection/components/duet-action-button/duet-action-button.css +10 -10
  78. package/lib/collection/components/duet-action-button/duet-action-button.js +4 -2
  79. package/lib/collection/components/duet-alert/duet-alert.css +13 -13
  80. package/lib/collection/components/duet-alert/duet-alert.js +61 -3
  81. package/lib/collection/components/duet-badge/duet-badge.css +2 -2
  82. package/lib/collection/components/duet-breadcrumbs/duet-breadcrumb.css +6 -6
  83. package/lib/collection/components/duet-breadcrumbs/duet-breadcrumbs.css +5 -5
  84. package/lib/collection/components/duet-button/duet-button.css +80 -80
  85. package/lib/collection/components/duet-button/duet-button.js +10 -5
  86. package/lib/collection/components/duet-caption/duet-caption.css +4 -4
  87. package/lib/collection/components/duet-caption/duet-caption.js +2 -1
  88. package/lib/collection/components/duet-card/duet-card.css +12 -12
  89. package/lib/collection/components/duet-card/duet-card.js +6 -3
  90. package/lib/collection/components/duet-checkbox/duet-checkbox.css +19 -19
  91. package/lib/collection/components/duet-checkbox/duet-checkbox.js +6 -3
  92. package/lib/collection/components/duet-choice/duet-checkmark.css +12 -12
  93. package/lib/collection/components/duet-choice/duet-checkmark.js +1 -1
  94. package/lib/collection/components/duet-choice/duet-choice.css +74 -74
  95. package/lib/collection/components/duet-choice/duet-choice.js +8 -4
  96. package/lib/collection/components/duet-collapsible/duet-collapsible.css +10 -9
  97. package/lib/collection/components/duet-collapsible/duet-collapsible.js +6 -3
  98. package/lib/collection/components/duet-combobox/duet-combobox.css +18 -18
  99. package/lib/collection/components/duet-combobox/duet-combobox.js +6 -3
  100. package/lib/collection/components/duet-contact-card/duet-contact-card.css +85 -0
  101. package/lib/collection/components/duet-contact-card/duet-contact-card.js +261 -0
  102. package/lib/collection/components/duet-cookie-consent/duet-cookie-consent.css +6 -6
  103. package/lib/collection/components/duet-cookie-consent/duet-cookie-consent.js +2 -1
  104. package/lib/collection/components/duet-date-picker/duet-date-picker.css +56 -56
  105. package/lib/collection/components/duet-date-picker/duet-date-picker.js +8 -4
  106. package/lib/collection/components/duet-divider/duet-divider.css +2 -2
  107. package/lib/collection/components/duet-divider/duet-divider.js +2 -1
  108. package/lib/collection/components/duet-editable-table/duet-editable-table.js +13 -8
  109. package/lib/collection/components/duet-empty-state/duet-empty-state.css +4 -4
  110. package/lib/collection/components/duet-empty-state/duet-empty-state.js +2 -1
  111. package/lib/collection/components/duet-fieldset/duet-fieldset.css +6 -6
  112. package/lib/collection/components/duet-footer/duet-footer.css +19 -19
  113. package/lib/collection/components/duet-footer/duet-footer.js +14 -7
  114. package/lib/collection/components/duet-grid/duet-grid.js +6 -3
  115. package/lib/collection/components/duet-grid-item/duet-grid-item.css +2 -2
  116. package/lib/collection/components/duet-header/duet-header.css +105 -105
  117. package/lib/collection/components/duet-header/duet-header.js +30 -15
  118. package/lib/collection/components/duet-heading/duet-heading.css +4 -4
  119. package/lib/collection/components/duet-heading/duet-heading.js +2 -1
  120. package/lib/collection/components/duet-hero/duet-hero.css +160 -66
  121. package/lib/collection/components/duet-hero/duet-hero.js +11 -6
  122. package/lib/collection/components/duet-icon/duet-icon.css +4 -4
  123. package/lib/collection/components/duet-icon/duet-icon.js +2 -1
  124. package/lib/collection/components/duet-input/duet-input.css +66 -66
  125. package/lib/collection/components/duet-input/duet-input.js +48 -28
  126. package/lib/collection/components/duet-label/duet-label.css +2 -2
  127. package/lib/collection/components/duet-label/duet-label.js +4 -2
  128. package/lib/collection/components/duet-layout/duet-layout.js +2 -1
  129. package/lib/collection/components/duet-link/duet-link.css +13 -10
  130. package/lib/collection/components/duet-link/duet-link.js +3 -1
  131. package/lib/collection/components/duet-list/duet-list.js +8 -4
  132. package/lib/collection/components/duet-list-item/duet-list-item.css +8 -8
  133. package/lib/collection/components/duet-logo/duet-logo.css +2 -2
  134. package/lib/collection/components/duet-logo/duet-logo.js +9 -2
  135. package/lib/collection/components/duet-menu-bar/duet-menu-bar.css +8 -8
  136. package/lib/collection/components/duet-menu-bar/duet-menu-bar.js +3 -2
  137. package/lib/collection/components/duet-menu-bar-button/duet-menu-bar-button.css +4 -4
  138. package/lib/collection/components/duet-menu-bar-dropdown/duet-menu-bar-dropdown.css +26 -15
  139. package/lib/collection/components/duet-menu-bar-dropdown-link/duet-menu-bar-dropdown-link.css +8 -8
  140. package/lib/collection/components/duet-menu-bar-link/duet-menu-bar-link.css +10 -9
  141. package/lib/collection/components/duet-modal/duet-modal.css +4 -4
  142. package/lib/collection/components/duet-modal/duet-modal.js +31 -4
  143. package/lib/collection/components/duet-multiselect/duet-multiselect.css +40 -40
  144. package/lib/collection/components/duet-multiselect/duet-multiselect.js +10 -5
  145. package/lib/collection/components/duet-nav/duet-nav.css +0 -1
  146. package/lib/collection/components/duet-nav/duet-nav.js +1 -1
  147. package/lib/collection/components/duet-notification/duet-notification.css +14 -14
  148. package/lib/collection/components/duet-notification-drawer/duet-notification-drawer.css +25 -25
  149. package/lib/collection/components/duet-notification-drawer/duet-notification-drawer.js +2 -1
  150. package/lib/collection/components/duet-number-input/duet-number-input.css +5 -5
  151. package/lib/collection/components/duet-number-input/duet-number-input.js +8 -4
  152. package/lib/collection/components/duet-page-heading/duet-page-heading.css +4 -4
  153. package/lib/collection/components/duet-pagination/duet-pagination.js +6 -3
  154. package/lib/collection/components/duet-paragraph/duet-paragraph.css +6 -6
  155. package/lib/collection/components/duet-paragraph/duet-paragraph.js +6 -3
  156. package/lib/collection/components/duet-progress/duet-progress.css +12 -12
  157. package/lib/collection/components/duet-radio/duet-radio.css +17 -17
  158. package/lib/collection/components/duet-radio/duet-radio.js +6 -3
  159. package/lib/collection/components/duet-range-slider/duet-range-slider.css +30 -30
  160. package/lib/collection/components/duet-range-slider/duet-range-slider.js +4 -2
  161. package/lib/collection/components/duet-range-stepper/duet-range-stepper.css +1 -1
  162. package/lib/collection/components/duet-range-stepper/duet-range-stepper.js +24 -3
  163. package/lib/collection/components/duet-select/duet-select.css +38 -38
  164. package/lib/collection/components/duet-select/duet-select.js +10 -5
  165. package/lib/collection/components/duet-slideout/duet-slideout.css +5 -6
  166. package/lib/collection/components/duet-slideout/duet-slideout.js +11 -9
  167. package/lib/collection/components/duet-slideout-lang/duet-slideout-lang.css +2 -2
  168. package/lib/collection/components/duet-slideout-link/duet-slideout-link.css +4 -4
  169. package/lib/collection/components/duet-slideout-panel/duet-slideout-panel.css +9 -9
  170. package/lib/collection/components/duet-slideout-panel-dropdown/duet-slideout-panel-dropdown.css +5 -5
  171. package/lib/collection/components/duet-spacer/duet-spacer.js +4 -2
  172. package/lib/collection/components/duet-spinner/duet-spinner.css +3 -3
  173. package/lib/collection/components/duet-spinner/duet-spinner.js +2 -1
  174. package/lib/collection/components/duet-step/duet-step.css +10 -10
  175. package/lib/collection/components/duet-step/duet-step.js +4 -2
  176. package/lib/collection/components/duet-stepper/duet-stepper.css +1 -1
  177. package/lib/collection/components/duet-stepper/duet-stepper.js +2 -1
  178. package/lib/collection/components/duet-submenu-bar/duet-submenu-bar.css +10 -10
  179. package/lib/collection/components/duet-submenu-bar-dropdown/duet-submenu-bar-dropdown.css +18 -18
  180. package/lib/collection/components/duet-submenu-bar-dropdown-link/duet-submenu-bar-dropdown-link.css +8 -8
  181. package/lib/collection/components/duet-submenu-bar-link/duet-submenu-bar-link.css +8 -8
  182. package/lib/collection/components/duet-tab-group/duet-tab-group.css +61 -45
  183. package/lib/collection/components/duet-tab-group/duet-tab-group.js +24 -21
  184. package/lib/collection/components/duet-table/duet-table.css +33 -33
  185. package/lib/collection/components/duet-table/duet-table.js +6 -3
  186. package/lib/collection/components/duet-textarea/duet-textarea.css +39 -39
  187. package/lib/collection/components/duet-textarea/duet-textarea.js +8 -4
  188. package/lib/collection/components/duet-toggle/duet-toggle.css +12 -12
  189. package/lib/collection/components/duet-toggle/duet-toggle.js +2 -1
  190. package/lib/collection/components/duet-toolbar/duet-toolbar.css +6 -6
  191. package/lib/collection/components/duet-toolbar-dropdown/duet-toolbar-dropdown.css +13 -13
  192. package/lib/collection/components/duet-toolbar-dropdown-link/duet-toolbar-dropdown-link.css +8 -8
  193. package/lib/collection/components/duet-toolbar-link/duet-toolbar-link.css +11 -11
  194. package/lib/collection/components/duet-tooltip/duet-tooltip.css +26 -26
  195. package/lib/collection/components/duet-tooltip/duet-tooltip.js +2 -1
  196. package/lib/collection/components/duet-tray/duet-tray.css +14 -14
  197. package/lib/collection/components/duet-upload/duet-upload.css +1 -1
  198. package/lib/collection/components/duet-upload/duet-upload.js +30 -17
  199. package/lib/collection/components/duet-upload-aria-status/duet-upload-aria-status.js +2 -1
  200. package/lib/collection/utils/language-utils.js +35 -0
  201. package/lib/dist-custom-elements/duet-action-button.js +1 -1
  202. package/lib/dist-custom-elements/duet-alert.js +1 -1
  203. package/lib/dist-custom-elements/duet-badge.js +1 -1
  204. package/lib/dist-custom-elements/duet-breadcrumb.js +3 -3
  205. package/lib/dist-custom-elements/duet-breadcrumbs.js +4 -4
  206. package/lib/dist-custom-elements/duet-button.js +1 -1
  207. package/lib/dist-custom-elements/duet-caption.js +1 -1
  208. package/lib/dist-custom-elements/duet-card.js +5 -5
  209. package/lib/dist-custom-elements/duet-checkbox.js +1 -1
  210. package/lib/dist-custom-elements/duet-checkmark.js +1 -1
  211. package/lib/dist-custom-elements/duet-choice-group.js +6 -6
  212. package/lib/dist-custom-elements/duet-choice.js +8 -8
  213. package/lib/dist-custom-elements/duet-collapsible.js +4 -4
  214. package/lib/dist-custom-elements/duet-combobox.js +5 -5
  215. package/lib/dist-custom-elements/duet-contact-card.d.ts +11 -0
  216. package/lib/dist-custom-elements/duet-contact-card.js +131 -0
  217. package/lib/dist-custom-elements/duet-cookie-consent.js +7 -7
  218. package/lib/dist-custom-elements/duet-date-picker.js +14 -14
  219. package/lib/dist-custom-elements/duet-divider.js +1 -1
  220. package/lib/dist-custom-elements/duet-editable-table.js +1 -1
  221. package/lib/dist-custom-elements/duet-empty-state.js +1 -1
  222. package/lib/dist-custom-elements/duet-fieldset.js +1 -1
  223. package/lib/dist-custom-elements/duet-footer.js +6 -6
  224. package/lib/dist-custom-elements/duet-grid-item.js +1 -1
  225. package/lib/dist-custom-elements/duet-grid.js +1 -1
  226. package/lib/dist-custom-elements/duet-header.js +12 -12
  227. package/lib/dist-custom-elements/duet-heading.js +1 -1
  228. package/lib/dist-custom-elements/duet-hero.js +12 -12
  229. package/lib/dist-custom-elements/duet-icon.js +1 -1
  230. package/lib/dist-custom-elements/duet-input.js +1 -1
  231. package/lib/dist-custom-elements/duet-label.js +1 -1
  232. package/lib/dist-custom-elements/duet-layout.js +1 -1
  233. package/lib/dist-custom-elements/duet-link.js +1 -1
  234. package/lib/dist-custom-elements/duet-list-item.js +1 -1
  235. package/lib/dist-custom-elements/duet-list.js +1 -1
  236. package/lib/dist-custom-elements/duet-logo.js +1 -1
  237. package/lib/dist-custom-elements/duet-menu-bar-button.js +4 -4
  238. package/lib/dist-custom-elements/duet-menu-bar-dropdown-link.js +3 -3
  239. package/lib/dist-custom-elements/duet-menu-bar-dropdown.js +3 -3
  240. package/lib/dist-custom-elements/duet-menu-bar-link.js +4 -4
  241. package/lib/dist-custom-elements/duet-menu-bar.js +5 -5
  242. package/lib/dist-custom-elements/duet-modal.js +14 -11
  243. package/lib/dist-custom-elements/duet-multiselect.js +10 -10
  244. package/lib/dist-custom-elements/duet-nav.js +4 -4
  245. package/lib/dist-custom-elements/duet-notification-drawer.js +6 -6
  246. package/lib/dist-custom-elements/duet-notification.js +4 -4
  247. package/lib/dist-custom-elements/duet-number-input.js +11 -11
  248. package/lib/dist-custom-elements/duet-page-heading.js +3 -3
  249. package/lib/dist-custom-elements/duet-pagination.js +10 -9
  250. package/lib/dist-custom-elements/duet-paragraph.js +1 -1
  251. package/lib/dist-custom-elements/duet-progress.js +1 -1
  252. package/lib/dist-custom-elements/duet-radio-group.js +6 -6
  253. package/lib/dist-custom-elements/duet-radio.js +2 -2
  254. package/lib/dist-custom-elements/duet-range-slider.js +4 -4
  255. package/lib/dist-custom-elements/duet-range-stepper.js +22 -8
  256. package/lib/dist-custom-elements/duet-scrollable.js +1 -1
  257. package/lib/dist-custom-elements/duet-section-layout.js +1 -1
  258. package/lib/dist-custom-elements/duet-select.js +1 -1
  259. package/lib/dist-custom-elements/duet-slideout-lang.js +5 -5
  260. package/lib/dist-custom-elements/duet-slideout-link.js +3 -3
  261. package/lib/dist-custom-elements/duet-slideout-panel-dropdown.js +3 -3
  262. package/lib/dist-custom-elements/duet-slideout-panel.js +6 -6
  263. package/lib/dist-custom-elements/duet-slideout.js +9 -8
  264. package/lib/dist-custom-elements/duet-spacer.js +1 -1
  265. package/lib/dist-custom-elements/duet-spinner.js +1 -1
  266. package/lib/dist-custom-elements/duet-step.js +5 -5
  267. package/lib/dist-custom-elements/duet-stepper.js +3 -3
  268. package/lib/dist-custom-elements/duet-submenu-bar-dropdown-link.js +3 -3
  269. package/lib/dist-custom-elements/duet-submenu-bar-dropdown.js +4 -4
  270. package/lib/dist-custom-elements/duet-submenu-bar-link.js +4 -4
  271. package/lib/dist-custom-elements/duet-submenu-bar.js +3 -3
  272. package/lib/dist-custom-elements/duet-tab-group.js +26 -27
  273. package/lib/dist-custom-elements/duet-tab.js +2 -2
  274. package/lib/dist-custom-elements/duet-table.js +1 -1
  275. package/lib/dist-custom-elements/duet-textarea.js +9 -9
  276. package/lib/dist-custom-elements/duet-toggle.js +3 -3
  277. package/lib/dist-custom-elements/duet-toolbar-dropdown-link.js +3 -3
  278. package/lib/dist-custom-elements/duet-toolbar-dropdown.js +3 -3
  279. package/lib/dist-custom-elements/duet-toolbar-link.js +3 -3
  280. package/lib/dist-custom-elements/duet-toolbar.js +2 -2
  281. package/lib/dist-custom-elements/duet-tooltip.js +1 -1
  282. package/lib/dist-custom-elements/duet-tray.js +6 -6
  283. package/lib/dist-custom-elements/duet-upload-aria-status.js +1 -1
  284. package/lib/dist-custom-elements/duet-upload.js +24 -24
  285. package/lib/dist-custom-elements/duet-visually-hidden.js +1 -1
  286. package/lib/dist-custom-elements/index.d.ts +9 -86
  287. package/lib/dist-custom-elements/index.js +1 -84
  288. package/lib/dist-custom-elements/{p-8dd42921.js → p-032585fc.js} +9 -9
  289. package/lib/dist-custom-elements/{p-69aed4fa.js → p-108485b6.js} +3 -3
  290. package/lib/dist-custom-elements/{p-e4a60f42.js → p-152ee893.js} +38 -1
  291. package/lib/dist-custom-elements/p-1b0ba3fe.js +265 -0
  292. package/lib/dist-custom-elements/{p-24b5f5d8.js → p-1eb646ce.js} +3 -3
  293. package/lib/dist-custom-elements/{p-35c42834.js → p-2a6f4122.js} +6 -6
  294. package/lib/dist-custom-elements/{p-55325c49.js → p-33e00967.js} +1 -1
  295. package/lib/dist-custom-elements/{p-3bd1c042.js → p-42457971.js} +2 -2
  296. package/lib/dist-custom-elements/{p-5b4c8e0d.js → p-43363964.js} +2 -2
  297. package/lib/dist-custom-elements/{p-d117f5df.js → p-562ae9bf.js} +2 -2
  298. package/lib/dist-custom-elements/{p-eecb0a82.js → p-5c4104e5.js} +3 -3
  299. package/lib/dist-custom-elements/{p-691b1920.js → p-5fdfdb42.js} +33 -10
  300. package/lib/dist-custom-elements/p-614f2712.js +37 -0
  301. package/lib/dist-custom-elements/p-646d548a.js +120 -0
  302. package/lib/dist-custom-elements/{p-52fa416b.js → p-66ce2aa1.js} +2 -2
  303. package/lib/dist-custom-elements/{p-e565b192.js → p-67e14cd3.js} +122 -7
  304. package/lib/dist-custom-elements/{p-5392a088.js → p-697162df.js} +2 -2
  305. package/lib/dist-custom-elements/p-6a1d1526.js +54 -0
  306. package/lib/dist-custom-elements/{p-ede854e1.js → p-6c05e879.js} +35 -1
  307. package/lib/{esm/shadow-css-a011f1fe.js → dist-custom-elements/p-6ee53ac3.js} +1 -1
  308. package/lib/dist-custom-elements/{p-85a51040.js → p-6fe0175a.js} +1 -1
  309. package/lib/dist-custom-elements/{p-aa1fc08e.js → p-7c398a84.js} +8 -6
  310. package/lib/dist-custom-elements/{p-f6adaddb.js → p-7e1eab44.js} +3 -3
  311. package/lib/dist-custom-elements/{p-535ce3ec.js → p-9ed347f9.js} +1 -1
  312. package/lib/dist-custom-elements/{p-ae7cfbe5.js → p-a080c8ea.js} +2 -2
  313. package/lib/dist-custom-elements/{p-b0e64542.js → p-a4ba7145.js} +7 -7
  314. package/lib/dist-custom-elements/p-adb9a785.js +76 -0
  315. package/lib/dist-custom-elements/{p-baef8898.js → p-b9b19d30.js} +10 -4
  316. package/lib/dist-custom-elements/{p-92475994.js → p-beeeb7a4.js} +40 -28
  317. package/lib/dist-custom-elements/{p-738bd3c5.js → p-c4d8cad0.js} +1 -1
  318. package/lib/dist-custom-elements/p-c6137eb6.js +186 -0
  319. package/lib/dist-custom-elements/{p-ce6c013f.js → p-ca2fe740.js} +2 -2
  320. package/lib/dist-custom-elements/{p-7e80afc3.js → p-eb4fb7b2.js} +5 -5
  321. package/lib/dist-custom-elements/{p-9986919d.js → p-efaad71c.js} +1 -1
  322. package/lib/dist-custom-elements/{p-7f5fd72b.js → p-efd5d01e.js} +1 -1
  323. package/lib/dist-custom-elements/{p-5f350253.js → p-f65831ce.js} +1 -1
  324. package/lib/dist-custom-elements/{p-add72ec7.js → p-fc98d756.js} +2 -2
  325. package/lib/dist-custom-elements/{p-84bde6a4.js → p-fcd87887.js} +4 -4
  326. package/lib/dist-custom-elements/{p-67b44d57.js → p-fd7efa16.js} +3 -3
  327. package/lib/duet/duet.esm.js +1 -1
  328. package/lib/duet/duet.js +1 -1
  329. package/lib/duet/p-03cfa47f.entry.js +4 -0
  330. package/lib/duet/p-0656f2f9.system.entry.js +4 -0
  331. package/lib/duet/p-07e066a7.entry.js +4 -0
  332. package/lib/duet/p-08ef8050.system.entry.js +4 -0
  333. package/lib/duet/p-0adf7b64.entry.js +4 -0
  334. package/lib/duet/{p-df355346.system.js → p-0c095985.system.js} +1 -1
  335. package/lib/duet/p-0c53f007.system.entry.js +4 -0
  336. package/lib/duet/p-0c6ed41d.system.entry.js +4 -0
  337. package/lib/duet/{p-5e1919f6.entry.js → p-1550576c.entry.js} +1 -1
  338. package/lib/duet/p-18c0ff13.entry.js +4 -0
  339. package/lib/duet/{p-effcbf69.entry.js → p-193a8abf.entry.js} +1 -1
  340. package/lib/duet/p-193cae12.system.entry.js +4 -0
  341. package/lib/duet/{p-d9b1e1a8.entry.js → p-1b7f8128.entry.js} +1 -1
  342. package/lib/duet/{p-15491676.entry.js → p-1c8c6afd.entry.js} +1 -1
  343. package/lib/duet/{p-cdcabbcb.entry.js → p-1d0fe0e5.entry.js} +1 -1
  344. package/lib/duet/p-1f4351ab.system.entry.js +4 -0
  345. package/lib/duet/p-22442b75.system.entry.js +4 -0
  346. package/lib/duet/p-228a7948.entry.js +4 -0
  347. package/lib/duet/p-23e7d935.entry.js +4 -0
  348. package/lib/duet/{p-d7dba7ef.system.entry.js → p-25152446.system.entry.js} +1 -1
  349. package/lib/duet/p-25cfb26a.system.entry.js +4 -0
  350. package/lib/duet/{p-3e69e46e.entry.js → p-2634dad4.entry.js} +1 -1
  351. package/lib/duet/p-2af0cd90.system.entry.js +4 -0
  352. package/lib/duet/p-2c0dbf48.system.entry.js +4 -0
  353. package/lib/duet/p-2ef88161.system.js +4 -0
  354. package/lib/duet/p-2f560eb6.system.entry.js +4 -0
  355. package/lib/duet/p-317e939c.system.entry.js +4 -0
  356. package/lib/duet/p-31c08993.system.entry.js +4 -0
  357. package/lib/duet/{p-2e97fd2e.entry.js → p-31dc2463.entry.js} +1 -1
  358. package/lib/duet/{p-715de0da.system.entry.js → p-322b78d6.system.entry.js} +1 -1
  359. package/lib/duet/p-33887f28.entry.js +4 -0
  360. package/lib/duet/p-3575bb17.entry.js +4 -0
  361. package/lib/duet/p-35853dae.system.entry.js +4 -0
  362. package/lib/duet/{p-106a741f.entry.js → p-3a053f92.entry.js} +1 -1
  363. package/lib/duet/p-3a2bc2f9.system.entry.js +4 -0
  364. package/lib/duet/p-3a8be22c.entry.js +4 -0
  365. package/lib/duet/p-3b808dd4.system.entry.js +4 -0
  366. package/lib/duet/{p-a05f0aa4.system.entry.js → p-3c24751d.system.entry.js} +1 -1
  367. package/lib/duet/p-43d6c9e5.system.entry.js +4 -0
  368. package/lib/duet/p-460e0000.system.entry.js +4 -0
  369. package/lib/duet/p-466aa228.entry.js +4 -0
  370. package/lib/duet/p-49cf2d52.system.entry.js +4 -0
  371. package/lib/duet/p-4bf107bc.system.entry.js +4 -0
  372. package/lib/duet/p-4c3009d4.entry.js +4 -0
  373. package/lib/duet/{p-59076cae.entry.js → p-4d427b74.entry.js} +1 -1
  374. package/lib/duet/p-51eee6b2.system.entry.js +4 -0
  375. package/lib/duet/p-56db6310.entry.js +4 -0
  376. package/lib/duet/p-57ff4a56.system.entry.js +4 -0
  377. package/lib/duet/p-59ab89fe.entry.js +4 -0
  378. package/lib/duet/p-59d0e9da.system.entry.js +4 -0
  379. package/lib/duet/p-5a158681.system.entry.js +4 -0
  380. package/lib/duet/p-5c142974.system.entry.js +4 -0
  381. package/lib/duet/p-6228593b.system.entry.js +4 -0
  382. package/lib/duet/p-63996737.entry.js +4 -0
  383. package/lib/duet/p-67d326ad.system.entry.js +4 -0
  384. package/lib/duet/p-6b420202.system.entry.js +4 -0
  385. package/lib/duet/p-6c05e879.js +4 -0
  386. package/lib/duet/p-6d3af831.system.entry.js +4 -0
  387. package/lib/duet/p-6ee53ac3.js +15 -0
  388. package/lib/duet/p-703d38f6.entry.js +4 -0
  389. package/lib/duet/p-77149afc.entry.js +4 -0
  390. package/lib/duet/p-77f82263.entry.js +4 -0
  391. package/lib/duet/p-79a9746e.js +1 -1
  392. package/lib/duet/{p-f7cde9df.entry.js → p-812836a4.entry.js} +1 -1
  393. package/lib/duet/p-83740a39.entry.js +4 -0
  394. package/lib/duet/p-83a78090.system.entry.js +4 -0
  395. package/lib/duet/p-86fa6670.entry.js +4 -0
  396. package/lib/duet/p-8757adcf.system.entry.js +4 -0
  397. package/lib/duet/p-88a6749f.system.entry.js +4 -0
  398. package/lib/duet/p-88c382be.entry.js +4 -0
  399. package/lib/duet/{p-b655eb33.entry.js → p-8982ddf8.entry.js} +1 -1
  400. package/lib/duet/{p-9264d821.entry.js → p-8d129d52.entry.js} +1 -1
  401. package/lib/duet/{p-45b6203e.entry.js → p-8d2d6072.entry.js} +1 -1
  402. package/lib/duet/{p-98686c85.system.entry.js → p-8d545d1b.system.entry.js} +1 -1
  403. package/lib/duet/p-8f806a8b.entry.js +4 -0
  404. package/lib/duet/{p-d4fd1619.system.entry.js → p-8fcec069.system.entry.js} +1 -1
  405. package/lib/duet/p-9052b6f5.js +1 -1
  406. package/lib/duet/p-924a6fae.system.entry.js +4 -0
  407. package/lib/duet/{p-f32a7df7.entry.js → p-92e65f96.entry.js} +1 -1
  408. package/lib/duet/p-960b240d.system.entry.js +4 -0
  409. package/lib/duet/p-9629d71a.system.entry.js +4 -0
  410. package/lib/duet/{p-6ddb8a89.entry.js → p-9b9055ce.entry.js} +1 -1
  411. package/lib/duet/{p-e8238bc0.entry.js → p-9c87118f.entry.js} +1 -1
  412. package/lib/duet/p-9d0a9bd5.system.entry.js +4 -0
  413. package/lib/duet/p-9f11e160.system.entry.js +4 -0
  414. package/lib/duet/{p-6c280f89.entry.js → p-9f1f39b5.entry.js} +1 -1
  415. package/lib/duet/{p-b4305d0a.system.entry.js → p-a1199061.system.entry.js} +2 -2
  416. package/lib/duet/p-a221c855.entry.js +4 -0
  417. package/lib/duet/p-a29a4414.system.entry.js +4 -0
  418. package/lib/duet/p-a5d5622d.system.entry.js +4 -0
  419. package/lib/duet/{p-0ad201e5.entry.js → p-a917e3b6.entry.js} +1 -1
  420. package/lib/duet/p-a933c3f8.system.entry.js +4 -0
  421. package/lib/duet/p-ab13177d.entry.js +4 -0
  422. package/lib/duet/p-acad33fd.entry.js +4 -0
  423. package/lib/duet/p-b1db3006.js +1 -1
  424. package/lib/duet/p-b2ba1012.system.entry.js +4 -0
  425. package/lib/duet/p-b3cdf97b.js +5 -0
  426. package/lib/duet/p-b44772bb.entry.js +4 -0
  427. package/lib/duet/{p-51816111.entry.js → p-b4c89247.entry.js} +1 -1
  428. package/lib/duet/p-b50558d2.entry.js +4 -0
  429. package/lib/duet/p-b5895431.system.entry.js +4 -0
  430. package/lib/duet/{p-ac573362.entry.js → p-b5d742f4.entry.js} +1 -1
  431. package/lib/duet/p-b7867483.system.entry.js +4 -0
  432. package/lib/duet/p-b87a1d54.system.entry.js +4 -0
  433. package/lib/duet/p-b9e6d933.system.entry.js +4 -0
  434. package/lib/duet/{p-b6e277a1.entry.js → p-ba3c427f.entry.js} +1 -1
  435. package/lib/duet/p-bb04665a.entry.js +4 -0
  436. package/lib/duet/p-bbd312c3.entry.js +4 -0
  437. package/lib/duet/p-c0b16f31.entry.js +4 -0
  438. package/lib/duet/p-c4d454c3.entry.js +4 -0
  439. package/lib/duet/p-c4d8cad0.js +1 -1
  440. package/lib/duet/p-c9971192.system.entry.js +4 -0
  441. package/lib/duet/p-cc12d9fa.entry.js +4 -0
  442. package/lib/duet/p-ccca2abd.system.entry.js +4 -0
  443. package/lib/duet/p-cd0c52b9.system.js +5 -0
  444. package/lib/duet/p-cd24dd64.entry.js +4 -0
  445. package/lib/duet/p-cd44cc43.system.entry.js +4 -0
  446. package/lib/duet/{p-21fe5a95.entry.js → p-cd51c9f9.entry.js} +1 -1
  447. package/lib/duet/p-d0a204dd.js +4 -0
  448. package/lib/duet/p-d4a49f9d.entry.js +4 -0
  449. package/lib/duet/{p-93b95959.entry.js → p-d5039af1.entry.js} +1 -1
  450. package/lib/duet/p-d54bc721.entry.js +4 -0
  451. package/lib/duet/p-d6c3dc66.entry.js +4 -0
  452. package/lib/duet/p-dd52fc75.entry.js +4 -0
  453. package/lib/duet/p-de63db12.system.entry.js +4 -0
  454. package/lib/duet/{p-6101021f.system.entry.js → p-e2592469.system.entry.js} +2 -2
  455. package/lib/duet/p-e79b8e08.system.entry.js +4 -0
  456. package/lib/duet/p-ea0c5cce.system.entry.js +4 -0
  457. package/lib/duet/p-eac7d756.system.entry.js +4 -0
  458. package/lib/duet/p-eb4dc652.system.entry.js +4 -0
  459. package/lib/duet/p-ef6131cf.system.entry.js +4 -0
  460. package/lib/duet/p-f20780ad.system.js +4 -0
  461. package/lib/duet/{p-3e2c92b9.entry.js → p-f3340517.entry.js} +1 -1
  462. package/lib/duet/p-f364ae29.entry.js +4 -0
  463. package/lib/duet/p-f495c3af.system.entry.js +4 -0
  464. package/lib/duet/p-f695a268.system.entry.js +4 -0
  465. package/lib/duet/p-f6dfcdb7.system.entry.js +4 -0
  466. package/lib/duet/{p-513a7695.entry.js → p-f7c8e22c.entry.js} +1 -1
  467. package/lib/duet/{p-a563982e.system.entry.js → p-fb92ab7b.system.entry.js} +1 -1
  468. package/lib/duet/p-fcaa49c3.entry.js +4 -0
  469. package/lib/duet/p-fcdc6d18.entry.js +4 -0
  470. package/lib/duet/p-fd55984b.system.entry.js +4 -0
  471. package/lib/duet/{p-806372aa.entry.js → p-fe87de6d.entry.js} +1 -1
  472. package/lib/duet/p-ff6679c1.entry.js +4 -0
  473. package/lib/esm/{dom-4d9c03f4.js → dom-ae12a113.js} +1 -1
  474. package/lib/esm/duet-action-button.entry.js +3 -3
  475. package/lib/esm/duet-alert.entry.js +26 -5
  476. package/lib/esm/duet-badge.entry.js +2 -2
  477. package/lib/esm/duet-breadcrumb.entry.js +2 -2
  478. package/lib/esm/duet-breadcrumbs.entry.js +3 -3
  479. package/lib/esm/duet-button_2.entry.js +4 -4
  480. package/lib/esm/duet-caption_4.entry.js +9 -7
  481. package/lib/esm/duet-card.entry.js +2 -2
  482. package/lib/esm/duet-checkbox.entry.js +2 -2
  483. package/lib/esm/duet-checkmark.entry.js +2 -2
  484. package/lib/esm/duet-choice_2.entry.js +4 -4
  485. package/lib/esm/duet-collapsible.entry.js +2 -2
  486. package/lib/esm/duet-combobox.entry.js +3 -3
  487. package/lib/esm/duet-contact-card.entry.js +60 -0
  488. package/lib/esm/duet-cookie-consent.entry.js +2 -2
  489. package/lib/esm/duet-date-picker.entry.js +4 -4
  490. package/lib/esm/duet-divider_2.entry.js +2 -2
  491. package/lib/esm/duet-editable-table_3.entry.js +7 -7
  492. package/lib/esm/duet-empty-state.entry.js +2 -2
  493. package/lib/esm/duet-fieldset.entry.js +2 -2
  494. package/lib/esm/duet-footer.entry.js +3 -3
  495. package/lib/esm/duet-grid_2.entry.js +2 -2
  496. package/lib/esm/duet-header_2.entry.js +10 -4
  497. package/lib/esm/duet-hero.entry.js +4 -4
  498. package/lib/esm/duet-icon.entry.js +2 -2
  499. package/lib/esm/duet-input_2.entry.js +32 -21
  500. package/lib/esm/duet-layout.entry.js +1 -1
  501. package/lib/esm/duet-list_2.entry.js +2 -2
  502. package/lib/esm/duet-menu-bar-button.entry.js +2 -2
  503. package/lib/esm/duet-menu-bar-dropdown-link.entry.js +2 -2
  504. package/lib/esm/duet-menu-bar-dropdown.entry.js +2 -2
  505. package/lib/esm/duet-menu-bar-link.entry.js +2 -2
  506. package/lib/esm/duet-menu-bar.entry.js +3 -3
  507. package/lib/esm/duet-modal.entry.js +7 -5
  508. package/lib/esm/duet-multiselect.entry.js +3 -3
  509. package/lib/esm/duet-nav.entry.js +4 -4
  510. package/lib/esm/duet-notification_2.entry.js +4 -4
  511. package/lib/esm/duet-number-input.entry.js +3 -3
  512. package/lib/esm/duet-page-heading.entry.js +2 -2
  513. package/lib/esm/duet-pagination_2.entry.js +18 -4
  514. package/lib/esm/duet-progress.entry.js +3 -3
  515. package/lib/esm/duet-radio_2.entry.js +2 -2
  516. package/lib/esm/duet-range-slider.entry.js +2 -2
  517. package/lib/esm/duet-scrollable_3.entry.js +18 -19
  518. package/lib/esm/duet-section-layout.entry.js +1 -1
  519. package/lib/esm/duet-select.entry.js +2 -2
  520. package/lib/esm/duet-slideout-lang.entry.js +3 -3
  521. package/lib/esm/duet-slideout-link.entry.js +2 -2
  522. package/lib/esm/duet-slideout-panel-dropdown.entry.js +2 -2
  523. package/lib/esm/duet-slideout-panel.entry.js +4 -4
  524. package/lib/esm/duet-slideout.entry.js +6 -5
  525. package/lib/esm/duet-step_2.entry.js +3 -3
  526. package/lib/esm/duet-submenu-bar-dropdown-link.entry.js +2 -2
  527. package/lib/esm/duet-submenu-bar-dropdown.entry.js +2 -2
  528. package/lib/esm/duet-submenu-bar-link.entry.js +2 -2
  529. package/lib/esm/duet-submenu-bar.entry.js +2 -2
  530. package/lib/esm/duet-textarea.entry.js +2 -2
  531. package/lib/esm/duet-toggle.entry.js +2 -2
  532. package/lib/esm/duet-toolbar-dropdown-link.entry.js +2 -2
  533. package/lib/esm/duet-toolbar-dropdown.entry.js +2 -2
  534. package/lib/esm/duet-toolbar-link.entry.js +2 -2
  535. package/lib/esm/duet-toolbar.entry.js +2 -2
  536. package/lib/esm/duet-tooltip.entry.js +3 -3
  537. package/lib/esm/duet-tray.entry.js +3 -3
  538. package/lib/esm/duet-upload-aria-status.entry.js +1 -1
  539. package/lib/esm/duet-visually-hidden.entry.js +1 -1
  540. package/lib/esm/duet.js +34 -6
  541. package/lib/esm/{focus-utils-fd1ff36a.js → focus-utils-cf8246ed.js} +1 -1
  542. package/lib/esm/{index-4ce7972b.js → index-df15a197.js} +129 -7
  543. package/lib/esm/{language-utils-bf701d37.js → language-utils-7b211f31.js} +35 -1
  544. package/lib/esm/loader.js +4 -3
  545. package/lib/esm/polyfills/css-shim.js +1 -1
  546. package/lib/{dist-custom-elements/p-e2cd1c98.js → esm/shadow-css-66bc7949.js} +1 -1
  547. package/lib/esm-es5/duet-action-button.entry.js +2 -2
  548. package/lib/esm-es5/duet-alert.entry.js +2 -2
  549. package/lib/esm-es5/duet-badge.entry.js +1 -1
  550. package/lib/esm-es5/duet-breadcrumb.entry.js +1 -1
  551. package/lib/esm-es5/duet-breadcrumbs.entry.js +1 -1
  552. package/lib/esm-es5/duet-button_2.entry.js +2 -2
  553. package/lib/esm-es5/duet-caption_4.entry.js +2 -2
  554. package/lib/esm-es5/duet-card.entry.js +2 -2
  555. package/lib/esm-es5/duet-checkbox.entry.js +2 -2
  556. package/lib/esm-es5/duet-checkmark.entry.js +1 -1
  557. package/lib/esm-es5/duet-choice_2.entry.js +2 -2
  558. package/lib/esm-es5/duet-collapsible.entry.js +2 -2
  559. package/lib/esm-es5/duet-combobox.entry.js +2 -2
  560. package/lib/esm-es5/duet-contact-card.entry.js +4 -0
  561. package/lib/esm-es5/duet-cookie-consent.entry.js +1 -1
  562. package/lib/esm-es5/duet-date-picker.entry.js +2 -2
  563. package/lib/esm-es5/duet-divider_2.entry.js +1 -1
  564. package/lib/esm-es5/duet-editable-table_3.entry.js +2 -2
  565. package/lib/esm-es5/duet-empty-state.entry.js +1 -1
  566. package/lib/esm-es5/duet-fieldset.entry.js +1 -1
  567. package/lib/esm-es5/duet-footer.entry.js +2 -2
  568. package/lib/esm-es5/duet-grid_2.entry.js +2 -2
  569. package/lib/esm-es5/duet-header_2.entry.js +2 -2
  570. package/lib/esm-es5/duet-hero.entry.js +2 -2
  571. package/lib/esm-es5/duet-icon.entry.js +2 -2
  572. package/lib/esm-es5/duet-input_2.entry.js +2 -2
  573. package/lib/esm-es5/duet-layout.entry.js +1 -1
  574. package/lib/esm-es5/duet-list_2.entry.js +2 -2
  575. package/lib/esm-es5/duet-menu-bar-button.entry.js +2 -2
  576. package/lib/esm-es5/duet-menu-bar-dropdown-link.entry.js +1 -1
  577. package/lib/esm-es5/duet-menu-bar-dropdown.entry.js +1 -1
  578. package/lib/esm-es5/duet-menu-bar-link.entry.js +1 -1
  579. package/lib/esm-es5/duet-menu-bar.entry.js +1 -1
  580. package/lib/esm-es5/duet-modal.entry.js +2 -2
  581. package/lib/esm-es5/duet-multiselect.entry.js +2 -2
  582. package/lib/esm-es5/duet-nav.entry.js +1 -1
  583. package/lib/esm-es5/duet-notification_2.entry.js +2 -2
  584. package/lib/esm-es5/duet-number-input.entry.js +2 -2
  585. package/lib/esm-es5/duet-page-heading.entry.js +1 -1
  586. package/lib/esm-es5/duet-pagination_2.entry.js +2 -2
  587. package/lib/esm-es5/duet-progress.entry.js +1 -1
  588. package/lib/esm-es5/duet-radio_2.entry.js +2 -2
  589. package/lib/esm-es5/duet-range-slider.entry.js +2 -2
  590. package/lib/esm-es5/duet-scrollable_3.entry.js +2 -2
  591. package/lib/esm-es5/duet-section-layout.entry.js +1 -1
  592. package/lib/esm-es5/duet-select.entry.js +2 -2
  593. package/lib/esm-es5/duet-slideout-lang.entry.js +1 -1
  594. package/lib/esm-es5/duet-slideout-link.entry.js +1 -1
  595. package/lib/esm-es5/duet-slideout-panel-dropdown.entry.js +1 -1
  596. package/lib/esm-es5/duet-slideout-panel.entry.js +1 -1
  597. package/lib/esm-es5/duet-slideout.entry.js +2 -2
  598. package/lib/esm-es5/duet-step_2.entry.js +2 -2
  599. package/lib/esm-es5/duet-submenu-bar-dropdown-link.entry.js +1 -1
  600. package/lib/esm-es5/duet-submenu-bar-dropdown.entry.js +1 -1
  601. package/lib/esm-es5/duet-submenu-bar-link.entry.js +1 -1
  602. package/lib/esm-es5/duet-submenu-bar.entry.js +1 -1
  603. package/lib/esm-es5/duet-textarea.entry.js +2 -2
  604. package/lib/esm-es5/duet-toggle.entry.js +2 -2
  605. package/lib/esm-es5/duet-toolbar-dropdown-link.entry.js +1 -1
  606. package/lib/esm-es5/duet-toolbar-dropdown.entry.js +1 -1
  607. package/lib/esm-es5/duet-toolbar-link.entry.js +1 -1
  608. package/lib/esm-es5/duet-toolbar.entry.js +1 -1
  609. package/lib/esm-es5/duet-tooltip.entry.js +2 -2
  610. package/lib/esm-es5/duet-tray.entry.js +1 -1
  611. package/lib/esm-es5/duet-upload-aria-status.entry.js +1 -1
  612. package/lib/esm-es5/duet-visually-hidden.entry.js +1 -1
  613. package/lib/esm-es5/duet.js +1 -1
  614. package/lib/esm-es5/focus-utils-cf8246ed.js +4 -0
  615. package/lib/esm-es5/index-df15a197.js +5 -0
  616. package/lib/esm-es5/{language-utils-bf701d37.js → language-utils-7b211f31.js} +1 -1
  617. package/lib/esm-es5/loader.js +1 -1
  618. package/lib/loader/index.d.ts +9 -0
  619. package/lib/types/common-types.d.ts +20 -0
  620. package/lib/types/components/duet-action-button/duet-action-button.d.ts +2 -2
  621. package/lib/types/components/duet-alert/duet-alert.d.ts +11 -1
  622. package/lib/types/components/duet-button/duet-button.d.ts +6 -6
  623. package/lib/types/components/duet-caption/duet-caption.d.ts +1 -1
  624. package/lib/types/components/duet-card/duet-card.d.ts +3 -3
  625. package/lib/types/components/duet-checkbox/duet-checkbox.d.ts +1 -1
  626. package/lib/types/components/duet-choice/duet-checkmark.d.ts +1 -2
  627. package/lib/types/components/duet-choice/duet-choice.d.ts +2 -3
  628. package/lib/types/components/duet-collapsible/duet-collapsible.d.ts +3 -3
  629. package/lib/types/components/duet-combobox/duet-combobox.d.ts +2 -2
  630. package/lib/types/components/duet-contact-card/duet-contact-card.d.ts +64 -0
  631. package/lib/types/components/duet-cookie-consent/duet-cookie-consent.d.ts +2 -2
  632. package/lib/types/components/duet-date-picker/date-i18n.d.ts +3 -3
  633. package/lib/types/components/duet-date-picker/date-picker-day.d.ts +1 -1
  634. package/lib/types/components/duet-date-picker/date-picker-input.d.ts +1 -1
  635. package/lib/types/components/duet-date-picker/date-picker-month.d.ts +1 -1
  636. package/lib/types/components/duet-date-picker/duet-date-picker.d.ts +3 -3
  637. package/lib/types/components/duet-divider/duet-divider.d.ts +1 -1
  638. package/lib/types/components/duet-editable-table/duet-editable-table.d.ts +9 -10
  639. package/lib/types/components/duet-empty-state/duet-empty-state.d.ts +1 -1
  640. package/lib/types/components/duet-footer/duet-footer.d.ts +5 -5
  641. package/lib/types/components/duet-grid/duet-grid.d.ts +3 -3
  642. package/lib/types/components/duet-header/duet-header.d.ts +9 -9
  643. package/lib/types/components/duet-heading/duet-heading.d.ts +1 -1
  644. package/lib/types/components/duet-hero/duet-hero.d.ts +8 -8
  645. package/lib/types/components/duet-icon/duet-icon.d.ts +1 -1
  646. package/lib/types/components/duet-input/duet-input.d.ts +8 -5
  647. package/lib/types/components/duet-label/duet-label.d.ts +2 -2
  648. package/lib/types/components/duet-layout/duet-layout.d.ts +1 -1
  649. package/lib/types/components/duet-list/duet-list.d.ts +4 -4
  650. package/lib/types/components/duet-logo/duet-logo.d.ts +3 -1
  651. package/lib/types/components/duet-menu-bar/duet-menu-bar.d.ts +1 -1
  652. package/lib/types/components/duet-modal/duet-modal.d.ts +9 -3
  653. package/lib/types/components/duet-multiselect/duet-multiselect.d.ts +2 -2
  654. package/lib/types/components/duet-nav/duet-nav.d.ts +1 -1
  655. package/lib/types/components/duet-notification-drawer/duet-notification-drawer.d.ts +1 -1
  656. package/lib/types/components/duet-number-input/duet-number-input.d.ts +1 -1
  657. package/lib/types/components/duet-pagination/duet-pagination.d.ts +2 -2
  658. package/lib/types/components/duet-paragraph/duet-paragraph.d.ts +3 -3
  659. package/lib/types/components/duet-progress/duet-progress.d.ts +1 -1
  660. package/lib/types/components/duet-radio/duet-radio.d.ts +1 -1
  661. package/lib/types/components/duet-range-slider/duet-range-slider.d.ts +1 -1
  662. package/lib/types/components/duet-range-stepper/duet-range-stepper.d.ts +9 -2
  663. package/lib/types/components/duet-select/duet-select.d.ts +5 -5
  664. package/lib/types/components/duet-slideout/duet-slideout.d.ts +3 -4
  665. package/lib/types/components/duet-spacer/duet-spacer.d.ts +2 -2
  666. package/lib/types/components/duet-spinner/duet-spinner.d.ts +1 -1
  667. package/lib/types/components/duet-step/duet-step.d.ts +2 -2
  668. package/lib/types/components/duet-stepper/duet-stepper.d.ts +1 -1
  669. package/lib/types/components/duet-tab-group/duet-tab-group.d.ts +2 -2
  670. package/lib/types/components/duet-table/duet-table.d.ts +2 -5
  671. package/lib/types/components/duet-textarea/duet-textarea.d.ts +1 -1
  672. package/lib/types/components/duet-toggle/duet-toggle.d.ts +1 -1
  673. package/lib/types/components/duet-tooltip/duet-tooltip.d.ts +1 -1
  674. package/lib/types/components/duet-upload/duet-upload.d.ts +7 -8
  675. package/lib/types/components/duet-upload/errorcodes.utils.d.ts +2 -2
  676. package/lib/types/components/duet-upload/xhr.helpers.d.ts +5 -5
  677. package/lib/types/components/duet-upload-aria-status/duet-upload-aria-status.d.ts +1 -8
  678. package/lib/types/components.d.ts +166 -11
  679. package/lib/types/stencil-public-runtime.d.ts +71 -15
  680. package/lib/types/utils/fixture-utils.d.ts +1 -1
  681. package/lib/types/utils/focus-utils.d.ts +1 -1
  682. package/lib/types/utils/language-utils.d.ts +4 -1
  683. package/lib/types/utils/test-utils.d.ts +2 -2
  684. package/lib/types/utils/token-utils.d.ts +1 -1
  685. package/package.json +17 -22
  686. package/lib/dist-custom-elements/p-07adaab8.js +0 -120
  687. package/lib/dist-custom-elements/p-19440466.js +0 -54
  688. package/lib/dist-custom-elements/p-7429e56d.js +0 -37
  689. package/lib/dist-custom-elements/p-a1657855.js +0 -186
  690. package/lib/dist-custom-elements/p-ebd24c35.js +0 -76
  691. package/lib/dist-custom-elements/p-f039872b.js +0 -265
  692. package/lib/duet/p-00d1faa8.system.entry.js +0 -4
  693. package/lib/duet/p-0224239f.system.entry.js +0 -4
  694. package/lib/duet/p-0a66156e.entry.js +0 -4
  695. package/lib/duet/p-0f832028.system.entry.js +0 -4
  696. package/lib/duet/p-1aa20ab7.entry.js +0 -4
  697. package/lib/duet/p-1ad4d522.entry.js +0 -4
  698. package/lib/duet/p-1bcd686c.system.entry.js +0 -4
  699. package/lib/duet/p-1d27e786.system.entry.js +0 -4
  700. package/lib/duet/p-1d3eea4d.entry.js +0 -4
  701. package/lib/duet/p-1e1399f1.system.entry.js +0 -4
  702. package/lib/duet/p-1e13b45e.entry.js +0 -4
  703. package/lib/duet/p-207a0c1c.system.entry.js +0 -4
  704. package/lib/duet/p-229df87f.system.entry.js +0 -4
  705. package/lib/duet/p-23f53cd4.entry.js +0 -4
  706. package/lib/duet/p-2487f6d3.entry.js +0 -4
  707. package/lib/duet/p-2512dbc9.system.entry.js +0 -4
  708. package/lib/duet/p-27047a6b.system.entry.js +0 -4
  709. package/lib/duet/p-28ad9ea4.system.entry.js +0 -4
  710. package/lib/duet/p-2caf0416.system.entry.js +0 -4
  711. package/lib/duet/p-2de3ab1e.entry.js +0 -4
  712. package/lib/duet/p-31ee64dd.system.entry.js +0 -4
  713. package/lib/duet/p-3328db18.system.entry.js +0 -4
  714. package/lib/duet/p-361f1e5a.system.entry.js +0 -4
  715. package/lib/duet/p-36f8f697.js +0 -4
  716. package/lib/duet/p-3c178cbd.system.entry.js +0 -4
  717. package/lib/duet/p-3cf5edbe.system.entry.js +0 -4
  718. package/lib/duet/p-3ee4e5c9.system.js +0 -5
  719. package/lib/duet/p-3f03edf8.entry.js +0 -4
  720. package/lib/duet/p-41bb6838.entry.js +0 -4
  721. package/lib/duet/p-43c49efe.entry.js +0 -4
  722. package/lib/duet/p-4c83be57.entry.js +0 -4
  723. package/lib/duet/p-4e77a3b7.system.entry.js +0 -4
  724. package/lib/duet/p-54b1d0e3.entry.js +0 -4
  725. package/lib/duet/p-55b0e3be.system.entry.js +0 -4
  726. package/lib/duet/p-564a241d.entry.js +0 -4
  727. package/lib/duet/p-58a856ae.entry.js +0 -4
  728. package/lib/duet/p-5cf6e9e8.entry.js +0 -4
  729. package/lib/duet/p-5f6d34d7.entry.js +0 -4
  730. package/lib/duet/p-60749162.system.entry.js +0 -4
  731. package/lib/duet/p-6295446a.system.entry.js +0 -4
  732. package/lib/duet/p-63d1a582.system.entry.js +0 -4
  733. package/lib/duet/p-64689daf.entry.js +0 -4
  734. package/lib/duet/p-65368604.system.entry.js +0 -4
  735. package/lib/duet/p-673781c4.system.entry.js +0 -4
  736. package/lib/duet/p-68728106.entry.js +0 -4
  737. package/lib/duet/p-6876fae1.entry.js +0 -4
  738. package/lib/duet/p-68b5494b.system.entry.js +0 -4
  739. package/lib/duet/p-6a43bf52.system.entry.js +0 -4
  740. package/lib/duet/p-6dcd0742.system.entry.js +0 -4
  741. package/lib/duet/p-6e299197.js +0 -5
  742. package/lib/duet/p-6eaa227c.system.entry.js +0 -4
  743. package/lib/duet/p-7275e002.system.entry.js +0 -4
  744. package/lib/duet/p-73dc5bf7.system.entry.js +0 -4
  745. package/lib/duet/p-7a8021a0.entry.js +0 -4
  746. package/lib/duet/p-7b6e0f85.entry.js +0 -4
  747. package/lib/duet/p-80b5a050.entry.js +0 -4
  748. package/lib/duet/p-80d19e6c.entry.js +0 -4
  749. package/lib/duet/p-85a0df90.system.entry.js +0 -4
  750. package/lib/duet/p-886d12fc.entry.js +0 -4
  751. package/lib/duet/p-8abf23da.system.entry.js +0 -4
  752. package/lib/duet/p-8b0d9081.system.entry.js +0 -4
  753. package/lib/duet/p-8b8c4430.system.entry.js +0 -4
  754. package/lib/duet/p-9753f842.system.entry.js +0 -4
  755. package/lib/duet/p-97994ff7.system.entry.js +0 -4
  756. package/lib/duet/p-97e511b5.entry.js +0 -4
  757. package/lib/duet/p-9c8786d8.entry.js +0 -4
  758. package/lib/duet/p-9faea5f0.entry.js +0 -4
  759. package/lib/duet/p-a1b78e12.entry.js +0 -4
  760. package/lib/duet/p-a8f63ab3.entry.js +0 -4
  761. package/lib/duet/p-ab1058cc.entry.js +0 -4
  762. package/lib/duet/p-abb2234e.system.entry.js +0 -4
  763. package/lib/duet/p-ac760895.system.entry.js +0 -4
  764. package/lib/duet/p-b00a028b.entry.js +0 -4
  765. package/lib/duet/p-b0d707dc.system.entry.js +0 -4
  766. package/lib/duet/p-b1bf336d.entry.js +0 -4
  767. package/lib/duet/p-b5eb7f56.system.entry.js +0 -4
  768. package/lib/duet/p-b7d31c4f.system.entry.js +0 -4
  769. package/lib/duet/p-b7d5c170.entry.js +0 -4
  770. package/lib/duet/p-b95cf5f3.entry.js +0 -4
  771. package/lib/duet/p-bc3b08f1.system.entry.js +0 -4
  772. package/lib/duet/p-be2f66e7.entry.js +0 -4
  773. package/lib/duet/p-c20350ab.system.entry.js +0 -4
  774. package/lib/duet/p-c282e7ea.system.entry.js +0 -4
  775. package/lib/duet/p-c29992ea.system.entry.js +0 -4
  776. package/lib/duet/p-ce147403.system.entry.js +0 -4
  777. package/lib/duet/p-ce9d1284.system.entry.js +0 -4
  778. package/lib/duet/p-cf07b5b8.system.entry.js +0 -4
  779. package/lib/duet/p-cf320f27.entry.js +0 -4
  780. package/lib/duet/p-d3f5238b.system.js +0 -4
  781. package/lib/duet/p-e0508afa.system.entry.js +0 -4
  782. package/lib/duet/p-e11e19e6.system.entry.js +0 -4
  783. package/lib/duet/p-e2cd1c98.js +0 -15
  784. package/lib/duet/p-e2fd4fbe.system.entry.js +0 -4
  785. package/lib/duet/p-e44d8e24.system.entry.js +0 -4
  786. package/lib/duet/p-e4c09798.entry.js +0 -4
  787. package/lib/duet/p-e50172c5.system.entry.js +0 -4
  788. package/lib/duet/p-e57031c1.entry.js +0 -4
  789. package/lib/duet/p-ea6472ee.system.entry.js +0 -4
  790. package/lib/duet/p-ede854e1.js +0 -4
  791. package/lib/duet/p-f18ade76.system.entry.js +0 -4
  792. package/lib/duet/p-f69b64c9.system.js +0 -4
  793. package/lib/duet/p-f707d7e2.system.entry.js +0 -4
  794. package/lib/duet/p-faae74b5.system.entry.js +0 -4
  795. package/lib/esm-es5/focus-utils-fd1ff36a.js +0 -4
  796. package/lib/esm-es5/index-4ce7972b.js +0 -5
  797. /package/lib/duet/{p-73900354.system.js → p-6cf44bfa.system.js} +0 -0
  798. /package/lib/duet/{p-07970d29.js → p-9c159fd4.js} +0 -0
  799. /package/lib/duet/{p-da0d4ee3.system.js → p-9d9204af.system.js} +0 -0
  800. /package/lib/esm-es5/{dom-4d9c03f4.js → dom-ae12a113.js} +0 -0
  801. /package/lib/esm-es5/{shadow-css-a011f1fe.js → shadow-css-66bc7949.js} +0 -0
@@ -2,7 +2,7 @@
2
2
  * Built with Duet Design System
3
3
  */
4
4
  const NAMESPACE = 'duet';
5
- const Env = /* duet */ {"cdnURILocal":"http://0.0.0.0:3334","cdnURIProd":"https://cdn.duetds.com/api","duetIconVersion":"3.0.34"};
5
+ const Env = /* duet */ {"cdnURILocal":"http://0.0.0.0:3334","cdnURIProd":"https://cdn.duetds.com/api","duetIconVersion":"3.0.36"};
6
6
 
7
7
  /**
8
8
  * Virtual DOM patching algorithm based on Snabbdom by
@@ -49,11 +49,30 @@ const EMPTY_OBJ = {};
49
49
  const SVG_NS = 'http://www.w3.org/2000/svg';
50
50
  const HTML_NS = 'http://www.w3.org/1999/xhtml';
51
51
  const isDef = (v) => v != null;
52
+ /**
53
+ * Check whether a value is a 'complex type', defined here as an object or a
54
+ * function.
55
+ *
56
+ * @param o the value to check
57
+ * @returns whether it's a complex type or not
58
+ */
52
59
  const isComplexType = (o) => {
53
60
  // https://jsperf.com/typeof-fn-object/5
54
61
  o = typeof o;
55
62
  return o === 'object' || o === 'function';
56
63
  };
64
+ /**
65
+ * Helper method for querying a `meta` tag that contains a nonce value
66
+ * out of a DOM's head.
67
+ *
68
+ * @param doc The DOM containing the `head` to query against
69
+ * @returns The content of the meta tag representing the nonce value, or `undefined` if no tag
70
+ * exists or the tag has no content.
71
+ */
72
+ function queryNonceMetaTagContent(doc) {
73
+ var _a, _b, _c;
74
+ return (_c = (_b = (_a = doc.head) === null || _a === void 0 ? void 0 : _a.querySelector('meta[name="csp-nonce"]')) === null || _b === void 0 ? void 0 : _b.getAttribute('content')) !== null && _c !== void 0 ? _c : undefined;
75
+ }
57
76
  /**
58
77
  * Production h() function based on Preact by
59
78
  * Jason Miller (@developit)
@@ -62,7 +81,6 @@ const isComplexType = (o) => {
62
81
  *
63
82
  * Modified for Stencil's compiler and vdom
64
83
  */
65
- // const stack: any[] = [];
66
84
  // export function h(nodeName: string | d.FunctionalComponent, vnodeData: d.PropsType, child?: d.ChildType): d.VNode;
67
85
  // export function h(nodeName: string | d.FunctionalComponent, vnodeData: d.PropsType, ...children: d.ChildType[]): d.VNode;
68
86
  const h = (nodeName, vnodeData, ...children) => {
@@ -132,6 +150,14 @@ const h = (nodeName, vnodeData, ...children) => {
132
150
  }
133
151
  return vnode;
134
152
  };
153
+ /**
154
+ * A utility function for creating a virtual DOM node from a tag and some
155
+ * possible text content.
156
+ *
157
+ * @param tag the tag for this element
158
+ * @param text possible text content for the node
159
+ * @returns a newly-minted virtual DOM node
160
+ */
135
161
  const newVNode = (tag, text) => {
136
162
  const vnode = {
137
163
  $flags$: 0,
@@ -152,11 +178,31 @@ const newVNode = (tag, text) => {
152
178
  return vnode;
153
179
  };
154
180
  const Host = {};
181
+ /**
182
+ * Check whether a given node is a Host node or not
183
+ *
184
+ * @param node the virtual DOM node to check
185
+ * @returns whether it's a Host node or not
186
+ */
155
187
  const isHost = (node) => node && node.$tag$ === Host;
188
+ /**
189
+ * Implementation of {@link d.FunctionalUtilities} for Stencil's VDom.
190
+ *
191
+ * Note that these functions convert from {@link d.VNode} to
192
+ * {@link d.ChildNode} to give functional component developers a friendly
193
+ * interface.
194
+ */
156
195
  const vdomFnUtils = {
157
196
  forEach: (children, cb) => children.map(convertToPublic).forEach(cb),
158
197
  map: (children, cb) => children.map(convertToPublic).map(cb).map(convertToPrivate),
159
198
  };
199
+ /**
200
+ * Convert a {@link d.VNode} to a {@link d.ChildNode} in order to present a
201
+ * friendlier public interface (hence, 'convertToPublic').
202
+ *
203
+ * @param node the virtual DOM node to convert
204
+ * @returns a converted child node
205
+ */
160
206
  const convertToPublic = (node) => ({
161
207
  vattrs: node.$attrs$,
162
208
  vchildren: node.$children$,
@@ -165,6 +211,15 @@ const convertToPublic = (node) => ({
165
211
  vtag: node.$tag$,
166
212
  vtext: node.$text$,
167
213
  });
214
+ /**
215
+ * Convert a {@link d.ChildNode} back to an equivalent {@link d.VNode} in
216
+ * order to use the resulting object in the virtual DOM. The initial object was
217
+ * likely created as part of presenting a public API, so converting it back
218
+ * involved making it 'private' again (hence, `convertToPrivate`).
219
+ *
220
+ * @param node the child node to convert
221
+ * @returns a converted virtual DOM node
222
+ */
168
223
  const convertToPrivate = (node) => {
169
224
  if (typeof node.vtag === 'function') {
170
225
  const vnodeData = Object.assign({}, node.vattrs);
@@ -274,6 +329,7 @@ const registerStyle = (scopeId, cssText, allowCS) => {
274
329
  styles.set(scopeId, style);
275
330
  };
276
331
  const addStyle = (styleContainerNode, cmpMeta, mode, hostElm) => {
332
+ var _a;
277
333
  let scopeId = getScopeId(cmpMeta);
278
334
  const style = styles.get(scopeId);
279
335
  // if an element is NOT connected then getRootNode() will return the wrong root node
@@ -289,10 +345,16 @@ const addStyle = (styleContainerNode, cmpMeta, mode, hostElm) => {
289
345
  }
290
346
  if (!appliedStyles.has(scopeId)) {
291
347
  {
348
+ // TODO(STENCIL-659): Remove code implementing the CSS variable shim
292
349
  {
293
350
  styleElm = doc.createElement('style');
294
351
  styleElm.innerHTML = style;
295
352
  }
353
+ // Apply CSP nonce to the style tag if it exists
354
+ const nonce = (_a = plt.$nonce$) !== null && _a !== void 0 ? _a : queryNonceMetaTagContent(doc);
355
+ if (nonce != null) {
356
+ styleElm.setAttribute('nonce', nonce);
357
+ }
296
358
  styleContainerNode.insertBefore(styleElm, styleContainerNode.querySelector('link'));
297
359
  }
298
360
  if (appliedStyles) {
@@ -312,6 +374,7 @@ const attachStyles = (hostRef) => {
312
374
  const flags = cmpMeta.$flags$;
313
375
  const endAttachStyles = createTime('attachStyles', cmpMeta.$tagName$);
314
376
  const scopeId = addStyle(supportsShadow && elm.shadowRoot ? elm.shadowRoot : elm.getRootNode(), cmpMeta);
377
+ // TODO(STENCIL-662): Remove code related to deprecated shadowDomShim field
315
378
  if (flags & 10 /* CMP_FLAGS.needsScopedEncapsulation */) {
316
379
  // only required when we're NOT using native shadow dom (slot)
317
380
  // or this browser doesn't support native shadow dom
@@ -629,6 +692,21 @@ const putBackInOriginalLocation = (parentElm, recursive) => {
629
692
  }
630
693
  plt.$flags$ &= ~1 /* PLATFORM_FLAGS.isTmpDisconnected */;
631
694
  };
695
+ /**
696
+ * Create DOM nodes corresponding to a list of {@link d.Vnode} objects and
697
+ * add them to the DOM in the appropriate place.
698
+ *
699
+ * @param parentElm the DOM node which should be used as a parent for the new
700
+ * DOM nodes
701
+ * @param before a child of the `parentElm` which the new children should be
702
+ * inserted before (optional)
703
+ * @param parentVNode the parent virtual DOM node
704
+ * @param vnodes the new child virtual DOM nodes to produce DOM nodes for
705
+ * @param startIdx the index in the child virtual DOM nodes at which to start
706
+ * creating DOM nodes (inclusive)
707
+ * @param endIdx the index in the child virtual DOM nodes at which to stop
708
+ * creating DOM nodes (inclusive)
709
+ */
632
710
  const addVnodes = (parentElm, before, parentVNode, vnodes, startIdx, endIdx) => {
633
711
  let containerElm = ((parentElm['s-cr'] && parentElm['s-cr'].parentNode) || parentElm);
634
712
  let childNode;
@@ -645,6 +723,19 @@ const addVnodes = (parentElm, before, parentVNode, vnodes, startIdx, endIdx) =>
645
723
  }
646
724
  }
647
725
  };
726
+ /**
727
+ * Remove the DOM elements corresponding to a list of {@link d.VNode} objects.
728
+ * This can be used to, for instance, clean up after a list of children which
729
+ * should no longer be shown.
730
+ *
731
+ * This function also handles some of Stencil's slot relocation logic.
732
+ *
733
+ * @param vnodes a list of virtual DOM nodes to remove
734
+ * @param startIdx the index at which to start removing nodes (inclusive)
735
+ * @param endIdx the index at which to stop removing nodes (inclusive)
736
+ * @param vnode a VNode
737
+ * @param elm an element
738
+ */
648
739
  const removeVnodes = (vnodes, startIdx, endIdx, vnode, elm) => {
649
740
  for (; startIdx <= endIdx; ++startIdx) {
650
741
  if ((vnode = vnodes[startIdx])) {
@@ -923,7 +1014,8 @@ const updateChildren = (parentElm, oldCh, newVNode, newCh) => {
923
1014
  *
924
1015
  * So, in other words, if `key` attrs are not set on VNodes which may be
925
1016
  * changing order within a `children` array or something along those lines then
926
- * we could obtain a false positive and then have to do needless re-rendering.
1017
+ * we could obtain a false negative and then have to do needless re-rendering
1018
+ * (i.e. we'd say two VNodes aren't equal when in fact they should be).
927
1019
  *
928
1020
  * @param leftVNode the first VNode to check
929
1021
  * @param rightVNode the second VNode to check
@@ -1151,6 +1243,18 @@ const callNodeRefs = (vNode) => {
1151
1243
  vNode.$children$ && vNode.$children$.map(callNodeRefs);
1152
1244
  }
1153
1245
  };
1246
+ /**
1247
+ * The main entry point for Stencil's virtual DOM-based rendering engine
1248
+ *
1249
+ * Given a {@link d.HostRef} container and some virtual DOM nodes, this
1250
+ * function will handle creating a virtual DOM tree with a single root, patching
1251
+ * the current virtual DOM tree onto an old one (if any), dealing with slot
1252
+ * relocation, and reflecting attributes.
1253
+ *
1254
+ * @param hostRef data needed to root and render the virtual DOM tree, such as
1255
+ * the DOM node into which it should be rendered.
1256
+ * @param renderFnResults the virtual DOM nodes to be rendered
1257
+ */
1154
1258
  const renderVdom = (hostRef, renderFnResults) => {
1155
1259
  const hostElm = hostRef.$hostElement$;
1156
1260
  const cmpMeta = hostRef.$cmpMeta$;
@@ -1588,7 +1692,7 @@ const initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId, Cstr) =>
1588
1692
  if (!styles.has(scopeId)) {
1589
1693
  const endRegisterStyles = createTime('registerStyles', cmpMeta.$tagName$);
1590
1694
  if (cmpMeta.$flags$ & 8 /* CMP_FLAGS.needsShadowDomShim */) {
1591
- style = await import('./p-e2cd1c98.js').then((m) => m.scopeCss(style, scopeId, false));
1695
+ style = await import('./p-6ee53ac3.js').then((m) => m.scopeCss(style, scopeId, false));
1592
1696
  }
1593
1697
  registerStyle(scopeId, style, !!(cmpMeta.$flags$ & 1 /* CMP_FLAGS.shadowDomEncapsulation */));
1594
1698
  endRegisterStyles();
@@ -1624,7 +1728,8 @@ const connectedCallback = (elm) => {
1624
1728
  // if the slot polyfill is required we'll need to put some nodes
1625
1729
  // in here to act as original content anchors as we move nodes around
1626
1730
  // host element has been connected to the DOM
1627
- if ((cmpMeta.$flags$ & (4 /* CMP_FLAGS.hasSlotRelocation */ | 8 /* CMP_FLAGS.needsShadowDomShim */))) {
1731
+ if ((// TODO(STENCIL-662): Remove code related to deprecated shadowDomShim field
1732
+ cmpMeta.$flags$ & (4 /* CMP_FLAGS.hasSlotRelocation */ | 8 /* CMP_FLAGS.needsShadowDomShim */))) {
1628
1733
  setContentReference(elm);
1629
1734
  }
1630
1735
  }
@@ -1707,6 +1812,7 @@ const proxyCustomElement = (Cstr, compactMeta) => {
1707
1812
  cmpMeta.$attrsToReflect$ = [];
1708
1813
  }
1709
1814
  if (!supportsShadow && cmpMeta.$flags$ & 1 /* CMP_FLAGS.shadowDomEncapsulation */) {
1815
+ // TODO(STENCIL-662): Remove code related to deprecated shadowDomShim field
1710
1816
  cmpMeta.$flags$ |= 8 /* CMP_FLAGS.needsShadowDomShim */;
1711
1817
  }
1712
1818
  const originalConnectedCallback = Cstr.prototype.connectedCallback;
@@ -1777,6 +1883,13 @@ const getHostListenerTarget = (elm, flags) => {
1777
1883
  };
1778
1884
  // prettier-ignore
1779
1885
  const hostListenerOpts = (flags) => (flags & 2 /* LISTENER_FLAGS.Capture */) !== 0;
1886
+ /**
1887
+ * Assigns the given value to the nonce property on the runtime platform object.
1888
+ * During runtime, this value is used to set the nonce attribute on all dynamically created script and style tags.
1889
+ * @param nonce The value to be assigned to the platform nonce property.
1890
+ * @returns void
1891
+ */
1892
+ const setNonce = (nonce) => (plt.$nonce$ = nonce);
1780
1893
  const setPlatformOptions = (opts) => Object.assign(plt, opts);
1781
1894
  const hostRefs = /*@__PURE__*/ new WeakMap();
1782
1895
  const getHostRef = (ref) => hostRefs.get(ref);
@@ -1811,7 +1924,9 @@ const plt = {
1811
1924
  rel: (el, eventName, listener, opts) => el.removeEventListener(eventName, listener, opts),
1812
1925
  ce: (eventName, opts) => new CustomEvent(eventName, opts),
1813
1926
  };
1814
- const supportsShadow = /*@__PURE__*/ (() => (doc.head.attachShadow + '').indexOf('[native') > -1)()
1927
+ const supportsShadow =
1928
+ // TODO(STENCIL-662): Remove code related to deprecated shadowDomShim field
1929
+ /*@__PURE__*/ (() => (doc.head.attachShadow + '').indexOf('[native') > -1)()
1815
1930
  ;
1816
1931
  const promiseResolve = (v) => Promise.resolve(v);
1817
1932
  const supportsConstructableStylesheets = /*@__PURE__*/ (() => {
@@ -1866,4 +1981,4 @@ const flush = () => {
1866
1981
  const nextTick = /*@__PURE__*/ (cb) => promiseResolve().then(cb);
1867
1982
  const writeTask = /*@__PURE__*/ queueTask(queueDomWrites, true);
1868
1983
 
1869
- export { Build as B, Env as E, Fragment as F, H, setPlatformOptions as a, Host as b, createEvent as c, h, proxyCustomElement as p, setAssetPath as s };
1984
+ export { Build as B, Env as E, Fragment as F, H, setNonce as a, setPlatformOptions as b, createEvent as c, Host as d, h, proxyCustomElement as p, setAssetPath as s };
@@ -1,10 +1,10 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import { p as proxyCustomElement, H, h, b as Host } from './p-e565b192.js';
4
+ import { p as proxyCustomElement, H, h, d as Host } from './p-67e14cd3.js';
5
5
  import { i as inheritGlobalTheme } from './p-4ebf1618.js';
6
6
 
7
- const duetLabelCss = "*.sc-duet-label,*.sc-duet-label::after,*.sc-duet-label::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.sc-duet-label-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-bottom:12px !important;position:relative;z-index:100;display:inline-flex;width:auto;margin-top:8px !important;line-height:1.25;cursor:default}.duet-p-0.sc-duet-label-h{padding:0 !important}.duet-m-0.sc-duet-label-h{margin:0 !important}.duet-m-0.sc-duet-label-h{margin-bottom:0 !important}.duet-small-margin.sc-duet-label-h{margin-top:8px !important;margin-bottom:4px !important}.duet-has-tooltip.sc-duet-label-h{padding-right:48px}@media (min-width: 48em){.duet-has-tooltip.sc-duet-label-h{padding-right:0}}label.sc-duet-label{margin:0;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:600 !important;line-height:1.25;color:#00294d;text-align:left;word-break:break-word}label.sc-duet-label span.sc-duet-label{font-size:1rem;font-weight:600 !important;word-break:break-word}.duet-label-small.sc-duet-label-h label.sc-duet-label{font-size:0.875rem}.duet-label-small.sc-duet-label-h label.sc-duet-label span.sc-duet-label{font-size:0.875rem}.duet-theme-turva.sc-duet-label-h label.sc-duet-label{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}";
7
+ const duetLabelCss = "*.sc-duet-label,*.sc-duet-label::after,*.sc-duet-label::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.sc-duet-label-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-bottom:12px !important;position:relative;z-index:100;display:inline-flex;width:auto;margin-top:8px !important;line-height:1.25;cursor:default}.duet-p-0.sc-duet-label-h{padding:0 !important}.duet-m-0.sc-duet-label-h{margin:0 !important}.duet-m-0.sc-duet-label-h{margin-bottom:0 !important}.duet-small-margin.sc-duet-label-h{margin-top:8px !important;margin-bottom:4px !important}.duet-has-tooltip.sc-duet-label-h{padding-right:48px}@media (min-width: 48em){.duet-has-tooltip.sc-duet-label-h{padding-right:0}}label.sc-duet-label{margin:0;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:600 !important;line-height:1.25;color:rgb(0, 41, 77);text-align:left;word-break:break-word}label.sc-duet-label span.sc-duet-label{font-size:1rem;font-weight:600 !important;word-break:break-word}.duet-label-small.sc-duet-label-h label.sc-duet-label{font-size:0.875rem}.duet-label-small.sc-duet-label-h label.sc-duet-label span.sc-duet-label{font-size:0.875rem}.duet-theme-turva.sc-duet-label-h label.sc-duet-label{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58)}";
8
8
 
9
9
  const DuetLabel = /*@__PURE__*/ proxyCustomElement(class extends H {
10
10
  constructor() {
@@ -0,0 +1,54 @@
1
+ /*!
2
+ * Built with Duet Design System
3
+ */
4
+ import { p as proxyCustomElement, H, h, d as Host } from './p-67e14cd3.js';
5
+ import { i as inheritGlobalTheme } from './p-4ebf1618.js';
6
+
7
+ const duetCheckmarkCss = ".duet-checkmark-container{position:relative;width:20px;height:20px;margin-left:auto;border:1px solid rgb(144, 149, 153);border-radius:4px;transition:border 300ms ease}.duet-checkmark-container.center{margin-right:auto}.duet-theme-turva .duet-checkmark-container{border-color:rgb(116, 116, 117)}.checked .duet-checkmark-container{background:rgb(0, 119, 179);border-color:rgb(0, 119, 179);transition:none}.duet-theme-turva .checked .duet-checkmark-container{background:rgb(23, 28, 58);border-color:rgb(23, 28, 58) !important}.duet-checkmark-container.duet-checkmark-radio{border-radius:50%}[disabled]+label .duet-checkmark-container{border-color:rgb(207, 210, 212) !important}.duet-theme-turva [disabled]+label .duet-checkmark-container{border-color:rgb(207, 207, 209) !important}.checked [disabled]+label .duet-checkmark-container{background:rgb(207, 210, 212) !important}.duet-theme-turva .checked [disabled]+label .duet-checkmark-container{background:rgb(207, 207, 209) !important}.duet-checkmark{position:absolute;top:10px;left:3px;width:5.3333333333px;height:11.8518518519px;border-top:2px solid rgb(255, 255, 255);border-right:2px solid rgb(255, 255, 255);opacity:1;transform:scaleX(-1) rotate(135deg) translateZ(0);transform-origin:left top;animation-name:duet-checkmark;animation-duration:600ms;animation-timing-function:ease-out;animation-fill-mode:forwards}@keyframes duet-checkmark{0%{width:0;height:0;opacity:1}20%{width:5.3333333333px;height:0;opacity:1}40%,100%{width:5.3333333333px;height:11.8518518519px;opacity:1}}";
8
+
9
+ const DuetCheckmark = /*@__PURE__*/ proxyCustomElement(class extends H {
10
+ constructor() {
11
+ super();
12
+ this.__registerHost();
13
+ this.theme = "";
14
+ this.checked = false;
15
+ this.presentationOnly = false;
16
+ this.center = false;
17
+ this.type = "checkbox";
18
+ }
19
+ /**
20
+ * Component lifecycle events.
21
+ */
22
+ componentWillLoad() {
23
+ inheritGlobalTheme(this);
24
+ }
25
+ render() {
26
+ return (h(Host, { class: { "duet-theme-turva": this.theme === "turva" } }, h("div", { role: this.presentationOnly ? "presentation" : null, class: { checked: this.checked } }, h("div", { class: {
27
+ "duet-checkmark-container": true,
28
+ center: this.center,
29
+ "duet-checkmark-radio": this.type === "radio",
30
+ } }, this.checked && h("div", { class: "duet-checkmark" })))));
31
+ }
32
+ static get style() { return duetCheckmarkCss; }
33
+ }, [0, "duet-checkmark", {
34
+ "theme": [1025],
35
+ "checked": [1028],
36
+ "presentationOnly": [4, "presentation-only"],
37
+ "center": [4],
38
+ "type": [513]
39
+ }]);
40
+ function defineCustomElement() {
41
+ if (typeof customElements === "undefined") {
42
+ return;
43
+ }
44
+ const components = ["duet-checkmark"];
45
+ components.forEach(tagName => { switch (tagName) {
46
+ case "duet-checkmark":
47
+ if (!customElements.get(tagName)) {
48
+ customElements.define(tagName, DuetCheckmark);
49
+ }
50
+ break;
51
+ } });
52
+ }
53
+
54
+ export { DuetCheckmark as D, defineCustomElement as d };
@@ -88,5 +88,39 @@ const getLocaleString = (langObject, languageOverride) => {
88
88
  return obj[getLanguage()];
89
89
  }
90
90
  };
91
+ /**
92
+ * Language change observer
93
+ *
94
+ * Change component's language property or state when the html lang attribute changes.
95
+ * For now the <html> element must have the data-duet-lang-observe attribute set to a truthy value for the
96
+ * language change to happen. At a later point this will be done without requiring the data attribute.
97
+ *
98
+ * Usage:
99
+ * Call connectLanguageChangeObserver(this) in component's connectedCallback and
100
+ * disconnectLanguageChangeObserver(this) in disconnectedCallback.
101
+ */
102
+ const languageChangeSubscribers = new Set();
103
+ const languagaChangeObserverCallback = () => {
104
+ if (document.documentElement.dataset.duetLangObserve) {
105
+ languageChangeSubscribers.forEach((component) => {
106
+ if (component.language) {
107
+ component.language = getLanguage();
108
+ }
109
+ else {
110
+ console.log("Language change observer: component does not have a language property", component);
111
+ }
112
+ });
113
+ }
114
+ };
115
+ {
116
+ const languageChangeObserver = new MutationObserver(languagaChangeObserverCallback);
117
+ languageChangeObserver.observe(document.documentElement, { attributeFilter: ["lang"] });
118
+ }
119
+ const connectLanguageChangeObserver = (component) => {
120
+ languageChangeSubscribers.add(component);
121
+ };
122
+ const disconnectLanguageChangeObserver = (component) => {
123
+ languageChangeSubscribers.delete(component);
124
+ };
91
125
 
92
- export { getLanguage as a, getLocale as b, getLocaleString as g, sanitizeString as s };
126
+ export { getLanguage as a, getLocale as b, connectLanguageChangeObserver as c, disconnectLanguageChangeObserver as d, getLocaleString as g, sanitizeString as s };
@@ -2,7 +2,7 @@
2
2
  * Built with Duet Design System
3
3
  */
4
4
  /*
5
- Stencil Client Platform v2.19.3 | MIT Licensed | https://stenciljs.com
5
+ Stencil Client Platform v3.1.0 | MIT Licensed | https://stenciljs.com
6
6
  */
7
7
  /**
8
8
  * @license
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import { p as proxyCustomElement, H, h, b as Host } from './p-e565b192.js';
4
+ import { p as proxyCustomElement, H, h, d as Host } from './p-67e14cd3.js';
5
5
 
6
6
  const duetVisuallyHiddenCss = ":host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;position:absolute !important;top:0;width:1px !important;height:1px !important;padding:0 !important;overflow:hidden !important;clip:rect(1px, 1px, 1px, 1px) !important;border:0 !important}";
7
7
 
@@ -1,15 +1,15 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import { p as proxyCustomElement, H, h, F as Fragment, b as Host } from './p-e565b192.js';
4
+ import { p as proxyCustomElement, H, h, F as Fragment, d as Host } from './p-67e14cd3.js';
5
5
  import { a as actionNewWindowSmall } from './p-f11208c3.js';
6
6
  import { D as DuetStringsExternalDefaults } from './p-76f00bd5.js';
7
7
  import { i as inheritGlobalTheme } from './p-4ebf1618.js';
8
- import { a as getLanguage, g as getLocaleString } from './p-ede854e1.js';
9
- import { d as defineCustomElement$2 } from './p-a1657855.js';
10
- import { d as defineCustomElement$1 } from './p-85a51040.js';
8
+ import { a as getLanguage, g as getLocaleString } from './p-6c05e879.js';
9
+ import { d as defineCustomElement$2 } from './p-c6137eb6.js';
10
+ import { d as defineCustomElement$1 } from './p-6fe0175a.js';
11
11
 
12
- const duetLinkCss = "*,*::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;display:inline}.duet-link{display:inline;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:400;color:#0077b3;text-decoration:underline;border-radius:4px;transition:300ms ease}.duet-link:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}.duet-theme-turva .duet-link:focus,.duet-link:focus.duet-theme-turva{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-link.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\";color:#c60c30}.duet-link:hover{color:#004d80;text-decoration:none}.duet-link:hover.duet-theme-turva{color:#940925}.duet-link:active{opacity:0.75;transition:none}.duet-link-external{margin-left:4px}.duet-tab-to-link{padding:15px 28px 16px !important;position:absolute;top:-100%;left:-100%;z-index:200;width:1px;min-width:190px;height:1px;overflow:hidden;font-weight:600;color:#0077b3;text-align:center;text-decoration:none;background:white;border-radius:4px;opacity:0;transition:none}.duet-tab-to-link.duet-theme-turva{min-width:120px;color:#171c3a}@media (min-width: 106.25em){.duet-tab-to-link{margin-left:20px}}.duet-tab-to-link:focus{top:12px;left:20px;width:auto;height:auto;outline:0;opacity:1}";
12
+ const duetLinkCss = "*,*::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;display:inline}.duet-link{display:inline;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:400;color:rgb(0, 119, 179);text-decoration:underline;border-radius:4px;transition:300ms ease}.duet-link:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px rgb(0, 119, 179)}.duet-theme-turva .duet-link:focus,.duet-link:focus.duet-theme-turva{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px rgb(23, 28, 58)}.duet-link.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\";color:rgb(198, 12, 48)}.duet-link:hover{color:rgb(0, 77, 128);text-decoration:none}.duet-link:hover.duet-theme-turva{color:rgb(148, 9, 37)}.duet-link:active{opacity:0.75;transition:none}.duet-link-external{position:absolute;width:20px;height:20px;margin-left:-15px}.duet-tab-to-link{padding:15px 28px 16px !important;position:absolute;top:-100%;left:-100%;z-index:200;width:1px;min-width:190px;height:1px;overflow:hidden;font-weight:600;color:rgb(0, 119, 179);text-align:center;text-decoration:none;background:rgb(255, 255, 255);border-radius:4px;opacity:0;transition:none}.duet-tab-to-link.duet-theme-turva{min-width:120px;color:rgb(23, 28, 58)}@media (min-width: 106.25em){.duet-tab-to-link{margin-left:20px}}.duet-tab-to-link:focus{top:12px;left:20px;width:auto;height:auto;outline:0;opacity:1}";
13
13
 
14
14
  const DuetLink = /*@__PURE__*/ proxyCustomElement(class extends H {
15
15
  constructor() {
@@ -44,12 +44,14 @@ const DuetLink = /*@__PURE__*/ proxyCustomElement(class extends H {
44
44
  * Always the last one in the class.
45
45
  */
46
46
  render() {
47
+ // Notice that the external icon needs to be places right after the last word of the link.
48
+ // This is why we use &nbps; to keep everything on the same line.
47
49
  return (h(Host, null, h("a", { href: this.url, class: {
48
50
  "duet-link": true,
49
51
  "duet-link-is-external": this.external,
50
52
  "duet-tab-to-link": this.tabToLink,
51
53
  "duet-theme-turva": this.theme === "turva",
52
- }, target: this.external ? "_blank" : "_self", "aria-label": this.accessibleLabel, id: this.identifier, ref: el => (this.nativeLink = el), part: "duet-link", rel: this.external ? "noopener" : undefined }, h("slot", null), this.external && (h(Fragment, null, h("duet-visually-hidden", null, this.accessibleLabelExternal), h("span", { class: "duet-link-external" }, h("duet-icon", { icon: actionNewWindowSmall.svg, size: "xx-small", margin: "none", color: "currentColor" })))))));
54
+ }, target: this.external ? "_blank" : "_self", "aria-label": this.accessibleLabel, id: this.identifier, ref: el => (this.nativeLink = el), part: "duet-link", rel: this.external ? "noopener" : undefined }, h("slot", null), this.external && (h(Fragment, null, "\u00A0\u00A0", h("duet-visually-hidden", null, this.accessibleLabelExternal), "\u00A0", h("span", { class: "duet-link-external" }, "\u00A0", h("duet-icon", { icon: actionNewWindowSmall.svg, size: "xx-small", margin: "none", color: "currentColor" })))))));
53
55
  }
54
56
  static get delegatesFocus() { return true; }
55
57
  static get style() { return duetLinkCss; }
@@ -1,11 +1,11 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import { p as proxyCustomElement, H, h, b as Host } from './p-e565b192.js';
4
+ import { p as proxyCustomElement, H, h, d as Host } from './p-67e14cd3.js';
5
5
  import { i as inheritGlobalTheme } from './p-4ebf1618.js';
6
- import { g as getColorByName } from './p-535ce3ec.js';
6
+ import { g as getColorByName } from './p-9ed347f9.js';
7
7
 
8
- const duetSpinnerCss = ":host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;position:absolute;top:50%;left:50%;z-index:800;max-width:100%}:host(.duet-theme-default) .duet-spinner{color:#0077b3 !important}:host(.duet-theme-turva) .duet-spinner{color:#c60c30 !important}:host(.duet-custom-color){color:inherit}*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.duet-spinner{-webkit-user-select:none;user-select:none;position:absolute;top:50%;left:50%;z-index:800;width:24px;height:24px;color:#0077b3;border:2px solid transparent;border-left:2px solid currentColor;border-radius:50%;transform:translateZ(0) translateX(-50%) translateY(-50%);transform-origin:0% 0%;animation:duetRotate 0.6s linear infinite}.duet-spinner::after{position:absolute;top:50%;left:50%;z-index:200;box-sizing:content-box;width:100%;height:100%;overflow:hidden;content:\"\";border:2px solid currentColor;border-radius:50%;opacity:0.3;transform:translateZ(0) translateX(-50%) translateY(-50%);transform-origin:0% 0%}.duet-spinner.medium{width:36px;height:36px;border-width:4px}.duet-spinner.medium::after{border-width:4px}.duet-spinner.large{width:72px;height:72px;border-width:8px}.duet-spinner.large::after{border-width:8px}@keyframes duetRotate{0%{transform:translateZ(0) rotate(0deg) translateX(-50%) translateY(-50%)}100%{transform:translateZ(0) rotate(360deg) translateX(-50%) translateY(-50%)}}";
8
+ const duetSpinnerCss = ":host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;position:absolute;top:50%;left:50%;z-index:800;max-width:100%}:host(.duet-theme-default) .duet-spinner{color:rgb(0, 119, 179) !important}:host(.duet-theme-turva) .duet-spinner{color:rgb(198, 12, 48) !important}:host(.duet-custom-color){color:inherit}*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.duet-spinner{-webkit-user-select:none;user-select:none;position:absolute;top:50%;left:50%;z-index:800;width:24px;height:24px;color:rgb(0, 119, 179);border:2px solid transparent;border-left:2px solid currentColor;border-radius:50%;transform:translateZ(0) translateX(-50%) translateY(-50%);transform-origin:0% 0%;animation:duetRotate 0.6s linear infinite}.duet-spinner::after{position:absolute;top:50%;left:50%;z-index:200;box-sizing:content-box;width:100%;height:100%;overflow:hidden;content:\"\";border:2px solid currentColor;border-radius:50%;opacity:0.3;transform:translateZ(0) translateX(-50%) translateY(-50%);transform-origin:0% 0%}.duet-spinner.medium{width:36px;height:36px;border-width:4px}.duet-spinner.medium::after{border-width:4px}.duet-spinner.large{width:72px;height:72px;border-width:8px}.duet-spinner.large::after{border-width:8px}@keyframes duetRotate{0%{transform:translateZ(0) rotate(0deg) translateX(-50%) translateY(-50%)}100%{transform:translateZ(0) rotate(360deg) translateX(-50%) translateY(-50%)}}";
9
9
 
10
10
  const DuetSpinner = /*@__PURE__*/ proxyCustomElement(class extends H {
11
11
  constructor() {
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import { m as mediaQueryXxSmall, i as mediaQueryXSmall, j as mediaQuerySmall, k as mediaQueryMedium, l as mediaQueryLarge, n as mediaQueryXLarge, o as mediaQueryXxLarge, p as mediaQueryXxxLarge, q as mediaQueryXxxSmall, t as tokens } from './p-55325c49.js';
4
+ import { m as mediaQueryXxSmall, a as mediaQueryXSmall, b as mediaQuerySmall, c as mediaQueryMedium, d as mediaQueryLarge, e as mediaQueryXLarge, f as mediaQueryXxLarge, g as mediaQueryXxxLarge, h as mediaQueryXxxSmall, t as tokens } from './p-33e00967.js';
5
5
 
6
6
  const allowedThemes = ["turva"];
7
7
  function isDashCase(str) {
@@ -1,11 +1,11 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import { p as proxyCustomElement, H, c as createEvent, h, b as Host } from './p-e565b192.js';
4
+ import { p as proxyCustomElement, H, c as createEvent, h, d as Host } from './p-67e14cd3.js';
5
5
  import { i as inheritGlobalTheme } from './p-4ebf1618.js';
6
6
  import { c as createID } from './p-c1325e35.js';
7
7
 
8
- const duetCheckboxCss = "*.sc-duet-checkbox,*.sc-duet-checkbox::after,*.sc-duet-checkbox::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.sc-duet-checkbox-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-right:8px !important;margin-bottom:12px !important;display:inline-flex;width:100%;vertical-align:bottom;-webkit-tap-highlight-color:transparent}.sc-duet-checkbox-h:last-child,.sc-duet-checkbox-h:last-of-type{margin-right:0 !important}.sc-duet-checkbox-h:last-child:not(:only-child){margin-bottom:0 !important}.duet-m-0.sc-duet-checkbox-h{margin:0 !important}.duet-label.sc-duet-checkbox{position:relative;z-index:100;display:inline;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;line-height:1.5;color:#00294d;vertical-align:top;cursor:pointer;background:transparent;transition:300ms ease}.duet-theme-turva.sc-duet-checkbox .duet-label.sc-duet-checkbox{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}.duet-label.sc-duet-checkbox span.sc-duet-checkbox{display:inline-block;width:calc(100% - 32px);font-size:1rem;font-weight:400;vertical-align:top}.duet-checkbox-container.sc-duet-checkbox{position:relative;width:100%;height:100%}.duet-checkbox.sc-duet-checkbox{padding:14px !important;position:absolute;top:0;left:0;z-index:2;width:100%;height:100%;cursor:pointer;opacity:0}.duet-checkbox.sc-duet-checkbox+label.sc-duet-checkbox::before{z-index:100;display:inline-block;width:20px;height:20px;margin:2px 10px 1px 1px;vertical-align:top;content:\"\";background:white;border:1px solid #00294d;border-radius:4px}.duet-theme-turva.sc-duet-checkbox .duet-checkbox.sc-duet-checkbox+label.sc-duet-checkbox::before{border-color:#171c3a}.duet-checkbox.sc-duet-checkbox:checked+label.sc-duet-checkbox::before{background:#00294d;border:1px solid #00294d}.duet-theme-turva.sc-duet-checkbox .duet-checkbox.sc-duet-checkbox:checked+label.sc-duet-checkbox::before{background:#171c3a;border-color:#171c3a}.duet-checkbox.sc-duet-checkbox:focus+label.sc-duet-checkbox::before{box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}.duet-theme-turva.sc-duet-checkbox .duet-checkbox.sc-duet-checkbox:focus+label.sc-duet-checkbox::before{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-checkbox.sc-duet-checkbox+label.sc-duet-checkbox{position:static}.duet-checkbox.sc-duet-checkbox:checked+label.sc-duet-checkbox::after{position:absolute;top:6px;left:5px;z-index:200;width:12px;height:12px;pointer-events:none;content:\"\";background:transparent url(\"data:image/svg+xml,%3Csvg%20fill%3D%27white%27%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2724%27%20height%3D%2724%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M23.374.287a1.5%2C1.5%2C0%2C0%2C0-2.093.345L7.246%2C20.2%2C2.561%2C15.511A1.5%2C1.5%2C0%2C1%2C0%2C.439%2C17.632l5.935%2C5.934a1.525%2C1.525%2C0%2C0%2C0%2C2.279-.186l15.066-21A1.5%2C1.5%2C0%2C0%2C0%2C23.374.287Z%27%20%2F%3E%3C%2Fsvg%3E\") no-repeat 0 0;background-size:100% auto}.duet-checkbox[disabled].sc-duet-checkbox{cursor:default}.duet-checkbox[disabled].sc-duet-checkbox+label.sc-duet-checkbox{color:#657787}.duet-theme-turva.sc-duet-checkbox .duet-checkbox[disabled].sc-duet-checkbox+label.sc-duet-checkbox{color:#747475}.duet-checkbox[disabled].sc-duet-checkbox+label.sc-duet-checkbox::before{border-color:#cfd2d4}.duet-theme-turva.sc-duet-checkbox .duet-checkbox[disabled].sc-duet-checkbox+label.sc-duet-checkbox::before{border-color:#cfcfd1}.duet-checkbox[disabled].sc-duet-checkbox:checked+label.sc-duet-checkbox::before{background:#657787;border:1px solid #657787}.duet-theme-turva.sc-duet-checkbox .duet-checkbox[disabled].sc-duet-checkbox:checked+label.sc-duet-checkbox::before{background:#747475;border-color:#747475}.duet-label-hidden.sc-duet-checkbox .duet-label.sc-duet-checkbox span.sc-duet-checkbox{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);border:0}";
8
+ const duetCheckboxCss = "*.sc-duet-checkbox,*.sc-duet-checkbox::after,*.sc-duet-checkbox::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.sc-duet-checkbox-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-right:8px !important;margin-bottom:12px !important;display:inline-flex;width:100%;vertical-align:bottom;-webkit-tap-highlight-color:transparent}.sc-duet-checkbox-h:last-child,.sc-duet-checkbox-h:last-of-type{margin-right:0 !important}.sc-duet-checkbox-h:last-child:not(:only-child){margin-bottom:0 !important}.duet-m-0.sc-duet-checkbox-h{margin:0 !important}.duet-label.sc-duet-checkbox{position:relative;z-index:100;display:inline;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;line-height:1.5;color:rgb(0, 41, 77);vertical-align:top;cursor:pointer;background:transparent;transition:300ms ease}.duet-theme-turva.sc-duet-checkbox .duet-label.sc-duet-checkbox{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58)}.duet-label.sc-duet-checkbox span.sc-duet-checkbox{display:inline-block;width:calc(100% - 32px);font-size:1rem;font-weight:400;vertical-align:top}.duet-checkbox-container.sc-duet-checkbox{position:relative;width:100%;height:100%}.duet-checkbox.sc-duet-checkbox{padding:14px !important;position:absolute;top:0;left:0;z-index:2;width:100%;height:100%;cursor:pointer;opacity:0}.duet-checkbox.sc-duet-checkbox+label.sc-duet-checkbox::before{z-index:100;display:inline-block;width:20px;height:20px;margin:2px 10px 1px 1px;vertical-align:top;content:\"\";background:rgb(255, 255, 255);border:1px solid rgb(0, 41, 77);border-radius:4px}.duet-theme-turva.sc-duet-checkbox .duet-checkbox.sc-duet-checkbox+label.sc-duet-checkbox::before{border-color:rgb(23, 28, 58)}.duet-checkbox.sc-duet-checkbox:checked+label.sc-duet-checkbox::before{background:rgb(0, 41, 77);border:1px solid rgb(0, 41, 77)}.duet-theme-turva.sc-duet-checkbox .duet-checkbox.sc-duet-checkbox:checked+label.sc-duet-checkbox::before{background:rgb(23, 28, 58);border-color:rgb(23, 28, 58)}.duet-checkbox.sc-duet-checkbox:focus+label.sc-duet-checkbox::before{box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px rgb(0, 119, 179)}.duet-theme-turva.sc-duet-checkbox .duet-checkbox.sc-duet-checkbox:focus+label.sc-duet-checkbox::before{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px rgb(23, 28, 58)}.duet-checkbox.sc-duet-checkbox+label.sc-duet-checkbox{position:static}.duet-checkbox.sc-duet-checkbox:checked+label.sc-duet-checkbox::after{position:absolute;top:6px;left:5px;z-index:200;width:12px;height:12px;pointer-events:none;content:\"\";background:transparent url(\"data:image/svg+xml,%3Csvg%20fill%3D%27white%27%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2724%27%20height%3D%2724%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M23.374.287a1.5%2C1.5%2C0%2C0%2C0-2.093.345L7.246%2C20.2%2C2.561%2C15.511A1.5%2C1.5%2C0%2C1%2C0%2C.439%2C17.632l5.935%2C5.934a1.525%2C1.525%2C0%2C0%2C0%2C2.279-.186l15.066-21A1.5%2C1.5%2C0%2C0%2C0%2C23.374.287Z%27%20%2F%3E%3C%2Fsvg%3E\") no-repeat 0 0;background-size:100% auto}.duet-checkbox[disabled].sc-duet-checkbox{cursor:default}.duet-checkbox[disabled].sc-duet-checkbox+label.sc-duet-checkbox{color:rgb(101, 119, 135)}.duet-theme-turva.sc-duet-checkbox .duet-checkbox[disabled].sc-duet-checkbox+label.sc-duet-checkbox{color:rgb(116, 116, 117)}.duet-checkbox[disabled].sc-duet-checkbox+label.sc-duet-checkbox::before{border-color:rgb(207, 210, 212)}.duet-theme-turva.sc-duet-checkbox .duet-checkbox[disabled].sc-duet-checkbox+label.sc-duet-checkbox::before{border-color:rgb(207, 207, 209)}.duet-checkbox[disabled].sc-duet-checkbox:checked+label.sc-duet-checkbox::before{background:rgb(101, 119, 135);border:1px solid rgb(101, 119, 135)}.duet-theme-turva.sc-duet-checkbox .duet-checkbox[disabled].sc-duet-checkbox:checked+label.sc-duet-checkbox::before{background:rgb(116, 116, 117);border-color:rgb(116, 116, 117)}.duet-label-hidden.sc-duet-checkbox .duet-label.sc-duet-checkbox span.sc-duet-checkbox{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);border:0}";
9
9
 
10
10
  const DuetCheckbox = /*@__PURE__*/ proxyCustomElement(class extends H {
11
11
  constructor() {
@@ -1,17 +1,17 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import { p as proxyCustomElement, H, c as createEvent, h, b as Host } from './p-e565b192.js';
4
+ import { p as proxyCustomElement, H, c as createEvent, h, d as Host } from './p-67e14cd3.js';
5
5
  import { i as inheritGlobalTheme } from './p-4ebf1618.js';
6
6
  import { c as createID } from './p-c1325e35.js';
7
7
  import { p as parsePossibleJSON } from './p-5a9d75e1.js';
8
- import { d as defineCustomElement$5 } from './p-add72ec7.js';
9
- import { d as defineCustomElement$4 } from './p-a1657855.js';
10
- import { d as defineCustomElement$3 } from './p-5392a088.js';
11
- import { d as defineCustomElement$2 } from './p-7e80afc3.js';
12
- import { d as defineCustomElement$1 } from './p-85a51040.js';
8
+ import { d as defineCustomElement$5 } from './p-fc98d756.js';
9
+ import { d as defineCustomElement$4 } from './p-c6137eb6.js';
10
+ import { d as defineCustomElement$3 } from './p-697162df.js';
11
+ import { d as defineCustomElement$2 } from './p-eb4fb7b2.js';
12
+ import { d as defineCustomElement$1 } from './p-6fe0175a.js';
13
13
 
14
- const duetSelectCss = "@charset \"UTF-8\";*.sc-duet-select,*.sc-duet-select::after,*.sc-duet-select::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.sc-duet-select-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%;max-width:100%;vertical-align:bottom}.sc-duet-select-h:last-child,.sc-duet-select-h:last-of-type{margin-right:0 !important}@media (min-width: 36em){.sc-duet-select-h{width:calc(50% - 16px - 3px)}.duet-expand.sc-duet-select-h{width:100% !important}}.duet-select-variation-tiny.sc-duet-select-h{position:relative;top:-2px;width:72px;margin:0 !important;vertical-align:baseline}.duet-m-0.sc-duet-select-h{margin:0 !important}duet-tooltip.sc-duet-select{position:absolute;top:12px;right:0}@media (min-width: 48em){duet-tooltip.sc-duet-select{position:relative;top:4px;right:auto}}.duet-select-placeholder.sc-duet-select{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-select-container.sc-duet-select{position:relative;width:100%}.duet-select-container.duet-select-variation-tiny.sc-duet-select{width:72px}.duet-select-wrapper.sc-duet-select{position:relative;width:100%;padding:15px 14px !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;line-height:1.25}.duet-theme-turva.sc-duet-select .duet-select-wrapper.sc-duet-select{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"}.duet-select-variation-tiny.sc-duet-select .duet-select-wrapper.sc-duet-select{width:81px;padding:0 !important}.duet-select-wrapper.sc-duet-select::after{content:\"  \"}.duet-select-wrapper.sc-duet-select select.sc-duet-select{position:absolute;top:0;right:0;bottom:0;left:0;z-index:200;width:100%;height:100%;padding:0;margin:0;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;cursor:pointer;border:0;outline:none;opacity:0}.duet-theme-turva.sc-duet-select .duet-select-wrapper.sc-duet-select select.sc-duet-select{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"}.duet-select-wrapper.sc-duet-select select.sc-duet-select:hover+.duet-select.sc-duet-select{border-color:#909599;box-shadow:0 0 0 1px #909599}.duet-theme-turva.sc-duet-select .duet-select-wrapper.sc-duet-select select.sc-duet-select:hover+.duet-select.sc-duet-select{border-color:#747475;box-shadow:0 0 0 1px #747475}.has-error.sc-duet-select .duet-select-wrapper.sc-duet-select select.sc-duet-select:hover+.duet-select.sc-duet-select{box-shadow:0 0 0 1px #de2362}.duet-theme-turva.has-error.sc-duet-select .duet-select-wrapper.sc-duet-select select.sc-duet-select:hover+.duet-select.sc-duet-select{box-shadow:0 0 0 1px #e02a0d}.duet-select-wrapper.sc-duet-select select.sc-duet-select:focus+.duet-select.sc-duet-select{border-color:#0077b3;outline:0;box-shadow:0 0 0 1px #0077b3;transition:none}.duet-theme-turva.sc-duet-select .duet-select-wrapper.sc-duet-select select.sc-duet-select:focus+.duet-select.sc-duet-select{border-color:#171c3a;box-shadow:0 0 0 1px #171c3a}.duet-theme-turva.sc-duet-select .duet-select-wrapper.sc-duet-select select.sc-duet-select:focus+.duet-select.sc-duet-select .duet-select-icon.sc-duet-select{color:#171c3a}.duet-select-wrapper.sc-duet-select select.sc-duet-select:focus+.duet-select.sc-duet-select .duet-select-icon.sc-duet-select{color:#0077b3}.has-error.sc-duet-select .duet-select-wrapper.sc-duet-select select.sc-duet-select:focus+.duet-select.sc-duet-select{box-shadow:0 0 0 1px #de2362}.duet-theme-turva.has-error.sc-duet-select .duet-select-wrapper.sc-duet-select select.sc-duet-select:focus+.duet-select.sc-duet-select{box-shadow:0 0 0 1px #e02a0d}.duet-select-wrapper.sc-duet-select select[disabled].sc-duet-select{cursor:default !important}.duet-select-wrapper.sc-duet-select select[disabled].sc-duet-select+.duet-select.sc-duet-select{color:#00294d !important;cursor:default !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-select .duet-select-wrapper.sc-duet-select select[disabled].sc-duet-select+.duet-select.sc-duet-select{color:#171c3a !important;background:#f5f5f7 !important;border-color:#f5f5f7 !important;-webkit-text-fill-color:#171c3a !important}.duet-select.sc-duet-select{position:absolute;top:0;right:0;bottom:0;left:0;z-index:100;display:block;width:100%;min-width:8rem;padding:12px 14px !important;padding-right:48px !important;overflow:hidden;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;font-variant-numeric:tabular-nums;line-height:1.5;color:#00294d;text-align:left;text-overflow:ellipsis;white-space:nowrap;background:white;border:1px solid #909599;border-radius:4px;transition:150ms ease}.has-error.sc-duet-select .duet-select.sc-duet-select{border-color:#de2362 !important}.has-error.sc-duet-select .duet-select.sc-duet-select .duet-select-icon.sc-duet-select{color:#de2362 !important}.duet-theme-turva.has-error.sc-duet-select .duet-select.sc-duet-select{border-color:#e02a0d !important}.duet-theme-turva.has-error.sc-duet-select .duet-select.sc-duet-select .duet-select-icon.sc-duet-select{color:#e02a0d !important}.duet-theme-turva.sc-duet-select .duet-select.sc-duet-select{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;border-color:#747475}.duet-select.sc-duet-select svg.sc-duet-select{position:absolute;top:50%;right:16px;z-index:200;width:20px;height:20px;color:#00294d;pointer-events:none;transform:translateY(-50%)}.duet-theme-turva.sc-duet-select .duet-select.sc-duet-select svg.sc-duet-select{color:#171c3a}.duet-select-variation-tiny.sc-duet-select .duet-select.sc-duet-select{width:72px;min-width:inherit;padding:0 !important;margin-bottom:-4px;overflow:visible;font-weight:600;text-align:center}.duet-select-variation-tiny.sc-duet-select .duet-select.sc-duet-select duet-icon.sc-duet-select{padding-left:10px}.duet-select-help.sc-duet-select{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-select-help.sc-duet-select span.sc-duet-select{display:block;margin-top:8px}.duet-theme-turva.sc-duet-select .duet-select-help.sc-duet-select{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-select .duet-select-help.sc-duet-select{color:#de2362}.duet-theme-turva.has-error.sc-duet-select .duet-select-help.sc-duet-select{color:#e02a0d}.duet-label-hidden.sc-duet-select duet-label.sc-duet-select{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);border:0}";
14
+ const duetSelectCss = "@charset \"UTF-8\";*.sc-duet-select,*.sc-duet-select::after,*.sc-duet-select::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.sc-duet-select-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%;max-width:100%;vertical-align:bottom}.sc-duet-select-h:last-child,.sc-duet-select-h:last-of-type{margin-right:0 !important}@media (min-width: 36em){.sc-duet-select-h{width:calc(50% - 16px - 3px)}.duet-expand.sc-duet-select-h{width:100% !important}}.duet-select-variation-tiny.sc-duet-select-h{position:relative;top:-2px;width:72px;margin:0 !important;vertical-align:baseline}.duet-m-0.sc-duet-select-h{margin:0 !important}duet-tooltip.sc-duet-select{position:absolute;top:12px;right:0}@media (min-width: 48em){duet-tooltip.sc-duet-select{position:relative;top:4px;right:auto}}.duet-select-placeholder.sc-duet-select{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:rgb(255, 255, 255)}.duet-select-container.sc-duet-select{position:relative;width:100%}.duet-select-container.duet-select-variation-tiny.sc-duet-select{width:72px}.duet-select-wrapper.sc-duet-select{position:relative;width:100%;padding:15px 14px !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;line-height:1.25}.duet-theme-turva.sc-duet-select .duet-select-wrapper.sc-duet-select{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"}.duet-select-variation-tiny.sc-duet-select .duet-select-wrapper.sc-duet-select{width:81px;padding:0 !important}.duet-select-wrapper.sc-duet-select::after{content:\"  \"}.duet-select-wrapper.sc-duet-select select.sc-duet-select{position:absolute;top:0;right:0;bottom:0;left:0;z-index:200;width:100%;height:100%;padding:0;margin:0;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;cursor:pointer;border:0;outline:none;opacity:0}.duet-theme-turva.sc-duet-select .duet-select-wrapper.sc-duet-select select.sc-duet-select{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"}.duet-select-wrapper.sc-duet-select select.sc-duet-select:hover+.duet-select.sc-duet-select{border-color:rgb(144, 149, 153);box-shadow:0 0 0 1px rgb(144, 149, 153)}.duet-theme-turva.sc-duet-select .duet-select-wrapper.sc-duet-select select.sc-duet-select:hover+.duet-select.sc-duet-select{border-color:rgb(116, 116, 117);box-shadow:0 0 0 1px rgb(116, 116, 117)}.has-error.sc-duet-select .duet-select-wrapper.sc-duet-select select.sc-duet-select:hover+.duet-select.sc-duet-select{box-shadow:0 0 0 1px rgb(222, 35, 98)}.duet-theme-turva.has-error.sc-duet-select .duet-select-wrapper.sc-duet-select select.sc-duet-select:hover+.duet-select.sc-duet-select{box-shadow:0 0 0 1px rgb(224, 42, 13)}.duet-select-wrapper.sc-duet-select select.sc-duet-select:focus+.duet-select.sc-duet-select{border-color:rgb(0, 119, 179);outline:0;box-shadow:0 0 0 1px rgb(0, 119, 179);transition:none}.duet-theme-turva.sc-duet-select .duet-select-wrapper.sc-duet-select select.sc-duet-select:focus+.duet-select.sc-duet-select{border-color:rgb(23, 28, 58);box-shadow:0 0 0 1px rgb(23, 28, 58)}.duet-theme-turva.sc-duet-select .duet-select-wrapper.sc-duet-select select.sc-duet-select:focus+.duet-select.sc-duet-select .duet-select-icon.sc-duet-select{color:rgb(23, 28, 58)}.duet-select-wrapper.sc-duet-select select.sc-duet-select:focus+.duet-select.sc-duet-select .duet-select-icon.sc-duet-select{color:rgb(0, 119, 179)}.has-error.sc-duet-select .duet-select-wrapper.sc-duet-select select.sc-duet-select:focus+.duet-select.sc-duet-select{box-shadow:0 0 0 1px rgb(222, 35, 98)}.duet-theme-turva.has-error.sc-duet-select .duet-select-wrapper.sc-duet-select select.sc-duet-select:focus+.duet-select.sc-duet-select{box-shadow:0 0 0 1px rgb(224, 42, 13)}.duet-select-wrapper.sc-duet-select select[disabled].sc-duet-select{cursor:default !important}.duet-select-wrapper.sc-duet-select select[disabled].sc-duet-select+.duet-select.sc-duet-select{color:rgb(0, 41, 77) !important;cursor:default !important;background:rgb(245, 248, 250) !important;border-color:rgb(245, 248, 250) !important;box-shadow:none !important;opacity:1 !important;-webkit-text-fill-color:rgb(0, 41, 77) !important}.duet-theme-turva.sc-duet-select .duet-select-wrapper.sc-duet-select select[disabled].sc-duet-select+.duet-select.sc-duet-select{color:rgb(23, 28, 58) !important;background:rgb(245, 245, 247) !important;border-color:rgb(245, 245, 247) !important;-webkit-text-fill-color:rgb(23, 28, 58) !important}.duet-select.sc-duet-select{position:absolute;top:0;right:0;bottom:0;left:0;z-index:100;display:block;width:100%;min-width:8rem;padding:12px 14px !important;padding-right:48px !important;overflow:hidden;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;font-variant-numeric:tabular-nums;line-height:1.5;color:rgb(0, 41, 77);text-align:left;text-overflow:ellipsis;white-space:nowrap;background:rgb(255, 255, 255);border:1px solid rgb(144, 149, 153);border-radius:4px;transition:150ms ease}.has-error.sc-duet-select .duet-select.sc-duet-select{border-color:rgb(222, 35, 98) !important}.has-error.sc-duet-select .duet-select.sc-duet-select .duet-select-icon.sc-duet-select{color:rgb(222, 35, 98) !important}.duet-theme-turva.has-error.sc-duet-select .duet-select.sc-duet-select{border-color:rgb(224, 42, 13) !important}.duet-theme-turva.has-error.sc-duet-select .duet-select.sc-duet-select .duet-select-icon.sc-duet-select{color:rgb(224, 42, 13) !important}.duet-theme-turva.sc-duet-select .duet-select.sc-duet-select{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58);border-color:rgb(116, 116, 117)}.duet-select.sc-duet-select svg.sc-duet-select{position:absolute;top:50%;right:16px;z-index:200;width:20px;height:20px;color:rgb(0, 41, 77);pointer-events:none;transform:translateY(-50%)}.duet-theme-turva.sc-duet-select .duet-select.sc-duet-select svg.sc-duet-select{color:rgb(23, 28, 58)}.duet-select-variation-tiny.sc-duet-select .duet-select.sc-duet-select{width:72px;min-width:inherit;padding:0 !important;margin-bottom:-4px;overflow:visible;font-weight:600;text-align:center}.duet-select-variation-tiny.sc-duet-select .duet-select.sc-duet-select duet-icon.sc-duet-select{padding-left:10px}.duet-select-help.sc-duet-select{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:rgb(101, 119, 135);border-radius:4px}.duet-select-help.sc-duet-select span.sc-duet-select{display:block;margin-top:8px}.duet-theme-turva.sc-duet-select .duet-select-help.sc-duet-select{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(116, 116, 117)}.has-error.sc-duet-select .duet-select-help.sc-duet-select{color:rgb(222, 35, 98)}.duet-theme-turva.has-error.sc-duet-select .duet-select-help.sc-duet-select{color:rgb(224, 42, 13)}.duet-label-hidden.sc-duet-select duet-label.sc-duet-select{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);border:0}";
15
15
 
16
16
  function isOptionGroup(item) {
17
17
  return "options" in item;