@scania/tegel 1.32.2-multibrand-beta.5 → 1.33.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (362) hide show
  1. package/dist/cjs/loader.cjs.js +1 -1
  2. package/dist/cjs/tds-accordion-item.cjs.entry.js +1 -1
  3. package/dist/cjs/tds-accordion.cjs.entry.js +1 -1
  4. package/dist/cjs/tds-banner.cjs.entry.js +1 -1
  5. package/dist/cjs/tds-block.cjs.entry.js +3 -7
  6. package/dist/cjs/tds-body-cell.cjs.entry.js +1 -1
  7. package/dist/cjs/tds-breadcrumb.cjs.entry.js +1 -1
  8. package/dist/cjs/tds-button.cjs.entry.js +1 -1
  9. package/dist/cjs/tds-checkbox.cjs.entry.js +1 -1
  10. package/dist/cjs/tds-chip.cjs.entry.js +1 -1
  11. package/dist/cjs/tds-core-header-item_2.cjs.entry.js +1 -1
  12. package/dist/cjs/tds-divider.cjs.entry.js +1 -1
  13. package/dist/cjs/tds-dropdown_2.cjs.entry.js +49 -34
  14. package/dist/cjs/tds-folder-tab.cjs.entry.js +3 -3
  15. package/dist/cjs/tds-folder-tabs.cjs.entry.js +3 -3
  16. package/dist/cjs/tds-footer-group.cjs.entry.js +1 -1
  17. package/dist/cjs/tds-footer-item.cjs.entry.js +1 -1
  18. package/dist/cjs/tds-footer.cjs.entry.js +1 -1
  19. package/dist/cjs/tds-header-brand-symbol.cjs.entry.js +1 -1
  20. package/dist/cjs/tds-header-cell.cjs.entry.js +2 -2
  21. package/dist/cjs/tds-header-dropdown-list-item.cjs.entry.js +1 -1
  22. package/dist/cjs/tds-header-dropdown.cjs.entry.js +1 -1
  23. package/dist/cjs/tds-header-launcher-grid-item.cjs.entry.js +1 -1
  24. package/dist/cjs/tds-header-launcher.cjs.entry.js +1 -1
  25. package/dist/cjs/tds-icon.cjs.entry.js +3 -8
  26. package/dist/cjs/tds-inline-tab.cjs.entry.js +2 -2
  27. package/dist/cjs/tds-inline-tabs.cjs.entry.js +3 -3
  28. package/dist/cjs/tds-message.cjs.entry.js +1 -1
  29. package/dist/cjs/tds-modal.cjs.entry.js +1 -1
  30. package/dist/cjs/tds-navigation-tab.cjs.entry.js +2 -2
  31. package/dist/cjs/tds-navigation-tabs.cjs.entry.js +5 -5
  32. package/dist/cjs/tds-popover-core.cjs.entry.js +1 -1
  33. package/dist/cjs/tds-side-menu-dropdown-list-item.cjs.entry.js +1 -1
  34. package/dist/cjs/tds-side-menu-item.cjs.entry.js +1 -1
  35. package/dist/cjs/tds-side-menu.cjs.entry.js +1 -1
  36. package/dist/cjs/tds-spinner.cjs.entry.js +2 -2
  37. package/dist/cjs/tds-table-body-input-wrapper.cjs.entry.js +2 -2
  38. package/dist/cjs/tds-table-body-row-expandable.cjs.entry.js +8 -8
  39. package/dist/cjs/tds-table-body-row.cjs.entry.js +3 -3
  40. package/dist/cjs/tds-table-body.cjs.entry.js +1 -1
  41. package/dist/cjs/tds-table-footer.cjs.entry.js +4 -4
  42. package/dist/cjs/tds-table-header-input-wrapper.cjs.entry.js +2 -2
  43. package/dist/cjs/tds-table-header.cjs.entry.js +3 -3
  44. package/dist/cjs/tds-table-toolbar.cjs.entry.js +3 -3
  45. package/dist/cjs/tds-table.cjs.entry.js +1 -1
  46. package/dist/cjs/tds-text-field.cjs.entry.js +6 -9
  47. package/dist/cjs/tds-textarea.cjs.entry.js +3 -3
  48. package/dist/cjs/tds-toast.cjs.entry.js +4 -4
  49. package/dist/cjs/tds-toggle.cjs.entry.js +3 -3
  50. package/dist/cjs/tds-tooltip.cjs.entry.js +2 -2
  51. package/dist/cjs/tegel.cjs.js +1 -1
  52. package/dist/collection/assets/logos/scania/scania-logotype.png +0 -0
  53. package/dist/collection/assets/logos/scania/scania-logotype.svg +2355 -0
  54. package/dist/collection/assets/logos/scania/scania-wordmark-white.png +0 -0
  55. package/dist/collection/assets/logos/scania/scania-wordmark.png +0 -0
  56. package/dist/collection/assets/logos/scania/scania-wordmark.svg +17 -0
  57. package/dist/collection/assets/logos/traton/traton-logotype-black.png +0 -0
  58. package/dist/collection/assets/logos/traton/traton-logotype-black.svg +1 -0
  59. package/dist/collection/assets/logos/traton/traton-logotype-blue.png +0 -0
  60. package/dist/collection/assets/logos/traton/traton-logotype-blue.svg +1 -0
  61. package/dist/collection/assets/logos/traton/traton-logotype-white.png +0 -0
  62. package/dist/collection/assets/logos/traton/traton-logotype-white.svg +1 -0
  63. package/dist/collection/components/accordion/accordion-item/accordion-item.css +44 -14
  64. package/dist/collection/components/accordion/accordion.css +11 -1
  65. package/dist/collection/components/banner/banner.css +2 -1
  66. package/dist/collection/components/block/block.css +8 -15
  67. package/dist/collection/components/block/block.js +2 -6
  68. package/dist/collection/components/breadcrumbs/breadcrumb/breadcrumb.css +2 -1
  69. package/dist/collection/components/button/button.css +426 -480
  70. package/dist/collection/components/checkbox/checkbox.css +24 -31
  71. package/dist/collection/components/chip/chip.css +2 -1
  72. package/dist/collection/components/divider/divider.css +2 -2
  73. package/dist/collection/components/dropdown/dropdown-option/dropdown-option.css +12 -19
  74. package/dist/collection/components/dropdown/dropdown-option/dropdown-option.js +27 -4
  75. package/dist/collection/components/dropdown/dropdown.css +116 -128
  76. package/dist/collection/components/dropdown/dropdown.js +61 -31
  77. package/dist/collection/components/footer/footer-group/footer-group.css +2 -1
  78. package/dist/collection/components/footer/footer-item/footer-item.css +6 -3
  79. package/dist/collection/components/footer/footer.css +1 -1
  80. package/dist/collection/components/header/header-brand-symbol/header-brand-symbol.css +1 -1
  81. package/dist/collection/components/header/header-dropdown/header-dropdown.css +3 -3
  82. package/dist/collection/components/header/header-dropdown-list-item/header-dropdown-list-item.css +2 -1
  83. package/dist/collection/components/header/header-item/header-item.css +2 -1
  84. package/dist/collection/components/header/header-launcher/header-launcher.css +3 -3
  85. package/dist/collection/components/header/header-launcher-grid-item/header-launcher-grid-item.css +2 -1
  86. package/dist/collection/components/icon/icon.js +2 -7
  87. package/dist/collection/components/icon/tratonIconsArray.js +1 -4
  88. package/dist/collection/components/message/message.css +32 -19
  89. package/dist/collection/components/modal/modal.css +15 -13
  90. package/dist/collection/components/popover-core/tds-popover-core.css +0 -14601
  91. package/dist/collection/components/side-menu/side-menu-dropdown-list-item/side-menu-dropdown-list-item.css +2 -1
  92. package/dist/collection/components/side-menu/side-menu-item/side-menu-item.css +2 -1
  93. package/dist/collection/components/side-menu/side-menu.css +3 -3
  94. package/dist/collection/components/spinner/spinner.css +64 -34
  95. package/dist/collection/components/spinner/spinner.js +2 -3
  96. package/dist/collection/components/table/table/table.css +3 -3
  97. package/dist/collection/components/table/table-body/table-body.css +11 -18
  98. package/dist/collection/components/table/table-body-cell/table-body-cell.css +5 -12
  99. package/dist/collection/components/table/table-body-input-wrapper/table-body-input-wrapper.css +7 -16
  100. package/dist/collection/components/table/table-body-input-wrapper/table-body-input-wrapper.js +1 -1
  101. package/dist/collection/components/table/table-body-row/table-body-row.css +8 -7
  102. package/dist/collection/components/table/table-body-row/table-body-row.js +2 -2
  103. package/dist/collection/components/table/table-body-row-expandable/table-body-row-expandable.css +11 -10
  104. package/dist/collection/components/table/table-body-row-expandable/table-body-row-expandable.js +7 -7
  105. package/dist/collection/components/table/table-footer/table-footer.css +16 -41
  106. package/dist/collection/components/table/table-footer/table-footer.js +3 -3
  107. package/dist/collection/components/table/table-header/table-header.css +7 -14
  108. package/dist/collection/components/table/table-header/table-header.js +2 -2
  109. package/dist/collection/components/table/table-header-cell/table-header-cell.css +13 -25
  110. package/dist/collection/components/table/table-header-cell/table-header-cell.js +1 -1
  111. package/dist/collection/components/table/table-header-input-wrapper/table-header-input-wrapper.css +7 -14
  112. package/dist/collection/components/table/table-header-input-wrapper/table-header-input-wrapper.js +1 -1
  113. package/dist/collection/components/table/table-toolbar/table-toolbar.css +11 -22
  114. package/dist/collection/components/table/table-toolbar/table-toolbar.js +2 -2
  115. package/dist/collection/components/tabs/folder-tabs/folder-tab/folder-tab.css +2 -1
  116. package/dist/collection/components/tabs/folder-tabs/folder-tab/folder-tab.js +2 -2
  117. package/dist/collection/components/tabs/folder-tabs/folder-tabs.css +2 -1
  118. package/dist/collection/components/tabs/folder-tabs/folder-tabs.js +2 -2
  119. package/dist/collection/components/tabs/inline-tabs/inline-tab/inline-tab.js +2 -2
  120. package/dist/collection/components/tabs/inline-tabs/inline-tabs.css +2 -1
  121. package/dist/collection/components/tabs/inline-tabs/inline-tabs.js +2 -2
  122. package/dist/collection/components/tabs/navigation-tabs/navigation-tab/navigation-tab.js +2 -2
  123. package/dist/collection/components/tabs/navigation-tabs/navigation-tabs.css +2 -1
  124. package/dist/collection/components/tabs/navigation-tabs/navigation-tabs.js +4 -4
  125. package/dist/collection/components/text-field/text-field.css +167 -151
  126. package/dist/collection/components/text-field/text-field.js +5 -8
  127. package/dist/collection/components/textarea/textarea.js +3 -3
  128. package/dist/collection/components/toast/toast.css +2 -1
  129. package/dist/collection/components/toast/toast.js +3 -3
  130. package/dist/collection/components/toggle/toggle.css +33 -48
  131. package/dist/collection/components/toggle/toggle.js +2 -2
  132. package/dist/collection/components/tooltip/tooltip.js +2 -2
  133. package/dist/components/{p-858c1df0.js → p-1cd6b2c6.js} +40 -30
  134. package/dist/components/{p-865b81b9.js → p-4b0c6ab5.js} +14 -7
  135. package/dist/components/p-58b92113.js +114 -0
  136. package/dist/components/{p-76dc921a.js → p-6adb1ce3.js} +1 -1
  137. package/dist/components/{p-c46ecd24.js → p-71c3dfe9.js} +1 -1
  138. package/dist/components/{p-c2ae5e79.js → p-877931c5.js} +1 -1
  139. package/dist/components/{p-765162bc.js → p-9cee9d7f.js} +3 -3
  140. package/dist/components/{p-8ffea123.js → p-c715ab56.js} +3 -8
  141. package/dist/components/p-d3866be7.js +2098 -0
  142. package/dist/components/{p-92a7b8b2.js → p-df84759a.js} +1 -1
  143. package/dist/components/{p-49f09bc8.js → p-ea381f94.js} +1 -1
  144. package/dist/components/{p-aeef3de3.js → p-f589b91c.js} +2 -2
  145. package/dist/components/tds-accordion-item.js +2 -2
  146. package/dist/components/tds-accordion.js +1 -1
  147. package/dist/components/tds-banner.js +2 -2
  148. package/dist/components/tds-block.js +3 -7
  149. package/dist/components/tds-body-cell.js +1 -1
  150. package/dist/components/tds-breadcrumb.js +1 -1
  151. package/dist/components/tds-button.js +1 -1
  152. package/dist/components/tds-card.js +1 -1
  153. package/dist/components/tds-checkbox.js +1 -1
  154. package/dist/components/tds-chip.js +1 -1
  155. package/dist/components/tds-datetime.js +1 -1
  156. package/dist/components/tds-divider.js +1 -1
  157. package/dist/components/tds-dropdown-option.js +1 -1
  158. package/dist/components/tds-dropdown.js +1 -1
  159. package/dist/components/tds-folder-tab.js +3 -3
  160. package/dist/components/tds-folder-tabs.js +4 -4
  161. package/dist/components/tds-footer-group.js +2 -2
  162. package/dist/components/tds-footer-item.js +1 -1
  163. package/dist/components/tds-footer.js +1 -1
  164. package/dist/components/tds-header-brand-symbol.js +2 -2
  165. package/dist/components/tds-header-cell.js +3 -3
  166. package/dist/components/tds-header-dropdown-list-item.js +1 -1
  167. package/dist/components/tds-header-dropdown.js +5 -5
  168. package/dist/components/tds-header-hamburger.js +2 -2
  169. package/dist/components/tds-header-item.js +1 -1
  170. package/dist/components/tds-header-launcher-button.js +1 -1
  171. package/dist/components/tds-header-launcher-grid-item.js +1 -1
  172. package/dist/components/tds-header-launcher-list-item.js +1 -1
  173. package/dist/components/tds-header-launcher.js +6 -6
  174. package/dist/components/tds-icon.js +1 -1
  175. package/dist/components/tds-inline-tab.js +2 -2
  176. package/dist/components/tds-inline-tabs.js +4 -4
  177. package/dist/components/tds-message.js +2 -2
  178. package/dist/components/tds-modal.js +2 -2
  179. package/dist/components/tds-navigation-tab.js +2 -2
  180. package/dist/components/tds-navigation-tabs.js +6 -6
  181. package/dist/components/tds-popover-canvas.js +1 -1
  182. package/dist/components/tds-popover-core.js +1 -1
  183. package/dist/components/tds-popover-menu.js +1 -1
  184. package/dist/components/tds-side-menu-close-button.js +1 -1
  185. package/dist/components/tds-side-menu-collapse-button.js +1 -1
  186. package/dist/components/tds-side-menu-dropdown-list-item.js +1 -1
  187. package/dist/components/tds-side-menu-dropdown.js +2 -2
  188. package/dist/components/tds-side-menu-item.js +1 -1
  189. package/dist/components/tds-side-menu.js +1 -1
  190. package/dist/components/tds-slider.js +1 -1
  191. package/dist/components/tds-spinner.js +4 -5
  192. package/dist/components/tds-step.js +1 -1
  193. package/dist/components/tds-table-body-input-wrapper.js +3 -3
  194. package/dist/components/tds-table-body-row-expandable.js +8 -8
  195. package/dist/components/tds-table-body-row.js +4 -4
  196. package/dist/components/tds-table-body.js +1 -1
  197. package/dist/components/tds-table-footer.js +8 -8
  198. package/dist/components/tds-table-header-input-wrapper.js +3 -3
  199. package/dist/components/tds-table-header.js +4 -4
  200. package/dist/components/tds-table-toolbar.js +4 -4
  201. package/dist/components/tds-table.js +1 -1
  202. package/dist/components/tds-text-field.js +7 -10
  203. package/dist/components/tds-textarea.js +6 -6
  204. package/dist/components/tds-toast.js +5 -5
  205. package/dist/components/tds-toggle.js +3 -3
  206. package/dist/components/tds-tooltip.js +1 -1
  207. package/dist/esm/loader.js +1 -1
  208. package/dist/esm/tds-accordion-item.entry.js +1 -1
  209. package/dist/esm/tds-accordion.entry.js +1 -1
  210. package/dist/esm/tds-banner.entry.js +1 -1
  211. package/dist/esm/tds-block.entry.js +3 -7
  212. package/dist/esm/tds-body-cell.entry.js +1 -1
  213. package/dist/esm/tds-breadcrumb.entry.js +1 -1
  214. package/dist/esm/tds-button.entry.js +1 -1
  215. package/dist/esm/tds-checkbox.entry.js +1 -1
  216. package/dist/esm/tds-chip.entry.js +1 -1
  217. package/dist/esm/tds-core-header-item_2.entry.js +1 -1
  218. package/dist/esm/tds-divider.entry.js +1 -1
  219. package/dist/esm/tds-dropdown_2.entry.js +49 -34
  220. package/dist/esm/tds-folder-tab.entry.js +3 -3
  221. package/dist/esm/tds-folder-tabs.entry.js +3 -3
  222. package/dist/esm/tds-footer-group.entry.js +1 -1
  223. package/dist/esm/tds-footer-item.entry.js +1 -1
  224. package/dist/esm/tds-footer.entry.js +1 -1
  225. package/dist/esm/tds-header-brand-symbol.entry.js +1 -1
  226. package/dist/esm/tds-header-cell.entry.js +2 -2
  227. package/dist/esm/tds-header-dropdown-list-item.entry.js +1 -1
  228. package/dist/esm/tds-header-dropdown.entry.js +1 -1
  229. package/dist/esm/tds-header-launcher-grid-item.entry.js +1 -1
  230. package/dist/esm/tds-header-launcher.entry.js +1 -1
  231. package/dist/esm/tds-icon.entry.js +3 -8
  232. package/dist/esm/tds-inline-tab.entry.js +2 -2
  233. package/dist/esm/tds-inline-tabs.entry.js +3 -3
  234. package/dist/esm/tds-message.entry.js +1 -1
  235. package/dist/esm/tds-modal.entry.js +1 -1
  236. package/dist/esm/tds-navigation-tab.entry.js +2 -2
  237. package/dist/esm/tds-navigation-tabs.entry.js +5 -5
  238. package/dist/esm/tds-popover-core.entry.js +1 -1
  239. package/dist/esm/tds-side-menu-dropdown-list-item.entry.js +1 -1
  240. package/dist/esm/tds-side-menu-item.entry.js +1 -1
  241. package/dist/esm/tds-side-menu.entry.js +1 -1
  242. package/dist/esm/tds-spinner.entry.js +3 -3
  243. package/dist/esm/tds-table-body-input-wrapper.entry.js +2 -2
  244. package/dist/esm/tds-table-body-row-expandable.entry.js +8 -8
  245. package/dist/esm/tds-table-body-row.entry.js +3 -3
  246. package/dist/esm/tds-table-body.entry.js +1 -1
  247. package/dist/esm/tds-table-footer.entry.js +4 -4
  248. package/dist/esm/tds-table-header-input-wrapper.entry.js +2 -2
  249. package/dist/esm/tds-table-header.entry.js +3 -3
  250. package/dist/esm/tds-table-toolbar.entry.js +3 -3
  251. package/dist/esm/tds-table.entry.js +1 -1
  252. package/dist/esm/tds-text-field.entry.js +6 -9
  253. package/dist/esm/tds-textarea.entry.js +3 -3
  254. package/dist/esm/tds-toast.entry.js +4 -4
  255. package/dist/esm/tds-toggle.entry.js +3 -3
  256. package/dist/esm/tds-tooltip.entry.js +2 -2
  257. package/dist/esm/tegel.js +1 -1
  258. package/dist/tegel/assets/logos/scania/scania-logotype.png +0 -0
  259. package/dist/tegel/assets/logos/scania/scania-logotype.svg +2355 -0
  260. package/dist/tegel/assets/logos/scania/scania-wordmark-white.png +0 -0
  261. package/dist/tegel/assets/logos/scania/scania-wordmark.png +0 -0
  262. package/dist/tegel/assets/logos/scania/scania-wordmark.svg +17 -0
  263. package/dist/tegel/assets/logos/traton/traton-logotype-black.png +0 -0
  264. package/dist/tegel/assets/logos/traton/traton-logotype-black.svg +1 -0
  265. package/dist/tegel/assets/logos/traton/traton-logotype-blue.png +0 -0
  266. package/dist/tegel/assets/logos/traton/traton-logotype-blue.svg +1 -0
  267. package/dist/tegel/assets/logos/traton/traton-logotype-white.png +0 -0
  268. package/dist/tegel/assets/logos/traton/traton-logotype-white.svg +1 -0
  269. package/dist/tegel/{p-7fd272d1.entry.js → p-08f63e5d.entry.js} +1 -1
  270. package/dist/tegel/p-0cac9ea6.entry.js +1 -0
  271. package/dist/tegel/{p-e7638f10.entry.js → p-0cfe8671.entry.js} +1 -1
  272. package/dist/tegel/{p-ad30ee83.entry.js → p-106e048d.entry.js} +1 -1
  273. package/dist/tegel/p-1c75f8a7.entry.js +1 -0
  274. package/dist/tegel/{p-f12ce132.entry.js → p-2c56421f.entry.js} +1 -1
  275. package/dist/tegel/p-35a88a52.entry.js +1 -0
  276. package/dist/tegel/p-3a92d554.entry.js +1 -0
  277. package/dist/tegel/{p-0ca88c7c.entry.js → p-3ec01fb3.entry.js} +1 -1
  278. package/dist/tegel/p-4274d329.entry.js +1 -0
  279. package/dist/tegel/{p-32540392.entry.js → p-5020a688.entry.js} +1 -1
  280. package/dist/tegel/{p-a2576665.entry.js → p-52adc30c.entry.js} +1 -1
  281. package/dist/tegel/{p-0a0500f0.entry.js → p-5c077bb9.entry.js} +1 -1
  282. package/dist/tegel/p-5dd2aac8.entry.js +1 -0
  283. package/dist/tegel/{p-378fe79c.entry.js → p-614bcd4b.entry.js} +1 -1
  284. package/dist/tegel/p-614cc097.entry.js +1 -0
  285. package/dist/tegel/{p-fdc5c832.entry.js → p-61a1dc59.entry.js} +1 -1
  286. package/dist/tegel/{p-3e6d65ee.entry.js → p-67b4b2cf.entry.js} +1 -1
  287. package/dist/tegel/{p-da60d17b.entry.js → p-6a615ac1.entry.js} +1 -1
  288. package/dist/tegel/p-6d89dcbe.entry.js +1 -0
  289. package/dist/tegel/{p-4d60aa49.entry.js → p-6e57997e.entry.js} +1 -1
  290. package/dist/tegel/{p-0f8930be.entry.js → p-6eed8c31.entry.js} +1 -1
  291. package/dist/tegel/p-7013249b.entry.js +1 -0
  292. package/dist/tegel/p-72006dd7.entry.js +1 -0
  293. package/dist/tegel/p-76faaf70.entry.js +1 -0
  294. package/dist/tegel/{p-9e146138.entry.js → p-8c841698.entry.js} +1 -1
  295. package/dist/tegel/p-942abc1e.entry.js +1 -0
  296. package/dist/tegel/{p-eb134c44.entry.js → p-98106799.entry.js} +1 -1
  297. package/dist/tegel/p-9b2257f3.entry.js +1 -0
  298. package/dist/tegel/{p-94aa8b19.entry.js → p-a0591e58.entry.js} +1 -1
  299. package/dist/tegel/{p-b3446292.entry.js → p-ab103d0c.entry.js} +1 -1
  300. package/dist/tegel/p-aec3e4cf.entry.js +1 -0
  301. package/dist/tegel/{p-97de52aa.entry.js → p-b734b309.entry.js} +1 -1
  302. package/dist/tegel/{p-6631ea34.entry.js → p-bb1d069f.entry.js} +1 -1
  303. package/dist/tegel/{p-364c08ec.entry.js → p-bcd5e06d.entry.js} +1 -1
  304. package/dist/tegel/p-bd935506.entry.js +1 -0
  305. package/dist/tegel/p-bdc913a0.entry.js +1 -0
  306. package/dist/tegel/{p-a1444bc5.entry.js → p-c0b26507.entry.js} +1 -1
  307. package/dist/tegel/p-c6beca5e.entry.js +1 -0
  308. package/dist/tegel/{p-051c9000.entry.js → p-c7b0253c.entry.js} +1 -1
  309. package/dist/tegel/p-cf7af8f2.entry.js +1 -0
  310. package/dist/tegel/{p-2e5d2bec.entry.js → p-d267c18f.entry.js} +1 -1
  311. package/dist/tegel/{p-0fdd14c7.entry.js → p-d9040b7f.entry.js} +1 -1
  312. package/dist/tegel/p-dc375d3e.entry.js +1 -0
  313. package/dist/tegel/p-e3c2b6b4.entry.js +1 -0
  314. package/dist/tegel/p-f2232281.entry.js +1 -0
  315. package/dist/tegel/p-f4b5e80b.entry.js +1 -0
  316. package/dist/tegel/p-f78b6a16.entry.js +1 -0
  317. package/dist/tegel/p-fbffe3aa.entry.js +1 -0
  318. package/dist/tegel/tegel.css +19 -77
  319. package/dist/tegel/tegel.esm.js +1 -1
  320. package/dist/types/components/dropdown/dropdown-option/dropdown-option.d.ts +3 -0
  321. package/dist/types/components/dropdown/dropdown.d.ts +15 -10
  322. package/dist/types/components.d.ts +17 -2
  323. package/dist/types/types/TratonIcons.d.ts +1 -1
  324. package/package.json +2 -8
  325. package/scripts/copy-assets.mjs +32 -30
  326. package/dist/components/p-ab1f729e.js +0 -114
  327. package/dist/components/p-e8834dcb.js +0 -2098
  328. package/dist/tegel/p-0103f442.entry.js +0 -1
  329. package/dist/tegel/p-036e12d4.entry.js +0 -1
  330. package/dist/tegel/p-103f9b0d.entry.js +0 -1
  331. package/dist/tegel/p-211cef64.entry.js +0 -1
  332. package/dist/tegel/p-222944dc.entry.js +0 -1
  333. package/dist/tegel/p-25d21e10.entry.js +0 -1
  334. package/dist/tegel/p-326f0bf4.entry.js +0 -1
  335. package/dist/tegel/p-4948ae4a.entry.js +0 -1
  336. package/dist/tegel/p-4a4b5069.entry.js +0 -1
  337. package/dist/tegel/p-58ec7381.entry.js +0 -1
  338. package/dist/tegel/p-5bc63fd1.entry.js +0 -1
  339. package/dist/tegel/p-62975e6d.entry.js +0 -1
  340. package/dist/tegel/p-7a97ac5e.entry.js +0 -1
  341. package/dist/tegel/p-8bf0f99f.entry.js +0 -1
  342. package/dist/tegel/p-90072813.entry.js +0 -1
  343. package/dist/tegel/p-940d3cba.entry.js +0 -1
  344. package/dist/tegel/p-a2f84e4a.entry.js +0 -1
  345. package/dist/tegel/p-b5a3c528.entry.js +0 -1
  346. package/dist/tegel/p-d1349d6c.entry.js +0 -1
  347. package/dist/tegel/p-d1b356d5.entry.js +0 -1
  348. package/dist/tegel/p-daaf8d8f.entry.js +0 -1
  349. package/dist/tegel/p-dd5245ed.entry.js +0 -1
  350. package/dist/tegel/p-f67a8209.entry.js +0 -1
  351. package/dist/tegel/p-f76d8ab9.entry.js +0 -1
  352. package/dist-styles/core.css +0 -5963
  353. package/dist-styles/scania-variables.css +0 -1328
  354. package/dist-styles/scania.css +0 -7291
  355. package/dist-styles/traton-variables.css +0 -1064
  356. package/dist-styles/traton.css +0 -7027
  357. /package/dist/collection/assets/logos/{scania-symbol.png → scania/scania-symbol.png} +0 -0
  358. /package/dist/collection/assets/logos/{scania-symbol.svg → scania/scania-symbol.svg} +0 -0
  359. /package/dist/collection/assets/logos/{scania-wordmark-white.svg → scania/scania-wordmark-white.svg} +0 -0
  360. /package/dist/tegel/assets/logos/{scania-symbol.png → scania/scania-symbol.png} +0 -0
  361. /package/dist/tegel/assets/logos/{scania-symbol.svg → scania/scania-symbol.svg} +0 -0
  362. /package/dist/tegel/assets/logos/{scania-wordmark-white.svg → scania/scania-wordmark-white.svg} +0 -0
