@db-ux/wc-core-components 2.0.0-0-custom-select-16b8cce → 2.0.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 (483) hide show
  1. package/dist/cjs/db-accordion-item.cjs.entry.js +42 -8
  2. package/dist/cjs/db-accordion-item.cjs.entry.js.map +1 -1
  3. package/dist/cjs/db-accordion-item.entry.cjs.js.map +1 -1
  4. package/dist/cjs/db-accordion.cjs.entry.js +12 -12
  5. package/dist/cjs/db-accordion.cjs.entry.js.map +1 -1
  6. package/dist/cjs/db-accordion.entry.cjs.js.map +1 -1
  7. package/dist/cjs/db-badge.cjs.entry.js +3 -3
  8. package/dist/cjs/db-badge.cjs.entry.js.map +1 -1
  9. package/dist/cjs/db-badge.entry.cjs.js.map +1 -1
  10. package/dist/cjs/db-brand.cjs.entry.js +3 -3
  11. package/dist/cjs/db-brand.cjs.entry.js.map +1 -1
  12. package/dist/cjs/db-brand.entry.cjs.js.map +1 -1
  13. package/dist/cjs/db-button.cjs.entry.js +7 -7
  14. package/dist/cjs/db-button.cjs.entry.js.map +1 -1
  15. package/dist/cjs/db-button.entry.cjs.js.map +1 -1
  16. package/dist/cjs/db-card.cjs.entry.js +7 -7
  17. package/dist/cjs/db-card.cjs.entry.js.map +1 -1
  18. package/dist/cjs/db-card.entry.cjs.js.map +1 -1
  19. package/dist/cjs/db-checkbox.cjs.entry.js +59 -44
  20. package/dist/cjs/db-checkbox.cjs.entry.js.map +1 -1
  21. package/dist/cjs/db-checkbox.entry.cjs.js.map +1 -1
  22. package/dist/cjs/db-custom-select-dropdown.db-custom-select-list.db-custom-select-list-item.db-input.db-tag.db-tooltip.entry.cjs.js.map +1 -1
  23. package/dist/cjs/db-custom-select-dropdown_6.cjs.entry.js +78 -64
  24. package/dist/cjs/db-custom-select-dropdown_6.cjs.entry.js.map +1 -1
  25. package/dist/cjs/db-custom-select-form-field.cjs.entry.js +4 -4
  26. package/dist/cjs/db-custom-select-form-field.cjs.entry.js.map +1 -1
  27. package/dist/cjs/db-custom-select-form-field.entry.cjs.js.map +1 -1
  28. package/dist/cjs/db-custom-select.cjs.entry.js +203 -189
  29. package/dist/cjs/db-custom-select.cjs.entry.js.map +1 -1
  30. package/dist/cjs/db-custom-select.entry.cjs.js.map +1 -1
  31. package/dist/cjs/db-divider.cjs.entry.js +3 -3
  32. package/dist/cjs/db-divider.cjs.entry.js.map +1 -1
  33. package/dist/cjs/db-divider.entry.cjs.js.map +1 -1
  34. package/dist/cjs/db-drawer.cjs.entry.js +8 -9
  35. package/dist/cjs/db-drawer.cjs.entry.js.map +1 -1
  36. package/dist/cjs/db-drawer.entry.cjs.js.map +1 -1
  37. package/dist/cjs/db-header.cjs.entry.js +13 -11
  38. package/dist/cjs/db-header.cjs.entry.js.map +1 -1
  39. package/dist/cjs/db-header.entry.cjs.js.map +1 -1
  40. package/dist/cjs/db-icon.cjs.entry.js +3 -3
  41. package/dist/cjs/db-icon.cjs.entry.js.map +1 -1
  42. package/dist/cjs/db-icon.entry.cjs.js.map +1 -1
  43. package/dist/cjs/db-infotext.cjs.entry.js +3 -3
  44. package/dist/cjs/db-infotext.cjs.entry.js.map +1 -1
  45. package/dist/cjs/db-infotext.entry.cjs.js.map +1 -1
  46. package/dist/cjs/db-link.cjs.entry.js +7 -7
  47. package/dist/cjs/db-link.cjs.entry.js.map +1 -1
  48. package/dist/cjs/db-link.entry.cjs.js.map +1 -1
  49. package/dist/cjs/db-navigation-item.cjs.entry.js +26 -28
  50. package/dist/cjs/db-navigation-item.cjs.entry.js.map +1 -1
  51. package/dist/cjs/db-navigation-item.entry.cjs.js.map +1 -1
  52. package/dist/cjs/db-navigation.cjs.entry.js +4 -4
  53. package/dist/cjs/db-navigation.cjs.entry.js.map +1 -1
  54. package/dist/cjs/db-navigation.entry.cjs.js.map +1 -1
  55. package/dist/cjs/db-notification.cjs.entry.js +7 -7
  56. package/dist/cjs/db-notification.cjs.entry.js.map +1 -1
  57. package/dist/cjs/db-notification.entry.cjs.js.map +1 -1
  58. package/dist/cjs/db-page.cjs.entry.js +4 -4
  59. package/dist/cjs/db-page.cjs.entry.js.map +1 -1
  60. package/dist/cjs/db-page.entry.cjs.js.map +1 -1
  61. package/dist/cjs/db-popover.cjs.entry.js +4 -4
  62. package/dist/cjs/db-popover.cjs.entry.js.map +1 -1
  63. package/dist/cjs/db-popover.entry.cjs.js.map +1 -1
  64. package/dist/cjs/db-radio.cjs.entry.js +10 -19
  65. package/dist/cjs/db-radio.cjs.entry.js.map +1 -1
  66. package/dist/cjs/db-radio.entry.cjs.js.map +1 -1
  67. package/dist/cjs/db-section.cjs.entry.js +4 -4
  68. package/dist/cjs/db-section.cjs.entry.js.map +1 -1
  69. package/dist/cjs/db-section.entry.cjs.js.map +1 -1
  70. package/dist/cjs/db-select.cjs.entry.js +70 -57
  71. package/dist/cjs/db-select.cjs.entry.js.map +1 -1
  72. package/dist/cjs/db-select.entry.cjs.js.map +1 -1
  73. package/dist/cjs/db-stack.cjs.entry.js +4 -4
  74. package/dist/cjs/db-stack.cjs.entry.js.map +1 -1
  75. package/dist/cjs/db-stack.entry.cjs.js.map +1 -1
  76. package/dist/cjs/db-switch.cjs.entry.js +11 -20
  77. package/dist/cjs/db-switch.cjs.entry.js.map +1 -1
  78. package/dist/cjs/db-switch.entry.cjs.js.map +1 -1
  79. package/dist/cjs/db-tab-item.db-tab-list.db-tab-panel.entry.cjs.js.map +1 -1
  80. package/dist/cjs/db-tab-item_3.cjs.entry.js +38 -17
  81. package/dist/cjs/db-tab-item_3.cjs.entry.js.map +1 -1
  82. package/dist/cjs/db-tabs.cjs.entry.js +24 -23
  83. package/dist/cjs/db-tabs.cjs.entry.js.map +1 -1
  84. package/dist/cjs/db-tabs.entry.cjs.js.map +1 -1
  85. package/dist/cjs/db-textarea.cjs.entry.js +60 -45
  86. package/dist/cjs/db-textarea.cjs.entry.js.map +1 -1
  87. package/dist/cjs/db-textarea.entry.cjs.js.map +1 -1
  88. package/dist/cjs/db-ux.cjs.js +3 -3
  89. package/dist/cjs/db-ux.cjs.js.map +1 -1
  90. package/dist/cjs/document-click-listener-CrbHspH2.js +37 -0
  91. package/dist/cjs/document-click-listener-CrbHspH2.js.map +1 -0
  92. package/dist/cjs/{index-DeqKGVDx.js → index-9h8KqOUd.js} +25 -7
  93. package/dist/cjs/index-9h8KqOUd.js.map +1 -0
  94. package/dist/cjs/{index-DBEtsnky.js → index-w2CAlvjJ.js} +6 -5
  95. package/dist/cjs/index-w2CAlvjJ.js.map +1 -0
  96. package/dist/cjs/index.cjs.js +6 -5
  97. package/dist/cjs/index.cjs.js.map +1 -1
  98. package/dist/cjs/loader.cjs.js +2 -2
  99. package/dist/cjs/{navigation-Cfm1OFWB.js → navigation-DjZJIxIq.js} +3 -3
  100. package/dist/cjs/{navigation-Cfm1OFWB.js.map → navigation-DjZJIxIq.js.map} +1 -1
  101. package/dist/collection/collection-manifest.json +1 -1
  102. package/dist/collection/components/accordion/accordion.js +26 -25
  103. package/dist/collection/components/accordion/accordion.js.map +1 -1
  104. package/dist/collection/components/accordion/model.js.map +1 -1
  105. package/dist/collection/components/accordion-item/accordion-item.js +87 -17
  106. package/dist/collection/components/accordion-item/accordion-item.js.map +1 -1
  107. package/dist/collection/components/accordion-item/model.js.map +1 -1
  108. package/dist/collection/components/badge/badge.js +10 -10
  109. package/dist/collection/components/badge/badge.js.map +1 -1
  110. package/dist/collection/components/badge/model.js.map +1 -1
  111. package/dist/collection/components/brand/brand.js +9 -9
  112. package/dist/collection/components/brand/brand.js.map +1 -1
  113. package/dist/collection/components/button/button.js +57 -32
  114. package/dist/collection/components/button/button.js.map +1 -1
  115. package/dist/collection/components/button/model.js.map +1 -1
  116. package/dist/collection/components/card/card.js +12 -12
  117. package/dist/collection/components/card/card.js.map +1 -1
  118. package/dist/collection/components/checkbox/checkbox.js +118 -166
  119. package/dist/collection/components/checkbox/checkbox.js.map +1 -1
  120. package/dist/collection/components/checkbox/model.js.map +1 -1
  121. package/dist/collection/components/custom-select/custom-select.js +340 -335
  122. package/dist/collection/components/custom-select/custom-select.js.map +1 -1
  123. package/dist/collection/components/custom-select/model.js.map +1 -1
  124. package/dist/collection/components/custom-select-dropdown/custom-select-dropdown.js +5 -5
  125. package/dist/collection/components/custom-select-dropdown/custom-select-dropdown.js.map +1 -1
  126. package/dist/collection/components/custom-select-form-field/custom-select-form-field.js +4 -4
  127. package/dist/collection/components/custom-select-form-field/custom-select-form-field.js.map +1 -1
  128. package/dist/collection/components/custom-select-list/custom-select-list.js +6 -6
  129. package/dist/collection/components/custom-select-list/custom-select-list.js.map +1 -1
  130. package/dist/collection/components/custom-select-list-item/custom-select-list-item.js +27 -52
  131. package/dist/collection/components/custom-select-list-item/custom-select-list-item.js.map +1 -1
  132. package/dist/collection/components/divider/divider.js +7 -7
  133. package/dist/collection/components/divider/divider.js.map +1 -1
  134. package/dist/collection/components/drawer/drawer.js +23 -24
  135. package/dist/collection/components/drawer/drawer.js.map +1 -1
  136. package/dist/collection/components/drawer/model.js.map +1 -1
  137. package/dist/collection/components/header/header.js +22 -20
  138. package/dist/collection/components/header/header.js.map +1 -1
  139. package/dist/collection/components/header/model.js.map +1 -1
  140. package/dist/collection/components/icon/icon.js +7 -7
  141. package/dist/collection/components/icon/icon.js.map +1 -1
  142. package/dist/collection/components/infotext/infotext.js +10 -10
  143. package/dist/collection/components/infotext/infotext.js.map +1 -1
  144. package/dist/collection/components/input/input.js +218 -213
  145. package/dist/collection/components/input/input.js.map +1 -1
  146. package/dist/collection/components/input/model.js.map +1 -1
  147. package/dist/collection/components/link/link.js +29 -29
  148. package/dist/collection/components/link/link.js.map +1 -1
  149. package/dist/collection/components/navigation/navigation.js +5 -5
  150. package/dist/collection/components/navigation/navigation.js.map +1 -1
  151. package/dist/collection/components/navigation-item/model.js.map +1 -1
  152. package/dist/collection/components/navigation-item/navigation-item.js +43 -43
  153. package/dist/collection/components/navigation-item/navigation-item.js.map +1 -1
  154. package/dist/collection/components/notification/model.js.map +1 -1
  155. package/dist/collection/components/notification/notification.js +32 -32
  156. package/dist/collection/components/notification/notification.js.map +1 -1
  157. package/dist/collection/components/page/model.js.map +1 -1
  158. package/dist/collection/components/page/page.js +10 -10
  159. package/dist/collection/components/page/page.js.map +1 -1
  160. package/dist/collection/components/popover/model.js.map +1 -1
  161. package/dist/collection/components/popover/popover.js +17 -17
  162. package/dist/collection/components/popover/popover.js.map +1 -1
  163. package/dist/collection/components/radio/radio.js +32 -110
  164. package/dist/collection/components/radio/radio.js.map +1 -1
  165. package/dist/collection/components/section/section.js +6 -6
  166. package/dist/collection/components/section/section.js.map +1 -1
  167. package/dist/collection/components/select/model.js.map +1 -1
  168. package/dist/collection/components/select/select.js +130 -203
  169. package/dist/collection/components/select/select.js.map +1 -1
  170. package/dist/collection/components/stack/model.js.map +1 -1
  171. package/dist/collection/components/stack/stack.js +12 -12
  172. package/dist/collection/components/stack/stack.js.map +1 -1
  173. package/dist/collection/components/switch/model.js.map +1 -1
  174. package/dist/collection/components/switch/switch.js +39 -117
  175. package/dist/collection/components/switch/switch.js.map +1 -1
  176. package/dist/collection/components/tab-item/model.js.map +1 -1
  177. package/dist/collection/components/tab-item/tab-item.js +66 -40
  178. package/dist/collection/components/tab-item/tab-item.js.map +1 -1
  179. package/dist/collection/components/tab-list/tab-list.js +4 -4
  180. package/dist/collection/components/tab-list/tab-list.js.map +1 -1
  181. package/dist/collection/components/tab-panel/tab-panel.js +6 -6
  182. package/dist/collection/components/tab-panel/tab-panel.js.map +1 -1
  183. package/dist/collection/components/tabs/model.js.map +1 -1
  184. package/dist/collection/components/tabs/tabs.js +63 -62
  185. package/dist/collection/components/tabs/tabs.js.map +1 -1
  186. package/dist/collection/components/tag/model.js.map +1 -1
  187. package/dist/collection/components/tag/tag.js +27 -27
  188. package/dist/collection/components/tag/tag.js.map +1 -1
  189. package/dist/collection/components/textarea/model.js.map +1 -1
  190. package/dist/collection/components/textarea/textarea.js +171 -168
  191. package/dist/collection/components/textarea/textarea.js.map +1 -1
  192. package/dist/collection/components/tooltip/model.js.map +1 -1
  193. package/dist/collection/components/tooltip/tooltip.js +14 -14
  194. package/dist/collection/components/tooltip/tooltip.js.map +1 -1
  195. package/dist/collection/shared/model.js +0 -1
  196. package/dist/collection/shared/model.js.map +1 -1
  197. package/dist/collection/utils/document-click-listener.js +30 -0
  198. package/dist/collection/utils/document-click-listener.js.map +1 -0
  199. package/dist/collection/utils/index.js +21 -21
  200. package/dist/collection/utils/index.js.map +1 -1
  201. package/dist/custom-elements.json +2629 -1698
  202. package/dist/db-ux/db-accordion-item.entry.esm.js.map +1 -1
  203. package/dist/db-ux/db-accordion.entry.esm.js.map +1 -1
  204. package/dist/db-ux/db-badge.entry.esm.js.map +1 -1
  205. package/dist/db-ux/db-brand.entry.esm.js.map +1 -1
  206. package/dist/db-ux/db-button.entry.esm.js.map +1 -1
  207. package/dist/db-ux/db-card.entry.esm.js.map +1 -1
  208. package/dist/db-ux/db-checkbox.entry.esm.js.map +1 -1
  209. package/dist/db-ux/db-custom-select-dropdown.db-custom-select-list.db-custom-select-list-item.db-input.db-tag.db-tooltip.entry.esm.js.map +1 -1
  210. package/dist/db-ux/db-custom-select-form-field.entry.esm.js.map +1 -1
  211. package/dist/db-ux/db-custom-select.entry.esm.js.map +1 -1
  212. package/dist/db-ux/db-divider.entry.esm.js.map +1 -1
  213. package/dist/db-ux/db-drawer.entry.esm.js.map +1 -1
  214. package/dist/db-ux/db-header.entry.esm.js.map +1 -1
  215. package/dist/db-ux/db-icon.entry.esm.js.map +1 -1
  216. package/dist/db-ux/db-infotext.entry.esm.js.map +1 -1
  217. package/dist/db-ux/db-link.entry.esm.js.map +1 -1
  218. package/dist/db-ux/db-navigation-item.entry.esm.js.map +1 -1
  219. package/dist/db-ux/db-navigation.entry.esm.js.map +1 -1
  220. package/dist/db-ux/db-notification.entry.esm.js.map +1 -1
  221. package/dist/db-ux/db-page.entry.esm.js.map +1 -1
  222. package/dist/db-ux/db-popover.entry.esm.js.map +1 -1
  223. package/dist/db-ux/db-radio.entry.esm.js.map +1 -1
  224. package/dist/db-ux/db-section.entry.esm.js.map +1 -1
  225. package/dist/db-ux/db-select.entry.esm.js.map +1 -1
  226. package/dist/db-ux/db-stack.entry.esm.js.map +1 -1
  227. package/dist/db-ux/db-switch.entry.esm.js.map +1 -1
  228. package/dist/db-ux/db-tab-item.db-tab-list.db-tab-panel.entry.esm.js.map +1 -1
  229. package/dist/db-ux/db-tabs.entry.esm.js.map +1 -1
  230. package/dist/db-ux/db-textarea.entry.esm.js.map +1 -1
  231. package/dist/db-ux/db-ux.esm.js +1 -1
  232. package/dist/db-ux/db-ux.esm.js.map +1 -1
  233. package/dist/db-ux/index.esm.js +1 -1
  234. package/dist/db-ux/index.esm.js.map +1 -1
  235. package/dist/db-ux/p-0c1b4216.entry.js +2 -0
  236. package/dist/db-ux/p-0c1b4216.entry.js.map +1 -0
  237. package/dist/db-ux/p-19ebdb92.entry.js +2 -0
  238. package/dist/db-ux/p-19ebdb92.entry.js.map +1 -0
  239. package/dist/db-ux/p-20f2efec.entry.js +2 -0
  240. package/dist/db-ux/p-20f2efec.entry.js.map +1 -0
  241. package/dist/db-ux/p-2ea85ed3.entry.js +2 -0
  242. package/dist/db-ux/p-2ea85ed3.entry.js.map +1 -0
  243. package/dist/db-ux/p-3d9cfe8d.entry.js +2 -0
  244. package/dist/db-ux/p-3d9cfe8d.entry.js.map +1 -0
  245. package/dist/db-ux/p-56fa0857.entry.js +2 -0
  246. package/dist/db-ux/p-56fa0857.entry.js.map +1 -0
  247. package/dist/db-ux/p-6f9de31b.entry.js +2 -0
  248. package/dist/db-ux/p-6f9de31b.entry.js.map +1 -0
  249. package/dist/db-ux/p-797ccaa9.entry.js +2 -0
  250. package/dist/db-ux/p-797ccaa9.entry.js.map +1 -0
  251. package/dist/db-ux/{p-0b9779be.entry.js → p-7bc56311.entry.js} +2 -2
  252. package/dist/db-ux/p-7bc56311.entry.js.map +1 -0
  253. package/dist/db-ux/p-828bb611.entry.js +2 -0
  254. package/dist/db-ux/p-828bb611.entry.js.map +1 -0
  255. package/dist/db-ux/{p-d10ee6dc.entry.js → p-84136093.entry.js} +2 -2
  256. package/dist/db-ux/p-84136093.entry.js.map +1 -0
  257. package/dist/db-ux/p-861c92ee.entry.js +2 -0
  258. package/dist/db-ux/p-861c92ee.entry.js.map +1 -0
  259. package/dist/db-ux/{p-0414dab3.entry.js → p-924110bd.entry.js} +2 -2
  260. package/dist/db-ux/p-924110bd.entry.js.map +1 -0
  261. package/dist/db-ux/p-96a0c7de.entry.js +2 -0
  262. package/dist/db-ux/p-96a0c7de.entry.js.map +1 -0
  263. package/dist/db-ux/p-B_W_wePN.js +2 -0
  264. package/dist/db-ux/p-B_W_wePN.js.map +1 -0
  265. package/dist/db-ux/p-BkYjDIed.js +3 -0
  266. package/dist/db-ux/p-BkYjDIed.js.map +1 -0
  267. package/dist/db-ux/{p-VkX3SW7K.js → p-Duz60W3r.js} +2 -2
  268. package/dist/db-ux/{p-VkX3SW7K.js.map → p-Duz60W3r.js.map} +1 -1
  269. package/dist/db-ux/p-TU0pfK1i.js +2 -0
  270. package/dist/db-ux/p-TU0pfK1i.js.map +1 -0
  271. package/dist/db-ux/p-a20f9b38.entry.js +2 -0
  272. package/dist/db-ux/p-a20f9b38.entry.js.map +1 -0
  273. package/dist/db-ux/{p-9a3c9ffe.entry.js → p-aad2b065.entry.js} +2 -2
  274. package/dist/db-ux/p-aad2b065.entry.js.map +1 -0
  275. package/dist/db-ux/p-abc1afa7.entry.js +2 -0
  276. package/dist/db-ux/p-abc1afa7.entry.js.map +1 -0
  277. package/dist/db-ux/p-b074eb7f.entry.js +2 -0
  278. package/dist/db-ux/p-b074eb7f.entry.js.map +1 -0
  279. package/dist/db-ux/p-b6821ac2.entry.js +2 -0
  280. package/dist/db-ux/p-b6821ac2.entry.js.map +1 -0
  281. package/dist/db-ux/p-b7cd9e31.entry.js +2 -0
  282. package/dist/db-ux/p-b7cd9e31.entry.js.map +1 -0
  283. package/dist/db-ux/p-b92bbd61.entry.js +2 -0
  284. package/dist/db-ux/p-b92bbd61.entry.js.map +1 -0
  285. package/dist/db-ux/p-bcb3d891.entry.js +2 -0
  286. package/dist/db-ux/p-bcb3d891.entry.js.map +1 -0
  287. package/dist/db-ux/{p-65983b83.entry.js → p-be35b5b4.entry.js} +2 -2
  288. package/dist/db-ux/p-be35b5b4.entry.js.map +1 -0
  289. package/dist/db-ux/p-d60822ce.entry.js +2 -0
  290. package/dist/db-ux/p-d60822ce.entry.js.map +1 -0
  291. package/dist/db-ux/p-dc71d000.entry.js +2 -0
  292. package/dist/db-ux/p-dc71d000.entry.js.map +1 -0
  293. package/dist/db-ux/p-e397a44c.entry.js +2 -0
  294. package/dist/db-ux/p-e397a44c.entry.js.map +1 -0
  295. package/dist/db-ux/p-e4f73b24.entry.js +2 -0
  296. package/dist/db-ux/p-e4f73b24.entry.js.map +1 -0
  297. package/dist/db-ux/p-e72a0bfe.entry.js +2 -0
  298. package/dist/db-ux/p-e72a0bfe.entry.js.map +1 -0
  299. package/dist/db-ux/p-fba19a3f.entry.js +2 -0
  300. package/dist/db-ux/p-fba19a3f.entry.js.map +1 -0
  301. package/dist/esm/db-accordion-item.entry.js +42 -8
  302. package/dist/esm/db-accordion-item.entry.js.map +1 -1
  303. package/dist/esm/db-accordion.entry.js +12 -12
  304. package/dist/esm/db-accordion.entry.js.map +1 -1
  305. package/dist/esm/db-badge.entry.js +3 -3
  306. package/dist/esm/db-badge.entry.js.map +1 -1
  307. package/dist/esm/db-brand.entry.js +3 -3
  308. package/dist/esm/db-brand.entry.js.map +1 -1
  309. package/dist/esm/db-button.entry.js +7 -7
  310. package/dist/esm/db-button.entry.js.map +1 -1
  311. package/dist/esm/db-card.entry.js +7 -7
  312. package/dist/esm/db-card.entry.js.map +1 -1
  313. package/dist/esm/db-checkbox.entry.js +60 -45
  314. package/dist/esm/db-checkbox.entry.js.map +1 -1
  315. package/dist/esm/db-custom-select-dropdown.db-custom-select-list.db-custom-select-list-item.db-input.db-tag.db-tooltip.entry.js.map +1 -1
  316. package/dist/esm/db-custom-select-dropdown_6.entry.js +79 -65
  317. package/dist/esm/db-custom-select-dropdown_6.entry.js.map +1 -1
  318. package/dist/esm/db-custom-select-form-field.entry.js +4 -4
  319. package/dist/esm/db-custom-select-form-field.entry.js.map +1 -1
  320. package/dist/esm/db-custom-select.entry.js +204 -190
  321. package/dist/esm/db-custom-select.entry.js.map +1 -1
  322. package/dist/esm/db-divider.entry.js +3 -3
  323. package/dist/esm/db-divider.entry.js.map +1 -1
  324. package/dist/esm/db-drawer.entry.js +8 -9
  325. package/dist/esm/db-drawer.entry.js.map +1 -1
  326. package/dist/esm/db-header.entry.js +13 -11
  327. package/dist/esm/db-header.entry.js.map +1 -1
  328. package/dist/esm/db-icon.entry.js +3 -3
  329. package/dist/esm/db-icon.entry.js.map +1 -1
  330. package/dist/esm/db-infotext.entry.js +3 -3
  331. package/dist/esm/db-infotext.entry.js.map +1 -1
  332. package/dist/esm/db-link.entry.js +7 -7
  333. package/dist/esm/db-link.entry.js.map +1 -1
  334. package/dist/esm/db-navigation-item.entry.js +26 -28
  335. package/dist/esm/db-navigation-item.entry.js.map +1 -1
  336. package/dist/esm/db-navigation.entry.js +4 -4
  337. package/dist/esm/db-navigation.entry.js.map +1 -1
  338. package/dist/esm/db-notification.entry.js +7 -7
  339. package/dist/esm/db-notification.entry.js.map +1 -1
  340. package/dist/esm/db-page.entry.js +4 -4
  341. package/dist/esm/db-page.entry.js.map +1 -1
  342. package/dist/esm/db-popover.entry.js +4 -4
  343. package/dist/esm/db-popover.entry.js.map +1 -1
  344. package/dist/esm/db-radio.entry.js +10 -19
  345. package/dist/esm/db-radio.entry.js.map +1 -1
  346. package/dist/esm/db-section.entry.js +4 -4
  347. package/dist/esm/db-section.entry.js.map +1 -1
  348. package/dist/esm/db-select.entry.js +71 -58
  349. package/dist/esm/db-select.entry.js.map +1 -1
  350. package/dist/esm/db-stack.entry.js +4 -4
  351. package/dist/esm/db-stack.entry.js.map +1 -1
  352. package/dist/esm/db-switch.entry.js +11 -20
  353. package/dist/esm/db-switch.entry.js.map +1 -1
  354. package/dist/esm/db-tab-item.db-tab-list.db-tab-panel.entry.js.map +1 -1
  355. package/dist/esm/db-tab-item_3.entry.js +38 -17
  356. package/dist/esm/db-tab-item_3.entry.js.map +1 -1
  357. package/dist/esm/db-tabs.entry.js +24 -23
  358. package/dist/esm/db-tabs.entry.js.map +1 -1
  359. package/dist/esm/db-textarea.entry.js +61 -46
  360. package/dist/esm/db-textarea.entry.js.map +1 -1
  361. package/dist/esm/db-ux.js +4 -4
  362. package/dist/esm/db-ux.js.map +1 -1
  363. package/dist/esm/document-click-listener-B2jDrCt8.js +35 -0
  364. package/dist/esm/document-click-listener-B2jDrCt8.js.map +1 -0
  365. package/dist/esm/{index-D-D8lQAG.js → index-BkYjDIed.js} +6 -5
  366. package/dist/esm/index-BkYjDIed.js.map +1 -0
  367. package/dist/esm/{index-fw8E73KY.js → index-TU0pfK1i.js} +24 -8
  368. package/dist/esm/index-TU0pfK1i.js.map +1 -0
  369. package/dist/esm/index.js +5 -5
  370. package/dist/esm/index.js.map +1 -1
  371. package/dist/esm/loader.js +3 -3
  372. package/dist/esm/{navigation-1ba3zvi0.js → navigation-BjeAmWrQ.js} +3 -3
  373. package/dist/esm/{navigation-1ba3zvi0.js.map → navigation-BjeAmWrQ.js.map} +1 -1
  374. package/dist/types/components/accordion/accordion.d.ts +2 -2
  375. package/dist/types/components/accordion/model.d.ts +2 -2
  376. package/dist/types/components/accordion-item/accordion-item.d.ts +11 -2
  377. package/dist/types/components/accordion-item/model.d.ts +5 -5
  378. package/dist/types/components/badge/model.d.ts +2 -2
  379. package/dist/types/components/button/button.d.ts +3 -1
  380. package/dist/types/components/button/model.d.ts +11 -7
  381. package/dist/types/components/card/card.d.ts +2 -1
  382. package/dist/types/components/checkbox/checkbox.d.ts +13 -10
  383. package/dist/types/components/checkbox/model.d.ts +3 -3
  384. package/dist/types/components/custom-select/custom-select.d.ts +18 -15
  385. package/dist/types/components/custom-select/model.d.ts +49 -29
  386. package/dist/types/components/custom-select-list-item/custom-select-list-item.d.ts +2 -2
  387. package/dist/types/components/drawer/drawer.d.ts +2 -1
  388. package/dist/types/components/drawer/model.d.ts +2 -2
  389. package/dist/types/components/header/header.d.ts +3 -2
  390. package/dist/types/components/header/model.d.ts +2 -2
  391. package/dist/types/components/input/input.d.ts +19 -14
  392. package/dist/types/components/input/model.d.ts +3 -3
  393. package/dist/types/components/link/link.d.ts +2 -1
  394. package/dist/types/components/navigation-item/model.d.ts +2 -3
  395. package/dist/types/components/navigation-item/navigation-item.d.ts +4 -4
  396. package/dist/types/components/notification/model.d.ts +3 -3
  397. package/dist/types/components/notification/notification.d.ts +3 -2
  398. package/dist/types/components/page/model.d.ts +1 -1
  399. package/dist/types/components/popover/model.d.ts +1 -1
  400. package/dist/types/components/radio/radio.d.ts +7 -9
  401. package/dist/types/components/select/model.d.ts +2 -2
  402. package/dist/types/components/select/select.d.ts +18 -16
  403. package/dist/types/components/stack/model.d.ts +1 -1
  404. package/dist/types/components/switch/model.d.ts +2 -2
  405. package/dist/types/components/switch/switch.d.ts +4 -6
  406. package/dist/types/components/tab-item/model.d.ts +6 -6
  407. package/dist/types/components/tab-item/tab-item.d.ts +8 -3
  408. package/dist/types/components/tabs/model.d.ts +11 -3
  409. package/dist/types/components/tabs/tabs.d.ts +5 -4
  410. package/dist/types/components/tag/model.d.ts +9 -5
  411. package/dist/types/components/tag/tag.d.ts +2 -1
  412. package/dist/types/components/textarea/model.d.ts +4 -4
  413. package/dist/types/components/textarea/textarea.d.ts +17 -12
  414. package/dist/types/components/tooltip/model.d.ts +1 -1
  415. package/dist/types/components.d.ts +96 -124
  416. package/dist/types/shared/model.d.ts +56 -31
  417. package/dist/types/stencil-public-runtime.d.ts +2 -0
  418. package/dist/types/utils/document-click-listener.d.ts +8 -0
  419. package/dist/types/utils/index.d.ts +5 -28
  420. package/dist/vscode.html-custom-data.json +143 -122
  421. package/dist/web-types.json +803 -475
  422. package/package.json +4 -4
  423. package/dist/cjs/index-DBEtsnky.js.map +0 -1
  424. package/dist/cjs/index-DeqKGVDx.js.map +0 -1
  425. package/dist/db-ux/p-0414dab3.entry.js.map +0 -1
  426. package/dist/db-ux/p-05505797.entry.js +0 -2
  427. package/dist/db-ux/p-05505797.entry.js.map +0 -1
  428. package/dist/db-ux/p-0b9779be.entry.js.map +0 -1
  429. package/dist/db-ux/p-1799c085.entry.js +0 -2
  430. package/dist/db-ux/p-1799c085.entry.js.map +0 -1
  431. package/dist/db-ux/p-30261cf0.entry.js +0 -2
  432. package/dist/db-ux/p-30261cf0.entry.js.map +0 -1
  433. package/dist/db-ux/p-43f2df95.entry.js +0 -2
  434. package/dist/db-ux/p-43f2df95.entry.js.map +0 -1
  435. package/dist/db-ux/p-463c100b.entry.js +0 -2
  436. package/dist/db-ux/p-463c100b.entry.js.map +0 -1
  437. package/dist/db-ux/p-4cf2c595.entry.js +0 -2
  438. package/dist/db-ux/p-4cf2c595.entry.js.map +0 -1
  439. package/dist/db-ux/p-56a39c64.entry.js +0 -2
  440. package/dist/db-ux/p-56a39c64.entry.js.map +0 -1
  441. package/dist/db-ux/p-5ceb34d7.entry.js +0 -2
  442. package/dist/db-ux/p-5ceb34d7.entry.js.map +0 -1
  443. package/dist/db-ux/p-65983b83.entry.js.map +0 -1
  444. package/dist/db-ux/p-6e1aa320.entry.js +0 -2
  445. package/dist/db-ux/p-6e1aa320.entry.js.map +0 -1
  446. package/dist/db-ux/p-70b6a633.entry.js +0 -2
  447. package/dist/db-ux/p-70b6a633.entry.js.map +0 -1
  448. package/dist/db-ux/p-72cbf9ff.entry.js +0 -2
  449. package/dist/db-ux/p-72cbf9ff.entry.js.map +0 -1
  450. package/dist/db-ux/p-7346f78f.entry.js +0 -2
  451. package/dist/db-ux/p-7346f78f.entry.js.map +0 -1
  452. package/dist/db-ux/p-7b3689ea.entry.js +0 -2
  453. package/dist/db-ux/p-7b3689ea.entry.js.map +0 -1
  454. package/dist/db-ux/p-93ee59f3.entry.js +0 -2
  455. package/dist/db-ux/p-93ee59f3.entry.js.map +0 -1
  456. package/dist/db-ux/p-969ce4ec.entry.js +0 -2
  457. package/dist/db-ux/p-969ce4ec.entry.js.map +0 -1
  458. package/dist/db-ux/p-97cfc836.entry.js +0 -2
  459. package/dist/db-ux/p-97cfc836.entry.js.map +0 -1
  460. package/dist/db-ux/p-9a3c9ffe.entry.js.map +0 -1
  461. package/dist/db-ux/p-D-D8lQAG.js +0 -3
  462. package/dist/db-ux/p-D-D8lQAG.js.map +0 -1
  463. package/dist/db-ux/p-a2f461ee.entry.js +0 -2
  464. package/dist/db-ux/p-a2f461ee.entry.js.map +0 -1
  465. package/dist/db-ux/p-acca879a.entry.js +0 -2
  466. package/dist/db-ux/p-acca879a.entry.js.map +0 -1
  467. package/dist/db-ux/p-b09d7817.entry.js +0 -2
  468. package/dist/db-ux/p-b09d7817.entry.js.map +0 -1
  469. package/dist/db-ux/p-b858ced9.entry.js +0 -2
  470. package/dist/db-ux/p-b858ced9.entry.js.map +0 -1
  471. package/dist/db-ux/p-bb06aac0.entry.js +0 -2
  472. package/dist/db-ux/p-bb06aac0.entry.js.map +0 -1
  473. package/dist/db-ux/p-d10ee6dc.entry.js.map +0 -1
  474. package/dist/db-ux/p-d4d01646.entry.js +0 -2
  475. package/dist/db-ux/p-d4d01646.entry.js.map +0 -1
  476. package/dist/db-ux/p-e393938c.entry.js +0 -2
  477. package/dist/db-ux/p-e393938c.entry.js.map +0 -1
  478. package/dist/db-ux/p-ea7da771.entry.js +0 -2
  479. package/dist/db-ux/p-ea7da771.entry.js.map +0 -1
  480. package/dist/db-ux/p-fw8E73KY.js +0 -2
  481. package/dist/db-ux/p-fw8E73KY.js.map +0 -1
  482. package/dist/esm/index-D-D8lQAG.js.map +0 -1
  483. package/dist/esm/index-fw8E73KY.js.map +0 -1
