@scania/tegel 0.0.34 → 0.0.52

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 (846) hide show
  1. package/dist/cjs/{index-aff9d4d5.js → index-5ad19933.js} +60 -99
  2. package/dist/cjs/index-5ad19933.js.map +1 -0
  3. package/dist/cjs/loader.cjs.js +2 -2
  4. package/dist/cjs/sdds-accordion-item.cjs.entry.js +1 -1
  5. package/dist/cjs/sdds-accordion.cjs.entry.js +2 -3
  6. package/dist/cjs/sdds-accordion.cjs.entry.js.map +1 -1
  7. package/dist/cjs/sdds-badges.cjs.entry.js +1 -1
  8. package/dist/cjs/sdds-banner.cjs.entry.js +8 -8
  9. package/dist/cjs/sdds-banner.cjs.entry.js.map +1 -1
  10. package/dist/cjs/sdds-block.cjs.entry.js +1 -1
  11. package/dist/cjs/sdds-body-cell_2.cjs.entry.js +13 -13
  12. package/dist/cjs/sdds-body-cell_2.cjs.entry.js.map +1 -1
  13. package/dist/cjs/sdds-breadcrumb-link.cjs.entry.js +27 -0
  14. package/dist/cjs/sdds-breadcrumb-link.cjs.entry.js.map +1 -0
  15. package/dist/cjs/sdds-breadcrumb.cjs.entry.js +5 -5
  16. package/dist/cjs/sdds-breadcrumb.cjs.entry.js.map +1 -1
  17. package/dist/cjs/sdds-button.cjs.entry.js +2 -2
  18. package/dist/cjs/sdds-button.cjs.entry.js.map +1 -1
  19. package/dist/cjs/sdds-card.cjs.entry.js +2 -2
  20. package/dist/cjs/sdds-card.cjs.entry.js.map +1 -1
  21. package/dist/cjs/sdds-checkbox.cjs.entry.js +3 -3
  22. package/dist/cjs/sdds-checkbox.cjs.entry.js.map +1 -1
  23. package/dist/cjs/sdds-datetime.cjs.entry.js +15 -6
  24. package/dist/cjs/sdds-datetime.cjs.entry.js.map +1 -1
  25. package/dist/cjs/sdds-divider.cjs.entry.js +22 -0
  26. package/dist/cjs/sdds-divider.cjs.entry.js.map +1 -0
  27. package/dist/cjs/sdds-dropdown-filter.cjs.entry.js +10 -7
  28. package/dist/cjs/sdds-dropdown-filter.cjs.entry.js.map +1 -1
  29. package/dist/cjs/sdds-dropdown_2.cjs.entry.js +20 -20
  30. package/dist/cjs/sdds-dropdown_2.cjs.entry.js.map +1 -1
  31. package/dist/cjs/sdds-folder-tabs-button.cjs.entry.js +29 -0
  32. package/dist/cjs/sdds-folder-tabs-button.cjs.entry.js.map +1 -0
  33. package/dist/cjs/sdds-folder-tabs-link.cjs.entry.js +34 -0
  34. package/dist/cjs/sdds-folder-tabs-link.cjs.entry.js.map +1 -0
  35. package/dist/cjs/sdds-folder-tabs.cjs.entry.js +180 -0
  36. package/dist/cjs/sdds-folder-tabs.cjs.entry.js.map +1 -0
  37. package/dist/cjs/sdds-footer-link-group.cjs.entry.js +36 -0
  38. package/dist/cjs/sdds-footer-link-group.cjs.entry.js.map +1 -0
  39. package/dist/cjs/sdds-footer-link.cjs.entry.js +29 -0
  40. package/dist/cjs/sdds-footer-link.cjs.entry.js.map +1 -0
  41. package/dist/cjs/sdds-footer.cjs.entry.js +28 -0
  42. package/dist/cjs/sdds-footer.cjs.entry.js.map +1 -0
  43. package/dist/cjs/sdds-header-cell.cjs.entry.js +9 -13
  44. package/dist/cjs/sdds-header-cell.cjs.entry.js.map +1 -1
  45. package/dist/cjs/sdds-icon.cjs.entry.js +3 -2
  46. package/dist/cjs/sdds-icon.cjs.entry.js.map +1 -1
  47. package/dist/cjs/sdds-inline-tabs-button.cjs.entry.js +24 -0
  48. package/dist/cjs/sdds-inline-tabs-button.cjs.entry.js.map +1 -0
  49. package/dist/cjs/sdds-inline-tabs-link.cjs.entry.js +29 -0
  50. package/dist/cjs/sdds-inline-tabs-link.cjs.entry.js.map +1 -0
  51. package/dist/cjs/sdds-inline-tabs.cjs.entry.js +113 -148
  52. package/dist/cjs/sdds-inline-tabs.cjs.entry.js.map +1 -1
  53. package/dist/cjs/sdds-link.cjs.entry.js +1 -1
  54. package/dist/cjs/sdds-message.cjs.entry.js +1 -1
  55. package/dist/cjs/sdds-modal.cjs.entry.js +67 -22
  56. package/dist/cjs/sdds-modal.cjs.entry.js.map +1 -1
  57. package/dist/cjs/sdds-navigation-tabs-button.cjs.entry.js +24 -0
  58. package/dist/cjs/sdds-navigation-tabs-button.cjs.entry.js.map +1 -0
  59. package/dist/cjs/sdds-navigation-tabs-link.cjs.entry.js +29 -0
  60. package/dist/cjs/sdds-navigation-tabs-link.cjs.entry.js.map +1 -0
  61. package/dist/cjs/sdds-navigation-tabs.cjs.entry.js +69 -24
  62. package/dist/cjs/sdds-navigation-tabs.cjs.entry.js.map +1 -1
  63. package/dist/cjs/sdds-popover-canvas.cjs.entry.js +68 -41
  64. package/dist/cjs/sdds-popover-canvas.cjs.entry.js.map +1 -1
  65. package/dist/cjs/sdds-popover-menu.cjs.entry.js +1 -1
  66. package/dist/cjs/sdds-radio-button.cjs.entry.js +7 -3
  67. package/dist/cjs/sdds-radio-button.cjs.entry.js.map +1 -1
  68. package/dist/cjs/sdds-slider.cjs.entry.js +17 -17
  69. package/dist/cjs/sdds-slider.cjs.entry.js.map +1 -1
  70. package/dist/cjs/sdds-spinner.cjs.entry.js +1 -1
  71. package/dist/cjs/sdds-spinner.cjs.entry.js.map +1 -1
  72. package/dist/cjs/sdds-stepper-item.cjs.entry.js +40 -0
  73. package/dist/cjs/sdds-stepper-item.cjs.entry.js.map +1 -0
  74. package/dist/cjs/sdds-stepper.cjs.entry.js +45 -0
  75. package/dist/cjs/sdds-stepper.cjs.entry.js.map +1 -0
  76. package/dist/cjs/sdds-table-body-row-expandable.cjs.entry.js +6 -6
  77. package/dist/cjs/sdds-table-body-row-expandable.cjs.entry.js.map +1 -1
  78. package/dist/cjs/sdds-table-body.cjs.entry.js +13 -13
  79. package/dist/cjs/sdds-table-body.cjs.entry.js.map +1 -1
  80. package/dist/cjs/sdds-table-footer.cjs.entry.js +7 -7
  81. package/dist/cjs/sdds-table-footer.cjs.entry.js.map +1 -1
  82. package/dist/cjs/sdds-table-header.cjs.entry.js +7 -7
  83. package/dist/cjs/sdds-table-header.cjs.entry.js.map +1 -1
  84. package/dist/cjs/sdds-table-toolbar.cjs.entry.js +4 -4
  85. package/dist/cjs/sdds-table-toolbar.cjs.entry.js.map +1 -1
  86. package/dist/cjs/sdds-table.cjs.entry.js +10 -10
  87. package/dist/cjs/sdds-table.cjs.entry.js.map +1 -1
  88. package/dist/cjs/sdds-textarea.cjs.entry.js +13 -11
  89. package/dist/cjs/sdds-textarea.cjs.entry.js.map +1 -1
  90. package/dist/cjs/sdds-textfield.cjs.entry.js +13 -24
  91. package/dist/cjs/sdds-textfield.cjs.entry.js.map +1 -1
  92. package/dist/cjs/sdds-toast.cjs.entry.js +1 -1
  93. package/dist/cjs/sdds-toggle.cjs.entry.js +11 -12
  94. package/dist/cjs/sdds-toggle.cjs.entry.js.map +1 -1
  95. package/dist/cjs/sdds-tooltip.cjs.entry.js +1 -1
  96. package/dist/cjs/sdds-tooltip.cjs.entry.js.map +1 -1
  97. package/dist/cjs/tegel.cjs.js +2 -2
  98. package/dist/collection/collection-manifest.json +16 -5
  99. package/dist/collection/components/accordion/accordion.js +1 -20
  100. package/dist/collection/components/accordion/accordion.js.map +1 -1
  101. package/dist/collection/components/accordion/accordion.stories.js +21 -21
  102. package/dist/collection/components/accordion/accordion.stories.js.map +1 -1
  103. package/dist/collection/components/badge/badge.stories.js +16 -19
  104. package/dist/collection/components/badge/badge.stories.js.map +1 -1
  105. package/dist/collection/components/banner/banner.stories.js +5 -5
  106. package/dist/collection/components/banner/banner.stories.js.map +1 -1
  107. package/dist/collection/components/banner/sdds-banner.css +8 -2
  108. package/dist/collection/components/banner/sdds-banner.js +12 -93
  109. package/dist/collection/components/banner/sdds-banner.js.map +1 -1
  110. package/dist/collection/components/banner/sdds-banner.stories.js +12 -38
  111. package/dist/collection/components/banner/sdds-banner.stories.js.map +1 -1
  112. package/dist/collection/components/breadcrumb/{breadcrumb-item/breadcrumb-item.css → sdds-breadcrumb-link/sdds-breadcrumb-link.css} +13 -13
  113. package/dist/collection/components/breadcrumb/{breadcrumb-item/breadcrumb-item.js → sdds-breadcrumb-link/sdds-breadcrumb-link.js} +45 -9
  114. package/dist/collection/components/breadcrumb/sdds-breadcrumb-link/sdds-breadcrumb-link.js.map +1 -0
  115. package/dist/collection/components/breadcrumb/sdds-breadcrumb.css +15 -0
  116. package/dist/collection/components/breadcrumb/{breadcrumb.js → sdds-breadcrumb.js} +5 -5
  117. package/dist/collection/components/breadcrumb/sdds-breadcrumb.js.map +1 -0
  118. package/dist/collection/components/breadcrumb/sdds-breadcrumb.stories.js +36 -0
  119. package/dist/collection/components/breadcrumb/sdds-breadcrumb.stories.js.map +1 -0
  120. package/dist/collection/components/button/button-native.stories.js +39 -32
  121. package/dist/collection/components/button/button-native.stories.js.map +1 -1
  122. package/dist/collection/components/button/button-webcomponent.stories.js +36 -33
  123. package/dist/collection/components/button/button-webcomponent.stories.js.map +1 -1
  124. package/dist/collection/components/button/button.css +29 -60
  125. package/dist/collection/components/card/card.stories.js +48 -51
  126. package/dist/collection/components/card/card.stories.js.map +1 -1
  127. package/dist/collection/components/card/sdds-card.css +1 -0
  128. package/dist/collection/components/card/sdds-card.stories.js +27 -36
  129. package/dist/collection/components/card/sdds-card.stories.js.map +1 -1
  130. package/dist/collection/components/checkbox/checkbox.stories.js +20 -12
  131. package/dist/collection/components/checkbox/checkbox.stories.js.map +1 -1
  132. package/dist/collection/components/checkbox/sdds-checkbox.css +5 -4
  133. package/dist/collection/components/checkbox/sdds-checkbox.js +1 -1
  134. package/dist/collection/components/checkbox/sdds-checkbox.js.map +1 -1
  135. package/dist/collection/components/checkbox/sdds-checkbox.stories.js +21 -13
  136. package/dist/collection/components/checkbox/sdds-checkbox.stories.js.map +1 -1
  137. package/dist/collection/components/chips/chips.stories.js +51 -31
  138. package/dist/collection/components/chips/chips.stories.js.map +1 -1
  139. package/dist/collection/components/data-table/native-table.stories.js +44 -67
  140. package/dist/collection/components/data-table/native-table.stories.js.map +1 -1
  141. package/dist/collection/components/data-table/table/table.js +17 -14
  142. package/dist/collection/components/data-table/table/table.js.map +1 -1
  143. package/dist/collection/components/data-table/table-body/table-body.js +37 -28
  144. package/dist/collection/components/data-table/table-body/table-body.js.map +1 -1
  145. package/dist/collection/components/data-table/table-body-cell/table-body-cell.js +10 -10
  146. package/dist/collection/components/data-table/table-body-cell/table-body-cell.js.map +1 -1
  147. package/dist/collection/components/data-table/table-body-row/table-body-row.css +10 -5
  148. package/dist/collection/components/data-table/table-body-row/table-body-row.js +24 -18
  149. package/dist/collection/components/data-table/table-body-row/table-body-row.js.map +1 -1
  150. package/dist/collection/components/data-table/table-body-row-expandable/table-body-row-expandable.js +19 -13
  151. package/dist/collection/components/data-table/table-body-row-expandable/table-body-row-expandable.js.map +1 -1
  152. package/dist/collection/components/data-table/table-component-basic.stories.js +61 -39
  153. package/dist/collection/components/data-table/table-component-basic.stories.js.map +1 -1
  154. package/dist/collection/components/data-table/table-component-batch-actions.stories.js +61 -40
  155. package/dist/collection/components/data-table/table-component-batch-actions.stories.js.map +1 -1
  156. package/dist/collection/components/data-table/table-component-bodydata.stories.js +0 -6
  157. package/dist/collection/components/data-table/table-component-bodydata.stories.js.map +1 -1
  158. package/dist/collection/components/data-table/table-component-custom-width.stories.js +31 -55
  159. package/dist/collection/components/data-table/table-component-custom-width.stories.js.map +1 -1
  160. package/dist/collection/components/data-table/table-component-event-listeners.stories.js +65 -41
  161. package/dist/collection/components/data-table/table-component-event-listeners.stories.js.map +1 -1
  162. package/dist/collection/components/data-table/table-component-expandable-rows.stories.js +59 -35
  163. package/dist/collection/components/data-table/table-component-expandable-rows.stories.js.map +1 -1
  164. package/dist/collection/components/data-table/table-component-filtering.stories.js +63 -44
  165. package/dist/collection/components/data-table/table-component-filtering.stories.js.map +1 -1
  166. package/dist/collection/components/data-table/table-component-multiselect.stories.js +67 -45
  167. package/dist/collection/components/data-table/table-component-multiselect.stories.js.map +1 -1
  168. package/dist/collection/components/data-table/table-component-pagination.stories.js +65 -43
  169. package/dist/collection/components/data-table/table-component-pagination.stories.js.map +1 -1
  170. package/dist/collection/components/data-table/table-component-sorting.stories.js +87 -31
  171. package/dist/collection/components/data-table/table-component-sorting.stories.js.map +1 -1
  172. package/dist/collection/components/data-table/table-footer/table-footer.js +18 -15
  173. package/dist/collection/components/data-table/table-footer/table-footer.js.map +1 -1
  174. package/dist/collection/components/data-table/table-header/table-header.css +10 -5
  175. package/dist/collection/components/data-table/table-header/table-header.js +17 -14
  176. package/dist/collection/components/data-table/table-header/table-header.js.map +1 -1
  177. package/dist/collection/components/data-table/table-header-cell/table-header-cell.js +27 -31
  178. package/dist/collection/components/data-table/table-header-cell/table-header-cell.js.map +1 -1
  179. package/dist/collection/components/data-table/table-toolbar/table-toolbar.js +7 -7
  180. package/dist/collection/components/data-table/table-toolbar/table-toolbar.js.map +1 -1
  181. package/dist/collection/components/datetime/datetime.js +56 -11
  182. package/dist/collection/components/datetime/datetime.js.map +1 -1
  183. package/dist/collection/components/datetime/datetime.stories.js +62 -62
  184. package/dist/collection/components/datetime/datetime.stories.js.map +1 -1
  185. package/dist/collection/components/divider/divider-component.css +16 -0
  186. package/dist/collection/components/divider/divider-webcomponent.stories.js +62 -0
  187. package/dist/collection/components/divider/divider-webcomponent.stories.js.map +1 -0
  188. package/dist/collection/components/divider/divider.js +44 -0
  189. package/dist/collection/components/divider/divider.js.map +1 -0
  190. package/dist/collection/components/divider/divider.stories.js +21 -24
  191. package/dist/collection/components/divider/divider.stories.js.map +1 -1
  192. package/dist/collection/components/dropdown/dropdown-filter/dropdown-filter.js +35 -13
  193. package/dist/collection/components/dropdown/dropdown-filter/dropdown-filter.js.map +1 -1
  194. package/dist/collection/components/dropdown/dropdown-filter/dropdown-filter.stories.js +78 -26
  195. package/dist/collection/components/dropdown/dropdown-filter/dropdown-filter.stories.js.map +1 -1
  196. package/dist/collection/components/dropdown/dropdown-native.stories.js +35 -22
  197. package/dist/collection/components/dropdown/dropdown-native.stories.js.map +1 -1
  198. package/dist/collection/components/dropdown/dropdown-option/dropdown-option.js +21 -16
  199. package/dist/collection/components/dropdown/dropdown-option/dropdown-option.js.map +1 -1
  200. package/dist/collection/components/dropdown/dropdown-wc-default.stories.js +58 -51
  201. package/dist/collection/components/dropdown/dropdown-wc-default.stories.js.map +1 -1
  202. package/dist/collection/components/dropdown/dropdown-wc-multiselect.stories.js +73 -50
  203. package/dist/collection/components/dropdown/dropdown-wc-multiselect.stories.js.map +1 -1
  204. package/dist/collection/components/dropdown/dropdown.css +14 -167
  205. package/dist/collection/components/dropdown/dropdown.js +22 -17
  206. package/dist/collection/components/dropdown/dropdown.js.map +1 -1
  207. package/dist/collection/components/footer/footer.stories.js +6 -6
  208. package/dist/collection/components/footer/footer.stories.js.map +1 -1
  209. package/dist/collection/components/footer/webcomponent/sdds-footer-link/sdds-footer-link.css +45 -0
  210. package/dist/collection/components/footer/webcomponent/sdds-footer-link/sdds-footer-link.js +86 -0
  211. package/dist/collection/components/footer/webcomponent/sdds-footer-link/sdds-footer-link.js.map +1 -0
  212. package/dist/collection/components/footer/webcomponent/sdds-footer-link-group/sdds-footer-link-group.css +67 -0
  213. package/dist/collection/components/footer/webcomponent/sdds-footer-link-group/sdds-footer-link-group.js +62 -0
  214. package/dist/collection/components/footer/webcomponent/sdds-footer-link-group/sdds-footer-link-group.js.map +1 -0
  215. package/dist/collection/components/footer/webcomponent/sdds-footer.css +85 -0
  216. package/dist/collection/components/footer/webcomponent/sdds-footer.js +56 -0
  217. package/dist/collection/components/footer/webcomponent/sdds-footer.js.map +1 -0
  218. package/dist/collection/components/footer/webcomponent/sdds-footer.stories.js +118 -0
  219. package/dist/collection/components/footer/webcomponent/sdds-footer.stories.js.map +1 -0
  220. package/dist/collection/components/header/header-all.stories.js +4 -2
  221. package/dist/collection/components/header/header-all.stories.js.map +1 -1
  222. package/dist/collection/components/header/header-default.stories.js +4 -2
  223. package/dist/collection/components/header/header-default.stories.js.map +1 -1
  224. package/dist/collection/components/header/header-inline.stories.js +4 -2
  225. package/dist/collection/components/header/header-inline.stories.js.map +1 -1
  226. package/dist/collection/components/header/header-search.stories.js +4 -2
  227. package/dist/collection/components/header/header-search.stories.js.map +1 -1
  228. package/dist/collection/components/header/header-toolbar.stories.js +4 -2
  229. package/dist/collection/components/header/header-toolbar.stories.js.map +1 -1
  230. package/dist/collection/components/icon/iconsArray.js +111 -2
  231. package/dist/collection/components/link/link.stories.js +15 -9
  232. package/dist/collection/components/link/link.stories.js.map +1 -1
  233. package/dist/collection/components/link/sdds-link.stories.js +15 -15
  234. package/dist/collection/components/link/sdds-link.stories.js.map +1 -1
  235. package/dist/collection/components/message/message.stories.js +53 -33
  236. package/dist/collection/components/message/message.stories.js.map +1 -1
  237. package/dist/collection/components/message/sdds-message.stories.js +23 -22
  238. package/dist/collection/components/message/sdds-message.stories.js.map +1 -1
  239. package/dist/collection/components/modal/modal-native.stories.js +28 -20
  240. package/dist/collection/components/modal/modal-native.stories.js.map +1 -1
  241. package/dist/collection/components/modal/modal-webcomponent.stories.js +33 -22
  242. package/dist/collection/components/modal/modal-webcomponent.stories.js.map +1 -1
  243. package/dist/collection/components/modal/modal.js +147 -29
  244. package/dist/collection/components/modal/modal.js.map +1 -1
  245. package/dist/collection/components/popover-canvas/popover-canvas.css +0 -4
  246. package/dist/collection/components/popover-canvas/popover-canvas.js +99 -46
  247. package/dist/collection/components/popover-canvas/popover-canvas.js.map +1 -1
  248. package/dist/collection/components/popover-canvas/popover-canvas.stories.js +16 -14
  249. package/dist/collection/components/popover-canvas/popover-canvas.stories.js.map +1 -1
  250. package/dist/collection/components/popover-menu/popover-menu-icons.stories.js +7 -3
  251. package/dist/collection/components/popover-menu/popover-menu-icons.stories.js.map +1 -1
  252. package/dist/collection/components/popover-menu/popover-menu.stories.js +7 -3
  253. package/dist/collection/components/popover-menu/popover-menu.stories.js.map +1 -1
  254. package/dist/collection/components/radio-button/radio-button-component.stories.js +7 -8
  255. package/dist/collection/components/radio-button/radio-button-component.stories.js.map +1 -1
  256. package/dist/collection/components/radio-button/radio-button.js +6 -2
  257. package/dist/collection/components/radio-button/radio-button.js.map +1 -1
  258. package/dist/collection/components/radio-button/radio-button.stories.js +9 -6
  259. package/dist/collection/components/radio-button/radio-button.stories.js.map +1 -1
  260. package/dist/collection/components/slider/slider.css +27 -16
  261. package/dist/collection/components/slider/slider.js +27 -27
  262. package/dist/collection/components/slider/slider.js.map +1 -1
  263. package/dist/collection/components/slider/slider.stories.js +93 -67
  264. package/dist/collection/components/slider/slider.stories.js.map +1 -1
  265. package/dist/collection/components/spinner/spinner.stories.js +8 -2
  266. package/dist/collection/components/spinner/spinner.stories.js.map +1 -1
  267. package/dist/collection/components/stepper/sdds-stepper.css +13 -0
  268. package/dist/collection/components/stepper/sdds-stepper.js +126 -0
  269. package/dist/collection/components/stepper/sdds-stepper.js.map +1 -0
  270. package/dist/collection/components/stepper/stepper-item/sdds-stepper-item.css +197 -0
  271. package/dist/collection/components/stepper/stepper-item/sdds-stepper-item.js +112 -0
  272. package/dist/collection/components/stepper/stepper-item/sdds-stepper-item.js.map +1 -0
  273. package/dist/collection/components/stepper/stepper.stories.js +31 -41
  274. package/dist/collection/components/stepper/stepper.stories.js.map +1 -1
  275. package/dist/collection/components/tabs/folder-tabs/folder-tabs-button/sdds-folder-tabs-button.css +79 -0
  276. package/dist/collection/components/tabs/folder-tabs/folder-tabs-button/sdds-folder-tabs-button.js +100 -0
  277. package/dist/collection/components/tabs/folder-tabs/folder-tabs-button/sdds-folder-tabs-button.js.map +1 -0
  278. package/dist/collection/components/tabs/folder-tabs/folder-tabs-link/sdds-folder-tabs-link.css +77 -0
  279. package/dist/collection/components/tabs/folder-tabs/folder-tabs-link/sdds-folder-tabs-link.js +158 -0
  280. package/dist/collection/components/tabs/folder-tabs/folder-tabs-link/sdds-folder-tabs-link.js.map +1 -0
  281. package/dist/collection/components/tabs/folder-tabs/folder-tabs.css +64 -0
  282. package/dist/collection/components/tabs/folder-tabs/folder-tabs.js +256 -0
  283. package/dist/collection/components/tabs/folder-tabs/folder-tabs.js.map +1 -0
  284. package/dist/collection/components/tabs/folder-tabs/folder-tabs.stories.js +114 -0
  285. package/dist/collection/components/tabs/folder-tabs/folder-tabs.stories.js.map +1 -0
  286. package/dist/collection/components/tabs/inline-tabs/inline-tabs-button/sdds-inline-tabs-button.css +73 -0
  287. package/dist/collection/components/tabs/{inline-tabs-default/inline-tab/inline-tab.js → inline-tabs/inline-tabs-button/sdds-inline-tabs-button.js} +12 -29
  288. package/dist/collection/components/tabs/inline-tabs/inline-tabs-button/sdds-inline-tabs-button.js.map +1 -0
  289. package/dist/collection/components/tabs/inline-tabs/inline-tabs-link/sdds-inline-tabs-link.css +75 -0
  290. package/dist/collection/components/tabs/inline-tabs/inline-tabs-link/sdds-inline-tabs-link.js +122 -0
  291. package/dist/collection/components/tabs/inline-tabs/inline-tabs-link/sdds-inline-tabs-link.js.map +1 -0
  292. package/dist/collection/components/tabs/inline-tabs/inline-tabs.css +76 -0
  293. package/dist/collection/components/tabs/inline-tabs/inline-tabs.js +261 -0
  294. package/dist/collection/components/tabs/inline-tabs/inline-tabs.js.map +1 -0
  295. package/dist/collection/components/tabs/inline-tabs/inline-tabs.stories.js +109 -0
  296. package/dist/collection/components/tabs/inline-tabs/inline-tabs.stories.js.map +1 -0
  297. package/dist/collection/components/tabs/navigation-tabs/navigation-tabs-button/sdds-navigation-tabs-button.css +73 -0
  298. package/dist/collection/components/tabs/navigation-tabs/navigation-tabs-button/sdds-navigation-tabs-button.js +64 -0
  299. package/dist/collection/components/tabs/navigation-tabs/navigation-tabs-button/sdds-navigation-tabs-button.js.map +1 -0
  300. package/dist/collection/components/tabs/navigation-tabs/navigation-tabs-link/sdds-navigation-tabs-link.css +73 -0
  301. package/dist/collection/components/tabs/navigation-tabs/navigation-tabs-link/sdds-navigation-tabs-link.js +122 -0
  302. package/dist/collection/components/tabs/navigation-tabs/navigation-tabs-link/sdds-navigation-tabs-link.js.map +1 -0
  303. package/dist/collection/components/tabs/navigation-tabs/navigation-tabs.css +37 -118
  304. package/dist/collection/components/tabs/navigation-tabs/navigation-tabs.js +114 -26
  305. package/dist/collection/components/tabs/navigation-tabs/navigation-tabs.js.map +1 -1
  306. package/dist/collection/components/tabs/navigation-tabs/navigation-tabs.stories.js +79 -9
  307. package/dist/collection/components/tabs/navigation-tabs/navigation-tabs.stories.js.map +1 -1
  308. package/dist/collection/components/textarea/textarea.css +44 -114
  309. package/dist/collection/components/textarea/textarea.js +30 -9
  310. package/dist/collection/components/textarea/textarea.js.map +1 -1
  311. package/dist/collection/components/textarea/textarea.stories.js +66 -48
  312. package/dist/collection/components/textarea/textarea.stories.js.map +1 -1
  313. package/dist/collection/components/textfield/textfield.css +87 -226
  314. package/dist/collection/components/textfield/textfield.js +12 -22
  315. package/dist/collection/components/textfield/textfield.js.map +1 -1
  316. package/dist/collection/components/textfield/textfield.stories.js +94 -80
  317. package/dist/collection/components/textfield/textfield.stories.js.map +1 -1
  318. package/dist/collection/components/toast/sdds-toast.stories.js +6 -6
  319. package/dist/collection/components/toast/sdds-toast.stories.js.map +1 -1
  320. package/dist/collection/components/toast/toast.stories.js +19 -17
  321. package/dist/collection/components/toast/toast.stories.js.map +1 -1
  322. package/dist/collection/components/toggle/sdds-toggle.js +12 -64
  323. package/dist/collection/components/toggle/sdds-toggle.js.map +1 -1
  324. package/dist/collection/components/toggle/sdds-toggle.stories.js +22 -20
  325. package/dist/collection/components/toggle/sdds-toggle.stories.js.map +1 -1
  326. package/dist/collection/components/toggle/toggle.stories.js +19 -14
  327. package/dist/collection/components/toggle/toggle.stories.js.map +1 -1
  328. package/dist/collection/components/tooltip/tooltip.stories.js +30 -18
  329. package/dist/collection/components/tooltip/tooltip.stories.js.map +1 -1
  330. package/dist/components/dropdown-option.js +9 -11
  331. package/dist/components/dropdown-option.js.map +1 -1
  332. package/dist/components/dropdown.js +13 -10
  333. package/dist/components/dropdown.js.map +1 -1
  334. package/dist/components/icon.js +2 -1
  335. package/dist/components/icon.js.map +1 -1
  336. package/dist/components/index.d.ts +0 -12
  337. package/dist/components/index.js +0 -95
  338. package/dist/components/index.js.map +1 -1
  339. package/dist/components/sdds-accordion.js +1 -3
  340. package/dist/components/sdds-accordion.js.map +1 -1
  341. package/dist/components/sdds-banner.js +11 -20
  342. package/dist/components/sdds-banner.js.map +1 -1
  343. package/dist/components/{sdds-breadcrumb-item.d.ts → sdds-breadcrumb-link.d.ts} +4 -4
  344. package/dist/components/sdds-breadcrumb-link.js +47 -0
  345. package/dist/components/sdds-breadcrumb-link.js.map +1 -0
  346. package/dist/components/sdds-breadcrumb.js +4 -4
  347. package/dist/components/sdds-breadcrumb.js.map +1 -1
  348. package/dist/components/sdds-button.js +1 -1
  349. package/dist/components/sdds-button.js.map +1 -1
  350. package/dist/components/sdds-card.js +1 -1
  351. package/dist/components/sdds-card.js.map +1 -1
  352. package/dist/components/sdds-checkbox.js +2 -2
  353. package/dist/components/sdds-checkbox.js.map +1 -1
  354. package/dist/components/sdds-datetime.js +14 -5
  355. package/dist/components/sdds-datetime.js.map +1 -1
  356. package/dist/components/{sdds-inline-tab.d.ts → sdds-divider.d.ts} +4 -4
  357. package/dist/components/sdds-divider.js +38 -0
  358. package/dist/components/sdds-divider.js.map +1 -0
  359. package/dist/components/sdds-dropdown-filter.js +12 -8
  360. package/dist/components/sdds-dropdown-filter.js.map +1 -1
  361. package/dist/components/sdds-folder-tabs-button.d.ts +11 -0
  362. package/dist/components/sdds-folder-tabs-button.js +48 -0
  363. package/dist/components/sdds-folder-tabs-button.js.map +1 -0
  364. package/dist/components/sdds-folder-tabs-link.d.ts +11 -0
  365. package/dist/components/sdds-folder-tabs-link.js +56 -0
  366. package/dist/components/sdds-folder-tabs-link.js.map +1 -0
  367. package/dist/components/sdds-folder-tabs.d.ts +11 -0
  368. package/dist/components/sdds-folder-tabs.js +208 -0
  369. package/dist/components/sdds-folder-tabs.js.map +1 -0
  370. package/dist/components/sdds-footer-link-group.d.ts +11 -0
  371. package/dist/components/sdds-footer-link-group.js +58 -0
  372. package/dist/components/sdds-footer-link-group.js.map +1 -0
  373. package/dist/components/sdds-footer-link.d.ts +11 -0
  374. package/dist/components/sdds-footer-link.js +46 -0
  375. package/dist/components/sdds-footer-link.js.map +1 -0
  376. package/dist/components/sdds-footer.d.ts +11 -0
  377. package/dist/components/sdds-footer.js +45 -0
  378. package/dist/components/sdds-footer.js.map +1 -0
  379. package/dist/components/sdds-header-cell.js +9 -13
  380. package/dist/components/sdds-header-cell.js.map +1 -1
  381. package/dist/components/sdds-inline-tabs-button.d.ts +11 -0
  382. package/dist/components/sdds-inline-tabs-button.js +41 -0
  383. package/dist/components/sdds-inline-tabs-button.js.map +1 -0
  384. package/dist/components/sdds-inline-tabs-link.d.ts +11 -0
  385. package/dist/components/sdds-inline-tabs-link.js +49 -0
  386. package/dist/components/sdds-inline-tabs-link.js.map +1 -0
  387. package/dist/components/sdds-inline-tabs.js +123 -155
  388. package/dist/components/sdds-inline-tabs.js.map +1 -1
  389. package/dist/components/sdds-link.js +42 -1
  390. package/dist/components/sdds-link.js.map +1 -1
  391. package/dist/components/sdds-modal.js +73 -24
  392. package/dist/components/sdds-modal.js.map +1 -1
  393. package/dist/components/sdds-navigation-tabs-button.d.ts +11 -0
  394. package/dist/components/sdds-navigation-tabs-button.js +41 -0
  395. package/dist/components/sdds-navigation-tabs-button.js.map +1 -0
  396. package/dist/components/sdds-navigation-tabs-link.d.ts +11 -0
  397. package/dist/components/sdds-navigation-tabs-link.js +49 -0
  398. package/dist/components/sdds-navigation-tabs-link.js.map +1 -0
  399. package/dist/components/sdds-navigation-tabs.js +79 -27
  400. package/dist/components/sdds-navigation-tabs.js.map +1 -1
  401. package/dist/components/sdds-popover-canvas.js +71 -42
  402. package/dist/components/sdds-popover-canvas.js.map +1 -1
  403. package/dist/components/sdds-radio-button.js +6 -2
  404. package/dist/components/sdds-radio-button.js.map +1 -1
  405. package/dist/components/sdds-slider.js +17 -17
  406. package/dist/components/sdds-slider.js.map +1 -1
  407. package/dist/components/sdds-spinner.js.map +1 -1
  408. package/dist/components/sdds-stepper-item.d.ts +11 -0
  409. package/dist/components/sdds-stepper-item.js +69 -0
  410. package/dist/components/sdds-stepper-item.js.map +1 -0
  411. package/dist/components/sdds-stepper.d.ts +11 -0
  412. package/dist/components/sdds-stepper.js +65 -0
  413. package/dist/components/sdds-stepper.js.map +1 -0
  414. package/dist/components/sdds-table-body-row-expandable.js +6 -6
  415. package/dist/components/sdds-table-body-row-expandable.js.map +1 -1
  416. package/dist/components/sdds-table-body.js +13 -13
  417. package/dist/components/sdds-table-body.js.map +1 -1
  418. package/dist/components/sdds-table-footer.js +7 -7
  419. package/dist/components/sdds-table-footer.js.map +1 -1
  420. package/dist/components/sdds-table-header.js +7 -7
  421. package/dist/components/sdds-table-header.js.map +1 -1
  422. package/dist/components/sdds-table-toolbar.js +4 -4
  423. package/dist/components/sdds-table-toolbar.js.map +1 -1
  424. package/dist/components/sdds-table.js +9 -9
  425. package/dist/components/sdds-table.js.map +1 -1
  426. package/dist/components/sdds-textarea.js +14 -11
  427. package/dist/components/sdds-textarea.js.map +1 -1
  428. package/dist/components/sdds-textfield.js +13 -24
  429. package/dist/components/sdds-textfield.js.map +1 -1
  430. package/dist/components/sdds-toggle.js +10 -14
  431. package/dist/components/sdds-toggle.js.map +1 -1
  432. package/dist/components/sdds-tooltip.js.map +1 -1
  433. package/dist/components/table-body-cell.js +5 -5
  434. package/dist/components/table-body-cell.js.map +1 -1
  435. package/dist/components/table-body-row.js +9 -9
  436. package/dist/components/table-body-row.js.map +1 -1
  437. package/dist/esm/{index-b21fe3b7.js → index-fdfb114c.js} +60 -99
  438. package/dist/{tegel/p-1b74896d.js.map → esm/index-fdfb114c.js.map} +1 -1
  439. package/dist/esm/loader.js +3 -3
  440. package/dist/esm/sdds-accordion-item.entry.js +1 -1
  441. package/dist/esm/sdds-accordion.entry.js +2 -3
  442. package/dist/esm/sdds-accordion.entry.js.map +1 -1
  443. package/dist/esm/sdds-badges.entry.js +1 -1
  444. package/dist/esm/sdds-banner.entry.js +8 -8
  445. package/dist/esm/sdds-banner.entry.js.map +1 -1
  446. package/dist/esm/sdds-block.entry.js +1 -1
  447. package/dist/esm/sdds-body-cell_2.entry.js +13 -13
  448. package/dist/esm/sdds-body-cell_2.entry.js.map +1 -1
  449. package/dist/esm/sdds-breadcrumb-link.entry.js +23 -0
  450. package/dist/esm/sdds-breadcrumb-link.entry.js.map +1 -0
  451. package/dist/esm/sdds-breadcrumb.entry.js +5 -5
  452. package/dist/esm/sdds-breadcrumb.entry.js.map +1 -1
  453. package/dist/esm/sdds-button.entry.js +2 -2
  454. package/dist/esm/sdds-button.entry.js.map +1 -1
  455. package/dist/esm/sdds-card.entry.js +2 -2
  456. package/dist/esm/sdds-card.entry.js.map +1 -1
  457. package/dist/esm/sdds-checkbox.entry.js +3 -3
  458. package/dist/esm/sdds-checkbox.entry.js.map +1 -1
  459. package/dist/esm/sdds-datetime.entry.js +15 -6
  460. package/dist/esm/sdds-datetime.entry.js.map +1 -1
  461. package/dist/esm/sdds-divider.entry.js +18 -0
  462. package/dist/esm/sdds-divider.entry.js.map +1 -0
  463. package/dist/esm/sdds-dropdown-filter.entry.js +10 -7
  464. package/dist/esm/sdds-dropdown-filter.entry.js.map +1 -1
  465. package/dist/esm/sdds-dropdown_2.entry.js +20 -20
  466. package/dist/esm/sdds-dropdown_2.entry.js.map +1 -1
  467. package/dist/esm/sdds-folder-tabs-button.entry.js +25 -0
  468. package/dist/esm/sdds-folder-tabs-button.entry.js.map +1 -0
  469. package/dist/esm/sdds-folder-tabs-link.entry.js +30 -0
  470. package/dist/esm/sdds-folder-tabs-link.entry.js.map +1 -0
  471. package/dist/esm/sdds-folder-tabs.entry.js +176 -0
  472. package/dist/esm/sdds-folder-tabs.entry.js.map +1 -0
  473. package/dist/esm/sdds-footer-link-group.entry.js +32 -0
  474. package/dist/esm/sdds-footer-link-group.entry.js.map +1 -0
  475. package/dist/esm/sdds-footer-link.entry.js +25 -0
  476. package/dist/esm/sdds-footer-link.entry.js.map +1 -0
  477. package/dist/esm/sdds-footer.entry.js +24 -0
  478. package/dist/esm/sdds-footer.entry.js.map +1 -0
  479. package/dist/esm/sdds-header-cell.entry.js +9 -13
  480. package/dist/esm/sdds-header-cell.entry.js.map +1 -1
  481. package/dist/esm/sdds-icon.entry.js +3 -2
  482. package/dist/esm/sdds-icon.entry.js.map +1 -1
  483. package/dist/esm/sdds-inline-tabs-button.entry.js +20 -0
  484. package/dist/esm/sdds-inline-tabs-button.entry.js.map +1 -0
  485. package/dist/esm/sdds-inline-tabs-link.entry.js +25 -0
  486. package/dist/esm/sdds-inline-tabs-link.entry.js.map +1 -0
  487. package/dist/esm/sdds-inline-tabs.entry.js +113 -148
  488. package/dist/esm/sdds-inline-tabs.entry.js.map +1 -1
  489. package/dist/esm/sdds-link.entry.js +1 -1
  490. package/dist/esm/sdds-message.entry.js +1 -1
  491. package/dist/esm/sdds-modal.entry.js +67 -22
  492. package/dist/esm/sdds-modal.entry.js.map +1 -1
  493. package/dist/esm/sdds-navigation-tabs-button.entry.js +20 -0
  494. package/dist/esm/sdds-navigation-tabs-button.entry.js.map +1 -0
  495. package/dist/esm/sdds-navigation-tabs-link.entry.js +25 -0
  496. package/dist/esm/sdds-navigation-tabs-link.entry.js.map +1 -0
  497. package/dist/esm/sdds-navigation-tabs.entry.js +69 -24
  498. package/dist/esm/sdds-navigation-tabs.entry.js.map +1 -1
  499. package/dist/esm/sdds-popover-canvas.entry.js +68 -41
  500. package/dist/esm/sdds-popover-canvas.entry.js.map +1 -1
  501. package/dist/esm/sdds-popover-menu.entry.js +1 -1
  502. package/dist/esm/sdds-radio-button.entry.js +7 -3
  503. package/dist/esm/sdds-radio-button.entry.js.map +1 -1
  504. package/dist/esm/sdds-slider.entry.js +17 -17
  505. package/dist/esm/sdds-slider.entry.js.map +1 -1
  506. package/dist/esm/sdds-spinner.entry.js +1 -1
  507. package/dist/esm/sdds-spinner.entry.js.map +1 -1
  508. package/dist/esm/sdds-stepper-item.entry.js +36 -0
  509. package/dist/esm/sdds-stepper-item.entry.js.map +1 -0
  510. package/dist/esm/sdds-stepper.entry.js +41 -0
  511. package/dist/esm/sdds-stepper.entry.js.map +1 -0
  512. package/dist/esm/sdds-table-body-row-expandable.entry.js +6 -6
  513. package/dist/esm/sdds-table-body-row-expandable.entry.js.map +1 -1
  514. package/dist/esm/sdds-table-body.entry.js +13 -13
  515. package/dist/esm/sdds-table-body.entry.js.map +1 -1
  516. package/dist/esm/sdds-table-footer.entry.js +7 -7
  517. package/dist/esm/sdds-table-footer.entry.js.map +1 -1
  518. package/dist/esm/sdds-table-header.entry.js +7 -7
  519. package/dist/esm/sdds-table-header.entry.js.map +1 -1
  520. package/dist/esm/sdds-table-toolbar.entry.js +4 -4
  521. package/dist/esm/sdds-table-toolbar.entry.js.map +1 -1
  522. package/dist/esm/sdds-table.entry.js +10 -10
  523. package/dist/esm/sdds-table.entry.js.map +1 -1
  524. package/dist/esm/sdds-textarea.entry.js +13 -11
  525. package/dist/esm/sdds-textarea.entry.js.map +1 -1
  526. package/dist/esm/sdds-textfield.entry.js +13 -24
  527. package/dist/esm/sdds-textfield.entry.js.map +1 -1
  528. package/dist/esm/sdds-toast.entry.js +1 -1
  529. package/dist/esm/sdds-toggle.entry.js +11 -12
  530. package/dist/esm/sdds-toggle.entry.js.map +1 -1
  531. package/dist/esm/sdds-tooltip.entry.js +1 -1
  532. package/dist/esm/sdds-tooltip.entry.js.map +1 -1
  533. package/dist/esm/tegel.js +3 -3
  534. package/dist/tegel/{p-c5b3ef65.entry.js → p-067789d2.entry.js} +2 -2
  535. package/dist/tegel/p-067789d2.entry.js.map +1 -0
  536. package/dist/tegel/p-12f566b7.entry.js +2 -0
  537. package/dist/tegel/p-12f566b7.entry.js.map +1 -0
  538. package/dist/tegel/p-15c44320.entry.js +2 -0
  539. package/dist/tegel/p-15c44320.entry.js.map +1 -0
  540. package/dist/tegel/{p-7e41ac2c.entry.js → p-1a7f94d3.entry.js} +2 -2
  541. package/dist/tegel/p-1a7f94d3.entry.js.map +1 -0
  542. package/dist/tegel/p-1df2e987.entry.js +2 -0
  543. package/dist/tegel/p-1df2e987.entry.js.map +1 -0
  544. package/dist/tegel/p-1e196fff.entry.js +2 -0
  545. package/dist/tegel/p-1e196fff.entry.js.map +1 -0
  546. package/dist/tegel/p-2080db62.entry.js +2 -0
  547. package/dist/tegel/p-2080db62.entry.js.map +1 -0
  548. package/dist/tegel/p-23998948.entry.js +2 -0
  549. package/dist/tegel/p-23998948.entry.js.map +1 -0
  550. package/dist/tegel/p-29bcd369.entry.js +2 -0
  551. package/dist/tegel/p-29bcd369.entry.js.map +1 -0
  552. package/dist/tegel/p-2c57f4bb.entry.js +2 -0
  553. package/dist/tegel/p-2c57f4bb.entry.js.map +1 -0
  554. package/dist/tegel/p-387e1798.js +3 -0
  555. package/dist/tegel/p-387e1798.js.map +1 -0
  556. package/dist/tegel/p-3a93619e.entry.js +2 -0
  557. package/dist/tegel/p-3a93619e.entry.js.map +1 -0
  558. package/dist/tegel/p-3a9db8c4.entry.js +2 -0
  559. package/dist/tegel/p-3a9db8c4.entry.js.map +1 -0
  560. package/dist/tegel/{p-7d097f54.entry.js → p-400d74c2.entry.js} +2 -2
  561. package/dist/tegel/{p-73ebb46d.entry.js → p-4499e5cd.entry.js} +2 -2
  562. package/dist/tegel/p-479b1c4e.entry.js +2 -0
  563. package/dist/tegel/p-479b1c4e.entry.js.map +1 -0
  564. package/dist/tegel/p-4dee91c9.entry.js +2 -0
  565. package/dist/tegel/p-4dee91c9.entry.js.map +1 -0
  566. package/dist/tegel/p-52ecce88.entry.js +2 -0
  567. package/dist/tegel/p-52ecce88.entry.js.map +1 -0
  568. package/dist/tegel/p-5812ec42.entry.js +2 -0
  569. package/dist/tegel/p-5812ec42.entry.js.map +1 -0
  570. package/dist/tegel/p-595c05f4.entry.js +2 -0
  571. package/dist/tegel/p-595c05f4.entry.js.map +1 -0
  572. package/dist/tegel/p-5ca26ce8.entry.js +2 -0
  573. package/dist/tegel/p-5ca26ce8.entry.js.map +1 -0
  574. package/dist/tegel/p-5cc6d070.entry.js +2 -0
  575. package/dist/tegel/p-5cc6d070.entry.js.map +1 -0
  576. package/dist/tegel/{p-c1f9c2a8.entry.js → p-5dc33f45.entry.js} +2 -2
  577. package/dist/tegel/p-5f6fe516.entry.js +2 -0
  578. package/dist/tegel/p-5f6fe516.entry.js.map +1 -0
  579. package/dist/tegel/p-626434af.entry.js +2 -0
  580. package/dist/tegel/p-626434af.entry.js.map +1 -0
  581. package/dist/tegel/{p-847f81ac.entry.js → p-64dd37d4.entry.js} +2 -2
  582. package/dist/tegel/p-64dd37d4.entry.js.map +1 -0
  583. package/dist/tegel/p-68e4c190.entry.js +2 -0
  584. package/dist/tegel/p-68e4c190.entry.js.map +1 -0
  585. package/dist/tegel/{p-f9d14b96.entry.js → p-750b7e5f.entry.js} +2 -2
  586. package/dist/tegel/{p-94c6ef69.entry.js → p-7991d22f.entry.js} +2 -2
  587. package/dist/tegel/p-7f10356d.entry.js +2 -0
  588. package/dist/tegel/p-7f10356d.entry.js.map +1 -0
  589. package/dist/tegel/p-7f22cee6.entry.js +2 -0
  590. package/dist/tegel/p-7f22cee6.entry.js.map +1 -0
  591. package/dist/tegel/p-88ba44a7.entry.js +2 -0
  592. package/dist/tegel/p-88ba44a7.entry.js.map +1 -0
  593. package/dist/tegel/p-8b807df5.entry.js +2 -0
  594. package/dist/tegel/p-8b807df5.entry.js.map +1 -0
  595. package/dist/tegel/{p-c46e2117.entry.js → p-a2cbef2c.entry.js} +2 -2
  596. package/dist/tegel/p-a5cd0006.entry.js +2 -0
  597. package/dist/tegel/p-a5cd0006.entry.js.map +1 -0
  598. package/dist/tegel/{p-35146934.entry.js → p-ad3439b8.entry.js} +2 -2
  599. package/dist/tegel/p-ad3439b8.entry.js.map +1 -0
  600. package/dist/tegel/p-ae631412.entry.js +2 -0
  601. package/dist/tegel/p-ae631412.entry.js.map +1 -0
  602. package/dist/tegel/p-b8d838d1.entry.js +2 -0
  603. package/dist/tegel/p-b8d838d1.entry.js.map +1 -0
  604. package/dist/tegel/{p-ce848ab7.entry.js → p-b9b329c0.entry.js} +2 -2
  605. package/dist/tegel/p-bdae6bc9.entry.js +2 -0
  606. package/dist/tegel/p-bdae6bc9.entry.js.map +1 -0
  607. package/dist/tegel/p-bdaf0bc2.entry.js +2 -0
  608. package/dist/tegel/p-bdaf0bc2.entry.js.map +1 -0
  609. package/dist/tegel/{p-991b5017.entry.js → p-c4d28002.entry.js} +2 -2
  610. package/dist/tegel/p-c4d28002.entry.js.map +1 -0
  611. package/dist/tegel/p-c6c75439.entry.js +2 -0
  612. package/dist/tegel/p-c6c75439.entry.js.map +1 -0
  613. package/dist/tegel/{p-c037d66f.entry.js → p-ccb82bc3.entry.js} +2 -2
  614. package/dist/tegel/p-ccb82bc3.entry.js.map +1 -0
  615. package/dist/tegel/p-ce84159b.entry.js +2 -0
  616. package/dist/tegel/p-ce84159b.entry.js.map +1 -0
  617. package/dist/tegel/p-d517eaef.entry.js +2 -0
  618. package/dist/tegel/p-d517eaef.entry.js.map +1 -0
  619. package/dist/tegel/p-edc4d742.entry.js +2 -0
  620. package/dist/tegel/p-edc4d742.entry.js.map +1 -0
  621. package/dist/tegel/{p-243cc1a5.entry.js → p-ef5487a3.entry.js} +2 -2
  622. package/dist/tegel/p-ef5487a3.entry.js.map +1 -0
  623. package/dist/tegel/p-f23cb0ae.entry.js +2 -0
  624. package/dist/tegel/p-f23cb0ae.entry.js.map +1 -0
  625. package/dist/tegel/p-f55ab621.entry.js +2 -0
  626. package/dist/tegel/p-f55ab621.entry.js.map +1 -0
  627. package/dist/tegel/p-fcb9e2c1.entry.js +2 -0
  628. package/dist/tegel/p-fcb9e2c1.entry.js.map +1 -0
  629. package/dist/tegel/tegel.css +10 -10
  630. package/dist/tegel/tegel.esm.js +1 -1
  631. package/dist/tegel/tegel.esm.js.map +1 -1
  632. package/dist/types/components/accordion/accordion.d.ts +0 -2
  633. package/dist/types/components/accordion/accordion.stories.d.ts +14 -14
  634. package/dist/types/components/badge/badge.stories.d.ts +9 -14
  635. package/dist/types/components/banner/sdds-banner.d.ts +2 -10
  636. package/dist/types/components/banner/sdds-banner.stories.d.ts +3 -30
  637. package/dist/types/components/breadcrumb/sdds-breadcrumb-link/sdds-breadcrumb-link.d.ts +13 -0
  638. package/dist/types/components/breadcrumb/sdds-breadcrumb.stories.d.ts +16 -0
  639. package/dist/types/components/button/button-native.stories.d.ts +36 -25
  640. package/dist/types/components/button/button-webcomponent.stories.d.ts +30 -26
  641. package/dist/types/components/card/card.stories.d.ts +29 -30
  642. package/dist/types/components/card/sdds-card.stories.d.ts +13 -24
  643. package/dist/types/components/checkbox/checkbox.stories.d.ts +17 -5
  644. package/dist/types/components/checkbox/sdds-checkbox.stories.d.ts +17 -5
  645. package/dist/types/components/chips/chips.stories.d.ts +42 -18
  646. package/dist/types/components/data-table/native-table.stories.d.ts +17 -31
  647. package/dist/types/components/data-table/table/table.d.ts +5 -4
  648. package/dist/types/components/data-table/table-body/table-body.d.ts +9 -9
  649. package/dist/types/components/data-table/table-body-cell/table-body-cell.d.ts +4 -4
  650. package/dist/types/components/data-table/table-body-row/table-body-row.d.ts +7 -7
  651. package/dist/types/components/data-table/table-body-row-expandable/table-body-row-expandable.d.ts +6 -6
  652. package/dist/types/components/data-table/table-component-basic.stories.d.ts +54 -11
  653. package/dist/types/components/data-table/table-component-batch-actions.stories.d.ts +54 -14
  654. package/dist/types/components/data-table/table-component-bodydata.stories.d.ts +0 -5
  655. package/dist/types/components/data-table/table-component-custom-width.stories.d.ts +15 -32
  656. package/dist/types/components/data-table/table-component-event-listeners.stories.d.ts +54 -11
  657. package/dist/types/components/data-table/table-component-expandable-rows.stories.d.ts +54 -11
  658. package/dist/types/components/data-table/table-component-filtering.stories.d.ts +54 -16
  659. package/dist/types/components/data-table/table-component-multiselect.stories.d.ts +57 -14
  660. package/dist/types/components/data-table/table-component-pagination.stories.d.ts +58 -15
  661. package/dist/types/components/data-table/table-component-sorting.stories.d.ts +93 -10
  662. package/dist/types/components/data-table/table-footer/table-footer.d.ts +7 -7
  663. package/dist/types/components/data-table/table-header/table-header.d.ts +6 -6
  664. package/dist/types/components/data-table/table-header-cell/table-header-cell.d.ts +9 -10
  665. package/dist/types/components/data-table/table-toolbar/table-toolbar.d.ts +4 -4
  666. package/dist/types/components/datetime/datetime.d.ts +11 -5
  667. package/dist/types/components/datetime/datetime.stories.d.ts +36 -35
  668. package/dist/types/components/divider/divider-webcomponent.stories.d.ts +58 -0
  669. package/dist/types/components/divider/divider.d.ts +5 -0
  670. package/dist/types/components/divider/divider.stories.d.ts +11 -16
  671. package/dist/types/components/dropdown/dropdown-filter/dropdown-filter.d.ts +4 -2
  672. package/dist/types/components/dropdown/dropdown-filter/dropdown-filter.stories.d.ts +76 -12
  673. package/dist/types/components/dropdown/dropdown-native.stories.d.ts +26 -11
  674. package/dist/types/components/dropdown/dropdown-option/dropdown-option.d.ts +7 -2
  675. package/dist/types/components/dropdown/dropdown-wc-default.stories.d.ts +48 -33
  676. package/dist/types/components/dropdown/dropdown-wc-multiselect.stories.d.ts +61 -32
  677. package/dist/types/components/dropdown/dropdown.d.ts +4 -3
  678. package/dist/types/components/footer/footer.stories.d.ts +5 -5
  679. package/dist/types/components/footer/webcomponent/sdds-footer-link/sdds-footer-link.d.ts +13 -0
  680. package/dist/types/components/footer/webcomponent/sdds-footer-link-group/sdds-footer-link-group.d.ts +11 -0
  681. package/dist/types/components/footer/webcomponent/sdds-footer.d.ts +9 -0
  682. package/dist/types/components/{tabs/inline-tabs-fullbleed/inline-tabs-fullbleed.stories.d.ts → footer/webcomponent/sdds-footer.stories.d.ts} +16 -2
  683. package/dist/types/components/header/header-all.stories.d.ts +3 -1
  684. package/dist/types/components/header/header-default.stories.d.ts +3 -1
  685. package/dist/types/components/header/header-inline.stories.d.ts +3 -1
  686. package/dist/types/components/header/header-search.stories.d.ts +3 -1
  687. package/dist/types/components/header/header-toolbar.stories.d.ts +3 -1
  688. package/dist/types/components/link/link.stories.d.ts +13 -3
  689. package/dist/types/components/link/sdds-link.stories.d.ts +9 -9
  690. package/dist/types/components/message/message.stories.d.ts +32 -12
  691. package/dist/types/components/message/sdds-message.stories.d.ts +9 -8
  692. package/dist/types/components/modal/modal-native.stories.d.ts +23 -8
  693. package/dist/types/components/modal/modal-webcomponent.stories.d.ts +22 -4
  694. package/dist/types/components/modal/modal.d.ts +27 -7
  695. package/dist/types/components/popover-canvas/popover-canvas.d.ts +13 -4
  696. package/dist/types/components/popover-canvas/popover-canvas.stories.d.ts +5 -3
  697. package/dist/types/components/popover-menu/popover-menu-icons.stories.d.ts +5 -0
  698. package/dist/types/components/popover-menu/popover-menu.stories.d.ts +5 -0
  699. package/dist/types/components/radio-button/radio-button-component.stories.d.ts +1 -1
  700. package/dist/types/components/radio-button/radio-button.stories.d.ts +6 -1
  701. package/dist/types/components/slider/slider.d.ts +2 -2
  702. package/dist/types/components/slider/slider.stories.d.ts +90 -24
  703. package/dist/types/components/spinner/spinner.stories.d.ts +12 -2
  704. package/dist/types/components/stepper/sdds-stepper.d.ts +17 -0
  705. package/dist/types/components/stepper/stepper-item/sdds-stepper-item.d.ts +17 -0
  706. package/dist/types/components/stepper/stepper.stories.d.ts +25 -9
  707. package/dist/types/components/tabs/folder-tabs/folder-tabs-button/sdds-folder-tabs-button.d.ts +10 -0
  708. package/dist/types/components/tabs/folder-tabs/folder-tabs-link/sdds-folder-tabs-link.d.ts +16 -0
  709. package/dist/types/components/tabs/folder-tabs/folder-tabs.d.ts +38 -0
  710. package/dist/types/components/tabs/{inline-tabs-default/inline-tabs.stories.d.ts → folder-tabs/folder-tabs.stories.d.ts} +14 -11
  711. package/dist/types/components/tabs/inline-tabs/inline-tabs-button/sdds-inline-tabs-button.d.ts +7 -0
  712. package/dist/types/components/tabs/inline-tabs/inline-tabs-link/sdds-inline-tabs-link.d.ts +13 -0
  713. package/dist/types/components/tabs/inline-tabs/inline-tabs.d.ts +40 -0
  714. package/dist/types/components/tabs/inline-tabs/inline-tabs.stories.d.ts +44 -0
  715. package/dist/types/components/tabs/navigation-tabs/navigation-tabs-button/sdds-navigation-tabs-button.d.ts +7 -0
  716. package/dist/types/components/tabs/navigation-tabs/navigation-tabs-link/sdds-navigation-tabs-link.d.ts +13 -0
  717. package/dist/types/components/tabs/navigation-tabs/navigation-tabs.d.ts +25 -10
  718. package/dist/types/components/tabs/navigation-tabs/navigation-tabs.stories.d.ts +32 -1
  719. package/dist/types/components/textarea/textarea.d.ts +2 -0
  720. package/dist/types/components/textarea/textarea.stories.d.ts +50 -27
  721. package/dist/types/components/textfield/textfield.stories.d.ts +68 -47
  722. package/dist/types/components/toast/sdds-toast.d.ts +1 -1
  723. package/dist/types/components/toast/toast.stories.d.ts +8 -9
  724. package/dist/types/components/toggle/sdds-toggle.d.ts +4 -7
  725. package/dist/types/components/toggle/sdds-toggle.stories.d.ts +9 -9
  726. package/dist/types/components/toggle/toggle.stories.d.ts +10 -7
  727. package/dist/types/components/tooltip/tooltip.stories.d.ts +15 -3
  728. package/dist/types/components.d.ts +607 -219
  729. package/{dist/loader → loader}/cdn.js +1 -1
  730. package/{dist/loader → loader}/index.cjs.js +1 -1
  731. package/{dist/loader → loader}/index.d.ts +1 -1
  732. package/loader/index.es2017.js +3 -0
  733. package/{dist/loader → loader}/index.js +2 -2
  734. package/package.json +5 -3
  735. package/readme.md +23 -1
  736. package/dist/cjs/index-aff9d4d5.js.map +0 -1
  737. package/dist/cjs/sdds-breadcrumb-item.cjs.entry.js +0 -27
  738. package/dist/cjs/sdds-breadcrumb-item.cjs.entry.js.map +0 -1
  739. package/dist/cjs/sdds-inline-tab.cjs.entry.js +0 -24
  740. package/dist/cjs/sdds-inline-tab.cjs.entry.js.map +0 -1
  741. package/dist/cjs/sdds-inline-tabs-fullbleed.cjs.entry.js +0 -100
  742. package/dist/cjs/sdds-inline-tabs-fullbleed.cjs.entry.js.map +0 -1
  743. package/dist/collection/components/breadcrumb/breadcrumb-component.css +0 -30
  744. package/dist/collection/components/breadcrumb/breadcrumb-item/breadcrumb-item.js.map +0 -1
  745. package/dist/collection/components/breadcrumb/breadcrumb.js.map +0 -1
  746. package/dist/collection/components/tabs/inline-tabs-default/inline-tab/inline-tab.css +0 -3
  747. package/dist/collection/components/tabs/inline-tabs-default/inline-tab/inline-tab.js.map +0 -1
  748. package/dist/collection/components/tabs/inline-tabs-default/inline-tabs.css +0 -156
  749. package/dist/collection/components/tabs/inline-tabs-default/inline-tabs.js +0 -313
  750. package/dist/collection/components/tabs/inline-tabs-default/inline-tabs.js.map +0 -1
  751. package/dist/collection/components/tabs/inline-tabs-default/inline-tabs.stories.js +0 -72
  752. package/dist/collection/components/tabs/inline-tabs-default/inline-tabs.stories.js.map +0 -1
  753. package/dist/collection/components/tabs/inline-tabs-fullbleed/inline-tabs-fullbleed.css +0 -141
  754. package/dist/collection/components/tabs/inline-tabs-fullbleed/inline-tabs-fullbleed.js +0 -129
  755. package/dist/collection/components/tabs/inline-tabs-fullbleed/inline-tabs-fullbleed.js.map +0 -1
  756. package/dist/collection/components/tabs/inline-tabs-fullbleed/inline-tabs-fullbleed.stories.js +0 -47
  757. package/dist/collection/components/tabs/inline-tabs-fullbleed/inline-tabs-fullbleed.stories.js.map +0 -1
  758. package/dist/components/sdds-breadcrumb-item.js +0 -45
  759. package/dist/components/sdds-breadcrumb-item.js.map +0 -1
  760. package/dist/components/sdds-inline-tab.js +0 -42
  761. package/dist/components/sdds-inline-tab.js.map +0 -1
  762. package/dist/components/sdds-inline-tabs-fullbleed.d.ts +0 -11
  763. package/dist/components/sdds-inline-tabs-fullbleed.js +0 -119
  764. package/dist/components/sdds-inline-tabs-fullbleed.js.map +0 -1
  765. package/dist/components/sdds-link2.js +0 -46
  766. package/dist/components/sdds-link2.js.map +0 -1
  767. package/dist/esm/index-b21fe3b7.js.map +0 -1
  768. package/dist/esm/sdds-breadcrumb-item.entry.js +0 -23
  769. package/dist/esm/sdds-breadcrumb-item.entry.js.map +0 -1
  770. package/dist/esm/sdds-inline-tab.entry.js +0 -20
  771. package/dist/esm/sdds-inline-tab.entry.js.map +0 -1
  772. package/dist/esm/sdds-inline-tabs-fullbleed.entry.js +0 -96
  773. package/dist/esm/sdds-inline-tabs-fullbleed.entry.js.map +0 -1
  774. package/dist/loader/index.es2017.js +0 -3
  775. package/dist/node_modules/@types/jest/index.d.ts +0 -1512
  776. package/dist/tegel/p-0d53607f.entry.js +0 -2
  777. package/dist/tegel/p-0d53607f.entry.js.map +0 -1
  778. package/dist/tegel/p-15ae0f77.entry.js +0 -2
  779. package/dist/tegel/p-15ae0f77.entry.js.map +0 -1
  780. package/dist/tegel/p-1b74896d.js +0 -3
  781. package/dist/tegel/p-1dc0c48a.entry.js +0 -2
  782. package/dist/tegel/p-1dc0c48a.entry.js.map +0 -1
  783. package/dist/tegel/p-243cc1a5.entry.js.map +0 -1
  784. package/dist/tegel/p-24d22924.entry.js +0 -2
  785. package/dist/tegel/p-24d22924.entry.js.map +0 -1
  786. package/dist/tegel/p-26241196.entry.js +0 -2
  787. package/dist/tegel/p-26241196.entry.js.map +0 -1
  788. package/dist/tegel/p-35146934.entry.js.map +0 -1
  789. package/dist/tegel/p-3fcf9763.entry.js +0 -2
  790. package/dist/tegel/p-3fcf9763.entry.js.map +0 -1
  791. package/dist/tegel/p-3fd7d6ce.entry.js +0 -2
  792. package/dist/tegel/p-3fd7d6ce.entry.js.map +0 -1
  793. package/dist/tegel/p-4835650e.entry.js +0 -2
  794. package/dist/tegel/p-4835650e.entry.js.map +0 -1
  795. package/dist/tegel/p-4ee81b96.entry.js +0 -2
  796. package/dist/tegel/p-4ee81b96.entry.js.map +0 -1
  797. package/dist/tegel/p-58cfea69.entry.js +0 -2
  798. package/dist/tegel/p-58cfea69.entry.js.map +0 -1
  799. package/dist/tegel/p-591dfbcd.entry.js +0 -2
  800. package/dist/tegel/p-591dfbcd.entry.js.map +0 -1
  801. package/dist/tegel/p-5b615b67.entry.js +0 -2
  802. package/dist/tegel/p-5b615b67.entry.js.map +0 -1
  803. package/dist/tegel/p-650d5e31.entry.js +0 -2
  804. package/dist/tegel/p-650d5e31.entry.js.map +0 -1
  805. package/dist/tegel/p-7abe1300.entry.js +0 -2
  806. package/dist/tegel/p-7abe1300.entry.js.map +0 -1
  807. package/dist/tegel/p-7e41ac2c.entry.js.map +0 -1
  808. package/dist/tegel/p-847f81ac.entry.js.map +0 -1
  809. package/dist/tegel/p-991b5017.entry.js.map +0 -1
  810. package/dist/tegel/p-9cf4bc66.entry.js +0 -2
  811. package/dist/tegel/p-9cf4bc66.entry.js.map +0 -1
  812. package/dist/tegel/p-af6e7c14.entry.js +0 -2
  813. package/dist/tegel/p-af6e7c14.entry.js.map +0 -1
  814. package/dist/tegel/p-b65ffb92.entry.js +0 -2
  815. package/dist/tegel/p-b65ffb92.entry.js.map +0 -1
  816. package/dist/tegel/p-b72c66f3.entry.js +0 -2
  817. package/dist/tegel/p-b72c66f3.entry.js.map +0 -1
  818. package/dist/tegel/p-bd0af26a.entry.js +0 -2
  819. package/dist/tegel/p-bd0af26a.entry.js.map +0 -1
  820. package/dist/tegel/p-c037d66f.entry.js.map +0 -1
  821. package/dist/tegel/p-c5b3ef65.entry.js.map +0 -1
  822. package/dist/tegel/p-cea5bfcd.entry.js +0 -2
  823. package/dist/tegel/p-cea5bfcd.entry.js.map +0 -1
  824. package/dist/tegel/p-d3d8828b.entry.js +0 -2
  825. package/dist/tegel/p-d3d8828b.entry.js.map +0 -1
  826. package/dist/tegel/p-d42d3400.entry.js +0 -2
  827. package/dist/tegel/p-d42d3400.entry.js.map +0 -1
  828. package/dist/tegel/p-df17ed7c.entry.js +0 -2
  829. package/dist/tegel/p-df17ed7c.entry.js.map +0 -1
  830. package/dist/tegel/p-e7332a61.entry.js +0 -2
  831. package/dist/tegel/p-e7332a61.entry.js.map +0 -1
  832. package/dist/tegel/p-ef70c653.entry.js +0 -2
  833. package/dist/tegel/p-ef70c653.entry.js.map +0 -1
  834. package/dist/types/components/breadcrumb/breadcrumb-item/breadcrumb-item.d.ts +0 -9
  835. package/dist/types/components/tabs/inline-tabs-default/inline-tab/inline-tab.d.ts +0 -6
  836. package/dist/types/components/tabs/inline-tabs-default/inline-tabs.d.ts +0 -40
  837. package/dist/types/components/tabs/inline-tabs-fullbleed/inline-tabs-fullbleed.d.ts +0 -20
  838. /package/dist/tegel/{p-7d097f54.entry.js.map → p-400d74c2.entry.js.map} +0 -0
  839. /package/dist/tegel/{p-73ebb46d.entry.js.map → p-4499e5cd.entry.js.map} +0 -0
  840. /package/dist/tegel/{p-c1f9c2a8.entry.js.map → p-5dc33f45.entry.js.map} +0 -0
  841. /package/dist/tegel/{p-f9d14b96.entry.js.map → p-750b7e5f.entry.js.map} +0 -0
  842. /package/dist/tegel/{p-94c6ef69.entry.js.map → p-7991d22f.entry.js.map} +0 -0
  843. /package/dist/tegel/{p-c46e2117.entry.js.map → p-a2cbef2c.entry.js.map} +0 -0
  844. /package/dist/tegel/{p-ce848ab7.entry.js.map → p-b9b329c0.entry.js.map} +0 -0
  845. /package/dist/types/components/breadcrumb/{breadcrumb.d.ts → sdds-breadcrumb.d.ts} +0 -0
  846. /package/{dist/loader → loader}/package.json +0 -0