@@ -1,18 +1,14 @@
1
1
  @charset "UTF-8";
2
- /* Typography Usage mixins */
3
- /* Centralized map of typography types */
4
- /* Utility mixin */
5
2
  :host button {
6
3
  all: unset;
7
4
  height: 100%;
8
5
  width: 100%;
9
- box-shadow: var(--dropdown-border);
10
- background-color: var(--dropdown-background);
11
- border-radius: var(--dropdown-border-radius);
12
- transition: box-shadow var(--tds-motion-duration-fast-02) var(--tds-motion-easing-scania);
6
+ background-color: var(--tds-dropdown-bg);
7
+ border-bottom: 1px solid var(--tds-dropdown-border-bottom);
8
+ border-radius: var(--tds-dropdown-border-radius);
13
9
  }
14
10
  :host button:hover {
15
- box-shadow: var(--dropdown-border-hover);
11
+ border-bottom: 1px solid var(--tds-dropdown-border-bottom-hover);
16
12
  }
17
13
  :host button .value-wrapper {
18
14
  padding: 0 16px;
@@ -21,64 +17,68 @@
21
17
  justify-content: space-between;
22
18
  }
23
19
  :host button.placeholder {
24
- color: var(--dropdown-placeholder);
20
+ color: var(--tds-dropdown-placeholder-color);
25
21
  line-height: 1.3;
26
22
  }
