@db-ux/wc-core-components 2.4.4 → 3.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (353) hide show
  1. package/dist/cjs/db-accordion-item.cjs.entry.js +1 -1
  2. package/dist/cjs/db-accordion.cjs.entry.js +1 -1
  3. package/dist/cjs/db-badge.cjs.entry.js +1 -1
  4. package/dist/cjs/db-brand.cjs.entry.js +3 -3
  5. package/dist/cjs/db-brand.cjs.entry.js.map +1 -1
  6. package/dist/cjs/db-brand.entry.cjs.js.map +1 -1
  7. package/dist/cjs/db-button.cjs.entry.js +14 -3
  8. package/dist/cjs/db-button.cjs.entry.js.map +1 -1
  9. package/dist/cjs/db-button.entry.cjs.js.map +1 -1
  10. package/dist/cjs/db-card.cjs.entry.js +3 -3
  11. package/dist/cjs/db-card.cjs.entry.js.map +1 -1
  12. package/dist/cjs/db-card.entry.cjs.js.map +1 -1
  13. package/dist/cjs/db-checkbox.cjs.entry.js +6 -5
  14. package/dist/cjs/db-checkbox.cjs.entry.js.map +1 -1
  15. package/dist/cjs/db-checkbox.entry.cjs.js.map +1 -1
  16. package/dist/cjs/db-custom-select-dropdown.db-custom-select-list.db-custom-select-list-item.db-input.db-tag.entry.cjs.js.map +1 -1
  17. package/dist/cjs/db-custom-select-dropdown_5.cjs.entry.js +14 -35
  18. package/dist/cjs/db-custom-select-dropdown_5.cjs.entry.js.map +1 -1
  19. package/dist/cjs/db-custom-select-form-field.cjs.entry.js +1 -1
  20. package/dist/cjs/db-custom-select.cjs.entry.js +21 -14
  21. package/dist/cjs/db-custom-select.cjs.entry.js.map +1 -1
  22. package/dist/cjs/db-custom-select.entry.cjs.js.map +1 -1
  23. package/dist/cjs/db-divider.cjs.entry.js +1 -1
  24. package/dist/cjs/db-drawer.cjs.entry.js +1 -1
  25. package/dist/cjs/db-header.cjs.entry.js +14 -19
  26. package/dist/cjs/db-header.cjs.entry.js.map +1 -1
  27. package/dist/cjs/db-header.entry.cjs.js.map +1 -1
  28. package/dist/cjs/db-icon.cjs.entry.js +1 -1
  29. package/dist/cjs/db-infotext.cjs.entry.js +3 -3
  30. package/dist/cjs/db-infotext.cjs.entry.js.map +1 -1
  31. package/dist/cjs/db-infotext.entry.cjs.js.map +1 -1
  32. package/dist/cjs/db-link.cjs.entry.js +3 -3
  33. package/dist/cjs/db-link.cjs.entry.js.map +1 -1
  34. package/dist/cjs/db-link.entry.cjs.js.map +1 -1
  35. package/dist/cjs/db-navigation-item.cjs.entry.js +5 -5
  36. package/dist/cjs/db-navigation-item.cjs.entry.js.map +1 -1
  37. package/dist/cjs/db-navigation-item.entry.cjs.js.map +1 -1
  38. package/dist/cjs/db-navigation.cjs.entry.js +3 -3
  39. package/dist/cjs/db-navigation.cjs.entry.js.map +1 -1
  40. package/dist/cjs/db-navigation.entry.cjs.js.map +1 -1
  41. package/dist/cjs/db-notification.cjs.entry.js +3 -3
  42. package/dist/cjs/db-notification.cjs.entry.js.map +1 -1
  43. package/dist/cjs/db-notification.entry.cjs.js.map +1 -1
  44. package/dist/cjs/db-page.cjs.entry.js +1 -1
  45. package/dist/cjs/db-popover.cjs.entry.js +2 -2
  46. package/dist/cjs/db-radio.cjs.entry.js +3 -4
  47. package/dist/cjs/db-radio.cjs.entry.js.map +1 -1
  48. package/dist/cjs/db-radio.entry.cjs.js.map +1 -1
  49. package/dist/cjs/db-section.cjs.entry.js +1 -1
  50. package/dist/cjs/db-select.cjs.entry.js +6 -5
  51. package/dist/cjs/db-select.cjs.entry.js.map +1 -1
  52. package/dist/cjs/db-select.entry.cjs.js.map +1 -1
  53. package/dist/cjs/db-stack.cjs.entry.js +1 -1
  54. package/dist/cjs/db-switch.cjs.entry.js +3 -3
  55. package/dist/cjs/db-switch.cjs.entry.js.map +1 -1
  56. package/dist/cjs/db-switch.entry.cjs.js.map +1 -1
  57. package/dist/cjs/db-tab-item.db-tab-list.db-tab-panel.entry.cjs.js.map +1 -1
  58. package/dist/cjs/db-tab-item_3.cjs.entry.js +6 -5
  59. package/dist/cjs/db-tab-item_3.cjs.entry.js.map +1 -1
  60. package/dist/cjs/db-tabs.cjs.entry.js +3 -3
  61. package/dist/cjs/db-tabs.cjs.entry.js.map +1 -1
  62. package/dist/cjs/db-tabs.entry.cjs.js.map +1 -1
  63. package/dist/cjs/db-textarea.cjs.entry.js +6 -5
  64. package/dist/cjs/db-textarea.cjs.entry.js.map +1 -1
  65. package/dist/cjs/db-textarea.entry.cjs.js.map +1 -1
  66. package/dist/cjs/db-tooltip.cjs.entry.js +2 -2
  67. package/dist/cjs/db-ux.cjs.js +3 -3
  68. package/dist/cjs/db-ux.cjs.js.map +1 -1
  69. package/dist/cjs/{floating-components-BxBSpOv1.js → floating-components-ogUqz72V.js} +3 -2
  70. package/dist/cjs/{floating-components-BxBSpOv1.js.map → floating-components-ogUqz72V.js.map} +1 -1
  71. package/dist/cjs/{index-DRg3L2am.js → index-9urL1KCD.js} +3 -3
  72. package/dist/{esm/index-B-IYTj4g.js.map → cjs/index-9urL1KCD.js.map} +1 -1
  73. package/dist/cjs/index.cjs.js +114 -15
  74. package/dist/cjs/index.cjs.js.map +1 -1
  75. package/dist/cjs/loader.cjs.js +2 -2
  76. package/dist/cjs/{navigation-BNSnj0bl.js → navigation-DauGE-qj.js} +3 -3
  77. package/dist/cjs/{navigation-BNSnj0bl.js.map → navigation-DauGE-qj.js.map} +1 -1
  78. package/dist/collection/collection-manifest.json +1 -1
  79. package/dist/collection/components/brand/brand.js +3 -3
  80. package/dist/collection/components/brand/brand.js.map +1 -1
  81. package/dist/collection/components/button/button.js +92 -89
  82. package/dist/collection/components/button/button.js.map +1 -1
  83. package/dist/collection/components/button/model.js +0 -1
  84. package/dist/collection/components/button/model.js.map +1 -1
  85. package/dist/collection/components/card/card.js +2 -2
  86. package/dist/collection/components/card/card.js.map +1 -1
  87. package/dist/collection/components/checkbox/checkbox.js +5 -4
  88. package/dist/collection/components/checkbox/checkbox.js.map +1 -1
  89. package/dist/collection/components/custom-select/custom-select.js +55 -42
  90. package/dist/collection/components/custom-select/custom-select.js.map +1 -1
  91. package/dist/collection/components/custom-select/model.js.map +1 -1
  92. package/dist/collection/components/custom-select-list-item/custom-select-list-item.js +4 -4
  93. package/dist/collection/components/custom-select-list-item/custom-select-list-item.js.map +1 -1
  94. package/dist/collection/components/custom-select-list-item/model.js.map +1 -1
  95. package/dist/collection/components/header/header.js +30 -34
  96. package/dist/collection/components/header/header.js.map +1 -1
  97. package/dist/collection/components/infotext/infotext.js +3 -3
  98. package/dist/collection/components/infotext/infotext.js.map +1 -1
  99. package/dist/collection/components/input/input.js +112 -11
  100. package/dist/collection/components/input/input.js.map +1 -1
  101. package/dist/collection/components/input/model.js.map +1 -1
  102. package/dist/collection/components/link/link.js +24 -74
  103. package/dist/collection/components/link/link.js.map +1 -1
  104. package/dist/collection/components/link/model.js +1 -1
  105. package/dist/collection/components/link/model.js.map +1 -1
  106. package/dist/collection/components/navigation/model.js.map +1 -1
  107. package/dist/collection/components/navigation/navigation.js +2 -27
  108. package/dist/collection/components/navigation/navigation.js.map +1 -1
  109. package/dist/collection/components/navigation-item/model.js.map +1 -1
  110. package/dist/collection/components/navigation-item/navigation-item.js +3 -3
  111. package/dist/collection/components/navigation-item/navigation-item.js.map +1 -1
  112. package/dist/collection/components/notification/notification.js +3 -3
  113. package/dist/collection/components/notification/notification.js.map +1 -1
  114. package/dist/collection/components/radio/radio.js +2 -53
  115. package/dist/collection/components/radio/radio.js.map +1 -1
  116. package/dist/collection/components/select/select.js +6 -5
  117. package/dist/collection/components/select/select.js.map +1 -1
  118. package/dist/collection/components/switch/model.js.map +1 -1
  119. package/dist/collection/components/switch/switch.js +21 -46
  120. package/dist/collection/components/switch/switch.js.map +1 -1
  121. package/dist/collection/components/tab-item/model.js.map +1 -1
  122. package/dist/collection/components/tab-item/tab-item.js +68 -17
  123. package/dist/collection/components/tab-item/tab-item.js.map +1 -1
  124. package/dist/collection/components/tab-panel/model.js.map +1 -1
  125. package/dist/collection/components/tab-panel/tab-panel.js +2 -27
  126. package/dist/collection/components/tab-panel/tab-panel.js.map +1 -1
  127. package/dist/collection/components/tabs/tabs.js +2 -2
  128. package/dist/collection/components/tabs/tabs.js.map +1 -1
  129. package/dist/collection/components/tag/model.js.map +1 -1
  130. package/dist/collection/components/tag/tag.js +3 -64
  131. package/dist/collection/components/tag/tag.js.map +1 -1
  132. package/dist/collection/components/textarea/textarea.js +5 -4
  133. package/dist/collection/components/textarea/textarea.js.map +1 -1
  134. package/dist/collection/index.js +39 -0
  135. package/dist/collection/index.js.map +1 -1
  136. package/dist/collection/shared/model.js +0 -1
  137. package/dist/collection/shared/model.js.map +1 -1
  138. package/dist/custom-elements.json +613 -657
  139. package/dist/db-ux/db-brand.entry.esm.js.map +1 -1
  140. package/dist/db-ux/db-button.entry.esm.js.map +1 -1
  141. package/dist/db-ux/db-card.entry.esm.js.map +1 -1
  142. package/dist/db-ux/db-checkbox.entry.esm.js.map +1 -1
  143. package/dist/db-ux/db-custom-select-dropdown.db-custom-select-list.db-custom-select-list-item.db-input.db-tag.entry.esm.js.map +1 -1
  144. package/dist/db-ux/db-custom-select.entry.esm.js.map +1 -1
  145. package/dist/db-ux/db-header.entry.esm.js.map +1 -1
  146. package/dist/db-ux/db-infotext.entry.esm.js.map +1 -1
  147. package/dist/db-ux/db-link.entry.esm.js.map +1 -1
  148. package/dist/db-ux/db-navigation-item.entry.esm.js.map +1 -1
  149. package/dist/db-ux/db-navigation.entry.esm.js.map +1 -1
  150. package/dist/db-ux/db-notification.entry.esm.js.map +1 -1
  151. package/dist/db-ux/db-radio.entry.esm.js.map +1 -1
  152. package/dist/db-ux/db-select.entry.esm.js.map +1 -1
  153. package/dist/db-ux/db-switch.entry.esm.js.map +1 -1
  154. package/dist/db-ux/db-tab-item.db-tab-list.db-tab-panel.entry.esm.js.map +1 -1
  155. package/dist/db-ux/db-tabs.entry.esm.js.map +1 -1
  156. package/dist/db-ux/db-textarea.entry.esm.js.map +1 -1
  157. package/dist/db-ux/db-ux.esm.js +1 -1
  158. package/dist/db-ux/db-ux.esm.js.map +1 -1
  159. package/dist/db-ux/index.esm.js +1 -1
  160. package/dist/db-ux/index.esm.js.map +1 -1
  161. package/dist/db-ux/{p-26531856.entry.js → p-02fcd4a8.entry.js} +2 -2
  162. package/dist/db-ux/{p-4da7f4bb.entry.js → p-16f1fa7c.entry.js} +2 -2
  163. package/dist/db-ux/p-209cf793.entry.js +2 -0
  164. package/dist/db-ux/p-209cf793.entry.js.map +1 -0
  165. package/dist/db-ux/p-340bb722.entry.js +2 -0
  166. package/dist/db-ux/p-340bb722.entry.js.map +1 -0
  167. package/dist/db-ux/p-3d7eb768.entry.js +2 -0
  168. package/dist/db-ux/p-3d7eb768.entry.js.map +1 -0
  169. package/dist/db-ux/p-51de401e.entry.js +2 -0
  170. package/dist/db-ux/p-51de401e.entry.js.map +1 -0
  171. package/dist/db-ux/{p-723c465c.entry.js → p-58007675.entry.js} +2 -2
  172. package/dist/db-ux/p-58007675.entry.js.map +1 -0
  173. package/dist/db-ux/p-5b45664d.entry.js +2 -0
  174. package/dist/db-ux/p-5b45664d.entry.js.map +1 -0
  175. package/dist/db-ux/p-5c6da0f3.entry.js +2 -0
  176. package/dist/db-ux/p-5c6da0f3.entry.js.map +1 -0
  177. package/dist/db-ux/{p-52fc60a6.entry.js → p-6c4115c8.entry.js} +2 -2
  178. package/dist/db-ux/p-6c4115c8.entry.js.map +1 -0
  179. package/dist/db-ux/p-6e35a260.entry.js +2 -0
  180. package/dist/db-ux/p-6e35a260.entry.js.map +1 -0
  181. package/dist/db-ux/p-84dd974f.entry.js +2 -0
  182. package/dist/db-ux/p-84dd974f.entry.js.map +1 -0
  183. package/dist/db-ux/p-8b41c30e.entry.js +2 -0
  184. package/dist/db-ux/p-8b41c30e.entry.js.map +1 -0
  185. package/dist/db-ux/{p-9f122b1e.entry.js → p-971a16c3.entry.js} +2 -2
  186. package/dist/db-ux/{p-e5984435.entry.js → p-9d0996e9.entry.js} +2 -2
  187. package/dist/db-ux/{p-B-IYTj4g.js → p-CNzNv7KB.js} +1 -1
  188. package/dist/db-ux/{p-B-IYTj4g.js.map → p-CNzNv7KB.js.map} +1 -1
  189. package/dist/db-ux/{p-CifCRcqG.js → p-G-TursYV.js} +2 -2
  190. package/dist/db-ux/{p-CifCRcqG.js.map → p-G-TursYV.js.map} +1 -1
  191. package/dist/db-ux/p-a2b55626.entry.js +2 -0
  192. package/dist/db-ux/p-a2b55626.entry.js.map +1 -0
  193. package/dist/db-ux/p-a3541c03.entry.js +2 -0
  194. package/dist/db-ux/p-a3541c03.entry.js.map +1 -0
  195. package/dist/db-ux/{p-c6ac54c3.entry.js → p-bd7d1646.entry.js} +2 -2
  196. package/dist/db-ux/p-c5ff3d3f.entry.js +2 -0
  197. package/dist/db-ux/p-c5ff3d3f.entry.js.map +1 -0
  198. package/dist/db-ux/{p-42c60f21.entry.js → p-c8bdd952.entry.js} +2 -2
  199. package/dist/db-ux/{p-f6c1d4b7.entry.js → p-c8cdde8c.entry.js} +2 -2
  200. package/dist/db-ux/p-ce895e0c.entry.js +2 -0
  201. package/dist/db-ux/p-ce895e0c.entry.js.map +1 -0
  202. package/dist/db-ux/{p-1d4ee600.entry.js → p-d4e3d1db.entry.js} +2 -2
  203. package/dist/db-ux/p-d6aeabf0.entry.js +2 -0
  204. package/dist/db-ux/p-d6aeabf0.entry.js.map +1 -0
  205. package/dist/db-ux/{p-2fade21b.entry.js → p-d7168627.entry.js} +2 -2
  206. package/dist/db-ux/{p-6d2da8ea.entry.js → p-e6e7719e.entry.js} +2 -2
  207. package/dist/db-ux/p-e9c323af.entry.js +2 -0
  208. package/dist/db-ux/p-e9c323af.entry.js.map +1 -0
  209. package/dist/db-ux/{p-32c21508.entry.js → p-ec957247.entry.js} +2 -2
  210. package/dist/db-ux/p-f03f7076.entry.js +2 -0
  211. package/dist/db-ux/p-f03f7076.entry.js.map +1 -0
  212. package/dist/db-ux/{p-109b88a5.entry.js → p-fdf5578d.entry.js} +2 -2
  213. package/dist/db-ux/{p-DdyDId49.js → p-sP2NlPcu.js} +2 -2
  214. package/dist/db-ux/{p-DdyDId49.js.map → p-sP2NlPcu.js.map} +1 -1
  215. package/dist/esm/db-accordion-item.entry.js +1 -1
  216. package/dist/esm/db-accordion.entry.js +1 -1
  217. package/dist/esm/db-badge.entry.js +1 -1
  218. package/dist/esm/db-brand.entry.js +4 -4
  219. package/dist/esm/db-brand.entry.js.map +1 -1
  220. package/dist/esm/db-button.entry.js +15 -4
  221. package/dist/esm/db-button.entry.js.map +1 -1
  222. package/dist/esm/db-card.entry.js +3 -3
  223. package/dist/esm/db-card.entry.js.map +1 -1
  224. package/dist/esm/db-checkbox.entry.js +6 -5
  225. package/dist/esm/db-checkbox.entry.js.map +1 -1
  226. package/dist/esm/db-custom-select-dropdown.db-custom-select-list.db-custom-select-list-item.db-input.db-tag.entry.js.map +1 -1
  227. package/dist/esm/db-custom-select-dropdown_5.entry.js +15 -36
  228. package/dist/esm/db-custom-select-dropdown_5.entry.js.map +1 -1
  229. package/dist/esm/db-custom-select-form-field.entry.js +1 -1
  230. package/dist/esm/db-custom-select.entry.js +21 -14
  231. package/dist/esm/db-custom-select.entry.js.map +1 -1
  232. package/dist/esm/db-divider.entry.js +1 -1
  233. package/dist/esm/db-drawer.entry.js +1 -1
  234. package/dist/esm/db-header.entry.js +16 -21
  235. package/dist/esm/db-header.entry.js.map +1 -1
  236. package/dist/esm/db-icon.entry.js +1 -1
  237. package/dist/esm/db-infotext.entry.js +4 -4
  238. package/dist/esm/db-infotext.entry.js.map +1 -1
  239. package/dist/esm/db-link.entry.js +4 -4
  240. package/dist/esm/db-link.entry.js.map +1 -1
  241. package/dist/esm/db-navigation-item.entry.js +6 -6
  242. package/dist/esm/db-navigation-item.entry.js.map +1 -1
  243. package/dist/esm/db-navigation.entry.js +3 -3
  244. package/dist/esm/db-navigation.entry.js.map +1 -1
  245. package/dist/esm/db-notification.entry.js +4 -4
  246. package/dist/esm/db-notification.entry.js.map +1 -1
  247. package/dist/esm/db-page.entry.js +1 -1
  248. package/dist/esm/db-popover.entry.js +2 -2
  249. package/dist/esm/db-radio.entry.js +3 -4
  250. package/dist/esm/db-radio.entry.js.map +1 -1
  251. package/dist/esm/db-section.entry.js +1 -1
  252. package/dist/esm/db-select.entry.js +7 -6
  253. package/dist/esm/db-select.entry.js.map +1 -1
  254. package/dist/esm/db-stack.entry.js +1 -1
  255. package/dist/esm/db-switch.entry.js +3 -3
  256. package/dist/esm/db-switch.entry.js.map +1 -1
  257. package/dist/esm/db-tab-item.db-tab-list.db-tab-panel.entry.js.map +1 -1
  258. package/dist/esm/db-tab-item_3.entry.js +7 -6
  259. package/dist/esm/db-tab-item_3.entry.js.map +1 -1
  260. package/dist/esm/db-tabs.entry.js +3 -3
  261. package/dist/esm/db-tabs.entry.js.map +1 -1
  262. package/dist/esm/db-textarea.entry.js +6 -5
  263. package/dist/esm/db-textarea.entry.js.map +1 -1
  264. package/dist/esm/db-tooltip.entry.js +2 -2
  265. package/dist/esm/db-ux.js +4 -4
  266. package/dist/esm/db-ux.js.map +1 -1
  267. package/dist/esm/{floating-components-CifCRcqG.js → floating-components-G-TursYV.js} +3 -3
  268. package/dist/esm/{floating-components-CifCRcqG.js.map → floating-components-G-TursYV.js.map} +1 -1
  269. package/dist/esm/{index-B-IYTj4g.js → index-CNzNv7KB.js} +3 -3
  270. package/dist/{cjs/index-DRg3L2am.js.map → esm/index-CNzNv7KB.js.map} +1 -1
  271. package/dist/esm/index.js +65 -7
  272. package/dist/esm/index.js.map +1 -1
  273. package/dist/esm/loader.js +3 -3
  274. package/dist/esm/{navigation--rT2utIA.js → navigation--UdC9CzO.js} +3 -3
  275. package/dist/esm/{navigation--rT2utIA.js.map → navigation--UdC9CzO.js.map} +1 -1
  276. package/dist/types/components/button/button.d.ts +8 -6
  277. package/dist/types/components/button/model.d.ts +6 -22
  278. package/dist/types/components/checkbox/checkbox.d.ts +1 -1
  279. package/dist/types/components/custom-select/custom-select.d.ts +4 -3
  280. package/dist/types/components/custom-select/model.d.ts +1 -0
  281. package/dist/types/components/custom-select-list-item/custom-select-list-item.d.ts +1 -1
  282. package/dist/types/components/custom-select-list-item/model.d.ts +1 -1
  283. package/dist/types/components/header/header.d.ts +1 -2
  284. package/dist/types/components/input/input.d.ts +7 -3
  285. package/dist/types/components/input/model.d.ts +6 -2
  286. package/dist/types/components/link/link.d.ts +1 -3
  287. package/dist/types/components/link/model.d.ts +3 -3
  288. package/dist/types/components/navigation/model.d.ts +2 -2
  289. package/dist/types/components/navigation/navigation.d.ts +0 -1
  290. package/dist/types/components/navigation-item/model.d.ts +2 -6
  291. package/dist/types/components/radio/radio.d.ts +0 -2
  292. package/dist/types/components/select/select.d.ts +1 -1
  293. package/dist/types/components/switch/model.d.ts +2 -2
  294. package/dist/types/components/switch/switch.d.ts +2 -3
  295. package/dist/types/components/tab-item/model.d.ts +2 -2
  296. package/dist/types/components/tab-item/tab-item.d.ts +4 -2
  297. package/dist/types/components/tab-panel/model.d.ts +2 -2
  298. package/dist/types/components/tab-panel/tab-panel.d.ts +0 -1
  299. package/dist/types/components/tag/model.d.ts +2 -6
  300. package/dist/types/components/tag/tag.d.ts +0 -4
  301. package/dist/types/components/textarea/textarea.d.ts +1 -1
  302. package/dist/types/components.d.ts +48 -38
  303. package/dist/types/index.d.ts +39 -0
  304. package/dist/types/shared/model.d.ts +28 -27
  305. package/dist/vscode.html-custom-data.json +95 -98
  306. package/dist/web-types.json +193 -204
  307. package/package.json +8 -8
  308. package/dist/db-ux/p-291a3bb4.entry.js +0 -2
  309. package/dist/db-ux/p-291a3bb4.entry.js.map +0 -1
  310. package/dist/db-ux/p-3320cac1.entry.js +0 -2
  311. package/dist/db-ux/p-3320cac1.entry.js.map +0 -1
  312. package/dist/db-ux/p-40f5e6e7.entry.js +0 -2
  313. package/dist/db-ux/p-40f5e6e7.entry.js.map +0 -1
  314. package/dist/db-ux/p-4296343b.entry.js +0 -2
  315. package/dist/db-ux/p-4296343b.entry.js.map +0 -1
  316. package/dist/db-ux/p-52fc60a6.entry.js.map +0 -1
  317. package/dist/db-ux/p-60b8eb25.entry.js +0 -2
  318. package/dist/db-ux/p-60b8eb25.entry.js.map +0 -1
  319. package/dist/db-ux/p-6243b16c.entry.js +0 -2
  320. package/dist/db-ux/p-6243b16c.entry.js.map +0 -1
  321. package/dist/db-ux/p-723c465c.entry.js.map +0 -1
  322. package/dist/db-ux/p-738954c8.entry.js +0 -2
  323. package/dist/db-ux/p-738954c8.entry.js.map +0 -1
  324. package/dist/db-ux/p-766ce40b.entry.js +0 -2
  325. package/dist/db-ux/p-766ce40b.entry.js.map +0 -1
  326. package/dist/db-ux/p-8643bd7b.entry.js +0 -2
  327. package/dist/db-ux/p-8643bd7b.entry.js.map +0 -1
  328. package/dist/db-ux/p-9da8c824.entry.js +0 -2
  329. package/dist/db-ux/p-9da8c824.entry.js.map +0 -1
  330. package/dist/db-ux/p-a8d63224.entry.js +0 -2
  331. package/dist/db-ux/p-a8d63224.entry.js.map +0 -1
  332. package/dist/db-ux/p-ac31c402.entry.js +0 -2
  333. package/dist/db-ux/p-ac31c402.entry.js.map +0 -1
  334. package/dist/db-ux/p-d1835c57.entry.js +0 -2
  335. package/dist/db-ux/p-d1835c57.entry.js.map +0 -1
  336. package/dist/db-ux/p-d4cc20df.entry.js +0 -2
  337. package/dist/db-ux/p-d4cc20df.entry.js.map +0 -1
  338. package/dist/db-ux/p-e9301996.entry.js +0 -2
  339. package/dist/db-ux/p-e9301996.entry.js.map +0 -1
  340. package/dist/db-ux/p-f8eec3af.entry.js +0 -2
  341. package/dist/db-ux/p-f8eec3af.entry.js.map +0 -1
  342. /package/dist/db-ux/{p-26531856.entry.js.map → p-02fcd4a8.entry.js.map} +0 -0
  343. /package/dist/db-ux/{p-4da7f4bb.entry.js.map → p-16f1fa7c.entry.js.map} +0 -0
  344. /package/dist/db-ux/{p-9f122b1e.entry.js.map → p-971a16c3.entry.js.map} +0 -0
  345. /package/dist/db-ux/{p-e5984435.entry.js.map → p-9d0996e9.entry.js.map} +0 -0
  346. /package/dist/db-ux/{p-c6ac54c3.entry.js.map → p-bd7d1646.entry.js.map} +0 -0
  347. /package/dist/db-ux/{p-42c60f21.entry.js.map → p-c8bdd952.entry.js.map} +0 -0
  348. /package/dist/db-ux/{p-f6c1d4b7.entry.js.map → p-c8cdde8c.entry.js.map} +0 -0
  349. /package/dist/db-ux/{p-1d4ee600.entry.js.map → p-d4e3d1db.entry.js.map} +0 -0
  350. /package/dist/db-ux/{p-2fade21b.entry.js.map → p-d7168627.entry.js.map} +0 -0
  351. /package/dist/db-ux/{p-6d2da8ea.entry.js.map → p-e6e7719e.entry.js.map} +0 -0
  352. /package/dist/db-ux/{p-32c21508.entry.js.map → p-ec957247.entry.js.map} +0 -0
  353. /package/dist/db-ux/{p-109b88a5.entry.js.map → p-fdf5578d.entry.js.map} +0 -0
