@dubai-design-system/components-js 5.0.3 → 5.1.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 (316) hide show
  1. package/CHANGELOG.md +233 -1
  2. package/MIGRATION.md +423 -0
  3. package/dist/cjs/dda-accordion.cjs.entry.js +12 -7
  4. package/dist/cjs/dda-alert.cjs.entry.js +20 -3
  5. package/dist/cjs/dda-attach-file.cjs.entry.js +24 -8
  6. package/dist/cjs/dda-avatar.cjs.entry.js +23 -12
  7. package/dist/cjs/dda-banner.cjs.entry.js +14 -5
  8. package/dist/cjs/dda-breadcrumb.cjs.entry.js +22 -10
  9. package/dist/cjs/dda-button.cjs.entry.js +16 -9
  10. package/dist/cjs/dda-checkbox.cjs.entry.js +5 -4
  11. package/dist/cjs/dda-chip.cjs.entry.js +8 -3
  12. package/dist/cjs/dda-credit-card.cjs.entry.js +5 -3
  13. package/dist/cjs/dda-creditcard-field.cjs.entry.js +26 -8
  14. package/dist/cjs/dda-dropdown.cjs.entry.js +31 -5
  15. package/dist/cjs/dda-footer.cjs.entry.js +9 -3
  16. package/dist/cjs/dda-header.cjs.entry.js +88 -8
  17. package/dist/cjs/dda-home-banner.cjs.entry.js +11 -5
  18. package/dist/cjs/dda-horizontal-stepper.cjs.entry.js +22 -5
  19. package/dist/cjs/dda-input.cjs.entry.js +17 -10
  20. package/dist/cjs/dda-link-button_2.cjs.entry.js +21 -13
  21. package/dist/cjs/dda-number-field.cjs.entry.js +20 -8
  22. package/dist/cjs/dda-pagination.cjs.entry.js +21 -11
  23. package/dist/cjs/dda-phonefield.cjs.entry.js +27 -9
  24. package/dist/cjs/dda-progressbar.cjs.entry.js +8 -3
  25. package/dist/cjs/dda-range-slider.cjs.entry.js +15 -3
  26. package/dist/cjs/dda-search-input.cjs.entry.js +27 -12
  27. package/dist/cjs/dda-segmented-tabs.cjs.entry.js +54 -6
  28. package/dist/cjs/dda-select.cjs.entry.js +40 -8
  29. package/dist/cjs/dda-sticky-footer.cjs.entry.js +20 -3
  30. package/dist/cjs/dda-tabs.cjs.entry.js +10 -4
  31. package/dist/cjs/dda-textarea.cjs.entry.js +22 -12
  32. package/dist/cjs/dda-toggle.cjs.entry.js +5 -4
  33. package/dist/cjs/dda-tooltip.cjs.entry.js +6 -4
  34. package/dist/cjs/dda-ui-card.cjs.entry.js +19 -2
  35. package/dist/cjs/dda-vertical-stepper.cjs.entry.js +23 -3
  36. package/dist/cjs/dda.cjs.js +2 -2
  37. package/dist/cjs/index-Bgd2iAET.js +2116 -0
  38. package/dist/cjs/loader.cjs.js +2 -2
  39. package/dist/cjs/unique-id-DahNGdQy.js +14 -0
  40. package/dist/collection/collection-manifest.json +1 -1
  41. package/dist/collection/components/dda-accordion/dda-accordion.js +16 -11
  42. package/dist/collection/components/dda-alert/dda-alert.js +74 -17
  43. package/dist/collection/components/dda-alert/dda-alert.stories.js +2 -8
  44. package/dist/collection/components/dda-attach-file/dda-attach-file.js +35 -19
  45. package/dist/collection/components/dda-attach-file/dda-attach-file.stories.js +0 -9
  46. package/dist/collection/components/dda-avatar/dda-avatar.js +53 -25
  47. package/dist/collection/components/dda-avatar/dda-avatar.stories.js +1 -1
  48. package/dist/collection/components/dda-banner/dda-banner.css +35 -0
  49. package/dist/collection/components/dda-banner/dda-banner.js +34 -5
  50. package/dist/collection/components/dda-breadcrumb/dda-breadcrumb.js +49 -12
  51. package/dist/collection/components/dda-button/dda-button.js +29 -22
  52. package/dist/collection/components/dda-checkbox/dda-checkbox.css +13 -0
  53. package/dist/collection/components/dda-checkbox/dda-checkbox.js +13 -12
  54. package/dist/collection/components/dda-checkbox/dda-checkbox.stories.js +0 -11
  55. package/dist/collection/components/dda-chip/dda-chip.js +34 -9
  56. package/dist/collection/components/dda-chip/dda-chip.stories.js +0 -11
  57. package/dist/collection/components/dda-credit-card/dda-credit-card.js +10 -8
  58. package/dist/collection/components/dda-creditcard-field/dda-creditcard-field.js +58 -23
  59. package/dist/collection/components/dda-creditcard-field/dda-creditcard-field.stories.js +1 -10
  60. package/dist/collection/components/dda-dropdown/dda-dropdown.js +90 -18
  61. package/dist/collection/components/dda-dropdown/dda-dropdown.stories.js +0 -4
  62. package/dist/collection/components/dda-footer/dda-footer.js +57 -10
  63. package/dist/collection/components/dda-footer/dda-footer.stories.js +5 -4
  64. package/dist/collection/components/dda-header/dda-header.css +11 -0
  65. package/dist/collection/components/dda-header/dda-header.js +232 -37
  66. package/dist/collection/components/dda-header/dda-header.stories.js +12 -21
  67. package/dist/collection/components/dda-home-banner/dda-home-banner.js +8 -2
  68. package/dist/collection/components/dda-home-banner/home-banner.css +23 -2
  69. package/dist/collection/components/dda-input/dda-input.js +47 -21
  70. package/dist/collection/components/dda-input/dda-input.stories.js +0 -13
  71. package/dist/collection/components/dda-link-button/dda-link-button.js +30 -23
  72. package/dist/collection/components/dda-number-field/dda-number-field.js +54 -22
  73. package/dist/collection/components/dda-number-field/dda-number-field.stories.js +0 -9
  74. package/dist/collection/components/dda-pagination/dda-pagination.js +95 -28
  75. package/dist/collection/components/dda-pagination/dda-pagination.stories.js +24 -24
  76. package/dist/collection/components/dda-phonefield/dda-phonefield.js +62 -24
  77. package/dist/collection/components/dda-phonefield/dda-phonefield.stories.js +0 -13
  78. package/dist/collection/components/dda-progressbar/dda-progressbar.js +13 -8
  79. package/dist/collection/components/dda-radiobutton/dda-radiobutton.css +156 -25
  80. package/dist/collection/components/dda-radiobutton/dda-radiobutton.js +13 -12
  81. package/dist/collection/components/dda-radiobutton/dda-radiobutton.stories.js +5 -16
  82. package/dist/collection/components/dda-range-slider/dda-range-slider.js +29 -17
  83. package/dist/collection/components/dda-search-input/dda-search-input.js +61 -26
  84. package/dist/collection/components/dda-search-input/dda-search-input.stories.js +0 -9
  85. package/dist/collection/components/dda-select/dda-select.js +78 -20
  86. package/dist/collection/components/dda-sticky-footer/dda-sticky-footer.js +80 -43
  87. package/dist/collection/components/dda-sticky-footer/dda-sticky-footer.stories.js +1 -1
  88. package/dist/collection/components/dda-tabs/dda-tabs.js +21 -15
  89. package/dist/collection/components/dda-tabs/dda-tabs.stories.js +3 -10
  90. package/dist/collection/components/dda-textarea/dda-textarea.js +33 -23
  91. package/dist/collection/components/dda-textarea/dda-textarea.stories.js +0 -9
  92. package/dist/collection/components/dda-toggle/dda-toggle.css +9 -0
  93. package/dist/collection/components/dda-toggle/dda-toggle.js +47 -8
  94. package/dist/collection/components/dda-toggle/dda-toggle.stories.js +10 -22
  95. package/dist/collection/components/dda-tooltip/dda-tooltip.js +9 -7
  96. package/dist/collection/components/dda-ui-card/dda-ui-card.js +55 -13
  97. package/dist/collection/components/segmented-groups/dda-segmented-tabs/dda-segmented-tabs.js +79 -11
  98. package/dist/collection/components/stepper/dda-horizontal-stepper/dda-horizontal-stepper.css +4 -1
  99. package/dist/collection/components/stepper/dda-horizontal-stepper/dda-horizontal-stepper.js +24 -6
  100. package/dist/collection/components/stepper/dda-horizontal-stepper/dda-horizontal-stepper.stories.js +2 -2
  101. package/dist/collection/components/stepper/dda-vertical-stepper/dda-vertical-stepper.js +49 -6
  102. package/dist/collection/components/stepper/dda-vertical-stepper/dda-vertical-stepper.stories.js +2 -2
  103. package/dist/collection/global/global.css +152 -25
  104. package/dist/collection/global/input.css +56 -2
  105. package/dist/collection/storybook/component-api.js +15 -0
  106. package/dist/collection/utils/placeholder-color.js +89 -0
  107. package/dist/collection/utils/unique-id.js +10 -0
  108. package/dist/components/dda-accordion.js +1 -1
  109. package/dist/components/dda-alert.js +1 -1
  110. package/dist/components/dda-attach-file.js +1 -1
  111. package/dist/components/dda-avatar.js +1 -1
  112. package/dist/components/dda-banner.js +1 -1
  113. package/dist/components/dda-breadcrumb.js +1 -1
  114. package/dist/components/dda-button.js +1 -1
  115. package/dist/components/dda-checkbox.js +1 -1
  116. package/dist/components/dda-chip.js +1 -1
  117. package/dist/components/dda-credit-card.js +1 -1
  118. package/dist/components/dda-creditcard-field.js +1 -1
  119. package/dist/components/dda-dropdown.js +1 -1
  120. package/dist/components/dda-footer.js +1 -1
  121. package/dist/components/dda-header.js +1 -1
  122. package/dist/components/dda-home-banner.js +1 -1
  123. package/dist/components/dda-horizontal-stepper.js +1 -1
  124. package/dist/components/dda-input.js +1 -1
  125. package/dist/components/dda-link-button.js +1 -1
  126. package/dist/components/dda-number-field.js +1 -1
  127. package/dist/components/dda-pagination.js +1 -1
  128. package/dist/components/dda-phonefield.js +1 -1
  129. package/dist/components/dda-progressbar.js +1 -1
  130. package/dist/components/dda-radiobutton.js +1 -1
  131. package/dist/components/dda-range-slider.js +1 -1
  132. package/dist/components/dda-search-input.js +1 -1
  133. package/dist/components/dda-segmented-tabs.js +1 -1
  134. package/dist/components/dda-select.js +1 -1
  135. package/dist/components/dda-sticky-footer.js +1 -1
  136. package/dist/components/dda-tabs.js +1 -1
  137. package/dist/components/dda-textarea.js +1 -1
  138. package/dist/components/dda-toggle.js +1 -1
  139. package/dist/components/dda-tooltip.js +1 -1
  140. package/dist/components/dda-ui-card.js +1 -1
  141. package/dist/components/dda-vertical-stepper.js +1 -1
  142. package/dist/components/index.js +1 -1
  143. package/dist/components/p-B-I003EB.js +1 -0
  144. package/dist/components/p-Bc2V1U4_.js +1 -0
  145. package/dist/components/p-Bzqf-PpF.js +1 -0
  146. package/dist/components/p-D-CHT-as.js +1 -0
  147. package/dist/components/p-DJw8qV7U.js +1 -0
  148. package/dist/components/p-DpwQ9sGp.js +1 -0
  149. package/dist/dda/dda.css +2 -2
  150. package/dist/dda/dda.esm.js +1 -1
  151. package/dist/dda/p-03400387.entry.js +1 -0
  152. package/dist/dda/p-04bcda8a.entry.js +1 -0
  153. package/dist/dda/p-18a3d7b1.entry.js +1 -0
  154. package/dist/dda/p-1f7b8486.entry.js +1 -0
  155. package/dist/dda/p-3024288f.entry.js +1 -0
  156. package/dist/dda/p-41b8ed7d.entry.js +1 -0
  157. package/dist/dda/p-56f60336.entry.js +1 -0
  158. package/dist/dda/p-65776d80.entry.js +1 -0
  159. package/dist/dda/p-73611084.entry.js +1 -0
  160. package/dist/dda/p-7ad8cde9.entry.js +1 -0
  161. package/dist/dda/p-8134e59d.entry.js +1 -0
  162. package/dist/dda/p-8494fd9e.entry.js +1 -0
  163. package/dist/dda/p-876d55b2.entry.js +1 -0
  164. package/dist/dda/p-88d884a8.entry.js +1 -0
  165. package/dist/dda/p-8b25ae94.entry.js +1 -0
  166. package/dist/dda/p-8f376986.entry.js +1 -0
  167. package/dist/dda/p-90019b80.entry.js +1 -0
  168. package/dist/dda/p-92fa4777.entry.js +1 -0
  169. package/dist/dda/p-97431faf.entry.js +1 -0
  170. package/dist/dda/p-B-I003EB.js +1 -0
  171. package/dist/dda/p-D6L6zgH9.js +2 -0
  172. package/dist/dda/p-a5456de2.entry.js +1 -0
  173. package/dist/dda/p-aa7b4c13.entry.js +1 -0
  174. package/dist/dda/p-ad40eb27.entry.js +1 -0
  175. package/dist/dda/p-c055f0d2.entry.js +1 -0
  176. package/dist/dda/p-c42c8733.entry.js +1 -0
  177. package/dist/dda/p-c77282be.entry.js +1 -0
  178. package/dist/dda/p-ca64abe6.entry.js +1 -0
  179. package/dist/dda/p-ceca8088.entry.js +1 -0
  180. package/dist/dda/p-d6786b43.entry.js +1 -0
  181. package/dist/dda/p-e2113e42.entry.js +1 -0
  182. package/dist/dda/p-ee862207.entry.js +1 -0
  183. package/dist/dda/p-ef38e28b.entry.js +1 -0
  184. package/dist/dda/p-f43fb910.entry.js +1 -0
  185. package/dist/dda/p-fb4db977.entry.js +1 -0
  186. package/dist/esm/dda-accordion.entry.js +12 -7
  187. package/dist/esm/dda-alert.entry.js +20 -3
  188. package/dist/esm/dda-attach-file.entry.js +24 -8
  189. package/dist/esm/dda-avatar.entry.js +23 -12
  190. package/dist/esm/dda-banner.entry.js +14 -5
  191. package/dist/esm/dda-breadcrumb.entry.js +22 -10
  192. package/dist/esm/dda-button.entry.js +16 -9
  193. package/dist/esm/dda-checkbox.entry.js +5 -4
  194. package/dist/esm/dda-chip.entry.js +8 -3
  195. package/dist/esm/dda-credit-card.entry.js +5 -3
  196. package/dist/esm/dda-creditcard-field.entry.js +26 -8
  197. package/dist/esm/dda-dropdown.entry.js +31 -5
  198. package/dist/esm/dda-footer.entry.js +9 -3
  199. package/dist/esm/dda-header.entry.js +88 -8
  200. package/dist/esm/dda-home-banner.entry.js +11 -5
  201. package/dist/esm/dda-horizontal-stepper.entry.js +22 -5
  202. package/dist/esm/dda-input.entry.js +17 -10
  203. package/dist/esm/dda-link-button_2.entry.js +21 -13
  204. package/dist/esm/dda-number-field.entry.js +20 -8
  205. package/dist/esm/dda-pagination.entry.js +21 -11
  206. package/dist/esm/dda-phonefield.entry.js +27 -9
  207. package/dist/esm/dda-progressbar.entry.js +8 -3
  208. package/dist/esm/dda-range-slider.entry.js +15 -3
  209. package/dist/esm/dda-search-input.entry.js +27 -12
  210. package/dist/esm/dda-segmented-tabs.entry.js +54 -6
  211. package/dist/esm/dda-select.entry.js +40 -8
  212. package/dist/esm/dda-sticky-footer.entry.js +20 -3
  213. package/dist/esm/dda-tabs.entry.js +10 -4
  214. package/dist/esm/dda-textarea.entry.js +22 -12
  215. package/dist/esm/dda-toggle.entry.js +5 -4
  216. package/dist/esm/dda-tooltip.entry.js +6 -4
  217. package/dist/esm/dda-ui-card.entry.js +19 -2
  218. package/dist/esm/dda-vertical-stepper.entry.js +23 -3
  219. package/dist/esm/dda.js +3 -3
  220. package/dist/esm/index-D6L6zgH9.js +2106 -0
  221. package/dist/esm/loader.js +3 -3
  222. package/dist/esm/unique-id-B-I003EB.js +12 -0
  223. package/dist/types/components/dda-accordion/dda-accordion.d.ts +6 -0
  224. package/dist/types/components/dda-alert/dda-alert.d.ts +21 -0
  225. package/dist/types/components/dda-attach-file/dda-attach-file.d.ts +17 -0
  226. package/dist/types/components/dda-attach-file/dda-attach-file.stories.d.ts +0 -4
  227. package/dist/types/components/dda-avatar/dda-avatar.d.ts +20 -0
  228. package/dist/types/components/dda-banner/dda-banner.d.ts +5 -0
  229. package/dist/types/components/dda-breadcrumb/dda-breadcrumb.d.ts +12 -6
  230. package/dist/types/components/dda-button/dda-button.d.ts +15 -4
  231. package/dist/types/components/dda-checkbox/dda-checkbox.d.ts +11 -0
  232. package/dist/types/components/dda-checkbox/dda-checkbox.stories.d.ts +0 -10
  233. package/dist/types/components/dda-chip/dda-chip.d.ts +10 -0
  234. package/dist/types/components/dda-chip/dda-chip.stories.d.ts +0 -6
  235. package/dist/types/components/dda-credit-card/dda-credit-card.d.ts +7 -0
  236. package/dist/types/components/dda-creditcard-field/dda-creditcard-field.d.ts +24 -0
  237. package/dist/types/components/dda-creditcard-field/dda-creditcard-field.stories.d.ts +0 -6
  238. package/dist/types/components/dda-dropdown/dda-dropdown.d.ts +25 -0
  239. package/dist/types/components/dda-dropdown/dda-dropdown.stories.d.ts +0 -4
  240. package/dist/types/components/dda-footer/dda-footer.d.ts +13 -0
  241. package/dist/types/components/dda-header/dda-header.d.ts +62 -0
  242. package/dist/types/components/dda-header/dda-header.stories.d.ts +6 -0
  243. package/dist/types/components/dda-home-banner/dda-home-banner.d.ts +1 -0
  244. package/dist/types/components/dda-input/dda-input.d.ts +18 -0
  245. package/dist/types/components/dda-input/dda-input.stories.d.ts +0 -6
  246. package/dist/types/components/dda-link-button/dda-link-button.d.ts +14 -3
  247. package/dist/types/components/dda-number-field/dda-number-field.d.ts +21 -0
  248. package/dist/types/components/dda-number-field/dda-number-field.stories.d.ts +0 -6
  249. package/dist/types/components/dda-pagination/dda-pagination.d.ts +26 -0
  250. package/dist/types/components/dda-phonefield/dda-phonefield.d.ts +21 -0
  251. package/dist/types/components/dda-phonefield/dda-phonefield.stories.d.ts +0 -6
  252. package/dist/types/components/dda-progressbar/dda-progressbar.d.ts +7 -0
  253. package/dist/types/components/dda-radiobutton/dda-radiobutton.d.ts +11 -0
  254. package/dist/types/components/dda-radiobutton/dda-radiobutton.stories.d.ts +5 -15
  255. package/dist/types/components/dda-range-slider/dda-range-slider.d.ts +16 -0
  256. package/dist/types/components/dda-search-input/dda-search-input.d.ts +21 -0
  257. package/dist/types/components/dda-search-input/dda-search-input.stories.d.ts +0 -6
  258. package/dist/types/components/dda-select/dda-select.d.ts +23 -0
  259. package/dist/types/components/dda-sticky-footer/dda-sticky-footer.d.ts +46 -3
  260. package/dist/types/components/dda-tabs/dda-tabs.d.ts +12 -1
  261. package/dist/types/components/dda-tabs/dda-tabs.stories.d.ts +0 -4
  262. package/dist/types/components/dda-textarea/dda-textarea.d.ts +16 -0
  263. package/dist/types/components/dda-textarea/dda-textarea.stories.d.ts +0 -6
  264. package/dist/types/components/dda-toggle/dda-toggle.d.ts +11 -0
  265. package/dist/types/components/dda-toggle/dda-toggle.stories.d.ts +2 -12
  266. package/dist/types/components/dda-tooltip/dda-tooltip.d.ts +5 -0
  267. package/dist/types/components/dda-ui-card/dda-ui-card.d.ts +13 -1
  268. package/dist/types/components/segmented-groups/dda-segmented-tabs/dda-segmented-tabs.d.ts +19 -2
  269. package/dist/types/components/stepper/dda-horizontal-stepper/dda-horizontal-stepper.d.ts +6 -0
  270. package/dist/types/components/stepper/dda-vertical-stepper/dda-vertical-stepper.d.ts +8 -0
  271. package/dist/types/components.d.ts +2373 -38
  272. package/dist/types/utils/placeholder-color.d.ts +10 -0
  273. package/dist/types/utils/unique-id.d.ts +6 -0
  274. package/package.json +4 -3
  275. package/readme.md +6 -0
  276. package/dist/cjs/index-CDUC0Pdj.js +0 -1986
  277. package/dist/components/p-9UeqjDnY.js +0 -1
  278. package/dist/components/p-CrTEb7xH.js +0 -1
  279. package/dist/components/p-DldlmGnP.js +0 -1
  280. package/dist/components/p-NvTw9Mx1.js +0 -1
  281. package/dist/components/p-i15-_er0.js +0 -1
  282. package/dist/dda/p-016e4090.entry.js +0 -1
  283. package/dist/dda/p-0229b303.entry.js +0 -1
  284. package/dist/dda/p-05a6f90d.entry.js +0 -1
  285. package/dist/dda/p-1c9a6035.entry.js +0 -1
  286. package/dist/dda/p-2c313105.entry.js +0 -1
  287. package/dist/dda/p-2cec7be6.entry.js +0 -1
  288. package/dist/dda/p-2f4ace4c.entry.js +0 -1
  289. package/dist/dda/p-360a0577.entry.js +0 -1
  290. package/dist/dda/p-3e49128d.entry.js +0 -1
  291. package/dist/dda/p-3fa27728.entry.js +0 -1
  292. package/dist/dda/p-43e1c12f.entry.js +0 -1
  293. package/dist/dda/p-4428417d.entry.js +0 -1
  294. package/dist/dda/p-44ce832e.entry.js +0 -1
  295. package/dist/dda/p-560a3f0c.entry.js +0 -1
  296. package/dist/dda/p-5712bbd9.entry.js +0 -1
  297. package/dist/dda/p-626d7e7b.entry.js +0 -1
  298. package/dist/dda/p-68008c64.entry.js +0 -1
  299. package/dist/dda/p-6f3d9f78.entry.js +0 -1
  300. package/dist/dda/p-79db1218.entry.js +0 -1
  301. package/dist/dda/p-84911fab.entry.js +0 -1
  302. package/dist/dda/p-90d9648b.entry.js +0 -1
  303. package/dist/dda/p-91040abe.entry.js +0 -1
  304. package/dist/dda/p-Cq6A4mXg.js +0 -2
  305. package/dist/dda/p-a1421a54.entry.js +0 -1
  306. package/dist/dda/p-a22b1c56.entry.js +0 -1
  307. package/dist/dda/p-aa0e9035.entry.js +0 -1
  308. package/dist/dda/p-b2981646.entry.js +0 -1
  309. package/dist/dda/p-c1f45887.entry.js +0 -1
  310. package/dist/dda/p-c50e1141.entry.js +0 -1
  311. package/dist/dda/p-d8a9cab1.entry.js +0 -1
  312. package/dist/dda/p-dd966009.entry.js +0 -1
  313. package/dist/dda/p-ed099201.entry.js +0 -1
  314. package/dist/dda/p-f4bd2b2e.entry.js +0 -1
  315. package/dist/dda/p-fc30c60e.entry.js +0 -1
  316. package/dist/esm/index-Cq6A4mXg.js +0 -1976