27
23
  :host button.value {
28
- font-family: var(--detail-02-font-family);
29
- font-size: var(--detail-02-font-size);
30
- line-height: var(--detail-02-line-height);
31
- font-weight: var(--detail-02-font-weight);
32
- letter-spacing: var(--detail-02-letter-spacing);
33
- text-transform: var(--detail-02-text-transform);
34
- color: var(--dropdown-text);
24
+ color: var(--tds-dropdown-value-color);
25
+ font: var(--tds-detail-02);
26
+ letter-spacing: var(--tds-detail-02-ls);
35
27
  /** Needed to not get be affected by overflow:hidden
36
28
  The original line-height is 1.14 */
37
29
  line-height: 1.3;
38
30
  }
39
31
  :host button:focus {
40
- box-shadow: var(--dropdown-border-focus);
41
- }
42
- :host button:active {
43
- box-shadow: var(--dropdown-border-active);
32
+ border-bottom: 0;
44
33
  }
45
34
  :host button.error {
46
- box-shadow: var(--dropdown-border-error);
47
- }
48
- :host button.error:hover {
49
- box-shadow: var(--dropdown-border-error-hover);
35
+ border-bottom: 1px solid var(--tds-dropdown-error);
50
36
  }
51
37
  :host button.error:focus {
52
- box-shadow: var(--dropdown-border-error-focus);
38
+ border-bottom-color: transparent;
39
+ }
40
+ :host button.error:focus::before {
41
+ content: "";
42
+ position: absolute;
43
+ bottom: 0;
44
+ left: 0;
45
+ width: 100%;
46
+ height: 1px;
47
+ background: var(--tds-dropdown-error);
53
48
  }
