@duetds/components 6.2.11 → 6.3.0

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 (524) hide show
  1. package/hydrate/index.js +573 -21
  2. package/lib/cjs/duet-action-button.cjs.entry.js +1 -1
  3. package/lib/cjs/duet-alert.cjs.entry.js +1 -1
  4. package/lib/cjs/duet-badge.cjs.entry.js +1 -1
  5. package/lib/cjs/duet-breadcrumb.cjs.entry.js +1 -1
  6. package/lib/cjs/duet-breadcrumbs.cjs.entry.js +1 -1
  7. package/lib/cjs/duet-button_2.cjs.entry.js +1 -1
  8. package/lib/cjs/duet-caption_4.cjs.entry.js +1 -1
  9. package/lib/cjs/duet-card.cjs.entry.js +1 -1
  10. package/lib/cjs/duet-checkbox.cjs.entry.js +1 -1
  11. package/lib/cjs/duet-choice_2.cjs.entry.js +2 -2
  12. package/lib/cjs/duet-collapsible.cjs.entry.js +1 -1
  13. package/lib/cjs/duet-combobox.cjs.entry.js +1 -1
  14. package/lib/cjs/duet-cookie-consent.cjs.entry.js +1 -1
  15. package/lib/cjs/duet-date-picker.cjs.entry.js +2 -2
  16. package/lib/cjs/duet-divider_2.cjs.entry.js +1 -1
  17. package/lib/cjs/duet-editable-table_3.cjs.entry.js +1 -1
  18. package/lib/cjs/duet-empty-state.cjs.entry.js +1 -1
  19. package/lib/cjs/duet-fieldset.cjs.entry.js +1 -1
  20. package/lib/cjs/duet-footer.cjs.entry.js +1 -1
  21. package/lib/cjs/duet-grid_2.cjs.entry.js +1 -1
  22. package/lib/cjs/duet-header_2.cjs.entry.js +1 -1
  23. package/lib/cjs/duet-hero.cjs.entry.js +1 -1
  24. package/lib/cjs/duet-icon.cjs.entry.js +1 -1
  25. package/lib/cjs/duet-input_2.cjs.entry.js +1 -1
  26. package/lib/cjs/duet-layout.cjs.entry.js +1 -1
  27. package/lib/cjs/duet-list_2.cjs.entry.js +1 -1
  28. package/lib/cjs/duet-menu-bar-dropdown-link.cjs.entry.js +1 -1
  29. package/lib/cjs/duet-menu-bar-dropdown.cjs.entry.js +1 -1
  30. package/lib/cjs/duet-menu-bar-link.cjs.entry.js +38 -3
  31. package/lib/cjs/duet-menu-bar.cjs.entry.js +28 -3
  32. package/lib/cjs/duet-modal.cjs.entry.js +2 -2
  33. package/lib/cjs/duet-multiselect.cjs.entry.js +1 -1
  34. package/lib/cjs/duet-nav.cjs.entry.js +3 -3
  35. package/lib/cjs/duet-notification_2.cjs.entry.js +1 -1
  36. package/lib/cjs/duet-number-input.cjs.entry.js +1 -1
  37. package/lib/cjs/duet-pagination_2.cjs.entry.js +1 -1
  38. package/lib/cjs/duet-progress.cjs.entry.js +1 -1
  39. package/lib/cjs/duet-radio_2.cjs.entry.js +1 -1
  40. package/lib/cjs/duet-range-slider.cjs.entry.js +1 -1
  41. package/lib/cjs/duet-scrollable_3.cjs.entry.js +3 -2
  42. package/lib/cjs/duet-section-layout.cjs.entry.js +1 -1
  43. package/lib/cjs/duet-select.cjs.entry.js +1 -1
  44. package/lib/cjs/duet-slideout-lang.cjs.entry.js +46 -0
  45. package/lib/cjs/duet-slideout-link.cjs.entry.js +44 -0
  46. package/lib/cjs/duet-slideout-panel-dropdown-link.cjs.entry.js +41 -0
  47. package/lib/cjs/duet-slideout-panel-dropdown.cjs.entry.js +55 -0
  48. package/lib/cjs/duet-slideout-panel-link.cjs.entry.js +41 -0
  49. package/lib/cjs/duet-slideout-panel.cjs.entry.js +89 -0
  50. package/lib/cjs/duet-slideout.cjs.entry.js +80 -0
  51. package/lib/cjs/duet-step_2.cjs.entry.js +1 -1
  52. package/lib/cjs/duet-submenu-bar-dropdown-link.cjs.entry.js +2 -2
  53. package/lib/cjs/duet-submenu-bar-dropdown.cjs.entry.js +38 -3
  54. package/lib/cjs/duet-submenu-bar-link.cjs.entry.js +38 -3
  55. package/lib/cjs/duet-submenu-bar.cjs.entry.js +12 -3
  56. package/lib/cjs/duet-textarea.cjs.entry.js +1 -1
  57. package/lib/cjs/duet-toggle.cjs.entry.js +1 -1
  58. package/lib/cjs/duet-toolbar-dropdown-link.cjs.entry.js +1 -1
  59. package/lib/cjs/duet-toolbar-dropdown.cjs.entry.js +1 -1
  60. package/lib/cjs/duet-toolbar-link.cjs.entry.js +1 -1
  61. package/lib/cjs/duet-toolbar.cjs.entry.js +2 -2
  62. package/lib/cjs/duet-tooltip.cjs.entry.js +1 -1
  63. package/lib/cjs/duet-tray.cjs.entry.js +1 -1
  64. package/lib/cjs/duet-upload-aria-status.cjs.entry.js +1 -1
  65. package/lib/cjs/duet-visually-hidden.cjs.entry.js +1 -1
  66. package/lib/cjs/duet.cjs.js +2 -2
  67. package/lib/cjs/{focus-utils-9e300a05.js → focus-utils-9b534879.js} +1 -1
  68. package/lib/cjs/{index-65a47ca8.js → index-e3c1cf60.js} +1 -1
  69. package/lib/cjs/loader.cjs.js +2 -2
  70. package/lib/collection/collection-manifest.json +7 -0
  71. package/lib/collection/components/duet-menu-bar/duet-menu-bar.css +81 -4
  72. package/lib/collection/components/duet-menu-bar/duet-menu-bar.js +51 -3
  73. package/lib/collection/components/duet-menu-bar-link/duet-menu-bar-link.css +22 -11
  74. package/lib/collection/components/duet-menu-bar-link/duet-menu-bar-link.js +41 -1
  75. package/lib/collection/components/duet-nav/duet-nav.css +18 -0
  76. package/lib/collection/components/duet-nav/duet-nav.js +1 -1
  77. package/lib/collection/components/duet-slideout/duet-slideout.css +123 -0
  78. package/lib/collection/components/duet-slideout/duet-slideout.js +167 -0
  79. package/lib/collection/components/duet-slideout-lang/duet-slideout-lang.css +55 -0
  80. package/lib/collection/components/duet-slideout-lang/duet-slideout-lang.js +73 -0
  81. package/lib/collection/components/duet-slideout-link/duet-slideout-link.css +78 -0
  82. package/lib/collection/components/duet-slideout-link/duet-slideout-link.js +144 -0
  83. package/lib/collection/components/duet-slideout-panel/duet-slideout-panel.css +149 -0
  84. package/lib/collection/components/duet-slideout-panel/duet-slideout-panel.js +175 -0
  85. package/lib/collection/components/duet-slideout-panel-dropdown/duet-slideout-panel-dropdown.css +90 -0
  86. package/lib/collection/components/duet-slideout-panel-dropdown/duet-slideout-panel-dropdown.js +128 -0
  87. package/lib/collection/components/duet-slideout-panel-dropdown-link/duet-slideout-panel-dropdown-link.css +47 -0
  88. package/lib/collection/components/duet-slideout-panel-dropdown-link/duet-slideout-panel-dropdown-link.js +123 -0
  89. package/lib/collection/components/duet-slideout-panel-link/duet-slideout-panel-link.css +47 -0
  90. package/lib/collection/components/duet-slideout-panel-link/duet-slideout-panel-link.js +123 -0
  91. package/lib/collection/components/duet-submenu-bar/duet-submenu-bar.css +88 -1
  92. package/lib/collection/components/duet-submenu-bar/duet-submenu-bar.js +28 -1
  93. package/lib/collection/components/duet-submenu-bar-dropdown/duet-submenu-bar-dropdown.css +87 -47
  94. package/lib/collection/components/duet-submenu-bar-dropdown/duet-submenu-bar-dropdown.js +41 -1
  95. package/lib/collection/components/duet-submenu-bar-dropdown-link/duet-submenu-bar-dropdown-link.css +17 -9
  96. package/lib/collection/components/duet-submenu-bar-link/duet-submenu-bar-link.css +33 -10
  97. package/lib/collection/components/duet-submenu-bar-link/duet-submenu-bar-link.js +41 -1
  98. package/lib/collection/components/duet-tab-group/duet-tab-group.js +21 -2
  99. package/lib/collection/components/duet-toolbar/duet-toolbar.css +6 -0
  100. package/lib/dist-custom-elements/duet-action-button.js +1 -1
  101. package/lib/dist-custom-elements/duet-alert.js +1 -1
  102. package/lib/dist-custom-elements/duet-badge.js +1 -1
  103. package/lib/dist-custom-elements/duet-breadcrumb.js +2 -2
  104. package/lib/dist-custom-elements/duet-breadcrumbs.js +2 -2
  105. package/lib/dist-custom-elements/duet-button.js +1 -1
  106. package/lib/dist-custom-elements/duet-caption.js +1 -1
  107. package/lib/dist-custom-elements/duet-card.js +3 -3
  108. package/lib/dist-custom-elements/duet-checkbox.js +1 -1
  109. package/lib/dist-custom-elements/duet-choice-group.js +6 -6
  110. package/lib/dist-custom-elements/duet-choice.js +5 -5
  111. package/lib/dist-custom-elements/duet-collapsible.js +2 -2
  112. package/lib/dist-custom-elements/duet-combobox.js +2 -2
  113. package/lib/dist-custom-elements/duet-cookie-consent.js +6 -6
  114. package/lib/dist-custom-elements/duet-date-picker.js +8 -8
  115. package/lib/dist-custom-elements/duet-divider.js +1 -1
  116. package/lib/dist-custom-elements/duet-editable-table.js +1 -1
  117. package/lib/dist-custom-elements/duet-empty-state.js +1 -1
  118. package/lib/dist-custom-elements/duet-fieldset.js +1 -1
  119. package/lib/dist-custom-elements/duet-footer.js +4 -4
  120. package/lib/dist-custom-elements/duet-grid-item.js +1 -1
  121. package/lib/dist-custom-elements/duet-grid.js +1 -1
  122. package/lib/dist-custom-elements/duet-header.js +8 -8
  123. package/lib/dist-custom-elements/duet-heading.js +1 -1
  124. package/lib/dist-custom-elements/duet-hero.js +9 -9
  125. package/lib/dist-custom-elements/duet-icon.js +1 -1
  126. package/lib/dist-custom-elements/duet-input.js +1 -1
  127. package/lib/dist-custom-elements/duet-label.js +1 -1
  128. package/lib/dist-custom-elements/duet-layout.js +1 -1
  129. package/lib/dist-custom-elements/duet-link.js +1 -1
  130. package/lib/dist-custom-elements/duet-list-item.js +1 -1
  131. package/lib/dist-custom-elements/duet-list.js +1 -1
  132. package/lib/dist-custom-elements/duet-logo.js +1 -1
  133. package/lib/dist-custom-elements/duet-menu-bar-dropdown-link.js +2 -2
  134. package/lib/dist-custom-elements/duet-menu-bar-dropdown.js +2 -2
  135. package/lib/dist-custom-elements/duet-menu-bar-link.js +41 -5
  136. package/lib/dist-custom-elements/duet-menu-bar.js +33 -5
  137. package/lib/dist-custom-elements/duet-modal.js +7 -7
  138. package/lib/dist-custom-elements/duet-multiselect.js +8 -8
  139. package/lib/dist-custom-elements/duet-nav.js +3 -3
  140. package/lib/dist-custom-elements/duet-notification-drawer.js +4 -4
  141. package/lib/dist-custom-elements/duet-notification.js +2 -2
  142. package/lib/dist-custom-elements/duet-number-input.js +7 -7
  143. package/lib/dist-custom-elements/duet-pagination.js +7 -7
  144. package/lib/dist-custom-elements/duet-paragraph.js +1 -1
  145. package/lib/dist-custom-elements/duet-progress.js +1 -1
  146. package/lib/dist-custom-elements/duet-radio-group.js +6 -6
  147. package/lib/dist-custom-elements/duet-radio.js +1 -1
  148. package/lib/dist-custom-elements/duet-range-slider.js +2 -2
  149. package/lib/dist-custom-elements/duet-range-stepper.js +4 -4
  150. package/lib/dist-custom-elements/duet-scrollable.js +1 -1
  151. package/lib/dist-custom-elements/duet-section-layout.js +1 -1
  152. package/lib/dist-custom-elements/duet-select.js +1 -1
  153. package/lib/dist-custom-elements/duet-slideout-lang.d.ts +11 -0
  154. package/lib/dist-custom-elements/duet-slideout-lang.js +73 -0
  155. package/lib/dist-custom-elements/duet-slideout-link.d.ts +11 -0
  156. package/lib/dist-custom-elements/duet-slideout-link.js +70 -0
  157. package/lib/dist-custom-elements/duet-slideout-panel-dropdown-link.d.ts +11 -0
  158. package/lib/dist-custom-elements/duet-slideout-panel-dropdown-link.js +66 -0
  159. package/lib/dist-custom-elements/duet-slideout-panel-dropdown.d.ts +11 -0
  160. package/lib/dist-custom-elements/duet-slideout-panel-dropdown.js +79 -0
  161. package/lib/dist-custom-elements/duet-slideout-panel-link.d.ts +11 -0
  162. package/lib/dist-custom-elements/duet-slideout-panel-link.js +66 -0
  163. package/lib/dist-custom-elements/duet-slideout-panel.d.ts +11 -0
  164. package/lib/dist-custom-elements/duet-slideout-panel.js +114 -0
  165. package/lib/dist-custom-elements/duet-slideout.d.ts +11 -0
  166. package/lib/dist-custom-elements/duet-slideout.js +104 -0
  167. package/lib/dist-custom-elements/duet-spacer.js +1 -1
  168. package/lib/dist-custom-elements/duet-spinner.js +1 -1
  169. package/lib/dist-custom-elements/duet-step.js +4 -4
  170. package/lib/dist-custom-elements/duet-stepper.js +2 -2
  171. package/lib/dist-custom-elements/duet-submenu-bar-dropdown-link.js +3 -3
  172. package/lib/dist-custom-elements/duet-submenu-bar-dropdown.js +41 -5
  173. package/lib/dist-custom-elements/duet-submenu-bar-link.js +41 -5
  174. package/lib/dist-custom-elements/duet-submenu-bar.js +21 -5
  175. package/lib/dist-custom-elements/duet-tab-group.js +11 -9
  176. package/lib/dist-custom-elements/duet-tab.js +1 -1
  177. package/lib/dist-custom-elements/duet-table.js +1 -1
  178. package/lib/dist-custom-elements/duet-textarea.js +8 -8
  179. package/lib/dist-custom-elements/duet-toggle.js +2 -2
  180. package/lib/dist-custom-elements/duet-toolbar-dropdown-link.js +2 -2
  181. package/lib/dist-custom-elements/duet-toolbar-dropdown.js +2 -2
  182. package/lib/dist-custom-elements/duet-toolbar-link.js +2 -2
  183. package/lib/dist-custom-elements/duet-toolbar.js +2 -2
  184. package/lib/dist-custom-elements/duet-tooltip.js +1 -1
  185. package/lib/dist-custom-elements/duet-tray.js +3 -3
  186. package/lib/dist-custom-elements/duet-upload-aria-status.js +1 -1
  187. package/lib/dist-custom-elements/duet-upload.js +18 -18
  188. package/lib/dist-custom-elements/duet-visually-hidden.js +1 -1
  189. package/lib/dist-custom-elements/index.d.ts +7 -0
  190. package/lib/dist-custom-elements/index.js +8 -1
  191. package/lib/dist-custom-elements/{p-1cc71fd1.js → p-002a7b54.js} +1 -1
  192. package/lib/dist-custom-elements/{p-b8c366b7.js → p-0cc4772c.js} +1 -1
  193. package/lib/dist-custom-elements/{p-7a17ddae.js → p-11ad0889.js} +3 -3
  194. package/lib/dist-custom-elements/{p-29d3be5e.js → p-229400bc.js} +3 -3
  195. package/lib/dist-custom-elements/{p-d0a9c324.js → p-23f98750.js} +7 -7
  196. package/lib/dist-custom-elements/{p-fb50673a.js → p-297eeb05.js} +3 -3
  197. package/lib/dist-custom-elements/{p-0a6cd967.js → p-2bfaa4ba.js} +1 -1
  198. package/lib/dist-custom-elements/{p-61321af0.js → p-2c934039.js} +1 -1
  199. package/lib/dist-custom-elements/{p-83efddec.js → p-3ed91a6e.js} +1 -1
  200. package/lib/dist-custom-elements/{p-3db3f9f4.js → p-44a8cf2e.js} +1 -1
  201. package/lib/dist-custom-elements/{p-d9c9af49.js → p-490ba292.js} +5 -5
  202. package/lib/dist-custom-elements/{p-bb576c58.js → p-4c5e2c42.js} +1 -1
  203. package/lib/dist-custom-elements/{p-a47e36e6.js → p-52db2a57.js} +4 -4
  204. package/lib/dist-custom-elements/{p-ff455eb0.js → p-553bdd94.js} +1 -1
  205. package/lib/dist-custom-elements/{p-8d733f50.js → p-5589cf5e.js} +1 -1
  206. package/lib/dist-custom-elements/{p-5dda7a5d.js → p-806b07da.js} +1 -1
  207. package/lib/dist-custom-elements/{p-dbe1ff64.js → p-93166d4c.js} +6 -6
  208. package/lib/dist-custom-elements/{p-20f6b246.js → p-99140a2f.js} +2 -2
  209. package/lib/dist-custom-elements/{p-4d7a5987.js → p-9c3a2e5f.js} +6 -6
  210. package/lib/dist-custom-elements/{p-839269c6.js → p-ad372b29.js} +1 -1
  211. package/lib/dist-custom-elements/{p-ef10689d.js → p-b182dcbc.js} +2 -2
  212. package/lib/dist-custom-elements/{p-d832f332.js → p-b438f3ff.js} +1 -1
  213. package/lib/dist-custom-elements/{p-30b7f663.js → p-c2e91df2.js} +1 -1
  214. package/lib/dist-custom-elements/{p-6f6ab590.js → p-c59daafa.js} +2 -2
  215. package/lib/dist-custom-elements/{p-abec242f.js → p-d2139006.js} +1 -1
  216. package/lib/dist-custom-elements/{p-f8331a39.js → p-d384685b.js} +1 -1
  217. package/lib/dist-custom-elements/{p-af2bc5dc.js → p-df02822f.js} +2 -2
  218. package/lib/dist-custom-elements/{p-a8ed1569.js → p-e56a3a4f.js} +2 -2
  219. package/lib/dist-custom-elements/{p-201fa17a.js → p-eff83337.js} +1 -1
  220. package/lib/dist-custom-elements/{p-b1804185.js → p-f00d941b.js} +1 -1
  221. package/lib/dist-custom-elements/{p-e5db8afc.js → p-fafab887.js} +1 -1
  222. package/lib/duet/duet.esm.js +1 -1
  223. package/lib/duet/duet.js +1 -1
  224. package/lib/duet/p-00428c76.system.entry.js +4 -0
  225. package/lib/duet/{p-3abf2665.system.entry.js → p-05a861c3.system.entry.js} +1 -1
  226. package/lib/duet/p-095e94c0.system.entry.js +4 -0
  227. package/lib/duet/{p-6c159000.entry.js → p-0d78c045.entry.js} +1 -1
  228. package/lib/duet/{p-97fa38b3.system.entry.js → p-0dfc5062.system.entry.js} +1 -1
  229. package/lib/duet/p-0f777e0f.entry.js +4 -0
  230. package/lib/duet/p-11a1d6f7.system.entry.js +4 -0
  231. package/lib/duet/{p-ffa71b04.js → p-17213985.js} +1 -1
  232. package/lib/duet/p-196b22f7.entry.js +4 -0
  233. package/lib/duet/p-1c159b40.entry.js +4 -0
  234. package/lib/duet/{p-7e95730a.system.entry.js → p-1d7751e6.system.entry.js} +1 -1
  235. package/lib/duet/{p-1b230c44.system.entry.js → p-213bec99.system.entry.js} +1 -1
  236. package/lib/duet/{p-2de3cc10.entry.js → p-2147bb75.entry.js} +1 -1
  237. package/lib/duet/{p-9752d53b.entry.js → p-221e9bde.entry.js} +1 -1
  238. package/lib/duet/{p-3ea5b975.entry.js → p-22975217.entry.js} +1 -1
  239. package/lib/duet/{p-49525d3d.entry.js → p-22a44d9c.entry.js} +1 -1
  240. package/lib/duet/p-23827c68.system.entry.js +4 -0
  241. package/lib/duet/{p-562ed27c.entry.js → p-25a74f14.entry.js} +1 -1
  242. package/lib/duet/{p-61336adf.entry.js → p-27394348.entry.js} +1 -1
  243. package/lib/duet/{p-21864966.entry.js → p-2796b765.entry.js} +1 -1
  244. package/lib/duet/{p-f1a5c03d.entry.js → p-2a8d59a8.entry.js} +1 -1
  245. package/lib/duet/{p-9e5155db.entry.js → p-2b279cd3.entry.js} +1 -1
  246. package/lib/duet/{p-37139fee.system.entry.js → p-2ee85f9b.system.entry.js} +1 -1
  247. package/lib/duet/{p-7f648a0c.entry.js → p-33aee1b2.entry.js} +1 -1
  248. package/lib/duet/{p-c166792a.entry.js → p-35b535e6.entry.js} +1 -1
  249. package/lib/duet/{p-149293ef.entry.js → p-35f67767.entry.js} +1 -1
  250. package/lib/duet/p-3ae36dbc.system.entry.js +4 -0
  251. package/lib/duet/{p-b4de62e6.system.entry.js → p-3b5f12b1.system.entry.js} +1 -1
  252. package/lib/duet/{p-7037c77e.entry.js → p-3c343f08.entry.js} +1 -1
  253. package/lib/duet/{p-8709dc97.system.entry.js → p-3cdaecea.system.entry.js} +1 -1
  254. package/lib/duet/p-3f2b9124.entry.js +4 -0
  255. package/lib/duet/{p-1d91892d.entry.js → p-43948a2e.entry.js} +1 -1
  256. package/lib/duet/{p-246255ec.system.entry.js → p-45663514.system.entry.js} +1 -1
  257. package/lib/duet/{p-af4699ec.entry.js → p-4577b323.entry.js} +1 -1
  258. package/lib/duet/{p-9dd980a4.system.entry.js → p-48bfd2b1.system.entry.js} +1 -1
  259. package/lib/duet/p-48f66cad.entry.js +4 -0
  260. package/lib/duet/{p-ff369c3f.entry.js → p-4cd1066d.entry.js} +1 -1
  261. package/lib/duet/p-4e605462.system.entry.js +4 -0
  262. package/lib/duet/{p-a60eb028.entry.js → p-4e866570.entry.js} +1 -1
  263. package/lib/duet/p-4e8f09d4.entry.js +4 -0
  264. package/lib/duet/{p-600e2390.system.entry.js → p-4f75a254.system.entry.js} +1 -1
  265. package/lib/duet/{p-4aa7c59a.entry.js → p-51b2ffe4.entry.js} +1 -1
  266. package/lib/duet/{p-c2bec9d7.system.entry.js → p-520c6ec6.system.entry.js} +1 -1
  267. package/lib/duet/{p-62d431bd.entry.js → p-536772a0.entry.js} +1 -1
  268. package/lib/duet/{p-987a29f7.system.entry.js → p-54bb7d48.system.entry.js} +1 -1
  269. package/lib/duet/{p-452f96ac.system.entry.js → p-56b72e22.system.entry.js} +1 -1
  270. package/lib/duet/p-571c8093.system.entry.js +4 -0
  271. package/lib/duet/{p-12331bec.entry.js → p-59202e2e.entry.js} +1 -1
  272. package/lib/duet/{p-9cb8ebf9.entry.js → p-5aa1eba8.entry.js} +1 -1
  273. package/lib/duet/{p-6753acd9.system.js → p-5c552efe.system.js} +1 -1
  274. package/lib/duet/p-6409cef7.system.entry.js +4 -0
  275. package/lib/duet/{p-2be78877.entry.js → p-64ddcf9f.entry.js} +1 -1
  276. package/lib/duet/{p-a1ea8dbc.system.entry.js → p-6698839e.system.entry.js} +1 -1
  277. package/lib/duet/{p-7dae10af.system.entry.js → p-6b061775.system.entry.js} +1 -1
  278. package/lib/duet/{p-e8ba077f.entry.js → p-6e882d53.entry.js} +1 -1
  279. package/lib/duet/{p-506e3596.system.entry.js → p-6f796f36.system.entry.js} +1 -1
  280. package/lib/duet/{p-756faa95.system.entry.js → p-708ee49e.system.entry.js} +1 -1
  281. package/lib/duet/p-7319f712.entry.js +4 -0
  282. package/lib/duet/p-735a1513.entry.js +4 -0
  283. package/lib/duet/p-75277343.system.entry.js +4 -0
  284. package/lib/duet/{p-5810de18.system.entry.js → p-75b59b7a.system.entry.js} +1 -1
  285. package/lib/duet/{p-0f85fb24.system.entry.js → p-7778edfa.system.entry.js} +1 -1
  286. package/lib/duet/{p-ef461e76.entry.js → p-7861d512.entry.js} +1 -1
  287. package/lib/duet/{p-0d3e49f1.system.entry.js → p-7cd1d6a4.system.entry.js} +1 -1
  288. package/lib/duet/{p-5329a6af.system.entry.js → p-815cb109.system.entry.js} +1 -1
  289. package/lib/duet/{p-4933732d.entry.js → p-84190f08.entry.js} +1 -1
  290. package/lib/duet/p-85a2945f.entry.js +4 -0
  291. package/lib/duet/{p-c396c20c.entry.js → p-85f9a268.entry.js} +1 -1
  292. package/lib/duet/p-871431ff.system.entry.js +4 -0
  293. package/lib/duet/{p-944f9dc6.system.entry.js → p-88fde141.system.entry.js} +1 -1
  294. package/lib/duet/{p-cf4c1bf7.system.entry.js → p-893be717.system.entry.js} +1 -1
  295. package/lib/duet/{p-061f115a.system.entry.js → p-8aaa7057.system.entry.js} +1 -1
  296. package/lib/duet/{p-91ba2ad0.system.entry.js → p-8af3c241.system.entry.js} +1 -1
  297. package/lib/duet/{p-d3d9744f.entry.js → p-8b8f6808.entry.js} +1 -1
  298. package/lib/duet/{p-bf276ba0.system.entry.js → p-8ef3d1bf.system.entry.js} +1 -1
  299. package/lib/duet/{p-26d73124.entry.js → p-94b4683e.entry.js} +1 -1
  300. package/lib/duet/{p-6db01063.entry.js → p-95dbb535.entry.js} +1 -1
  301. package/lib/duet/p-9934a9b7.system.entry.js +4 -0
  302. package/lib/duet/{p-7f3d9beb.entry.js → p-9a90e360.entry.js} +1 -1
  303. package/lib/duet/{p-6147b5c1.system.entry.js → p-9c10a3b6.system.entry.js} +1 -1
  304. package/lib/duet/{p-1b98c971.system.entry.js → p-9dc043a4.system.entry.js} +1 -1
  305. package/lib/duet/{p-d315b885.entry.js → p-a04825b6.entry.js} +1 -1
  306. package/lib/duet/{p-4c05c667.system.js → p-a16bb53f.system.js} +1 -1
  307. package/lib/duet/{p-0d60f277.entry.js → p-a1a2a08c.entry.js} +1 -1
  308. package/lib/duet/{p-7eeaa2cd.system.entry.js → p-a282ec97.system.entry.js} +1 -1
  309. package/lib/duet/{p-6632af03.system.entry.js → p-a37f10ab.system.entry.js} +1 -1
  310. package/lib/duet/p-a3d4d3d7.entry.js +4 -0
  311. package/lib/duet/{p-e690ea1b.entry.js → p-a3e54564.entry.js} +1 -1
  312. package/lib/duet/{p-690fd6d7.entry.js → p-a7b42887.entry.js} +1 -1
  313. package/lib/duet/{p-e2385ded.entry.js → p-a961faf1.entry.js} +1 -1
  314. package/lib/duet/{p-8e170437.system.entry.js → p-aadce56b.system.entry.js} +1 -1
  315. package/lib/duet/p-abc9f1e7.entry.js +4 -0
  316. package/lib/duet/{p-708dcb1a.system.entry.js → p-ad1f09f9.system.entry.js} +1 -1
  317. package/lib/duet/{p-7ba6cae4.entry.js → p-b1276330.entry.js} +1 -1
  318. package/lib/duet/{p-3d885c47.system.entry.js → p-b199b4eb.system.entry.js} +1 -1
  319. package/lib/duet/p-b3043173.system.js +4 -0
  320. package/lib/duet/p-b43cf00f.entry.js +4 -0
  321. package/lib/duet/{p-34a52a78.system.entry.js → p-b509d386.system.entry.js} +1 -1
  322. package/lib/duet/{p-f7dd8f95.system.entry.js → p-b5228293.system.entry.js} +1 -1
  323. package/lib/duet/{p-bbdaa69f.entry.js → p-b7c6292e.entry.js} +1 -1
  324. package/lib/duet/p-bbaf11d3.entry.js +4 -0
  325. package/lib/duet/{p-95933e43.entry.js → p-bdd627ee.entry.js} +1 -1
  326. package/lib/duet/{p-2dcb5ca0.entry.js → p-bfc8f79e.entry.js} +1 -1
  327. package/lib/duet/{p-3f2e2f0f.system.entry.js → p-c03b4a4a.system.entry.js} +1 -1
  328. package/lib/duet/{p-16902d92.system.entry.js → p-c75bd69d.system.entry.js} +1 -1
  329. package/lib/duet/{p-2dfe2ca3.system.entry.js → p-c87e9edd.system.entry.js} +1 -1
  330. package/lib/duet/{p-3e66fe1a.entry.js → p-cd152e23.entry.js} +1 -1
  331. package/lib/duet/{p-4b22281a.system.entry.js → p-cf6be1db.system.entry.js} +1 -1
  332. package/lib/duet/{p-d8e936ea.entry.js → p-d936157a.entry.js} +1 -1
  333. package/lib/duet/p-d9bc93bd.system.entry.js +4 -0
  334. package/lib/duet/p-df5ccf8f.system.entry.js +4 -0
  335. package/lib/duet/{p-0dc08238.entry.js → p-dff47f37.entry.js} +1 -1
  336. package/lib/duet/p-e288cc5b.entry.js +4 -0
  337. package/lib/duet/p-e298d114.system.entry.js +4 -0
  338. package/lib/duet/{p-d0135695.system.entry.js → p-e43baf68.system.entry.js} +1 -1
  339. package/lib/duet/{p-cb663d57.system.entry.js → p-e458540b.system.entry.js} +1 -1
  340. package/lib/duet/{p-49250aa9.system.entry.js → p-e8c31735.system.entry.js} +1 -1
  341. package/lib/duet/{p-99b58a7b.entry.js → p-ea3d82dd.entry.js} +1 -1
  342. package/lib/duet/{p-f52e12f8.entry.js → p-ec1996b5.entry.js} +1 -1
  343. package/lib/duet/{p-34f898f7.system.entry.js → p-ec2b9ae6.system.entry.js} +1 -1
  344. package/lib/duet/{p-46e56fed.entry.js → p-ef8796fa.entry.js} +1 -1
  345. package/lib/duet/{p-46e4b561.system.entry.js → p-f06285b1.system.entry.js} +1 -1
  346. package/lib/duet/{p-e165e825.system.entry.js → p-f1655fbc.system.entry.js} +1 -1
  347. package/lib/duet/{p-46acf642.system.entry.js → p-f22d96ae.system.entry.js} +1 -1
  348. package/lib/duet/{p-1d80e24a.system.entry.js → p-f3724701.system.entry.js} +2 -2
  349. package/lib/duet/{p-d75c51a6.js → p-f3d7745b.js} +1 -1
  350. package/lib/duet/{p-e45b703f.system.entry.js → p-f440000a.system.entry.js} +1 -1
  351. package/lib/duet/{p-85aa1013.system.entry.js → p-f46bd5fc.system.entry.js} +1 -1
  352. package/lib/duet/{p-7ac3a6e0.entry.js → p-f76fe5e7.entry.js} +1 -1
  353. package/lib/duet/{p-73fdf834.entry.js → p-fb197a80.entry.js} +1 -1
  354. package/lib/duet/p-fe591b9a.system.entry.js +4 -0
  355. package/lib/duet/{p-adc9d543.entry.js → p-ff4d2be5.entry.js} +1 -1
  356. package/lib/duet/p-ffa9caa9.entry.js +4 -0
  357. package/lib/esm/duet-action-button.entry.js +1 -1
  358. package/lib/esm/duet-alert.entry.js +1 -1
  359. package/lib/esm/duet-badge.entry.js +1 -1
  360. package/lib/esm/duet-breadcrumb.entry.js +1 -1
  361. package/lib/esm/duet-breadcrumbs.entry.js +1 -1
  362. package/lib/esm/duet-button_2.entry.js +1 -1
  363. package/lib/esm/duet-caption_4.entry.js +1 -1
  364. package/lib/esm/duet-card.entry.js +1 -1
  365. package/lib/esm/duet-checkbox.entry.js +1 -1
  366. package/lib/esm/duet-choice_2.entry.js +2 -2
  367. package/lib/esm/duet-collapsible.entry.js +1 -1
  368. package/lib/esm/duet-combobox.entry.js +1 -1
  369. package/lib/esm/duet-cookie-consent.entry.js +1 -1
  370. package/lib/esm/duet-date-picker.entry.js +2 -2
  371. package/lib/esm/duet-divider_2.entry.js +1 -1
  372. package/lib/esm/duet-editable-table_3.entry.js +1 -1
  373. package/lib/esm/duet-empty-state.entry.js +1 -1
  374. package/lib/esm/duet-fieldset.entry.js +1 -1
  375. package/lib/esm/duet-footer.entry.js +1 -1
  376. package/lib/esm/duet-grid_2.entry.js +1 -1
  377. package/lib/esm/duet-header_2.entry.js +1 -1
  378. package/lib/esm/duet-hero.entry.js +1 -1
  379. package/lib/esm/duet-icon.entry.js +1 -1
  380. package/lib/esm/duet-input_2.entry.js +1 -1
  381. package/lib/esm/duet-layout.entry.js +1 -1
  382. package/lib/esm/duet-list_2.entry.js +1 -1
  383. package/lib/esm/duet-menu-bar-dropdown-link.entry.js +1 -1
  384. package/lib/esm/duet-menu-bar-dropdown.entry.js +1 -1
  385. package/lib/esm/duet-menu-bar-link.entry.js +38 -3
  386. package/lib/esm/duet-menu-bar.entry.js +28 -3
  387. package/lib/esm/duet-modal.entry.js +2 -2
  388. package/lib/esm/duet-multiselect.entry.js +1 -1
  389. package/lib/esm/duet-nav.entry.js +3 -3
  390. package/lib/esm/duet-notification_2.entry.js +1 -1
  391. package/lib/esm/duet-number-input.entry.js +1 -1
  392. package/lib/esm/duet-pagination_2.entry.js +1 -1
  393. package/lib/esm/duet-progress.entry.js +1 -1
  394. package/lib/esm/duet-radio_2.entry.js +1 -1
  395. package/lib/esm/duet-range-slider.entry.js +1 -1
  396. package/lib/esm/duet-scrollable_3.entry.js +3 -2
  397. package/lib/esm/duet-section-layout.entry.js +1 -1
  398. package/lib/esm/duet-select.entry.js +1 -1
  399. package/lib/esm/duet-slideout-lang.entry.js +42 -0
  400. package/lib/esm/duet-slideout-link.entry.js +40 -0
  401. package/lib/esm/duet-slideout-panel-dropdown-link.entry.js +37 -0
  402. package/lib/esm/duet-slideout-panel-dropdown.entry.js +51 -0
  403. package/lib/esm/duet-slideout-panel-link.entry.js +37 -0
  404. package/lib/esm/duet-slideout-panel.entry.js +85 -0
  405. package/lib/esm/duet-slideout.entry.js +76 -0
  406. package/lib/esm/duet-step_2.entry.js +1 -1
  407. package/lib/esm/duet-submenu-bar-dropdown-link.entry.js +2 -2
  408. package/lib/esm/duet-submenu-bar-dropdown.entry.js +38 -3
  409. package/lib/esm/duet-submenu-bar-link.entry.js +38 -3
  410. package/lib/esm/duet-submenu-bar.entry.js +12 -3
  411. package/lib/esm/duet-textarea.entry.js +1 -1
  412. package/lib/esm/duet-toggle.entry.js +1 -1
  413. package/lib/esm/duet-toolbar-dropdown-link.entry.js +1 -1
  414. package/lib/esm/duet-toolbar-dropdown.entry.js +1 -1
  415. package/lib/esm/duet-toolbar-link.entry.js +1 -1
  416. package/lib/esm/duet-toolbar.entry.js +2 -2
  417. package/lib/esm/duet-tooltip.entry.js +1 -1
  418. package/lib/esm/duet-tray.entry.js +1 -1
  419. package/lib/esm/duet-upload-aria-status.entry.js +1 -1
  420. package/lib/esm/duet-visually-hidden.entry.js +1 -1
  421. package/lib/esm/duet.js +2 -2
  422. package/lib/esm/{focus-utils-c81ea33a.js → focus-utils-0c38feb6.js} +1 -1
  423. package/lib/esm/{index-ab069e8d.js → index-009e9860.js} +1 -1
  424. package/lib/esm/loader.js +2 -2
  425. package/lib/esm-es5/duet-action-button.entry.js +1 -1
  426. package/lib/esm-es5/duet-alert.entry.js +1 -1
  427. package/lib/esm-es5/duet-badge.entry.js +1 -1
  428. package/lib/esm-es5/duet-breadcrumb.entry.js +1 -1
  429. package/lib/esm-es5/duet-breadcrumbs.entry.js +1 -1
  430. package/lib/esm-es5/duet-button_2.entry.js +1 -1
  431. package/lib/esm-es5/duet-caption_4.entry.js +1 -1
  432. package/lib/esm-es5/duet-card.entry.js +1 -1
  433. package/lib/esm-es5/duet-checkbox.entry.js +1 -1
  434. package/lib/esm-es5/duet-choice_2.entry.js +2 -2
  435. package/lib/esm-es5/duet-collapsible.entry.js +1 -1
  436. package/lib/esm-es5/duet-combobox.entry.js +1 -1
  437. package/lib/esm-es5/duet-cookie-consent.entry.js +1 -1
  438. package/lib/esm-es5/duet-date-picker.entry.js +1 -1
  439. package/lib/esm-es5/duet-divider_2.entry.js +1 -1
  440. package/lib/esm-es5/duet-editable-table_3.entry.js +1 -1
  441. package/lib/esm-es5/duet-empty-state.entry.js +1 -1
  442. package/lib/esm-es5/duet-fieldset.entry.js +1 -1
  443. package/lib/esm-es5/duet-footer.entry.js +1 -1
  444. package/lib/esm-es5/duet-grid_2.entry.js +1 -1
  445. package/lib/esm-es5/duet-header_2.entry.js +1 -1
  446. package/lib/esm-es5/duet-hero.entry.js +1 -1
  447. package/lib/esm-es5/duet-icon.entry.js +1 -1
  448. package/lib/esm-es5/duet-input_2.entry.js +1 -1
  449. package/lib/esm-es5/duet-layout.entry.js +1 -1
  450. package/lib/esm-es5/duet-list_2.entry.js +1 -1
  451. package/lib/esm-es5/duet-menu-bar-dropdown-link.entry.js +1 -1
  452. package/lib/esm-es5/duet-menu-bar-dropdown.entry.js +1 -1
  453. package/lib/esm-es5/duet-menu-bar-link.entry.js +1 -1
  454. package/lib/esm-es5/duet-menu-bar.entry.js +1 -1
  455. package/lib/esm-es5/duet-modal.entry.js +2 -2
  456. package/lib/esm-es5/duet-multiselect.entry.js +1 -1
  457. package/lib/esm-es5/duet-nav.entry.js +1 -1
  458. package/lib/esm-es5/duet-notification_2.entry.js +1 -1
  459. package/lib/esm-es5/duet-number-input.entry.js +2 -2
  460. package/lib/esm-es5/duet-pagination_2.entry.js +1 -1
  461. package/lib/esm-es5/duet-progress.entry.js +1 -1
  462. package/lib/esm-es5/duet-radio_2.entry.js +1 -1
  463. package/lib/esm-es5/duet-range-slider.entry.js +1 -1
  464. package/lib/esm-es5/duet-scrollable_3.entry.js +2 -2
  465. package/lib/esm-es5/duet-section-layout.entry.js +1 -1
  466. package/lib/esm-es5/duet-select.entry.js +1 -1
  467. package/lib/esm-es5/duet-slideout-lang.entry.js +4 -0
  468. package/lib/esm-es5/duet-slideout-link.entry.js +4 -0
  469. package/lib/esm-es5/duet-slideout-panel-dropdown-link.entry.js +4 -0
  470. package/lib/esm-es5/duet-slideout-panel-dropdown.entry.js +4 -0
  471. package/lib/esm-es5/duet-slideout-panel-link.entry.js +4 -0
  472. package/lib/esm-es5/duet-slideout-panel.entry.js +4 -0
  473. package/lib/esm-es5/duet-slideout.entry.js +4 -0
  474. package/lib/esm-es5/duet-step_2.entry.js +1 -1
  475. package/lib/esm-es5/duet-submenu-bar-dropdown-link.entry.js +1 -1
  476. package/lib/esm-es5/duet-submenu-bar-dropdown.entry.js +1 -1
  477. package/lib/esm-es5/duet-submenu-bar-link.entry.js +1 -1
  478. package/lib/esm-es5/duet-submenu-bar.entry.js +1 -1
  479. package/lib/esm-es5/duet-textarea.entry.js +1 -1
  480. package/lib/esm-es5/duet-toggle.entry.js +1 -1
  481. package/lib/esm-es5/duet-toolbar-dropdown-link.entry.js +1 -1
  482. package/lib/esm-es5/duet-toolbar-dropdown.entry.js +1 -1
  483. package/lib/esm-es5/duet-toolbar-link.entry.js +1 -1
  484. package/lib/esm-es5/duet-toolbar.entry.js +1 -1
  485. package/lib/esm-es5/duet-tooltip.entry.js +1 -1
  486. package/lib/esm-es5/duet-tray.entry.js +1 -1
  487. package/lib/esm-es5/duet-upload-aria-status.entry.js +1 -1
  488. package/lib/esm-es5/duet-visually-hidden.entry.js +1 -1
  489. package/lib/esm-es5/duet.js +1 -1
  490. package/lib/esm-es5/{focus-utils-c81ea33a.js → focus-utils-0c38feb6.js} +1 -1
  491. package/lib/esm-es5/{index-ab069e8d.js → index-009e9860.js} +1 -1
  492. package/lib/esm-es5/loader.js +1 -1
  493. package/lib/types/components/duet-menu-bar/duet-menu-bar.d.ts +10 -0
  494. package/lib/types/components/duet-menu-bar-link/duet-menu-bar-link.d.ts +7 -0
  495. package/lib/types/components/duet-slideout/duet-slideout.d.ts +51 -0
  496. package/lib/types/components/duet-slideout-lang/duet-slideout-lang.d.ts +25 -0
  497. package/lib/types/components/duet-slideout-link/duet-slideout-link.d.ts +40 -0
  498. package/lib/types/components/duet-slideout-panel/duet-slideout-panel.d.ts +43 -0
  499. package/lib/types/components/duet-slideout-panel-dropdown/duet-slideout-panel-dropdown.d.ts +34 -0
  500. package/lib/types/components/duet-slideout-panel-dropdown-link/duet-slideout-panel-dropdown-link.d.ts +36 -0
  501. package/lib/types/components/duet-slideout-panel-link/duet-slideout-panel-link.d.ts +36 -0
  502. package/lib/types/components/duet-submenu-bar/duet-submenu-bar.d.ts +5 -0
  503. package/lib/types/components/duet-submenu-bar-dropdown/duet-submenu-bar-dropdown.d.ts +7 -0
  504. package/lib/types/components/duet-submenu-bar-link/duet-submenu-bar-link.d.ts +7 -0
  505. package/lib/types/components/duet-tab-group/duet-tab-group.d.ts +5 -1
  506. package/lib/types/components.d.ts +312 -0
  507. package/package.json +5 -5
  508. package/lib/duet/p-2a8e5da6.system.entry.js +0 -4
  509. package/lib/duet/p-2de903ee.system.entry.js +0 -4
  510. package/lib/duet/p-3f055c40.entry.js +0 -4
  511. package/lib/duet/p-475d1bc7.entry.js +0 -4
  512. package/lib/duet/p-596eb569.entry.js +0 -4
  513. package/lib/duet/p-683d1434.entry.js +0 -4
  514. package/lib/duet/p-80469fdd.entry.js +0 -4
  515. package/lib/duet/p-87e2687c.system.entry.js +0 -4
  516. package/lib/duet/p-87f272ca.entry.js +0 -4
  517. package/lib/duet/p-8a57aaec.system.js +0 -4
  518. package/lib/duet/p-9760be33.entry.js +0 -4
  519. package/lib/duet/p-9ccad140.system.entry.js +0 -4
  520. package/lib/duet/p-acd9f501.system.entry.js +0 -4
  521. package/lib/duet/p-b3ee05d3.system.entry.js +0 -4
  522. package/lib/duet/p-b636c691.system.entry.js +0 -4
  523. package/lib/duet/p-cbc2318e.entry.js +0 -4
  524. package/lib/duet/p-e0711e9e.system.entry.js +0 -4