@@ -13,12 +13,12 @@ export class DBTabs {
13
13
  this.showScrollRight = false;
14
14
  this.scrollContainer = null;
15
15
  }
16
- convertTabs(tabs) {
16
+ convertTabs() {
17
17
  try {
18
- if (typeof tabs === "string") {
19
- return JSON.parse(tabs);
18
+ if (typeof this.tabs === "string") {
19
+ return JSON.parse(this.tabs);
20
20
  }
21
- return tabs;
21
+ return this.tabs;
22
22
  }
23
23
  catch (error) {
24
24
  console.error(error);
@@ -33,7 +33,7 @@ export class DBTabs {
33
33
  }
34
34
  scroll(left) {
35
35
  var _a;
36
- let step = this.arrowScrollDistance || 100;
36
+ let step = Number(this.arrowScrollDistance) || 100;
37
37
  if (left) {
38
38
  step *= -1;
39
39
  }
@@ -80,7 +80,7 @@ export class DBTabs {
80
80
  // Auto select
81
81
  const autoSelect = !this.initialSelectedMode || this.initialSelectedMode === "auto";
82
82
  const shouldAutoSelect = (this.initialSelectedIndex == null && index === 0) ||
83
- this.initialSelectedIndex === index;
83
+ Number(this.initialSelectedIndex) === index;
84
84
  if (autoSelect && shouldAutoSelect) {
85
85
  input.click();
86
86
  }
@@ -98,18 +98,19 @@ export class DBTabs {
98
98
  }
99
99
  }
100
100
  handleChange(event) {
101
- var _a;
102
- if (this.onIndexChange && event.target) {
103
- const list = event.target.closest("ul");
104
- const listItem =
105
- // db-tab-item for angular and stencil wrapping elements
106
- (_a = event.target.closest("db-tab-item")) !== null && _a !== void 0 ? _a : event.target.closest("li");
107
- if (list !== null && listItem !== null) {
108
- this.onIndexChange.emit(Array.from(list.childNodes).indexOf(listItem));
101
+ var _a, _b;
102
+ const list = (_a = event.target) === null || _a === void 0 ? void 0 : _a.closest("ul");
103
+ const listItem =
104
+ // db-tab-item for angular and stencil wrapping elements
105
+ (_b = event.target.closest("db-tab-item")) !== null && _b !== void 0 ? _b : event.target.closest("li");
106
+ if (list !== null && listItem !== null) {
107
+ const indices = Array.from(list.childNodes).indexOf(listItem);
108
+ if (this.indexChange) {
109
+ this.indexChange.emit(indices);
109
110
  }
110
111
  }
111
- if (this.onTabSelect) {
112
- this.onTabSelect.emit(event);
112
+ if (this.tabSelect) {
113
+ this.tabSelect.emit(event);
113
114
  }
114
115
  }
115
116
  /**
@@ -178,16 +179,17 @@ export class DBTabs {
178
179
  }
179
180
  render() {
180
181
  var _a, _b, _c, _d;
181
- return (h("div", { key: '4c4a49b884e5bbf15554ee06e970377e64a82b4f', class: cls("db-tabs", this.className), ref: (el) => {
182
+ return (h("div", { key: '1d7ff48f630d7edfd6b0d1a27506306d7272a5bd', class: cls("db-tabs", this.className), ref: (el) => {
182
183
  this._ref = el;
183
- }, id: this._id, "data-orientation": this.orientation, "data-scroll-behavior": this.behavior, "data-alignment": (_a = this.alignment) !== null && _a !== void 0 ? _a : "start", "data-width": (_b = this.width) !== null && _b !== void 0 ? _b : "auto", onChange: (event) => this.handleChange(event) }, this.showScrollLeft ? (h("db-button", { class: "tabs-scroll-left", variant: "ghost", icon: "chevron_left", type: "button", noText: true, onClick: () => this.scroll(true) }, "Scroll left")) : null, this.tabs ? (h(Fragment, null, h("db-tab-list", null, (_c = this.convertTabs(this.tabs)) === null || _c === void 0 ? void 0 : _c.map((tab, index) => (h("db-tab-item", { key: this.name + "tab-item" + index, active: tab.active, label: tab.label, iconAfter: tab.iconAfter, icon: tab.icon, noText: tab.noText })))), (_d = this.convertTabs(this.tabs)) === null || _d === void 0 ? void 0 :
184
- _d.map((tab, index) => (h("db-tab-panel", { key: this.name + "tab-panel" + index, content: tab.content }, tab.children))))) : null, this.showScrollRight ? (h("db-button", { class: "tabs-scroll-right", variant: "ghost", icon: "chevron_right", type: "button", noText: true, onClick: () => this.scroll() }, "Scroll right")) : null, h("slot", { key: 'b4ae8a21fec461d4c83c9ae339fb3a4bd881c09d' })));
184
+ }, id: this._id, "data-orientation": this.orientation, "data-scroll-behavior": this.behavior, "data-alignment": (_a = this.alignment) !== null && _a !== void 0 ? _a : "start", "data-width": (_b = this.width) !== null && _b !== void 0 ? _b : "auto", onInput: (event) => this.handleChange(event) }, this.showScrollLeft ? (h("db-button", { class: "tabs-scroll-left", variant: "ghost", icon: "chevron_left", type: "button", noText: true, onClick: () => this.scroll(true) }, "Scroll left")) : null, this.tabs ? (h(Fragment, null, h("db-tab-list", null, (_c = this.convertTabs()) === null || _c === void 0 ? void 0 : _c.map((tab, index) => (h("db-tab-item", { key: this.name + "tab-item" + index, active: tab.active, label: tab.label, iconAfter: tab.iconAfter, icon: tab.icon, noText: tab.noText })))), (_d = this.convertTabs()) === null || _d === void 0 ? void 0 :
185
+ _d.map((tab, index) => (h("db-tab-panel", { key: this.name + "tab-panel" + index, content: tab.content }, tab.children))))) : null, this.showScrollRight ? (h("db-button", { class: "tabs-scroll-right", variant: "ghost", icon: "chevron_right", type: "button", noText: true, onClick: () => this.scroll() }, "Scroll right")) : null, h("slot", { key: '85289730878025ddc57daa494a3f15058a8f1a20' })));
185
186
  }
186
187
  static get is() { return "db-tabs"; }
187
188
  static get properties() {
188
189
  return {
189
190
  "id": {
190
191
  "type": "string",
192
+ "attribute": "id",
191
193
  "mutable": false,
192
194
  "complexType": {
193
195
  "original": "DBTabsProps[\"id\"]",
@@ -208,11 +210,11 @@ export class DBTabs {
208
210
  },
209
211
  "getter": false,
210
212
  "setter": false,
211
- "attribute": "id",
212
213
  "reflect": false
213
214
  },
214
215
  "name": {
215
216
  "type": "string",
217
+ "attribute": "name",
216
218
  "mutable": false,
217
219
  "complexType": {
218
220
  "original": "DBTabsProps[\"name\"]",
@@ -233,15 +235,40 @@ export class DBTabs {
233
235
  },
234
236
  "getter": false,
235
237
  "setter": false,
236
- "attribute": "name",
238
+ "reflect": false
239
+ },
240
+ "tabs": {
241
+ "type": "string",
242
+ "attribute": "tabs",
243
+ "mutable": false,
244
+ "complexType": {
245
+ "original": "DBTabsProps[\"tabs\"]",
246
+ "resolved": "DBSimpleTabProps[] | string",
247
+ "references": {
248
+ "DBTabsProps": {
249
+ "location": "import",
250
+ "path": "./model",
251
+ "id": "src/components/tabs/model.ts::DBTabsProps"
252
+ }
253
+ }
254
+ },
255
+ "required": false,
256
+ "optional": false,
257
+ "docs": {
258
+ "tags": [],
259
+ "text": ""
260
+ },
261
+ "getter": false,
262
+ "setter": false,
237
263
  "reflect": false
238
264
  },
239
265
  "arrowScrollDistance": {
240
- "type": "number",
266
+ "type": "any",
267
+ "attribute": "arrow-scroll-distance",
241
268
  "mutable": false,
242
269
  "complexType": {
243
270
  "original": "DBTabsProps[\"arrowScrollDistance\"]",
244
- "resolved": "number",
271
+ "resolved": "number | string",
245
272
  "references": {
246
273
  "DBTabsProps": {
247
274
  "location": "import",
@@ -258,11 +285,11 @@ export class DBTabs {
258
285
  },
259
286
  "getter": false,
260
287
  "setter": false,
261
- "attribute": "arrow-scroll-distance",
262
288
  "reflect": false
263
289
  },
264
290
  "orientation": {
265
291
  "type": "string",
292
+ "attribute": "orientation",
266
293
  "mutable": false,
267
294
  "complexType": {
268
295
  "original": "DBTabsProps[\"orientation\"]",
@@ -283,11 +310,11 @@ export class DBTabs {
283
310
  },
284
311
  "getter": false,
285
312
  "setter": false,
286
- "attribute": "orientation",
287
313
  "reflect": false
288
314
  },
289
315
  "behavior": {
290
316
  "type": "string",
317
+ "attribute": "behavior",
291
318
  "mutable": false,
292
319
  "complexType": {
293
320
  "original": "DBTabsProps[\"behavior\"]",
@@ -308,11 +335,11 @@ export class DBTabs {
308
335
  },
309
336
  "getter": false,
310
337
  "setter": false,
311
- "attribute": "behavior",
312
338
  "reflect": false
313
339
  },
314
340
  "initialSelectedMode": {
315
341
  "type": "string",
342
+ "attribute": "initial-selected-mode",
316
343
  "mutable": false,
317
344
  "complexType": {
318
345
  "original": "DBTabsProps[\"initialSelectedMode\"]",
@@ -333,15 +360,15 @@ export class DBTabs {
333
360
  },
334
361
  "getter": false,
335
362
  "setter": false,
336
- "attribute": "initial-selected-mode",
337
363
  "reflect": false
338
364
  },
339
365
  "initialSelectedIndex": {
340
- "type": "number",
366
+ "type": "any",
367
+ "attribute": "initial-selected-index",
341
368
  "mutable": false,
342
369
  "complexType": {
343
370
  "original": "DBTabsProps[\"initialSelectedIndex\"]",
344
- "resolved": "number",
371
+ "resolved": "number | string",
345
372
  "references": {
346
373
  "DBTabsProps": {
347
374
  "location": "import",
@@ -358,11 +385,11 @@ export class DBTabs {
358
385
  },
359
386
  "getter": false,
360
387
  "setter": false,
361
- "attribute": "initial-selected-index",
362
388
  "reflect": false
363
389
  },
364
390
  "className": {
365
391
  "type": "string",
392
+ "attribute": "classname",
366
393
  "mutable": false,
367
394
  "complexType": {
368
395
  "original": "DBTabsProps[\"className\"]",
@@ -383,11 +410,11 @@ export class DBTabs {
383
410
  },
384
411
  "getter": false,
385
412
  "setter": false,
386
- "attribute": "classname",
387
413
  "reflect": false
388
414
  },
389
415
  "alignment": {
390
416
  "type": "string",
417
+ "attribute": "alignment",
391
418
  "mutable": false,
392
419
  "complexType": {
393
420
  "original": "DBTabsProps[\"alignment\"]",
@@ -408,11 +435,11 @@ export class DBTabs {
408
435
  },
409
436
  "getter": false,
410
437
  "setter": false,
411
- "attribute": "alignment",
412
438
  "reflect": false
413
439
  },
414
440
  "width": {
415
441
  "type": "string",
442
+ "attribute": "width",
416
443
  "mutable": false,
417
444
  "complexType": {
418
445
  "original": "DBTabsProps[\"width\"]",
@@ -433,32 +460,6 @@ export class DBTabs {
433
460
  },
434
461
  "getter": false,
435
462
  "setter": false,
436
- "attribute": "width",
437
- "reflect": false
438
- },
439
- "tabs": {
440
- "type": "string",
441
- "mutable": false,
442
- "complexType": {
443
- "original": "DBTabsProps[\"tabs\"]",
444
- "resolved": "DBSimpleTabProps[] | string",
445
- "references": {
446
- "DBTabsProps": {
447
- "location": "import",
448
- "path": "./model",
449
- "id": "src/components/tabs/model.ts::DBTabsProps"
450
- }
451
- }
452
- },
453
- "required": false,
454
- "optional": false,
455
- "docs": {
456
- "tags": [],
457
- "text": ""
458
- },
459
- "getter": false,
460
- "setter": false,
461
- "attribute": "tabs",
462
463
  "reflect": false
463
464
  }
464
465
  };
@@ -475,8 +476,8 @@ export class DBTabs {
475
476
  }
476
477
  static get events() {
477
478
  return [{
478
- "method": "onIndexChange",
479
- "name": "onIndexChange",
479
+ "method": "indexChange",
480
+ "name": "indexChange",
480
481
  "bubbles": true,
481
482
  "cancelable": true,
482
483
  "composed": true,
@@ -490,8 +491,8 @@ export class DBTabs {
490
491
  "references": {}
491
492
  }
492
493
  }, {
493
- "method": "onTabSelect",
494
- "name": "onTabSelect",
494
+ "method": "tabSelect",
495
+ "name": "tabSelect",
495
496
  "bubbles": true,
496
497
  "cancelable": true,
497
498
  "composed": true,
@@ -1 +1 @@
1
- {"version":3,"file":"tabs.js","sourceRoot":"","sources":["../../../src/components/tabs/tabs.tsx"],"names":[],"mappings":"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","sourcesContent":["import { DBSimpleTabProps, DBTabsProps, DBTabsState } from \"./model\";\nimport { cls, uuid } from \"../../utils\";\nimport { DBButton } from \"../button/button\";\nimport { DBTabList } from \"../tab-list/tab-list\";\nimport { DBTabItem } from \"../tab-item/tab-item\";\nimport { DBTabPanel } from \"../tab-panel/tab-panel\";\n\nimport {\n Component,\n h,\n Fragment,\n Watch,\n Event,\n Prop,\n State,\n} from \"@stencil/core\";\n\n\n/**\n * @slot children - This is a default/unnamed slot\n\n */\n @Component({\n tag: \"db-tabs\",\n})\nexport class DBTabs {\n private _ref!: HTMLDivElement | null;\n @Prop() id: DBTabsProps[\"id\"];\n @Prop() name: DBTabsProps[\"name\"];\n @Prop() arrowScrollDistance: DBTabsProps[\"arrowScrollDistance\"];\n @Prop() orientation: DBTabsProps[\"orientation\"];\n @Prop() behavior: DBTabsProps[\"behavior\"];\n @Prop() initialSelectedMode: DBTabsProps[\"initialSelectedMode\"];\n @Prop() initialSelectedIndex: DBTabsProps[\"initialSelectedIndex\"];\n @Event() onIndexChange: any;\n @Event() onTabSelect: any;\n @Prop({attribute: \"classname\"}) className: DBTabsProps[\"className\"];\n @Prop() alignment: DBTabsProps[\"alignment\"];\n @Prop() width: DBTabsProps[\"width\"];\n @Prop() tabs: DBTabsProps[\"tabs\"];\n\n @State() _id = \"tabs-\" + uuid();\n @State() _name = \"\";\n @State() initialized = false;\n @State() showScrollLeft = false;\n @State() showScrollRight = false;\n @State() scrollContainer = null;\n\n convertTabs(tabs: unknown[] | string | undefined) {\n try {\n if (typeof tabs === \"string\") {\n return JSON.parse(tabs);\n }\n return tabs as DBSimpleTabProps[];\n } catch (error) {\n console.error(error);\n }\n return [];\n }\n evaluateScrollButtons(tList: Element) {\n const needsScroll = tList.scrollWidth > tList.clientWidth;\n this.showScrollLeft = needsScroll && tList.scrollLeft > 1;\n this.showScrollRight =\n needsScroll && tList.scrollLeft < tList.scrollWidth - tList.clientWidth;\n }\n scroll(left?: boolean) {\n let step = this.arrowScrollDistance || 100;\n if (left) {\n step *= -1;\n }\n this.scrollContainer?.scrollBy({\n top: 0,\n left: step,\n behavior: \"smooth\",\n });\n }\n initTabList() {\n if (this._ref) {\n const tabList = this._ref.querySelector(\".db-tab-list\");\n if (tabList) {\n const container: HTMLElement | null =\n tabList.querySelector('[role=\"tablist\"]');\n if (container) {\n container.setAttribute(\n \"aria-orientation\",\n this.orientation || \"horizontal\"\n );\n if (this.behavior === \"arrows\") {\n this.scrollContainer = container;\n this.evaluateScrollButtons(container);\n container.addEventListener(\"scroll\", () => {\n this.evaluateScrollButtons(container);\n });\n }\n }\n }\n }\n }\n initTabs(init?: boolean) {\n if (this._ref) {\n const tabItems = Array.from<Element>(\n this._ref.getElementsByClassName(\"db-tab-item\")\n );\n for (const tabItem of tabItems) {\n const index: number = tabItems.indexOf(tabItem);\n const label = tabItem.querySelector(\"label\");\n const input = tabItem.querySelector(\"input\");\n if (input && label) {\n if (!input.id) {\n const tabId = `${this._name}-tab-${index}`;\n label.setAttribute(\"for\", tabId);\n input.setAttribute(\n \"aria-controls\",\n `${this._name}-tab-panel-${index}`\n );\n input.id = tabId;\n input.setAttribute(\"name\", this._name);\n }\n if (init) {\n // Auto select\n const autoSelect =\n !this.initialSelectedMode || this.initialSelectedMode === \"auto\";\n const shouldAutoSelect =\n (this.initialSelectedIndex == null && index === 0) ||\n this.initialSelectedIndex === index;\n if (autoSelect && shouldAutoSelect) {\n input.click();\n }\n }\n }\n }\n const tabPanels = Array.from<Element>(\n this._ref.querySelectorAll(\n \":is(:scope > .db-tab-panel, :scope > db-tab-panel > .db-tab-panel)\"\n )\n );\n for (const panel of tabPanels) {\n if (panel.id) continue;\n const index: number = tabPanels.indexOf(panel);\n panel.id = `${this._name}-tab-panel-${index}`;\n panel.setAttribute(\"aria-labelledby\", `${this._name}-tab-${index}`);\n }\n }\n }\n handleChange(event: any) {\n if (this.onIndexChange && event.target) {\n const list = event.target.closest(\"ul\");\n const listItem =\n // db-tab-item for angular and stencil wrapping elements\n event.target.closest(\"db-tab-item\") ?? event.target.closest(\"li\");\n if (list !== null && listItem !== null) {\n this.onIndexChange.emit(Array.from(list.childNodes).indexOf(listItem));\n }\n }\n if (this.onTabSelect) {\n this.onTabSelect.emit(event);\n }\n }\n\n /**\n * Passes `aria-*`, `data-*` & `class` attributes to correct child. Used in angular and stencil.\n * @param element the ref for the component\n * @param customElementSelector the custom element like `my-component`\n */\n private enableAttributePassing(\n element: HTMLElement | null,\n customElementSelector: string\n ) {\n const parent = element?.closest(customElementSelector);\n if (element && parent) {\n const attributes = parent.attributes;\n for (let i = 0; i < attributes.length; i++) {\n const attr = attributes.item(i);\n if (\n attr &&\n (attr.name.startsWith(\"data-\") || attr.name.startsWith(\"aria-\"))\n ) {\n element.setAttribute(attr.name, attr.value);\n parent.removeAttribute(attr.name);\n }\n if (attr && attr.name === \"class\") {\n const isWebComponent = attr.value.includes(\"hydrated\");\n const value = attr.value.replace(\"hydrated\", \"\").trim();\n const currentClass = element.getAttribute(\"class\");\n element.setAttribute(\n attr.name,\n `${currentClass ? `${currentClass} ` : \"\"}${value}`\n );\n if (isWebComponent) {\n // Stencil is using this class for lazy loading component\n parent.setAttribute(\"class\", \"hydrated\");\n } else {\n parent.removeAttribute(attr.name);\n }\n }\n }\n }\n }\n\n watch0Fn() {\n if (this._ref && this.initialized) {\n this.initTabList();\n this.initTabs(true);\n const tabList = this._ref.querySelector(\".db-tab-list\");\n if (tabList) {\n const observer = new MutationObserver((mutations) => {\n mutations.forEach((mutation) => {\n if (mutation.removedNodes.length || mutation.addedNodes.length) {\n this.initTabList();\n this.initTabs();\n }\n });\n });\n observer.observe(tabList, {\n childList: true,\n subtree: true,\n });\n }\n this.initialized = false;\n }\n }\n\n @Watch(\"_ref\")\n @Watch(\"initialized\")\n watch0() {\n this.watch0Fn();\n }\n\n componentDidLoad() {\n this.enableAttributePassing(this._ref, \"db-tabs\");\n this._id = this.id || this._id;\n this._name = `tabs-${this.name || uuid()}`;\n this.initialized = true;\n this.watch0Fn();\n }\n\n render() {\n return (\n <div\n class={cls(\"db-tabs\", this.className)}\n ref={(el: any) => {\n this._ref = el;\n }}\n id={this._id}\n data-orientation={this.orientation}\n data-scroll-behavior={this.behavior}\n data-alignment={this.alignment ?? \"start\"}\n data-width={this.width ?? \"auto\"}\n onChange={(event) => this.handleChange(event)}\n >\n {this.showScrollLeft ? (\n <db-button\n class=\"tabs-scroll-left\"\n variant=\"ghost\"\n icon=\"chevron_left\"\n type=\"button\"\n noText={true}\n onClick={() => this.scroll(true)}\n >\n Scroll left\n </db-button>\n ) : null}\n {this.tabs ? (\n <Fragment>\n <db-tab-list>\n {this.convertTabs(this.tabs)?.map((tab, index) => (\n <db-tab-item\n key={this.name + \"tab-item\" + index}\n active={tab.active}\n label={tab.label}\n iconAfter={tab.iconAfter}\n icon={tab.icon}\n noText={tab.noText}\n ></db-tab-item>\n ))}\n </db-tab-list>\n {this.convertTabs(this.tabs)?.map((tab, index) => (\n <db-tab-panel\n key={this.name + \"tab-panel\" + index}\n content={tab.content}\n >\n {tab.children}\n </db-tab-panel>\n ))}\n </Fragment>\n ) : null}\n {this.showScrollRight ? (\n <db-button\n class=\"tabs-scroll-right\"\n variant=\"ghost\"\n icon=\"chevron_right\"\n type=\"button\"\n noText={true}\n onClick={() => this.scroll()}\n >\n Scroll right\n </db-button>\n ) : null}\n <slot></slot>\n </div>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"tabs.js","sourceRoot":"","sources":["../../../src/components/tabs/tabs.tsx"],"names":[],"mappings":"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","sourcesContent":["import { DBSimpleTabProps, DBTabsProps, DBTabsState } from \"./model\";\nimport { cls, uuid } from \"../../utils\";\nimport { DBButton } from \"../button/button\";\nimport { DBTabList } from \"../tab-list/tab-list\";\nimport { DBTabItem } from \"../tab-item/tab-item\";\nimport { DBTabPanel } from \"../tab-panel/tab-panel\";\n\nimport {\n Component,\n h,\n Fragment,\n Watch,\n Event,\n EventEmitter,\n Prop,\n State,\n} from \"@stencil/core\";\n\n\n/**\n * @slot children - This is a default/unnamed slot\n\n */\n @Component({\n tag: \"db-tabs\",\n})\nexport class DBTabs {\n private _ref!: HTMLDivElement | any;\n @Prop() id: DBTabsProps[\"id\"];\n @Prop() name: DBTabsProps[\"name\"];\n @Prop() tabs: DBTabsProps[\"tabs\"];\n @Prop() arrowScrollDistance: DBTabsProps[\"arrowScrollDistance\"];\n @Prop() orientation: DBTabsProps[\"orientation\"];\n @Prop() behavior: DBTabsProps[\"behavior\"];\n @Prop() initialSelectedMode: DBTabsProps[\"initialSelectedMode\"];\n @Prop() initialSelectedIndex: DBTabsProps[\"initialSelectedIndex\"];\n @Event() indexChange: EventEmitter<\n Parameters<Required<DBTabsProps>[\"onIndexChange\"]>[number]\n > | void;\n @Event() tabSelect: EventEmitter<\n Parameters<Required<DBTabsProps>[\"onTabSelect\"]>[number]\n > | void;\n @Prop({attribute: \"classname\"}) className: DBTabsProps[\"className\"];\n @Prop() alignment: DBTabsProps[\"alignment\"];\n @Prop() width: DBTabsProps[\"width\"];\n @State() _id = \"tabs-\" + uuid();\n @State() _name = \"\";\n @State() initialized = false;\n @State() showScrollLeft = false;\n @State() showScrollRight = false;\n @State() scrollContainer = null;\n\n convertTabs() {\n try {\n if (typeof this.tabs === \"string\") {\n return JSON.parse(this.tabs as string);\n }\n return this.tabs as DBSimpleTabProps[];\n } catch (error) {\n console.error(error);\n }\n return [];\n }\n evaluateScrollButtons(tList: Element) {\n const needsScroll = tList.scrollWidth > tList.clientWidth;\n this.showScrollLeft = needsScroll && tList.scrollLeft > 1;\n this.showScrollRight =\n needsScroll && tList.scrollLeft < tList.scrollWidth - tList.clientWidth;\n }\n scroll(left?: boolean) {\n let step = Number(this.arrowScrollDistance) || 100;\n if (left) {\n step *= -1;\n }\n this.scrollContainer?.scrollBy({\n top: 0,\n left: step,\n behavior: \"smooth\",\n });\n }\n initTabList() {\n if (this._ref) {\n const tabList = this._ref.querySelector(\".db-tab-list\");\n if (tabList) {\n const container: HTMLElement | null =\n tabList.querySelector('[role=\"tablist\"]');\n if (container) {\n container.setAttribute(\n \"aria-orientation\",\n this.orientation || \"horizontal\"\n );\n if (this.behavior === \"arrows\") {\n this.scrollContainer = container;\n this.evaluateScrollButtons(container);\n container.addEventListener(\"scroll\", () => {\n this.evaluateScrollButtons(container);\n });\n }\n }\n }\n }\n }\n initTabs(init?: boolean) {\n if (this._ref) {\n const tabItems = Array.from<Element>(\n this._ref.getElementsByClassName(\"db-tab-item\")\n );\n for (const tabItem of tabItems) {\n const index: number = tabItems.indexOf(tabItem);\n const label = tabItem.querySelector(\"label\");\n const input = tabItem.querySelector(\"input\");\n if (input && label) {\n if (!input.id) {\n const tabId = `${this._name}-tab-${index}`;\n label.setAttribute(\"for\", tabId);\n input.setAttribute(\n \"aria-controls\",\n `${this._name}-tab-panel-${index}`\n );\n input.id = tabId;\n input.setAttribute(\"name\", this._name);\n }\n if (init) {\n // Auto select\n const autoSelect =\n !this.initialSelectedMode || this.initialSelectedMode === \"auto\";\n const shouldAutoSelect =\n (this.initialSelectedIndex == null && index === 0) ||\n Number(this.initialSelectedIndex) === index;\n if (autoSelect && shouldAutoSelect) {\n input.click();\n }\n }\n }\n }\n const tabPanels = Array.from<Element>(\n this._ref.querySelectorAll(\n \":is(:scope > .db-tab-panel, :scope > db-tab-panel > .db-tab-panel)\"\n )\n );\n for (const panel of tabPanels) {\n if (panel.id) continue;\n const index: number = tabPanels.indexOf(panel);\n panel.id = `${this._name}-tab-panel-${index}`;\n panel.setAttribute(\"aria-labelledby\", `${this._name}-tab-${index}`);\n }\n }\n }\n handleChange(event: any) {\n const list = event.target?.closest(\"ul\");\n const listItem =\n // db-tab-item for angular and stencil wrapping elements\n event.target.closest(\"db-tab-item\") ?? event.target.closest(\"li\");\n if (list !== null && listItem !== null) {\n const indices = Array.from(list.childNodes).indexOf(listItem);\n if (this.indexChange) {\n this.indexChange.emit(indices);\n }\n }\n if (this.tabSelect) {\n this.tabSelect.emit(event);\n }\n }\n\n /**\n * Passes `aria-*`, `data-*` & `class` attributes to correct child. Used in angular and stencil.\n * @param element the ref for the component\n * @param customElementSelector the custom element like `my-component`\n */\n private enableAttributePassing(\n element: HTMLElement | null,\n customElementSelector: string\n ) {\n const parent = element?.closest(customElementSelector);\n if (element && parent) {\n const attributes = parent.attributes;\n for (let i = 0; i < attributes.length; i++) {\n const attr = attributes.item(i);\n if (\n attr &&\n (attr.name.startsWith(\"data-\") || attr.name.startsWith(\"aria-\"))\n ) {\n element.setAttribute(attr.name, attr.value);\n parent.removeAttribute(attr.name);\n }\n if (attr && attr.name === \"class\") {\n const isWebComponent = attr.value.includes(\"hydrated\");\n const value = attr.value.replace(\"hydrated\", \"\").trim();\n const currentClass = element.getAttribute(\"class\");\n element.setAttribute(\n attr.name,\n `${currentClass ? `${currentClass} ` : \"\"}${value}`\n );\n if (isWebComponent) {\n // Stencil is using this class for lazy loading component\n parent.setAttribute(\"class\", \"hydrated\");\n } else {\n parent.removeAttribute(attr.name);\n }\n }\n }\n }\n }\n\n watch0Fn() {\n if (this._ref && this.initialized) {\n this.initTabList();\n this.initTabs(true);\n const tabList = this._ref.querySelector(\".db-tab-list\");\n if (tabList) {\n const observer = new MutationObserver((mutations) => {\n mutations.forEach((mutation) => {\n if (mutation.removedNodes.length || mutation.addedNodes.length) {\n this.initTabList();\n this.initTabs();\n }\n });\n });\n observer.observe(tabList, {\n childList: true,\n subtree: true,\n });\n }\n this.initialized = false;\n }\n }\n\n @Watch(\"_ref\")\n @Watch(\"initialized\")\n watch0() {\n this.watch0Fn();\n }\n\n componentDidLoad() {\n this.enableAttributePassing(this._ref, \"db-tabs\");\n this._id = this.id || this._id;\n this._name = `tabs-${this.name || uuid()}`;\n this.initialized = true;\n this.watch0Fn();\n }\n\n render() {\n return (\n <div\n class={cls(\"db-tabs\", this.className)}\n ref={(el: any) => {\n this._ref = el;\n }}\n id={this._id}\n data-orientation={this.orientation}\n data-scroll-behavior={this.behavior}\n data-alignment={this.alignment ?? \"start\"}\n data-width={this.width ?? \"auto\"}\n onInput={(event) => this.handleChange(event)}\n >\n {this.showScrollLeft ? (\n <db-button\n class=\"tabs-scroll-left\"\n variant=\"ghost\"\n icon=\"chevron_left\"\n type=\"button\"\n noText={true}\n onClick={() => this.scroll(true)}\n >\n Scroll left\n </db-button>\n ) : null}\n {this.tabs ? (\n <Fragment>\n <db-tab-list>\n {this.convertTabs()?.map((tab, index) => (\n <db-tab-item\n key={this.name + \"tab-item\" + index}\n active={tab.active}\n label={tab.label}\n iconAfter={tab.iconAfter}\n icon={tab.icon}\n noText={tab.noText}\n ></db-tab-item>\n ))}\n </db-tab-list>\n {this.convertTabs()?.map((tab, index) => (\n <db-tab-panel\n key={this.name + \"tab-panel\" + index}\n content={tab.content}\n >\n {tab.children}\n </db-tab-panel>\n ))}\n </Fragment>\n ) : null}\n {this.showScrollRight ? (\n <db-button\n class=\"tabs-scroll-right\"\n variant=\"ghost\"\n icon=\"chevron_right\"\n type=\"button\"\n noText={true}\n onClick={() => this.scroll()}\n >\n Scroll right\n </db-button>\n ) : null}\n <slot></slot>\n </div>\n );\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"model.js","sourceRoot":"","sources":["../../../src/components/tag/model.ts"],"names":[],"mappings":"AACA,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,QAAQ,EAAE,WAAW,CAAU,CAAC","sourcesContent":["import { ClickEvent, ContentSlotProps, GlobalProps, GlobalState, IconProps, InitializedState, OverflowProps, SemanticProps, ShowIconProps, TagEmphasisProps } from '../../shared/model';\nexport const TagBehaviorList = ['static', 'removable'] as const;\nexport type TagBehaviorType = (typeof TagBehaviorList)[number];\nexport type DBTagDefaultProps = {\n /**\n *\tDefines the behavior of the component:\n *\t- static: default behavior without remove button\n * - removable: add a remove button at the end of the tag\n */\n behavior?: TagBehaviorType | string;\n\n /**\n * @deprecated Disable tag\n */\n disabled?: boolean;\n /**\n * Define the text next to the icon specified via the icon Property to get hidden.\n */\n noText?: boolean;\n /**\n * If \"removeButton\" attribute is set this function will be called when user clicks cancel button inside the tag.\n */\n onRemove?: (event?: any) => void;\n /**\n * The removeButton attribute shows the cancel button.\n */\n removeButton?: string;\n /**\n * Enable/Disable icon for checkbox/radio inside tag.\n */\n showCheckState?: boolean;\n /**\n * Alternative for children to set content as property.\n */\n text?: string;\n\n /**\n * If \"interactive\" is set to true, you can pass a value to the underlying checkbox or radio input.\n */\n value?: string;\n};\nexport type DBTagProps = DBTagDefaultProps & GlobalProps & IconProps & SemanticProps & OverflowProps & TagEmphasisProps & ShowIconProps & ContentSlotProps;\nexport type DBTagDefaultState = {\n getRemoveButtonText: () => string;\n handleRemove: (event?: ClickEvent<HTMLButtonElement>) => void;\n};\nexport type DBTagState = DBTagDefaultState & GlobalState & InitializedState"]}
1
+ {"version":3,"file":"model.js","sourceRoot":"","sources":["../../../src/components/tag/model.ts"],"names":[],"mappings":"AACA,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,QAAQ,EAAE,WAAW,CAAU,CAAC","sourcesContent":["import { ClickEvent, ContentSlotProps, GlobalProps, GlobalState, IconProps, InitializedState, OverflowProps, SemanticProps, ShowIconProps, EmphasisProps } from '../../shared/model';\nexport const TagBehaviorList = ['static', 'removable'] as const;\nexport type TagBehaviorType = (typeof TagBehaviorList)[number];\nexport type DBTagDefaultProps = {\n /**\n *\tDefines the behavior of the component:\n *\t- static: default behavior without remove button\n * - removable: add a remove button at the end of the tag\n */\n behavior?: TagBehaviorType | string;\n\n /**\n * @deprecated Disable tag\n */\n disabled?: boolean | string;\n /**\n * Define the text next to the icon specified via the icon Property to get hidden.\n */\n noText?: boolean | string;\n /**\n * If \"removeButton\" attribute is set this function will be called when user clicks cancel button inside the tag.\n */\n onRemove?: (event?: any) => void;\n /**\n * If \"removeButton\" attribute is set this function will be called when user clicks cancel button inside the tag.\n */\n remove?: (event?: any) => void;\n /**\n * The removeButton attribute shows the cancel button.\n */\n removeButton?: string;\n /**\n * Enable/Disable icon for checkbox/radio inside tag.\n */\n showCheckState?: boolean | string;\n /**\n * Alternative for children to set content as property.\n */\n text?: string;\n\n /**\n * If \"interactive\" is set to true, you can pass a value to the underlying checkbox or radio input.\n */\n value?: string;\n};\nexport type DBTagProps = DBTagDefaultProps & GlobalProps & IconProps & SemanticProps & OverflowProps & EmphasisProps & ShowIconProps & ContentSlotProps;\nexport type DBTagDefaultState = {\n getRemoveButtonText: () => string;\n handleRemove: (event?: ClickEvent<HTMLButtonElement>) => void;\n};\nexport type DBTagState = DBTagDefaultState & GlobalState & InitializedState"]}
@@ -60,7 +60,7 @@ export class DBTag {
60
60
  const input = (_b = this._ref) === null || _b === void 0 ? void 0 : _b.querySelector("input");
61
61
  for (const element of [button, input]) {
62
62
  if (element) {
63
- element.disabled = this.disabled;
63
+ element.disabled = Boolean(this.disabled);
64
64
  }
65
65
  }
66
66
  }
@@ -74,19 +74,20 @@ export class DBTag {
74
74
  }
75
75
  render() {
76
76
  var _a;
77
- return (h("div", { key: '885adb703a4fa64c2d3efaba7c167d5eb4f624a9', class: cls("db-tag", this.className), ref: (el) => {
77
+ return (h("div", { key: 'b7df76f07edf732d557c7ba59feb8a709c2df81d', class: cls("db-tag", this.className), ref: (el) => {
78
78
  this._ref = el;
79
- }, id: this.id, "data-disabled": getBooleanAsString(this.disabled), "data-semantic": this.semantic, "data-emphasis": this.emphasis, "data-icon": this.icon, "data-show-check-state": getBooleanAsString((_a = this.showCheckState) !== null && _a !== void 0 ? _a : true), "data-hide-icon": getHideProp(this.showIcon), "data-no-text": getBooleanAsString(this.noText), "data-overflow": getBooleanAsString(this.overflow) }, h("slot", { key: 'af6aae86c3e2a9af3e11beff754012287566408c', name: "content" }), h("slot", { key: '71cf408fa539ea385b71de349cde551fa22b46ec' }), this.text ? this.text : null, this.behavior === "removable" ? (h("button", { class: "db-button db-tab-remove-button", "data-icon": "cross", "data-size": "small", "data-no-text": "true", "data-variant": "ghost", onClick: (event) => this.handleRemove(event), title: this.getRemoveButtonText() }, this.getRemoveButtonText())) : null));
79
+ }, id: this.id, "data-disabled": getBooleanAsString(this.disabled), "data-semantic": this.semantic, "data-emphasis": this.emphasis, "data-icon": this.icon, "data-show-check-state": getBooleanAsString((_a = this.showCheckState) !== null && _a !== void 0 ? _a : true), "data-hide-icon": getHideProp(this.showIcon), "data-no-text": getBooleanAsString(this.noText), "data-overflow": getBooleanAsString(this.overflow) }, h("slot", { key: '7b1e2561e265fe7eff59cde6116611438a53c7e6', name: "content" }), h("slot", { key: '80b7eaf341f308dcc4629290874da3e8ed8de2b2' }), this.text ? this.text : null, this.behavior === "removable" ? (h("button", { class: "db-button db-tab-remove-button", "data-icon": "cross", "data-size": "small", "data-no-text": "true", "data-variant": "ghost", onClick: (event) => this.handleRemove(event), title: this.getRemoveButtonText() }, this.getRemoveButtonText())) : null));
80
80
  }
81
81
  static get is() { return "db-tag"; }
82
82
  static get properties() {
83
83
  return {
84
84
  "disabled": {
85
- "type": "boolean",
85
+ "type": "any",
86
+ "attribute": "disabled",
86
87
  "mutable": false,
87
88
  "complexType": {
88
89
  "original": "DBTagProps[\"disabled\"]",
89
- "resolved": "boolean",
90
+ "resolved": "boolean | string",
90
91
  "references": {
91
92
  "DBTagProps": {
92
93
  "location": "import",
@@ -103,11 +104,11 @@ export class DBTag {
103
104
  },
104
105
  "getter": false,
105
106
  "setter": false,
106
- "attribute": "disabled",
107
107
  "reflect": false
108
108
  },
109
109
  "removeButton": {
110
110
  "type": "string",
111
+ "attribute": "remove-button",
111
112
  "mutable": false,
112
113
  "complexType": {
113
114
  "original": "DBTagProps[\"removeButton\"]",
@@ -128,11 +129,11 @@ export class DBTag {
128
129
  },
129
130
  "getter": false,
130
131
  "setter": false,
131
- "attribute": "remove-button",
132
132
  "reflect": false
133
133
  },
134
134
  "id": {
135
135
  "type": "string",
136
+ "attribute": "id",
136
137
  "mutable": false,
137
138
  "complexType": {
138
139
  "original": "DBTagProps[\"id\"]",
@@ -153,11 +154,11 @@ export class DBTag {
153
154
  },
154
155
  "getter": false,
155
156
  "setter": false,
156
- "attribute": "id",
157
157
  "reflect": false
158
158
  },
159
159
  "className": {
160
160
  "type": "string",
161
+ "attribute": "classname",
161
162
  "mutable": false,
162
163
  "complexType": {
163
164
  "original": "DBTagProps[\"className\"]",
@@ -178,11 +179,11 @@ export class DBTag {
178
179
  },
179
180
  "getter": false,
180
181
  "setter": false,
181
- "attribute": "classname",
182
182
  "reflect": false
183
183
  },
184
184
  "semantic": {
185
185
  "type": "string",
186
+ "attribute": "semantic",
186
187
  "mutable": false,
187
188
  "complexType": {
188
189
  "original": "DBTagProps[\"semantic\"]",
@@ -203,15 +204,15 @@ export class DBTag {
203
204
  },
204
205
  "getter": false,
205
206
  "setter": false,
206
- "attribute": "semantic",
207
207
  "reflect": false
208
208
  },
209
209
  "emphasis": {
210
210
  "type": "string",
211
+ "attribute": "emphasis",
211
212
  "mutable": false,
212
213
  "complexType": {
213
214
  "original": "DBTagProps[\"emphasis\"]",
214
- "resolved": "\"origin\" | \"strong\" | \"weak\"",
215
+ "resolved": "\"strong\" | \"weak\"",
215
216
  "references": {
216
217
  "DBTagProps": {
217
218
  "location": "import",
@@ -228,11 +229,11 @@ export class DBTag {
228
229
  },
229
230
  "getter": false,
230
231
  "setter": false,
231
- "attribute": "emphasis",
232
232
  "reflect": false
233
233
  },
234
234
  "icon": {
235
235
  "type": "string",
236
+ "attribute": "icon",
236
237
  "mutable": false,
237
238
  "complexType": {
238
239
  "original": "DBTagProps[\"icon\"]",
@@ -253,15 +254,15 @@ export class DBTag {
253
254
  },
254
255
  "getter": false,
255
256
  "setter": false,
256
- "attribute": "icon",
257
257
  "reflect": false
258
258
  },
259
259
  "showCheckState": {
260
- "type": "boolean",
260
+ "type": "any",
261
+ "attribute": "show-check-state",
261
262
  "mutable": false,
262
263
  "complexType": {
263
264
  "original": "DBTagProps[\"showCheckState\"]",
264
- "resolved": "boolean",
265
+ "resolved": "boolean | string",
265
266
  "references": {
266
267
  "DBTagProps": {
267
268
  "location": "import",
@@ -278,15 +279,15 @@ export class DBTag {
278
279
  },
279
280
  "getter": false,
280
281
  "setter": false,
281
- "attribute": "show-check-state",
282
282
  "reflect": false
283
283
  },
284
284
  "showIcon": {
285
- "type": "boolean",
285
+ "type": "any",
286
+ "attribute": "show-icon",
286
287
  "mutable": false,
287
288
  "complexType": {
288
289
  "original": "DBTagProps[\"showIcon\"]",
289
- "resolved": "boolean",
290
+ "resolved": "boolean | string",
290
291
  "references": {
291
292
  "DBTagProps": {
292
293
  "location": "import",
@@ -303,15 +304,15 @@ export class DBTag {
303
304
  },
304
305
  "getter": false,
305
306
  "setter": false,
306
- "attribute": "show-icon",
307
307
  "reflect": false
308
308
  },
309
309
  "noText": {
310
- "type": "boolean",
310
+ "type": "any",
311
+ "attribute": "no-text",
311
312
  "mutable": false,
312
313
  "complexType": {
313
314
  "original": "DBTagProps[\"noText\"]",
314
- "resolved": "boolean",
315
+ "resolved": "boolean | string",
315
316
  "references": {
316
317
  "DBTagProps": {
317
318
  "location": "import",
@@ -328,15 +329,15 @@ export class DBTag {
328
329
  },
329
330
  "getter": false,
330
331
  "setter": false,
331
- "attribute": "no-text",
332
332
  "reflect": false
333
333
  },
334
334
  "overflow": {
335
- "type": "boolean",
335
+ "type": "any",
336
+ "attribute": "overflow",
336
337
  "mutable": false,
337
338
  "complexType": {
338
339
  "original": "DBTagProps[\"overflow\"]",
339
- "resolved": "boolean",
340
+ "resolved": "boolean | string",
340
341
  "references": {
341
342
  "DBTagProps": {
342
343
  "location": "import",
@@ -353,11 +354,11 @@ export class DBTag {
353
354
  },
354
355
  "getter": false,
355
356
  "setter": false,
356
- "attribute": "overflow",
357
357
  "reflect": false
358
358
  },
359
359
  "text": {
360
360
  "type": "string",
361
+ "attribute": "text",
361
362
  "mutable": false,
362
363
  "complexType": {
363
364
  "original": "DBTagProps[\"text\"]",
@@ -378,11 +379,11 @@ export class DBTag {
378
379
  },
379
380
  "getter": false,
380
381
  "setter": false,
381
- "attribute": "text",
382
382
  "reflect": false
383
383
  },
384
384
  "behavior": {
385
385
  "type": "string",
386
+ "attribute": "behavior",
386
387
  "mutable": false,
387
388
  "complexType": {
388
389
  "original": "DBTagProps[\"behavior\"]",
@@ -403,7 +404,6 @@ export class DBTag {
403
404
  },
404
405
  "getter": false,
405
406
  "setter": false,
406
- "attribute": "behavior",
407
407
  "reflect": false
408
408
  }
409
409
  };