54
49
  :host button:disabled {
55
- box-shadow: var(--dropdown-border-disabled);
56
- color: var(--dropdown-disabled);
50
+ color: var(--tds-dropdown-disabled-color);
51
+ border-bottom: 1px solid transparent;
57
52
  }
58
53
  :host button .menu-icon {
59
54
  margin-right: 0;
60
55
  }
61
56
 
62
- /* Typography Usage mixins */
63
- /* Centralized map of typography types */
64
- /* Utility mixin */
57
+ :host .dropdown-select:focus-within {
58
+ outline: 2px solid var(--tds-focus-outline-color);
59
+ box-shadow: 0 0 0 1px var(--tds-white);
60
+ outline-offset: 1px;
61
+ z-index: 1;
62
+ }
65
63
  :host .filter {
66
64
  display: flex;
67
65
  align-items: center;
68
66
  justify-content: space-between;
69
67
  height: 100%;
70
- background-color: var(--dropdown-background);
71
- box-shadow: var(--dropdown-border);
68
+ background-color: var(--tds-dropdown-bg);
69
+ border-bottom: 1px solid var(--tds-dropdown-border-bottom);
72
70
  padding-left: 16px;
73
- border-radius: var(--dropdown-border-radius);
74
- transition: box-shadow var(--tds-motion-duration-fast-02) var(--tds-motion-easing-scania);
71
+ border-radius: 4px 4px 0 0;
75
72
  }