@@ -1,5 +1,5 @@
1
1
  import { DEFAULT_INVALID_MESSAGE, DEFAULT_INVALID_MESSAGE_ID_SUFFIX, DEFAULT_LABEL, DEFAULT_MESSAGE_ID_SUFFIX, DEFAULT_PLACEHOLDER_ID_SUFFIX, DEFAULT_VALID_MESSAGE, DEFAULT_VALID_MESSAGE_ID_SUFFIX, } from "../../shared/constants";
2
- import { cls, delay, getBoolean, getHideProp, hasVoiceOver, stringPropVisible, uuid, } from "../../utils";
2
+ import { cls, delay, getBoolean, getBooleanAsString, getHideProp, hasVoiceOver, stringPropVisible, uuid, } from "../../utils";
3
3
  import { h, Fragment, } from "@stencil/core";
4
4
  /**
5
5
  * @slot children - This is a default/unnamed slot
@@ -13,7 +13,7 @@ export class DBSelect {
13
13
  this._invalidMessageId = undefined;
14
14
  this._invalidMessage = undefined;
15
15
  this._placeholderId = "";
16
- this._descByIds = "";
16
+ this._descByIds = undefined;
17
17
  this._value = "";
18
18
  this.initialized = false;
19
19
  this._voiceOverFallback = "";
@@ -139,6 +139,7 @@ export class DBSelect {
139
139
  else {
140
140
  this._descByIds = placeholderId;
141
141
  }
142
+ this.handleValidation();
142
143
  this.initialized = false;
143
144
  }
144
145
  }
@@ -168,14 +169,14 @@ export class DBSelect {
168
169
  }
169
170
  render() {
170
171
  var _a, _b, _c, _d, _e, _f;
171
- return (h("div", { key: 'c55fdccdd060f36e19a34f1bcfc569bf6f4917ed', class: cls("db-select", this.className), "data-variant": this.variant, "data-hide-label": getHideProp(this.showLabel), "data-hide-asterisk": getHideProp(this.showRequiredAsterisk), "data-icon": this.icon, "data-hide-icon": getHideProp(this.showIcon) }, h("label", { key: 'c424b175cb5d4f7e7cc14ab29cfa67576684a115', htmlFor: this._id }, (_a = this.label) !== null && _a !== void 0 ? _a : DEFAULT_LABEL), h("select", { key: '8386e3eb1fdceb1ffc9933c72f2b0f04938d1108', "aria-invalid": this.validation === "invalid", "data-custom-validity": this.validation, ref: (el) => {
172
+ return (h("div", { key: '1ad3f50d41f9876e6c8bcf4b57e425d98ab33afc', class: cls("db-select", this.className), "data-variant": this.variant, "data-hide-label": getHideProp(this.showLabel), "data-hide-asterisk": getHideProp(this.showRequiredAsterisk), "data-icon": this.icon, "data-show-icon": getBooleanAsString(this.showIcon) }, h("label", { key: '25669ee40024d9b93470dea1837b9e168499a438', htmlFor: this._id }, (_a = this.label) !== null && _a !== void 0 ? _a : DEFAULT_LABEL), h("select", { key: 'de35e6ceea2c3e3d2b2e09d62d070433c3e4a87f', "aria-invalid": this.validation === "invalid", "data-custom-validity": this.validation, ref: (el) => {
172
173
  this._ref = el;
173
174
  }, required: getBoolean(this.required, "required"), disabled: getBoolean(this.disabled, "disabled"), id: this._id, name: this.name, size: this.size,
174
175
  /* @ts-ignore */
