@dubai-design-system/components-js 5.2.0 → 5.3.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 (297) hide show
  1. package/CHANGELOG.md +92 -0
  2. package/MIGRATION.md +153 -18
  3. package/dist/cjs/dda-accordion.cjs.entry.js +3 -3
  4. package/dist/cjs/dda-alert.cjs.entry.js +5 -5
  5. package/dist/cjs/dda-attach-file.cjs.entry.js +3 -3
  6. package/dist/cjs/dda-avatar.cjs.entry.js +8 -8
  7. package/dist/{dda/dda-credit-card.entry.js → cjs/dda-banner-card.cjs.entry.js} +16 -16
  8. package/dist/cjs/dda-banner.cjs.entry.js +3 -3
  9. package/dist/cjs/dda-breadcrumb.cjs.entry.js +2 -2
  10. package/dist/cjs/dda-button.cjs.entry.js +3 -3
  11. package/dist/cjs/dda-checkbox.cjs.entry.js +3 -3
  12. package/dist/cjs/dda-chip.cjs.entry.js +3 -3
  13. package/dist/cjs/dda-credit-card.cjs.entry.js +3 -3
  14. package/dist/cjs/dda-creditcard-field.cjs.entry.js +4 -4
  15. package/dist/cjs/dda-dropdown.cjs.entry.js +4 -4
  16. package/dist/cjs/dda-footer.cjs.entry.js +3 -3
  17. package/dist/cjs/dda-header.cjs.entry.js +208 -23
  18. package/dist/cjs/dda-home-banner.cjs.entry.js +9 -5
  19. package/dist/{dda/dda-tooltip.entry.js → cjs/dda-home-carousel.cjs.entry.js} +18 -36
  20. package/dist/cjs/dda-horizontal-stepper.cjs.entry.js +3 -3
  21. package/dist/cjs/dda-input.cjs.entry.js +3 -3
  22. package/dist/cjs/dda-link-button_2.cjs.entry.js +6 -6
  23. package/dist/cjs/dda-number-field.cjs.entry.js +3 -3
  24. package/dist/cjs/dda-pagination.cjs.entry.js +4 -4
  25. package/dist/cjs/dda-phonefield.cjs.entry.js +3 -3
  26. package/dist/cjs/dda-progressbar.cjs.entry.js +3 -3
  27. package/dist/cjs/dda-range-slider.cjs.entry.js +3 -3
  28. package/dist/cjs/dda-scroll-icon.cjs.entry.js +32 -0
  29. package/dist/cjs/dda-search-input.cjs.entry.js +2 -2
  30. package/dist/cjs/dda-segmented-tabs.cjs.entry.js +5 -5
  31. package/dist/cjs/dda-select.cjs.entry.js +84 -15
  32. package/dist/cjs/dda-sticky-footer.cjs.entry.js +41 -4
  33. package/dist/cjs/dda-tabs.cjs.entry.js +4 -4
  34. package/dist/cjs/dda-textarea.cjs.entry.js +1351 -16189
  35. package/dist/cjs/dda-toggle.cjs.entry.js +3 -3
  36. package/dist/cjs/dda-tooltip.cjs.entry.js +3 -3
  37. package/dist/cjs/dda-ui-card.cjs.entry.js +3 -3
  38. package/dist/cjs/dda-vertical-stepper.cjs.entry.js +2 -2
  39. package/dist/cjs/dda.cjs.js +3 -30
  40. package/dist/cjs/{index-Na_7EWDR.js → index-CM4T__Je.js} +1 -1
  41. package/dist/cjs/index.cjs.js +0 -10
  42. package/dist/cjs/loader.cjs.js +2 -2
  43. package/dist/cjs/parse-json-prop-B0KWD8qe.js +38 -0
  44. package/dist/collection/collection-manifest.json +7 -4
  45. package/dist/collection/components/dda-accordion/dda-accordion.js +1 -1
  46. package/dist/collection/components/dda-alert/dda-alert.js +1 -1
  47. package/dist/collection/components/dda-attach-file/dda-attach-file.js +1 -1
  48. package/dist/collection/components/dda-avatar/dda-avatar.js +5 -5
  49. package/dist/collection/components/dda-banner/dda-banner.js +1 -1
  50. package/dist/collection/components/dda-banner-card/dda-banner-card.js +243 -0
  51. package/dist/collection/components/dda-button/dda-button.js +1 -1
  52. package/dist/collection/components/dda-checkbox/dda-checkbox.js +1 -1
  53. package/dist/collection/components/dda-chip/dda-chip.js +1 -1
  54. package/dist/collection/components/dda-credit-card/dda-credit-card.js +1 -1
  55. package/dist/collection/components/dda-creditcard-field/dda-creditcard-field.js +1 -1
  56. package/dist/collection/components/dda-dropdown/dda-dropdown.js +1 -1
  57. package/dist/collection/components/dda-footer/dda-footer.js +1 -1
  58. package/dist/collection/components/dda-header/dda-header.js +838 -88
  59. package/dist/collection/components/dda-header/dda-header.stories.js +200 -35
  60. package/dist/collection/components/dda-header/nav-model.js +69 -0
  61. package/dist/collection/components/dda-home-banner/dda-home-banner.js +46 -2
  62. package/dist/collection/components/dda-home-banner/dda-home-banner.stories.js +6 -0
  63. package/dist/collection/components/dda-home-banner/home-banner.css +10 -0
  64. package/dist/collection/components/dda-home-carousel/dda-home-carousel.js +164 -0
  65. package/dist/collection/components/dda-home-carousel/dda-home-carousel.stories.js +24 -0
  66. package/dist/collection/components/dda-input/dda-input.js +1 -1
  67. package/dist/collection/components/dda-link-button/dda-link-button.js +2 -2
  68. package/dist/collection/components/dda-number-field/dda-number-field.js +1 -1
  69. package/dist/collection/components/dda-pagination/dda-pagination.js +1 -1
  70. package/dist/collection/components/dda-phonefield/dda-phonefield.js +1 -1
  71. package/dist/collection/components/dda-progressbar/dda-progressbar.js +1 -1
  72. package/dist/collection/components/dda-radiobutton/dda-radiobutton.css +233 -6
  73. package/dist/collection/components/dda-radiobutton/dda-radiobutton.js +1 -1
  74. package/dist/collection/components/dda-range-slider/dda-range-slider.js +2 -2
  75. package/dist/collection/components/dda-scroll-icon/dda-scroll-icon.css +72 -0
  76. package/dist/collection/components/dda-scroll-icon/dda-scroll-icon.js +120 -0
  77. package/dist/collection/components/dda-scroll-icon/dda-scroll-icon.stories.js +17 -0
  78. package/dist/collection/components/dda-select/dda-select.js +209 -18
  79. package/dist/collection/components/dda-select/dda-select.stories.js +68 -10
  80. package/dist/collection/components/dda-sticky-footer/dda-sticky-footer.js +496 -5
  81. package/dist/collection/components/dda-sticky-footer/dda-sticky-footer.stories.js +12 -1
  82. package/dist/collection/components/dda-tabs/dda-tabs.js +1 -1
  83. package/dist/collection/components/dda-textarea/dda-textarea.js +2 -2
  84. package/dist/collection/components/dda-toggle/dda-toggle.js +1 -1
  85. package/dist/collection/components/dda-tooltip/dda-tooltip.js +1 -1
  86. package/dist/collection/components/dda-ui-card/dda-ui-card.js +1 -1
  87. package/dist/collection/components/segmented-groups/dda-segmented-tabs/dda-segmented-tabs.css +29 -9
  88. package/dist/collection/components/segmented-groups/dda-segmented-tabs/dda-segmented-tabs.js +1 -1
  89. package/dist/collection/components/stepper/dda-horizontal-stepper/dda-horizontal-stepper.js +1 -1
  90. package/dist/collection/components/stepper/dda-vertical-stepper/dda-vertical-stepper.js +1 -1
  91. package/dist/collection/global/global.css +233 -6
  92. package/dist/collection/utils/parse-json-prop.js +34 -0
  93. package/dist/components/dda-accordion.js +1 -59
  94. package/dist/components/dda-alert.js +1 -94
  95. package/dist/components/dda-attach-file.js +1 -138
  96. package/dist/components/dda-avatar.js +1 -107
  97. package/dist/components/dda-banner-card.d.ts +11 -0
  98. package/dist/components/dda-banner-card.js +1 -0
  99. package/dist/components/dda-banner.js +1 -57
  100. package/dist/components/dda-breadcrumb.js +1 -66
  101. package/dist/components/dda-button.js +1 -6
  102. package/dist/components/dda-checkbox.js +1 -59
  103. package/dist/components/dda-chip.js +1 -55
  104. package/dist/components/dda-credit-card.js +1 -54
  105. package/dist/components/dda-creditcard-field.js +1 -133
  106. package/dist/components/dda-dropdown.js +1 -113
  107. package/dist/components/dda-footer.js +1 -72
  108. package/dist/components/dda-header.js +1 -367
  109. package/dist/components/dda-home-banner.js +1 -249
  110. package/dist/components/dda-home-carousel.d.ts +11 -0
  111. package/dist/components/dda-home-carousel.js +1 -0
  112. package/dist/components/dda-horizontal-stepper.js +1 -69
  113. package/dist/components/dda-input.js +1 -92
  114. package/dist/components/dda-link-button.js +1 -6
  115. package/dist/components/dda-number-field.js +1 -127
  116. package/dist/components/dda-pagination.js +1 -133
  117. package/dist/components/dda-phonefield.js +1 -316
  118. package/dist/components/dda-progressbar.js +1 -58
  119. package/dist/components/dda-radiobutton.js +1 -6
  120. package/dist/components/dda-range-slider.js +1 -93
  121. package/dist/components/dda-scroll-icon.d.ts +11 -0
  122. package/dist/components/dda-scroll-icon.js +1 -0
  123. package/dist/components/dda-search-input.js +1 -102
  124. package/dist/components/dda-segmented-tabs.js +1 -133
  125. package/dist/components/dda-select.js +1 -219
  126. package/dist/components/dda-sticky-footer.js +1 -132
  127. package/dist/components/dda-tabs.js +1 -91
  128. package/dist/components/dda-textarea.js +1 -31277
  129. package/dist/components/dda-toggle.js +1 -55
  130. package/dist/components/dda-tooltip.js +1 -6
  131. package/dist/components/dda-ui-card.js +1 -71
  132. package/dist/components/dda-vertical-stepper.js +1 -72
  133. package/dist/components/index.js +1 -34
  134. package/dist/components/p-BUv5-HOm.js +1 -0
  135. package/dist/components/p-BvEnF2US.js +1 -0
  136. package/dist/components/{p-C2Cs3ruo.js → p-C8EPNbJC.js} +1 -1
  137. package/dist/components/p-CS5LPB9B.js +1 -0
  138. package/dist/components/p-CedhFs0i.js +1 -0
  139. package/dist/components/p-CvcFE821.js +1 -0
  140. package/dist/components/{p-D7sJgBDk.js → p-DHgv6zQy.js} +1 -1
  141. package/dist/components/p-kJRBkcMn.js +1 -0
  142. package/dist/dda/dda.css +46 -6385
  143. package/dist/dda/dda.esm.js +1 -47
  144. package/dist/dda/index.esm.js +1 -29
  145. package/dist/dda/p-074f8dab.entry.js +1 -0
  146. package/dist/dda/p-1a0d490e.entry.js +1 -0
  147. package/dist/dda/p-1c42a19b.entry.js +1 -0
  148. package/dist/dda/p-1eb0af5a.entry.js +1 -0
  149. package/dist/dda/p-215629d6.entry.js +1 -0
  150. package/dist/dda/{p-eed4a104.entry.js → p-221613e8.entry.js} +1 -1
  151. package/dist/dda/{p-3835f3b7.entry.js → p-284bc873.entry.js} +1 -1
  152. package/dist/dda/{p-98c59aa8.entry.js → p-2f99af01.entry.js} +1 -1
  153. package/dist/dda/p-3003acb0.entry.js +1 -0
  154. package/dist/dda/p-5b314403.entry.js +1 -0
  155. package/dist/dda/{p-32746429.entry.js → p-5b669c2f.entry.js} +1 -1
  156. package/dist/dda/p-5fe5c488.entry.js +1 -0
  157. package/dist/dda/{p-95b87c55.entry.js → p-6577d6b5.entry.js} +1 -1
  158. package/dist/dda/{p-95e1a389.entry.js → p-6b358fa8.entry.js} +1 -1
  159. package/dist/dda/{p-eecfe091.entry.js → p-6e6ce5c8.entry.js} +1 -1
  160. package/dist/dda/{p-d8fd3f73.entry.js → p-70a20025.entry.js} +1 -1
  161. package/dist/dda/p-78ff5172.entry.js +1 -0
  162. package/dist/dda/{p-489a3711.entry.js → p-7afdde8a.entry.js} +1 -1
  163. package/dist/dda/{p-1acc0fda.entry.js → p-7ba8071a.entry.js} +1 -1
  164. package/dist/dda/{p-96741f45.entry.js → p-7d20f926.entry.js} +1 -1
  165. package/dist/dda/p-806de72d.entry.js +1 -0
  166. package/dist/dda/{p-0a86a74c.entry.js → p-922d33f8.entry.js} +1 -1
  167. package/dist/dda/{p-c39d196d.entry.js → p-9a9e372d.entry.js} +1 -1
  168. package/dist/dda/{p-0574c9df.entry.js → p-9c3b7bf8.entry.js} +1 -1
  169. package/dist/dda/p-BJOt1fv7.js +2 -0
  170. package/dist/dda/p-CvcFE821.js +1 -0
  171. package/dist/dda/{p-ee6d56fc.entry.js → p-a19303b5.entry.js} +1 -1
  172. package/dist/dda/{p-87d647e7.entry.js → p-c7a4e410.entry.js} +1 -1
  173. package/dist/dda/{p-8de4f35e.entry.js → p-c9e411cb.entry.js} +1 -1
  174. package/dist/dda/{p-3d57e957.entry.js → p-cd1d47cb.entry.js} +1 -1
  175. package/dist/dda/p-cfdbbd1a.entry.js +1 -0
  176. package/dist/dda/{p-e660a594.entry.js → p-d114dea3.entry.js} +1 -1
  177. package/dist/dda/{p-16f94322.entry.js → p-db565a30.entry.js} +1 -1
  178. package/dist/dda/{p-d06c5daf.entry.js → p-e6043272.entry.js} +1 -1
  179. package/dist/dda/p-ef52ec1e.entry.js +1 -0
  180. package/dist/dda/{p-9c86dc30.entry.js → p-f2c9d77a.entry.js} +1 -1
  181. package/dist/dda/{p-2630152f.entry.js → p-faccb313.entry.js} +1 -1
  182. package/dist/dda/{p-9416d8ec.entry.js → p-fdf0dce8.entry.js} +1 -1
  183. package/dist/esm/dda-accordion.entry.js +3 -3
  184. package/dist/esm/dda-alert.entry.js +5 -5
  185. package/dist/esm/dda-attach-file.entry.js +3 -3
  186. package/dist/esm/dda-avatar.entry.js +8 -8
  187. package/dist/{dda/dda-tabs.entry.js → esm/dda-banner-card.entry.js} +14 -49
  188. package/dist/esm/dda-banner.entry.js +3 -3
  189. package/dist/esm/dda-breadcrumb.entry.js +2 -2
  190. package/dist/esm/dda-button.entry.js +3 -3
  191. package/dist/esm/dda-checkbox.entry.js +3 -3
  192. package/dist/esm/dda-chip.entry.js +3 -3
  193. package/dist/esm/dda-credit-card.entry.js +3 -3
  194. package/dist/esm/dda-creditcard-field.entry.js +4 -4
  195. package/dist/esm/dda-dropdown.entry.js +4 -4
  196. package/dist/esm/dda-footer.entry.js +3 -3
  197. package/dist/esm/dda-header.entry.js +208 -23
  198. package/dist/esm/dda-home-banner.entry.js +9 -5
  199. package/dist/{dda/dda-breadcrumb.entry.js → esm/dda-home-carousel.entry.js} +16 -30
  200. package/dist/esm/dda-horizontal-stepper.entry.js +3 -3
  201. package/dist/esm/dda-input.entry.js +3 -3
  202. package/dist/esm/dda-link-button_2.entry.js +6 -6
  203. package/dist/esm/dda-number-field.entry.js +3 -3
  204. package/dist/esm/dda-pagination.entry.js +4 -4
  205. package/dist/esm/dda-phonefield.entry.js +3 -3
  206. package/dist/esm/dda-progressbar.entry.js +3 -3
  207. package/dist/esm/dda-range-slider.entry.js +3 -3
  208. package/dist/esm/dda-scroll-icon.entry.js +30 -0
  209. package/dist/esm/dda-search-input.entry.js +2 -2
  210. package/dist/esm/dda-segmented-tabs.entry.js +5 -5
  211. package/dist/esm/dda-select.entry.js +84 -15
  212. package/dist/esm/dda-sticky-footer.entry.js +41 -4
  213. package/dist/esm/dda-tabs.entry.js +4 -4
  214. package/dist/esm/dda-textarea.entry.js +1351 -16189
  215. package/dist/esm/dda-toggle.entry.js +3 -3
  216. package/dist/esm/dda-tooltip.entry.js +3 -3
  217. package/dist/esm/dda-ui-card.entry.js +3 -3
  218. package/dist/esm/dda-vertical-stepper.entry.js +2 -2
  219. package/dist/esm/dda.js +4 -31
  220. package/dist/esm/{index-CI_UcUy5.js → index-BJOt1fv7.js} +1 -1
  221. package/dist/esm/index.js +0 -10
  222. package/dist/esm/loader.js +3 -3
  223. package/dist/esm/parse-json-prop-CvcFE821.js +36 -0
  224. package/dist/types/components/dda-banner-card/dda-banner-card.d.ts +25 -0
  225. package/dist/types/components/dda-header/dda-header.d.ts +114 -4
  226. package/dist/types/components/dda-header/dda-header.stories.d.ts +187 -0
  227. package/dist/types/components/dda-header/nav-model.d.ts +19 -0
  228. package/dist/types/components/dda-home-banner/dda-home-banner.d.ts +4 -0
  229. package/dist/types/components/dda-home-banner/dda-home-banner.stories.d.ts +8 -0
  230. package/dist/types/components/dda-home-carousel/dda-home-carousel.d.ts +29 -0
  231. package/dist/types/components/dda-home-carousel/dda-home-carousel.stories.d.ts +20 -0
  232. package/dist/types/components/dda-scroll-icon/dda-scroll-icon.d.ts +11 -0
  233. package/dist/types/components/dda-scroll-icon/dda-scroll-icon.stories.d.ts +20 -0
  234. package/dist/types/components/dda-select/dda-select.d.ts +40 -5
  235. package/dist/types/components/dda-select/dda-select.stories.d.ts +25 -0
  236. package/dist/types/components/dda-sticky-footer/dda-sticky-footer.d.ts +70 -1
  237. package/dist/types/components/dda-sticky-footer/dda-sticky-footer.stories.d.ts +4 -0
  238. package/dist/types/components.d.ts +863 -21
  239. package/dist/types/utils/parse-json-prop.d.ts +1 -0
  240. package/package.json +4 -2
  241. package/dist/cjs/dda-link-button.cjs.entry.js +0 -51
  242. package/dist/cjs/dda-radiobutton.cjs.entry.js +0 -27
  243. package/dist/cjs/index-DXyiIgGK.js +0 -4637
  244. package/dist/components/dda-button2.js +0 -80
  245. package/dist/components/dda-link-button2.js +0 -81
  246. package/dist/components/dda-radiobutton2.js +0 -54
  247. package/dist/components/dda-tooltip2.js +0 -70
  248. package/dist/components/index2.js +0 -4622
  249. package/dist/components/p-C520q-ka.js +0 -1
  250. package/dist/components/p-CZO9Eawo.js +0 -1
  251. package/dist/components/p-_-I_65FG.js +0 -1
  252. package/dist/components/unique-id.js +0 -12
  253. package/dist/dda/dda-accordion.entry.js +0 -31
  254. package/dist/dda/dda-alert.entry.js +0 -57
  255. package/dist/dda/dda-attach-file.entry.js +0 -102
  256. package/dist/dda/dda-avatar.entry.js +0 -70
  257. package/dist/dda/dda-banner.entry.js +0 -30
  258. package/dist/dda/dda-button.entry.js +0 -47
  259. package/dist/dda/dda-checkbox.entry.js +0 -27
  260. package/dist/dda/dda-chip.entry.js +0 -25
  261. package/dist/dda/dda-creditcard-field.entry.js +0 -94
  262. package/dist/dda/dda-dropdown.entry.js +0 -75
  263. package/dist/dda/dda-footer.entry.js +0 -34
  264. package/dist/dda/dda-header.entry.js +0 -282
  265. package/dist/dda/dda-home-banner.entry.js +0 -208
  266. package/dist/dda/dda-horizontal-stepper.entry.js +0 -39
  267. package/dist/dda/dda-input.entry.js +0 -56
  268. package/dist/dda/dda-link-button.entry.js +0 -49
  269. package/dist/dda/dda-number-field.entry.js +0 -86
  270. package/dist/dda/dda-pagination.entry.js +0 -86
  271. package/dist/dda/dda-phonefield.entry.js +0 -271
  272. package/dist/dda/dda-progressbar.entry.js +0 -30
  273. package/dist/dda/dda-radiobutton.entry.js +0 -25
  274. package/dist/dda/dda-range-slider.entry.js +0 -55
  275. package/dist/dda/dda-search-input.entry.js +0 -63
  276. package/dist/dda/dda-segmented-tabs.entry.js +0 -96
  277. package/dist/dda/dda-select.entry.js +0 -183
  278. package/dist/dda/dda-sticky-footer.entry.js +0 -61
  279. package/dist/dda/dda-textarea.entry.js +0 -31241
  280. package/dist/dda/dda-toggle.entry.js +0 -25
  281. package/dist/dda/dda-ui-card.entry.js +0 -41
  282. package/dist/dda/dda-vertical-stepper.entry.js +0 -41
  283. package/dist/dda/index-CFIwfRqf.js +0 -4622
  284. package/dist/dda/p-271c5f91.entry.js +0 -1
  285. package/dist/dda/p-58de747b.entry.js +0 -1
  286. package/dist/dda/p-63754a93.entry.js +0 -1
  287. package/dist/dda/p-9541e108.entry.js +0 -1
  288. package/dist/dda/p-CI_UcUy5.js +0 -2
  289. package/dist/dda/p-b6190656.entry.js +0 -1
  290. package/dist/dda/p-c0da1e14.entry.js +0 -1
  291. package/dist/dda/p-c5ebf7df.entry.js +0 -1
  292. package/dist/dda/p-e8ca224f.entry.js +0 -1
  293. package/dist/dda/p-ea1720d2.entry.js +0 -1
  294. package/dist/dda/unique-id-B-I003EB.js +0 -12
  295. package/dist/esm/dda-link-button.entry.js +0 -49
  296. package/dist/esm/dda-radiobutton.entry.js +0 -25
  297. package/dist/esm/index-CFIwfRqf.js +0 -4622