@@ -1,17 +1,34 @@
1
1
  import { h, Host } from "@stencil/core";
2
2
  export class DdaUiCard {
3
3
  constructor() {
4
+ /** `default` renders the icon, image, title, subtitle and link from props before the slot; `custom` renders only the slot. */
4
5
  this.type = 'default';
6
+ /** Material Icons name shown at the top of the card, e.g. `description`. */
5
7
  this.icon = '';
8
+ /** URL of an image shown at the top of the card. Its alt text is `maintitle`. */
6
9
  this.image = '';
10
+ /** Card title, rendered as a heading at `heading_level`. */
7
11
  this.maintitle = '';
12
+ /** Muted text shown below the title. */
8
13
  this.subtitle = '';
14
+ /** URL of the card link. The link shows only when this is set. */
9
15
  this.link = '';
16
+ /** Text of the card link. */
10
17
  this.linktext = '';
18
+ /** Material Icons name shown after the link text. Set it to an empty string to hide the icon. */
11
19
  this.linkicon = 'arrow_forward';
20
+ /** Heading level (1–6) of the title; pick the level that fits the page outline. */
21
+ this.heading_level = 3;
22
+ }
23
+ // The title was always an <h1>, so a page of cards had many h1s.
24
+ // Clamp to a valid heading level; anything unparsable falls back to 3.
25
+ get headingTag() {
26
+ const level = Math.round(Number(this.heading_level));
27
+ return `h${Number.isFinite(level) ? Math.min(6, Math.max(1, level)) : 3}`;
12
28
  }
13
29
  render() {
14
- return (h(Host, { key: '23b67e77b8cb78795a684ad15030ac31918853e7' }, h("div", { key: 'abee006879a59559d7154c95c4d88ad1513c75b5', class: 'dda-card' }, h("div", { key: '33732334dafbc7bcaa4a0e24f972e8f04e62c46e', class: 'dda-card-body' }, this.type !== 'custom' && (h("div", { key: '626c85266899eeef3690113f51ff06f330f3cf60' }, !!this.icon && (h("span", { key: 'e6a6ddb2ba041b3942f63967b6cce2d618e1a4ba', class: 'dda-card-icon' }, h("i", { key: '340c651b6fbf945d22b9b6405d2077996dcea0e5', class: 'material-icons' }, this.icon))), !!this.image && (h("span", { key: 'aa79e723ca9995cf8e71d33e480418a77ab44e9d', class: 'dda-card-icon' }, h("img", { key: 'c366fdb9f184680b0f94f0f05e7c102f5cf5daeb', src: this.image, alt: this.maintitle }))), !!this.maintitle && h("h1", { key: 'ad686e57e270a8bd12bdb5a98e49e0918a460dfc', class: 'dda-card-title' }, this.maintitle), !!this.subtitle && h("p", { key: '57dcc9ea2918b7075cd329d8a37ef87ada70fd31', class: 'dda-card-text-muted' }, this.subtitle), !!this.link && (h("a", { key: 'f823984df47c3e48570e76c1cd67804d622626ae', href: this.link, class: 'dda-card-link' }, this.linktext, ' ', this.linkicon && (h("span", { key: '5a41b73f4c7b40d15bfeb47e756eabe70ccd49a4' }, h("i", { key: '6be0795bcde440b7274b7bb1d2314f7d453b403c', class: 'material-icons' }, this.linkicon))))))), h("slot", { key: '83e3e779ff67cadae63c41f36f1862a68093d24c' })))));
30
+ const HeadingTag = this.headingTag;
31
+ return (h(Host, { key: 'f2a0d78609b1432f94a712b2d69690ed10c422b3' }, h("div", { key: 'bc36fddf6be566d97d23530740e5de9f32bb192e', class: 'dda-card' }, h("div", { key: '55b2f3a35669305d0dcf5c3fe9bdd3dd70a444a1', class: 'dda-card-body' }, this.type !== 'custom' && (h("div", { key: 'e6298ad703d39c3ed69ab64070db7d2580529d33' }, !!this.icon && (h("span", { key: '2f1b9f7570d5ab46f857cebb594a1d71cf83a341', class: 'dda-card-icon' }, h("i", { key: 'efda1c1873e48cae86bbd9feb5a90c7529f3db49', class: 'material-icons', "aria-hidden": "true" }, this.icon))), !!this.image && (h("span", { key: '802a4ca867e351b24af54b4da78ec12c2d18b890', class: 'dda-card-icon' }, h("img", { key: 'ff6975cf36520a9c3ddbecc16252bcc0769a1597', src: this.image, alt: this.maintitle }))), !!this.maintitle && h(HeadingTag, { key: 'd769a32b303d689217aa77973804347fb3488b02', class: 'dda-card-title' }, this.maintitle), !!this.subtitle && h("p", { key: '0bdaa58c5ea5db75c20c7b0031dad48ce7d1ed96', class: 'dda-card-text-muted' }, this.subtitle), !!this.link && (h("a", { key: '87d11b05cef8ab0b01de355d22b1ef9297a80302', href: this.link, class: 'dda-card-link', onClick: (event) => this.linkClick.emit(event) }, this.linktext, ' ', this.linkicon && (h("span", { key: '8cb9e3c6e51769fca7fa47d22d61a98164209002' }, h("i", { key: 'ba556e79ad6176ee2b79097a78ad826d9c02ecee', class: 'material-icons', "aria-hidden": "true" }, this.linkicon))))))), h("slot", { key: '11921fac820a992ed35e0dab39bcd36a39b2244f' })))));
15
32
  }
16
33
  static get is() { return "dda-ui-card"; }
17
34
  static get originalStyleUrls() {
@@ -38,7 +55,7 @@ export class DdaUiCard {
38
55
  "optional": false,
39
56
  "docs": {
40
57
  "tags": [],
41
- "text": ""
58
+ "text": "`default` renders the icon, image, title, subtitle and link from props before the slot; `custom` renders only the slot."
42
59
  },
43
60
  "getter": false,
44
61
  "setter": false,
@@ -58,7 +75,7 @@ export class DdaUiCard {
58
75
  "optional": false,
59
76
  "docs": {
60
77
  "tags": [],
61
- "text": ""
78
+ "text": "Material Icons name shown at the top of the card, e.g. `description`."
62
79
  },
63
80
  "getter": false,
64
81
  "setter": false,
@@ -78,7 +95,7 @@ export class DdaUiCard {
78
95
  "optional": false,
79
96
  "docs": {
80
97
  "tags": [],
81
- "text": ""
98
+ "text": "URL of an image shown at the top of the card. Its alt text is `maintitle`."
82
99
  },
83
100
  "getter": false,
84
101
  "setter": false,
@@ -98,7 +115,7 @@ export class DdaUiCard {
98
115
  "optional": false,
99
116
  "docs": {
100
117
  "tags": [],
101
- "text": ""
118
+ "text": "Card title, rendered as a heading at `heading_level`."
102
119
  },
103
120
  "getter": false,
104
121
  "setter": false,
@@ -118,7 +135,7 @@ export class DdaUiCard {
118
135
  "optional": false,
119
136
  "docs": {
120
137
  "tags": [],
121
- "text": ""
138
+ "text": "Muted text shown below the title."
122
139
  },
123
140
  "getter": false,
124
141
  "setter": false,
@@ -138,7 +155,7 @@ export class DdaUiCard {
138
155
  "optional": false,
139
156
  "docs": {
140
157
  "tags": [],
141
- "text": ""
158
+ "text": "URL of the card link. The link shows only when this is set."
142
159
  },
143
160
  "getter": false,
144
161
  "setter": false,
@@ -158,7 +175,7 @@ export class DdaUiCard {
158
175
  "optional": false,
159
176
  "docs": {
160
177
  "tags": [],
161
- "text": ""
178
+ "text": "Text of the card link."
162
179
  },
163
180
  "getter": false,
164
181
  "setter": false,
@@ -178,13 +195,33 @@ export class DdaUiCard {
178
195
  "optional": false,
179
196
  "docs": {
180
197
  "tags": [],
181
- "text": ""
198
+ "text": "Material Icons name shown after the link text. Set it to an empty string to hide the icon."
182
199
  },
183
200
  "getter": false,
184
201
  "setter": false,
185
202
  "reflect": false,
186
203
  "attribute": "linkicon",
187
204
  "defaultValue": "'arrow_forward'"
205
+ },
206
+ "heading_level": {
207
+ "type": "number",
208
+ "mutable": false,
209
+ "complexType": {
210
+ "original": "number",
211
+ "resolved": "number",
212
+ "references": {}
213
+ },
214
+ "required": false,
215
+ "optional": false,
216
+ "docs": {
217
+ "tags": [],
218
+ "text": "Heading level (1\u20136) of the title; pick the level that fits the page outline."
219
+ },
220
+ "getter": false,
221
+ "setter": false,
222
+ "reflect": false,
223
+ "attribute": "heading_level",
224
+ "defaultValue": "3"
188
225
  }
189
226
  };
190
227
  }
@@ -197,12 +234,17 @@ export class DdaUiCard {
197
234
  "composed": true,
198
235
  "docs": {
199
236
  "tags": [],
200
- "text": ""
237
+ "text": "Emitted when the user clicks the card link. `detail` is the original click `MouseEvent`; call `detail.preventDefault()` to stop the navigation."
201
238
  },
202
239
  "complexType": {
203
- "original": "void",
204
- "resolved": "void",
205
- "references": {}
240
+ "original": "MouseEvent",
241
+ "resolved": "MouseEvent",
242
+ "references": {
243
+ "MouseEvent": {
244
+ "location": "global",
245
+ "id": "global::MouseEvent"
246
+ }
247
+ }
206
248
  }
207
249
  }];
208
250
  }
@@ -1,7 +1,7 @@
1
1
  import { h } from "@stencil/core";
2
2
  export class DdaSegmentedTabs {
3
3
  constructor() {
4
- /** Index of the segment selected by default. Clamped to a valid item index. */
4
+ /** Index of the selected segment, from 0. Changing it after load moves the selection. An out-of-range value selects the first segment. */
5
5
  this.selected_index = 0;
6
6
  /** F-004 repair: the currently-selected segment. Exactly one segment is
7
7
  * selected at a time; this is what makes the component interactive at all. */
@@ -9,9 +9,30 @@ export class DdaSegmentedTabs {
9
9
  this.parsedItems = [];
10
10
  }
11
11
  componentWillLoad() {
12
- this.parsedItems = JSON.parse(this.items);
12
+ this.parseItems();
13
13
  this.active_index = this.clampIndex(this.selected_index);
14
14
  }
15
+ /** Re-parses `items` when it changes after load, and keeps the current
16
+ * selection if it is still in range (else selects the first segment). */
17
+ itemsChanged() {
18
+ this.parseItems();
19
+ this.active_index = this.clampIndex(this.active_index);
20
+ }
21
+ /** Moves the selection when `selected_index` changes after load. */
22
+ selectedIndexChanged() {
23
+ this.active_index = this.clampIndex(this.selected_index);
24
+ }
25
+ parseItems() {
26
+ var _a;
27
+ try {
28
+ const items = JSON.parse((_a = this.items) !== null && _a !== void 0 ? _a : '[]');
29
+ // Segment labels are strings; numbers in the JSON would otherwise break rendering.
30
+ this.parsedItems = Array.isArray(items) ? items.map(item => String(item)) : [];
31
+ }
32
+ catch (_b) {
33
+ this.parsedItems = [];
34
+ }
35
+ }
15
36
  clampIndex(index) {
16
37
  if (!Array.isArray(this.parsedItems) || this.parsedItems.length === 0) {
17
38
  return 0;
@@ -21,6 +42,25 @@ export class DdaSegmentedTabs {
21
42
  }
22
43
  return index;
23
44
  }
45
+ get parsedIconLabels() {
46
+ if (!this.icon_labels) {
47
+ return [];
48
+ }
49
+ try {
50
+ const labels = JSON.parse(this.icon_labels);
51
+ return Array.isArray(labels) ? labels : [];
52
+ }
53
+ catch (error) {
54
+ console.error('Error parsing icon_labels:', error);
55
+ return [];
56
+ }
57
+ }
58
+ /** Accessible name of an icon-only segment: the matching `icon_labels`
59
+ * entry, else the item text with underscores read as spaces. */
60
+ iconLabel(item, index) {
61
+ const label = this.parsedIconLabels[index];
62
+ return typeof label === 'string' && label.trim() ? label : item.replace(/_/g, ' ');
63
+ }
24
64
  selectSegment(index) {
25
65
  if (index === this.active_index) {
26
66
  return;
@@ -29,10 +69,10 @@ export class DdaSegmentedTabs {
29
69
  this.segmentChange.emit(index);
30
70
  }
31
71
  render() {
32
- return (h("div", { key: '83b176643df1781211b5ec722d0c057002c6bc72', role: "group", "aria-label": this.aria_label, class: `dda-segmented-group ${this.custom_class} ${this.radius_type} ${this.component_mode}` }, this.parsedItems.map((item, index) => {
72
+ return (h("div", { key: '023156550fa2d88603176644fc99b4cb3950c275', role: "group", "aria-label": this.aria_label, class: `dda-segmented-group ${this.custom_class} ${this.radius_type} ${this.component_mode}` }, this.parsedItems.map((item, index) => {
33
73
  const isSelected = index === this.active_index;
34
74
  const className = `dda-segmented-item${isSelected ? ' active' : ''}`;
35
- return item.startsWith('fo') ? (h("button", { name: this.button_name, type: "button", class: className, "aria-pressed": isSelected ? 'true' : 'false', onClick: () => this.selectSegment(index) }, h("i", { class: "material-icons material-symbols-outlined" }, item))) : (h("button", { name: this.button_name, type: "button", class: className, "aria-pressed": isSelected ? 'true' : 'false', onClick: () => this.selectSegment(index) }, item));
75
+ return item.startsWith('fo') ? (h("button", { name: this.button_name, type: "button", class: className, "aria-pressed": isSelected ? 'true' : 'false', "aria-label": this.iconLabel(item, index), onClick: () => this.selectSegment(index) }, h("i", { class: "material-icons material-symbols-outlined", "aria-hidden": "true" }, item))) : (h("button", { name: this.button_name, type: "button", class: className, "aria-pressed": isSelected ? 'true' : 'false', onClick: () => this.selectSegment(index) }, item));
36
76
  })));
37
77
  }
38
78
  static get is() { return "dda-segmented-tabs"; }
@@ -60,7 +100,7 @@ export class DdaSegmentedTabs {
60
100
  "optional": false,
61
101
  "docs": {
62
102
  "tags": [],
63
- "text": ""
103
+ "text": "Segments, as a JSON string array, e.g. `'[\"All\", \"Pending\", \"Approved\"]'`. A missing or invalid value renders no segments. An item that starts with `fo` renders as a Material Symbols icon name (e.g. `format_align_left`)."
64
104
  },
65
105
  "getter": false,
66
106
  "setter": false,
@@ -79,7 +119,7 @@ export class DdaSegmentedTabs {
79
119
  "optional": false,
80
120
  "docs": {
81
121
  "tags": [],
82
- "text": ""
122
+ "text": "Corner shape of the group: `square` or `rounded`."
83
123
  },
84
124
  "getter": false,
85
125
  "setter": false,
@@ -98,7 +138,7 @@ export class DdaSegmentedTabs {
98
138
  "optional": false,
99
139
  "docs": {
100
140
  "tags": [],
101
- "text": ""
141
+ "text": "Extra CSS classes added to the group."
102
142
  },
103
143
  "getter": false,
104
144
  "setter": false,
@@ -117,7 +157,7 @@ export class DdaSegmentedTabs {
117
157
  "optional": true,
118
158
  "docs": {
119
159
  "tags": [],
120
- "text": ""
160
+ "text": "Theme override class on the group, e.g. `light-mode`."
121
161
  },
122
162
  "getter": false,
123
163
  "setter": false,
@@ -136,7 +176,7 @@ export class DdaSegmentedTabs {
136
176
  "optional": false,
137
177
  "docs": {
138
178
  "tags": [],
139
- "text": ""
179
+ "text": "`name` set on every segment button."
140
180
  },
141
181
  "getter": false,
142
182
  "setter": false,
@@ -174,13 +214,32 @@ export class DdaSegmentedTabs {
174
214
  "optional": false,
175
215
  "docs": {
176
216
  "tags": [],
177
- "text": "Index of the segment selected by default. Clamped to a valid item index."
217
+ "text": "Index of the selected segment, from 0. Changing it after load moves the selection. An out-of-range value selects the first segment."
178
218
  },
179
219
  "getter": false,
180
220
  "setter": false,
181
221
  "reflect": false,
182
222
  "attribute": "selected_index",
183
223
  "defaultValue": "0"
224
+ },
225
+ "icon_labels": {
226
+ "type": "string",
227
+ "mutable": false,
228
+ "complexType": {
229
+ "original": "string",
230
+ "resolved": "string",
231
+ "references": {}
232
+ },
233
+ "required": false,
234
+ "optional": true,
235
+ "docs": {
236
+ "tags": [],
237
+ "text": "Accessible names for icon-only segments, as a JSON string array in the same order as `items`, e.g. `'[\"Align left\", \"Align center\"]'`."
238
+ },
239
+ "getter": false,
240
+ "setter": false,
241
+ "reflect": false,
242
+ "attribute": "icon_labels"
184
243
  }
185
244
  };
186
245
  }
@@ -198,7 +257,7 @@ export class DdaSegmentedTabs {
198
257
  "composed": true,
199
258
  "docs": {
200
259
  "tags": [],
201
- "text": "Emits the newly-selected index whenever the selection changes."
260
+ "text": "Fires when the user selects a different segment. `detail` is the new index, from 0."
202
261
  },
203
262
  "complexType": {
204
263
  "original": "number",
@@ -207,4 +266,13 @@ export class DdaSegmentedTabs {
207
266
  }
208
267
  }];
209
268
  }
269
+ static get watchers() {
270
+ return [{
271
+ "propName": "items",
272
+ "methodName": "itemsChanged"
273
+ }, {
274
+ "propName": "selected_index",
275
+ "methodName": "selectedIndexChanged"
276
+ }];
277
+ }
210
278
  }
@@ -95,7 +95,10 @@
95
95
  transform: translate(0%, -50%);
96
96
  }
97
97
 
98
-
98
+ /* Nothing follows the last step, so its line would run past the stepper. */
99
+ .h-step:last-child .h-step-indicator::after {
100
+ content: none;
101
+ }
99
102
 
100
103
  .h-step.completed .h-step-title{
101
104
  color: var(--dda-color-success-40);
@@ -1,14 +1,26 @@
1
1
  import { h, Host } from "@stencil/core";
2
2
  export class DdaHorizontalStepper {
3
3
  constructor() {
4
+ /** Index of the active step, from 0. Steps before it show as completed. */
4
5
  this.current_step = 1;
5
6
  this.parsedSteps = [];
6
7
  }
7
8
  componentWillLoad() {
8
- this.parsedSteps = JSON.parse(this.steps);
9
+ this.parseSteps();
10
+ }
11
+ /** Re-parses `steps` when it changes after load. A missing or invalid value renders no steps. */
12
+ parseSteps() {
13
+ var _a;
14
+ try {
15
+ const steps = JSON.parse((_a = this.steps) !== null && _a !== void 0 ? _a : '[]');
16
+ this.parsedSteps = Array.isArray(steps) ? steps : [];
17
+ }
18
+ catch (_b) {
19
+ this.parsedSteps = [];
20
+ }
9
21
  }
10
22
  render() {
11
- return (h(Host, { key: '5b6bf0b6d79e08768c25d78f15e14bb449f3f9d4' }, h("div", { key: 'f3c2ef7bd4ae7685747fe4194b143c2fc962d3bb', class: `${this.custom_class} ${this.component_mode} h-stepper-container` }, this.parsedSteps.map((step, index) => (h("div", { class: `h-step ${index === this.current_step ? 'active' : ''} ${index < this.current_step ? 'completed' : ''}` }, h("div", { class: "h-step-indicator" }, h("div", { class: "circle" })), h("div", { class: "h-step-content" }, h("div", { class: "h-step-title" }, step.title), h("div", { class: "h-step-subtitle" }, step.subtitle), h("div", { class: "h-step-description" }, step.description))))))));
23
+ return (h(Host, { key: 'a5f2c88bb692cb7b5dafa69664f2e8f864ef7891' }, h("div", { key: '17a44cd43fa1d20bb34509c5d5e1722c47937a12', class: `${this.custom_class} ${this.component_mode} h-stepper-container` }, this.parsedSteps.map((step, index) => (h("div", { class: `h-step ${index === this.current_step ? 'active' : ''} ${index < this.current_step ? 'completed' : ''}` }, h("div", { class: "h-step-indicator" }, h("div", { class: "circle" })), h("div", { class: "h-step-content" }, h("div", { class: "h-step-title" }, step.title), h("div", { class: "h-step-subtitle" }, step.subtitle), h("div", { class: "h-step-description" }, step.description))))))));
12
24
  }
13
25
  static get is() { return "dda-horizontal-stepper"; }
14
26
  static get originalStyleUrls() {
@@ -35,7 +47,7 @@ export class DdaHorizontalStepper {
35
47
  "optional": false,
36
48
  "docs": {
37
49
  "tags": [],
38
- "text": ""
50
+ "text": "Steps, as a JSON string array of `{ title, subtitle, description }` objects."
39
51
  },
40
52
  "getter": false,
41
53
  "setter": false,
@@ -54,7 +66,7 @@ export class DdaHorizontalStepper {
54
66
  "optional": false,
55
67
  "docs": {
56
68
  "tags": [],
57
- "text": ""
69
+ "text": "Index of the active step, from 0. Steps before it show as completed."
58
70
  },
59
71
  "getter": false,
60
72
  "setter": false,
@@ -74,7 +86,7 @@ export class DdaHorizontalStepper {
74
86
  "optional": true,
75
87
  "docs": {
76
88
  "tags": [],
77
- "text": ""
89
+ "text": "Extra CSS classes added to the stepper container."
78
90
  },
79
91
  "getter": false,
80
92
  "setter": false,
@@ -93,7 +105,7 @@ export class DdaHorizontalStepper {
93
105
  "optional": true,
94
106
  "docs": {
95
107
  "tags": [],
96
- "text": ""
108
+ "text": "Theme override class on the stepper container, e.g. `light-mode`."
97
109
  },
98
110
  "getter": false,
99
111
  "setter": false,
@@ -107,4 +119,10 @@ export class DdaHorizontalStepper {
107
119
  "parsedSteps": {}
108
120
  };
109
121
  }
122
+ static get watchers() {
123
+ return [{
124
+ "propName": "steps",
125
+ "methodName": "parseSteps"
126
+ }];
127
+ }
110
128
  }
@@ -31,8 +31,8 @@ export default {
31
31
  <dda-horizontal-stepper
32
32
  steps='[{"title":"Step 1","subtitle":"Subtitle 1","description":"Lorem Ipsum&nbsp;is simply dummy text of the printing and typesetting industry."},{"title":"Step 2","subtitle":"Subtitle 2","description":"Lorem Ipsum&nbsp;is simply dummy text of the printing and typesetting industry."},{"title":"Step 3","subtitle":"Subtitle 3","description":"Lorem Ipsum&nbsp;is simply dummy text of the printing and typesetting industry."}]'
33
33
  current_step="1"
34
- custom_class=''
35
- mode='light'
34
+ custom_class=""
35
+ component_mode="light-mode"
36
36
  ></dda-horizontal-stepper>
37
37
  \`\`\`
38
38
  `,
@@ -1,15 +1,30 @@
1
1
  import { h, Host } from "@stencil/core";
2
2
  export class DdaVerticalStepper {
3
3
  constructor() {
4
+ /** @deprecated Use `current_step`. Its attribute is `current_-step`, so it never worked in HTML. */
4
5
  this.current_Step = 0;
6
+ /** Extra CSS classes added to the stepper container. */
5
7
  this.custom_class = '';
6
8
  this.parsedSteps = [];
7
9
  }
8
10
  componentWillLoad() {
9
- this.parsedSteps = JSON.parse(this.steps);
11
+ this.parseSteps();
12
+ }
13
+ /** Re-parses `steps` when it changes after load. A missing or invalid value renders no steps. */
14
+ parseSteps() {
15
+ var _a;
16
+ try {
17
+ const steps = JSON.parse((_a = this.steps) !== null && _a !== void 0 ? _a : '[]');
18
+ this.parsedSteps = Array.isArray(steps) ? steps : [];
19
+ }
20
+ catch (_b) {
21
+ this.parsedSteps = [];
22
+ }
10
23
  }
11
24
  render() {
12
- return (h(Host, { key: '2cc0fba05a159beb85c51bc0d27a81a1714ad3de' }, h("div", { key: 'b9b4f452fb34f825dd30581fa976ccf183b7921f', class: `${this.custom_class} ${this.component_mode} v-stepper-container` }, this.parsedSteps.map((step, index) => (h("div", { class: `v-step ${index <= this.current_Step ? 'active' : ''}` }, h("div", { class: "v-step-indicator" }, h("div", { class: "icon" }, h("i", { class: `material-icons` }, step.icon))), h("div", { class: "v-step-content" }, h("div", { class: "v-step-title" }, step.title), h("div", { class: "v-step-subtitle" }, step.subtitle), h("div", { class: "v-step-description" }, step.description)), h("div", { class: "v-step-arrow" }, h("i", { class: "material-icons material-symbols-outlined" }, "chevron_right"))))))));
25
+ var _a;
26
+ const current = (_a = this.current_step) !== null && _a !== void 0 ? _a : this.current_Step;
27
+ return (h(Host, { key: '35d930b7e0eef90b1f0c6e8dce9fa49065b4fb6e' }, h("div", { key: '690ea598a073d296066e661d31a769802a5bcbdf', class: `${this.custom_class} ${this.component_mode} v-stepper-container` }, this.parsedSteps.map((step, index) => (h("div", { class: `v-step ${index <= current ? 'active' : ''}` }, h("div", { class: "v-step-indicator" }, h("div", { class: "icon" }, h("i", { class: `material-icons` }, step.icon))), h("div", { class: "v-step-content" }, h("div", { class: "v-step-title" }, step.title), h("div", { class: "v-step-subtitle" }, step.subtitle), h("div", { class: "v-step-description" }, step.description)), h("div", { class: "v-step-arrow" }, h("i", { class: "material-icons material-symbols-outlined" }, "chevron_right"))))))));
13
28
  }
14
29
  static get is() { return "dda-vertical-stepper"; }
15
30
  static get originalStyleUrls() {
@@ -36,13 +51,32 @@ export class DdaVerticalStepper {
36
51
  "optional": false,
37
52
  "docs": {
38
53
  "tags": [],
39
- "text": ""
54
+ "text": "Steps, as a JSON string array of `{ icon, title, subtitle, description }` objects. `icon` is a Material Icons name."
40
55
  },
41
56
  "getter": false,
42
57
  "setter": false,
43
58
  "reflect": false,
44
59
  "attribute": "steps"
45
60
  },
61
+ "current_step": {
62
+ "type": "number",
63
+ "mutable": false,
64
+ "complexType": {
65
+ "original": "number",
66
+ "resolved": "number",
67
+ "references": {}
68
+ },
69
+ "required": false,
70
+ "optional": true,
71
+ "docs": {
72
+ "tags": [],
73
+ "text": "Index of the current step, from 0. Steps up to and including it are active."
74
+ },
75
+ "getter": false,
76
+ "setter": false,
77
+ "reflect": false,
78
+ "attribute": "current_step"
79
+ },
46
80
  "current_Step": {
47
81
  "type": "number",
48
82
  "mutable": false,
@@ -54,7 +88,10 @@ export class DdaVerticalStepper {
54
88
  "required": false,
55
89
  "optional": false,
56
90
  "docs": {
57
- "tags": [],
91
+ "tags": [{
92
+ "name": "deprecated",
93
+ "text": "Use `current_step`. Its attribute is `current_-step`, so it never worked in HTML."
94
+ }],
58
95
  "text": ""
59
96
  },
60
97
  "getter": false,
@@ -75,7 +112,7 @@ export class DdaVerticalStepper {
75
112
  "optional": true,
76
113
  "docs": {
77
114
  "tags": [],
78
- "text": ""
115
+ "text": "Extra CSS classes added to the stepper container."
79
116
  },
80
117
  "getter": false,
81
118
  "setter": false,
@@ -95,7 +132,7 @@ export class DdaVerticalStepper {
95
132
  "optional": true,
96
133
  "docs": {
97
134
  "tags": [],
98
- "text": ""
135
+ "text": "Class added to the stepper container, e.g. `light-mode`."
99
136
  },
100
137
  "getter": false,
101
138
  "setter": false,
@@ -109,4 +146,10 @@ export class DdaVerticalStepper {
109
146
  "parsedSteps": {}
110
147
  };
111
148
  }
149
+ static get watchers() {
150
+ return [{
151
+ "propName": "steps",
152
+ "methodName": "parseSteps"
153
+ }];
154
+ }
112
155
  }
@@ -30,8 +30,8 @@ export default {
30
30
  <dda-vertical-stepper
31
31
  steps='[{"icon":"sentiment_satisfied","title":"Step 1","subtitle":"Subtitle 1","description":"Description 1"},{"icon":"sentiment_satisfied","title":"Step 2","subtitle":"Subtitle 2","description":"Description 2"},{"icon":"sentiment_satisfied","title":"Step 3","subtitle":"Subtitle 3","description":"Description 3"}]'
32
32
  current_step="1"
33
- custom_class='""'
34
- mode='"light"'
33
+ custom_class=""
34
+ component_mode="light-mode"
35
35
  ></dda-vertical-stepper>
36
36
  \`\`\`
37
37
  `,