175
- value: (_b = this.value) !== null && _b !== void 0 ? _b : this._value, autocomplete: this.autocomplete, multiple: this.multiple, onInput: (event) => this.handleInput(event), onClick: (event) => this.handleClick(event), onChange: (event) => this.handleChange(event), onBlur: (event) => this.handleBlur(event), onFocus: (event) => this.handleFocus(event), "aria-describedby": (_c = this.ariaDescribedBy) !== null && _c !== void 0 ? _c : this._descByIds }, h("option", { key: 'c337ef04ac473d3cf00419d30c61cd38b4ca1ad6', hidden: true }), ((_d = this.options) === null || _d === void 0 ? void 0 : _d.length) ? ((_e = this.options) === null || _e === void 0 ? void 0 : _e.map((option) => {
176
+ value: (_b = this.value) !== null && _b !== void 0 ? _b : this._value, autocomplete: this.autocomplete, multiple: this.multiple, onInput: (event) => this.handleInput(event), onClick: (event) => this.handleClick(event), onChange: (event) => this.handleChange(event), onBlur: (event) => this.handleBlur(event), onFocus: (event) => this.handleFocus(event), "aria-describedby": (_c = this.ariaDescribedBy) !== null && _c !== void 0 ? _c : this._descByIds }, h("option", { key: 'b142e1e61e4ece2de307a20b5639b109b5ffe89c', hidden: true }), ((_d = this.options) === null || _d === void 0 ? void 0 : _d.length) ? ((_e = this.options) === null || _e === void 0 ? void 0 : _e.map((option) => {
176
177
  var _a;
177
178
  return (h(Fragment, null, option.options ? (h("optgroup", { label: this.getOptionLabel(option), key: undefined }, (_a = option.options) === null || _a === void 0 ? void 0 : _a.map((optgroupOption) => (h("option", { value: optgroupOption.value, selected: optgroupOption.selected, disabled: optgroupOption.disabled, key: undefined }, this.getOptionLabel(optgroupOption)))))) : (h("option", { value: option.value, disabled: option.disabled, selected: option.selected, key: undefined }, this.getOptionLabel(option)))));
178
- })) : (h("slot", null))), h("span", { key: '13f3711cb31601dc4e2580fbd0e165a4902cf18f', id: this._placeholderId }, (_f = this.placeholder) !== null && _f !== void 0 ? _f : this.label), stringPropVisible(this.message, this.showMessage) ? (h("db-infotext", { size: "small", icon: this.messageIcon, id: this._messageId }, this.message)) : null, this.hasValidState() ? (h("db-infotext", { size: "small", semantic: "successful", id: this._validMessageId }, this.validMessage || DEFAULT_VALID_MESSAGE)) : null, h("db-infotext", { key: '743f2051458556cd1f6d900415878ac83b615132', size: "small", semantic: "critical", id: this._invalidMessageId }, this._invalidMessage), h("span", { key: '96a5cf7d9ba622214d63945bde23fe521aa73a09', "data-visually-hidden": "true", role: "status" }, this._voiceOverFallback)));
179
+ })) : (h("slot", null))), h("span", { key: 'e603d405726ca9dec55f27c54abb816dc61f238c', id: this._placeholderId }, (_f = this.placeholder) !== null && _f !== void 0 ? _f : this.label), stringPropVisible(this.message, this.showMessage) ? (h("db-infotext", { size: "small", icon: this.messageIcon, id: this._messageId }, this.message)) : null, this.hasValidState() ? (h("db-infotext", { size: "small", semantic: "successful", id: this._validMessageId }, this.validMessage || DEFAULT_VALID_MESSAGE)) : null, h("db-infotext", { key: '6e1a5c43e46b7944ee97840f3c44bf31b3c90610', size: "small", semantic: "critical", id: this._invalidMessageId }, this._invalidMessage), h("span", { key: '9a59a6d2df49d7e55f437d063f91691442794bee', "data-visually-hidden": "true", role: "status" }, this._voiceOverFallback)));
179
180
  }