76
73
  :host .filter:hover {
77
- box-shadow: var(--dropdown-border-hover);
74
+ border-bottom: 1px solid var(--tds-dropdown-border-bottom-hover);
78
75
  }
79
76
  :host .filter.disabled {
80
- color: var(--dropdown-disabled);
81
- box-shadow: var(--dropdown-border-disabled);
77
+ color: var(--tds-dropdown-disabled-color);
78
+ border-bottom: 1px solid transparent;
79
+ }
80
+ :host .filter.disabled .value-wrapper input {
81
+ color: var(--tds-dropdown-disabled-color);
82
82
  }
83
83
  :host .filter .value-wrapper {
84
84
  display: flex;
@@ -86,19 +86,15 @@
86
86
  height: 100%;
87
87
  }
88
88
  :host .filter .value-wrapper input {
89
- color: var(--dropdown-text);
89
+ color: var(--tds-dropdown-filter-input-color);
90
90
  }
91
91
  :host .filter .label-inside-as-placeholder {
92
92
  position: absolute;
93
- font-family: var(--detail-02-font-family);
94
- font-size: var(--detail-02-font-size);
95
- line-height: var(--detail-02-line-height);
96
- font-weight: var(--detail-02-font-weight);
97
- letter-spacing: var(--detail-02-letter-spacing);
98
- text-transform: var(--detail-02-text-transform);
93
+ font: var(--tds-detail-02);
94
+ letter-spacing: var(--tds-detail-02-ls);
99
95
  /* Overwrite in order to display ÅÄÖ and similar sign correctly */
100
96
  line-height: 1.3;
101
- color: var(--dropdown-placeholder);
97
+ color: var(--tds-dropdown-placeholder-color);
102
98
  }
103
99
  :host .filter .label-inside-as-placeholder.lg {
104
100
  top: 20px;
@@ -110,12 +106,8 @@
110
106
  display: none;
111
107
  }
112
108
  :host .filter .label-inside-as-placeholder.selected {
113
- font-family: var(--detail-07-font-family);
114
- font-size: var(--detail-07-font-size);
115
- line-height: var(--detail-07-line-height);
116
- font-weight: var(--detail-07-font-weight);
117
- letter-spacing: var(--detail-07-letter-spacing);
118
- text-transform: var(--detail-07-text-transform);
109
+ font: var(--tds-detail-07);
110
+ letter-spacing: var(--tds-detail-07-ls);
119
111
  transition: all 0.2s ease-in-out;
120
112
  }
121
113
  :host .filter .label-inside-as-placeholder.selected.lg {
@@ -131,13 +123,25 @@
131
123
  margin-top: 8px;
132
124
  }
133
125
  :host .filter.focus {
134
- box-shadow: var(--dropdown-border-focus);
126
+ border-bottom: 0;
127
+ }
128
+ :host .filter.focus:hover {
129
+ border-bottom: 0;
135
130
  }
136
131
  :host .filter.error {
137
- box-shadow: var(--dropdown-border-error);
132
+ border-bottom: 1px solid var(--tds-dropdown-error);
138
133
  }
139
134
  :host .filter.error.focus {
140
- box-shadow: var(--dropdown-border-error-focus);
135
+ border-bottom-color: transparent;
136
+ }
137
+ :host .filter.error.focus::before {
138
+ content: "";
139
+ position: absolute;
140
+ bottom: 0;
141
+ left: 0;
142
+ width: 100%;
143
+ height: 1px;
144
+ background: var(--tds-dropdown-error);
141
145
  }
142
146
  :host .filter input {
143
147
  flex: 1;
@@ -145,39 +149,30 @@
145
149
  width: 100%;
146
150
  }
147
151
  :host .filter input::placeholder {
148
- color: var(--dropdown-placeholder);
152
+ color: var(--tds-dropdown-placeholder-color);
149
153
  }
150
154
  :host .filter input:disabled::placeholder {
151
- color: var(--dropdown-disabled);
155
+ color: var(--tds-dropdown-disabled-color);
152
156
  }
153
157
  :host .filter tds-icon {
154
158
  cursor: pointer;
155
159
  }
156
- :host .filter tds-icon.disabled {
157
- color: var(--dropdown-disabled);
158
- }
159
160
  :host .filter .menu-icon {
160
161
  margin-right: 16px;
161
162
  }
162
- :host .filter .menu-icon.disabled {
163
- color: var(--dropdown-disabled);
164
- }
165
163
  :host .filter .clear-icon {
166
164
  margin: 0 8px;
165
+ color: var(--tds-dropdown-clear-icon-color);
167
166
  padding-right: 8px;
168
- border-right: 1px solid var(--dropdown-icon);
169
- color: var(--dropdown-clear-icon);
167
+ border-right: 1px solid var(--tds-dropdown-clear-icon-color);
170
168
  }
171
169
  :host .filter .clear-icon:hover {
172
- color: var(--dropdown-icon);
170
+ color: var(--tds-dropdown-clear-icon-hover-color);
173
171
  }
174
172
  :host .filter .clear-icon.hide {
175
173
  display: none;
176
174
  visibility: hidden;
177
175
  }
178
- :host .filter .clear-icon.disabled {
179
- color: var(--dropdown-disabled);
180
- }
181
176
 