@@ -6,7 +6,15 @@
6
6
  */
7
7
  import { HTMLStencilElement, JSXBase } from "./stencil-public-runtime";
8
8
  import { BreadcrumbItem } from "./components/dda-breadcrumb/dda-breadcrumb";
9
+ import { QuickLinkItem } from "./components/dda-header/dda-header";
10
+ import { BannerCardItem } from "./components/dda-home-carousel/dda-home-carousel";
11
+ import { SelectOption } from "./components/dda-select/dda-select";
12
+ import { MiddleLinkItem, RightLinkItem } from "./components/dda-sticky-footer/dda-sticky-footer";
9
13
  export { BreadcrumbItem } from "./components/dda-breadcrumb/dda-breadcrumb";
14
+ export { QuickLinkItem } from "./components/dda-header/dda-header";
15
+ export { BannerCardItem } from "./components/dda-home-carousel/dda-home-carousel";
16
+ export { SelectOption } from "./components/dda-select/dda-select";
17
+ export { MiddleLinkItem, RightLinkItem } from "./components/dda-sticky-footer/dda-sticky-footer";
10
18
  export namespace Components {
11
19
  interface DdaAccordion {
12
20
  /**
@@ -264,6 +272,53 @@ export namespace Components {
264
272
  */
265
273
  "slides": string;
266
274
  }
275
+ interface DdaBannerCard {
276
+ /**
277
+ * Text under the title. An empty value shows nothing.
278
+ */
279
+ "banner_card_description": string;
280
+ /**
281
+ * Link URL. With a URL the card is a link; without one it is a button.
282
+ */
283
+ "banner_card_href": string;
284
+ /**
285
+ * `id` of the link or button.
286
+ */
287
+ "banner_card_id": string;
288
+ /**
289
+ * `name` of the button (cards without a URL).
290
+ */
291
+ "banner_card_name": string;
292
+ /**
293
+ * Title of the card; it is the accessible name.
294
+ */
295
+ "banner_card_title": string;
296
+ /**
297
+ * 3.x name of `banner_card_href`. `banner_card_href` wins when both are set.
298
+ */
299
+ "banner_card_url": string;
300
+ /**
301
+ * `value` of the button (cards without a URL).
302
+ */
303
+ "banner_card_value": string;
304
+ /**
305
+ * Theme override class, e.g. `light-mode`.
306
+ */
307
+ "component_mode": string;
308
+ /**
309
+ * Extra CSS classes.
310
+ * @default ''
311
+ */
312
+ "custom_class": string;
313
+ /**
314
+ * Kept for 3.x markup. The icon is decorative, so this text is not read.
315
+ */
316
+ "image_alt": string;
317
+ /**
318
+ * Icon image URL. The icon is decorative: the title names the card.
319
+ */
320
+ "image_src": string;
321
+ }
267
322
  interface DdaBreadcrumb {
268
323
  /**
269
324
  * The items, as an array or a JSON string of `{ text, icon?, url? }` objects. The last item is the current page. The `data-breadcrumbs` attribute is still read when this is not set.
@@ -676,10 +731,30 @@ export namespace Components {
676
731
  "socialIcons": string;
677
732
  }
678
733
  interface DdaHeader {
734
+ /**
735
+ * `class` of the accessibility button icon. Default: `material-icons material-symbols-outlined`.
736
+ */
737
+ "accessibility_button_icon_family": string;
738
+ /**
739
+ * Material icon name of the accessibility buttons. Default: `accessibility`.
740
+ */
741
+ "accessibility_button_icon_name": string;
742
+ /**
743
+ * `id` of the desktop accessibility button. The side-menu button gets this id plus `-sidemenu`.
744
+ */
745
+ "accessibility_button_id": string;
679
746
  /**
680
747
  * `name` attribute of the accessibility button in the side menu.
681
748
  */
682
749
  "accessibility_button_name": string;
750
+ /**
751
+ * Accessible name (visually hidden text) of both accessibility buttons. Default: `Accessibility`.
752
+ */
753
+ "accessibility_button_text": string;
754
+ /**
755
+ * Tooltip of the desktop accessibility button. Default: `Accessibility`.
756
+ */
757
+ "accessibility_tooltip": string;
683
758
  /**
684
759
  * `name` attribute of the buttons that close the accessibility panel.
685
760
  */
@@ -692,6 +767,34 @@ export namespace Components {
692
767
  * Not used: the current markup does not render an element with this name.
693
768
  */
694
769
  "close_sidebar_button_name": string;
770
+ /**
771
+ * Label of the colour-blind contrast option. Default: `Colours Blind`.
772
+ */
773
+ "contrast_color_blind_text": string;
774
+ /**
775
+ * Text above the contrast options. Default: `Select your preferred contrast setting`.
776
+ */
777
+ "contrast_description": string;
778
+ /**
779
+ * Label of the green-weakness contrast option. Default: `Green Weakness`.
780
+ */
781
+ "contrast_green_weakness_text": string;
782
+ /**
783
+ * 3.x spelling of `contrast_normal_text`. `contrast_normal_text` wins when both are set.
784
+ */
785
+ "contrast_noraml_text": string;
786
+ /**
787
+ * Label of the normal contrast option. Default: `Normal`.
788
+ */
789
+ "contrast_normal_text": string;
790
+ /**
791
+ * Label of the red-weakness contrast option. Default: `Red Weakness`.
792
+ */
793
+ "contrast_red_weakness_text": string;
794
+ /**
795
+ * Heading of the contrast column in the accessibility panel. Default: `Contrast`. An empty value removes the heading.
796
+ */
797
+ "contrast_title": string;
695
798
  /**
696
799
  * Alternative text for the first logo.
697
800
  */
@@ -713,6 +816,11 @@ export namespace Components {
713
816
  * `name` attribute of the hamburger menu button.
714
817
  */
715
818
  "hamburger_menu_button_name": string;
819
+ /**
820
+ * Hides the "other" side-menu links and their title. Default: `false`.
821
+ * @default false
822
+ */
823
+ "hideOtherMenu": boolean;
716
824
  /**
717
825
  * Hides the Login link in the desktop toolbar and the side menu.
718
826
  * @default false
@@ -728,9 +836,13 @@ export namespace Components {
728
836
  */
729
837
  "language_lang": string;
730
838
  /**
731
- * Label of the language buttons in the desktop toolbar and the side menu. Default: `العربية`.
839
+ * Label of the language buttons in the desktop toolbar and the side menu. Default: `العربية`. An empty value removes the language buttons.
732
840
  */
733
841
  "language_text": string;
842
+ /**
843
+ * Tooltip of the desktop language button. Default: `Language`.
844
+ */
845
+ "language_tooltip": string;
734
846
  /**
735
847
  * Material Symbols icon name of the Login link in the desktop toolbar and the side menu. Default: `sentiment_satisfied`.
736
848
  */
@@ -740,22 +852,54 @@ export namespace Components {
740
852
  */
741
853
  "loginLink": string;
742
854
  /**
743
- * Label of the Login link in the desktop toolbar and the side menu. Default: `Login`.
855
+ * Label of the Login link in the desktop toolbar and the side menu. Default: `Login`. An empty value removes the Login link.
744
856
  */
745
857
  "loginText": string;
858
+ /**
859
+ * Tooltip of the desktop Login link. Default: the Login label.
860
+ */
861
+ "login_tooltip": string;
746
862
  /**
747
863
  * Accessible name of the hamburger menu button (visually hidden text). Default: `Menu`.
748
864
  * @default 'Menu'
749
865
  */
750
866
  "menu_button_label": string;
751
867
  /**
752
- * Main navigation links. JSON array of `{ label, href, menuLabel, subMenu }`; `subMenu` items are `{ title, description, icon, href }` and open a mega menu.
868
+ * `id` of the mobile search control.
753
869
  */
754
- "quickLinks": string;
870
+ "mobileMenuSearchId": string;
871
+ /**
872
+ * 3.x mobile search: when set, the mobile search is a plain link to this URL (with `mobileMenuSearchId` as its id) and the header's own search panel is not rendered.
873
+ */
874
+ "mobileMenuSearchUrl": string;
875
+ /**
876
+ * Second list in the side menu. JSON array (or array property) of `{ label, href, active }`; `active: "true"` marks the current page.
877
+ */
878
+ "otherMenuItems": string | Array<{ label: string; href: string; active?: string }>;
879
+ /**
880
+ * Main navigation links: a JSON array (HTML attribute) or an array (JavaScript property). 5.x items are `{ label, href, menuLabel, subMenu }`; `subMenu` items are `{ title, description, icon, href }` and open a mega menu. 3.x items (`{ type, headerMenuLabel, url, children, ... }`) also work.
881
+ */
882
+ "quickLinks": string | QuickLinkItem[];
755
883
  /**
756
884
  * URL of the ReadSpeaker "listen" link in the accessibility panel.
757
885
  */
758
886
  "readSpeakerLink": string;
887
+ /**
888
+ * 3.x name of `readSpeakerLink`, as an attribute: `read_speaker_link`. `readSpeakerLink` wins when both are set.
889
+ */
890
+ "read_speaker_link": string;
891
+ /**
892
+ * Text in the screen reader column. Default: `Listen to the content of the page by clicking play or listen`.
893
+ */
894
+ "screen_reader_description": string;
895
+ /**
896
+ * Accessible name of the ReadSpeaker play link. Default: `Listen to this page using ReadSpeaker`.
897
+ */
898
+ "screen_reader_link_label": string;
899
+ /**
900
+ * Heading of the screen reader column. Default: `Screen Reader`.
901
+ */
902
+ "screen_reader_title": string;
759
903
  /**
760
904
  * Placeholder and accessible label of the search input. Default: `Search`.
761
905
  */
@@ -772,6 +916,14 @@ export namespace Components {
772
916
  * `name` of the search input, which is the query parameter sent to `search_action`. Default: `q`.
773
917
  */
774
918
  "search_input_name": string;
919
+ /**
920
+ * Placeholder of the search inputs. Default: the `searchText` value, else `Search`.
921
+ */
922
+ "search_input_placeholder": string;
923
+ /**
924
+ * Tooltip of the desktop search. Default: `Search`.
925
+ */
926
+ "search_tooltip": string;
775
927
  /**
776
928
  * Alternative text for the second logo.
777
929
  */
@@ -789,14 +941,44 @@ export namespace Components {
789
941
  * Image URL of the white second logo, shown in dark theme and on a transparent header. Falls back to `secondLogoSrc` on desktop.
790
942
  */
791
943
  "secondLogoWhiteSrc": string;
944
+ /**
945
+ * The contrast option shown as selected. The header updates it when the user picks an option. Default: `normal`.
946
+ * @default 'normal'
947
+ */
948
+ "selected_contrast": 'normal' | 'colorblind' | 'redweakness' | 'greenweakness';
949
+ /**
950
+ * The text size button shown as selected (`default-primary`). The header updates it on each click. Default: none.
951
+ */
952
+ "selected_text_size": 'small' | 'normal' | 'large';
953
+ /**
954
+ * Title above the side-menu links. Default: `Quick Links`. An empty value removes it.
955
+ */
956
+ "sideMainMenuTitle": string;
792
957
  /**
793
958
  * Side menu items. JSON array of `{ label, href, subMenu }`; each `subMenu` item is `{ headerLabel, label, href, subMenu }` and can nest.
794
959
  */
795
960
  "sideMenuItems": string;
961
+ /**
962
+ * Title above the "other" side-menu links. It shows only when there are other links.
963
+ */
964
+ "sideOtherMenuTitle": string;
965
+ /**
966
+ * Text in the text size column. Default: `Use the buttons below to increase or decrease the text size`.
967
+ */
968
+ "text_size_description": string;
969
+ /**
970
+ * Heading of the text size column. Default: `Text Size`.
971
+ */
972
+ "text_size_title": string;
796
973
  /**
797
974
  * `name` attribute of the accessibility button in the desktop toolbar.
798
975
  */
799
976
  "toggle_accessibility_button_name": string;
977
+ /**
978
+ * When `false`, the header renders no accessibility panel; the buttons only emit `accessibilitymenufunctionality`, so the page can open its own panel. Default: `true`.
979
+ * @default true
980
+ */
981
+ "usePredesignedAccessibilityMenu": boolean;
800
982
  }
801
983
  interface DdaHomeBanner {
802
984
  /**
@@ -834,6 +1016,16 @@ export namespace Components {
834
1016
  * @default 'Previous slide'
835
1017
  */
836
1018
  "previous_button_label": string;
1019
+ /**
1020
+ * Shows the decorative scroll icon at the end of the slide controls (hidden at 992px and below unless `show_scroll_icon_mobile` is set). Default: `true`.
1021
+ * @default true
1022
+ */
1023
+ "show_scroll_icon": boolean;
1024
+ /**
1025
+ * Also shows the scroll icon at 992px and below. Default: `false`.
1026
+ * @default false
1027
+ */
1028
+ "show_scroll_icon_mobile": boolean;
837
1029
  /**
838
1030
  * Prefix for each slide dot's accessible name, e.g. "Go to slide 2".
839
1031
  * @default 'Go to slide'
@@ -845,6 +1037,31 @@ export namespace Components {
845
1037
  */
846
1038
  "slide_status_label": string;
847
1039
  }
1040
+ interface DdaHomeCarousel {
1041
+ /**
1042
+ * Accessible name of the card list. Default: `Quick links`.
1043
+ * @default 'Quick links'
1044
+ */
1045
+ "aria_label": string;
1046
+ /**
1047
+ * The cards. JSON array, or array property, of `{ banner_card_href, banner_card_title, banner_card_description, image_src, image_alt, banner_card_id, banner_card_value, banner_card_name, custom_class, component_mode }`.
1048
+ */
1049
+ "bannercardlist": string | BannerCardItem[];
1050
+ /**
1051
+ * Theme override class, e.g. `light-mode`.
1052
+ */
1053
+ "component_mode": string;
1054
+ /**
1055
+ * Extra CSS classes on the list.
1056
+ * @default ''
1057
+ */
1058
+ "custom_class": string;
1059
+ /**
1060
+ * Cards shown at once on wide screens. A card is never narrower than 220px. Default: `5`.
1061
+ * @default 5
1062
+ */
1063
+ "items_in_view": number;
1064
+ }
848
1065
  interface DdaHorizontalStepper {
849
1066
  /**
850
1067
  * Theme override class on the stepper container, e.g. `light-mode`.
@@ -1384,6 +1601,27 @@ export namespace Components {
1384
1601
  */
1385
1602
  "tooltip_position"?: string;
1386
1603
  }
1604
+ interface DdaScrollIcon {
1605
+ /**
1606
+ * Theme override class, e.g. `light-mode`.
1607
+ */
1608
+ "component_mode": string;
1609
+ /**
1610
+ * Extra CSS classes on the icon.
1611
+ * @default ''
1612
+ */
1613
+ "custom_class": string;
1614
+ /**
1615
+ * Colour: `white` or `black`. Default: `white`.
1616
+ * @default 'white'
1617
+ */
1618
+ "scroll_icon_color": 'white' | 'black';
1619
+ /**
1620
+ * Size: `sm` (16.5 × 24px) or `lg` (40 × 60px). Default: `sm`.
1621
+ * @default 'sm'
1622
+ */
1623
+ "scroll_icon_size": 'sm' | 'lg';
1624
+ }
1387
1625
  interface DdaSearchInput {
1388
1626
  /**
1389
1627
  * Accessible name of the search input. Use it when there is no visible label.
@@ -1534,20 +1772,32 @@ export namespace Components {
1534
1772
  * Helper text shown under the field.
1535
1773
  */
1536
1774
  "helper_text": string;
1775
+ /**
1776
+ * `name` sent in `selectBlurred`. Falls back to `button_id`.
1777
+ */
1778
+ "input_name": string;
1537
1779
  /**
1538
1780
  * Label shown above the field. The trigger button is named by the label and its current text.
1539
1781
  */
1540
1782
  "label": string;
1783
+ /**
1784
+ * 3.x name of `aria_label`, used as the trigger's aria-label only when `label` is not set. `aria_label` wins when both are set; when `label` is set, `main_aria_label` is ignored and the trigger keeps its `aria-labelledby`.
1785
+ */
1786
+ "main_aria_label": string;
1541
1787
  /**
1542
1788
  * `name` of each option button in the list.
1543
1789
  */
1544
1790
  "option_select_button_name": string;
1545
1791
  /**
1546
- * Options as a JSON array string, e.g. `'["Dubai","Abu Dhabi","Sharjah"]'`. Invalid JSON shows "No options available".
1792
+ * Options: a JSON array, or an array property, of strings (`["Dubai","Sharjah"]`) or 3.x `{ id, text }` objects (`[{"id":1,"text":"Dubai"}]`). Other entries are ignored. Invalid JSON shows "No options available".
1547
1793
  */
1548
- "options": string;
1794
+ "options": string | Array<string | SelectOption>;
1549
1795
  /**
1550
- * The selected option. Must match an entry in `options`. The trigger shows "Select an option" when it is empty. Updated when the user picks an option. Mutable: the component assigns it.
1796
+ * Text in the trigger when nothing is selected. Default: `Select an option`.
1797
+ */
1798
+ "placeholder": string;
1799
+ /**
1800
+ * The selected option: its id, or its text. For string options the id is the text. Updated to the picked option's id (as a string) when the user picks one. Mutable: the component assigns it.
1551
1801
  */
1552
1802
  "selected": string;
1553
1803
  /**
@@ -1558,6 +1808,10 @@ export namespace Components {
1558
1808
  * `name` of the trigger button.
1559
1809
  */
1560
1810
  "toggle_button_name": string;
1811
+ /**
1812
+ * 3.x name of `error` (the validation state class). `error` wins when both are set.
1813
+ */
1814
+ "validation_type": string;
1561
1815
  }
1562
1816
  interface DdaStickyFooter {
1563
1817
  /**
@@ -1568,10 +1822,18 @@ export namespace Components {
1568
1822
  * Link URL of the accessibility icon, the second icon in the left section.
1569
1823
  */
1570
1824
  "accessibilityIconHref": string;
1825
+ /**
1826
+ * `id` of the accessibility (04) link.
1827
+ */
1828
+ "accessibilityIconId": string;
1571
1829
  /**
1572
1830
  * Image URL of the accessibility icon.
1573
1831
  */
1574
1832
  "accessibilityIconSrc": string;
1833
+ /**
1834
+ * Accessibility (04) image for `color-theme="dark"`.
1835
+ */
1836
+ "accessibilityIconSrcDark": string;
1575
1837
  /**
1576
1838
  * Tooltip text of the accessibility icon.
1577
1839
  */
@@ -1584,10 +1846,18 @@ export namespace Components {
1584
1846
  * Link URL of the AI assistant icon (right section).
1585
1847
  */
1586
1848
  "aiIconHref": string;
1849
+ /**
1850
+ * `id` of the AI assistant link.
1851
+ */
1852
+ "aiIconId": string;
1587
1853
  /**
1588
1854
  * Image URL of the AI assistant icon.
1589
1855
  */
1590
1856
  "aiIconSrc": string;
1857
+ /**
1858
+ * AI assistant image for `color-theme="dark"`.
1859
+ */
1860
+ "aiIconSrcDark": string;
1591
1861
  /**
1592
1862
  * Tooltip text of the AI assistant icon.
1593
1863
  */
@@ -1605,14 +1875,55 @@ export namespace Components {
1605
1875
  * Link URL of the chat icon (right section).
1606
1876
  */
1607
1877
  "chatIconHref": string;
1878
+ /**
1879
+ * `id` of the chat link.
1880
+ */
1881
+ "chatIconId": string;
1608
1882
  /**
1609
1883
  * Image URL of the chat icon.
1610
1884
  */
1611
1885
  "chatIconSrc": string;
1886
+ /**
1887
+ * Chat image for `color-theme="dark"`.
1888
+ */
1889
+ "chatIconSrcDark": string;
1612
1890
  /**
1613
1891
  * Tooltip text of the chat icon.
1614
1892
  */
1615
1893
  "chatIconTooltip": string;
1894
+ /**
1895
+ * `dark` uses the `*-src-dark` images; an image without a dark version keeps its light image. Default: `light`.
1896
+ * @default 'light'
1897
+ */
1898
+ "colorTheme": 'light' | 'dark';
1899
+ /**
1900
+ * Alternative text of both dubai.ae images.
1901
+ */
1902
+ "dubaiaeIconAlt": string;
1903
+ /**
1904
+ * Link URL of the dubai.ae link (right section).
1905
+ */
1906
+ "dubaiaeIconHref": string;
1907
+ /**
1908
+ * `id` of the dubai.ae link.
1909
+ */
1910
+ "dubaiaeIconId": string;
1911
+ /**
1912
+ * dubai.ae small icon, shown at 992px and below.
1913
+ */
1914
+ "dubaiaeIconSmallSrc": string;
1915
+ /**
1916
+ * dubai.ae wordmark image, shown on desktop. The link shows only when this and `dubaiaeIconSmallSrc` are set.
1917
+ */
1918
+ "dubaiaeIconSrc": string;
1919
+ /**
1920
+ * dubai.ae wordmark for `color-theme="dark"`.
1921
+ */
1922
+ "dubaiaeIconSrcDark": string;
1923
+ /**
1924
+ * Tooltip text of the dubai.ae link.
1925
+ */
1926
+ "dubaiaeIconTooltip": string;
1616
1927
  /**
1617
1928
  * Alternative text for the first logo.
1618
1929
  */
@@ -1637,16 +1948,25 @@ export namespace Components {
1637
1948
  * Link URL of the happiness icon (left section).
1638
1949
  */
1639
1950
  "happinessIconHref": string;
1951
+ /**
1952
+ * `id` of the happiness link.
1953
+ */
1954
+ "happinessIconId": string;
1640
1955
  /**
1641
1956
  * Image URL of the happiness icon.
1642
1957
  */
1643
1958
  "happinessIconSrc": string;
1959
+ /**
1960
+ * Happiness image for `color-theme="dark"`.
1961
+ */
1962
+ "happinessIconSrcDark": string;
1644
1963
  /**
1645
1964
  * Tooltip text of the happiness icon.
1646
1965
  */
1647
1966
  "happinessIconTooltip": string;
1648
1967
  /**
1649
- * Hides the middle logo section. The section shows only when this is explicitly `false`.
1968
+ * Hides the middle logo section. Default: `false` (the logos show when at least one is set).
1969
+ * @default false
1650
1970
  */
1651
1971
  "hideMiddleSection": boolean;
1652
1972
  /**
@@ -1665,6 +1985,23 @@ export namespace Components {
1665
1985
  * Image URL of the location icon. Takes precedence over `locationButtonIcon`.
1666
1986
  */
1667
1987
  "locationLogoSrc": string;
1988
+ /**
1989
+ * Middle logos as a list (3.x). JSON array, or array property, of `{ LogoTooltip, href, src, srcDark, alt }`. When set, it replaces the first, second and third logo props.
1990
+ */
1991
+ "middleLink": string | MiddleLinkItem[];
1992
+ /**
1993
+ * Material icon name of the "more" button. When set, the right links collapse behind this button at 992px and below.
1994
+ */
1995
+ "moreIcon": string;
1996
+ /**
1997
+ * `class` of the "more" button icon. Default: `material-icons`.
1998
+ */
1999
+ "moreIconFamily": string;
2000
+ /**
2001
+ * Accessible name of the "more" button. Default, and fallback for an empty value: `More`.
2002
+ * @default 'More'
2003
+ */
2004
+ "more_button_label": string;
1668
2005
  /**
1669
2006
  * Link URL of the news icon (right section).
1670
2007
  */
@@ -1681,6 +2018,10 @@ export namespace Components {
1681
2018
  * Tooltip text and alternative text of the news icon.
1682
2019
  */
1683
2020
  "newsButtonText": string;
2021
+ /**
2022
+ * Right-side text links as a list (3.x). JSON array, or array property, of `{ RightLinkTooltip, href, title, itemId, IconFamily, IconName, LinkText }`. When set, it replaces the location and news links.
2023
+ */
2024
+ "rightLink": string | RightLinkItem[];
1684
2025
  /**
1685
2026
  * Alternative text for the second logo.
1686
2027
  */
@@ -1705,10 +2046,18 @@ export namespace Components {
1705
2046
  * Link URL of the services icon (left section).
1706
2047
  */
1707
2048
  "servicesIconHref": string;
2049
+ /**
2050
+ * `id` of the services link.
2051
+ */
2052
+ "servicesIconId": string;
1708
2053
  /**
1709
2054
  * Image URL of the services icon.
1710
2055
  */
1711
2056
  "servicesIconSrc": string;
2057
+ /**
2058
+ * Services image for `color-theme="dark"`.
2059
+ */
2060
+ "servicesIconSrcDark": string;
1712
2061
  /**
1713
2062
  * Text shown next to the services icon. Nothing is shown when it is not set.
1714
2063
  */
@@ -1996,6 +2345,10 @@ export interface DdaHeaderCustomEvent<T> extends CustomEvent<T> {
1996
2345
  detail: T;
1997
2346
  target: HTMLDdaHeaderElement;
1998
2347
  }
2348
+ export interface DdaHomeCarouselCustomEvent<T> extends CustomEvent<T> {
2349
+ detail: T;
2350
+ target: HTMLDdaHomeCarouselElement;
2351
+ }
1999
2352
  export interface DdaPaginationCustomEvent<T> extends CustomEvent<T> {
2000
2353
  detail: T;
2001
2354
  target: HTMLDdaPaginationElement;
@@ -2070,6 +2423,12 @@ declare global {
2070
2423
  prototype: HTMLDdaBannerElement;
2071
2424
  new (): HTMLDdaBannerElement;
2072
2425
  };
2426
+ interface HTMLDdaBannerCardElement extends Components.DdaBannerCard, HTMLStencilElement {
2427
+ }
2428
+ var HTMLDdaBannerCardElement: {
2429
+ prototype: HTMLDdaBannerCardElement;
2430
+ new (): HTMLDdaBannerCardElement;
2431
+ };
2073
2432
  interface HTMLDdaBreadcrumbElement extends Components.DdaBreadcrumb, HTMLStencilElement {
2074
2433
  }
2075
2434
  var HTMLDdaBreadcrumbElement: {
@@ -2141,6 +2500,8 @@ declare global {
2141
2500
  new (): HTMLDdaFooterElement;
2142
2501
  };
2143
2502
  interface HTMLDdaHeaderElementEventMap {
2503
+ "accessibilitymenufunctionality": void;
2504
+ "searchfunctionality": string;
2144
2505
  "languageSwitch": void;
2145
2506
  "smTextSize": void;
2146
2507
  "baseTextSize": void;
@@ -2171,6 +2532,23 @@ declare global {
2171
2532
  prototype: HTMLDdaHomeBannerElement;
2172
2533
  new (): HTMLDdaHomeBannerElement;
2173
2534
  };
2535
+ interface HTMLDdaHomeCarouselElementEventMap {
2536
+ "cardClick": BannerCardItem;
2537
+ }
2538
+ interface HTMLDdaHomeCarouselElement extends Components.DdaHomeCarousel, HTMLStencilElement {
2539
+ addEventListener<K extends keyof HTMLDdaHomeCarouselElementEventMap>(type: K, listener: (this: HTMLDdaHomeCarouselElement, ev: DdaHomeCarouselCustomEvent<HTMLDdaHomeCarouselElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
2540
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2541
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2542
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
2543
+ removeEventListener<K extends keyof HTMLDdaHomeCarouselElementEventMap>(type: K, listener: (this: HTMLDdaHomeCarouselElement, ev: DdaHomeCarouselCustomEvent<HTMLDdaHomeCarouselElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
2544
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2545
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2546
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
2547
+ }
2548
+ var HTMLDdaHomeCarouselElement: {
2549
+ prototype: HTMLDdaHomeCarouselElement;
2550
+ new (): HTMLDdaHomeCarouselElement;
2551
+ };
2174
2552
  interface HTMLDdaHorizontalStepperElement extends Components.DdaHorizontalStepper, HTMLStencilElement {
2175
2553
  }
2176
2554
  var HTMLDdaHorizontalStepperElement: {
@@ -2236,6 +2614,12 @@ declare global {
2236
2614
  prototype: HTMLDdaRangeSliderElement;
2237
2615
  new (): HTMLDdaRangeSliderElement;
2238
2616
  };
2617
+ interface HTMLDdaScrollIconElement extends Components.DdaScrollIcon, HTMLStencilElement {
2618
+ }
2619
+ var HTMLDdaScrollIconElement: {
2620
+ prototype: HTMLDdaScrollIconElement;
2621
+ new (): HTMLDdaScrollIconElement;
2622
+ };
2239
2623
  interface HTMLDdaSearchInputElement extends Components.DdaSearchInput, HTMLStencilElement {
2240
2624
  }
2241
2625
  var HTMLDdaSearchInputElement: {
@@ -2260,7 +2644,9 @@ declare global {
2260
2644
  new (): HTMLDdaSegmentedTabsElement;
2261
2645
  };
2262
2646
  interface HTMLDdaSelectElementEventMap {
2263
- "selectionChange": { value: string };
2647
+ "selectionChange": { value: string; id: string | number; text: string };
2648
+ "selectChanged": SelectOption;
2649
+ "selectBlurred": { name: string; value: string };
2264
2650
  }
2265
2651
  interface HTMLDdaSelectElement extends Components.DdaSelect, HTMLStencilElement {
2266
2652
  addEventListener<K extends keyof HTMLDdaSelectElementEventMap>(type: K, listener: (this: HTMLDdaSelectElement, ev: DdaSelectCustomEvent<HTMLDdaSelectElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
@@ -2346,6 +2732,7 @@ declare global {
2346
2732
  "dda-attach-file": HTMLDdaAttachFileElement;
2347
2733
  "dda-avatar": HTMLDdaAvatarElement;
2348
2734
  "dda-banner": HTMLDdaBannerElement;
2735
+ "dda-banner-card": HTMLDdaBannerCardElement;
2349
2736
  "dda-breadcrumb": HTMLDdaBreadcrumbElement;
2350
2737
  "dda-button": HTMLDdaButtonElement;
2351
2738
  "dda-checkbox": HTMLDdaCheckboxElement;
@@ -2356,6 +2743,7 @@ declare global {
2356
2743
  "dda-footer": HTMLDdaFooterElement;
2357
2744
  "dda-header": HTMLDdaHeaderElement;
2358
2745
  "dda-home-banner": HTMLDdaHomeBannerElement;
2746
+ "dda-home-carousel": HTMLDdaHomeCarouselElement;
2359
2747
  "dda-horizontal-stepper": HTMLDdaHorizontalStepperElement;
2360
2748
  "dda-input": HTMLDdaInputElement;
2361
2749
  "dda-link-button": HTMLDdaLinkButtonElement;
@@ -2365,6 +2753,7 @@ declare global {
2365
2753
  "dda-progressbar": HTMLDdaProgressbarElement;
2366
2754
  "dda-radiobutton": HTMLDdaRadiobuttonElement;
2367
2755
  "dda-range-slider": HTMLDdaRangeSliderElement;
2756
+ "dda-scroll-icon": HTMLDdaScrollIconElement;
2368
2757
  "dda-search-input": HTMLDdaSearchInputElement;
2369
2758
  "dda-segmented-tabs": HTMLDdaSegmentedTabsElement;
2370
2759
  "dda-select": HTMLDdaSelectElement;
@@ -2646,6 +3035,53 @@ declare namespace LocalJSX {
2646
3035
  */
2647
3036
  "slides"?: string;
2648
3037
  }
3038
+ interface DdaBannerCard {
3039
+ /**
3040
+ * Text under the title. An empty value shows nothing.
3041
+ */
3042
+ "banner_card_description"?: string;
3043
+ /**
3044
+ * Link URL. With a URL the card is a link; without one it is a button.
3045
+ */
3046
+ "banner_card_href"?: string;
3047
+ /**
3048
+ * `id` of the link or button.
3049
+ */
3050
+ "banner_card_id"?: string;
3051
+ /**
3052
+ * `name` of the button (cards without a URL).
3053
+ */
3054
+ "banner_card_name"?: string;
3055
+ /**
3056
+ * Title of the card; it is the accessible name.
3057
+ */
3058
+ "banner_card_title"?: string;
3059
+ /**
3060
+ * 3.x name of `banner_card_href`. `banner_card_href` wins when both are set.
3061
+ */
3062
+ "banner_card_url"?: string;
3063
+ /**
3064
+ * `value` of the button (cards without a URL).
3065
+ */
3066
+ "banner_card_value"?: string;
3067
+ /**
3068
+ * Theme override class, e.g. `light-mode`.
3069
+ */
3070
+ "component_mode"?: string;
3071
+ /**
3072
+ * Extra CSS classes.
3073
+ * @default ''
3074
+ */
3075
+ "custom_class"?: string;
3076
+ /**
3077
+ * Kept for 3.x markup. The icon is decorative, so this text is not read.
3078
+ */
3079
+ "image_alt"?: string;
3080
+ /**
3081
+ * Icon image URL. The icon is decorative: the title names the card.
3082
+ */
3083
+ "image_src"?: string;
3084
+ }
2649
3085
  interface DdaBreadcrumb {
2650
3086
  /**
2651
3087
  * The items, as an array or a JSON string of `{ text, icon?, url? }` objects. The last item is the current page. The `data-breadcrumbs` attribute is still read when this is not set.
@@ -3066,10 +3502,30 @@ declare namespace LocalJSX {
3066
3502
  "socialIcons"?: string;
3067
3503
  }
3068
3504
  interface DdaHeader {
3505
+ /**
3506
+ * `class` of the accessibility button icon. Default: `material-icons material-symbols-outlined`.
3507
+ */
3508
+ "accessibility_button_icon_family"?: string;
3509
+ /**
3510
+ * Material icon name of the accessibility buttons. Default: `accessibility`.
3511
+ */
3512
+ "accessibility_button_icon_name"?: string;
3513
+ /**
3514
+ * `id` of the desktop accessibility button. The side-menu button gets this id plus `-sidemenu`.
3515
+ */
3516
+ "accessibility_button_id"?: string;
3069
3517
  /**
3070
3518
  * `name` attribute of the accessibility button in the side menu.
3071
3519
  */
3072
3520
  "accessibility_button_name"?: string;
3521
+ /**
3522
+ * Accessible name (visually hidden text) of both accessibility buttons. Default: `Accessibility`.
3523
+ */
3524
+ "accessibility_button_text"?: string;
3525
+ /**
3526
+ * Tooltip of the desktop accessibility button. Default: `Accessibility`.
3527
+ */
3528
+ "accessibility_tooltip"?: string;
3073
3529
  /**
3074
3530
  * `name` attribute of the buttons that close the accessibility panel.
3075
3531
  */
@@ -3082,6 +3538,34 @@ declare namespace LocalJSX {
3082
3538
  * Not used: the current markup does not render an element with this name.
3083
3539
  */
3084
3540
  "close_sidebar_button_name"?: string;
3541
+ /**
3542
+ * Label of the colour-blind contrast option. Default: `Colours Blind`.
3543
+ */
3544
+ "contrast_color_blind_text"?: string;
3545
+ /**
3546
+ * Text above the contrast options. Default: `Select your preferred contrast setting`.
3547
+ */
3548
+ "contrast_description"?: string;
3549
+ /**
3550
+ * Label of the green-weakness contrast option. Default: `Green Weakness`.
3551
+ */
3552
+ "contrast_green_weakness_text"?: string;
3553
+ /**
3554
+ * 3.x spelling of `contrast_normal_text`. `contrast_normal_text` wins when both are set.
3555
+ */
3556
+ "contrast_noraml_text"?: string;
3557
+ /**
3558
+ * Label of the normal contrast option. Default: `Normal`.
3559
+ */
3560
+ "contrast_normal_text"?: string;
3561
+ /**
3562
+ * Label of the red-weakness contrast option. Default: `Red Weakness`.
3563
+ */
3564
+ "contrast_red_weakness_text"?: string;
3565
+ /**
3566
+ * Heading of the contrast column in the accessibility panel. Default: `Contrast`. An empty value removes the heading.
3567
+ */
3568
+ "contrast_title"?: string;
3085
3569
  /**
3086
3570
  * Alternative text for the first logo.
3087
3571
  */
@@ -3103,6 +3587,11 @@ declare namespace LocalJSX {
3103
3587
  * `name` attribute of the hamburger menu button.
3104
3588
  */
3105
3589
  "hamburger_menu_button_name"?: string;
3590
+ /**
3591
+ * Hides the "other" side-menu links and their title. Default: `false`.
3592
+ * @default false
3593
+ */
3594
+ "hideOtherMenu"?: boolean;
3106
3595
  /**
3107
3596
  * Hides the Login link in the desktop toolbar and the side menu.
3108
3597
  * @default false
@@ -3118,9 +3607,13 @@ declare namespace LocalJSX {
3118
3607
  */
3119
3608
  "language_lang"?: string;
3120
3609
  /**
3121
- * Label of the language buttons in the desktop toolbar and the side menu. Default: `العربية`.
3610
+ * Label of the language buttons in the desktop toolbar and the side menu. Default: `العربية`. An empty value removes the language buttons.
3122
3611
  */
3123
3612
  "language_text"?: string;
3613
+ /**
3614
+ * Tooltip of the desktop language button. Default: `Language`.
3615
+ */
3616
+ "language_tooltip"?: string;
3124
3617
  /**
3125
3618
  * Material Symbols icon name of the Login link in the desktop toolbar and the side menu. Default: `sentiment_satisfied`.
3126
3619
  */
@@ -3130,14 +3623,30 @@ declare namespace LocalJSX {
3130
3623
  */
3131
3624
  "loginLink"?: string;
3132
3625
  /**
3133
- * Label of the Login link in the desktop toolbar and the side menu. Default: `Login`.
3626
+ * Label of the Login link in the desktop toolbar and the side menu. Default: `Login`. An empty value removes the Login link.
3134
3627
  */
3135
3628
  "loginText"?: string;
3629
+ /**
3630
+ * Tooltip of the desktop Login link. Default: the Login label.
3631
+ */
3632
+ "login_tooltip"?: string;
3136
3633
  /**
3137
3634
  * Accessible name of the hamburger menu button (visually hidden text). Default: `Menu`.
3138
3635
  * @default 'Menu'
3139
3636
  */
3140
3637
  "menu_button_label"?: string;
3638
+ /**
3639
+ * `id` of the mobile search control.
3640
+ */
3641
+ "mobileMenuSearchId"?: string;
3642
+ /**
3643
+ * 3.x mobile search: when set, the mobile search is a plain link to this URL (with `mobileMenuSearchId` as its id) and the header's own search panel is not rendered.
3644
+ */
3645
+ "mobileMenuSearchUrl"?: string;
3646
+ /**
3647
+ * Emitted on every click of an accessibility button (3.x name).
3648
+ */
3649
+ "onAccessibilitymenufunctionality"?: (event: DdaHeaderCustomEvent<void>) => void;
3141
3650
  /**
3142
3651
  * Emitted when the user clicks the `A` (default text size) button in the accessibility panel.
3143
3652
  */
@@ -3170,18 +3679,42 @@ declare namespace LocalJSX {
3170
3679
  * Emitted when a non-empty search is submitted. Call `preventDefault()` to stop the browser navigating to `search_action`, for example to route inside a single-page app.
3171
3680
  */
3172
3681
  "onSearchSubmit"?: (event: DdaHeaderCustomEvent<{ query: string }>) => void;
3682
+ /**
3683
+ * Emitted with the query when a non-empty search is submitted (3.x name). Pages that open a results page from this event keep working. `searchSubmit` is the 5.x event, and it can cancel the navigation.
3684
+ */
3685
+ "onSearchfunctionality"?: (event: DdaHeaderCustomEvent<string>) => void;
3173
3686
  /**
3174
3687
  * Emitted when the user clicks the `A-` (smaller text) button in the accessibility panel.
3175
3688
  */
3176
3689
  "onSmTextSize"?: (event: DdaHeaderCustomEvent<void>) => void;
3177
3690
  /**
3178
- * Main navigation links. JSON array of `{ label, href, menuLabel, subMenu }`; `subMenu` items are `{ title, description, icon, href }` and open a mega menu.
3691
+ * Second list in the side menu. JSON array (or array property) of `{ label, href, active }`; `active: "true"` marks the current page.
3179
3692
  */
3180
- "quickLinks"?: string;
3693
+ "otherMenuItems"?: string | Array<{ label: string; href: string; active?: string }>;
3694
+ /**
3695
+ * Main navigation links: a JSON array (HTML attribute) or an array (JavaScript property). 5.x items are `{ label, href, menuLabel, subMenu }`; `subMenu` items are `{ title, description, icon, href }` and open a mega menu. 3.x items (`{ type, headerMenuLabel, url, children, ... }`) also work.
3696
+ */
3697
+ "quickLinks"?: string | QuickLinkItem[];
3181
3698
  /**
3182
3699
  * URL of the ReadSpeaker "listen" link in the accessibility panel.
3183
3700
  */
3184
3701
  "readSpeakerLink"?: string;
3702
+ /**
3703
+ * 3.x name of `readSpeakerLink`, as an attribute: `read_speaker_link`. `readSpeakerLink` wins when both are set.
3704
+ */
3705
+ "read_speaker_link"?: string;
3706
+ /**
3707
+ * Text in the screen reader column. Default: `Listen to the content of the page by clicking play or listen`.
3708
+ */
3709
+ "screen_reader_description"?: string;
3710
+ /**
3711
+ * Accessible name of the ReadSpeaker play link. Default: `Listen to this page using ReadSpeaker`.
3712
+ */
3713
+ "screen_reader_link_label"?: string;
3714
+ /**
3715
+ * Heading of the screen reader column. Default: `Screen Reader`.
3716
+ */
3717
+ "screen_reader_title"?: string;
3185
3718
  /**
3186
3719
  * Placeholder and accessible label of the search input. Default: `Search`.
3187
3720
  */
@@ -3198,6 +3731,14 @@ declare namespace LocalJSX {
3198
3731
  * `name` of the search input, which is the query parameter sent to `search_action`. Default: `q`.
3199
3732
  */
3200
3733
  "search_input_name"?: string;
3734
+ /**
3735
+ * Placeholder of the search inputs. Default: the `searchText` value, else `Search`.
3736
+ */
3737
+ "search_input_placeholder"?: string;
3738
+ /**
3739
+ * Tooltip of the desktop search. Default: `Search`.
3740
+ */
3741
+ "search_tooltip"?: string;
3201
3742
  /**
3202
3743
  * Alternative text for the second logo.
3203
3744
  */
@@ -3215,14 +3756,44 @@ declare namespace LocalJSX {
3215
3756
  * Image URL of the white second logo, shown in dark theme and on a transparent header. Falls back to `secondLogoSrc` on desktop.
3216
3757
  */
3217
3758
  "secondLogoWhiteSrc"?: string;
3759
+ /**
3760
+ * The contrast option shown as selected. The header updates it when the user picks an option. Default: `normal`.
3761
+ * @default 'normal'
3762
+ */
3763
+ "selected_contrast"?: 'normal' | 'colorblind' | 'redweakness' | 'greenweakness';
3764
+ /**
3765
+ * The text size button shown as selected (`default-primary`). The header updates it on each click. Default: none.
3766
+ */
3767
+ "selected_text_size"?: 'small' | 'normal' | 'large';
3768
+ /**
3769
+ * Title above the side-menu links. Default: `Quick Links`. An empty value removes it.
3770
+ */
3771
+ "sideMainMenuTitle"?: string;
3218
3772
  /**
3219
3773
  * Side menu items. JSON array of `{ label, href, subMenu }`; each `subMenu` item is `{ headerLabel, label, href, subMenu }` and can nest.
3220
3774
  */
3221
3775
  "sideMenuItems"?: string;
3776
+ /**
3777
+ * Title above the "other" side-menu links. It shows only when there are other links.
3778
+ */
3779
+ "sideOtherMenuTitle"?: string;
3780
+ /**
3781
+ * Text in the text size column. Default: `Use the buttons below to increase or decrease the text size`.
3782
+ */
3783
+ "text_size_description"?: string;
3784
+ /**
3785
+ * Heading of the text size column. Default: `Text Size`.
3786
+ */
3787
+ "text_size_title"?: string;
3222
3788
  /**
3223
3789
  * `name` attribute of the accessibility button in the desktop toolbar.
3224
3790
  */
3225
3791
  "toggle_accessibility_button_name"?: string;
3792
+ /**
3793
+ * When `false`, the header renders no accessibility panel; the buttons only emit `accessibilitymenufunctionality`, so the page can open its own panel. Default: `true`.
3794
+ * @default true
3795
+ */
3796
+ "usePredesignedAccessibilityMenu"?: boolean;
3226
3797
  }
3227
3798
  interface DdaHomeBanner {
3228
3799
  /**
@@ -3260,6 +3831,16 @@ declare namespace LocalJSX {
3260
3831
  * @default 'Previous slide'
3261
3832
  */
3262
3833
  "previous_button_label"?: string;
3834
+ /**
3835
+ * Shows the decorative scroll icon at the end of the slide controls (hidden at 992px and below unless `show_scroll_icon_mobile` is set). Default: `true`.
3836
+ * @default true
3837
+ */
3838
+ "show_scroll_icon"?: boolean;
3839
+ /**
3840
+ * Also shows the scroll icon at 992px and below. Default: `false`.
3841
+ * @default false
3842
+ */
3843
+ "show_scroll_icon_mobile"?: boolean;
3263
3844
  /**
3264
3845
  * Prefix for each slide dot's accessible name, e.g. "Go to slide 2".
3265
3846
  * @default 'Go to slide'
@@ -3271,6 +3852,35 @@ declare namespace LocalJSX {
3271
3852
  */
3272
3853
  "slide_status_label"?: string;
3273
3854
  }
3855
+ interface DdaHomeCarousel {
3856
+ /**
3857
+ * Accessible name of the card list. Default: `Quick links`.
3858
+ * @default 'Quick links'
3859
+ */
3860
+ "aria_label"?: string;
3861
+ /**
3862
+ * The cards. JSON array, or array property, of `{ banner_card_href, banner_card_title, banner_card_description, image_src, image_alt, banner_card_id, banner_card_value, banner_card_name, custom_class, component_mode }`.
3863
+ */
3864
+ "bannercardlist"?: string | BannerCardItem[];
3865
+ /**
3866
+ * Theme override class, e.g. `light-mode`.
3867
+ */
3868
+ "component_mode"?: string;
3869
+ /**
3870
+ * Extra CSS classes on the list.
3871
+ * @default ''
3872
+ */
3873
+ "custom_class"?: string;
3874
+ /**
3875
+ * Cards shown at once on wide screens. A card is never narrower than 220px. Default: `5`.
3876
+ * @default 5
3877
+ */
3878
+ "items_in_view"?: number;
3879
+ /**
3880
+ * Emitted when a card is clicked, with its item. A link card still navigates.
3881
+ */
3882
+ "onCardClick"?: (event: DdaHomeCarouselCustomEvent<BannerCardItem>) => void;
3883
+ }
3274
3884
  interface DdaHorizontalStepper {
3275
3885
  /**
3276
3886
  * Theme override class on the stepper container, e.g. `light-mode`.
@@ -3814,6 +4424,27 @@ declare namespace LocalJSX {
3814
4424
  */
3815
4425
  "tooltip_position"?: string;
3816
4426
  }
4427
+ interface DdaScrollIcon {
4428
+ /**
4429
+ * Theme override class, e.g. `light-mode`.
4430
+ */
4431
+ "component_mode"?: string;
4432
+ /**
4433
+ * Extra CSS classes on the icon.
4434
+ * @default ''
4435
+ */
4436
+ "custom_class"?: string;
4437
+ /**
4438
+ * Colour: `white` or `black`. Default: `white`.
4439
+ * @default 'white'
4440
+ */
4441
+ "scroll_icon_color"?: 'white' | 'black';
4442
+ /**
4443
+ * Size: `sm` (16.5 × 24px) or `lg` (40 × 60px). Default: `sm`.
4444
+ * @default 'sm'
4445
+ */
4446
+ "scroll_icon_size"?: 'sm' | 'lg';
4447
+ }
3817
4448
  interface DdaSearchInput {
3818
4449
  /**
3819
4450
  * Accessible name of the search input. Use it when there is no visible label.
@@ -3968,24 +4599,44 @@ declare namespace LocalJSX {
3968
4599
  * Helper text shown under the field.
3969
4600
  */
3970
4601
  "helper_text"?: string;
4602
+ /**
4603
+ * `name` sent in `selectBlurred`. Falls back to `button_id`.
4604
+ */
4605
+ "input_name"?: string;
3971
4606
  /**
3972
4607
  * Label shown above the field. The trigger button is named by the label and its current text.
3973
4608
  */
3974
4609
  "label"?: string;
3975
4610
  /**
3976
- * Emitted when the user picks an option other than the selected one, by mouse or keyboard. `detail.value` is the new option.
4611
+ * 3.x name of `aria_label`, used as the trigger's aria-label only when `label` is not set. `aria_label` wins when both are set; when `label` is set, `main_aria_label` is ignored and the trigger keeps its `aria-labelledby`.
4612
+ */
4613
+ "main_aria_label"?: string;
4614
+ /**
4615
+ * 3.x event: emitted when the trigger loses focus, with `{ name, value }` — `input_name` (or `button_id`) and the selected text.
4616
+ */
4617
+ "onSelectBlurred"?: (event: DdaSelectCustomEvent<{ name: string; value: string }>) => void;
4618
+ /**
4619
+ * 3.x event: emitted each time the user picks one, even if it is already selected. For a string option this is `{ id, text }`; for an object option this is the original option object, extra fields included, as 3.x did.
4620
+ */
4621
+ "onSelectChanged"?: (event: DdaSelectCustomEvent<SelectOption>) => void;
4622
+ /**
4623
+ * Emitted when the user picks an option other than the selected one, by mouse or keyboard. `detail.value` is the new `selected` value (the option id as a string); `detail.id` and `detail.text` are the option.
3977
4624
  */
3978
- "onSelectionChange"?: (event: DdaSelectCustomEvent<{ value: string }>) => void;
4625
+ "onSelectionChange"?: (event: DdaSelectCustomEvent<{ value: string; id: string | number; text: string }>) => void;
3979
4626
  /**
3980
4627
  * `name` of each option button in the list.
3981
4628
  */
3982
4629
  "option_select_button_name"?: string;
3983
4630
  /**
3984
- * Options as a JSON array string, e.g. `'["Dubai","Abu Dhabi","Sharjah"]'`. Invalid JSON shows "No options available".
4631
+ * Options: a JSON array, or an array property, of strings (`["Dubai","Sharjah"]`) or 3.x `{ id, text }` objects (`[{"id":1,"text":"Dubai"}]`). Other entries are ignored. Invalid JSON shows "No options available".
3985
4632
  */
3986
- "options"?: string;
4633
+ "options"?: string | Array<string | SelectOption>;
4634
+ /**
4635
+ * Text in the trigger when nothing is selected. Default: `Select an option`.
4636
+ */
4637
+ "placeholder"?: string;
3987
4638
  /**
3988
- * The selected option. Must match an entry in `options`. The trigger shows "Select an option" when it is empty. Updated when the user picks an option. Mutable: the component assigns it.
4639
+ * The selected option: its id, or its text. For string options the id is the text. Updated to the picked option's id (as a string) when the user picks one. Mutable: the component assigns it.
3989
4640
  */
3990
4641
  "selected"?: string;
3991
4642
  /**
@@ -3996,6 +4647,10 @@ declare namespace LocalJSX {
3996
4647
  * `name` of the trigger button.
3997
4648
  */
3998
4649
  "toggle_button_name"?: string;
4650
+ /**
4651
+ * 3.x name of `error` (the validation state class). `error` wins when both are set.
4652
+ */
4653
+ "validation_type"?: string;
3999
4654
  }
4000
4655
  interface DdaStickyFooter {
4001
4656
  /**
@@ -4006,10 +4661,18 @@ declare namespace LocalJSX {
4006
4661
  * Link URL of the accessibility icon, the second icon in the left section.
4007
4662
  */
4008
4663
  "accessibilityIconHref"?: string;
4664
+ /**
4665
+ * `id` of the accessibility (04) link.
4666
+ */
4667
+ "accessibilityIconId"?: string;
4009
4668
  /**
4010
4669
  * Image URL of the accessibility icon.
4011
4670
  */
4012
4671
  "accessibilityIconSrc"?: string;
4672
+ /**
4673
+ * Accessibility (04) image for `color-theme="dark"`.
4674
+ */
4675
+ "accessibilityIconSrcDark"?: string;
4013
4676
  /**
4014
4677
  * Tooltip text of the accessibility icon.
4015
4678
  */
@@ -4022,10 +4685,18 @@ declare namespace LocalJSX {
4022
4685
  * Link URL of the AI assistant icon (right section).
4023
4686
  */
4024
4687
  "aiIconHref"?: string;
4688
+ /**
4689
+ * `id` of the AI assistant link.
4690
+ */
4691
+ "aiIconId"?: string;
4025
4692
  /**
4026
4693
  * Image URL of the AI assistant icon.
4027
4694
  */
4028
4695
  "aiIconSrc"?: string;
4696
+ /**
4697
+ * AI assistant image for `color-theme="dark"`.
4698
+ */
4699
+ "aiIconSrcDark"?: string;
4029
4700
  /**
4030
4701
  * Tooltip text of the AI assistant icon.
4031
4702
  */
@@ -4043,14 +4714,55 @@ declare namespace LocalJSX {
4043
4714
  * Link URL of the chat icon (right section).
4044
4715
  */
4045
4716
  "chatIconHref"?: string;
4717
+ /**
4718
+ * `id` of the chat link.
4719
+ */
4720
+ "chatIconId"?: string;
4046
4721
  /**
4047
4722
  * Image URL of the chat icon.
4048
4723
  */
4049
4724
  "chatIconSrc"?: string;
4725
+ /**
4726
+ * Chat image for `color-theme="dark"`.
4727
+ */
4728
+ "chatIconSrcDark"?: string;
4050
4729
  /**
4051
4730
  * Tooltip text of the chat icon.
4052
4731
  */
4053
4732
  "chatIconTooltip"?: string;
4733
+ /**
4734
+ * `dark` uses the `*-src-dark` images; an image without a dark version keeps its light image. Default: `light`.
4735
+ * @default 'light'
4736
+ */
4737
+ "colorTheme"?: 'light' | 'dark';
4738
+ /**
4739
+ * Alternative text of both dubai.ae images.
4740
+ */
4741
+ "dubaiaeIconAlt"?: string;
4742
+ /**
4743
+ * Link URL of the dubai.ae link (right section).
4744
+ */
4745
+ "dubaiaeIconHref"?: string;
4746
+ /**
4747
+ * `id` of the dubai.ae link.
4748
+ */
4749
+ "dubaiaeIconId"?: string;
4750
+ /**
4751
+ * dubai.ae small icon, shown at 992px and below.
4752
+ */
4753
+ "dubaiaeIconSmallSrc"?: string;
4754
+ /**
4755
+ * dubai.ae wordmark image, shown on desktop. The link shows only when this and `dubaiaeIconSmallSrc` are set.
4756
+ */
4757
+ "dubaiaeIconSrc"?: string;
4758
+ /**
4759
+ * dubai.ae wordmark for `color-theme="dark"`.
4760
+ */
4761
+ "dubaiaeIconSrcDark"?: string;
4762
+ /**
4763
+ * Tooltip text of the dubai.ae link.
4764
+ */
4765
+ "dubaiaeIconTooltip"?: string;
4054
4766
  /**
4055
4767
  * Alternative text for the first logo.
4056
4768
  */
@@ -4075,16 +4787,25 @@ declare namespace LocalJSX {
4075
4787
  * Link URL of the happiness icon (left section).
4076
4788
  */
4077
4789
  "happinessIconHref"?: string;
4790
+ /**
4791
+ * `id` of the happiness link.
4792
+ */
4793
+ "happinessIconId"?: string;
4078
4794
  /**
4079
4795
  * Image URL of the happiness icon.
4080
4796
  */
4081
4797
  "happinessIconSrc"?: string;
4798
+ /**
4799
+ * Happiness image for `color-theme="dark"`.
4800
+ */
4801
+ "happinessIconSrcDark"?: string;
4082
4802
  /**
4083
4803
  * Tooltip text of the happiness icon.
4084
4804
  */
4085
4805
  "happinessIconTooltip"?: string;
4086
4806
  /**
4087
- * Hides the middle logo section. The section shows only when this is explicitly `false`.
4807
+ * Hides the middle logo section. Default: `false` (the logos show when at least one is set).
4808
+ * @default false
4088
4809
  */
4089
4810
  "hideMiddleSection"?: boolean;
4090
4811
  /**
@@ -4103,6 +4824,23 @@ declare namespace LocalJSX {
4103
4824
  * Image URL of the location icon. Takes precedence over `locationButtonIcon`.
4104
4825
  */
4105
4826
  "locationLogoSrc"?: string;
4827
+ /**
4828
+ * Middle logos as a list (3.x). JSON array, or array property, of `{ LogoTooltip, href, src, srcDark, alt }`. When set, it replaces the first, second and third logo props.
4829
+ */
4830
+ "middleLink"?: string | MiddleLinkItem[];
4831
+ /**
4832
+ * Material icon name of the "more" button. When set, the right links collapse behind this button at 992px and below.
4833
+ */
4834
+ "moreIcon"?: string;
4835
+ /**
4836
+ * `class` of the "more" button icon. Default: `material-icons`.
4837
+ */
4838
+ "moreIconFamily"?: string;
4839
+ /**
4840
+ * Accessible name of the "more" button. Default, and fallback for an empty value: `More`.
4841
+ * @default 'More'
4842
+ */
4843
+ "more_button_label"?: string;
4106
4844
  /**
4107
4845
  * Link URL of the news icon (right section).
4108
4846
  */
@@ -4119,6 +4857,10 @@ declare namespace LocalJSX {
4119
4857
  * Tooltip text and alternative text of the news icon.
4120
4858
  */
4121
4859
  "newsButtonText"?: string;
4860
+ /**
4861
+ * Right-side text links as a list (3.x). JSON array, or array property, of `{ RightLinkTooltip, href, title, itemId, IconFamily, IconName, LinkText }`. When set, it replaces the location and news links.
4862
+ */
4863
+ "rightLink"?: string | RightLinkItem[];
4122
4864
  /**
4123
4865
  * Alternative text for the second logo.
4124
4866
  */
@@ -4143,10 +4885,18 @@ declare namespace LocalJSX {
4143
4885
  * Link URL of the services icon (left section).
4144
4886
  */
4145
4887
  "servicesIconHref"?: string;
4888
+ /**
4889
+ * `id` of the services link.
4890
+ */
4891
+ "servicesIconId"?: string;
4146
4892
  /**
4147
4893
  * Image URL of the services icon.
4148
4894
  */
4149
4895
  "servicesIconSrc"?: string;
4896
+ /**
4897
+ * Services image for `color-theme="dark"`.
4898
+ */
4899
+ "servicesIconSrcDark"?: string;
4150
4900
  /**
4151
4901
  * Text shown next to the services icon. Nothing is shown when it is not set.
4152
4902
  */
@@ -4486,6 +5236,19 @@ declare namespace LocalJSX {
4486
5236
  "slider_height": string;
4487
5237
  "aria_label": string;
4488
5238
  }
5239
+ interface DdaBannerCardAttributes {
5240
+ "banner_card_href": string;
5241
+ "banner_card_url": string;
5242
+ "banner_card_id": string;
5243
+ "image_src": string;
5244
+ "image_alt": string;
5245
+ "banner_card_title": string;
5246
+ "banner_card_description": string;
5247
+ "banner_card_value": string;
5248
+ "banner_card_name": string;
5249
+ "custom_class": string;
5250
+ "component_mode": string;
5251
+ }
4489
5252
  interface DdaBreadcrumbAttributes {
4490
5253
  "design": 'text' | 'icon-text' | 'icon';
4491
5254
  "separator": 'chevron_right' | 'pen_size_2';
@@ -4602,14 +5365,45 @@ declare namespace LocalJSX {
4602
5365
  "secondLogoHref": string;
4603
5366
  "loginLink": string;
4604
5367
  "sideMenuItems": string;
4605
- "quickLinks": string;
5368
+ "sideMainMenuTitle": string;
5369
+ "sideOtherMenuTitle": string;
5370
+ "otherMenuItems": string | Array<{ label: string; href: string; active?: string }>;
5371
+ "hideOtherMenu": boolean;
5372
+ "mobileMenuSearchId": string;
5373
+ "mobileMenuSearchUrl": string;
5374
+ "quickLinks": string | QuickLinkItem[];
4606
5375
  "readSpeakerLink": string;
5376
+ "read_speaker_link": string;
5377
+ "contrast_title": string;
5378
+ "contrast_description": string;
5379
+ "contrast_normal_text": string;
5380
+ "contrast_noraml_text": string;
5381
+ "contrast_color_blind_text": string;
5382
+ "contrast_red_weakness_text": string;
5383
+ "contrast_green_weakness_text": string;
5384
+ "screen_reader_title": string;
5385
+ "screen_reader_description": string;
5386
+ "screen_reader_link_label": string;
5387
+ "text_size_title": string;
5388
+ "text_size_description": string;
5389
+ "selected_contrast": 'normal' | 'colorblind' | 'redweakness' | 'greenweakness';
5390
+ "selected_text_size": 'small' | 'normal' | 'large';
4607
5391
  "searchText": string;
4608
5392
  "loginIcon": string;
4609
5393
  "loginText": string;
4610
5394
  "hide_login": boolean;
4611
5395
  "language_text": string;
4612
5396
  "language_lang": string;
5397
+ "accessibility_tooltip": string;
5398
+ "accessibility_button_text": string;
5399
+ "accessibility_button_id": string;
5400
+ "accessibility_button_icon_family": string;
5401
+ "accessibility_button_icon_name": string;
5402
+ "search_tooltip": string;
5403
+ "search_input_placeholder": string;
5404
+ "language_tooltip": string;
5405
+ "login_tooltip": string;
5406
+ "usePredesignedAccessibilityMenu": boolean;
4613
5407
  "hamburger_menu_button_name": string;
4614
5408
  "menu_button_label": string;
4615
5409
  "accessibility_button_name": string;
@@ -4632,6 +5426,15 @@ declare namespace LocalJSX {
4632
5426
  "play_button_label": string;
4633
5427
  "slide_button_label": string;
4634
5428
  "slide_status_label": string;
5429
+ "show_scroll_icon": boolean;
5430
+ "show_scroll_icon_mobile": boolean;
5431
+ }
5432
+ interface DdaHomeCarouselAttributes {
5433
+ "bannercardlist": string | BannerCardItem[];
5434
+ "items_in_view": number;
5435
+ "aria_label": string;
5436
+ "custom_class": string;
5437
+ "component_mode": string;
4635
5438
  }
4636
5439
  interface DdaHorizontalStepperAttributes {
4637
5440
  "steps": string;
@@ -4772,6 +5575,12 @@ declare namespace LocalJSX {
4772
5575
  "left_input_name": string;
4773
5576
  "right_input_name": string;
4774
5577
  }
5578
+ interface DdaScrollIconAttributes {
5579
+ "scroll_icon_size": 'sm' | 'lg';
5580
+ "scroll_icon_color": 'white' | 'black';
5581
+ "custom_class": string;
5582
+ "component_mode": string;
5583
+ }
4775
5584
  interface DdaSearchInputAttributes {
4776
5585
  "placeholder": string;
4777
5586
  "label": string;
@@ -4804,7 +5613,7 @@ declare namespace LocalJSX {
4804
5613
  }
4805
5614
  interface DdaSelectAttributes {
4806
5615
  "label": string;
4807
- "options": string;
5616
+ "options": string | Array<string | SelectOption>;
4808
5617
  "selected": string;
4809
5618
  "disabled": boolean;
4810
5619
  "error": string;
@@ -4817,21 +5626,31 @@ declare namespace LocalJSX {
4817
5626
  "button_id": string;
4818
5627
  "toggle_button_name": string;
4819
5628
  "option_select_button_name": string;
5629
+ "placeholder": string;
5630
+ "input_name": string;
5631
+ "main_aria_label": string;
5632
+ "validation_type": string;
4820
5633
  }
4821
5634
  interface DdaStickyFooterAttributes {
4822
5635
  "happinessIconHref": string;
4823
5636
  "happinessIconSrc": string;
4824
5637
  "happinessIconAlt": string;
4825
5638
  "happinessIconTooltip": string;
5639
+ "happinessIconId": string;
5640
+ "happinessIconSrcDark": string;
4826
5641
  "accessibilityIconHref": string;
4827
5642
  "accessibilityIconSrc": string;
4828
5643
  "accessibilityIconAlt": string;
4829
5644
  "accessibilityIconTooltip": string;
5645
+ "accessibilityIconId": string;
5646
+ "accessibilityIconSrcDark": string;
4830
5647
  "servicesIconHref": string;
4831
5648
  "servicesIconSrc": string;
4832
5649
  "servicesIconAlt": string;
4833
5650
  "servicesIconTooltip": string;
4834
5651
  "servicesIconText": string;
5652
+ "servicesIconId": string;
5653
+ "servicesIconSrcDark": string;
4835
5654
  "firstLogoHref": string;
4836
5655
  "firstLogoSrc": string;
4837
5656
  "firstLogoAlt": string;
@@ -4844,6 +5663,7 @@ declare namespace LocalJSX {
4844
5663
  "thirdLogoSrc": string;
4845
5664
  "thirdLogoAlt": string;
4846
5665
  "thirdLogoTooltip": string;
5666
+ "middleLink": string | MiddleLinkItem[];
4847
5667
  "locationButtonHref": string;
4848
5668
  "locationLogoSrc": string;
4849
5669
  "locationButtonText": string;
@@ -4856,10 +5676,26 @@ declare namespace LocalJSX {
4856
5676
  "aiIconSrc": string;
4857
5677
  "aiIconAlt": string;
4858
5678
  "aiIconTooltip": string;
5679
+ "aiIconId": string;
5680
+ "aiIconSrcDark": string;
4859
5681
  "chatIconHref": string;
4860
5682
  "chatIconSrc": string;
4861
5683
  "chatIconAlt": string;
4862
5684
  "chatIconTooltip": string;
5685
+ "chatIconId": string;
5686
+ "chatIconSrcDark": string;
5687
+ "rightLink": string | RightLinkItem[];
5688
+ "dubaiaeIconHref": string;
5689
+ "dubaiaeIconId": string;
5690
+ "dubaiaeIconSrc": string;
5691
+ "dubaiaeIconSrcDark": string;
5692
+ "dubaiaeIconSmallSrc": string;
5693
+ "dubaiaeIconAlt": string;
5694
+ "dubaiaeIconTooltip": string;
5695
+ "moreIcon": string;
5696
+ "moreIconFamily": string;
5697
+ "more_button_label": string;
5698
+ "colorTheme": 'light' | 'dark';
4863
5699
  "aria_label": string;
4864
5700
  "hideMiddleSection": boolean;
4865
5701
  }
@@ -4934,6 +5770,7 @@ declare namespace LocalJSX {
4934
5770
  "dda-attach-file": Omit<DdaAttachFile, keyof DdaAttachFileAttributes> & { [K in keyof DdaAttachFile & keyof DdaAttachFileAttributes]?: DdaAttachFile[K] } & { [K in keyof DdaAttachFile & keyof DdaAttachFileAttributes as `attr:${K}`]?: DdaAttachFileAttributes[K] } & { [K in keyof DdaAttachFile & keyof DdaAttachFileAttributes as `prop:${K}`]?: DdaAttachFile[K] };
4935
5771
  "dda-avatar": Omit<DdaAvatar, keyof DdaAvatarAttributes> & { [K in keyof DdaAvatar & keyof DdaAvatarAttributes]?: DdaAvatar[K] } & { [K in keyof DdaAvatar & keyof DdaAvatarAttributes as `attr:${K}`]?: DdaAvatarAttributes[K] } & { [K in keyof DdaAvatar & keyof DdaAvatarAttributes as `prop:${K}`]?: DdaAvatar[K] };
4936
5772
  "dda-banner": Omit<DdaBanner, keyof DdaBannerAttributes> & { [K in keyof DdaBanner & keyof DdaBannerAttributes]?: DdaBanner[K] } & { [K in keyof DdaBanner & keyof DdaBannerAttributes as `attr:${K}`]?: DdaBannerAttributes[K] } & { [K in keyof DdaBanner & keyof DdaBannerAttributes as `prop:${K}`]?: DdaBanner[K] };
5773
+ "dda-banner-card": Omit<DdaBannerCard, keyof DdaBannerCardAttributes> & { [K in keyof DdaBannerCard & keyof DdaBannerCardAttributes]?: DdaBannerCard[K] } & { [K in keyof DdaBannerCard & keyof DdaBannerCardAttributes as `attr:${K}`]?: DdaBannerCardAttributes[K] } & { [K in keyof DdaBannerCard & keyof DdaBannerCardAttributes as `prop:${K}`]?: DdaBannerCard[K] };
4937
5774
  "dda-breadcrumb": Omit<DdaBreadcrumb, keyof DdaBreadcrumbAttributes> & { [K in keyof DdaBreadcrumb & keyof DdaBreadcrumbAttributes]?: DdaBreadcrumb[K] } & { [K in keyof DdaBreadcrumb & keyof DdaBreadcrumbAttributes as `attr:${K}`]?: DdaBreadcrumbAttributes[K] } & { [K in keyof DdaBreadcrumb & keyof DdaBreadcrumbAttributes as `prop:${K}`]?: DdaBreadcrumb[K] };
4938
5775
  "dda-button": Omit<DdaButton, keyof DdaButtonAttributes> & { [K in keyof DdaButton & keyof DdaButtonAttributes]?: DdaButton[K] } & { [K in keyof DdaButton & keyof DdaButtonAttributes as `attr:${K}`]?: DdaButtonAttributes[K] } & { [K in keyof DdaButton & keyof DdaButtonAttributes as `prop:${K}`]?: DdaButton[K] };
4939
5776
  "dda-checkbox": Omit<DdaCheckbox, keyof DdaCheckboxAttributes> & { [K in keyof DdaCheckbox & keyof DdaCheckboxAttributes]?: DdaCheckbox[K] } & { [K in keyof DdaCheckbox & keyof DdaCheckboxAttributes as `attr:${K}`]?: DdaCheckboxAttributes[K] } & { [K in keyof DdaCheckbox & keyof DdaCheckboxAttributes as `prop:${K}`]?: DdaCheckbox[K] };
@@ -4944,6 +5781,7 @@ declare namespace LocalJSX {
4944
5781
  "dda-footer": Omit<DdaFooter, keyof DdaFooterAttributes> & { [K in keyof DdaFooter & keyof DdaFooterAttributes]?: DdaFooter[K] } & { [K in keyof DdaFooter & keyof DdaFooterAttributes as `attr:${K}`]?: DdaFooterAttributes[K] } & { [K in keyof DdaFooter & keyof DdaFooterAttributes as `prop:${K}`]?: DdaFooter[K] };
4945
5782
  "dda-header": Omit<DdaHeader, keyof DdaHeaderAttributes> & { [K in keyof DdaHeader & keyof DdaHeaderAttributes]?: DdaHeader[K] } & { [K in keyof DdaHeader & keyof DdaHeaderAttributes as `attr:${K}`]?: DdaHeaderAttributes[K] } & { [K in keyof DdaHeader & keyof DdaHeaderAttributes as `prop:${K}`]?: DdaHeader[K] };
4946
5783
  "dda-home-banner": Omit<DdaHomeBanner, keyof DdaHomeBannerAttributes> & { [K in keyof DdaHomeBanner & keyof DdaHomeBannerAttributes]?: DdaHomeBanner[K] } & { [K in keyof DdaHomeBanner & keyof DdaHomeBannerAttributes as `attr:${K}`]?: DdaHomeBannerAttributes[K] } & { [K in keyof DdaHomeBanner & keyof DdaHomeBannerAttributes as `prop:${K}`]?: DdaHomeBanner[K] };
5784
+ "dda-home-carousel": Omit<DdaHomeCarousel, keyof DdaHomeCarouselAttributes> & { [K in keyof DdaHomeCarousel & keyof DdaHomeCarouselAttributes]?: DdaHomeCarousel[K] } & { [K in keyof DdaHomeCarousel & keyof DdaHomeCarouselAttributes as `attr:${K}`]?: DdaHomeCarouselAttributes[K] } & { [K in keyof DdaHomeCarousel & keyof DdaHomeCarouselAttributes as `prop:${K}`]?: DdaHomeCarousel[K] };
4947
5785
  "dda-horizontal-stepper": Omit<DdaHorizontalStepper, keyof DdaHorizontalStepperAttributes> & { [K in keyof DdaHorizontalStepper & keyof DdaHorizontalStepperAttributes]?: DdaHorizontalStepper[K] } & { [K in keyof DdaHorizontalStepper & keyof DdaHorizontalStepperAttributes as `attr:${K}`]?: DdaHorizontalStepperAttributes[K] } & { [K in keyof DdaHorizontalStepper & keyof DdaHorizontalStepperAttributes as `prop:${K}`]?: DdaHorizontalStepper[K] };
4948
5786
  "dda-input": Omit<DdaInput, keyof DdaInputAttributes> & { [K in keyof DdaInput & keyof DdaInputAttributes]?: DdaInput[K] } & { [K in keyof DdaInput & keyof DdaInputAttributes as `attr:${K}`]?: DdaInputAttributes[K] } & { [K in keyof DdaInput & keyof DdaInputAttributes as `prop:${K}`]?: DdaInput[K] };
4949
5787
  "dda-link-button": Omit<DdaLinkButton, keyof DdaLinkButtonAttributes> & { [K in keyof DdaLinkButton & keyof DdaLinkButtonAttributes]?: DdaLinkButton[K] } & { [K in keyof DdaLinkButton & keyof DdaLinkButtonAttributes as `attr:${K}`]?: DdaLinkButtonAttributes[K] } & { [K in keyof DdaLinkButton & keyof DdaLinkButtonAttributes as `prop:${K}`]?: DdaLinkButton[K] };
@@ -4953,6 +5791,7 @@ declare namespace LocalJSX {
4953
5791
  "dda-progressbar": Omit<DdaProgressbar, keyof DdaProgressbarAttributes> & { [K in keyof DdaProgressbar & keyof DdaProgressbarAttributes]?: DdaProgressbar[K] } & { [K in keyof DdaProgressbar & keyof DdaProgressbarAttributes as `attr:${K}`]?: DdaProgressbarAttributes[K] } & { [K in keyof DdaProgressbar & keyof DdaProgressbarAttributes as `prop:${K}`]?: DdaProgressbar[K] };
4954
5792
  "dda-radiobutton": Omit<DdaRadiobutton, keyof DdaRadiobuttonAttributes> & { [K in keyof DdaRadiobutton & keyof DdaRadiobuttonAttributes]?: DdaRadiobutton[K] } & { [K in keyof DdaRadiobutton & keyof DdaRadiobuttonAttributes as `attr:${K}`]?: DdaRadiobuttonAttributes[K] } & { [K in keyof DdaRadiobutton & keyof DdaRadiobuttonAttributes as `prop:${K}`]?: DdaRadiobutton[K] };
4955
5793
  "dda-range-slider": Omit<DdaRangeSlider, keyof DdaRangeSliderAttributes> & { [K in keyof DdaRangeSlider & keyof DdaRangeSliderAttributes]?: DdaRangeSlider[K] } & { [K in keyof DdaRangeSlider & keyof DdaRangeSliderAttributes as `attr:${K}`]?: DdaRangeSliderAttributes[K] } & { [K in keyof DdaRangeSlider & keyof DdaRangeSliderAttributes as `prop:${K}`]?: DdaRangeSlider[K] };
5794
+ "dda-scroll-icon": Omit<DdaScrollIcon, keyof DdaScrollIconAttributes> & { [K in keyof DdaScrollIcon & keyof DdaScrollIconAttributes]?: DdaScrollIcon[K] } & { [K in keyof DdaScrollIcon & keyof DdaScrollIconAttributes as `attr:${K}`]?: DdaScrollIconAttributes[K] } & { [K in keyof DdaScrollIcon & keyof DdaScrollIconAttributes as `prop:${K}`]?: DdaScrollIcon[K] };
4956
5795
  "dda-search-input": Omit<DdaSearchInput, keyof DdaSearchInputAttributes> & { [K in keyof DdaSearchInput & keyof DdaSearchInputAttributes]?: DdaSearchInput[K] } & { [K in keyof DdaSearchInput & keyof DdaSearchInputAttributes as `attr:${K}`]?: DdaSearchInputAttributes[K] } & { [K in keyof DdaSearchInput & keyof DdaSearchInputAttributes as `prop:${K}`]?: DdaSearchInput[K] };
4957
5796
  "dda-segmented-tabs": Omit<DdaSegmentedTabs, keyof DdaSegmentedTabsAttributes> & { [K in keyof DdaSegmentedTabs & keyof DdaSegmentedTabsAttributes]?: DdaSegmentedTabs[K] } & { [K in keyof DdaSegmentedTabs & keyof DdaSegmentedTabsAttributes as `attr:${K}`]?: DdaSegmentedTabsAttributes[K] } & { [K in keyof DdaSegmentedTabs & keyof DdaSegmentedTabsAttributes as `prop:${K}`]?: DdaSegmentedTabs[K] };
4958
5797
  "dda-select": Omit<DdaSelect, keyof DdaSelectAttributes> & { [K in keyof DdaSelect & keyof DdaSelectAttributes]?: DdaSelect[K] } & { [K in keyof DdaSelect & keyof DdaSelectAttributes as `attr:${K}`]?: DdaSelectAttributes[K] } & { [K in keyof DdaSelect & keyof DdaSelectAttributes as `prop:${K}`]?: DdaSelect[K] };
@@ -4974,6 +5813,7 @@ declare module "@stencil/core" {
4974
5813
  "dda-attach-file": LocalJSX.IntrinsicElements["dda-attach-file"] & JSXBase.HTMLAttributes<HTMLDdaAttachFileElement>;
4975
5814
  "dda-avatar": LocalJSX.IntrinsicElements["dda-avatar"] & JSXBase.HTMLAttributes<HTMLDdaAvatarElement>;
4976
5815
  "dda-banner": LocalJSX.IntrinsicElements["dda-banner"] & JSXBase.HTMLAttributes<HTMLDdaBannerElement>;
5816
+ "dda-banner-card": LocalJSX.IntrinsicElements["dda-banner-card"] & JSXBase.HTMLAttributes<HTMLDdaBannerCardElement>;
4977
5817
  "dda-breadcrumb": LocalJSX.IntrinsicElements["dda-breadcrumb"] & JSXBase.HTMLAttributes<HTMLDdaBreadcrumbElement>;
4978
5818
  "dda-button": LocalJSX.IntrinsicElements["dda-button"] & JSXBase.HTMLAttributes<HTMLDdaButtonElement>;
4979
5819
  "dda-checkbox": LocalJSX.IntrinsicElements["dda-checkbox"] & JSXBase.HTMLAttributes<HTMLDdaCheckboxElement>;
@@ -4984,6 +5824,7 @@ declare module "@stencil/core" {
4984
5824
  "dda-footer": LocalJSX.IntrinsicElements["dda-footer"] & JSXBase.HTMLAttributes<HTMLDdaFooterElement>;
4985
5825
  "dda-header": LocalJSX.IntrinsicElements["dda-header"] & JSXBase.HTMLAttributes<HTMLDdaHeaderElement>;
4986
5826
  "dda-home-banner": LocalJSX.IntrinsicElements["dda-home-banner"] & JSXBase.HTMLAttributes<HTMLDdaHomeBannerElement>;
5827
+ "dda-home-carousel": LocalJSX.IntrinsicElements["dda-home-carousel"] & JSXBase.HTMLAttributes<HTMLDdaHomeCarouselElement>;
4987
5828
  "dda-horizontal-stepper": LocalJSX.IntrinsicElements["dda-horizontal-stepper"] & JSXBase.HTMLAttributes<HTMLDdaHorizontalStepperElement>;
4988
5829
  "dda-input": LocalJSX.IntrinsicElements["dda-input"] & JSXBase.HTMLAttributes<HTMLDdaInputElement>;
4989
5830
  "dda-link-button": LocalJSX.IntrinsicElements["dda-link-button"] & JSXBase.HTMLAttributes<HTMLDdaLinkButtonElement>;
@@ -4993,6 +5834,7 @@ declare module "@stencil/core" {
4993
5834
  "dda-progressbar": LocalJSX.IntrinsicElements["dda-progressbar"] & JSXBase.HTMLAttributes<HTMLDdaProgressbarElement>;
4994
5835
  "dda-radiobutton": LocalJSX.IntrinsicElements["dda-radiobutton"] & JSXBase.HTMLAttributes<HTMLDdaRadiobuttonElement>;
4995
5836
  "dda-range-slider": LocalJSX.IntrinsicElements["dda-range-slider"] & JSXBase.HTMLAttributes<HTMLDdaRangeSliderElement>;
5837
+ "dda-scroll-icon": LocalJSX.IntrinsicElements["dda-scroll-icon"] & JSXBase.HTMLAttributes<HTMLDdaScrollIconElement>;
4996
5838
  "dda-search-input": LocalJSX.IntrinsicElements["dda-search-input"] & JSXBase.HTMLAttributes<HTMLDdaSearchInputElement>;
4997
5839
  "dda-segmented-tabs": LocalJSX.IntrinsicElements["dda-segmented-tabs"] & JSXBase.HTMLAttributes<HTMLDdaSegmentedTabsElement>;
4998
5840
  "dda-select": LocalJSX.IntrinsicElements["dda-select"] & JSXBase.HTMLAttributes<HTMLDdaSelectElement>;