180
181
  static get is() { return "db-select"; }
181
182
  static get properties() {
@@ -1 +1 @@
1
- {"version":3,"file":"select.js","sourceRoot":"","sources":["../../../src/components/select/select.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n DEFAULT_INVALID_MESSAGE,\n DEFAULT_INVALID_MESSAGE_ID_SUFFIX,\n DEFAULT_LABEL,\n DEFAULT_MESSAGE_ID_SUFFIX,\n DEFAULT_PLACEHOLDER_ID_SUFFIX,\n DEFAULT_VALID_MESSAGE,\n DEFAULT_VALID_MESSAGE_ID_SUFFIX,\n} from \"../../shared/constants\";\nimport {\n ChangeEvent,\n ClickEvent,\n InputEvent,\n InteractionEvent,\n} from \"../../shared/model\";\nimport {\n cls,\n delay,\n getBoolean,\n getHideProp,\n getOptionKey,\n hasVoiceOver,\n stringPropVisible,\n uuid,\n} from \"../../utils\";\nimport {\n handleFrameworkEventAngular,\n handleFrameworkEventVue,\n} from \"../../utils/form-components\";\nimport { DBInfotext } from \"../infotext/infotext\";\nimport { DBSelectOptionType, DBSelectProps, DBSelectState } from \"./model\";\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-select\",\n})\nexport class DBSelect {\n private _ref!: HTMLSelectElement | any;\n @Prop() id: DBSelectProps[\"id\"];\n @Prop() invalidMessage: DBSelectProps[\"invalidMessage\"];\n @Prop() message: DBSelectProps[\"message\"];\n @Prop() showMessage: DBSelectProps[\"showMessage\"];\n @Prop() value: DBSelectProps[\"value\"];\n @Prop() validMessage: DBSelectProps[\"validMessage\"];\n @Prop() validation: DBSelectProps[\"validation\"];\n @Prop() required: DBSelectProps[\"required\"];\n @Event() click: EventEmitter<\n Parameters<Required<DBSelectProps>[\"onClick\"]>[number]\n > | void;\n @Event() input: EventEmitter<\n Parameters<Required<DBSelectProps>[\"onInput\"]>[number]\n > | void;\n @Event() change: EventEmitter<\n Parameters<Required<DBSelectProps>[\"onChange\"]>[number]\n > | void;\n @Event() blur: EventEmitter<\n Parameters<Required<DBSelectProps>[\"onBlur\"]>[number]\n > | void;\n @Event() focus: EventEmitter<\n Parameters<Required<DBSelectProps>[\"onFocus\"]>[number]\n > | void;\n @Prop({attribute: \"classname\"}) className: DBSelectProps[\"className\"];\n @Prop() variant: DBSelectProps[\"variant\"];\n @Prop() showLabel: DBSelectProps[\"showLabel\"];\n @Prop() showRequiredAsterisk: DBSelectProps[\"showRequiredAsterisk\"];\n @Prop() icon: DBSelectProps[\"icon\"];\n @Prop() showIcon: DBSelectProps[\"showIcon\"];\n @Prop() label: DBSelectProps[\"label\"];\n @Prop() disabled: DBSelectProps[\"disabled\"];\n @Prop() name: DBSelectProps[\"name\"];\n @Prop() size: DBSelectProps[\"size\"];\n @Prop() autocomplete: DBSelectProps[\"autocomplete\"];\n @Prop() multiple: DBSelectProps[\"multiple\"];\n @Prop() ariaDescribedBy: DBSelectProps[\"ariaDescribedBy\"];\n @Prop() options: DBSelectProps[\"options\"];\n @Prop() placeholder: DBSelectProps[\"placeholder\"];\n @Prop() messageIcon: DBSelectProps[\"messageIcon\"];\n @State() _id = undefined;\n @State() _messageId = undefined;\n @State() _validMessageId = undefined;\n @State() _invalidMessageId = undefined;\n @State() _invalidMessage = undefined;\n @State() _placeholderId = \"\";\n @State() _descByIds = \"\";\n @State() _value = \"\";\n @State() initialized = false;\n @State() _voiceOverFallback = \"\";\n\n hasValidState() {\n return !!(this.validMessage ?? this.validation === \"valid\");\n }\n handleValidation() {\n /* For a11y reasons we need to map the correct message with the select */\n if (!this._ref?.validity.valid || this.validation === \"invalid\") {\n this._descByIds = this._invalidMessageId;\n this._invalidMessage =\n this.invalidMessage ||\n this._ref?.validationMessage ||\n DEFAULT_INVALID_MESSAGE;\n if (hasVoiceOver()) {\n this._voiceOverFallback = this._invalidMessage;\n delay(() => (this._voiceOverFallback = \"\"), 1000);\n }\n } else if (\n this.hasValidState() &&\n this._ref?.validity.valid &&\n this.required\n ) {\n this._descByIds = this._validMessageId;\n if (hasVoiceOver()) {\n this._voiceOverFallback = this.validMessage ?? DEFAULT_VALID_MESSAGE;\n delay(() => (this._voiceOverFallback = \"\"), 1000);\n }\n } else if (stringPropVisible(this.message, this.showMessage)) {\n this._descByIds = this._messageId;\n } else {\n this._descByIds = this._placeholderId;\n }\n }\n handleClick(event: ClickEvent<HTMLSelectElement> | any) {\n if (this.click) {\n this.click.emit(event);\n }\n }\n handleInput(event: InputEvent<HTMLSelectElement> | any) {\n if (this.input) {\n this.input.emit(event);\n }\n this.handleValidation();\n }\n handleChange(event: ChangeEvent<HTMLSelectElement> | any) {\n if (this.change) {\n this.change.emit(event);\n }\n this.handleValidation();\n }\n handleBlur(event: InteractionEvent<HTMLSelectElement> | any) {\n if (this.blur) {\n this.blur.emit(event);\n }\n }\n handleFocus(event: InteractionEvent<HTMLSelectElement> | any) {\n if (this.focus) {\n this.focus.emit(event);\n }\n }\n getOptionLabel(option: DBSelectOptionType) {\n return option.label ?? option.value?.toString();\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: HTMLSelectElement | 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 this._invalidMessage =\n this.invalidMessage ||\n this._ref?.validationMessage ||\n DEFAULT_INVALID_MESSAGE;\n }\n\n @Watch(\"_ref\")\n @Watch(\"invalidMessage\")\n watch0() {\n this.watch0Fn();\n }\n\n watch1Fn() {\n if (this._id && this.initialized) {\n const messageId = this._id + DEFAULT_MESSAGE_ID_SUFFIX;\n const placeholderId = this._id + DEFAULT_PLACEHOLDER_ID_SUFFIX;\n this._messageId = messageId;\n this._validMessageId = this._id + DEFAULT_VALID_MESSAGE_ID_SUFFIX;\n this._invalidMessageId = this._id + DEFAULT_INVALID_MESSAGE_ID_SUFFIX;\n this._placeholderId = placeholderId;\n if (stringPropVisible(this.message, this.showMessage)) {\n this._descByIds = messageId;\n } else {\n this._descByIds = placeholderId;\n }\n this.initialized = false;\n }\n }\n\n @Watch(\"_id\")\n @Watch(\"initialized\")\n watch1() {\n this.watch1Fn();\n }\n\n watch2Fn() {\n this._value = this.value;\n }\n\n @Watch(\"value\")\n watch2() {\n this.watch2Fn();\n }\n\n componentDidLoad() {\n this.enableAttributePassing(this._ref, \"db-select\");\n this.initialized = true;\n const mId = this.id ?? `select-${uuid()}`;\n this._id = mId;\n this._messageId = mId + DEFAULT_MESSAGE_ID_SUFFIX;\n this._validMessageId = mId + DEFAULT_VALID_MESSAGE_ID_SUFFIX;\n this._invalidMessageId = mId + DEFAULT_INVALID_MESSAGE_ID_SUFFIX;\n this._placeholderId = mId + DEFAULT_PLACEHOLDER_ID_SUFFIX;\n this._invalidMessage = this.invalidMessage || DEFAULT_INVALID_MESSAGE;\n this.watch0Fn();\n this.watch1Fn();\n this.watch2Fn();\n }\n\n render() {\n return (\n <div\n class={cls(\"db-select\", this.className)}\n data-variant={this.variant}\n data-hide-label={getHideProp(this.showLabel)}\n data-hide-asterisk={getHideProp(this.showRequiredAsterisk)}\n data-icon={this.icon}\n data-hide-icon={getHideProp(this.showIcon)}\n >\n <label htmlFor={this._id}>{this.label ?? DEFAULT_LABEL}</label>\n <select\n aria-invalid={this.validation === \"invalid\"}\n data-custom-validity={this.validation}\n ref={(el: any) => {\n this._ref = el;\n }}\n required={getBoolean(this.required, \"required\")}\n disabled={getBoolean(this.disabled, \"disabled\")}\n id={this._id}\n name={this.name}\n size={this.size}\n /* @ts-ignore */\nvalue={this.value ?? this._value}\n autocomplete={this.autocomplete}\n multiple={this.multiple}\n onInput={(event) => this.handleInput(event)}\n onClick={(event) => this.handleClick(event)}\n onChange={(event) => this.handleChange(event)}\n onBlur={(event) => this.handleBlur(event)}\n onFocus={(event) => this.handleFocus(event)}\n aria-describedby={this.ariaDescribedBy ?? this._descByIds}\n >\n <option hidden={true}></option>\n {this.options?.length ? (\n this.options?.map((option) => (\n <Fragment>\n {option.options ? (\n <optgroup label={this.getOptionLabel(option)} key={undefined}>\n {option.options?.map((optgroupOption) => (\n <option\n value={optgroupOption.value}\n selected={optgroupOption.selected}\n disabled={optgroupOption.disabled}\n key={undefined}\n >\n {this.getOptionLabel(optgroupOption)}\n </option>\n ))}\n </optgroup>\n ) : (\n <option\n value={option.value}\n disabled={option.disabled}\n selected={option.selected}\n key={undefined}\n >\n {this.getOptionLabel(option)}\n </option>\n )}\n </Fragment>\n ))\n ) : (\n <slot></slot>\n )}\n </select>\n <span id={this._placeholderId}>{this.placeholder ?? this.label}</span>\n {stringPropVisible(this.message, this.showMessage) ? (\n <db-infotext\n size=\"small\"\n icon={this.messageIcon}\n id={this._messageId}\n >\n {this.message}\n </db-infotext>\n ) : null}\n {this.hasValidState() ? (\n <db-infotext\n size=\"small\"\n semantic=\"successful\"\n id={this._validMessageId}\n >\n {this.validMessage || DEFAULT_VALID_MESSAGE}\n </db-infotext>\n ) : null}\n <db-infotext\n size=\"small\"\n semantic=\"critical\"\n id={this._invalidMessageId}\n >\n {this._invalidMessage}\n </db-infotext>\n <span data-visually-hidden=\"true\" role=\"status\">\n {this._voiceOverFallback}\n </span>\n </div>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"select.js","sourceRoot":"","sources":["../../../src/components/select/select.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n DEFAULT_INVALID_MESSAGE,\n DEFAULT_INVALID_MESSAGE_ID_SUFFIX,\n DEFAULT_LABEL,\n DEFAULT_MESSAGE_ID_SUFFIX,\n DEFAULT_PLACEHOLDER_ID_SUFFIX,\n DEFAULT_VALID_MESSAGE,\n DEFAULT_VALID_MESSAGE_ID_SUFFIX,\n} from \"../../shared/constants\";\nimport {\n ChangeEvent,\n ClickEvent,\n InputEvent,\n InteractionEvent,\n} from \"../../shared/model\";\nimport {\n cls,\n delay,\n getBoolean,\n getBooleanAsString,\n getHideProp,\n getOptionKey,\n hasVoiceOver,\n stringPropVisible,\n uuid,\n} from \"../../utils\";\nimport {\n handleFrameworkEventAngular,\n handleFrameworkEventVue,\n} from \"../../utils/form-components\";\nimport { DBInfotext } from \"../infotext/infotext\";\nimport { DBSelectOptionType, DBSelectProps, DBSelectState } from \"./model\";\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-select\",\n})\nexport class DBSelect {\n private _ref!: HTMLSelectElement | any;\n @Prop() id: DBSelectProps[\"id\"];\n @Prop() invalidMessage: DBSelectProps[\"invalidMessage\"];\n @Prop() message: DBSelectProps[\"message\"];\n @Prop() showMessage: DBSelectProps[\"showMessage\"];\n @Prop() value: DBSelectProps[\"value\"];\n @Prop() validMessage: DBSelectProps[\"validMessage\"];\n @Prop() validation: DBSelectProps[\"validation\"];\n @Prop() required: DBSelectProps[\"required\"];\n @Event() click: EventEmitter<\n Parameters<Required<DBSelectProps>[\"onClick\"]>[number]\n > | void;\n @Event() input: EventEmitter<\n Parameters<Required<DBSelectProps>[\"onInput\"]>[number]\n > | void;\n @Event() change: EventEmitter<\n Parameters<Required<DBSelectProps>[\"onChange\"]>[number]\n > | void;\n @Event() blur: EventEmitter<\n Parameters<Required<DBSelectProps>[\"onBlur\"]>[number]\n > | void;\n @Event() focus: EventEmitter<\n Parameters<Required<DBSelectProps>[\"onFocus\"]>[number]\n > | void;\n @Prop({attribute: \"classname\"}) className: DBSelectProps[\"className\"];\n @Prop() variant: DBSelectProps[\"variant\"];\n @Prop() showLabel: DBSelectProps[\"showLabel\"];\n @Prop() showRequiredAsterisk: DBSelectProps[\"showRequiredAsterisk\"];\n @Prop() icon: DBSelectProps[\"icon\"];\n @Prop() showIcon: DBSelectProps[\"showIcon\"];\n @Prop() label: DBSelectProps[\"label\"];\n @Prop() disabled: DBSelectProps[\"disabled\"];\n @Prop() name: DBSelectProps[\"name\"];\n @Prop() size: DBSelectProps[\"size\"];\n @Prop() autocomplete: DBSelectProps[\"autocomplete\"];\n @Prop() multiple: DBSelectProps[\"multiple\"];\n @Prop() ariaDescribedBy: DBSelectProps[\"ariaDescribedBy\"];\n @Prop() options: DBSelectProps[\"options\"];\n @Prop() placeholder: DBSelectProps[\"placeholder\"];\n @Prop() messageIcon: DBSelectProps[\"messageIcon\"];\n @State() _id = undefined;\n @State() _messageId = undefined;\n @State() _validMessageId = undefined;\n @State() _invalidMessageId = undefined;\n @State() _invalidMessage = undefined;\n @State() _placeholderId = \"\";\n @State() _descByIds = undefined;\n @State() _value = \"\";\n @State() initialized = false;\n @State() _voiceOverFallback = \"\";\n\n hasValidState() {\n return !!(this.validMessage ?? this.validation === \"valid\");\n }\n handleValidation() {\n /* For a11y reasons we need to map the correct message with the select */\n if (!this._ref?.validity.valid || this.validation === \"invalid\") {\n this._descByIds = this._invalidMessageId;\n this._invalidMessage =\n this.invalidMessage ||\n this._ref?.validationMessage ||\n DEFAULT_INVALID_MESSAGE;\n if (hasVoiceOver()) {\n this._voiceOverFallback = this._invalidMessage;\n delay(() => (this._voiceOverFallback = \"\"), 1000);\n }\n } else if (\n this.hasValidState() &&\n this._ref?.validity.valid &&\n this.required\n ) {\n this._descByIds = this._validMessageId;\n if (hasVoiceOver()) {\n this._voiceOverFallback = this.validMessage ?? DEFAULT_VALID_MESSAGE;\n delay(() => (this._voiceOverFallback = \"\"), 1000);\n }\n } else if (stringPropVisible(this.message, this.showMessage)) {\n this._descByIds = this._messageId;\n } else {\n this._descByIds = this._placeholderId;\n }\n }\n handleClick(event: ClickEvent<HTMLSelectElement> | any) {\n if (this.click) {\n this.click.emit(event);\n }\n }\n handleInput(event: InputEvent<HTMLSelectElement> | any) {\n if (this.input) {\n this.input.emit(event);\n }\n this.handleValidation();\n }\n handleChange(event: ChangeEvent<HTMLSelectElement> | any) {\n if (this.change) {\n this.change.emit(event);\n }\n this.handleValidation();\n }\n handleBlur(event: InteractionEvent<HTMLSelectElement> | any) {\n if (this.blur) {\n this.blur.emit(event);\n }\n }\n handleFocus(event: InteractionEvent<HTMLSelectElement> | any) {\n if (this.focus) {\n this.focus.emit(event);\n }\n }\n getOptionLabel(option: DBSelectOptionType) {\n return option.label ?? option.value?.toString();\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: HTMLSelectElement | 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 this._invalidMessage =\n this.invalidMessage ||\n this._ref?.validationMessage ||\n DEFAULT_INVALID_MESSAGE;\n }\n\n @Watch(\"_ref\")\n @Watch(\"invalidMessage\")\n watch0() {\n this.watch0Fn();\n }\n\n watch1Fn() {\n if (this._id && this.initialized) {\n const messageId = this._id + DEFAULT_MESSAGE_ID_SUFFIX;\n const placeholderId = this._id + DEFAULT_PLACEHOLDER_ID_SUFFIX;\n this._messageId = messageId;\n this._validMessageId = this._id + DEFAULT_VALID_MESSAGE_ID_SUFFIX;\n this._invalidMessageId = this._id + DEFAULT_INVALID_MESSAGE_ID_SUFFIX;\n this._placeholderId = placeholderId;\n if (stringPropVisible(this.message, this.showMessage)) {\n this._descByIds = messageId;\n } else {\n this._descByIds = placeholderId;\n }\n this.handleValidation();\n this.initialized = false;\n }\n }\n\n @Watch(\"_id\")\n @Watch(\"initialized\")\n watch1() {\n this.watch1Fn();\n }\n\n watch2Fn() {\n this._value = this.value;\n }\n\n @Watch(\"value\")\n watch2() {\n this.watch2Fn();\n }\n\n componentDidLoad() {\n this.enableAttributePassing(this._ref, \"db-select\");\n this.initialized = true;\n const mId = this.id ?? `select-${uuid()}`;\n this._id = mId;\n this._messageId = mId + DEFAULT_MESSAGE_ID_SUFFIX;\n this._validMessageId = mId + DEFAULT_VALID_MESSAGE_ID_SUFFIX;\n this._invalidMessageId = mId + DEFAULT_INVALID_MESSAGE_ID_SUFFIX;\n this._placeholderId = mId + DEFAULT_PLACEHOLDER_ID_SUFFIX;\n this._invalidMessage = this.invalidMessage || DEFAULT_INVALID_MESSAGE;\n this.watch0Fn();\n this.watch1Fn();\n this.watch2Fn();\n }\n\n render() {\n return (\n <div\n class={cls(\"db-select\", this.className)}\n data-variant={this.variant}\n data-hide-label={getHideProp(this.showLabel)}\n data-hide-asterisk={getHideProp(this.showRequiredAsterisk)}\n data-icon={this.icon}\n data-show-icon={getBooleanAsString(this.showIcon)}\n >\n <label htmlFor={this._id}>{this.label ?? DEFAULT_LABEL}</label>\n <select\n aria-invalid={this.validation === \"invalid\"}\n data-custom-validity={this.validation}\n ref={(el: any) => {\n this._ref = el;\n }}\n required={getBoolean(this.required, \"required\")}\n disabled={getBoolean(this.disabled, \"disabled\")}\n id={this._id}\n name={this.name}\n size={this.size}\n /* @ts-ignore */\nvalue={this.value ?? this._value}\n autocomplete={this.autocomplete}\n multiple={this.multiple}\n onInput={(event) => this.handleInput(event)}\n onClick={(event) => this.handleClick(event)}\n onChange={(event) => this.handleChange(event)}\n onBlur={(event) => this.handleBlur(event)}\n onFocus={(event) => this.handleFocus(event)}\n aria-describedby={this.ariaDescribedBy ?? this._descByIds}\n >\n <option hidden={true}></option>\n {this.options?.length ? (\n this.options?.map((option) => (\n <Fragment>\n {option.options ? (\n <optgroup label={this.getOptionLabel(option)} key={undefined}>\n {option.options?.map((optgroupOption) => (\n <option\n value={optgroupOption.value}\n selected={optgroupOption.selected}\n disabled={optgroupOption.disabled}\n key={undefined}\n >\n {this.getOptionLabel(optgroupOption)}\n </option>\n ))}\n </optgroup>\n ) : (\n <option\n value={option.value}\n disabled={option.disabled}\n selected={option.selected}\n key={undefined}\n >\n {this.getOptionLabel(option)}\n </option>\n )}\n </Fragment>\n ))\n ) : (\n <slot></slot>\n )}\n </select>\n <span id={this._placeholderId}>{this.placeholder ?? this.label}</span>\n {stringPropVisible(this.message, this.showMessage) ? (\n <db-infotext\n size=\"small\"\n icon={this.messageIcon}\n id={this._messageId}\n >\n {this.message}\n </db-infotext>\n ) : null}\n {this.hasValidState() ? (\n <db-infotext\n size=\"small\"\n semantic=\"successful\"\n id={this._validMessageId}\n >\n {this.validMessage || DEFAULT_VALID_MESSAGE}\n </db-infotext>\n ) : null}\n <db-infotext\n size=\"small\"\n semantic=\"critical\"\n id={this._invalidMessageId}\n >\n {this._invalidMessage}\n </db-infotext>\n <span data-visually-hidden=\"true\" role=\"status\">\n {this._voiceOverFallback}\n </span>\n </div>\n );\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"model.js","sourceRoot":"","sources":["../../../src/components/switch/model.ts"],"names":[],"mappings":"","sourcesContent":["import { ChangeEventProps, ChangeEventState, EmphasisProps, FocusEventProps, FocusEventState, FormCheckProps, FormProps, FormState, GlobalProps, GlobalState, IconAfterProps, IconProps, SizeProps } from '../../shared/model';\nexport type DBSwitchDefaultProps = {\n /**\n * Add additional icons to indicate active/inactive state.\n */\n visualAid?: boolean | string;\n};\nexport type DBSwitchProps = DBSwitchDefaultProps & GlobalProps & ChangeEventProps<HTMLInputElement> & FocusEventProps<HTMLInputElement> & FormProps & FormCheckProps & EmphasisProps & SizeProps & IconProps & IconAfterProps;\nexport type DBSwitchDefaultState = {};\nexport type DBSwitchState = DBSwitchDefaultState & GlobalState & ChangeEventState<HTMLInputElement> & FocusEventState<HTMLInputElement> & FormState"]}
1
+ {"version":3,"file":"model.js","sourceRoot":"","sources":["../../../src/components/switch/model.ts"],"names":[],"mappings":"","sourcesContent":["import { ChangeEventProps, ChangeEventState, EmphasisProps, FocusEventProps, FocusEventState, FormCheckProps, FormProps, FormState, GlobalProps, GlobalState, IconLeadingProps, IconProps, IconTrailingProps, SizeProps } from '../../shared/model';\nexport type DBSwitchDefaultProps = {\n /**\n * Add additional icons to indicate active/inactive state.\n */\n visualAid?: boolean | string;\n};\nexport type DBSwitchProps = DBSwitchDefaultProps & GlobalProps & ChangeEventProps<HTMLInputElement> & FocusEventProps<HTMLInputElement> & FormProps & FormCheckProps & EmphasisProps & SizeProps & IconProps & IconTrailingProps & IconLeadingProps;\nexport type DBSwitchDefaultState = {};\nexport type DBSwitchState = DBSwitchDefaultState & GlobalState & ChangeEventState<HTMLInputElement> & FocusEventState<HTMLInputElement> & FormState"]}
@@ -62,9 +62,9 @@ export class DBSwitch {
62
62
  }
63
63
  render() {
64
64
  var _a;
65
- return (h("label", { key: '3129d97d493559a3b2965b21453be8a3755bd052', class: cls("db-switch", this.className), "data-visual-aid": getBooleanAsString(this.visualAid), "data-size": this.size, "data-hide-label": getHideProp(this.showLabel), "data-emphasis": this.emphasis, htmlFor: this._id, "data-hide-asterisk": getHideProp(this.showRequiredAsterisk) }, h("input", { key: '6ddca8c6eb199ba1cfa1d6b399937a12faba7ef9', type: "checkbox", role: "switch", id: this._id, ref: (el) => {
65
+ return (h("label", { key: 'ff82fbb6934e2968f5b55ff95d2b8e9370613687', class: cls("db-switch", this.className), "data-visual-aid": getBooleanAsString(this.visualAid), "data-size": this.size, "data-hide-label": getHideProp(this.showLabel), "data-emphasis": this.emphasis, htmlFor: this._id, "data-hide-asterisk": getHideProp(this.showRequiredAsterisk) }, h("input", { key: '857075d64965d9fd3de30fda3fe4e60fdd937284', type: "checkbox", role: "switch", id: this._id, ref: (el) => {
66
66
  this._ref = el;
67
- }, checked: getBoolean(this.checked, "checked"), value: this.value, disabled: getBoolean(this.disabled, "disabled"), "aria-describedby": (_a = this.describedbyid) !== null && _a !== void 0 ? _a : this.ariaDescribedBy, "aria-invalid": this.validation === "invalid", "data-custom-validity": this.validation, name: this.name, required: getBoolean(this.required, "required"), "data-aid-icon": this.icon, "data-aid-icon-after": this.iconAfter, onChange: (event) => this.handleChange(event), onBlur: (event) => this.handleBlur(event), onFocus: (event) => this.handleFocus(event) }), this.label ? this.label : h("slot", null)));
67
+ }, checked: getBoolean(this.checked, "checked"), value: this.value, disabled: getBoolean(this.disabled, "disabled"), "aria-invalid": this.validation === "invalid", "data-custom-validity": this.validation, name: this.name, required: getBoolean(this.required, "required"), "data-aid-icon": (_a = this.iconLeading) !== null && _a !== void 0 ? _a : this.icon, "data-aid-icon-trailing": this.iconTrailing, onChange: (event) => this.handleChange(event), onBlur: (event) => this.handleBlur(event), onFocus: (event) => this.handleFocus(event) }), this.label ? this.label : h("slot", null)));
68
68
  }
69
69
  static get is() { return "db-switch"; }
70
70
  static get properties() {
@@ -319,13 +319,13 @@ export class DBSwitch {
319
319
  "setter": false,
320
320
  "reflect": false
321
321
  },
322
- "describedbyid": {
322
+ "validation": {
323
323
  "type": "string",
324
- "attribute": "describedbyid",
324
+ "attribute": "validation",
325
325
  "mutable": false,
326
326
  "complexType": {
327
- "original": "DBSwitchProps[\"describedbyid\"]",
328
- "resolved": "string",
327
+ "original": "DBSwitchProps[\"validation\"]",
328
+ "resolved": "\"invalid\" | \"no-validation\" | \"valid\"",
329
329
  "references": {
330
330
  "DBSwitchProps": {
331
331
  "location": "import",
@@ -344,12 +344,12 @@ export class DBSwitch {
344
344
  "setter": false,
345
345
  "reflect": false
346
346
  },
347
- "ariaDescribedBy": {
347
+ "name": {
348
348
  "type": "string",
349
- "attribute": "aria-described-by",
349
+ "attribute": "name",
350
350
  "mutable": false,
351
351
  "complexType": {
352
- "original": "DBSwitchProps[\"ariaDescribedBy\"]",
352
+ "original": "DBSwitchProps[\"name\"]",
353
353
  "resolved": "string",
354
354
  "references": {
355
355
  "DBSwitchProps": {
@@ -369,13 +369,13 @@ export class DBSwitch {
369
369
  "setter": false,
370
370
  "reflect": false
371
371
  },
372
- "validation": {
373
- "type": "string",
374
- "attribute": "validation",
372
+ "required": {
373
+ "type": "any",
374
+ "attribute": "required",
375
375
  "mutable": false,
376
376
  "complexType": {
377
- "original": "DBSwitchProps[\"validation\"]",
378
- "resolved": "\"invalid\" | \"no-validation\" | \"valid\"",
377
+ "original": "DBSwitchProps[\"required\"]",
378
+ "resolved": "boolean | string",
379
379
  "references": {
380
380
  "DBSwitchProps": {
381
381
  "location": "import",
@@ -394,38 +394,13 @@ export class DBSwitch {
394
394
  "setter": false,
395
395
  "reflect": false
396
396
  },
397
- "name": {
397
+ "iconLeading": {
398
398
  "type": "string",
399
- "attribute": "name",
400
- "mutable": false,
401
- "complexType": {
402
- "original": "DBSwitchProps[\"name\"]",
403
- "resolved": "string",
404
- "references": {
405
- "DBSwitchProps": {
406
- "location": "import",
407
- "path": "./model",
408
- "id": "src/components/switch/model.ts::DBSwitchProps"
409
- }
410
- }
411
- },
412
- "required": false,
413
- "optional": false,
414
- "docs": {
415
- "tags": [],
416
- "text": ""
417
- },
418
- "getter": false,
419
- "setter": false,
420
- "reflect": false
421
- },
422
- "required": {
423
- "type": "any",
424
- "attribute": "required",
399
+ "attribute": "icon-leading",
425
400
  "mutable": false,
426
401
  "complexType": {
427
- "original": "DBSwitchProps[\"required\"]",
428
- "resolved": "boolean | string",
402
+ "original": "DBSwitchProps[\"iconLeading\"]",
403
+ "resolved": "BaseIconTypes | LooseAutocomplete",
429
404
  "references": {
430
405
  "DBSwitchProps": {
431
406
  "location": "import",
@@ -469,12 +444,12 @@ export class DBSwitch {
469
444
  "setter": false,
470
445
  "reflect": false
471
446
  },
472
- "iconAfter": {
447
+ "iconTrailing": {
473
448
  "type": "string",
474
- "attribute": "icon-after",
449
+ "attribute": "icon-trailing",
475
450
  "mutable": false,
476
451
  "complexType": {
477
- "original": "DBSwitchProps[\"iconAfter\"]",
452
+ "original": "DBSwitchProps[\"iconTrailing\"]",
478
453
  "resolved": "BaseIconTypes | LooseAutocomplete",
479
454
  "references": {
480
455
  "DBSwitchProps": {
@@ -1 +1 @@
1
- {"version":3,"file":"switch.js","sourceRoot":"","sources":["../../../src/components/switch/switch.tsx"],"names":[],"mappings":"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","sourcesContent":["import { ChangeEvent, InteractionEvent } from \"../../shared/model\";\nimport {\n cls,\n getBoolean,\n getBooleanAsString,\n getHideProp,\n uuid,\n} from \"../../utils\";\nimport {\n handleFrameworkEventAngular,\n handleFrameworkEventVue,\n} from \"../../utils/form-components\";\nimport { DBSwitchProps, DBSwitchState } from \"./model\";\n\nimport {\n Component,\n h,\n Fragment,\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-switch\",\n})\nexport class DBSwitch {\n private _ref!: HTMLInputElement | any;\n @Prop() id: DBSwitchProps[\"id\"];\n @Event() change: EventEmitter<\n Parameters<Required<DBSwitchProps>[\"onChange\"]>[number]\n > | void;\n @Event() blur: EventEmitter<\n Parameters<Required<DBSwitchProps>[\"onBlur\"]>[number]\n > | void;\n @Event() focus: EventEmitter<\n Parameters<Required<DBSwitchProps>[\"onFocus\"]>[number]\n > | void;\n @Prop() visualAid: DBSwitchProps[\"visualAid\"];\n @Prop() size: DBSwitchProps[\"size\"];\n @Prop() showLabel: DBSwitchProps[\"showLabel\"];\n @Prop() emphasis: DBSwitchProps[\"emphasis\"];\n @Prop() showRequiredAsterisk: DBSwitchProps[\"showRequiredAsterisk\"];\n @Prop({attribute: \"classname\"}) className: DBSwitchProps[\"className\"];\n @Prop() checked: DBSwitchProps[\"checked\"];\n @Prop() value: DBSwitchProps[\"value\"];\n @Prop() disabled: DBSwitchProps[\"disabled\"];\n @Prop() describedbyid: DBSwitchProps[\"describedbyid\"];\n @Prop() ariaDescribedBy: DBSwitchProps[\"ariaDescribedBy\"];\n @Prop() validation: DBSwitchProps[\"validation\"];\n @Prop() name: DBSwitchProps[\"name\"];\n @Prop() required: DBSwitchProps[\"required\"];\n @Prop() icon: DBSwitchProps[\"icon\"];\n @Prop() iconAfter: DBSwitchProps[\"iconAfter\"];\n @Prop() label: DBSwitchProps[\"label\"];\n @State() _id = undefined;\n\n handleChange(event: ChangeEvent<HTMLInputElement>) {\n if (this.change) {\n this.change.emit(event);\n }\n }\n handleBlur(event: InteractionEvent<HTMLInputElement>) {\n if (this.blur) {\n this.blur.emit(event);\n }\n }\n handleFocus(event: InteractionEvent<HTMLInputElement>) {\n if (this.focus) {\n this.focus.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: HTMLInputElement | 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 componentDidLoad() {\n this.enableAttributePassing(this._ref, \"db-switch\");\n this._id = this.id ?? `switch-${uuid()}`;\n }\n\n render() {\n return (\n <label\n class={cls(\"db-switch\", this.className)}\n data-visual-aid={getBooleanAsString(this.visualAid)}\n data-size={this.size}\n data-hide-label={getHideProp(this.showLabel)}\n data-emphasis={this.emphasis}\n htmlFor={this._id}\n data-hide-asterisk={getHideProp(this.showRequiredAsterisk)}\n >\n <input\n type=\"checkbox\"\n role=\"switch\"\n id={this._id}\n ref={(el: any) => {\n this._ref = el;\n }}\n checked={getBoolean(this.checked, \"checked\")}\n value={this.value}\n disabled={getBoolean(this.disabled, \"disabled\")}\n aria-describedby={this.describedbyid ?? this.ariaDescribedBy}\n aria-invalid={this.validation === \"invalid\"}\n data-custom-validity={this.validation}\n name={this.name}\n required={getBoolean(this.required, \"required\")}\n data-aid-icon={this.icon}\n data-aid-icon-after={this.iconAfter}\n onChange={(event) => this.handleChange(event)}\n onBlur={(event) => this.handleBlur(event)}\n onFocus={(event) => this.handleFocus(event)}\n />\n {this.label ? this.label : <slot></slot>}\n </label>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"switch.js","sourceRoot":"","sources":["../../../src/components/switch/switch.tsx"],"names":[],"mappings":"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","sourcesContent":["import { ChangeEvent, InteractionEvent } from \"../../shared/model\";\nimport {\n cls,\n getBoolean,\n getBooleanAsString,\n getHideProp,\n uuid,\n} from \"../../utils\";\nimport {\n handleFrameworkEventAngular,\n handleFrameworkEventVue,\n} from \"../../utils/form-components\";\nimport { DBSwitchProps, DBSwitchState } from \"./model\";\n\nimport {\n Component,\n h,\n Fragment,\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-switch\",\n})\nexport class DBSwitch {\n private _ref!: HTMLInputElement | any;\n @Prop() id: DBSwitchProps[\"id\"];\n @Event() change: EventEmitter<\n Parameters<Required<DBSwitchProps>[\"onChange\"]>[number]\n > | void;\n @Event() blur: EventEmitter<\n Parameters<Required<DBSwitchProps>[\"onBlur\"]>[number]\n > | void;\n @Event() focus: EventEmitter<\n Parameters<Required<DBSwitchProps>[\"onFocus\"]>[number]\n > | void;\n @Prop() visualAid: DBSwitchProps[\"visualAid\"];\n @Prop() size: DBSwitchProps[\"size\"];\n @Prop() showLabel: DBSwitchProps[\"showLabel\"];\n @Prop() emphasis: DBSwitchProps[\"emphasis\"];\n @Prop() showRequiredAsterisk: DBSwitchProps[\"showRequiredAsterisk\"];\n @Prop({attribute: \"classname\"}) className: DBSwitchProps[\"className\"];\n @Prop() checked: DBSwitchProps[\"checked\"];\n @Prop() value: DBSwitchProps[\"value\"];\n @Prop() disabled: DBSwitchProps[\"disabled\"];\n @Prop() validation: DBSwitchProps[\"validation\"];\n @Prop() name: DBSwitchProps[\"name\"];\n @Prop() required: DBSwitchProps[\"required\"];\n @Prop() iconLeading: DBSwitchProps[\"iconLeading\"];\n @Prop() icon: DBSwitchProps[\"icon\"];\n @Prop() iconTrailing: DBSwitchProps[\"iconTrailing\"];\n @Prop() label: DBSwitchProps[\"label\"];\n @State() _id = undefined;\n\n handleChange(event: ChangeEvent<HTMLInputElement>) {\n if (this.change) {\n this.change.emit(event);\n }\n }\n handleBlur(event: InteractionEvent<HTMLInputElement>) {\n if (this.blur) {\n this.blur.emit(event);\n }\n }\n handleFocus(event: InteractionEvent<HTMLInputElement>) {\n if (this.focus) {\n this.focus.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: HTMLInputElement | 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 componentDidLoad() {\n this.enableAttributePassing(this._ref, \"db-switch\");\n this._id = this.id ?? `switch-${uuid()}`;\n }\n\n render() {\n return (\n <label\n class={cls(\"db-switch\", this.className)}\n data-visual-aid={getBooleanAsString(this.visualAid)}\n data-size={this.size}\n data-hide-label={getHideProp(this.showLabel)}\n data-emphasis={this.emphasis}\n htmlFor={this._id}\n data-hide-asterisk={getHideProp(this.showRequiredAsterisk)}\n >\n <input\n type=\"checkbox\"\n role=\"switch\"\n id={this._id}\n ref={(el: any) => {\n this._ref = el;\n }}\n checked={getBoolean(this.checked, \"checked\")}\n value={this.value}\n disabled={getBoolean(this.disabled, \"disabled\")}\n aria-invalid={this.validation === \"invalid\"}\n data-custom-validity={this.validation}\n name={this.name}\n required={getBoolean(this.required, \"required\")}\n data-aid-icon={this.iconLeading ?? this.icon}\n data-aid-icon-trailing={this.iconTrailing}\n onChange={(event) => this.handleChange(event)}\n onBlur={(event) => this.handleBlur(event)}\n onFocus={(event) => this.handleFocus(event)}\n />\n {this.label ? this.label : <slot></slot>}\n </label>\n );\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"model.js","sourceRoot":"","sources":["../../../src/components/tab-item/model.ts"],"names":[],"mappings":"","sourcesContent":["import { ActiveProps, AriaControlsProps, ChangeEventProps, ChangeEventState, GlobalProps, GlobalState, IconAfterProps, IconProps, InitializedState, NameProps, NameState, ShowIconProps } from '../../shared/model';\nexport type DBTabItemDefaultProps = {\n /**\n * To control the component\n */\n checked?: boolean | string;\n\n /**\n * The disabled attribute can be set to keep a user from clicking on the tab-item.\n */\n disabled?: boolean | string;\n /**\n * The label of the tab-item, if you don't want to use children.\n */\n label?: string;\n /**\n * Define the text next to the icon specified via the icon Property to get hidden.\n */\n noText?: boolean | string;\n};\nexport type DBTabItemProps = GlobalProps & DBTabItemDefaultProps & IconProps & IconAfterProps & ActiveProps & AriaControlsProps & ChangeEventProps<HTMLInputElement> & ShowIconProps & NameProps;\nexport type DBTabItemDefaultState = {\n _selected: boolean;\n};\nexport type DBTabItemState = DBTabItemDefaultState & GlobalState & ChangeEventState<HTMLInputElement> & InitializedState & NameState"]}
1
+ {"version":3,"file":"model.js","sourceRoot":"","sources":["../../../src/components/tab-item/model.ts"],"names":[],"mappings":"","sourcesContent":["import { ActiveProps, ChangeEventProps, ChangeEventState, GlobalProps, GlobalState, IconLeadingProps, IconProps, IconTrailingProps, InitializedState, NameProps, NameState, ShowIconLeadingProps, ShowIconProps, ShowIconTrailingProps } from '../../shared/model';\nexport type DBTabItemDefaultProps = {\n /**\n * To control the component\n */\n checked?: boolean | string;\n\n /**\n * The disabled attribute can be set to keep a user from clicking on the tab-item.\n */\n disabled?: boolean | string;\n /**\n * The label of the tab-item, if you don't want to use children.\n */\n label?: string;\n /**\n * Define the text next to the icon specified via the icon Property to get hidden.\n */\n noText?: boolean | string;\n};\nexport type DBTabItemProps = GlobalProps & DBTabItemDefaultProps & IconProps & IconTrailingProps & IconLeadingProps & ShowIconLeadingProps & ShowIconTrailingProps & ActiveProps & ChangeEventProps<HTMLInputElement> & ShowIconProps & NameProps;\nexport type DBTabItemDefaultState = {\n _selected: boolean;\n};\nexport type DBTabItemState = DBTabItemDefaultState & GlobalState & ChangeEventState<HTMLInputElement> & InitializedState & NameState"]}
@@ -1,4 +1,4 @@
1
- import { cls, getBoolean, getBooleanAsString, getHideProp } from "../../utils";
1
+ import { cls, getBoolean, getBooleanAsString } from "../../utils";
2
2
  import { h, } from "@stencil/core";
3
3
  /**
4
4
  * @slot children - This is a default/unnamed slot
@@ -89,9 +89,10 @@ export class DBTabItem {
89
89
  this.watch1Fn();
90
90
  }
91
91
  render() {
92
- return (h("li", { key: 'f4f3b5f013ca108649bc2bbefa982ea9653b93f1', class: cls("db-tab-item", this.className), role: "none" }, h("label", { key: 'ff9ed2f33438b53315449c1c739eafcbd3e2bf99', htmlFor: this.id, "data-icon": this.icon, "data-icon-after": this.iconAfter, "data-hide-icon": getHideProp(this.showIcon), "data-hide-icon-after": getHideProp(this.showIcon), "data-no-text": getBooleanAsString(this.noText) }, h("input", { key: '9b2836946d661d4ea193cfacd1e4c0b9338312e7', type: "radio", role: "tab", disabled: getBoolean(this.disabled, "disabled"), "aria-selected": this._selected, "aria-controls": this.controls, checked: getBoolean(this.checked, "checked"), ref: (el) => {
92
+ var _a, _b;
93
+ return (h("li", { key: '8e75b4c0074a2ba6c2714c61496d48d23b34d4f2', class: cls("db-tab-item", this.className), role: "none" }, h("label", { key: 'f34a91270dd1888b0f5432cb8de754ba94a1f990', htmlFor: this.id, "data-icon": (_a = this.iconLeading) !== null && _a !== void 0 ? _a : this.icon, "data-icon-trailing": this.iconTrailing, "data-show-icon": getBooleanAsString((_b = this.showIconLeading) !== null && _b !== void 0 ? _b : this.showIcon), "data-show-icon-trailing": getBooleanAsString(this.showIconTrailing), "data-no-text": getBooleanAsString(this.noText) }, h("input", { key: 'd93dbacfce405d658f611d5e11ce09ac17633c43', type: "radio", role: "tab", disabled: getBoolean(this.disabled, "disabled"), "aria-selected": this._selected, checked: getBoolean(this.checked, "checked"), ref: (el) => {
93
94
  this._ref = el;
94
- }, name: this._name, id: this.id, onInput: (event) => this.handleChange(event) }), this.label ? this.label : null, h("slot", { key: 'bf9d59022ad9bb3e07fed8101cddf4e802f2d333' }))));
95
+ }, name: this._name, id: this.id, onInput: (event) => this.handleChange(event) }), this.label ? this.label : null, h("slot", { key: '81b98f7461da602f12818eda38320ebbf11af356' }))));
95
96
  }
96
97
  static get is() { return "db-tab-item"; }
97
98
  static get properties() {
@@ -196,6 +197,31 @@ export class DBTabItem {
196
197
  "setter": false,
197
198
  "reflect": false
198
199
  },
200
+ "iconLeading": {
201
+ "type": "string",
202
+ "attribute": "icon-leading",
203
+ "mutable": false,
204
+ "complexType": {
205
+ "original": "DBTabItemProps[\"iconLeading\"]",
206
+ "resolved": "BaseIconTypes | LooseAutocomplete",
207
+ "references": {
208
+ "DBTabItemProps": {
209
+ "location": "import",
210
+ "path": "./model",
211
+ "id": "src/components/tab-item/model.ts::DBTabItemProps"
212
+ }
213
+ }
214
+ },
215
+ "required": false,
216
+ "optional": false,
217
+ "docs": {
218
+ "tags": [],
219
+ "text": ""
220
+ },
221
+ "getter": false,
222
+ "setter": false,
223
+ "reflect": false
224
+ },
199
225
  "icon": {
200
226
  "type": "string",
201
227
  "attribute": "icon",
@@ -221,12 +247,12 @@ export class DBTabItem {
221
247
  "setter": false,
222
248
  "reflect": false
223
249
  },
224
- "iconAfter": {
250
+ "iconTrailing": {
225
251
  "type": "string",
226
- "attribute": "icon-after",
252
+ "attribute": "icon-trailing",
227
253
  "mutable": false,
228
254
  "complexType": {
229
- "original": "DBTabItemProps[\"iconAfter\"]",
255
+ "original": "DBTabItemProps[\"iconTrailing\"]",
230
256
  "resolved": "BaseIconTypes | LooseAutocomplete",
231
257
  "references": {
232
258
  "DBTabItemProps": {
@@ -246,6 +272,31 @@ export class DBTabItem {
246
272
  "setter": false,
247
273
  "reflect": false
248
274
  },
275
+ "showIconLeading": {
276
+ "type": "any",
277
+ "attribute": "show-icon-leading",
278
+ "mutable": false,
279
+ "complexType": {
280
+ "original": "DBTabItemProps[\"showIconLeading\"]",
281
+ "resolved": "boolean | string",
282
+ "references": {
283
+ "DBTabItemProps": {
284
+ "location": "import",
285
+ "path": "./model",
286
+ "id": "src/components/tab-item/model.ts::DBTabItemProps"
287
+ }
288
+ }
289
+ },
290
+ "required": false,
291
+ "optional": false,
292
+ "docs": {
293
+ "tags": [],
294
+ "text": ""
295
+ },
296
+ "getter": false,
297
+ "setter": false,
298
+ "reflect": false
299
+ },
249
300
  "showIcon": {
250
301
  "type": "any",
251
302
  "attribute": "show-icon",
@@ -271,12 +322,12 @@ export class DBTabItem {
271
322
  "setter": false,
272
323
  "reflect": false
273
324
  },
274
- "noText": {
325
+ "showIconTrailing": {
275
326
  "type": "any",
276
- "attribute": "no-text",
327
+ "attribute": "show-icon-trailing",
277
328
  "mutable": false,
278
329
  "complexType": {
279
- "original": "DBTabItemProps[\"noText\"]",
330
+ "original": "DBTabItemProps[\"showIconTrailing\"]",
280
331
  "resolved": "boolean | string",
281
332
  "references": {
282
333
  "DBTabItemProps": {
@@ -296,12 +347,12 @@ export class DBTabItem {
296
347
  "setter": false,
297
348
  "reflect": false
298
349
  },
299
- "disabled": {
350
+ "noText": {
300
351
  "type": "any",
301
- "attribute": "disabled",
352
+ "attribute": "no-text",
302
353
  "mutable": false,
303
354
  "complexType": {
304
- "original": "DBTabItemProps[\"disabled\"]",
355
+ "original": "DBTabItemProps[\"noText\"]",
305
356
  "resolved": "boolean | string",
306
357
  "references": {
307
358
  "DBTabItemProps": {
@@ -321,13 +372,13 @@ export class DBTabItem {
321
372
  "setter": false,
322
373
  "reflect": false
323
374
  },
324
- "controls": {
325
- "type": "string",
326
- "attribute": "controls",
375
+ "disabled": {
376
+ "type": "any",
377
+ "attribute": "disabled",
327
378
  "mutable": false,
328
379
  "complexType": {
329
- "original": "DBTabItemProps[\"controls\"]",
330
- "resolved": "string",
380
+ "original": "DBTabItemProps[\"disabled\"]",
381
+ "resolved": "boolean | string",
331
382
  "references": {
332
383
  "DBTabItemProps": {
333
384
  "location": "import",
@@ -1 +1 @@
1
- {"version":3,"file":"tab-item.js","sourceRoot":"","sources":["../../../src/components/tab-item/tab-item.tsx"],"names":[],"mappings":"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","sourcesContent":["import { cls, getBoolean, getBooleanAsString, getHideProp } from \"../../utils\";\nimport {\n handleFrameworkEventAngular,\n handleFrameworkEventVue,\n} from \"../../utils/form-components\";\nimport type { DBTabItemProps, DBTabItemState } from \"./model\";\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-tab-item\",\n})\nexport class DBTabItem {\n private _ref!: HTMLInputElement | any;\n @Prop() active: DBTabItemProps[\"active\"];\n @Prop() name: DBTabItemProps[\"name\"];\n @Event() change: EventEmitter<\n Parameters<Required<DBTabItemProps>[\"onChange\"]>[number]\n > | void;\n @Prop({attribute: \"classname\"}) className: DBTabItemProps[\"className\"];\n @Prop() id: DBTabItemProps[\"id\"];\n @Prop() icon: DBTabItemProps[\"icon\"];\n @Prop() iconAfter: DBTabItemProps[\"iconAfter\"];\n @Prop() showIcon: DBTabItemProps[\"showIcon\"];\n @Prop() noText: DBTabItemProps[\"noText\"];\n @Prop() disabled: DBTabItemProps[\"disabled\"];\n @Prop() controls: DBTabItemProps[\"controls\"];\n @Prop() checked: DBTabItemProps[\"checked\"];\n @Prop() label: DBTabItemProps[\"label\"];\n @State() _selected = false;\n @State() _name = undefined;\n @State() initialized = false;\n\n handleNameAttribute() {\n if (this._ref) {\n const setAttribute = this._ref.setAttribute;\n this._ref.setAttribute = (attribute: string, value: string) => {\n setAttribute.call(this._ref, attribute, value);\n if (attribute === \"name\") {\n this._name = value;\n }\n };\n }\n }\n handleChange(event: any) {\n event.stopPropagation();\n if (this.change) {\n this.change.emit(event);\n }\n\n // We have different ts types in different frameworks, so we need to use any here\n\n const selected = (event.target as any)?.[\"checked\"];\n this._selected = getBooleanAsString(selected);\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.initialized && this._ref) {\n if (this.active) {\n this._ref.click();\n }\n this.initialized = false;\n }\n }\n\n @Watch(\"_ref\")\n @Watch(\"initialized\")\n watch0() {\n this.watch0Fn();\n }\n\n watch1Fn() {\n if (this.name) {\n this._name = this.name;\n }\n }\n\n @Watch(\"name\")\n watch1() {\n this.watch1Fn();\n }\n\n componentDidLoad() {\n this.enableAttributePassing(this._ref, \"db-tab-item\");\n this.initialized = true;\n this.watch0Fn();\n this.watch1Fn();\n }\n\n render() {\n return (\n <li class={cls(\"db-tab-item\", this.className)} role=\"none\">\n <label\n htmlFor={this.id}\n data-icon={this.icon}\n data-icon-after={this.iconAfter}\n data-hide-icon={getHideProp(this.showIcon)}\n data-hide-icon-after={getHideProp(this.showIcon)}\n data-no-text={getBooleanAsString(this.noText)}\n >\n <input\n type=\"radio\"\n role=\"tab\"\n disabled={getBoolean(this.disabled, \"disabled\")}\n aria-selected={this._selected}\n aria-controls={this.controls}\n checked={getBoolean(this.checked, \"checked\")}\n ref={(el: any) => {\n this._ref = el;\n }}\n name={this._name}\n id={this.id}\n onInput={(event) => this.handleChange(event)}\n />\n {this.label ? this.label : null}\n <slot></slot>\n </label>\n </li>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"tab-item.js","sourceRoot":"","sources":["../../../src/components/tab-item/tab-item.tsx"],"names":[],"mappings":"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","sourcesContent":["import { cls, getBoolean, getBooleanAsString } from \"../../utils\";\nimport {\n handleFrameworkEventAngular,\n handleFrameworkEventVue,\n} from \"../../utils/form-components\";\nimport type { DBTabItemProps, DBTabItemState } from \"./model\";\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-tab-item\",\n})\nexport class DBTabItem {\n private _ref!: HTMLInputElement | any;\n @Prop() active: DBTabItemProps[\"active\"];\n @Prop() name: DBTabItemProps[\"name\"];\n @Event() change: EventEmitter<\n Parameters<Required<DBTabItemProps>[\"onChange\"]>[number]\n > | void;\n @Prop({attribute: \"classname\"}) className: DBTabItemProps[\"className\"];\n @Prop() id: DBTabItemProps[\"id\"];\n @Prop() iconLeading: DBTabItemProps[\"iconLeading\"];\n @Prop() icon: DBTabItemProps[\"icon\"];\n @Prop() iconTrailing: DBTabItemProps[\"iconTrailing\"];\n @Prop() showIconLeading: DBTabItemProps[\"showIconLeading\"];\n @Prop() showIcon: DBTabItemProps[\"showIcon\"];\n @Prop() showIconTrailing: DBTabItemProps[\"showIconTrailing\"];\n @Prop() noText: DBTabItemProps[\"noText\"];\n @Prop() disabled: DBTabItemProps[\"disabled\"];\n @Prop() checked: DBTabItemProps[\"checked\"];\n @Prop() label: DBTabItemProps[\"label\"];\n @State() _selected = false;\n @State() _name = undefined;\n @State() initialized = false;\n\n handleNameAttribute() {\n if (this._ref) {\n const setAttribute = this._ref.setAttribute;\n this._ref.setAttribute = (attribute: string, value: string) => {\n setAttribute.call(this._ref, attribute, value);\n if (attribute === \"name\") {\n this._name = value;\n }\n };\n }\n }\n handleChange(event: any) {\n event.stopPropagation();\n if (this.change) {\n this.change.emit(event);\n }\n\n // We have different ts types in different frameworks, so we need to use any here\n\n const selected = (event.target as any)?.[\"checked\"];\n this._selected = getBooleanAsString(selected);\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.initialized && this._ref) {\n if (this.active) {\n this._ref.click();\n }\n this.initialized = false;\n }\n }\n\n @Watch(\"_ref\")\n @Watch(\"initialized\")\n watch0() {\n this.watch0Fn();\n }\n\n watch1Fn() {\n if (this.name) {\n this._name = this.name;\n }\n }\n\n @Watch(\"name\")\n watch1() {\n this.watch1Fn();\n }\n\n componentDidLoad() {\n this.enableAttributePassing(this._ref, \"db-tab-item\");\n this.initialized = true;\n this.watch0Fn();\n this.watch1Fn();\n }\n\n render() {\n return (\n <li class={cls(\"db-tab-item\", this.className)} role=\"none\">\n <label\n htmlFor={this.id}\n data-icon={this.iconLeading ?? this.icon}\n data-icon-trailing={this.iconTrailing}\n data-show-icon={getBooleanAsString(\n this.showIconLeading ?? this.showIcon\n )}\n data-show-icon-trailing={getBooleanAsString(this.showIconTrailing)}\n data-no-text={getBooleanAsString(this.noText)}\n >\n <input\n type=\"radio\"\n role=\"tab\"\n disabled={getBoolean(this.disabled, \"disabled\")}\n aria-selected={this._selected}\n checked={getBoolean(this.checked, \"checked\")}\n ref={(el: any) => {\n this._ref = el;\n }}\n name={this._name}\n id={this.id}\n onInput={(event) => this.handleChange(event)}\n />\n {this.label ? this.label : null}\n <slot></slot>\n </label>\n </li>\n );\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"model.js","sourceRoot":"","sources":["../../../src/components/tab-panel/model.ts"],"names":[],"mappings":"","sourcesContent":["import { AriaLabelledByProps, GlobalProps, GlobalState } from '../../shared/model';\nexport type DBTabPanelDefaultProps = {\n /**\n * The content if you don't want to use children.\n */\n content?: string;\n};\nexport type DBTabPanelProps = DBTabPanelDefaultProps & GlobalProps & AriaLabelledByProps;\nexport type DBTabPanelDefaultState = {};\nexport type DBTabPanelState = DBTabPanelDefaultState & GlobalState"]}
1
+ {"version":3,"file":"model.js","sourceRoot":"","sources":["../../../src/components/tab-panel/model.ts"],"names":[],"mappings":"","sourcesContent":["import { GlobalProps, GlobalState } from '../../shared/model';\nexport type DBTabPanelDefaultProps = {\n /**\n * The content if you don't want to use children.\n */\n content?: string;\n};\nexport type DBTabPanelProps = DBTabPanelDefaultProps & GlobalProps;\nexport type DBTabPanelDefaultState = {};\nexport type DBTabPanelState = DBTabPanelDefaultState & GlobalState"]}
@@ -41,9 +41,9 @@ export class DBTabPanel {
41
41
  this.enableAttributePassing(this._ref, "db-tab-panel");
42
42
  }
43
43
  render() {
44
- return (h("section", { key: '29a6d00d8e5bbfc9d5d11d18422fa33410256080', class: cls("db-tab-panel", this.className), role: "tabpanel", ref: (el) => {
44
+ return (h("section", { key: 'e9690268e2b088cc1944d3214ac99e42c618de9c', class: cls("db-tab-panel", this.className), role: "tabpanel", ref: (el) => {
45
45
  this._ref = el;
46
- }, id: this.id, "aria-labelledby": this.labelledBy }, this.content ? this.content : null, h("slot", { key: 'e4d4ed1006f13876a57f6d064c39e293b6c26b1c' })));
46
+ }, id: this.id }, this.content ? this.content : null, h("slot", { key: 'd8b816054f67f043081c9e4f827903f557b9378f' })));
47
47
  }
48
48
  static get is() { return "db-tab-panel"; }
49
49
  static get properties() {
@@ -98,31 +98,6 @@ export class DBTabPanel {
98
98
  "setter": false,
99
99
  "reflect": false
100
100
  },
101
- "labelledBy": {
102
- "type": "string",
103
- "attribute": "labelled-by",
104
- "mutable": false,
105
- "complexType": {
106
- "original": "DBTabPanelProps[\"labelledBy\"]",
107
- "resolved": "string",
108
- "references": {
109
- "DBTabPanelProps": {
110
- "location": "import",
111
- "path": "./model",
112
- "id": "src/components/tab-panel/model.ts::DBTabPanelProps"
113
- }
114
- }
115
- },
116
- "required": false,
117
- "optional": false,
118
- "docs": {
119
- "tags": [],
120
- "text": ""
121
- },
122
- "getter": false,
123
- "setter": false,
124
- "reflect": false
125
- },
126
101
  "content": {
127
102
  "type": "string",
128
103
  "attribute": "content",