182
177
  :host {
183
178
  --tds-scrollbar-width-standard: thin;
@@ -191,50 +186,60 @@ body {
191
186
  scrollbar-width: thin;
192
187
  }
193
188
 
194
- /* Typography Usage mixins */
195
- /* Centralized map of typography types */
196
- /* Utility mixin */
197
189
  :host {
198
190
  display: block;
199
191
  position: relative;
200
- font-family: var(--detail-02-font-family);
201
- font-size: var(--detail-02-font-size);
202
- line-height: var(--detail-02-line-height);
203
- font-weight: var(--detail-02-font-weight);
204
- letter-spacing: var(--detail-02-letter-spacing);
205
- text-transform: var(--detail-02-text-transform);
192
+ font: var(--tds-detail-02);
193
+ letter-spacing: var(--tds-detail-02-ls);
206
194
  }
207
195
  :host .label-outside {
208
- font-family: var(--detail-05-font-family);
209
- font-size: var(--detail-05-font-size);
210
- line-height: var(--detail-05-line-height);
211
- font-weight: var(--detail-05-font-weight);
212
- letter-spacing: var(--detail-05-letter-spacing);
213
- text-transform: var(--detail-05-text-transform);
214
- color: var(--dropdown-text);
196
+ font: var(--tds-detail-05);
197
+ letter-spacing: var(--tds-detail-05-ls);
198
+ color: var(--tds-dropdown-label-color);
215
199
  margin-bottom: 8px;
216
200
  }
217
201
  :host .label-outside.disabled {
218
- color: var(--dropdown-disabled);
202
+ color: var(--tds-dropdown-disabled-color);
219
203
  }
220
204
  :host .dropdown-select {
221
205
  position: relative;
222
206
  }
207
+ :host .dropdown-select button:focus {
208
+ outline: 2px solid var(--tds-focus-outline-color);
209
+ box-shadow: 0 0 0 1px var(--tds-white);
210
+ outline-offset: 1px;
211
+ z-index: 1;
212
+ border-radius: 0;
213
+ }
214
+ :host .dropdown-select button {
215
+ transition: border-bottom-color var(--tds-motion-duration-fast-02) var(--tds-motion-easing-scania);
216
+ }
217
+ :host .dropdown-select button:hover {
218
+ border-bottom-color: var(--tds-dropdown-border-bottom-hover);
219
+ }
220
+ :host .dropdown-select button {
221
+ border-bottom-color: var(--tds-dropdown-border-bottom);
222
+ }
223
+ :host .dropdown-select button.error {
224
+ border-bottom-color: var(--tds-dropdown-error);
225
+ }
226
+ :host .dropdown-select button.error:focus {
227
+ border-bottom-color: transparent;
228
+ }
223
229
  :host .dropdown-select.disabled .label-inside,
224
230
  :host .dropdown-select.disabled .placeholder,
225
231
  :host .dropdown-select.disabled .label-inside-as-placeholder,
226
232
  :host .dropdown-select.disabled .value-wrapper {
227
- color: var(--dropdown-disabled);
233
+ color: var(--tds-dropdown-disabled-color);
234
+ }
235
+ :host .dropdown-select.disabled button {
236
+ border: none;
228
237
  }
229
238
  :host .dropdown-select .label-inside {
230
239
  position: absolute;
231
- font-family: var(--detail-07-font-family);
232
- font-size: var(--detail-07-font-size);
233
- line-height: var(--detail-07-line-height);
234
- font-weight: var(--detail-07-font-weight);
235
- letter-spacing: var(--detail-07-letter-spacing);
236
- text-transform: var(--detail-07-text-transform);
237
- color: var(--dropdown-text);
240
+ font: var(--tds-detail-07);
241
+ letter-spacing: var(--tds-detail-07-ls);
242
+ color: var(--tds-dropdown-label-inside-color);
238
243
  }
239
244
  :host .dropdown-select .label-inside.lg {
240
245
  top: 12px;
@@ -264,16 +269,12 @@ body {
264
269
  line-height: 1;
265
270
  }
266
271
  :host .dropdown-select .label-inside-as-placeholder {
267
- color: var(--dropdown-placeholder);
272
+ color: var(--tds-dropdown-placeholder-color);
268
273
  }
269
274
  :host .dropdown-select .label-inside-as-placeholder.selected {
270
275
  position: absolute;
271
- font-family: var(--detail-07-font-family);
272
- font-size: var(--detail-07-font-size);
273
- line-height: var(--detail-07-line-height);
274
- font-weight: var(--detail-07-font-weight);
275
- letter-spacing: var(--detail-07-letter-spacing);
276
- text-transform: var(--detail-07-text-transform);
276
+ font: var(--tds-detail-07);
277
+ letter-spacing: var(--tds-detail-07-ls);
277
278
  transition: all 0.2s ease-in-out;
278
279
  }
279
280
  :host .dropdown-select .label-inside-as-placeholder.selected.lg {
@@ -302,49 +303,44 @@ body {
302
303
  }
303
304
  :host .helper {
304
305
  margin-top: 4px;
305
- color: var(--dropdown-helper-text);
306
- font-family: var(--detail-05-font-family);
307
- font-size: var(--detail-05-font-size);
308
- line-height: var(--detail-05-line-height);
309
- font-weight: var(--detail-05-font-weight);
310
- letter-spacing: var(--detail-05-letter-spacing);
311
- text-transform: var(--detail-05-text-transform);
306
+ color: var(--tds-dropdown-helper-color);
307
+ font: var(--tds-detail-05);
308
+ letter-spacing: var(--tds-detail-05-ls);
312
309
  display: flex;
313
310
  align-items: center;
314
311
  gap: 8px;
315
312
  }
316
313
  :host .helper.error {
317
- color: var(--dropdown-error);
314
+ color: var(--tds-dropdown-error);
318
315
  }
319
316
  :host .helper.disabled {
320
- color: var(--dropdown-disabled);
317
+ color: var(--tds-dropdown-disabled-color);
321
318
  }
322
319
  :host .dropdown-list {
323
320
  z-index: 100;
324
321
  position: absolute;
325
- margin-top: 2px;
326
322
  width: 100%;
327
323
  transform-origin: top;
328
- box-shadow: rgba(0, 0, 0, 0.1) 0 2px 3px 0;
329
- border-radius: var(--dropdown-list-border-radius-down);
324
+ box-shadow: 0 2px 3px 0 rgba(0, 0, 0, 0.1);
325
+ border-radius: var(--tds-dropdown-list-border-radius-down);
330
326
  overflow-y: auto;
331
327
  transform: scaleY(0);
332
328
  pointer-events: none;
333
329
  }
334
330
  :host .dropdown-list:hover::-webkit-scrollbar-thumb {
335
331
  border: var(--tds-scrollbar-thumb-border-hover-width) solid transparent;
336
- background: var(--color-foreground-icon-discrete);
332
+ background: var(--tds-scrollbar-hover-thumb-color);
337
333
  background-clip: padding-box;
338
334
  }
339
335
  :host .dropdown-list::-webkit-scrollbar {
340
336
  width: var(--tds-scrollbar-width);
341
337
  }
342
338
  :host .dropdown-list::-webkit-scrollbar-track {
343
- background: var(--color-background-layer-01);
339
+ background: var(--tds-scrollbar-track-color);
344
340
  }
345
341
  :host .dropdown-list::-webkit-scrollbar-thumb {
346
342
  border-radius: 40px;
347
- background: var(--color-foreground-icon-discrete);
343
+ background: var(--tds-scrollbar-thumb-color);
348
344
  border: var(--tds-scrollbar-thumb-border-width) solid transparent;
349
345
  background-clip: padding-box;
350
346
  }
@@ -377,8 +373,7 @@ body {
377
373
  transform-origin: bottom;
378
374
  display: flex;
379
375
  flex-direction: column-reverse;
380
- box-shadow: rgba(0, 0, 0, 0.1) 0 -1px 3px 0;
381
- border-radius: var(--dropdown-list-border-radius-up);
376
+ border-radius: var(--tds-dropdown-list-border-radius-up);
382
377
  }
383
378
  :host .dropdown-list.up.label-outside {
384
379
  bottom: calc(100% - 24px);
@@ -400,16 +395,12 @@ body {
400
395
  transition: transform var(--tds-motion-duration-moderate-01) var(--tds-motion-easing-exit);
401
396
  }
402
397
  :host .dropdown-list .no-result {
403
- font-family: var(--detail-02-font-family);
404
- font-size: var(--detail-02-font-size);
405
- line-height: var(--detail-02-line-height);
406
- font-weight: var(--detail-02-font-weight);
407
- letter-spacing: var(--detail-02-letter-spacing);
408
- text-transform: var(--detail-02-text-transform);
398
+ font: var(--tds-detail-02);
399
+ letter-spacing: var(--tds-detail-02-ls);
409
400
  display: flex;
410
401
  align-items: center;
411
402
  padding: 0 16px;
412
- background-color: var(--dropdown-background);
403
+ background-color: var(--tds-dropdown-bg);
413
404
  }
414
405
  :host .dropdown-list .no-result.lg {
415
406
  height: 56px;
@@ -424,10 +415,7 @@ body {
424
415
  height: 40px;
425
416
  }
426
417
  :host .menu-icon {
427
- color: var(--dropdown-icon);
428
- }
429
- :host .menu-icon.disabled {
430
- color: var(--dropdown-disabled);
418
+ color: var(--tds-dropdown-menu-icon-color);
431
419
  }
432
420
  :host tds-icon {
433
421
  transition: transform var(--tds-motion-duration-fast-02) var(--tds-motion-easing-scania);
@@ -4,6 +4,11 @@ import findPreviousFocusableElement from "../../utils/findPreviousFocusableEleme
4
4
  import appendHiddenInput from "../../utils/appendHiddenInput";
5
5
  import { convertToString, convertArrayToStrings } from "../../utils/convertToString";
6
6
  import generateUniqueId from "../../utils/generateUniqueId";
7
+ function hasValueChanged(newValue, currentValue) {
8
+ if (newValue.length !== currentValue.length)
9
+ return true;
10
+ return newValue.some((val) => !currentValue.includes(val));
11
+ }
7
12
  /**
8
13
  * @slot <default> - <b>Unnamed slot.</b> For dropdown option elements.
9
14
  */
@@ -172,7 +177,7 @@ export class TdsDropdown {
172
177
  // Normalize to array
173
178
  const normalizedValue = this.normalizeValue(newValue);
174
179
  // Only update if actually changed
175
- if (this.hasValueChanged(normalizedValue, this.selectedOptions)) {
180
+ if (hasValueChanged(normalizedValue, this.selectedOptions)) {
176
181
  this.updateDropdownStateFromUser(normalizedValue);
177
182
  }
178
183
  }
@@ -197,11 +202,6 @@ export class TdsDropdown {
197
202
  .split(',')
198
203
  .filter((v) => v !== '');
199
204
  }
200
- hasValueChanged(newValue, currentValue) {
201
- if (newValue.length !== currentValue.length)
202
- return true;
203
- return newValue.some((val) => !currentValue.includes(val));
204
- }
205
205
  updateDropdownStateInternal(values) {
206
206
  this.updateDropdownState(values, false);
207
207
  }
@@ -264,7 +264,23 @@ export class TdsDropdown {
264
264
  value: value !== null && value !== void 0 ? value : null,
265
265
  });
266
266
  }
267
- async setValue(value) {
267
+ /** Method for setting the selected value of the Dropdown.
268
+ *
269
+ * Single selection example:
270
+ *
271
+ * <code>
272
+ * dropdown.setValue('option-1', 'Option 1');
273
+ * </code>
274
+ *
275
+ * Multiselect example:
276
+ *
277
+ * <code>
278
+ * dropdown.setValue(['option-1', 'option-2']);
279
+ * </code>
280
+ */
281
+ // @ts-expect-error for label: the label is optional here ONLY to not break the API. Should be removed for 2.0.
282
+ // eslint-disable-next-line no-unused-vars, @typescript-eslint/no-unused-vars
283
+ async setValue(value, label) {
268
284
  let normalizedValue;
269
285
  if (Array.isArray(value)) {
270
286
  normalizedValue = convertArrayToStrings(value);
@@ -301,23 +317,17 @@ export class TdsDropdown {
301
317
  // Always trigger the focus event to open the dropdown
302
318
  this.handleFocus({});
303
319
  }
304
- /** Method for setting the value of the Dropdown.
305
- *
306
- * Single selection example:
307
- *
308
- * <code>
309
- * dropdown.setValue('option-1', 'Option 1');
310
- * </code>
311
- *
312
- * Multiselect example:
313
- *
314
- * <code>
315
- * dropdown.setValue(['option-1', 'option-2']);
316
- * </code>
317
- */
320
+ /** Method for closing the Dropdown. */
318
321
  async close() {
319
322
  this.open = false;
320
323
  }
324
+ /** Method to force update the dropdown display value.
325
+ * Use this method when you programmatically change the text content of dropdown options
326
+ * to ensure the selected value display updates immediately.
327
+ */
328
+ async updateDisplay() {
329
+ this.updateDisplayValue();
330
+ }
321
331
  onAnyClick(event) {
322
332
  if (this.open) {
323
333
  // Source: https://lamplightdev.com/blog/2021/04/10/how-to-detect-clicks-outside-of-a-web-component/
@@ -451,9 +461,9 @@ export class TdsDropdown {
451
461
  // Generate unique IDs for associating labels and helpers with the input/button
452
462
  const labelId = this.label ? `dropdown-label-${this.name || generateUniqueId()}` : undefined;
453
463
  const helperId = this.helper ? `dropdown-helper-${this.name || generateUniqueId()}` : undefined;
454
- return (h(Host, { key: 'aed0a485fc4634cdba2599fa9792fb6289a7459c', class: {
464
+ return (h(Host, { key: '676f9d61c5fd8488cedbc949757e992be13e49eb', class: {
455
465
  [`tds-mode-variant-${this.modeVariant}`]: Boolean(this.modeVariant),
456
- } }, this.label && this.labelPosition === 'outside' && (h("div", { key: '39d11ac06547b133540f037a0c09ddc40b972cb5', id: labelId, class: `label-outside ${this.disabled ? 'disabled' : ''}` }, this.label)), h("div", { key: '8ab624d380289699887b660d30512b2e892f71c0', class: {
466
+ } }, this.label && this.labelPosition === 'outside' && (h("div", { key: 'ac4f3c9ca2719acc72f06ae977bf032d05913c6d', id: labelId, class: `label-outside ${this.disabled ? 'disabled' : ''}` }, this.label)), h("div", { key: 'c9d4142f63e315c73daef5038f266a32b05559a1', class: {
457
467
  'dropdown-select': true,
458
468
  [this.size]: true,
459
469
  'disabled': this.disabled,
@@ -487,12 +497,11 @@ export class TdsDropdown {
487
497
  }, class: {
488
498
  'clear-icon': true,
489
499
  'hide': !(this.open && this.inputElement.value !== ''),
490
- 'disabled': this.disabled
491
500
  }, name: "cross", size: "16px" }), h("tds-icon", { tdsAriaHidden: true, role: "button", "aria-label": "Open/Close dropdown", svgTitle: "Open/Close dropdown", onClick: this.handleToggleOpen, onKeyDown: (event) => {
492
501
  if (event.key === 'Enter') {
493
502
  this.handleToggleOpen();
494
503
  }
495
- }, class: `menu-icon ${this.open ? 'open' : 'closed'} ${this.disabled ? 'disabled' : ''}`, name: "chevron_down", size: "16px" }))) : (h("button", { "aria-label": this.tdsAriaLabel, "aria-labelledby": labelId, "aria-describedby": helperId, "aria-disabled": this.disabled, onClick: () => this.handleToggleOpen(), onKeyDown: (event) => {
504
+ }, class: `menu-icon ${this.open ? 'open' : 'closed'}`, name: "chevron_down", size: "16px" }))) : (h("button", { "aria-label": this.tdsAriaLabel, "aria-labelledby": labelId, "aria-describedby": helperId, "aria-disabled": this.disabled, onClick: () => this.handleToggleOpen(), onKeyDown: (event) => {
496
505
  if (event.key === 'Escape') {
497
506
  this.open = false;
498
507
  }
@@ -504,7 +513,7 @@ export class TdsDropdown {
504
513
  label-inside-as-placeholder
505
514
  ${this.size}
506
515
  ${this.selectedOptions.length ? 'selected' : ''}
507
- ` }, this.label)), h("div", { class: `placeholder ${this.size}` }, this.selectedOptions.length ? this.getValue() : this.placeholder), h("tds-icon", { "aria-label": "Open/Close dropdown", svgTitle: "Open/Close dropdown", class: `menu-icon ${this.open ? 'open' : 'closed'} ${this.disabled ? 'disabled' : ''}`, name: "chevron_down", size: "16px" }))))), h("div", { key: '38fa965b0721f4f30217e20b17488a2133edf3f6', role: "listbox", "aria-label": this.tdsAriaLabel, "aria-hidden": this.open ? 'false' : 'true', inert: !this.open, "aria-orientation": "vertical", "aria-multiselectable": this.multiselect, ref: (element) => {
516
+ ` }, this.label)), h("div", { class: `placeholder ${this.size}` }, this.selectedOptions.length ? this.getValue() : this.placeholder), h("tds-icon", { "aria-label": "Open/Close dropdown", svgTitle: "Open/Close dropdown", class: `menu-icon ${this.open ? 'open' : 'closed'}`, name: "chevron_down", size: "16px" }))))), h("div", { key: '6de931198040eec79815f83e2617d2646507b6a1', role: "listbox", "aria-label": this.tdsAriaLabel, inert: !this.open, "aria-orientation": "vertical", "aria-multiselectable": this.multiselect, ref: (element) => {
508
517
  this.dropdownList = element;
509
518
  }, class: {
510
519
  'dropdown-list': true,
@@ -515,11 +524,11 @@ export class TdsDropdown {
515
524
  'closed': !this.open,
516
525
  [`animation-enter-${this.animation}`]: this.animation !== 'none' && this.open,
517
526
  [`animation-exit-${this.animation}`]: this.animation !== 'none' && !this.open,
518
- } }, h("slot", { key: 'f325bf93f1888e95c5f2bd8b90d7639d1c8786e4', onSlotchange: () => this.handleSlotChange() }), this.filterResult === 0 && this.noResultText !== '' && (h("div", { key: '4a5949d7fd632308ac7b2a0ae3e9105feeab1d1e', class: `no-result ${this.size}` }, this.noResultText))), this.helper && (h("div", { key: '340a871c5c43192dd4e5d130adf10116d2406825', id: helperId, class: {
527
+ } }, h("slot", { key: '61ab9737181371073b25b95c34dad3311c2995c0', onSlotchange: () => this.handleSlotChange() }), this.filterResult === 0 && this.noResultText !== '' && (h("div", { key: 'aca39f881a57a6a23de03da78b5062e5dff55af7', class: `no-result ${this.size}` }, this.noResultText))), this.helper && (h("div", { key: '1e4221e58bc16608bfb0f780b7bc8040935eab37', id: helperId, class: {
519
528
  helper: true,
520
529
  error: this.error,
521
530
  disabled: this.disabled,
522
- } }, this.error && h("tds-icon", { key: '10b4059f6f5149c0bb10b4c209c69859bdc28296', name: "error", size: "16px" }), this.helper))));
531
+ } }, this.error && h("tds-icon", { key: 'ec946e77add75e7eaf194e2b38e5dd1c548ab32f', name: "error", size: "16px" }), this.helper))));
523
532
  }
524
533
  static get is() { return "tds-dropdown"; }
525
534
  static get encapsulation() { return "shadow"; }
@@ -946,11 +955,15 @@ export class TdsDropdown {
946
955
  return {
947
956
  "setValue": {
948
957
  "complexType": {
949
- "signature": "(value: string | number | string[] | number[]) => Promise<{ value: string | number; label: string; }[]>",
958
+ "signature": "(value: string | number | string[] | number[], label?: string) => Promise<{ value: string | number; label: string; }[]>",
950
959
  "parameters": [{
951
960
  "name": "value",
952
961
  "type": "string | number | string[] | number[]",
953
962
  "docs": ""
963
+ }, {
964
+ "name": "label",
965
+ "type": "string",
966
+ "docs": ""
954
967
  }],
955
968
  "references": {
956
969
  "Promise": {
@@ -965,7 +978,7 @@ export class TdsDropdown {
965
978
  "return": "Promise<{ value: string | number; label: string; }[]>"
966
979
  },
967
980
  "docs": {
968
- "text": "",
981
+ "text": "Method for setting the selected value of the Dropdown.\n\nSingle selection example:\n\n<code>\ndropdown.setValue('option-1', 'Option 1');\n</code>\n\nMultiselect example:\n\n<code>\ndropdown.setValue(['option-1', 'option-2']);\n</code>",
969
982
  "tags": []
970
983
  }
971
984
  },
@@ -1037,7 +1050,24 @@ export class TdsDropdown {
1037
1050
  "return": "Promise<void>"
1038
1051
  },
1039
1052
  "docs": {
1040
- "text": "Method for setting the value of the Dropdown.\n\nSingle selection example:\n\n<code>\ndropdown.setValue('option-1', 'Option 1');\n</code>\n\nMultiselect example:\n\n<code>\ndropdown.setValue(['option-1', 'option-2']);\n</code>",
1053
+ "text": "Method for closing the Dropdown.",
1054
+ "tags": []
1055
+ }
1056
+ },
1057
+ "updateDisplay": {
1058
+ "complexType": {
1059
+ "signature": "() => Promise<void>",
1060
+ "parameters": [],
1061
+ "references": {
1062
+ "Promise": {
1063
+ "location": "global",
1064
+ "id": "global::Promise"
1065
+ }
1066
+ },
1067
+ "return": "Promise<void>"
1068
+ },
1069
+ "docs": {
1070
+ "text": "Method to force update the dropdown display value.\nUse this method when you programmatically change the text content of dropdown options\nto ensure the selected value display updates immediately.",
1041
1071
  "tags": []
1042
1072
  }
1043
1073
  },
@@ -40,9 +40,10 @@
40
40
  background-color: var(--tds-footer-top-button-active);
41
41
  }
42
42
  :host button.footer-top-title-button:focus-visible {
43
- outline: 2px solid var(--tds-blue-400);
43
+ outline: 2px solid var(--tds-focus-outline-color);
44
44
  box-shadow: 0 0 0 1px var(--tds-white);
45
45
  outline-offset: 1px;
46
+ z-index: 1;
46
47
  }
47
48
  :host button.footer-top-title-button tds-icon {
48
49
  transition: transform 0.2s ease-in-out;
@@ -7,9 +7,10 @@
7
7
  }
8
8
  :host([role=listitem]) div ::slotted(a:focus-visible),
9
9
  :host([role=listitem]) div ::slotted(button:focus-visible) {
10
- outline: 2px solid var(--tds-blue-400);
10
+ outline: 2px solid var(--tds-focus-outline-color);
11
11
  box-shadow: 0 0 0 1px var(--tds-white);
12
12
  outline-offset: 1px;
13
+ z-index: 1;
13
14
  }
14
15
  :host([role=listitem]) div ::slotted(a:hover),
15
16
  :host([role=listitem]) div ::slotted(button:hover) {
@@ -23,9 +24,10 @@
23
24
  }
24
25
  :host([role=listitem]) div.top-part-child ::slotted(a:focus-visible),
25
26
  :host([role=listitem]) div.top-part-child ::slotted(button:focus-visible) {
26
- outline: 2px solid var(--tds-blue-400);
27
+ outline: 2px solid var(--tds-focus-outline-color);
27
28
  box-shadow: 0 0 0 1px var(--tds-white);
28
29
  outline-offset: 1px;
30
+ z-index: 1;
29
31
  }
30
32
 
31
33
  @media all and (max-width: 992px) {
@@ -46,8 +48,9 @@
46
48
  }
47
49
  :host([role=listitem]) div.top-part-child ::slotted(a:focus-visible),
48
50
  :host([role=listitem]) div.top-part-child ::slotted(button:focus-visible) {
49
- outline: 2px solid var(--tds-blue-400);
51
+ outline: 2px solid var(--tds-focus-outline-color);
50
52
  box-shadow: 0 0 0 1px var(--tds-white);
51
53
  outline-offset: 1px;
54
+ z-index: 1;
52
55
  }
53
56
  }