@@ -1 +1 @@
1
- {"file":"sdds-modal.entry.js","mappings":";;AAAA,MAAM,QAAQ,GAAG,8+MAA8+M;;MCOl/M,KAAK;;;mBAEW,KAAK;gBAGU,IAAI;mBAGP,QAAQ;gBAGvB,KAAK;;;EAQ7B,MAAM,SAAS;IACb,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;GAClB;EAED,kBAAkB;IAChB,MAAM,KAAK,GAAG,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,sBAAsB,CAAC,CAAC;IAE/D,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE;MACpD,EAAE,CAAC,gBAAgB,CAAC,OAAO,EAAE;QAC3B,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;OACnB,CAAC,CAAC;KACJ,CAAC,CAAC;GACJ;EAED,WAAW,CAAC,CAAC;IACX,MAAM,UAAU,GAAG,CAAC,CAAC,YAAY,EAAE,CAAC;IACpC,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;IAC7B,IACE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,kBAAkB;OACzC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,qBAAqB,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,EACzE;MACA,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;KACnB;GACF;EAED,kBAAkB;IAChB,IAAI,CAAC,kBAAkB,EAAE,CAAC;GAC3B;EAED,MAAM;IACJ,QACE,EAAC,IAAI,IACH,OAAO,EAAE,CAAC,KAAK;QACb,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;OACzB,EACD,KAAK,EAAE,uBAAuB,IAAI,CAAC,IAAI,GAAG,MAAM,GAAG,MAAM,EAAE,IAE3D,WACE,KAAK,EAAE,cAAc,IAAI,CAAC,OAAO,GAAG,uBAAuB,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,IAC5E,IAAI,CAAC,IAAI,GAAG,cAAc,IAAI,CAAC,IAAI,EAAE,GAAG,EAC1C,GAAG,IAEH,WAAK,KAAK,EAAC,mBAAmB,IAC5B,YAAM,IAAI,EAAC,qBAAqB,GAAQ,EACxC,cACE,KAAK,EAAC,kBAAkB,gBACb,OAAO,EAClB,GAAG,EAAE,CAAC,EAAE;QACN,IAAI,CAAC,aAAa,GAAG,EAAiB,CAAC;OACxC,IAED,iBAAW,IAAI,EAAC,OAAO,EAAC,IAAI,EAAC,MAAM,GAAa,CACzC,CACL,EAEN,WAAK,KAAK,EAAC,iBAAiB,IAC1B,YAAM,IAAI,EAAC,iBAAiB,GAAQ,CAChC,EAEN,WAAK,KAAK,EAAC,oBAAoB,IAC7B,YAAM,IAAI,EAAC,oBAAoB,GAAQ,CACnC,CACF,CACD,EACP;GACH;;;;;;;","names":[],"sources":["./src/components/modal/modal.scss?tag=sdds-modal&encapsulation=shadow","./src/components/modal/modal.tsx"],"sourcesContent":["@import '../../mixins/z-index';\n@import 'modal-theme-vars';\n@import '../../mixins/box-sizing';\n@import '../../mixins/focus-state';\n\n//TODO: Find a way to create a mixin in spacings that can be used for screen size in rem\n//Media rules doesn't calculate correct with using rem\n// Screen breakpoints\n$screen-s: 320px; //320px\n$screen-md: 672px; // 672px\n$screen-l: 1056px; //1056px\n$screen-xl: 1312px; //1312px\n$screen-xxl: 1584px; //1584px\n\n$modals: (\n $screen-s: (\n xs: 100%,\n sm: 100%,\n md: 100%,\n lg: 100%,\n ),\n $screen-md: (\n xs: 75%,\n sm: 62.5%,\n md: 75%,\n lg: 100%,\n ),\n $screen-l: (\n xs: 31.25%,\n sm: 43.75%,\n md: 62.5%,\n lg: 75%,\n ),\n $screen-xl: (\n xs: 31.25%,\n sm: 37.5%,\n md: 62.5%,\n lg: 75%,\n ),\n $screen-xxl: (\n xs: 25%,\n sm: 37.5%,\n md: 50%,\n lg: 75%,\n ),\n);\n\n/* MIXINS */\n\n@mixin modal-scroll-inner {\n /* SCROLL STUFF */\n\n /* width */\n &::-webkit-scrollbar {\n width: 5px;\n background-color: var(--sdds-grey-300);\n }\n\n /* Track */\n &::-webkit-scrollbar-track {\n background-color: var(--sdds-grey-300);\n }\n\n /* Handle */\n &::-webkit-scrollbar-thumb {\n background-color: var(--sdds-grey-500);\n }\n}\n\n@mixin modal-scroll-outer {\n /* SCROLL STUFF */\n\n /* width */\n &::-webkit-scrollbar {\n width: 5px;\n background-color: var(--sdds-grey-300);\n border-radius: 0 1em 1em 0;\n }\n\n /* Track */\n &::-webkit-scrollbar-track {\n background-color: var(--sdds-grey-300);\n border-radius: 0 1em 1em 0;\n }\n\n /* Handle */\n &::-webkit-scrollbar-thumb {\n background-color: var(--sdds-grey-500);\n border-radius: 0 1em 1em 0;\n }\n}\n\n@mixin modal-host {\n left: 0;\n top: 0;\n position: fixed;\n height: 100%;\n width: 100%;\n z-index: z(modal);\n background-color: var(--sdds-modal-backdrop);\n padding: 0 16px;\n\n @media (max-width: $screen-s) {\n padding: 0;\n }\n\n &.show {\n display: flex;\n }\n\n &.hide {\n display: none;\n }\n}\n\n@mixin modal-header {\n display: flex;\n padding-bottom: var(--sdds-spacing-element-8);\n position: sticky;\n top: 0;\n background-color: var(--sdds-modal-background);\n z-index: 1;\n\n &::before {\n content: ' ';\n position: absolute;\n height: 16px;\n top: -16px;\n width: 100%;\n background-color: var(--sdds-modal-background);\n }\n}\n\n@mixin modal-headline {\n color: var(--sdds-modal-text);\n font: var(--sdds-headline-05);\n letter-spacing: var(--sdds-headline-05-ls);\n margin: 0;\n flex: 1;\n}\n\n@mixin modal-body {\n color: var(--sdds-modal-text);\n font: var(--sdds-body-01);\n letter-spacing: var(--sdds-body-01-ls);\n padding-bottom: 40px;\n overflow-y: visible;\n padding-right: 16px;\n @include modal-scroll-inner;\n\n @media (min-width: $screen-l) {\n padding-right: 64px;\n }\n}\n\n/* MODAL STYLING */\n\n.sdds-modal {\n @include sdds-box-sizing;\n\n background-color: var(--sdds-modal-background);\n margin: auto;\n position: relative;\n border-radius: 4px;\n padding: 16px;\n max-height: 85vh;\n overflow-y: auto;\n\n @include modal-scroll-outer;\n\n &__actions-sticky {\n overflow: hidden;\n\n .sdds-modal-body {\n font: var(--sdds-body-01);\n letter-spacing: var(--sdds-body-01-ls);\n padding-bottom: 96px;\n margin: 0 -16px 0 0;\n max-height: calc(85vh - 36px);\n overflow-y: auto;\n }\n\n .sdds-modal-actions {\n position: absolute;\n bottom: -1px;\n left: 0;\n right: 0;\n background-color: var(--sdds-modal-background);\n padding: var(--sdds-spacing-element-16);\n display: flex;\n gap: 16px;\n }\n }\n\n &__actions-static {\n .sdds-modal-actions {\n background-color: var(--sdds-modal-background);\n display: flex;\n gap: 16px;\n }\n }\n}\n\n//Width of modals in different breakpoints\n@each $screen, $modals in $modals {\n @media (min-width: $screen) {\n @each $modal, $value in $modals {\n .sdds-modal-#{$modal} {\n width: $value;\n }\n }\n }\n}\n\n@media (max-width: $screen-s) {\n .sdds-modal-md,\n .sdds-modal-lg,\n .sdds-modal-sm {\n height: 100%;\n\n slot[name='sdds-modal-actions']::slotted(*) {\n display: flex;\n }\n }\n}\n\n/* MODAL SUBELEMENTS */\n\n.sdds-modal-header {\n @include modal-header;\n}\n\n.sdds-modal-headline {\n @include modal-headline;\n\n color: var(--sdds-modal-text);\n}\n\n.sdds-modal-body {\n @include modal-body;\n}\n\n.sdds-modal-backdrop {\n @include sdds-box-sizing;\n @include modal-host;\n}\n\nbutton.sdds-modal-close {\n background-color: transparent;\n border: 0;\n padding: 0;\n appearance: unset;\n}\n\n.sdds-modal-close {\n display: inline-block;\n height: auto;\n color: var(--sdds-modal-icon);\n cursor: pointer;\n\n &:focus {\n @include sdds-focus-state;\n }\n\n @media (min-width: $screen-s) {\n margin-left: var(--sdds-spacing-element-16);\n }\n\n @media (min-width: $screen-l) {\n margin-left: var(--sdds-spacing-element-48);\n }\n}\n\n//web component with nested svg\n.sdds-modal-close-btn {\n display: inline-block;\n height: auto;\n background-repeat: no-repeat;\n cursor: pointer;\n\n @media (min-width: $screen-s) {\n margin-left: var(--sdds-spacing-element-16);\n }\n\n @media (min-width: $screen-l) {\n margin-left: var(--sdds-spacing-element-48);\n }\n\n svg {\n fill: var(--sdds-modal-icon);\n }\n}\n\n.sdds-modal-overflow {\n overflow: hidden;\n}\n\n/* WEB COMPONENT STUFF */\n\n:host {\n @include modal-host;\n\n .sdds-modal-close {\n border: none;\n background-color: transparent;\n }\n\n .sdds-modal-close-btn {\n border: none;\n background-color: transparent;\n }\n}\n\n:host(.show) {\n display: flex;\n}\n\n:host(.hide) {\n display: none;\n}\n","import { Component, h, Host, Prop, Element, Method } from '@stencil/core';\n\n@Component({\n tag: 'sdds-modal',\n styleUrl: 'modal.scss',\n shadow: true,\n})\nexport class Modal {\n /** Disables closing modal on clicking on overlay area. */\n @Prop() prevent: boolean = false;\n\n /** Size of modal */\n @Prop() size: 'xs' | 'sm' | 'md' | 'lg' = 'md';\n\n /** Sticky or Static Actions */\n @Prop() actions: 'sticky' | 'static' = 'static';\n\n /* Opens or closes the modal. */\n @Prop() open: boolean = false;\n\n @Element() el: HTMLElement;\n\n closeButtonEl: HTMLElement;\n\n /** Shows the modal */\n @Method()\n async openModal() {\n this.open = true;\n }\n\n setDissmissButtons() {\n const nodes = this.el.querySelectorAll('[data-dismiss-modal]');\n\n [...Array.from(nodes), this.closeButtonEl].forEach((el) => {\n el.addEventListener('click', () => {\n this.open = false;\n });\n });\n }\n\n handleClick(e) {\n const targetList = e.composedPath();\n const target = targetList[0];\n if (\n target.classList[0] === 'sdds-modal-close' ||\n (target.classList[0] === 'sdds-modal-backdrop' && this.prevent === false)\n ) {\n this.open = false;\n }\n }\n\n componentDidRender() {\n this.setDissmissButtons();\n }\n\n render() {\n return (\n <Host\n onClick={(event) => {\n this.handleClick(event);\n }}\n class={`sdds-modal-backdrop ${this.open ? 'show' : 'hide'}`}\n >\n <div\n class={`sdds-modal ${this.actions ? `sdds-modal__actions-${this.actions}` : ''} ${\n this.size ? `sdds-modal-${this.size}` : ''\n } `}\n >\n <div class=\"sdds-modal-header\">\n <slot name=\"sdds-modal-headline\"></slot>\n <button\n class=\"sdds-modal-close\"\n aria-label=\"close\"\n ref={(el) => {\n this.closeButtonEl = el as HTMLElement;\n }}\n >\n <sdds-icon name=\"cross\" size=\"20px\"></sdds-icon>\n </button>\n </div>\n\n <div class=\"sdds-modal-body\">\n <slot name=\"sdds-modal-body\"></slot>\n </div>\n\n <div class=\"sdds-modal-actions\">\n <slot name=\"sdds-modal-actions\"></slot>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"sdds-modal.entry.js","mappings":"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","names":[],"sources":["./src/components/modal/modal.scss?tag=sdds-modal&encapsulation=shadow","./src/components/modal/modal.tsx"],"sourcesContent":["@import '../../mixins/z-index';\n@import 'modal-vars';\n@import '../../mixins/box-sizing';\n@import '../../mixins/focus-state';\n\n//TODO: Find a way to create a mixin in spacings that can be used for screen size in rem\n//Media rules doesn't calculate correct with using rem\n// Screen breakpoints\n$screen-s: 320px; //320px\n$screen-md: 672px; // 672px\n$screen-l: 1056px; //1056px\n$screen-xl: 1312px; //1312px\n$screen-xxl: 1584px; //1584px\n\n$modals: (\n $screen-s: (\n xs: 100%,\n sm: 100%,\n md: 100%,\n lg: 100%,\n ),\n $screen-md: (\n xs: 75%,\n sm: 62.5%,\n md: 75%,\n lg: 100%,\n ),\n $screen-l: (\n xs: 31.25%,\n sm: 43.75%,\n md: 62.5%,\n lg: 75%,\n ),\n $screen-xl: (\n xs: 31.25%,\n sm: 37.5%,\n md: 62.5%,\n lg: 75%,\n ),\n $screen-xxl: (\n xs: 25%,\n sm: 37.5%,\n md: 50%,\n lg: 75%,\n ),\n);\n\n/* MIXINS */\n\n@mixin modal-scroll-inner {\n /* SCROLL STUFF */\n\n /* width */\n &::-webkit-scrollbar {\n width: 5px;\n background-color: var(--sdds-grey-300);\n }\n\n /* Track */\n &::-webkit-scrollbar-track {\n background-color: var(--sdds-grey-300);\n }\n\n /* Handle */\n &::-webkit-scrollbar-thumb {\n background-color: var(--sdds-grey-500);\n }\n}\n\n@mixin modal-scroll-outer {\n /* SCROLL STUFF */\n\n /* width */\n &::-webkit-scrollbar {\n width: 5px;\n background-color: var(--sdds-grey-300);\n border-radius: 0 1em 1em 0;\n }\n\n /* Track */\n &::-webkit-scrollbar-track {\n background-color: var(--sdds-grey-300);\n border-radius: 0 1em 1em 0;\n }\n\n /* Handle */\n &::-webkit-scrollbar-thumb {\n background-color: var(--sdds-grey-500);\n border-radius: 0 1em 1em 0;\n }\n}\n\n@mixin modal-host {\n left: 0;\n top: 0;\n position: fixed;\n height: 100%;\n width: 100%;\n z-index: z(modal);\n background-color: var(--sdds-modal-backdrop);\n padding: 0 16px;\n\n @media (max-width: $screen-s) {\n padding: 0;\n }\n\n &.show {\n display: flex;\n }\n\n &.hide {\n display: none;\n }\n}\n\n@mixin modal-header {\n display: flex;\n padding-bottom: var(--sdds-spacing-element-8);\n position: sticky;\n top: 0;\n background-color: var(--sdds-modal-background);\n z-index: 1;\n\n &::before {\n content: ' ';\n position: absolute;\n height: 16px;\n top: -16px;\n width: 100%;\n background-color: var(--sdds-modal-background);\n }\n}\n\n@mixin modal-headline {\n color: var(--sdds-modal-text);\n font: var(--sdds-headline-05);\n letter-spacing: var(--sdds-headline-05-ls);\n margin: 0;\n flex: 1;\n}\n\n@mixin modal-body {\n color: var(--sdds-modal-text);\n font: var(--sdds-body-01);\n letter-spacing: var(--sdds-body-01-ls);\n padding-bottom: 40px;\n overflow-y: visible;\n padding-right: 16px;\n @include modal-scroll-inner;\n\n @media (min-width: $screen-l) {\n padding-right: 64px;\n }\n}\n\n/* MODAL STYLING */\n\n.sdds-modal {\n @include sdds-box-sizing;\n\n background-color: var(--sdds-modal-background);\n margin: auto;\n position: relative;\n border-radius: 4px;\n padding: 16px;\n max-height: 85vh;\n overflow-y: auto;\n\n @include modal-scroll-outer;\n\n &__actions-sticky {\n overflow: hidden;\n\n .sdds-modal-body {\n font: var(--sdds-body-01);\n letter-spacing: var(--sdds-body-01-ls);\n padding-bottom: 96px;\n margin: 0 -16px 0 0;\n max-height: calc(85vh - 36px);\n overflow-y: auto;\n }\n\n .sdds-modal-actions {\n position: absolute;\n bottom: -1px;\n left: 0;\n right: 0;\n background-color: var(--sdds-modal-background);\n padding: var(--sdds-spacing-element-16);\n display: flex;\n gap: 16px;\n }\n }\n\n &__actions-static {\n .sdds-modal-actions {\n background-color: var(--sdds-modal-background);\n display: flex;\n gap: 16px;\n }\n }\n}\n\n//Width of modals in different breakpoints\n@each $screen, $modals in $modals {\n @media (min-width: $screen) {\n @each $modal, $value in $modals {\n .sdds-modal-#{$modal} {\n width: $value;\n }\n }\n }\n}\n\n@media (max-width: $screen-s) {\n .sdds-modal-md,\n .sdds-modal-lg,\n .sdds-modal-sm {\n height: 100%;\n\n slot[name='sdds-modal-actions']::slotted(*) {\n display: flex;\n }\n }\n}\n\n/* MODAL SUBELEMENTS */\n\n.sdds-modal-header {\n @include modal-header;\n}\n\n.sdds-modal-headline {\n @include modal-headline;\n\n color: var(--sdds-modal-text);\n}\n\n.sdds-modal-body {\n @include modal-body;\n}\n\n.sdds-modal-backdrop {\n @include sdds-box-sizing;\n @include modal-host;\n}\n\nbutton.sdds-modal-close {\n background-color: transparent;\n border: 0;\n padding: 0;\n appearance: unset;\n}\n\n.sdds-modal-close {\n display: inline-block;\n height: auto;\n color: var(--sdds-modal-icon);\n cursor: pointer;\n\n &:focus {\n @include sdds-focus-state;\n }\n\n @media (min-width: $screen-s) {\n margin-left: var(--sdds-spacing-element-16);\n }\n\n @media (min-width: $screen-l) {\n margin-left: var(--sdds-spacing-element-48);\n }\n}\n\n//web component with nested svg\n.sdds-modal-close-btn {\n display: inline-block;\n height: auto;\n background-repeat: no-repeat;\n cursor: pointer;\n\n @media (min-width: $screen-s) {\n margin-left: var(--sdds-spacing-element-16);\n }\n\n @media (min-width: $screen-l) {\n margin-left: var(--sdds-spacing-element-48);\n }\n\n svg {\n fill: var(--sdds-modal-icon);\n }\n}\n\n.sdds-modal-overflow {\n overflow: hidden;\n}\n\n/* WEB COMPONENT STUFF */\n\n:host {\n @include modal-host;\n\n .sdds-modal-close {\n border: none;\n background-color: transparent;\n }\n\n .sdds-modal-close-btn {\n border: none;\n background-color: transparent;\n }\n}\n\n:host(.show) {\n display: flex;\n}\n\n:host(.hide) {\n display: none;\n}\n","import {\n Component,\n h,\n Host,\n Prop,\n Element,\n Method,\n State,\n Event,\n EventEmitter,\n} from '@stencil/core';\n\n@Component({\n tag: 'sdds-modal',\n styleUrl: 'modal.scss',\n shadow: true,\n})\nexport class Modal {\n @Element() host: HTMLElement;\n\n /** Disables closing modal on clicking on overlay area. */\n @Prop() prevent: boolean = false;\n\n /** Size of modal */\n @Prop() size: 'xs' | 'sm' | 'md' | 'lg' = 'md';\n\n /** Sticky or Static Actions */\n @Prop() actions: 'sticky' | 'static' = 'static';\n\n /** CSS selector for the element that will show the modal. */\n @Prop() selector: string;\n\n /** Element that will show the modal (takes priority over selector) */\n @Prop() referenceEl: HTMLElement;\n\n /** Controls whether the modal is shown or not. If this is set hiding and showing\n * will be decided by this prop and will need to be controlled from the outside. */\n @Prop() show: boolean;\n\n // State that keeps track of show/closed state for the modal.\n @State() isShown: boolean = false;\n\n /** Shows the modal. */\n @Method()\n async showModal() {\n this.handleShow();\n }\n\n /** Closes the modal. */\n @Method()\n async closeModal() {\n this.handleClose();\n }\n\n /** Emitts when the modal is closed. */\n @Event({\n eventName: 'sddsClose',\n composed: true,\n cancelable: true,\n bubbles: true,\n })\n sddsClose: EventEmitter<any>;\n\n connectedCallback() {\n if (this.show !== null) {\n this.isShown = this.show;\n }\n this.setDissmissButtons();\n this.setShowButton();\n }\n\n /** Emits a close event and then close the modal if it is not prevented. */\n handleClose = (event?) => {\n const closeEvent = this.sddsClose.emit(event);\n if (!closeEvent.defaultPrevented) {\n this.isShown = false;\n }\n };\n\n handleShow = () => {\n this.isShown = true;\n };\n\n /** Checks if click on modal is on overlay, if so it closes the modal if prevent is not true. */\n handleOverlayClick(event) {\n const targetList = event.composedPath();\n const target = targetList[0];\n if (\n target.classList[0] === 'sdds-modal-close' ||\n (target.classList[0] === 'sdds-modal-backdrop' && this.prevent === false)\n ) {\n this.handleClose(event);\n }\n }\n\n /** Adds an event listener to the reference element that shows/closes the modal. */\n initializeReferenceElement = (referenceEl) => {\n if (referenceEl) {\n referenceEl.addEventListener('click', (event) => {\n event.stopPropagation();\n if (this.isShown) {\n this.handleClose(event);\n } else {\n this.handleShow();\n }\n });\n }\n };\n\n /** Check if there is a referenceElement or selector and adds event listener to them if so. */\n setShowButton = () => {\n if (this.selector || this.referenceEl) {\n const referenceEl = this.referenceEl ?? document.querySelector(this.selector);\n if (referenceEl) {\n this.initializeReferenceElement(referenceEl);\n }\n }\n };\n\n /** Adds an event listener to the dismiss buttons that closes the modal. */\n setDissmissButtons() {\n this.host.querySelectorAll('[data-dismiss-modal]').forEach((dismissButton) => {\n dismissButton.addEventListener('click', (event) => {\n this.handleClose(event);\n });\n });\n }\n\n render() {\n return (\n <Host\n onClick={(event) => {\n this.handleOverlayClick(event);\n }}\n class={`sdds-modal-backdrop ${this.isShown ? 'show' : 'hide'}`}\n >\n <div\n class={`sdds-modal ${this.actions ? `sdds-modal__actions-${this.actions}` : ''} ${\n this.size ? `sdds-modal-${this.size}` : ''\n } `}\n >\n <div class=\"sdds-modal-header\">\n <slot name=\"sdds-modal-headline\"></slot>\n <button class=\"sdds-modal-close\" aria-label=\"close\" onClick={() => this.handleClose()}>\n <sdds-icon name=\"cross\" size=\"20px\"></sdds-icon>\n </button>\n </div>\n\n <div class=\"sdds-modal-body\">\n <slot name=\"sdds-modal-body\"></slot>\n </div>\n\n <div class=\"sdds-modal-actions\">\n <slot name=\"sdds-modal-actions\"></slot>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -0,0 +1,20 @@
1
+ import { r as registerInstance, h, H as Host } from './index-fdfb114c.js';
2
+
3
+ const sddsNavigationTabsButtonCss = ":host{box-sizing:border-box}:host *{box-sizing:border-box}:host button{font:var(--sdds-headline-07);letter-spacing:var(--sdds-headline-07-ls);color:var(--sdds-navigation-tabs-tab-color);padding:18px 0;margin-right:32px;text-decoration:none;display:block;position:relative;transition:color 0.15s ease-in-out;white-space:nowrap;background-color:transparent;border:0}:host button.selected{color:var(--sdds-navigation-tabs-tab-color-selected)}:host button.selected::after{width:100%;background-color:var(--sdds-navigation-tabs-tab-indicator-background-active)}:host button .label{padding:8px 4px}:host button:focus-visible{outline:none}:host button:focus-visible .label{outline:2px solid var(--sdds-blue-400);outline-offset:-2px}:host button:hover{color:var(--sdds-navigation-tabs-tab-color-hover);opacity:1}:host button:hover::after{width:100%}:host button.disabled{color:var(--sdds-navigation-tabs-tab-color-disabled);pointer-events:none}:host button.disabled .label{opacity:var(--sdds-navigation-tabs-tab-color-opacity-disabled)}:host button::after{content:\" \";position:absolute;bottom:0;right:0;left:0;margin-left:auto;width:0;margin-right:auto;height:2px;background-color:var(--sdds-navigation-tabs-tab-indicator-background-hover);transition:width 0.15s ease-in-out;z-index:1}:host(.first){margin-left:32px}:host(.last){margin-right:32px}";
4
+
5
+ const SddsNavigationTabsButton = class {
6
+ constructor(hostRef) {
7
+ registerInstance(this, hostRef);
8
+ this.disabled = false;
9
+ this.selected = false;
10
+ }
11
+ render() {
12
+ return (h(Host, { role: "listitem" }, h("button", { class: `${this.selected ? 'selected' : ''}
13
+ ${this.disabled ? 'disabled' : ''}`, disabled: this.disabled }, h("div", { class: "label" }, h("slot", { name: "label" })))));
14
+ }
15
+ };
16
+ SddsNavigationTabsButton.style = sddsNavigationTabsButtonCss;
17
+
18
+ export { SddsNavigationTabsButton as sdds_navigation_tabs_button };
19
+
20
+ //# sourceMappingURL=sdds-navigation-tabs-button.entry.js.map
@@ -0,0 +1 @@
1
+ {"file":"sdds-navigation-tabs-button.entry.js","mappings":";;AAAA,MAAM,2BAA2B,GAAG,+zCAA+zC;;MCOt1C,wBAAwB;;;oBAEP,KAAK;oBAGL,KAAK;;EAEjC,MAAM;IACJ,QACE,EAAC,IAAI,IAAC,IAAI,EAAC,UAAU,IACnB,cACE,KAAK,EAAE,GAAG,IAAI,CAAC,QAAQ,GAAG,UAAU,GAAG,EAAE;WACxC,IAAI,CAAC,QAAQ,GAAG,UAAU,GAAG,EAAE,EAAE,EAClC,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAEvB,WAAK,KAAK,EAAC,OAAO,IAChB,YAAM,IAAI,EAAC,OAAO,GAAQ,CACtB,CACC,CACJ,EACP;GACH;;;;;;","names":[],"sources":["./src/components/tabs/navigation-tabs/navigation-tabs-button/sdds-navigation-tabs-button.scss?tag=sdds-navigation-tabs-button&encapsulation=shadow","./src/components/tabs/navigation-tabs/navigation-tabs-button/sdds-navigation-tabs-button.tsx"],"sourcesContent":["@import '../../../../mixins/focus-state';\n@import '../../../../mixins/box-sizing';\n\n:host {\n @include sdds-box-sizing;\n\n button {\n font: var(--sdds-headline-07);\n letter-spacing: var(--sdds-headline-07-ls);\n color: var(--sdds-navigation-tabs-tab-color);\n padding: 18px 0;\n margin-right: 32px;\n text-decoration: none;\n display: block;\n position: relative;\n transition: color 0.15s ease-in-out;\n white-space: nowrap;\n background-color: transparent;\n border: 0;\n\n &.selected {\n color: var(--sdds-navigation-tabs-tab-color-selected);\n\n &::after {\n width: 100%;\n background-color: var(--sdds-navigation-tabs-tab-indicator-background-active);\n }\n }\n\n .label {\n padding: 8px 4px;\n }\n\n &:focus-visible {\n outline: none;\n\n .label {\n @include sdds-focus-state;\n }\n }\n\n &:hover {\n color: var(--sdds-navigation-tabs-tab-color-hover);\n opacity: 1;\n\n &::after {\n width: 100%;\n }\n }\n\n &.disabled {\n color: var(--sdds-navigation-tabs-tab-color-disabled);\n pointer-events: none;\n\n .label {\n opacity: var(--sdds-navigation-tabs-tab-color-opacity-disabled);\n }\n }\n\n &::after {\n content: ' ';\n position: absolute;\n bottom: 0;\n right: 0;\n left: 0;\n margin-left: auto;\n width: 0;\n margin-right: auto;\n height: 2px;\n background-color: var(--sdds-navigation-tabs-tab-indicator-background-hover);\n transition: width 0.15s ease-in-out;\n z-index: 1;\n }\n }\n}\n\n:host(.first) {\n margin-left: 32px;\n}\n\n:host(.last) {\n margin-right: 32px;\n}","import { Component, Host, h, Prop } from '@stencil/core';\n\n@Component({\n tag: 'sdds-navigation-tabs-button',\n styleUrl: 'sdds-navigation-tabs-button.scss',\n shadow: true,\n})\nexport class SddsNavigationTabsButton {\n /** Disables the tab. */\n @Prop() disabled: boolean = false;\n\n /** Marks the tab as the selected one. */\n @Prop() selected: boolean = false;\n\n render() {\n return (\n <Host role=\"listitem\">\n <button\n class={`${this.selected ? 'selected' : ''}\n ${this.disabled ? 'disabled' : ''}`}\n disabled={this.disabled}\n >\n <div class=\"label\">\n <slot name=\"label\"></slot>\n </div>\n </button>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -0,0 +1,25 @@
1
+ import { r as registerInstance, h, H as Host } from './index-fdfb114c.js';
2
+
3
+ const sddsNavigationTabsLinkCss = ":host{box-sizing:border-box}:host *{box-sizing:border-box}:host a{font:var(--sdds-headline-07);letter-spacing:var(--sdds-headline-07-ls);color:var(--sdds-navigation-tabs-tab-color);padding:18px 0;margin-right:32px;text-decoration:none;display:block;position:relative;transition:color 0.15s ease-in-out;white-space:nowrap;background-color:transparent;border:0}:host a.selected{color:var(--sdds-navigation-tabs-tab-color-selected)}:host a.selected::after{width:100%;background-color:var(--sdds-navigation-tabs-tab-indicator-background-active)}:host a .label{padding:8px 4px}:host a:focus-visible{outline:none}:host a:focus-visible .label{outline:2px solid var(--sdds-blue-400);outline-offset:-2px}:host a:hover{color:var(--sdds-navigation-tabs-tab-color-hover);opacity:1}:host a:hover::after{width:100%}:host a.disabled{color:var(--sdds-navigation-tabs-tab-color-disabled);pointer-events:none}:host a.disabled .label{opacity:var(--sdds-navigation-tabs-tab-color-opacity-disabled)}:host a::after{content:\" \";position:absolute;bottom:0;right:0;left:0;margin-left:auto;width:0;margin-right:auto;height:2px;background-color:var(--sdds-navigation-tabs-tab-indicator-background-hover);transition:width 0.15s ease-in-out;z-index:1}:host(.first){margin-left:32px}:host(.last){margin-right:32px}";
4
+
5
+ const SddsNavigationTabsLink = class {
6
+ constructor(hostRef) {
7
+ registerInstance(this, hostRef);
8
+ this.disabled = false;
9
+ this.selected = false;
10
+ this.href = undefined;
11
+ this.target = '_self';
12
+ this.rel = 'noopener';
13
+ }
14
+ render() {
15
+ return (h(Host, { role: "listitem" }, h("a", { class: `
16
+ ${this.selected ? 'selected' : ''}
17
+ ${this.disabled ? 'disabled' : ''}
18
+ `, href: this.href, target: this.target, rel: this.rel }, h("div", { class: "label" }, h("slot", { name: "label" })))));
19
+ }
20
+ };
21
+ SddsNavigationTabsLink.style = sddsNavigationTabsLinkCss;
22
+
23
+ export { SddsNavigationTabsLink as sdds_navigation_tabs_link };
24
+
25
+ //# sourceMappingURL=sdds-navigation-tabs-link.entry.js.map
@@ -0,0 +1 @@
1
+ {"file":"sdds-navigation-tabs-link.entry.js","mappings":";;AAAA,MAAM,yBAAyB,GAAG,wwCAAwwC;;MCO7xC,sBAAsB;;;oBAEL,KAAK;oBAGL,KAAK;;kBAMyB,OAAO;eAG3C,UAAU;;EAEhC,MAAM;IACJ,QACE,EAAC,IAAI,IAAC,IAAI,EAAC,UAAU,IACnB,SACE,KAAK,EAAE;UACP,IAAI,CAAC,QAAQ,GAAG,UAAU,GAAG,EAAE;UAC/B,IAAI,CAAC,QAAQ,GAAG,UAAU,GAAG,EAAE;SAChC,EACC,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,GAAG,EAAE,IAAI,CAAC,GAAG,IAEb,WAAK,KAAK,EAAC,OAAO,IAChB,YAAM,IAAI,EAAC,OAAO,GAAQ,CACtB,CACJ,CACC,EACP;GACH;;;;;;","names":[],"sources":["./src/components/tabs/navigation-tabs/navigation-tabs-link/sdds-navigation-tabs-link.scss?tag=sdds-navigation-tabs-link&encapsulation=shadow","./src/components/tabs/navigation-tabs/navigation-tabs-link/sdds-navigation-tabs-link.tsx"],"sourcesContent":["@import '../../../../mixins/focus-state';\n@import '../../../../mixins/box-sizing';\n\n:host {\n @include sdds-box-sizing;\n\n a {\n font: var(--sdds-headline-07);\n letter-spacing: var(--sdds-headline-07-ls);\n color: var(--sdds-navigation-tabs-tab-color);\n padding: 18px 0;\n margin-right: 32px;\n text-decoration: none;\n display: block;\n position: relative;\n transition: color 0.15s ease-in-out;\n white-space: nowrap;\n background-color: transparent;\n border: 0;\n\n &.selected {\n color: var(--sdds-navigation-tabs-tab-color-selected);\n\n &::after {\n width: 100%;\n background-color: var(--sdds-navigation-tabs-tab-indicator-background-active);\n }\n }\n\n .label {\n padding: 8px 4px;\n }\n\n &:focus-visible {\n outline: none;\n\n .label {\n @include sdds-focus-state;\n }\n }\n\n &:hover {\n color: var(--sdds-navigation-tabs-tab-color-hover);\n opacity: 1;\n\n &::after {\n width: 100%;\n }\n }\n\n &.disabled {\n color: var(--sdds-navigation-tabs-tab-color-disabled);\n pointer-events: none;\n\n .label {\n opacity: var(--sdds-navigation-tabs-tab-color-opacity-disabled);\n }\n }\n\n &::after {\n content: ' ';\n position: absolute;\n bottom: 0;\n right: 0;\n left: 0;\n margin-left: auto;\n width: 0;\n margin-right: auto;\n height: 2px;\n background-color: var(--sdds-navigation-tabs-tab-indicator-background-hover);\n transition: width 0.15s ease-in-out;\n z-index: 1;\n }\n }\n}\n\n:host(.first) {\n margin-left: 32px;\n}\n\n:host(.last) {\n margin-right: 32px;\n}\n","import { Component, Host, h, Prop } from '@stencil/core';\n\n@Component({\n tag: 'sdds-navigation-tabs-link',\n styleUrl: 'sdds-navigation-tabs-link.scss',\n shadow: true,\n})\nexport class SddsNavigationTabsLink {\n /** Disables the tab. */\n @Prop() disabled: boolean = false;\n\n /** Marks the tab as the selected one. */\n @Prop() selected: boolean = false;\n\n /** Href for the link */\n @Prop() href: string;\n\n /** Where to open the linked URL */\n @Prop() target: '_self' | '_blank' | '_parent' | '_top' = '_self';\n\n /** 'noopener' is a security measure for legacy browsers that preventsthe opened page from getting access to the original page when using target='_blank'. */\n @Prop() rel: string = 'noopener';\n\n render() {\n return (\n <Host role=\"listitem\">\n <a\n class={`\n ${this.selected ? 'selected' : ''}\n ${this.disabled ? 'disabled' : ''}\n `}\n href={this.href}\n target={this.target}\n rel={this.rel}\n >\n <div class=\"label\">\n <slot name=\"label\"></slot>\n </div>\n </a>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1,22 +1,77 @@
1
- import { r as registerInstance, h, H as Host, g as getElement } from './index-b21fe3b7.js';
1
+ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-fdfb114c.js';
2
2
 
3
- const navigationTabsCss = ".sdds-navigation-tabs{box-sizing:border-box;background-color:var(--sdds-navigation-tabs-background);position:relative;display:flex;}.sdds-navigation-tabs *{box-sizing:border-box}.sdds-navigation-tabs::after{content:\" \";display:block;border-bottom:1px solid var(--sdds-navigation-tabs-horizontal-divider-background);opacity:var(--sdds-navigation-tabs-horizontal-divider-opacity);left:0;right:0;bottom:0;position:absolute}.sdds-navigation-tabs-wrapper{display:flex;flex-wrap:nowrap;width:100%;overflow-x:scroll;scrollbar-width:none}.sdds-navigation-tabs-wrapper::-webkit-scrollbar{display:none}.sdds-navigation-tabs-forward{cursor:pointer;width:48px;height:100%;border:0;position:absolute;right:0;top:0;background-color:var(--sdds-navigation-tabs-scroll-btn-background);display:flex;justify-content:center;align-items:center;opacity:0;pointer-events:none}.sdds-navigation-tabs-forward__show{opacity:1;pointer-events:all}.sdds-navigation-tabs-forward:hover{background-color:var(--sdds-navigation-tabs-scroll-btn-background-hover);text-decoration:none}.sdds-navigation-tabs-forward:active{background-color:var(--sdds-navigation-tabs-scroll-btn-background-active)}.sdds-navigation-tabs-forward:focus{outline:2px solid var(--sdds-blue-400);outline-offset:-2px}.sdds-navigation-tabs-back{cursor:pointer;width:48px;height:100%;border:0;position:absolute;left:0;top:0;background-color:var(--sdds-navigation-tabs-scroll-btn-background);display:flex;justify-content:center;align-items:center;opacity:0;pointer-events:none}.sdds-navigation-tabs-back__show{opacity:1;pointer-events:all}.sdds-navigation-tabs-back:hover{background-color:var(--sdds-navigation-tabs-scroll-btn-background-hover)}.sdds-navigation-tabs-back:active{background-color:var(--sdds-navigation-tabs-scroll-btn-background-active)}.sdds-navigation-tabs-back:focus{outline:2px solid var(--sdds-blue-400);outline-offset:-2px}::slotted(.sdds-navigation-tabs-tab){font:var(--sdds-headline-07);letter-spacing:var(--sdds-headline-07-ls);color:var(--sdds-navigation-tabs-tab-color);opacity:0.6;padding:26px 0;margin-right:32px;text-decoration:none;display:block;position:relative;transition:color 0.15s ease-in-out;white-space:nowrap;background-color:transparent;border:0}::slotted(.sdds-navigation-tabs-tab)::after{content:\" \";position:absolute;bottom:0;right:0;left:0;margin-left:auto;width:0;margin-right:auto;height:2px;background-color:var(--sdds-navigation-tabs-tab-indicator-background-hover);transition:width 0.15s ease-in-out;z-index:1}::slotted(.sdds-navigation-tabs-tab:first-child){margin-left:32px}::slotted(.sdds-navigation-tabs-tab:last-child){margin-right:32px}::slotted(.sdds-navigation-tabs-tab:hover){color:var(--sdds-navigation-tabs-tab-color-hover);opacity:1}::slotted(.sdds-navigation-tabs-tab:hover)::after{width:100%}::slotted(.sdds-navigation-tabs-tab:focus){outline:2px solid var(--sdds-blue-400);outline-offset:-2px;color:var(--sdds-navigation-tabs-tab-color-focus);opacity:1}::slotted(.sdds-navigation-tabs-tab:focus)::after{width:0}::slotted(.sdds-navigation-tabs-tab-active){color:var(--sdds-navigation-tabs-tab-color-active);opacity:1}::slotted(.sdds-navigation-tabs-tab-active)::after{width:100%;background-color:var(--sdds-navigation-tabs-tab-indicator-background-active)}::slotted(.sdds-navigation-tabs-tab-active:focus)::after{width:100%}::slotted(.sdds-navigation-tabs-tab-disabled){color:var(--sdds-navigation-tabs-tab-color-disabled);opacity:var(--sdds-navigation-tabs-tab-color-opacity-disabled);pointer-events:none}";
3
+ const navigationTabsCss = ":host{box-sizing:border-box;display:flex;background-color:var(--sdds-inline-tabs-background);position:relative}:host *{box-sizing:border-box}:host::after{content:\" \";display:block;border-bottom:1px solid var(--sdds-inline-tabs-horizontal-divider-background);opacity:var(--sdds-inline-tabs-horizontal-divider-opacity);left:0;right:0;bottom:0;position:absolute}:host .wrapper{display:flex;flex-wrap:nowrap;white-space:nowrap;width:100%;overflow-x:scroll;scrollbar-width:none}:host .wrapper::-webkit-scrollbar{display:none}:host .scroll-right-button{right:0;z-index:201}:host .scroll-left-button{left:0;z-index:201}:host .scroll-right-button,:host .scroll-left-button{color:var(--sdds-folder-tabs-scroll-btn-color);cursor:pointer;border:0;width:0;background-color:var(--sdds-inline-tabs-scroll-btn-background);display:none;justify-content:center;align-items:center;opacity:0;pointer-events:none;position:sticky}:host .scroll-right-button.show,:host .scroll-left-button.show{min-width:48px;display:block;opacity:1;pointer-events:all}:host .scroll-right-button:hover,:host .scroll-left-button:hover{background-color:var(--sdds-folder-tabs-scroll-btn-background-hover)}:host .scroll-right-button:active,:host .scroll-left-button:active{background-color:var(--sdds-folder-tabs-scroll-btn-background-active)}:host .scroll-right-button:focus,:host .scroll-left-button:focus{outline:2px solid var(--sdds-blue-400);outline-offset:-2px}:host .scroll-right-button svg,:host .scroll-left-button svg{fill:var(--sdds-folder-tabs-scroll-btn-color)}";
4
4
 
5
5
  const NavigationTabs = class {
6
6
  constructor(hostRef) {
7
7
  registerInstance(this, hostRef);
8
+ this.sddsChange = createEvent(this, "sddsChange", 7);
8
9
  this.navWrapperElement = null; // reference to container with nav buttons
9
10
  this.componentWidth = 0; // visible width of this component
10
11
  this.buttonsWidth = 0; // total width of all nav items combined
11
12
  this.scrollWidth = 0; // total amount that is possible to scroll in the nav wrapper
12
- this.buttonWidth = 0; // current calculated width of the largest nav button
13
- this.tabs = [];
13
+ this.modeVariant = 'primary';
14
14
  this.showLeftScroll = false;
15
15
  this.showRightScroll = false;
16
- this.modeVariant = null;
16
+ this.selectedTab = undefined;
17
17
  }
18
- componentDidRender() {
19
- this.calculateButtonWidth();
18
+ /** Selects a tab based on tabindex, will not select a disabled tab. */
19
+ async selectTab(tabIndex) {
20
+ if (!this.children[tabIndex].disabled) {
21
+ this.children.forEach((element) => element.removeAttribute('selected'));
22
+ this.children = this.children.map((element, index) => {
23
+ if (index === tabIndex) {
24
+ element.setAttribute('selected', '');
25
+ this.selectedTab = {
26
+ tab: element.innerText,
27
+ tabIndex: index,
28
+ };
29
+ }
30
+ return element;
31
+ });
32
+ }
33
+ return {
34
+ selectedTab: this.selectedTab.tab,
35
+ selectedTabIndex: this.selectedTab.tabIndex,
36
+ };
37
+ }
38
+ handleSelectedTabChange() {
39
+ this.host.setAttribute('selected-tab', this.selectedTab.tab);
40
+ this.host.setAttribute('selected-tab-index', `${this.selectedTab.tabIndex}`);
41
+ this.sddsChange.emit({
42
+ selectedTab: this.selectedTab,
43
+ });
44
+ }
45
+ connectedCallback() {
46
+ this.children = Array.from(this.host.children);
47
+ this.children = this.children.map((item, index) => {
48
+ item.addEventListener('click', () => {
49
+ if (!item.disabled) {
50
+ this.children.forEach((element) => element.removeAttribute('selected'));
51
+ item.setAttribute('selected', '');
52
+ this.selectedTab = {
53
+ tab: item.innerText,
54
+ tabIndex: index,
55
+ };
56
+ }
57
+ });
58
+ if (index === 0) {
59
+ item.classList.add('first');
60
+ }
61
+ if (index === this.children.length - 1) {
62
+ item.classList.add('last');
63
+ }
64
+ if (item.selected) {
65
+ this.selectedTab = {
66
+ tab: item.innerText,
67
+ tabIndex: index,
68
+ };
69
+ }
70
+ return item;
71
+ });
72
+ this.children = Array.from(this.host.children);
73
+ this.children[0].classList.add('first');
74
+ this.children[this.children.length - 1].classList.add('last');
20
75
  }
21
76
  componentDidLoad() {
22
77
  const resizeObserver = new ResizeObserver((entries) => {
@@ -43,28 +98,15 @@ const NavigationTabs = class {
43
98
  });
44
99
  });
45
100
  resizeObserver.observe(this.navWrapperElement);
46
- this.calculateButtonWidth();
47
- }
48
- calculateButtonWidth() {
49
- let best = 0;
50
- const navButtons = Array.from(this.host.children);
51
- navButtons.forEach((navButton) => {
52
- const style = window.getComputedStyle(navButton);
53
- const width = navButton.clientWidth + parseFloat(style.marginLeft) + parseFloat(style.marginRight);
54
- if (width > best) {
55
- best = width;
56
- }
57
- });
58
- this.buttonWidth = best;
59
101
  }
60
102
  scrollRight() {
61
103
  const scroll = this.navWrapperElement.scrollLeft;
62
- this.navWrapperElement.scrollLeft = scroll + this.buttonWidth;
104
+ this.navWrapperElement.scrollLeft = scroll + this.buttonsWidth;
63
105
  this.evaluateScrollButtons();
64
106
  }
65
107
  scrollLeft() {
66
108
  const scroll = this.navWrapperElement.scrollLeft;
67
- this.navWrapperElement.scrollLeft = scroll - this.buttonWidth;
109
+ this.navWrapperElement.scrollLeft = scroll - this.buttonsWidth;
68
110
  this.evaluateScrollButtons();
69
111
  }
70
112
  evaluateScrollButtons() {
@@ -83,11 +125,14 @@ const NavigationTabs = class {
83
125
  }
84
126
  }
85
127
  render() {
86
- return (h(Host, { class: `${this.modeVariant !== null ? `sdds-mode-variant-${this.modeVariant}` : ''}` }, h("div", { class: "sdds-navigation-tabs" }, h("div", { class: "sdds-navigation-tabs-wrapper", ref: (el) => {
128
+ return (h(Host, { class: `${this.modeVariant ? `sdds-mode-variant-${this.modeVariant}` : ''}` }, h("div", { role: "list", class: "wrapper", ref: (el) => {
87
129
  this.navWrapperElement = el;
88
- } }, h("slot", null)), h("div", { class: "sdds-navigation-tabs-navigation" }, h("button", { class: `sdds-navigation-tabs-forward ${this.showRightScroll ? 'sdds-navigation-tabs-forward-show' : ''}`, onClick: () => this.scrollRight(), disabled: !this.showRightScroll }, h("svg", { width: "20", height: "20", viewBox: "0 0 20 20", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { "fill-rule": "evenodd", "clip-rule": "evenodd", d: "M6.1147 17.3291C5.87062 17.0851 5.87062 16.6893 6.1147 16.4453L12.2948 10.2652C12.4412 10.1187 12.4412 9.8813 12.2948 9.73485L6.1147 3.55476C5.87062 3.31068 5.87062 2.91496 6.1147 2.67088C6.35878 2.4268 6.75451 2.4268 6.99858 2.67088L13.1787 8.85097C13.8133 9.48557 13.8133 10.5145 13.1787 11.1491L6.99858 17.3291C6.75451 17.5732 6.35878 17.5732 6.1147 17.3291Z", fill: "#0D0F13" }))), h("button", { class: `sdds-navigation-tabs-back ${this.showLeftScroll ? 'sdds-navigation-tabs-back-show' : ''}`, onClick: () => this.scrollLeft(), disabled: !this.showLeftScroll }, h("svg", { width: "20", height: "20", viewBox: "0 0 20 20", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { "fill-rule": "evenodd", "clip-rule": "evenodd", d: "M13.8853 2.67085C14.1294 2.91493 14.1294 3.31066 13.8853 3.55473L7.70522 9.73482C7.55878 9.88127 7.55878 10.1187 7.70522 10.2652L13.8853 16.4452C14.1294 16.6893 14.1294 17.085 13.8853 17.3291C13.6412 17.5732 13.2455 17.5732 13.0014 17.3291L6.82134 11.149C6.18674 10.5144 6.18674 9.48554 6.82134 8.85094L13.0014 2.67085C13.2455 2.42677 13.6412 2.42677 13.8853 2.67085Z", fill: "#0D0F13" })))))));
130
+ } }, h("button", { class: `scroll-left-button ${this.showLeftScroll ? 'show' : ''}`, onClick: () => this.scrollLeft(), disabled: !this.showLeftScroll }, h("sdds-icon", { name: "chevron_left", size: "20px" })), h("slot", null), h("button", { class: `scroll-right-button ${this.showRightScroll ? 'show' : ''}`, onClick: () => this.scrollRight(), disabled: !this.showRightScroll }, h("sdds-icon", { name: "chevron_right", size: "20px" })))));
89
131
  }
90
132
  get host() { return getElement(this); }
133
+ static get watchers() { return {
134
+ "selectedTab": ["handleSelectedTabChange"]
135
+ }; }
91
136
  };
92
137
  NavigationTabs.style = navigationTabsCss;
93
138
 
@@ -1 +1 @@
1
- {"file":"sdds-navigation-tabs.entry.js","mappings":"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","names":[],"sources":["./src/components/tabs/navigation-tabs/navigation-tabs.scss?tag=sdds-navigation-tabs&encapsulation=shadow","./src/components/tabs/navigation-tabs/navigation-tabs.tsx"],"sourcesContent":["@import '../../../mixins/focus-state';\n@import '../../../mixins/box-sizing';\n\n\n.sdds-navigation-tabs {\n @include sdds-box-sizing;\n\n background-color: var(--sdds-navigation-tabs-background);\n position: relative;\n display: flex;\n\n &::after {\n content: ' ';\n display: block;\n border-bottom: 1px solid var(--sdds-navigation-tabs-horizontal-divider-background);\n opacity: var(--sdds-navigation-tabs-horizontal-divider-opacity);\n left: 0;\n right: 0;\n bottom: 0;\n position: absolute;\n }\n\n &-wrapper {\n display: flex;\n flex-wrap: nowrap;\n width: 100%;\n overflow-x: scroll;\n scrollbar-width: none;\n\n &::-webkit-scrollbar {\n display: none;\n }\n }\n\n &-forward {\n cursor: pointer;\n width: 48px;\n height: 100%;\n border: 0;\n position: absolute;\n right: 0;\n top: 0;\n background-color: var(--sdds-navigation-tabs-scroll-btn-background);\n display: flex;\n justify-content: center;\n align-items: center;\n opacity: 0;\n pointer-events: none;\n\n &__show {\n opacity: 1;\n pointer-events: all;\n }\n\n &:hover {\n background-color: var(--sdds-navigation-tabs-scroll-btn-background-hover);\n text-decoration: none;\n }\n\n &:active {\n background-color: var(--sdds-navigation-tabs-scroll-btn-background-active);\n }\n\n &:focus {\n @include sdds-focus-state;\n }\n }\n\n &-back {\n cursor: pointer;\n width: 48px;\n height: 100%;\n border: 0;\n position: absolute;\n left: 0;\n top: 0;\n background-color: var(--sdds-navigation-tabs-scroll-btn-background);\n display: flex;\n justify-content: center;\n align-items: center;\n opacity: 0;\n pointer-events: none;\n\n &__show {\n opacity: 1;\n pointer-events: all;\n }\n\n &:hover {\n background-color: var(--sdds-navigation-tabs-scroll-btn-background-hover);\n }\n\n &:active {\n background-color: var(--sdds-navigation-tabs-scroll-btn-background-active);\n }\n\n &:focus {\n @include sdds-focus-state;\n }\n }\n\n /* tab */\n ::slotted(&-tab) {\n //fixme: headline-07 has a line-height that is not matching old storybook\n font: var(--sdds-headline-07);\n letter-spacing: var(--sdds-headline-07-ls);\n color: var(--sdds-navigation-tabs-tab-color);\n opacity:0.6;\n padding: 26px 0;\n margin-right: 32px;\n text-decoration: none;\n display: block;\n position: relative;\n transition: color 0.15s ease-in-out;\n white-space: nowrap;\n background-color: transparent;\n border: 0;\n\n &::after {\n content: ' ';\n position: absolute;\n bottom: 0;\n right: 0;\n left: 0;\n margin-left: auto;\n width: 0;\n margin-right: auto;\n height: 2px;\n background-color: var(--sdds-navigation-tabs-tab-indicator-background-hover);\n transition: width 0.15s ease-in-out;\n z-index: 1;\n }\n }\n\n ::slotted(&-tab:first-child) {\n margin-left: 32px;\n }\n\n ::slotted(&-tab:last-child) {\n margin-right: 32px;\n }\n\n /* tab states */\n ::slotted(&-tab:hover) {\n color: var(--sdds-navigation-tabs-tab-color-hover);\n opacity: 1;\n\n &::after {\n width: 100%;\n }\n }\n\n ::slotted(&-tab:focus) {\n @include sdds-focus-state;\n\n color: var(--sdds-navigation-tabs-tab-color-focus);\n opacity: 1;\n\n &::after {\n width: 0;\n }\n }\n\n ::slotted(&-tab-active) {\n color: var(--sdds-navigation-tabs-tab-color-active);\n opacity:1;\n\n &::after {\n width: 100%;\n\n background-color: var(--sdds-navigation-tabs-tab-indicator-background-active);\n }\n }\n\n ::slotted(&-tab-active:focus)::after {\n width: 100%;\n }\n\n ::slotted(&-tab-disabled) {\n color: var(--sdds-navigation-tabs-tab-color-disabled);\n opacity: var(--sdds-navigation-tabs-tab-color-opacity-disabled);\n pointer-events: none;\n }\n}\n","import { Component, Host, State, Element, h, Prop } from '@stencil/core';\n\n@Component({\n tag: 'sdds-navigation-tabs',\n styleUrl: 'navigation-tabs.scss',\n shadow: true,\n})\nexport class NavigationTabs {\n @Element() host: HTMLElement;\n\n @State() tabs: Array<any> = []; // array with metadata for slotted children\n\n @State() showLeftScroll: boolean = false;\n\n @State() showRightScroll: boolean = false;\n \n /** Variant of the tabs, primary= on white, secondary= on grey50 */\n @Prop() modeVariant: 'primary' | 'secondary' = null;\n\n navWrapperElement: HTMLElement = null; // reference to container with nav buttons\n\n componentWidth: number = 0; // visible width of this component\n\n buttonsWidth: number = 0; // total width of all nav items combined\n\n scrollWidth: number = 0; // total amount that is possible to scroll in the nav wrapper\n\n buttonWidth: number = 0; // current calculated width of the largest nav button\n\n componentDidRender() {\n this.calculateButtonWidth();\n }\n\n componentDidLoad() {\n const resizeObserver = new ResizeObserver((entries) => {\n entries.forEach((entry) => {\n const componentWidth = entry.contentRect.width;\n let buttonsWidth = 0;\n\n const navButtons = Array.from(this.host.children);\n navButtons.forEach((navButton: HTMLElement) => {\n const style = window.getComputedStyle(navButton);\n buttonsWidth +=\n navButton.clientWidth + parseFloat(style.marginLeft) + parseFloat(style.marginRight);\n\n navButton.classList.add('sdds-navigation-tabs-tab');\n });\n\n this.componentWidth = componentWidth;\n this.buttonsWidth = buttonsWidth;\n this.scrollWidth = buttonsWidth - componentWidth;\n\n if (this.buttonsWidth > this.componentWidth) {\n this.evaluateScrollButtons();\n } else {\n this.showLeftScroll = false;\n this.showRightScroll = false;\n }\n });\n });\n\n resizeObserver.observe(this.navWrapperElement);\n\n this.calculateButtonWidth();\n }\n\n calculateButtonWidth() {\n let best = 0;\n const navButtons = Array.from(this.host.children);\n navButtons.forEach((navButton: HTMLElement) => {\n const style = window.getComputedStyle(navButton);\n const width =\n navButton.clientWidth + parseFloat(style.marginLeft) + parseFloat(style.marginRight);\n\n if (width > best) {\n best = width;\n }\n });\n\n this.buttonWidth = best;\n }\n\n scrollRight() {\n const scroll = this.navWrapperElement.scrollLeft;\n this.navWrapperElement.scrollLeft = scroll + this.buttonWidth;\n\n this.evaluateScrollButtons();\n }\n\n scrollLeft() {\n const scroll = this.navWrapperElement.scrollLeft;\n this.navWrapperElement.scrollLeft = scroll - this.buttonWidth;\n\n this.evaluateScrollButtons();\n }\n\n evaluateScrollButtons() {\n const scroll = this.navWrapperElement.scrollLeft;\n\n if (scroll >= this.scrollWidth) {\n this.showRightScroll = false;\n } else {\n this.showRightScroll = true;\n }\n\n if (scroll <= 0) {\n this.showLeftScroll = false;\n } else {\n this.showLeftScroll = true;\n }\n }\n\n render() {\n return (\n <Host class={`${this.modeVariant !== null ? `sdds-mode-variant-${this.modeVariant}`: ''}`}>\n <div class=\"sdds-navigation-tabs\">\n <div\n class=\"sdds-navigation-tabs-wrapper\"\n ref={(el) => {\n this.navWrapperElement = el as HTMLElement;\n }}\n >\n <slot />\n </div>\n <div class=\"sdds-navigation-tabs-navigation\">\n <button\n class={`sdds-navigation-tabs-forward ${\n this.showRightScroll ? 'sdds-navigation-tabs-forward-show' : ''\n }`}\n onClick={() => this.scrollRight()}\n disabled={!this.showRightScroll}\n >\n <svg\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M6.1147 17.3291C5.87062 17.0851 5.87062 16.6893 6.1147 16.4453L12.2948 10.2652C12.4412 10.1187 12.4412 9.8813 12.2948 9.73485L6.1147 3.55476C5.87062 3.31068 5.87062 2.91496 6.1147 2.67088C6.35878 2.4268 6.75451 2.4268 6.99858 2.67088L13.1787 8.85097C13.8133 9.48557 13.8133 10.5145 13.1787 11.1491L6.99858 17.3291C6.75451 17.5732 6.35878 17.5732 6.1147 17.3291Z\"\n fill=\"#0D0F13\"\n ></path>\n </svg>\n </button>\n <button\n class={`sdds-navigation-tabs-back ${\n this.showLeftScroll ? 'sdds-navigation-tabs-back-show' : ''\n }`}\n onClick={() => this.scrollLeft()}\n disabled={!this.showLeftScroll}\n >\n <svg\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fill-rule=\"evenodd\"\n clip-rule=\"evenodd\"\n d=\"M13.8853 2.67085C14.1294 2.91493 14.1294 3.31066 13.8853 3.55473L7.70522 9.73482C7.55878 9.88127 7.55878 10.1187 7.70522 10.2652L13.8853 16.4452C14.1294 16.6893 14.1294 17.085 13.8853 17.3291C13.6412 17.5732 13.2455 17.5732 13.0014 17.3291L6.82134 11.149C6.18674 10.5144 6.18674 9.48554 6.82134 8.85094L13.0014 2.67085C13.2455 2.42677 13.6412 2.42677 13.8853 2.67085Z\"\n fill=\"#0D0F13\"\n ></path>\n </svg>\n </button>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"sdds-navigation-tabs.entry.js","mappings":"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","names":[],"sources":["./src/components/tabs/navigation-tabs/navigation-tabs.scss?tag=sdds-navigation-tabs&encapsulation=shadow","./src/components/tabs/navigation-tabs/navigation-tabs.tsx"],"sourcesContent":["@import '../../../mixins/focus-state';\n@import '../../../mixins/box-sizing';\n@import '../../../mixins/z-index';\n\n:host {\n @include sdds-box-sizing;\n\n display: flex;\n background-color: var(--sdds-inline-tabs-background);\n position: relative;\n\n &::after {\n content: ' ';\n display: block;\n border-bottom: 1px solid var(--sdds-inline-tabs-horizontal-divider-background);\n opacity: var(--sdds-inline-tabs-horizontal-divider-opacity);\n left: 0;\n right: 0;\n bottom: 0;\n position: absolute;\n }\n\n .wrapper {\n display: flex;\n flex-wrap: nowrap;\n white-space: nowrap;\n width: 100%;\n overflow-x: scroll;\n scrollbar-width: none;\n\n &::-webkit-scrollbar {\n display: none;\n }\n }\n\n .scroll-right-button {\n right: 0;\n z-index: calc(z(tab) + 1);\n }\n\n .scroll-left-button {\n left: 0;\n z-index: calc(z(tab) + 1);\n }\n\n .scroll-right-button,\n .scroll-left-button {\n color: var(--sdds-folder-tabs-scroll-btn-color);\n cursor: pointer;\n border: 0;\n width: 0;\n background-color: var(--sdds-inline-tabs-scroll-btn-background);\n display: none;\n justify-content: center;\n align-items: center;\n opacity: 0;\n pointer-events: none;\n position: sticky;\n\n &.show {\n min-width: 48px;\n display: block;\n opacity: 1;\n pointer-events: all;\n }\n\n &:hover {\n background-color: var(--sdds-folder-tabs-scroll-btn-background-hover);\n }\n\n &:active {\n background-color: var(--sdds-folder-tabs-scroll-btn-background-active);\n }\n\n &:focus {\n @include sdds-focus-state;\n }\n\n svg {\n fill: var(--sdds-folder-tabs-scroll-btn-color);\n }\n }\n}\n","import {\n Component,\n Host,\n State,\n Element,\n h,\n Prop,\n Event,\n EventEmitter,\n Watch,\n Method,\n} from '@stencil/core';\n\n@Component({\n tag: 'sdds-navigation-tabs',\n styleUrl: 'navigation-tabs.scss',\n shadow: true,\n})\nexport class NavigationTabs {\n /** Variant of the tabs, primary= on white, secondary= on grey50 */\n @Prop() modeVariant: 'primary' | 'secondary' = 'primary';\n\n @Element() host: HTMLElement;\n\n @State() showLeftScroll: boolean = false;\n\n @State() showRightScroll: boolean = false;\n\n @State() selectedTab: {\n tab: string;\n tabIndex: number;\n };\n\n private navWrapperElement: HTMLElement = null; // reference to container with nav buttons\n\n private componentWidth: number = 0; // visible width of this component\n\n private buttonsWidth: number = 0; // total width of all nav items combined\n\n private scrollWidth: number = 0; // total amount that is possible to scroll in the nav wrapper\n\n private children: Array<HTMLSddsNavigationTabsLinkElement | HTMLSddsNavigationTabsButtonElement>;\n\n /** Selects a tab based on tabindex, will not select a disabled tab. */\n @Method()\n async selectTab(tabIndex: number) {\n if (!this.children[tabIndex].disabled) {\n this.children.forEach((element) => element.removeAttribute('selected'));\n this.children = this.children.map((element, index) => {\n if (index === tabIndex) {\n element.setAttribute('selected', '');\n this.selectedTab = {\n tab: element.innerText,\n tabIndex: index,\n };\n }\n return element;\n });\n }\n return {\n selectedTab: this.selectedTab.tab,\n selectedTabIndex: this.selectedTab.tabIndex,\n };\n }\n\n @Event({\n eventName: 'sddsChange',\n composed: true,\n cancelable: true,\n bubbles: true,\n })\n sddsChange: EventEmitter<{\n selectedTab: {\n tab: string;\n tabIndex: number;\n };\n }>;\n\n @Watch('selectedTab')\n handleSelectedTabChange() {\n this.host.setAttribute('selected-tab', this.selectedTab.tab);\n this.host.setAttribute('selected-tab-index', `${this.selectedTab.tabIndex}`);\n this.sddsChange.emit({\n selectedTab: this.selectedTab,\n });\n }\n\n connectedCallback() {\n this.children = Array.from(this.host.children) as Array<\n HTMLSddsFolderTabsLinkElement | HTMLSddsFolderTabsButtonElement\n >;\n this.children = this.children.map((item, index) => {\n item.addEventListener('click', () => {\n if (!item.disabled) {\n this.children.forEach((element) => element.removeAttribute('selected'));\n item.setAttribute('selected', '');\n this.selectedTab = {\n tab: item.innerText,\n tabIndex: index,\n };\n }\n });\n if (index === 0) {\n item.classList.add('first');\n }\n if (index === this.children.length - 1) {\n item.classList.add('last');\n }\n if (item.selected) {\n this.selectedTab = {\n tab: item.innerText,\n tabIndex: index,\n };\n }\n return item;\n });\n\n this.children = Array.from(this.host.children) as Array<\n HTMLSddsNavigationTabsLinkElement | HTMLSddsNavigationTabsButtonElement\n >;\n this.children[0].classList.add('first');\n this.children[this.children.length - 1].classList.add('last');\n }\n\n componentDidLoad() {\n const resizeObserver = new ResizeObserver((entries) => {\n entries.forEach((entry) => {\n const componentWidth = entry.contentRect.width;\n let buttonsWidth = 0;\n\n const navButtons = Array.from(this.host.children);\n navButtons.forEach((navButton: HTMLElement) => {\n const style = window.getComputedStyle(navButton);\n buttonsWidth +=\n navButton.clientWidth + parseFloat(style.marginLeft) + parseFloat(style.marginRight);\n\n navButton.classList.add('sdds-navigation-tabs-tab');\n });\n\n this.componentWidth = componentWidth;\n this.buttonsWidth = buttonsWidth;\n this.scrollWidth = buttonsWidth - componentWidth;\n\n if (this.buttonsWidth > this.componentWidth) {\n this.evaluateScrollButtons();\n } else {\n this.showLeftScroll = false;\n this.showRightScroll = false;\n }\n });\n });\n\n resizeObserver.observe(this.navWrapperElement);\n }\n\n scrollRight() {\n const scroll = this.navWrapperElement.scrollLeft;\n this.navWrapperElement.scrollLeft = scroll + this.buttonsWidth;\n\n this.evaluateScrollButtons();\n }\n\n scrollLeft() {\n const scroll = this.navWrapperElement.scrollLeft;\n this.navWrapperElement.scrollLeft = scroll - this.buttonsWidth;\n\n this.evaluateScrollButtons();\n }\n\n evaluateScrollButtons() {\n const scroll = this.navWrapperElement.scrollLeft;\n\n if (scroll >= this.scrollWidth) {\n this.showRightScroll = false;\n } else {\n this.showRightScroll = true;\n }\n\n if (scroll <= 0) {\n this.showLeftScroll = false;\n } else {\n this.showLeftScroll = true;\n }\n }\n\n render() {\n return (\n <Host class={`${this.modeVariant ? `sdds-mode-variant-${this.modeVariant}` : ''}`}>\n <div\n role=\"list\"\n class=\"wrapper\"\n ref={(el) => {\n this.navWrapperElement = el as HTMLElement;\n }}\n >\n <button\n class={`scroll-left-button ${this.showLeftScroll ? 'show' : ''}`}\n onClick={() => this.scrollLeft()}\n disabled={!this.showLeftScroll}\n >\n <sdds-icon name=\"chevron_left\" size=\"20px\"></sdds-icon>\n </button>\n <slot />\n <button\n class={`scroll-right-button ${this.showRightScroll ? 'show' : ''}`}\n onClick={() => this.scrollRight()}\n disabled={!this.showRightScroll}\n >\n <sdds-icon name=\"chevron_right\" size=\"20px\"></sdds-icon>\n </button>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1,79 +1,106 @@
1
- import { r as registerInstance, h, H as Host, g as getElement } from './index-b21fe3b7.js';
1
+ import { r as registerInstance, h, H as Host, g as getElement } from './index-fdfb114c.js';
2
2
  import { c as createPopper } from './popper-f860750c.js';
3
3
 
4
- const popoverCanvasCss = ":host{box-sizing:border-box;min-width:160px;min-height:160px;color:var(--sdds-popover-canvas-color);background-color:var(--sdds-popover-canvas-background);padding:16px;box-shadow:0 3px 3px rgba(0, 0, 0, 0.15), 0 -1px 1px rgba(0, 0, 0, 0.1);border-radius:4px;z-index:800;display:none}:host *{box-sizing:border-box}:host(.sdds-popover-canvas-show){opacity:1;display:block}";
4
+ const popoverCanvasCss = ":host{box-sizing:border-box;color:var(--sdds-popover-canvas-color);background-color:var(--sdds-popover-canvas-background);box-shadow:0 3px 3px rgba(0, 0, 0, 0.15), 0 -1px 1px rgba(0, 0, 0, 0.1);border-radius:4px;z-index:800;display:none}:host *{box-sizing:border-box}:host(.sdds-popover-canvas-show){display:block}";
5
5
 
6
6
  const PopoverCanvas = class {
7
7
  constructor(hostRef) {
8
8
  registerInstance(this, hostRef);
9
+ this.initialize = (referenceEl) => {
10
+ this.popperInstance = createPopper(referenceEl, this.host, {
11
+ placement: this.placement,
12
+ modifiers: [
13
+ {
14
+ name: 'offset',
15
+ options: {
16
+ offset: [this.offsetSkidding, this.offsetDistance],
17
+ },
18
+ },
19
+ ...this.modifiers,
20
+ ],
21
+ });
22
+ if (this.show === null) {
23
+ referenceEl.addEventListener('click', (event) => {
24
+ event.stopPropagation();
25
+ if (this.isShown) {
26
+ this.isShown = false;
27
+ }
28
+ else {
29
+ this.isShown = true;
30
+ }
31
+ });
32
+ }
33
+ };
9
34
  this.selector = '';
10
35
  this.referenceEl = undefined;
11
- this.show = false;
36
+ this.show = null;
12
37
  this.placement = 'auto';
13
38
  this.offsetSkidding = 0;
14
39
  this.offsetDistance = 8;
40
+ this.modifiers = [];
15
41
  this.renderedShowValue = false;
16
42
  this.popperInstance = undefined;
17
43
  this.target = undefined;
44
+ this.isShown = false;
45
+ }
46
+ onShowChange(newValue) {
47
+ this.isShown = newValue;
18
48
  }
19
- handleOutsideClick() {
20
- if (this.show) {
21
- this.show = false;
49
+ onReferenceElChange(newValue, oldValue) {
50
+ var _a;
51
+ if (newValue !== oldValue) {
52
+ (_a = this.popperInstance) === null || _a === void 0 ? void 0 : _a.destroy();
53
+ if (newValue) {
54
+ this.initialize(newValue);
55
+ }
56
+ }
57
+ }
58
+ onAnyClick(event) {
59
+ if (this.isShown && this.show === null) {
60
+ // Source: https://lamplightdev.com/blog/2021/04/10/how-to-detect-clicks-outside-of-a-web-component/
61
+ const isClickOutside = !event.composedPath().includes(this.host);
62
+ if (isClickOutside) {
63
+ this.isShown = false;
64
+ }
65
+ }
66
+ }
67
+ connectedCallback() {
68
+ if (this.show !== null) {
69
+ this.isShown = this.show;
22
70
  }
23
71
  }
24
72
  componentDidLoad() {
25
73
  var _a;
26
- this.target = (_a = this.referenceEl) !== null && _a !== void 0 ? _a : document.querySelector(this.selector);
27
- this.renderedShowValue = this.show;
28
- this.popperInstance = createPopper(this.target, this.popoverCanvasElement, {
29
- placement: this.placement,
30
- modifiers: [
31
- {
32
- name: 'offset',
33
- options: {
34
- offset: [this.offsetSkidding, this.offsetDistance],
35
- },
36
- },
37
- ],
38
- });
39
- const showCanvas = () => {
40
- this.show = true;
41
- };
42
- const hideCanvas = () => {
43
- this.show = false;
44
- };
45
- this.target.addEventListener('mousedown', (event) => {
46
- event.stopPropagation();
47
- if (this.show) {
48
- hideCanvas();
74
+ if (this.selector || this.referenceEl) {
75
+ const referenceEl = (_a = this.referenceEl) !== null && _a !== void 0 ? _a : document.querySelector(this.selector);
76
+ if (referenceEl) {
77
+ this.initialize(referenceEl);
49
78
  }
50
79
  else {
51
- showCanvas();
80
+ console.error(`Could not initialize popover-canvas: element with selector '${this.selector}' not found.`);
52
81
  }
53
- });
54
- this.popoverCanvasElement.addEventListener('mousemove', (event) => {
55
- event.stopPropagation();
56
- });
57
- this.popoverCanvasElement.addEventListener('mousedown', (event) => {
58
- event.stopPropagation();
59
- });
82
+ }
60
83
  }
61
84
  componentDidRender() {
62
- if (this.show && !this.renderedShowValue) {
85
+ if (this.isShown && !this.renderedShowValue) {
63
86
  // Here we update the popper position since its position is wrong
64
87
  // before it is rendered.
65
88
  this.popperInstance.update();
66
89
  }
67
- this.renderedShowValue = this.show;
90
+ this.renderedShowValue = this.isShown;
68
91
  }
69
92
  disconnectedCallback() {
70
93
  var _a;
71
94
  (_a = this.popperInstance) === null || _a === void 0 ? void 0 : _a.destroy();
72
95
  }
73
96
  render() {
74
- return (h(Host, { class: `sdds-popover-canvas ${this.show ? 'sdds-popover-canvas-show' : ''}` }, h("slot", null)));
97
+ return (h(Host, { class: `sdds-popover-canvas ${this.isShown ? 'sdds-popover-canvas-show' : ''}` }, h("slot", null)));
75
98
  }
76
- get popoverCanvasElement() { return getElement(this); }
99
+ get host() { return getElement(this); }
100
+ static get watchers() { return {
101
+ "show": ["onShowChange"],
102
+ "referenceEl": ["onReferenceElChange"]
103
+ }; }
77
104
  };
78
105
  PopoverCanvas.style = popoverCanvasCss;
79
106
 
@@ -1 +1 @@
1
- {"file":"sdds-popover-canvas.entry.js","mappings":";;;AAAA,MAAM,gBAAgB,GAAG,oXAAoX;;MCShY,aAAa;;;oBAIG,EAAE;;gBAML,KAAK;qBAGE,MAAM;0BAGJ,CAAC;0BAGD,CAAC;6BAEI,KAAK;;;;EAO3C,kBAAkB;IAChB,IAAI,IAAI,CAAC,IAAI,EAAE;MACb,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;KACnB;GACF;EAED,gBAAgB;;IACd,IAAI,CAAC,MAAM,GAAG,MAAA,IAAI,CAAC,WAAW,mCAAI,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACxE,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC;IAEnC,IAAI,CAAC,cAAc,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,oBAAoB,EAAE;MACzE,SAAS,EAAE,IAAI,CAAC,SAAS;MACzB,SAAS,EAAE;QACT;UACE,IAAI,EAAE,QAAQ;UACd,OAAO,EAAE;YACP,MAAM,EAAE,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC;WACnD;SACF;OACF;KACF,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG;MACjB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;KAClB,CAAC;IAEF,MAAM,UAAU,GAAG;MACjB,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;KACnB,CAAC;IAEF,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC,KAAK;MAC9C,KAAK,CAAC,eAAe,EAAE,CAAC;MAExB,IAAI,IAAI,CAAC,IAAI,EAAE;QACb,UAAU,EAAE,CAAC;OACd;WAAM;QACL,UAAU,EAAE,CAAC;OACd;KACF,CAAC,CAAC;IAEH,IAAI,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC,KAAK;MAC5D,KAAK,CAAC,eAAe,EAAE,CAAC;KACzB,CAAC,CAAC;IAEH,IAAI,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC,KAAK;MAC5D,KAAK,CAAC,eAAe,EAAE,CAAC;KACzB,CAAC,CAAC;GACJ;EAED,kBAAkB;IAChB,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE;;;MAGxC,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC;KAC9B;IACD,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC;GACpC;EAED,oBAAoB;;IAClB,MAAA,IAAI,CAAC,cAAc,0CAAE,OAAO,EAAE,CAAC;GAChC;EAED,MAAM;IACJ,QACE,EAAC,IAAI,IAAC,KAAK,EAAE,uBAAuB,IAAI,CAAC,IAAI,GAAG,0BAA0B,GAAG,EAAE,EAAE,IAC/E,eAAa,CACR,EACP;GACH;;;;;;;","names":[],"sources":["./src/components/popover-canvas/popover-canvas.scss?tag=sdds-popover-canvas&encapsulation=shadow","./src/components/popover-canvas/popover-canvas.tsx"],"sourcesContent":["@import '../../mixins/box-sizing';\n\n@import '../../mixins/z-index';\n\n:host {\n @include sdds-box-sizing;\n\n min-width: 160px;\n min-height: 160px;\n color: var(--sdds-popover-canvas-color);\n background-color: var(--sdds-popover-canvas-background);\n padding: 16px;\n box-shadow: 0 3px 3px rgb(0 0 0 / 15%), 0 -1px 1px rgb(0 0 0 / 10%);\n border-radius: 4px;\n z-index: z(tooltip);\n display: none;\n}\n\n:host(.sdds-popover-canvas-show) {\n opacity: 1;\n display: block;\n}\n","import { Component, Host, Element, Listen, h, Prop, State } from '@stencil/core';\nimport { createPopper } from '@popperjs/core';\nimport type { Placement, Instance } from '@popperjs/core';\n\n@Component({\n tag: 'sdds-popover-canvas',\n styleUrl: 'popover-canvas.scss',\n shadow: true,\n})\nexport class PopoverCanvas {\n @Element() popoverCanvasElement!: HTMLElement;\n\n /** The CSS-selector for an element that will trigger the popover */\n @Prop() selector: string = '';\n\n /** Element that will trigger the popover (takes priority over selector) */\n @Prop() referenceEl: HTMLElement;\n\n /** Decides if the Popover Canvas should be visible from the start */\n @Prop() show: boolean = false;\n\n /** Decides the placement of the Popover Canvas */\n @Prop() placement: Placement = 'auto';\n\n /** Sets the offset skidding */\n @Prop() offsetSkidding: number = 0;\n\n /** Sets the offset distance */\n @Prop() offsetDistance: number = 8;\n\n @State() renderedShowValue: boolean = false;\n\n @State() popperInstance: Instance;\n\n @State() target: any;\n\n @Listen('mousedown', { target: 'window' })\n handleOutsideClick() {\n if (this.show) {\n this.show = false;\n }\n }\n\n componentDidLoad() {\n this.target = this.referenceEl ?? document.querySelector(this.selector);\n this.renderedShowValue = this.show;\n\n this.popperInstance = createPopper(this.target, this.popoverCanvasElement, {\n placement: this.placement,\n modifiers: [\n {\n name: 'offset',\n options: {\n offset: [this.offsetSkidding, this.offsetDistance],\n },\n },\n ],\n });\n\n const showCanvas = () => {\n this.show = true;\n };\n\n const hideCanvas = () => {\n this.show = false;\n };\n\n this.target.addEventListener('mousedown', (event) => {\n event.stopPropagation();\n\n if (this.show) {\n hideCanvas();\n } else {\n showCanvas();\n }\n });\n\n this.popoverCanvasElement.addEventListener('mousemove', (event) => {\n event.stopPropagation();\n });\n\n this.popoverCanvasElement.addEventListener('mousedown', (event) => {\n event.stopPropagation();\n });\n }\n\n componentDidRender() {\n if (this.show && !this.renderedShowValue) {\n // Here we update the popper position since its position is wrong\n // before it is rendered.\n this.popperInstance.update();\n }\n this.renderedShowValue = this.show;\n }\n\n disconnectedCallback() {\n this.popperInstance?.destroy();\n }\n\n render() {\n return (\n <Host class={`sdds-popover-canvas ${this.show ? 'sdds-popover-canvas-show' : ''}`}>\n <slot></slot>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"sdds-popover-canvas.entry.js","mappings":";;;AAAA,MAAM,gBAAgB,GAAG,4TAA4T;;MCSxU,aAAa;;;IA6DxB,eAAU,GAAG,CAAC,WAAW;MACvB,IAAI,CAAC,cAAc,GAAG,YAAY,CAAC,WAAW,EAAE,IAAI,CAAC,IAAI,EAAE;QACzD,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,SAAS,EAAE;UACT;YACE,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;cACP,MAAM,EAAE,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC;aACnD;WACF;UACD,GAAG,IAAI,CAAC,SAAS;SAClB;OACF,CAAC,CAAC;MAEH,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE;QACtB,WAAW,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,KAAK;UAC1C,KAAK,CAAC,eAAe,EAAE,CAAC;UACxB,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;WACtB;eAAM;YACL,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;WACrB;SACF,CAAC,CAAC;OACJ;KACF,CAAC;oBAjFyB,EAAE;;gBAQL,IAAI;qBAGG,MAAM;0BAGJ,CAAC;0BAGD,CAAC;qBAGJ,EAAE;6BAEM,KAAK;;;mBAMf,KAAK;;EAGjC,YAAY,CAAC,QAAiB;IAC5B,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC;GACzB;EAGD,mBAAmB,CAAC,QAAqB,EAAE,QAAqB;;IAC9D,IAAI,QAAQ,KAAK,QAAQ,EAAE;MACzB,MAAA,IAAI,CAAC,cAAc,0CAAE,OAAO,EAAE,CAAC;MAE/B,IAAI,QAAQ,EAAE;QACZ,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;OAC3B;KACF;GACF;EAGD,UAAU,CAAC,KAAiB;IAC1B,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE;;MAEtC,MAAM,cAAc,GAAG,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAW,CAAC,CAAC;MACxE,IAAI,cAAc,EAAE;QAClB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;OACtB;KACF;GACF;EA4BD,iBAAiB;IACf,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE;MACtB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC;KAC1B;GACF;EAED,gBAAgB;;IACd,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,WAAW,EAAE;MACrC,MAAM,WAAW,GAAG,MAAA,IAAI,CAAC,WAAW,mCAAI,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;MAE9E,IAAI,WAAW,EAAE;QACf,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;OAC9B;WAAM;QACL,OAAO,CAAC,KAAK,CACX,+DAA+D,IAAI,CAAC,QAAQ,cAAc,CAC3F,CAAC;OACH;KACF;GACF;EAED,kBAAkB;IAChB,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE;;;MAG3C,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC;KAC9B;IACD,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC;GACvC;EAED,oBAAoB;;IAClB,MAAA,IAAI,CAAC,cAAc,0CAAE,OAAO,EAAE,CAAC;GAChC;EAED,MAAM;IACJ,QACE,EAAC,IAAI,IAAC,KAAK,EAAE,uBAAuB,IAAI,CAAC,OAAO,GAAG,0BAA0B,GAAG,EAAE,EAAE,IAClF,eAAa,CACR,EACP;GACH;;;;;;;;;;;","names":[],"sources":["./src/components/popover-canvas/popover-canvas.scss?tag=sdds-popover-canvas&encapsulation=shadow","./src/components/popover-canvas/popover-canvas.tsx"],"sourcesContent":["@import '../../mixins/box-sizing';\n\n@import '../../mixins/z-index';\n\n:host {\n @include sdds-box-sizing;\n\n color: var(--sdds-popover-canvas-color);\n background-color: var(--sdds-popover-canvas-background);\n box-shadow: 0 3px 3px rgb(0 0 0 / 15%), 0 -1px 1px rgb(0 0 0 / 10%);\n border-radius: 4px;\n z-index: z(tooltip);\n display: none;\n}\n\n:host(.sdds-popover-canvas-show) {\n display: block;\n}\n","import { Component, Host, Element, Listen, h, Prop, State, Watch } from '@stencil/core';\nimport { createPopper } from '@popperjs/core';\nimport type { Placement, Instance } from '@popperjs/core';\n\n@Component({\n tag: 'sdds-popover-canvas',\n styleUrl: 'popover-canvas.scss',\n shadow: true,\n})\nexport class PopoverCanvas {\n @Element() host!: HTMLSddsPopoverCanvasElement;\n\n /** The CSS-selector for an element that will trigger the popover */\n @Prop() selector: string = '';\n\n /** Element that will trigger the popover (takes priority over selector) */\n @Prop() referenceEl: HTMLElement;\n\n /** Controls wether the popover is shown or not. If this is set hiding and showing\n * will be decided by this prop and will need to be controlled from the outside.\n */\n @Prop() show: boolean = null;\n\n /** Decides the placement of the Popover Canvas. See https://popper.js.org/docs/v2/constructors/#placement */\n @Prop() placement: Placement = 'auto';\n\n /** Sets the offset skidding */\n @Prop() offsetSkidding: number = 0;\n\n /** Sets the offset distance */\n @Prop() offsetDistance: number = 8;\n\n /** Array of modifier objects to pass to popper.js. See https://popper.js.org/docs/v2/modifiers/ */\n @Prop() modifiers: Object[] = [];\n\n @State() renderedShowValue: boolean = false;\n\n @State() popperInstance: Instance;\n\n @State() target: any;\n\n @State() isShown: boolean = false;\n\n @Watch('show')\n onShowChange(newValue: boolean) {\n this.isShown = newValue;\n }\n\n @Watch('referenceEl')\n onReferenceElChange(newValue: HTMLElement, oldValue: HTMLElement) {\n if (newValue !== oldValue) {\n this.popperInstance?.destroy();\n\n if (newValue) {\n this.initialize(newValue);\n }\n }\n }\n\n @Listen('click', { target: 'window' })\n onAnyClick(event: MouseEvent) {\n if (this.isShown && this.show === null) {\n // Source: https://lamplightdev.com/blog/2021/04/10/how-to-detect-clicks-outside-of-a-web-component/\n const isClickOutside = !event.composedPath().includes(this.host as any);\n if (isClickOutside) {\n this.isShown = false;\n }\n }\n }\n\n initialize = (referenceEl) => {\n this.popperInstance = createPopper(referenceEl, this.host, {\n placement: this.placement,\n modifiers: [\n {\n name: 'offset',\n options: {\n offset: [this.offsetSkidding, this.offsetDistance],\n },\n },\n ...this.modifiers,\n ],\n });\n\n if (this.show === null) {\n referenceEl.addEventListener('click', (event) => {\n event.stopPropagation();\n if (this.isShown) {\n this.isShown = false;\n } else {\n this.isShown = true;\n }\n });\n }\n };\n\n connectedCallback() {\n if (this.show !== null) {\n this.isShown = this.show;\n }\n }\n\n componentDidLoad() {\n if (this.selector || this.referenceEl) {\n const referenceEl = this.referenceEl ?? document.querySelector(this.selector);\n\n if (referenceEl) {\n this.initialize(referenceEl);\n } else {\n console.error(\n `Could not initialize popover-canvas: element with selector '${this.selector}' not found.`,\n );\n }\n }\n }\n\n componentDidRender() {\n if (this.isShown && !this.renderedShowValue) {\n // Here we update the popper position since its position is wrong\n // before it is rendered.\n this.popperInstance.update();\n }\n this.renderedShowValue = this.isShown;\n }\n\n disconnectedCallback() {\n this.popperInstance?.destroy();\n }\n\n render() {\n return (\n <Host class={`sdds-popover-canvas ${this.isShown ? 'sdds-popover-canvas-show' : ''}`}>\n <slot></slot>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h, H as Host, g as getElement } from './index-b21fe3b7.js';
1
+ import { r as registerInstance, h, H as Host, g as getElement } from './index-fdfb114c.js';
2
2
  import { c as createPopper } from './popper-f860750c.js';
3
3
 
4
4
  const popoverMenuCss = ":host{box-sizing:border-box;overflow:hidden;width:160px;background-color:var(--sdds-popover-menu-background);padding:16px;box-shadow:0 3px 3px rgba(0, 0, 0, 0.15), 0 -1px 1px rgba(0, 0, 0, 0.1);border-radius:4px;display:none;z-index:800}:host *{box-sizing:border-box}:host(.sdds-popover-menu-show){opacity:1;display:block}";
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, g as getElement } from './index-b21fe3b7.js';
1
+ import { r as registerInstance, c as createEvent, h, g as getElement } from './index-fdfb114c.js';
2
2
 
3
3
  const radioButtonComponentCss = ".sc-sdds-radio-button:root,.sdds-mode-light.sc-sdds-radio-button{--sdds-radio-button-color:var(--sdds-grey-958);--sdds-radio-button-interaction-01:var(--sdds-blue-800);--sdds-radio-button-interaction-02:var(--sdds-white);--sdds-radio-button-background-hover:var(--sdds-blue-800);--sdds-radio-button-background-focus:var(--sdds-blue-800);--sdds-radio-button-disabled:var(--sdds-grey-600);--sdds-radio-button-border-color-disabled-after:var(--sdds-grey-700);--sdds-radio-button-color-disabled-after:var(--sdds-grey-700);--sdds-radio-button-color-disabled-before:var(--sdds-grey-700)}.sdds-mode-dark.sc-sdds-radio-button{--sdds-radio-button-color:var(--sdds-white);--sdds-radio-button-interaction-01:var(--sdds-white);--sdds-radio-button-interaction-02:var(--sdds-grey-958);--sdds-radio-button-background-hover:var(--sdds-white);--sdds-radio-button-background-focus:var(--sdds-white);--sdds-radio-button-disabled:var(--sdds-grey-600);--sdds-radio-button-border-color-disabled-after:var(--sdds-grey-700);--sdds-radio-button-color-disabled-after:var(--sdds-grey-700)}.sdds-radio-button.sc-sdds-radio-button{box-sizing:border-box;display:flex;align-items:center;margin-left:-4px;font:var(--sdds-detail-02);letter-spacing:var(--sdds-detail-02-ls);color:var(--sdds-radio-button-color)}.sdds-radio-button.sc-sdds-radio-button *.sc-sdds-radio-button{box-sizing:border-box}.sdds-radio-button.sc-sdds-radio-button .sdds-form-input[type=radio].sc-sdds-radio-button{appearance:none;outline:none;margin:0;border:0;width:24px;height:24px;border-radius:50%;position:relative;cursor:pointer}.sdds-radio-button.sc-sdds-radio-button .sdds-form-input[type=radio].sc-sdds-radio-button+label.sc-sdds-radio-button{padding:var(--sdds-spacing-element-4) 0 var(--sdds-spacing-element-4) var(--sdds-spacing-element-4);cursor:pointer}.sdds-radio-button.sc-sdds-radio-button .sdds-form-input[type=radio].sc-sdds-radio-button::before,.sdds-radio-button.sc-sdds-radio-button .sdds-form-input[type=radio].sc-sdds-radio-button::after{content:\"\";position:absolute;border-radius:50%;box-sizing:border-box}.sdds-radio-button.sc-sdds-radio-button .sdds-form-input[type=radio].sc-sdds-radio-button::before{width:24px;height:24px;left:0;top:0}.sdds-radio-button.sc-sdds-radio-button .sdds-form-input[type=radio].sc-sdds-radio-button::after{border:1px solid var(--sdds-radio-button-interaction-01);background-color:var(--sdds-radio-button-interaction-02);width:16px;height:16px;left:4px;top:4px}.sdds-radio-button.sc-sdds-radio-button .sdds-form-input[type=radio].sc-sdds-radio-button:hover::before{background-color:var(--sdds-radio-button-background-hover);opacity:0.12}.sdds-radio-button.sc-sdds-radio-button .sdds-form-input[type=radio].sc-sdds-radio-button:focus::before{background-color:var(--sdds-radio-button-background-focus);opacity:0.24;animation:rb-focus 0.4s cubic-bezier(0.65, 0.05, 0.38, 0.95) forwards}.sdds-radio-button.sc-sdds-radio-button .sdds-form-input[type=radio].sc-sdds-radio-button:disabled,.sdds-radio-button.sc-sdds-radio-button .sdds-form-input[type=radio].disabled.sc-sdds-radio-button{cursor:not-allowed}.sdds-radio-button.sc-sdds-radio-button .sdds-form-input[type=radio].sc-sdds-radio-button:disabled::after,.sdds-radio-button.sc-sdds-radio-button .sdds-form-input[type=radio].disabled.sc-sdds-radio-button::after{border-color:var(--sdds-radio-button-border-color-disabled-after);background-color:var(--sdds-radio-button-interaction-02)}.sdds-radio-button.sc-sdds-radio-button .sdds-form-input[type=radio].sc-sdds-radio-button:disabled+label.sc-sdds-radio-button,.sdds-radio-button.sc-sdds-radio-button .sdds-form-input[type=radio].disabled.sc-sdds-radio-button+label.sc-sdds-radio-button{color:var(--sdds-radio-button-disabled);cursor:not-allowed}.sdds-radio-button.sc-sdds-radio-button .sdds-form-input[type=radio].sc-sdds-radio-button:disabled:hover::before,.sdds-radio-button.sc-sdds-radio-button .sdds-form-input[type=radio].disabled.sc-sdds-radio-button:hover::before{display:none;opacity:1}.sdds-radio-button.sc-sdds-radio-button .sdds-form-input[type=radio].sc-sdds-radio-button:checked::after{border:4px solid var(--sdds-radio-button-interaction-01)}.sdds-radio-button.sc-sdds-radio-button .sdds-form-input[type=radio].sc-sdds-radio-button:checked:disabled:hover::before,.sdds-radio-button.sc-sdds-radio-button .sdds-form-input[type=radio].sc-sdds-radio-button:checked:disabled::before,.sdds-radio-button.sc-sdds-radio-button .sdds-form-input[type=radio].sc-sdds-radio-button:checked.disabled:hover::before,.sdds-radio-button.sc-sdds-radio-button .sdds-form-input[type=radio].sc-sdds-radio-button:checked.disabled::before{display:block;width:16px;height:16px;left:4px;top:4px;border:1px solid var(--sdds-radio-button-color-disabled-before);box-sizing:content-box}.sdds-radio-button.sc-sdds-radio-button .sdds-form-input[type=radio].sc-sdds-radio-button:checked:disabled::after,.sdds-radio-button.sc-sdds-radio-button .sdds-form-input[type=radio].sc-sdds-radio-button:checked.disabled::after{border:4px solid var(--sdds-radio-button-interaction-02);background-color:var(--sdds-radio-button-color-disabled-after);left:5px;top:5px}@keyframes rb-focus{0%{transform:scale(0);opacity:0}100%{transform:scale(1);opacity:0.24}}";
4
4
 
@@ -14,12 +14,16 @@ const RadioButton = class {
14
14
  this.disabled = false;
15
15
  }
16
16
  render() {
17
- return (h("div", { class: "sdds-radio-button" }, h("input", { class: "sdds-form-input", type: "radio", name: this.name, id: this.radioId, value: this.value, checked: this.checked, "aria-checked": this.checked, "aria-describedby": this.host.getAttribute('aria-describedby'), required: this.required, disabled: this.disabled, onChange: () => {
17
+ return (h("div", { class: "sdds-radio-button" }, h("input", { class: "sdds-form-input", type: "radio", name: this.name, id: this.radioId, value: this.value, checked: this.checked, "aria-checked": this.checked,
18
+ // REMEMBER TO ENABLE ARIA PROPS ONCE ALIGNMENT HAS BEEN MADE!
19
+ // aria-labelledby={this.ariaLabelledBy}
20
+ // aria-describedby={this.host.getAttribute('aria-describedby')}
21
+ required: this.required, disabled: this.disabled, onChange: () => {
18
22
  this.sddsChange.emit({
19
23
  radioId: this.radioId,
20
24
  value: this.value,
21
25
  });
22
- } }), h("label", { htmlFor: this.radioId }, h("slot", null))));
26
+ } }), h("label", { htmlFor: this.radioId }, h("slot", { name: "label" }))));
23
27
  }
24
28
  get host() { return getElement(this); }
25
29
  };