@@ -0,0 +1,55 @@
1
+ *,
2
+ *::after,
3
+ *::before {
4
+ box-sizing: border-box;
5
+ padding: 0;
6
+ margin: 0;
7
+ background: transparent;
8
+ border: 0;
9
+ -moz-appearance: none;
10
+ -webkit-appearance: none;
11
+ appearance: none;
12
+ }
13
+
14
+ :host {
15
+ box-sizing: border-box;
16
+ padding: 0;
17
+ margin: 0;
18
+ background: transparent;
19
+ border: 0;
20
+ -moz-appearance: none;
21
+ -webkit-appearance: none;
22
+ appearance: none;
23
+ }
24
+
25
+ .duet-slideout-lang {
26
+ display: flex;
27
+ gap: 20px;
28
+ align-items: center;
29
+ justify-content: flex-start;
30
+ }
31
+
32
+ ::slotted(*) {
33
+ position: relative;
34
+ }
35
+
36
+ ::slotted(:not(:first-child)) {
37
+ padding-right: 0;
38
+ padding-left: 0.5rem;
39
+ }
40
+
41
+ ::slotted(:not(:last-child))::after {
42
+ position: absolute;
43
+ top: 15%;
44
+ right: -16px;
45
+ font-family: "localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
46
+ font-size: 16px;
47
+ font-weight: 600;
48
+ line-height: 150%;
49
+ color: #00294d;
50
+ content: "|";
51
+ }
52
+
53
+ .duet-theme-turva ::slotted(:not(:last-child))::after {
54
+ color: #171c3a;
55
+ }
@@ -0,0 +1,73 @@
1
+ /*!
2
+ * Built with Duet Design System
3
+ */
4
+ import { h, Host } from "@stencil/core";
5
+ import { inheritGlobalTheme } from "../../common/themeable-component";
6
+ import { getLocaleString } from "../../utils/language-utils";
7
+ export class DuetSlideoutLang {
8
+ constructor() {
9
+ /**
10
+ * Own Properties.
11
+ */
12
+ this.chooseLangObject = {
13
+ en: "Choose language",
14
+ fi: "Valitse kieli",
15
+ sv: "Välj språk",
16
+ };
17
+ this.theme = "";
18
+ }
19
+ /**
20
+ * Component lifecycle events.
21
+ */
22
+ componentWillLoad() {
23
+ inheritGlobalTheme(this);
24
+ }
25
+ /**
26
+ * render() function
27
+ * Always the last one in the class.
28
+ */
29
+ render() {
30
+ const langTranslation = getLocaleString(this.chooseLangObject);
31
+ return (h(Host, null, h("div", { class: "duet-slideout-lang" }, h("duet-visually-hidden", null, langTranslation), h("duet-icon", { name: "navigation-language", margin: "none" }), h("slot", null))));
32
+ }
33
+ static get is() { return "duet-slideout-lang"; }
34
+ static get encapsulation() { return "shadow"; }
35
+ static get originalStyleUrls() {
36
+ return {
37
+ "$": ["duet-slideout-lang.scss"]
38
+ };
39
+ }
40
+ static get styleUrls() {
41
+ return {
42
+ "$": ["duet-slideout-lang.css"]
43
+ };
44
+ }
45
+ static get properties() {
46
+ return {
47
+ "theme": {
48
+ "type": "string",
49
+ "mutable": true,
50
+ "complexType": {
51
+ "original": "DuetTheme",
52
+ "resolved": "\"\" | \"default\" | \"turva\"",
53
+ "references": {
54
+ "DuetTheme": {
55
+ "location": "import",
56
+ "path": "../../common-types"
57
+ }
58
+ }
59
+ },
60
+ "required": false,
61
+ "optional": false,
62
+ "docs": {
63
+ "tags": [],
64
+ "text": "Theme."
65
+ },
66
+ "attribute": "theme",
67
+ "reflect": false,
68
+ "defaultValue": "\"\""
69
+ }
70
+ };
71
+ }
72
+ static get elementRef() { return "element"; }
73
+ }
@@ -0,0 +1,78 @@
1
+ *,
2
+ *::after,
3
+ *::before {
4
+ box-sizing: border-box;
5
+ padding: 0;
6
+ margin: 0;
7
+ background: transparent;
8
+ border: 0;
9
+ -moz-appearance: none;
10
+ -webkit-appearance: none;
11
+ appearance: none;
12
+ }
13
+
14
+ :host {
15
+ box-sizing: border-box;
16
+ padding: 0;
17
+ margin: 0;
18
+ background: transparent;
19
+ border: 0;
20
+ -moz-appearance: none;
21
+ -webkit-appearance: none;
22
+ appearance: none;
23
+ height: 100%;
24
+ }
25
+
26
+ .duet-slideout-link {
27
+ position: relative;
28
+ display: flex;
29
+ gap: 20px;
30
+ align-items: center;
31
+ justify-content: flex-start;
32
+ width: 100%;
33
+ height: 100%;
34
+ padding: 8px 0;
35
+ font-family: "localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
36
+ line-height: 1.25;
37
+ color: #00294d;
38
+ text-align: center;
39
+ text-decoration: none;
40
+ }
41
+ .duet-slideout-link.duet-theme-turva {
42
+ font-family: "turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
43
+ color: #940925;
44
+ }
45
+ .duet-slideout-link.active span {
46
+ position: relative;
47
+ }
48
+ .duet-slideout-link.active span::after {
49
+ position: absolute;
50
+ top: auto;
51
+ bottom: 0;
52
+ left: 0;
53
+ display: block;
54
+ width: 100%;
55
+ height: 2px;
56
+ content: "";
57
+ background: #0077b3;
58
+ transform: translateY(2px);
59
+ }
60
+ .duet-slideout-link.active.duet-theme-turva span::after {
61
+ background: #c60c30;
62
+ }
63
+ .duet-slideout-link.small {
64
+ font-size: 1rem;
65
+ font-weight: 600;
66
+ }
67
+ .duet-slideout-link.small span::after {
68
+ height: 1px;
69
+ transform: translateY(1px);
70
+ }
71
+ .duet-slideout-link.medium {
72
+ font-size: 1.25rem;
73
+ font-weight: 600;
74
+ }
75
+ .duet-slideout-link.large {
76
+ font-size: 1.5rem;
77
+ font-weight: 800;
78
+ }
@@ -0,0 +1,144 @@
1
+ /*!
2
+ * Built with Duet Design System
3
+ */
4
+ import { h, Host } from "@stencil/core";
5
+ import { inheritGlobalTheme } from "../../common/themeable-component";
6
+ export class DuetSlideoutLink {
7
+ constructor() {
8
+ this.theme = "";
9
+ this.active = false;
10
+ this.href = "#";
11
+ this.icon = undefined;
12
+ this.size = "medium";
13
+ }
14
+ /**
15
+ * Component lifecycle events.
16
+ */
17
+ componentWillLoad() {
18
+ inheritGlobalTheme(this);
19
+ }
20
+ /**
21
+ * render() function
22
+ * Always the last one in the class.
23
+ */
24
+ render() {
25
+ return (h(Host, null, h("a", { class: {
26
+ "duet-slideout-link": true,
27
+ "duet-theme-turva": this.theme === "turva",
28
+ active: this.active,
29
+ [this.size]: true,
30
+ }, href: this.href }, this.icon && h("duet-icon", { size: "medium", name: this.icon, margin: "none" }), h("span", null, h("slot", null)))));
31
+ }
32
+ static get is() { return "duet-slideout-link"; }
33
+ static get encapsulation() { return "shadow"; }
34
+ static get originalStyleUrls() {
35
+ return {
36
+ "$": ["duet-slideout-link.scss"]
37
+ };
38
+ }
39
+ static get styleUrls() {
40
+ return {
41
+ "$": ["duet-slideout-link.css"]
42
+ };
43
+ }
44
+ static get properties() {
45
+ return {
46
+ "theme": {
47
+ "type": "string",
48
+ "mutable": true,
49
+ "complexType": {
50
+ "original": "DuetTheme",
51
+ "resolved": "\"\" | \"default\" | \"turva\"",
52
+ "references": {
53
+ "DuetTheme": {
54
+ "location": "import",
55
+ "path": "../../common-types"
56
+ }
57
+ }
58
+ },
59
+ "required": false,
60
+ "optional": false,
61
+ "docs": {
62
+ "tags": [],
63
+ "text": "Theme."
64
+ },
65
+ "attribute": "theme",
66
+ "reflect": false,
67
+ "defaultValue": "\"\""
68
+ },
69
+ "active": {
70
+ "type": "boolean",
71
+ "mutable": true,
72
+ "complexType": {
73
+ "original": "boolean",
74
+ "resolved": "boolean",
75
+ "references": {}
76
+ },
77
+ "required": false,
78
+ "optional": false,
79
+ "docs": {
80
+ "tags": [],
81
+ "text": "Active"
82
+ },
83
+ "attribute": "active",
84
+ "reflect": false,
85
+ "defaultValue": "false"
86
+ },
87
+ "href": {
88
+ "type": "string",
89
+ "mutable": true,
90
+ "complexType": {
91
+ "original": "string",
92
+ "resolved": "string",
93
+ "references": {}
94
+ },
95
+ "required": false,
96
+ "optional": false,
97
+ "docs": {
98
+ "tags": [],
99
+ "text": "Href"
100
+ },
101
+ "attribute": "href",
102
+ "reflect": false,
103
+ "defaultValue": "\"#\""
104
+ },
105
+ "icon": {
106
+ "type": "string",
107
+ "mutable": true,
108
+ "complexType": {
109
+ "original": "string",
110
+ "resolved": "string",
111
+ "references": {}
112
+ },
113
+ "required": false,
114
+ "optional": false,
115
+ "docs": {
116
+ "tags": [],
117
+ "text": "Icon"
118
+ },
119
+ "attribute": "icon",
120
+ "reflect": true,
121
+ "defaultValue": "undefined"
122
+ },
123
+ "size": {
124
+ "type": "string",
125
+ "mutable": true,
126
+ "complexType": {
127
+ "original": "string",
128
+ "resolved": "string",
129
+ "references": {}
130
+ },
131
+ "required": false,
132
+ "optional": false,
133
+ "docs": {
134
+ "tags": [],
135
+ "text": "Size. Small, medium or large."
136
+ },
137
+ "attribute": "size",
138
+ "reflect": true,
139
+ "defaultValue": "\"medium\""
140
+ }
141
+ };
142
+ }
143
+ static get elementRef() { return "element"; }
144
+ }
@@ -0,0 +1,149 @@
1
+ *,
2
+ *::after,
3
+ *::before {
4
+ box-sizing: border-box;
5
+ padding: 0;
6
+ margin: 0;
7
+ background: transparent;
8
+ border: 0;
9
+ -moz-appearance: none;
10
+ -webkit-appearance: none;
11
+ appearance: none;
12
+ }
13
+
14
+ :host {
15
+ box-sizing: border-box;
16
+ padding: 0;
17
+ margin: 0;
18
+ background: transparent;
19
+ border: 0;
20
+ -moz-appearance: none;
21
+ -webkit-appearance: none;
22
+ appearance: none;
23
+ height: 100%;
24
+ }
25
+
26
+ :host slot::slotted(duet-slideout-panel-dropdown),
27
+ :host slot::slotted(duet-slideout-panel-link) {
28
+ position: relative;
29
+ top: 0.5rem;
30
+ opacity: 0;
31
+ transition: top 0.3s ease-in, opacity 0.3s ease-in;
32
+ }
33
+
34
+ :host([open]) slot::slotted(duet-slideout-panel-link),
35
+ :host([open]) slot::slotted(duet-slideout-panel-dropdown) {
36
+ top: 0;
37
+ opacity: 1;
38
+ }
39
+
40
+ .duet-slideout-panel {
41
+ position: relative;
42
+ height: 100%;
43
+ }
44
+ .duet-slideout-panel .link {
45
+ position: relative;
46
+ display: flex;
47
+ gap: 8px;
48
+ align-items: center;
49
+ justify-content: flex-start;
50
+ width: 100%;
51
+ height: 100%;
52
+ padding: 8px 0;
53
+ font-family: "localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
54
+ font-size: 1.5rem;
55
+ font-weight: 800;
56
+ line-height: 1.25;
57
+ color: #00294d;
58
+ text-align: center;
59
+ text-decoration: none;
60
+ cursor: pointer;
61
+ }
62
+ .duet-slideout-panel .link .label {
63
+ display: flex;
64
+ gap: 0.5rem;
65
+ align-items: center;
66
+ justify-content: space-between;
67
+ width: 100%;
68
+ }
69
+ .duet-slideout-panel .link.active .label-text {
70
+ position: relative;
71
+ }
72
+ .duet-slideout-panel .link.active .label-text::after {
73
+ position: absolute;
74
+ top: auto;
75
+ bottom: 0;
76
+ left: 0;
77
+ display: block;
78
+ width: 100%;
79
+ height: 2px;
80
+ content: "";
81
+ background: #0077b3;
82
+ transform: translateY(2px);
83
+ }
84
+ .duet-slideout-panel .dialog {
85
+ position: fixed;
86
+ top: 0;
87
+ left: 0;
88
+ z-index: 600;
89
+ width: 100%;
90
+ height: 100%;
91
+ overflow-y: auto;
92
+ visibility: visible;
93
+ background: #f3f9fc;
94
+ }
95
+ .duet-slideout-panel .dialog.hidden {
96
+ visibility: hidden;
97
+ }
98
+ .duet-slideout-panel .dialog.hidden .top .back,
99
+ .duet-slideout-panel .dialog.hidden .top span {
100
+ opacity: 0;
101
+ }
102
+ .duet-slideout-panel .top {
103
+ display: flex;
104
+ align-items: center;
105
+ justify-content: space-between;
106
+ padding: 4px;
107
+ }
108
+ .duet-slideout-panel .top .back {
109
+ opacity: 1;
110
+ transition: top 0.3s ease-in, opacity 0.3s ease-in;
111
+ }
112
+ .duet-slideout-panel .top duet-icon {
113
+ padding: 16px;
114
+ }
115
+ .duet-slideout-panel .top span {
116
+ font-family: "localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
117
+ font-size: 1rem;
118
+ font-weight: 600;
119
+ line-height: 1.5;
120
+ color: #00294d;
121
+ opacity: 1;
122
+ transition: top 0.3s ease-in, opacity 0.3s ease-in;
123
+ }
124
+ .duet-slideout-panel .items {
125
+ display: flex;
126
+ flex-direction: column;
127
+ align-items: flex-start;
128
+ justify-content: flex-start;
129
+ padding: 1rem 16px;
130
+ overflow-y: auto;
131
+ color: #00294d;
132
+ }
133
+ .duet-slideout-panel.duet-theme-turva .link {
134
+ font-family: "turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
135
+ color: #940925;
136
+ }
137
+ .duet-slideout-panel.duet-theme-turva .link.active .label-text::after {
138
+ background: #c60c30;
139
+ }
140
+ .duet-slideout-panel.duet-theme-turva .dialog {
141
+ background: #f5f5f7;
142
+ }
143
+ .duet-slideout-panel.duet-theme-turva .top span {
144
+ font-family: "turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
145
+ color: #171c3a;
146
+ }
147
+ .duet-slideout-panel.duet-theme-turva .items {
148
+ background: #f5f5f7;
149
+ }
@@ -0,0 +1,175 @@
1
+ /*!
2
+ * Built with Duet Design System
3
+ */
4
+ import { h, Host } from "@stencil/core";
5
+ import { inheritGlobalTheme } from "../../common/themeable-component";
6
+ import { FocusGuard } from "../../utils/focus-utils";
7
+ import { getLocaleString } from "../../utils/language-utils";
8
+ export class DuetSlideoutPanel {
9
+ constructor() {
10
+ this.exitLangObject = {
11
+ en: "Exit the dialog",
12
+ fi: "Poistu dialogista",
13
+ sv: "Stäng dialogrutan",
14
+ };
15
+ this.updateLabel = () => {
16
+ const labelSlotElement = this.element.querySelector("[slot='label']");
17
+ this.label = labelSlotElement;
18
+ };
19
+ this.onToggleClick = () => {
20
+ const toggle = !this.open;
21
+ this.open = toggle;
22
+ if (toggle) {
23
+ setTimeout(() => {
24
+ this.closeButton.focus();
25
+ }, 200);
26
+ }
27
+ else {
28
+ setTimeout(() => {
29
+ this.openButton.focus();
30
+ }, 200);
31
+ }
32
+ };
33
+ this.onCloseClick = () => {
34
+ this.open = false;
35
+ const parentElement = this.element.parentElement;
36
+ if (parentElement.tagName === "DUET-SLIDEOUT") {
37
+ const slideout = this.element.parentElement;
38
+ slideout.toggle();
39
+ }
40
+ };
41
+ this.label = undefined;
42
+ this.theme = "";
43
+ this.active = false;
44
+ this.open = false;
45
+ this.icon = undefined;
46
+ }
47
+ /**
48
+ * Component lifecycle events.
49
+ */
50
+ componentWillLoad() {
51
+ inheritGlobalTheme(this);
52
+ this.updateLabel();
53
+ }
54
+ /**
55
+ * render() function
56
+ * Always the last one in the class.
57
+ */
58
+ render() {
59
+ const exitTranslation = getLocaleString(this.exitLangObject);
60
+ return (h(Host, null, h("div", { class: {
61
+ "duet-slideout-panel": true,
62
+ "duet-theme-turva": this.theme === "turva",
63
+ active: this.open,
64
+ } }, h("button", { ref: element => (this.openButton = element), "aria-haspopup": "menu", "aria-controls": "menu", "aria-expanded": this.open ? "true" : "false", id: "button", type: "button", class: {
65
+ link: true,
66
+ active: this.active,
67
+ }, onClick: this.onToggleClick }, this.icon && h("duet-icon", { name: this.icon, size: "x-small", margin: "none" }), h("div", { class: "label" }, h("span", { class: "label-text" }, h("slot", { name: "label" })), h("duet-icon", { class: "caret", name: "action-arrow-right", margin: "none", size: "x-small" }))), h("div", { class: {
68
+ dialog: true,
69
+ hidden: !this.open,
70
+ } }, h(FocusGuard, { moveFocusTo: this.closeButton }), h("div", { class: "top" }, h("button", { ref: element => (this.closeButton = element), "aria-haspopup": "menu", "aria-controls": "menu", "aria-expanded": this.open ? "true" : "false", type: "button", class: {
71
+ back: true,
72
+ }, onClick: this.onToggleClick }, h("duet-icon", { class: "caret", name: "action-arrow-left", margin: "none", size: "small" })), h("span", null, this.label.innerHTML), h("button", { type: "button", onClick: this.onCloseClick, "aria-label": `${exitTranslation}` }, h("duet-icon", { name: "navigation-close", size: "small", margin: "none" }))), h("div", { tabindex: "-1", role: "menu", id: "menu", "aria-labelledby": "button", class: {
73
+ items: true,
74
+ } }, h("slot", null)), h(FocusGuard, { moveFocusTo: this.closeButton })))));
75
+ }
76
+ static get is() { return "duet-slideout-panel"; }
77
+ static get encapsulation() { return "shadow"; }
78
+ static get originalStyleUrls() {
79
+ return {
80
+ "$": ["duet-slideout-panel.scss"]
81
+ };
82
+ }
83
+ static get styleUrls() {
84
+ return {
85
+ "$": ["duet-slideout-panel.css"]
86
+ };
87
+ }
88
+ static get properties() {
89
+ return {
90
+ "theme": {
91
+ "type": "string",
92
+ "mutable": true,
93
+ "complexType": {
94
+ "original": "DuetTheme",
95
+ "resolved": "\"\" | \"default\" | \"turva\"",
96
+ "references": {
97
+ "DuetTheme": {
98
+ "location": "import",
99
+ "path": "../../common-types"
100
+ }
101
+ }
102
+ },
103
+ "required": false,
104
+ "optional": false,
105
+ "docs": {
106
+ "tags": [],
107
+ "text": "Theme."
108
+ },
109
+ "attribute": "theme",
110
+ "reflect": false,
111
+ "defaultValue": "\"\""
112
+ },
113
+ "active": {
114
+ "type": "boolean",
115
+ "mutable": true,
116
+ "complexType": {
117
+ "original": "boolean",
118
+ "resolved": "boolean",
119
+ "references": {}
120
+ },
121
+ "required": false,
122
+ "optional": false,
123
+ "docs": {
124
+ "tags": [],
125
+ "text": "Active"
126
+ },
127
+ "attribute": "active",
128
+ "reflect": true,
129
+ "defaultValue": "false"
130
+ },
131
+ "open": {
132
+ "type": "boolean",
133
+ "mutable": true,
134
+ "complexType": {
135
+ "original": "boolean",
136
+ "resolved": "boolean",
137
+ "references": {}
138
+ },
139
+ "required": false,
140
+ "optional": false,
141
+ "docs": {
142
+ "tags": [],
143
+ "text": "Open"
144
+ },
145
+ "attribute": "open",
146
+ "reflect": true,
147
+ "defaultValue": "false"
148
+ },
149
+ "icon": {
150
+ "type": "string",
151
+ "mutable": true,
152
+ "complexType": {
153
+ "original": "string",
154
+ "resolved": "string",
155
+ "references": {}
156
+ },
157
+ "required": false,
158
+ "optional": false,
159
+ "docs": {
160
+ "tags": [],
161
+ "text": "Icon"
162
+ },
163
+ "attribute": "icon",
164
+ "reflect": true,
165
+ "defaultValue": "undefined"
166
+ }
167
+ };
168
+ }
169
+ static get states() {
170
+ return {
171
+ "label": {}
172
+ };
173
+ }
174
+ static get elementRef() { return "element"; }
175
+ }