@baloise/ds-core 20.0.0-next.6 → 20.0.0-next.8

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 (568) hide show
  1. package/components/all.d.ts +2 -0
  2. package/components/all.js +3 -0
  3. package/components/ds-accordion.js +1 -1
  4. package/components/ds-app.js +1 -1
  5. package/components/ds-badge.js +1 -1
  6. package/components/ds-button-group.js +1 -1
  7. package/components/ds-button.js +1 -1
  8. package/components/ds-card-actions.js +1 -1
  9. package/components/ds-card-content.js +1 -1
  10. package/components/ds-card-subtitle.js +1 -1
  11. package/components/ds-card-title.js +1 -1
  12. package/components/ds-card.js +1 -1
  13. package/components/ds-carousel.js +1 -1
  14. package/components/ds-checkbox-group.js +1 -1
  15. package/components/ds-checkbox.js +1 -1
  16. package/components/ds-close.js +1 -1
  17. package/components/ds-content.js +1 -1
  18. package/components/ds-data-item.js +1 -1
  19. package/components/ds-date.js +1 -1
  20. package/components/ds-drawer.js +1 -1
  21. package/components/ds-file-upload.js +1 -1
  22. package/components/ds-footer.js +1 -1
  23. package/components/ds-heading.js +1 -1
  24. package/components/ds-hint.js +1 -1
  25. package/components/ds-icon.js +1 -1
  26. package/components/ds-input-slider.d.ts +11 -0
  27. package/components/ds-input-slider.js +4 -0
  28. package/components/ds-input.js +1 -1
  29. package/components/ds-item.js +1 -1
  30. package/components/ds-label.js +1 -1
  31. package/components/ds-list.js +1 -1
  32. package/components/ds-logo.js +1 -1
  33. package/components/ds-modal-body.js +1 -1
  34. package/components/ds-modal-header.js +1 -1
  35. package/components/ds-modal.js +1 -1
  36. package/components/ds-navbar.js +1 -1
  37. package/components/ds-notification.js +1 -1
  38. package/components/ds-number-input.js +1 -1
  39. package/components/ds-pagination.js +1 -1
  40. package/components/ds-popup.js +1 -1
  41. package/components/ds-progress-bar.js +1 -1
  42. package/components/ds-radio-group.js +1 -1
  43. package/components/ds-radio.js +1 -1
  44. package/components/ds-segment-item.js +1 -1
  45. package/components/ds-segment.js +1 -1
  46. package/components/ds-select-optgroup.js +1 -1
  47. package/components/ds-select-option.js +1 -1
  48. package/components/ds-select.js +1 -1
  49. package/components/ds-shape.js +1 -1
  50. package/components/ds-snackbar.js +1 -1
  51. package/components/ds-spinner.js +1 -1
  52. package/components/ds-stack.js +1 -1
  53. package/components/ds-step-panel.js +1 -1
  54. package/components/ds-step.js +1 -1
  55. package/components/ds-tab-panel.js +1 -1
  56. package/components/ds-tabs.js +1 -1
  57. package/components/ds-tag-group.js +1 -1
  58. package/components/ds-tag.js +1 -1
  59. package/components/ds-text.js +1 -1
  60. package/components/ds-textarea.js +1 -1
  61. package/components/ds-toast.js +1 -1
  62. package/components/ds-toggle.js +1 -1
  63. package/components/ds-tooltip.js +1 -1
  64. package/components/index.js +1 -1
  65. package/components/{p-DenZRIeA.js → p-BXJT6RzI.js} +1 -1
  66. package/components/p-BdLq-Ecc.js +4 -0
  67. package/components/{p-CjIxf5zy.js → p-BmKEBYP4.js} +1 -1
  68. package/components/p-BoWAkGY5.js +4 -0
  69. package/components/{p-DYTOWDAA.js → p-CTbJFS-e.js} +1 -1
  70. package/components/{p-DokkRjWC.js → p-CaMOovXn.js} +1 -1
  71. package/components/p-Ce8PV2ZO.js +4 -0
  72. package/components/p-CmBtAxar.js +4 -0
  73. package/components/p-D8gpyiFZ.js +4 -0
  74. package/components/{p-ng5ZzTOj.js → p-DBX_haol.js} +1 -1
  75. package/components/{p-BfXZJ1Fe.js → p-DPbhygsR.js} +1 -1
  76. package/components/{p-BU0dY8pq.js → p-DZzsZ_YH.js} +1 -1
  77. package/components/p-DbUsvqrz.js +4 -0
  78. package/components/p-Dbqy6lZU.js +5 -0
  79. package/{dist/design-system/p-BATOumsf.js → components/p-fS80bKHo.js} +1 -1
  80. package/components/{p-bGV2P6rT.js → p-hPpcXLRP.js} +1 -1
  81. package/components/p-o0H7eIVX.js +4 -0
  82. package/components/p-std0LSH2.js +4 -0
  83. package/components/{p-Btdh3fq7.js → p-u5aa74vh.js} +1 -1
  84. package/components/p-wud2RGEy.js +4 -0
  85. package/dist/cjs/{_getTag-B468r9bu.js → _getTag-DxZgmSPS.js} +1 -1
  86. package/dist/cjs/{array-CioNm_V1.js → array-CYn4ALBt.js} +10 -9
  87. package/dist/cjs/{breakpoints.decorator-C-Qm21UK.js → breakpoints.decorator-DbttiLa9.js} +1 -1
  88. package/dist/cjs/{breakpoints.subject-XNcGwhzh.js → breakpoints.subject-CNyiZaBe.js} +3 -3
  89. package/dist/cjs/{button.interfaces-CqlUGR-N.js → button.interfaces-BKyK0H_f.js} +0 -1
  90. package/dist/cjs/{config.decorator-ThGLtT-3.js → config.decorator-bU7c6ybP.js} +1 -1
  91. package/dist/cjs/{config.utils-MhZvq4Qm.js → config.utils-BhJig3l5.js} +1 -1
  92. package/dist/cjs/{create-validator-decorator-BIgFqrMJ.js → create-validator-decorator-CiRieHJL.js} +1 -1
  93. package/dist/cjs/design-system.cjs.js +2 -2
  94. package/dist/cjs/{device-BnjBOLnP.js → device-DM1GXL99.js} +1 -1
  95. package/dist/cjs/ds-accordion.cjs.entry.js +9 -9
  96. package/dist/cjs/ds-alert-container.cjs.entry.js +6 -6
  97. package/dist/cjs/ds-app.cjs.entry.js +35 -8
  98. package/dist/cjs/ds-badge.cjs.entry.js +20 -39
  99. package/dist/cjs/ds-button-group.cjs.entry.js +7 -7
  100. package/dist/cjs/ds-button_2.cjs.entry.js +20 -20
  101. package/dist/cjs/ds-card-actions.cjs.entry.js +4 -4
  102. package/dist/cjs/ds-card-content.cjs.entry.js +3 -3
  103. package/dist/cjs/ds-card-header.cjs.entry.js +5 -5
  104. package/dist/cjs/ds-card-subtitle.cjs.entry.js +10 -14
  105. package/dist/cjs/ds-card-title.cjs.entry.js +8 -14
  106. package/dist/cjs/ds-card.cjs.entry.js +14 -13
  107. package/dist/cjs/ds-carousel-item.cjs.entry.js +6 -6
  108. package/dist/cjs/ds-carousel.cjs.entry.js +8 -8
  109. package/dist/cjs/ds-checkbox-group.cjs.entry.js +44 -19
  110. package/dist/cjs/ds-checkbox.cjs.entry.js +19 -10
  111. package/dist/cjs/ds-content_2.cjs.entry.js +18 -68
  112. package/dist/cjs/ds-data-item.cjs.entry.js +6 -6
  113. package/dist/cjs/ds-data-label.cjs.entry.js +4 -4
  114. package/dist/cjs/ds-data-value.cjs.entry.js +2 -2
  115. package/dist/cjs/ds-data.cjs.entry.js +4 -4
  116. package/dist/cjs/ds-date.cjs.entry.js +18 -12
  117. package/dist/cjs/ds-divider_2.cjs.entry.js +14 -14
  118. package/dist/cjs/ds-drawer_2.cjs.entry.js +10 -10
  119. package/dist/cjs/ds-file-upload.cjs.entry.js +22 -14
  120. package/dist/cjs/ds-footer.cjs.entry.js +7 -7
  121. package/dist/cjs/ds-heading.cjs.entry.js +21 -37
  122. package/dist/cjs/ds-hint-text.cjs.entry.js +2 -2
  123. package/dist/cjs/ds-hint-title.cjs.entry.js +2 -2
  124. package/dist/cjs/ds-hint.cjs.entry.js +11 -11
  125. package/dist/cjs/ds-icon_2.cjs.entry.js +23 -26
  126. package/dist/cjs/ds-input-slider.cjs.entry.js +2892 -0
  127. package/dist/cjs/ds-input.cjs.entry.js +20 -11
  128. package/dist/cjs/ds-item.cjs.entry.js +7 -7
  129. package/dist/cjs/ds-label.cjs.entry.js +11 -11
  130. package/dist/cjs/ds-list.cjs.entry.js +5 -5
  131. package/dist/cjs/ds-modal-body.cjs.entry.js +3 -3
  132. package/dist/cjs/ds-modal-header.cjs.entry.js +3 -3
  133. package/dist/cjs/ds-modal.cjs.entry.js +9 -9
  134. package/dist/cjs/ds-navbar.cjs.entry.js +17 -17
  135. package/dist/cjs/ds-notification.cjs.entry.js +11 -11
  136. package/dist/cjs/ds-number-input.cjs.entry.js +31 -117
  137. package/dist/cjs/ds-pagination.cjs.entry.js +17 -17
  138. package/dist/cjs/ds-progress-bar.cjs.entry.js +14 -14
  139. package/dist/cjs/ds-radio-group.cjs.entry.js +39 -15
  140. package/dist/cjs/ds-radio.cjs.entry.js +19 -10
  141. package/dist/cjs/ds-segment-item.cjs.entry.js +5 -5
  142. package/dist/cjs/ds-segment.cjs.entry.js +21 -15
  143. package/dist/cjs/ds-select-optgroup.cjs.entry.js +5 -5
  144. package/dist/cjs/ds-select-option.cjs.entry.js +5 -5
  145. package/dist/cjs/ds-select.cjs.entry.js +18 -13
  146. package/dist/cjs/ds-shape.cjs.entry.js +5 -5
  147. package/dist/cjs/ds-snackbar.cjs.entry.js +14 -14
  148. package/dist/cjs/ds-step-panel.cjs.entry.js +6 -6
  149. package/dist/cjs/ds-step.cjs.entry.js +5 -5
  150. package/dist/cjs/ds-steps.cjs.entry.js +6 -6
  151. package/dist/cjs/ds-tab-panel.cjs.entry.js +6 -6
  152. package/dist/cjs/ds-tab.cjs.entry.js +5 -5
  153. package/dist/cjs/ds-tabs.cjs.entry.js +12 -12
  154. package/dist/cjs/ds-tag-group.cjs.entry.js +3 -3
  155. package/dist/cjs/ds-tag.cjs.entry.js +9 -9
  156. package/dist/cjs/ds-text.cjs.entry.js +10 -10
  157. package/dist/cjs/ds-textarea.cjs.entry.js +19 -10
  158. package/dist/cjs/ds-toast.cjs.entry.js +12 -12
  159. package/dist/cjs/ds-toggle.cjs.entry.js +7 -7
  160. package/dist/cjs/ds-tooltip.cjs.entry.js +5 -5
  161. package/dist/cjs/{field.util-L-DkeMVk.js → field.util-C7hgA41e.js} +32 -2
  162. package/dist/cjs/{focus-D3VVgpM7.js → focus-CHzvkERd.js} +1 -1
  163. package/dist/cjs/{form-control-CtMcJUuC.js → form-control-CmRONWa7.js} +1 -1
  164. package/dist/cjs/{has-value-DK0oRqXI.js → has-value-3s9rhB3K.js} +1 -1
  165. package/dist/cjs/{heading.interfaces-B5NJ2yjL.js → heading.interfaces-CAc5LNKb.js} +2 -3
  166. package/dist/cjs/{index-sC3JnTlJ.js → index-DD7qcaNz.js} +80 -1
  167. package/dist/cjs/index.cjs.js +7 -7
  168. package/dist/cjs/isArray-DvQst6zQ.js +42 -0
  169. package/dist/cjs/isNaN-DOSPWDkt.js +106 -0
  170. package/dist/cjs/{isObjectLike-h-ta_ikf.js → isObjectLike-BNz6hnAu.js} +0 -37
  171. package/dist/cjs/{listener-BwB_xent.js → listener-CAzIWSXQ.js} +1 -1
  172. package/dist/cjs/loader.cjs.js +2 -2
  173. package/dist/cjs/{one-of-BZGRIMtQ.js → one-of-xdIxH9e7.js} +1 -1
  174. package/dist/cjs/{required-COz3Unzu.js → required-Dh6TQNa1.js} +1 -1
  175. package/dist/cjs/{resize.decorator-DWM_fQgv.js → resize.decorator-C53-TjuS.js} +2 -2
  176. package/dist/cjs/{scroll-CUuEh4xd.js → scroll-BOeiw1-E.js} +1 -1
  177. package/dist/cjs/{svg-D9RbiR8R.js → svg-B9eUbG7a.js} +96 -33
  178. package/dist/cjs/{tslib.es6-CxyosZMg.js → tslib.es6-DMgN1vwG.js} +1 -1
  179. package/dist/cjs/{type-hmc4CJcO.js → type-BcP2cAG-.js} +1 -1
  180. package/dist/collection/collection-manifest.json +1 -0
  181. package/dist/collection/components/accordion/accordion.host.css +1 -1
  182. package/dist/collection/components/alert/snackbar/snackbar.host.css +1 -1
  183. package/dist/collection/components/alert/toast/toast.host.css +1 -1
  184. package/dist/collection/components/app/app.js +30 -3
  185. package/dist/collection/components/badge/badge.host.css +1 -1
  186. package/dist/collection/components/badge/badge.interfaces.js +3 -3
  187. package/dist/collection/components/badge/badge.js +20 -42
  188. package/dist/collection/components/button/button.interfaces.js +0 -1
  189. package/dist/collection/components/button/button.js +1 -1
  190. package/dist/collection/components/card/card-content/card-content.host.css +1 -1
  191. package/dist/collection/components/card/card-subtitle/card-subtitle.js +6 -11
  192. package/dist/collection/components/card/card-title/card-title.js +4 -11
  193. package/dist/collection/components/card/card.host.css +1 -1
  194. package/dist/collection/components/card/card.js +10 -9
  195. package/dist/collection/components/checkbox/checkbox-group/checkbox-group.js +54 -8
  196. package/dist/collection/components/checkbox/checkbox.host.css +1 -1
  197. package/dist/collection/components/checkbox/checkbox.js +31 -2
  198. package/dist/collection/components/checkbox/test/checkbox.visual.play.js +4 -0
  199. package/dist/collection/components/close/close.host.css +1 -1
  200. package/dist/collection/components/close/close.interfaces.js +1 -1
  201. package/dist/collection/components/close/close.js +14 -16
  202. package/dist/collection/components/content/content.host.css +1 -1
  203. package/dist/collection/components/content/content.interfaces.js +2 -3
  204. package/dist/collection/components/content/content.js +21 -60
  205. package/dist/collection/components/date/date.js +12 -4
  206. package/dist/collection/components/date/test/date.visual.play.js +1 -0
  207. package/dist/collection/components/file-upload/file-upload.js +13 -4
  208. package/dist/collection/components/file-upload/test/file-upload.visual.play.js +10 -1
  209. package/dist/collection/components/heading/heading.host.css +1 -1
  210. package/dist/collection/components/heading/heading.interfaces.js +2 -3
  211. package/dist/collection/components/heading/heading.js +25 -45
  212. package/dist/collection/components/input/field.util.js +1 -1
  213. package/dist/collection/components/input/input.js +14 -3
  214. package/dist/collection/components/input/test/input.visual.play.js +2 -1
  215. package/dist/collection/components/input-slider/input-slider.host.css +1 -0
  216. package/dist/collection/components/input-slider/input-slider.interfaces.js +4 -0
  217. package/dist/collection/components/input-slider/input-slider.js +970 -0
  218. package/dist/collection/components/input-slider/input-slider.picker.js +124 -0
  219. package/dist/collection/components/input-slider/input-slider.utils.js +32 -0
  220. package/dist/collection/components/input-slider/test/input-slider.a11y.play.js +36 -0
  221. package/dist/collection/components/input-slider/test/input-slider.component.play.js +87 -0
  222. package/dist/collection/components/input-slider/test/input-slider.visual.play.js +28 -0
  223. package/dist/collection/components/label/label.host.css +1 -1
  224. package/dist/collection/components/label/label.js +2 -2
  225. package/dist/collection/components/list/item/item.host.css +1 -1
  226. package/dist/collection/components/list/list.js +1 -1
  227. package/dist/collection/components/logo/logo.js +2 -2
  228. package/dist/collection/components/modal/modal-body/modal-body.js +1 -1
  229. package/dist/collection/components/modal/modal-header/modal-header.js +1 -1
  230. package/dist/collection/components/modal/modal.js +2 -2
  231. package/dist/collection/components/navbar/navbar.js +3 -3
  232. package/dist/collection/components/notification/notification.host.css +1 -1
  233. package/dist/collection/components/notification/notification.js +3 -3
  234. package/dist/collection/components/number-input/number-input.js +13 -2
  235. package/dist/collection/components/number-input/test/number-input.visual.play.js +1 -1
  236. package/dist/collection/components/pagination/pagination.js +5 -5
  237. package/dist/collection/components/popup/popup.js +1 -1
  238. package/dist/collection/components/progress-bar/progress-bar.js +2 -2
  239. package/dist/collection/components/radio/radio-group/radio-group.js +54 -8
  240. package/dist/collection/components/radio/radio.host.css +1 -1
  241. package/dist/collection/components/radio/radio.js +31 -2
  242. package/dist/collection/components/radio/test/radio.visual.play.js +4 -0
  243. package/dist/collection/components/segment/segment/segment.js +15 -7
  244. package/dist/collection/components/segment/segment-item.js +1 -1
  245. package/dist/collection/components/segment/test/segment.visual.play.js +1 -0
  246. package/dist/collection/components/select/select-optgroup.js +1 -1
  247. package/dist/collection/components/select/select-option.js +1 -1
  248. package/dist/collection/components/select/select.host.css +1 -1
  249. package/dist/collection/components/select/select.js +11 -4
  250. package/dist/collection/components/select/test/select.visual.play.js +2 -2
  251. package/dist/collection/components/shape/shape.js +1 -1
  252. package/dist/collection/components/spinner/spinner.host.css +1 -1
  253. package/dist/collection/components/spinner/spinner.interfaces.js +1 -1
  254. package/dist/collection/components/spinner/spinner.js +12 -16
  255. package/dist/collection/components/stack/stack.host.css +1 -1
  256. package/dist/collection/components/stack/stack.interfaces.js +1 -2
  257. package/dist/collection/components/stack/stack.js +13 -33
  258. package/dist/collection/components/steps/step-panel/step-panel.js +1 -1
  259. package/dist/collection/components/tabs/tab-panel/tab-panel.js +1 -1
  260. package/dist/collection/components/tabs/tabs/tabs.js +4 -4
  261. package/dist/collection/components/tag/tag-group/tag-group.js +1 -1
  262. package/dist/collection/components/tag/tag.host.css +1 -1
  263. package/dist/collection/components/tag/tag.js +2 -2
  264. package/dist/collection/components/text/text.host.css +1 -1
  265. package/dist/collection/components/text/text.js +3 -3
  266. package/dist/collection/components/textarea/test/textarea.visual.play.js +2 -2
  267. package/dist/collection/components/textarea/textarea.js +13 -2
  268. package/dist/collection/components/toggle/toggle.js +2 -2
  269. package/dist/collection/components/tooltip/tooltip.js +1 -1
  270. package/dist/collection/global/constants/tags.constant.js +1 -0
  271. package/dist/collection/global/constants/version.constant.js +1 -1
  272. package/dist/collection/global/global.js +2 -0
  273. package/dist/collection/global/token-preview.js +75 -0
  274. package/dist/collection/global/token-preview.types.js +1 -0
  275. package/dist/collection/utils/index.js +1 -0
  276. package/dist/collection/utils/invalid-text-slot.js +31 -0
  277. package/dist/design-system/design-system.esm.js +1 -1
  278. package/dist/design-system/index.esm.js +1 -1
  279. package/dist/design-system/{p-5d17209d91.entry.js → p-001b20140b.entry.js} +1 -1
  280. package/dist/design-system/p-0c031d8d90.entry.js +4 -0
  281. package/dist/design-system/p-0c18812daa.entry.js +4 -0
  282. package/dist/design-system/p-19e0638e5c.entry.js +4 -0
  283. package/dist/design-system/{p-10c136d00d.entry.js → p-1dc3406415.entry.js} +1 -1
  284. package/dist/design-system/{p-53dda5d400.entry.js → p-200a0ea72c.entry.js} +1 -1
  285. package/dist/design-system/p-2516721737.entry.js +4 -0
  286. package/dist/design-system/p-2a67e9b4eb.entry.js +4 -0
  287. package/dist/design-system/p-2cc9740eb6.entry.js +4 -0
  288. package/dist/design-system/p-33165c2b03.entry.js +4 -0
  289. package/dist/design-system/p-37295c3a5d.entry.js +4 -0
  290. package/dist/design-system/p-3d1f15112e.entry.js +4 -0
  291. package/dist/design-system/p-3de8e2b6c9.entry.js +4 -0
  292. package/dist/design-system/{p-774b89ed0b.entry.js → p-4042b35fee.entry.js} +1 -1
  293. package/dist/design-system/{p-afd8bbe699.entry.js → p-40b3d4d0f9.entry.js} +1 -1
  294. package/dist/design-system/{p-f0119fe693.entry.js → p-45af50a69f.entry.js} +1 -1
  295. package/dist/design-system/p-4df80c06f8.entry.js +4 -0
  296. package/dist/design-system/p-4f12c6449d.entry.js +4 -0
  297. package/dist/design-system/p-4f95f06b86.entry.js +4 -0
  298. package/dist/design-system/{p-c37f266740.entry.js → p-662983c8bd.entry.js} +1 -1
  299. package/dist/design-system/p-68693c06a1.entry.js +4 -0
  300. package/dist/design-system/{p-7c353652a9.entry.js → p-69784a200e.entry.js} +1 -1
  301. package/dist/design-system/{p-BhdSNuGP.js → p-6Iq8BM7N.js} +1 -1
  302. package/dist/design-system/p-6ba71ce374.entry.js +4 -0
  303. package/dist/design-system/{p-13d1ce3158.entry.js → p-72c08ce551.entry.js} +1 -1
  304. package/dist/design-system/p-72fe1ab876.entry.js +4 -0
  305. package/dist/design-system/p-73b26207bf.entry.js +4 -0
  306. package/dist/design-system/{p-4e6638d14e.entry.js → p-7576fb01bf.entry.js} +1 -1
  307. package/dist/design-system/p-819d71abe1.entry.js +4 -0
  308. package/dist/design-system/p-88682a66d5.entry.js +4 -0
  309. package/dist/design-system/{p-6ef31a3c07.entry.js → p-8a7c2f5b0a.entry.js} +1 -1
  310. package/dist/design-system/{p-0bd2ce2da3.entry.js → p-8bfcfd7b07.entry.js} +1 -1
  311. package/dist/design-system/p-9537ebc880.entry.js +4 -0
  312. package/dist/design-system/{p-e7472337ed.entry.js → p-96d37205c9.entry.js} +1 -1
  313. package/dist/design-system/{p-0663d7c0f1.entry.js → p-97ad0e648a.entry.js} +1 -1
  314. package/dist/design-system/p-9e0f190f06.entry.js +4 -0
  315. package/dist/design-system/p-9f746ea4e3.entry.js +4 -0
  316. package/dist/design-system/{p-B1e0kNRJ.js → p-B2dqoehY.js} +2 -2
  317. package/dist/design-system/p-B8PCdo6e.js +4 -0
  318. package/dist/design-system/p-B9ddSbbe.js +4 -0
  319. package/dist/design-system/p-BDcIydUK.js +4 -0
  320. package/dist/design-system/p-BdLq-Ecc.js +4 -0
  321. package/dist/design-system/{p-HwbqEzpk.js → p-BjaiDrCD.js} +1 -1
  322. package/dist/design-system/{p-CvTcEsXg.js → p-BnJgNfen.js} +1 -1
  323. package/dist/design-system/{p-78NZc8PM.js → p-Bnpwi9iD.js} +1 -1
  324. package/dist/design-system/p-C6AmBSV7.js +4 -0
  325. package/dist/design-system/{p-hLAmwHiq.js → p-CBGYLNZZ.js} +1 -1
  326. package/dist/design-system/p-CDhvZoCt.js +4 -0
  327. package/dist/design-system/p-CGHN-3RC.js +4 -0
  328. package/dist/design-system/{p-BkTv_bQR.js → p-CR2JnhVY.js} +1 -1
  329. package/dist/design-system/{p-Dm2lqE3-.js → p-ClSAXeZN.js} +1 -1
  330. package/dist/design-system/p-CziF75uh.js +4 -0
  331. package/dist/design-system/p-D-_px2sY.js +5 -0
  332. package/dist/design-system/{p-ij4OEkzJ.js → p-DNQg2PVW.js} +1 -1
  333. package/dist/design-system/p-DQGbRzw_.js +4 -0
  334. package/dist/design-system/{p-LCY5n5tq.js → p-DWdcUUdS.js} +1 -1
  335. package/dist/design-system/{p-C7i6xLTJ.js → p-DuKlHFAK.js} +1 -1
  336. package/dist/design-system/p-MUUOiuTm.js +5 -0
  337. package/dist/design-system/{p-BvEM6oCl.js → p-_Ywzmi-B.js} +1 -1
  338. package/dist/design-system/{p-DgVaaZT_.js → p-_rk5qARQ.js} +1 -1
  339. package/dist/design-system/{p-8406f6faf1.entry.js → p-a343b84e8a.entry.js} +1 -1
  340. package/dist/design-system/p-a3ed278181.entry.js +4 -0
  341. package/dist/design-system/{p-650289138a.entry.js → p-a71c22bc50.entry.js} +1 -1
  342. package/dist/design-system/{p-DTxLRTYr.js → p-aPnyJLhr.js} +1 -1
  343. package/dist/design-system/{p-f4958b9e97.entry.js → p-abcc8edf7e.entry.js} +1 -1
  344. package/dist/design-system/{p-372bf379f9.entry.js → p-ac55e3783c.entry.js} +1 -1
  345. package/dist/design-system/{p-7e702193fc.entry.js → p-ac7f3f89be.entry.js} +1 -1
  346. package/dist/design-system/{p-3134821ac6.entry.js → p-ae8753bf2a.entry.js} +1 -1
  347. package/dist/design-system/{p-60d29d8b8e.entry.js → p-afea3755c2.entry.js} +1 -1
  348. package/dist/design-system/{p-dcb749efc7.entry.js → p-bd31b396d8.entry.js} +1 -1
  349. package/dist/design-system/p-bd740897a1.entry.js +4 -0
  350. package/dist/design-system/{p-d5f8d8f5e1.entry.js → p-bf03129378.entry.js} +1 -1
  351. package/dist/design-system/p-bfd0557b47.entry.js +4 -0
  352. package/dist/design-system/{p-01430d5c28.entry.js → p-c07aa25e4d.entry.js} +1 -1
  353. package/dist/design-system/p-c19c74c2b1.entry.js +4 -0
  354. package/dist/design-system/{p-dd38f8f206.entry.js → p-d5d7700fd3.entry.js} +1 -1
  355. package/dist/design-system/p-d727654ec3.entry.js +4 -0
  356. package/dist/design-system/{p-a465c1acce.entry.js → p-dadd7a84bc.entry.js} +1 -1
  357. package/dist/design-system/p-dd5e815ef3.entry.js +4 -0
  358. package/dist/design-system/p-dfebad2acc.entry.js +4 -0
  359. package/{components/p-D9YYP2SG.js → dist/design-system/p-dziB1ufg.js} +1 -1
  360. package/dist/design-system/p-e16572468e.entry.js +4 -0
  361. package/dist/design-system/p-e23b6d59c0.entry.js +4 -0
  362. package/dist/design-system/p-e743fa4c17.entry.js +4 -0
  363. package/dist/design-system/p-e94b66c13e.entry.js +4 -0
  364. package/dist/design-system/{p-a8de98dd7b.entry.js → p-ec3f2ded29.entry.js} +1 -1
  365. package/dist/design-system/p-ed3f364d1f.entry.js +4 -0
  366. package/dist/design-system/{p-a62b7985a0.entry.js → p-eedaf7fe85.entry.js} +1 -1
  367. package/dist/design-system/p-ef1bf78788.entry.js +4 -0
  368. package/dist/design-system/{p-9f2dd0b55b.entry.js → p-f0b0376beb.entry.js} +1 -1
  369. package/dist/design-system/p-f7787fca37.entry.js +4 -0
  370. package/dist/design-system/p-fd868dc1f5.entry.js +4 -0
  371. package/dist/esm/{_getTag-DFxL3s3h.js → _getTag-BkweuRJc.js} +1 -1
  372. package/dist/esm/{array-dJH4dfMr.js → array-BJZA868l.js} +3 -2
  373. package/dist/esm/{breakpoints.decorator-DZ0xN4Np.js → breakpoints.decorator-CIweMjJQ.js} +1 -1
  374. package/dist/esm/{breakpoints.subject-BNnXcKMw.js → breakpoints.subject-CUVOWezN.js} +3 -3
  375. package/dist/esm/{button.interfaces-BPGfTrrM.js → button.interfaces-C6AmBSV7.js} +0 -1
  376. package/dist/esm/{config.decorator-ZQ0_Zx5y.js → config.decorator-CyvsD1EY.js} +1 -1
  377. package/dist/esm/{config.utils-D9o7rffC.js → config.utils-Db2OSTX3.js} +1 -1
  378. package/dist/esm/{create-validator-decorator-DovxquEu.js → create-validator-decorator-g9TfAa1g.js} +1 -1
  379. package/dist/esm/design-system.js +3 -3
  380. package/dist/esm/{device-CRuIJzXR.js → device-CtidwsPr.js} +1 -1
  381. package/dist/esm/ds-accordion.entry.js +9 -9
  382. package/dist/esm/ds-alert-container.entry.js +6 -6
  383. package/dist/esm/ds-app.entry.js +35 -8
  384. package/dist/esm/ds-badge.entry.js +20 -39
  385. package/dist/esm/ds-button-group.entry.js +7 -7
  386. package/dist/esm/ds-button_2.entry.js +20 -20
  387. package/dist/esm/ds-card-actions.entry.js +4 -4
  388. package/dist/esm/ds-card-content.entry.js +3 -3
  389. package/dist/esm/ds-card-header.entry.js +5 -5
  390. package/dist/esm/ds-card-subtitle.entry.js +10 -14
  391. package/dist/esm/ds-card-title.entry.js +8 -14
  392. package/dist/esm/ds-card.entry.js +14 -13
  393. package/dist/esm/ds-carousel-item.entry.js +6 -6
  394. package/dist/esm/ds-carousel.entry.js +8 -8
  395. package/dist/esm/ds-checkbox-group.entry.js +44 -19
  396. package/dist/esm/ds-checkbox.entry.js +19 -10
  397. package/dist/esm/ds-content_2.entry.js +18 -68
  398. package/dist/esm/ds-data-item.entry.js +6 -6
  399. package/dist/esm/ds-data-label.entry.js +4 -4
  400. package/dist/esm/ds-data-value.entry.js +2 -2
  401. package/dist/esm/ds-data.entry.js +4 -4
  402. package/dist/esm/ds-date.entry.js +18 -12
  403. package/dist/esm/ds-divider_2.entry.js +14 -14
  404. package/dist/esm/ds-drawer_2.entry.js +10 -10
  405. package/dist/esm/ds-file-upload.entry.js +22 -14
  406. package/dist/esm/ds-footer.entry.js +7 -7
  407. package/dist/esm/ds-heading.entry.js +21 -37
  408. package/dist/esm/ds-hint-text.entry.js +2 -2
  409. package/dist/esm/ds-hint-title.entry.js +2 -2
  410. package/dist/esm/ds-hint.entry.js +11 -11
  411. package/dist/esm/ds-icon_2.entry.js +21 -24
  412. package/dist/esm/ds-input-slider.entry.js +2890 -0
  413. package/dist/esm/ds-input.entry.js +20 -11
  414. package/dist/esm/ds-item.entry.js +7 -7
  415. package/dist/esm/ds-label.entry.js +11 -11
  416. package/dist/esm/ds-list.entry.js +5 -5
  417. package/dist/esm/ds-modal-body.entry.js +3 -3
  418. package/dist/esm/ds-modal-header.entry.js +3 -3
  419. package/dist/esm/ds-modal.entry.js +9 -9
  420. package/dist/esm/ds-navbar.entry.js +17 -17
  421. package/dist/esm/ds-notification.entry.js +11 -11
  422. package/dist/esm/ds-number-input.entry.js +24 -110
  423. package/dist/esm/ds-pagination.entry.js +17 -17
  424. package/dist/esm/ds-progress-bar.entry.js +14 -14
  425. package/dist/esm/ds-radio-group.entry.js +39 -15
  426. package/dist/esm/ds-radio.entry.js +19 -10
  427. package/dist/esm/ds-segment-item.entry.js +5 -5
  428. package/dist/esm/ds-segment.entry.js +21 -15
  429. package/dist/esm/ds-select-optgroup.entry.js +5 -5
  430. package/dist/esm/ds-select-option.entry.js +5 -5
  431. package/dist/esm/ds-select.entry.js +18 -13
  432. package/dist/esm/ds-shape.entry.js +5 -5
  433. package/dist/esm/ds-snackbar.entry.js +14 -14
  434. package/dist/esm/ds-step-panel.entry.js +6 -6
  435. package/dist/esm/ds-step.entry.js +5 -5
  436. package/dist/esm/ds-steps.entry.js +6 -6
  437. package/dist/esm/ds-tab-panel.entry.js +6 -6
  438. package/dist/esm/ds-tab.entry.js +5 -5
  439. package/dist/esm/ds-tabs.entry.js +12 -12
  440. package/dist/esm/ds-tag-group.entry.js +3 -3
  441. package/dist/esm/ds-tag.entry.js +9 -9
  442. package/dist/esm/ds-text.entry.js +10 -10
  443. package/dist/esm/ds-textarea.entry.js +19 -10
  444. package/dist/esm/ds-toast.entry.js +12 -12
  445. package/dist/esm/ds-toggle.entry.js +7 -7
  446. package/dist/esm/ds-tooltip.entry.js +5 -5
  447. package/dist/esm/{field.util-BjZzAi09.js → field.util-Dl02gvlr.js} +32 -3
  448. package/dist/esm/{focus-ZxHImoOj.js → focus-C1_jVoAm.js} +1 -1
  449. package/dist/esm/{form-control-DvJo0GKN.js → form-control-BAP86QSm.js} +1 -1
  450. package/dist/esm/{has-value-DU9L2JaI.js → has-value-CADjf9QZ.js} +1 -1
  451. package/dist/esm/{heading.interfaces-Ceu7FIWM.js → heading.interfaces-BdLq-Ecc.js} +2 -3
  452. package/dist/esm/{index-C6MVahkC.js → index-MUUOiuTm.js} +80 -1
  453. package/dist/esm/index.js +10 -10
  454. package/dist/esm/isArray-B8PCdo6e.js +40 -0
  455. package/dist/esm/isNaN-BrbqGXXw.js +104 -0
  456. package/dist/esm/{isObjectLike-BAYao9w7.js → isObjectLike-BnBXjF_n.js} +1 -37
  457. package/dist/esm/{listener-DHP2OPMZ.js → listener-DiVrGAqj.js} +1 -1
  458. package/dist/esm/loader.js +3 -3
  459. package/dist/esm/{one-of-CKPv0Nqm.js → one-of-rLykP5eX.js} +1 -1
  460. package/dist/esm/{required-Dqsbx5fH.js → required-BsfIY-qW.js} +1 -1
  461. package/dist/esm/{resize.decorator-B8h8D676.js → resize.decorator-BNy5tJCt.js} +2 -2
  462. package/dist/esm/{scroll-CsH7NHo5.js → scroll-D4cC-Fsr.js} +1 -1
  463. package/dist/esm/{svg-B8KVoKrH.js → svg-D-_px2sY.js} +96 -33
  464. package/dist/esm/{tslib.es6-C9GKXw-5.js → tslib.es6-C7vR-gMn.js} +1 -1
  465. package/dist/esm/{type-DzkhLOG_.js → type-Bqge296W.js} +1 -1
  466. package/dist/types/components/app/app.d.ts +23 -0
  467. package/dist/types/components/badge/badge.d.ts +12 -4
  468. package/dist/types/components/badge/badge.interfaces.d.ts +3 -3
  469. package/dist/types/components/button/button.interfaces.d.ts +1 -1
  470. package/dist/types/components/card/card-subtitle/card-subtitle.d.ts +1 -1
  471. package/dist/types/components/card/card-title/card-title.d.ts +1 -1
  472. package/dist/types/components/card/card.d.ts +1 -1
  473. package/dist/types/components/checkbox/checkbox-group/checkbox-group.d.ts +10 -0
  474. package/dist/types/components/checkbox/checkbox.d.ts +4 -0
  475. package/dist/types/components/close/close.d.ts +14 -2
  476. package/dist/types/components/close/close.interfaces.d.ts +1 -1
  477. package/dist/types/components/content/content.d.ts +6 -6
  478. package/dist/types/components/content/content.interfaces.d.ts +3 -3
  479. package/dist/types/components/date/date.d.ts +3 -0
  480. package/dist/types/components/file-upload/file-upload.d.ts +3 -0
  481. package/dist/types/components/heading/heading.d.ts +10 -10
  482. package/dist/types/components/heading/heading.interfaces.d.ts +3 -3
  483. package/dist/types/components/input/input.d.ts +4 -0
  484. package/dist/types/components/input-slider/input-slider.d.ts +189 -0
  485. package/dist/types/components/input-slider/input-slider.interfaces.d.ts +18 -0
  486. package/dist/types/components/input-slider/input-slider.picker.d.ts +37 -0
  487. package/dist/types/components/input-slider/input-slider.utils.d.ts +18 -0
  488. package/dist/types/components/input-slider/test/input-slider.a11y.play.d.ts +1 -0
  489. package/dist/types/components/input-slider/test/input-slider.component.play.d.ts +1 -0
  490. package/dist/types/components/input-slider/test/input-slider.visual.play.d.ts +1 -0
  491. package/dist/types/components/number-input/number-input.d.ts +4 -0
  492. package/dist/types/components/radio/radio-group/radio-group.d.ts +10 -0
  493. package/dist/types/components/radio/radio.d.ts +4 -0
  494. package/dist/types/components/segment/segment/segment.d.ts +3 -0
  495. package/dist/types/components/select/select.d.ts +3 -0
  496. package/dist/types/components/spinner/spinner.d.ts +8 -7
  497. package/dist/types/components/spinner/spinner.interfaces.d.ts +1 -1
  498. package/dist/types/components/stack/stack.d.ts +3 -3
  499. package/dist/types/components/stack/stack.interfaces.d.ts +2 -2
  500. package/dist/types/components/textarea/textarea.d.ts +4 -0
  501. package/dist/types/components.d.ts +334 -70
  502. package/dist/types/global/token-preview.d.ts +8 -0
  503. package/dist/types/global/token-preview.types.d.ts +20 -0
  504. package/dist/types/home/runner/work/design-system/design-system/packages/core/.stencil/packages/playwright/src/lib/components/index.d.ts +1 -0
  505. package/dist/types/home/runner/work/design-system/design-system/packages/core/.stencil/packages/playwright/src/lib/components/input-slider.po.d.ts +18 -0
  506. package/dist/types/utils/index.d.ts +1 -0
  507. package/dist/types/utils/invalid-text-slot.d.ts +9 -0
  508. package/docs/cem.json +792 -211
  509. package/docs/components.json +2434 -1559
  510. package/docs/html.html-data.json +124 -1
  511. package/docs/tags.json +1 -0
  512. package/docs/visual-pages.json +51 -0
  513. package/package.json +10 -9
  514. package/sbom.cdx.json +41369 -18745
  515. package/components/p-B1gnrQ9b.js +0 -4
  516. package/components/p-CA7G72wZ.js +0 -4
  517. package/components/p-CYWn3X22.js +0 -4
  518. package/components/p-Ceu7FIWM.js +0 -4
  519. package/components/p-Ctnm_MBD.js +0 -4
  520. package/components/p-DQBzmbR6.js +0 -4
  521. package/components/p-DsvYY32v.js +0 -4
  522. package/components/p-Du7QOHtz.js +0 -5
  523. package/components/p-FBQaJyH0.js +0 -4
  524. package/dist/design-system/p-014d464627.entry.js +0 -4
  525. package/dist/design-system/p-0ff0be5b83.entry.js +0 -4
  526. package/dist/design-system/p-11f34d0c7d.entry.js +0 -4
  527. package/dist/design-system/p-163d606781.entry.js +0 -4
  528. package/dist/design-system/p-1VXOIrN2.js +0 -4
  529. package/dist/design-system/p-202ecb8f01.entry.js +0 -4
  530. package/dist/design-system/p-27d181c5ac.entry.js +0 -4
  531. package/dist/design-system/p-2a35e0b9b0.entry.js +0 -4
  532. package/dist/design-system/p-2f51e1d39b.entry.js +0 -4
  533. package/dist/design-system/p-3292ae6a05.entry.js +0 -4
  534. package/dist/design-system/p-3895178b39.entry.js +0 -4
  535. package/dist/design-system/p-3c6b7a2967.entry.js +0 -4
  536. package/dist/design-system/p-3ef4bd1c59.entry.js +0 -4
  537. package/dist/design-system/p-493b18cc46.entry.js +0 -4
  538. package/dist/design-system/p-4a99464dae.entry.js +0 -4
  539. package/dist/design-system/p-5e51fa8df4.entry.js +0 -4
  540. package/dist/design-system/p-62cb503015.entry.js +0 -4
  541. package/dist/design-system/p-65c221261c.entry.js +0 -4
  542. package/dist/design-system/p-68c9f4f630.entry.js +0 -4
  543. package/dist/design-system/p-68ebed7eee.entry.js +0 -4
  544. package/dist/design-system/p-6b6531379b.entry.js +0 -4
  545. package/dist/design-system/p-6d168ba9ad.entry.js +0 -4
  546. package/dist/design-system/p-787bd92bcc.entry.js +0 -4
  547. package/dist/design-system/p-7c8bf0f33e.entry.js +0 -4
  548. package/dist/design-system/p-8353961d39.entry.js +0 -4
  549. package/dist/design-system/p-B8KVoKrH.js +0 -5
  550. package/dist/design-system/p-BLGVE-7Z.js +0 -4
  551. package/dist/design-system/p-BPGfTrrM.js +0 -4
  552. package/dist/design-system/p-C6MVahkC.js +0 -5
  553. package/dist/design-system/p-Ceu7FIWM.js +0 -4
  554. package/dist/design-system/p-CwCAiaMq.js +0 -4
  555. package/dist/design-system/p-DHeVI6dR.js +0 -4
  556. package/dist/design-system/p-ad2b17b0a0.entry.js +0 -4
  557. package/dist/design-system/p-b68bc14064.entry.js +0 -4
  558. package/dist/design-system/p-b955a93959.entry.js +0 -4
  559. package/dist/design-system/p-caad93b943.entry.js +0 -4
  560. package/dist/design-system/p-cca79bfeb1.entry.js +0 -4
  561. package/dist/design-system/p-ddf2a7dfee.entry.js +0 -4
  562. package/dist/design-system/p-df5899b930.entry.js +0 -4
  563. package/dist/design-system/p-e85c92ca1a.entry.js +0 -4
  564. package/dist/design-system/p-f62643c33d.entry.js +0 -4
  565. package/dist/design-system/p-fa9568abce.entry.js +0 -4
  566. package/dist/design-system/p-fcd98f22b7.entry.js +0 -4
  567. package/dist/design-system/p-feeef4a8cb.entry.js +0 -4
  568. package/dist/design-system/p-tl_BegdE.js +0 -4
@@ -17,7 +17,7 @@ export declare class Heading implements DsComponentInterface {
17
17
  autoFontSize?: HeadingSize;
18
18
  /**
19
19
  * PUBLIC PROPERTY API
20
- * ------------------------------------------------------
20
+ * ─────────────────────────────────────────────────────
21
21
  */
22
22
  /**
23
23
  * The actual heading level used in the HTML markup.
@@ -29,12 +29,12 @@ export declare class Heading implements DsComponentInterface {
29
29
  * This option allows you to make e.g. h1 visually look like h3,
30
30
  * but still keep it h1 in the markup.
31
31
  */
32
- readonly visualLevel: HeadingVisualLevel;
32
+ readonly visualLevel?: HeadingVisualLevel;
33
33
  visualLevelChanged(): void;
34
34
  /**
35
35
  * The actual heading level used in the HTML markup.
36
36
  */
37
- readonly autoLevel: HeadingVisualLevel;
37
+ readonly autoLevel?: HeadingVisualLevel;
38
38
  autoLevelChanged(): void;
39
39
  /**
40
40
  * When true, the text will be truncated with a text overflow ellipsis instead of wrapping.
@@ -49,11 +49,11 @@ export declare class Heading implements DsComponentInterface {
49
49
  /**
50
50
  * Defines at which position the heading has spacing.
51
51
  */
52
- readonly space: HeadingSpace;
52
+ readonly space?: HeadingSpace;
53
53
  /**
54
54
  * The theme type of the toast.
55
55
  */
56
- readonly color: HeadingColor;
56
+ readonly color?: HeadingColor;
57
57
  /**
58
58
  * If `true` the color gets inverted for dark backgrounds
59
59
  */
@@ -64,14 +64,14 @@ export declare class Heading implements DsComponentInterface {
64
64
  readonly shadow: boolean;
65
65
  /**
66
66
  * LIFECYCLE
67
- * ------------------------------------------------------
67
+ * ─────────────────────────────────────────────────────
68
68
  */
69
- connectedCallback(): void;
69
+ componentWillLoad(): void;
70
70
  componentDidRender(): void;
71
71
  private updateAutoFontSize;
72
72
  /**
73
- * GETTERS
74
- * ------------------------------------------------------
73
+ * PRIVATE METHODS
74
+ * ─────────────────────────────────────────────────────
75
75
  */
76
76
  private get rows();
77
77
  private get fontColor();
@@ -79,7 +79,7 @@ export declare class Heading implements DsComponentInterface {
79
79
  private get tag();
80
80
  /**
81
81
  * RENDER
82
- * ------------------------------------------------------
82
+ * ─────────────────────────────────────────────────────
83
83
  */
84
84
  render(): any;
85
85
  }
@@ -1,8 +1,8 @@
1
- export declare const HEADING_VISUAL_LEVELS: readonly ["display", "display-2", "h1", "h2", "h3", "h4", "h5", "5xl", "4xl", "3xl", "2xl", "xl", "lg", "md", "base", ""];
2
- export declare const HEADING_COLORS: readonly ["primary", "info", "success", "warning", "danger", "blue", "white", ""];
1
+ export declare const HEADING_VISUAL_LEVELS: readonly ["display", "display-2", "h1", "h2", "h3", "h4", "h5", "5xl", "4xl", "3xl", "2xl", "xl", "lg", "md", "base"];
2
+ export declare const HEADING_COLORS: readonly ["primary", "info", "success", "warning", "danger", "blue", "white"];
3
3
  export declare const HEADING_TAGS: readonly ["h1", "h2", "h3", "h4", "h5", "span", "p"];
4
4
  export declare const HEADING_LEVELS: readonly ["display", "display-2", "h1", "h2", "h3", "h4", "h5", "span", "p", ""];
5
- export declare const HEADING_SPACES: readonly ["none", "bottom", "top", "all", ""];
5
+ export declare const HEADING_SPACES: readonly ["none", "bottom", "top", "all"];
6
6
  export type HeadingVisualLevel = (typeof HEADING_VISUAL_LEVELS)[number];
7
7
  export type HeadingTag = (typeof HEADING_TAGS)[number];
8
8
  export type HeadingLevel = (typeof HEADING_LEVELS)[number];
@@ -8,6 +8,7 @@ import { InputColor, InputInputType, InputAutocomplete, InputAutocorrect, InputI
8
8
  /**
9
9
  * Input renders a text input field with validation, masking, autocomplete, and optional help/error messaging.
10
10
  *
11
+ * @slot invalid-text - Overrides the `invalidText` prop with custom markup, shown instead of the description when `invalid` is `true`.
11
12
  * @part input - The native HTML input element.
12
13
  * @part prefix - The prefix wrapper (if used).
13
14
  * @part suffix - The suffix wrapper (if used).
@@ -23,6 +24,8 @@ export declare class Input implements DsComponentInterface, FieldInterface, Form
23
24
  focused: boolean;
24
25
  language: DsLanguage;
25
26
  region: DsRegion;
27
+ hasInvalidTextSlotContent: boolean;
28
+ private disconnectInvalidTextSlotWatcher?;
26
29
  internals: ElementInternals;
27
30
  /**
28
31
  * PUBLIC PROPERTY API
@@ -202,6 +205,7 @@ export declare class Input implements DsComponentInterface, FieldInterface, Form
202
205
  * ------------------------------------------------------
203
206
  */
204
207
  connectedCallback(): void;
208
+ disconnectedCallback(): void;
205
209
  componentWillLoad(): void;
206
210
  componentDidLoad(): void;
207
211
  /**
@@ -0,0 +1,189 @@
1
+ import { EventEmitter } from '../../stencil-public-runtime';
2
+ import { HTMLStencilElement } from '../../stencil-public-runtime';
3
+ import { type LogInstance } from "../../utils/index";
4
+ import { DsComponentInterface, DsConfigState, DsLanguage, DsRegion } from "../../global/index";
5
+ import { FieldInterface } from '../input/field.util';
6
+ import { InputColor } from '../input/input.interfaces';
7
+ import { InputSliderBrandColor, InputSliderInputDetail, InputSliderChangeDetail, InputSliderBlurDetail, InputSliderFocusDetail, InputSliderClickDetail } from './input-slider.interfaces';
8
+ /**
9
+ * Input slider renders a noUiSlider-backed slider with validation and label/description messaging.
10
+ *
11
+ * @slot invalid-text - Overrides the `invalidText` prop with custom markup, shown instead of the description when `invalid` is `true`.
12
+ * @part slider - The noUiSlider target element.
13
+ */
14
+ export declare class InputSlider implements DsComponentInterface, FieldInterface {
15
+ private inheritedAttributes;
16
+ private sliderEl;
17
+ private picker;
18
+ private initialValue;
19
+ inputSliderId: string;
20
+ log: LogInstance;
21
+ createLogger(log: LogInstance): void;
22
+ el: HTMLStencilElement;
23
+ internals: ElementInternals;
24
+ focused: boolean;
25
+ language: DsLanguage;
26
+ region: DsRegion;
27
+ hasInvalidTextSlotContent: boolean;
28
+ private disconnectInvalidTextSlotWatcher?;
29
+ /**
30
+ * PUBLIC PROPERTY API
31
+ * ------------------------------------------------------
32
+ */
33
+ /**
34
+ * The value of the slider. Unlike a text input, a slider can never be
35
+ * empty; when unset it defaults to `min`. Internally starts as `NaN` (this
36
+ * codebase's established "empty number" sentinel, see `isValueEmpty`) until
37
+ * `connectedCallback` resolves it — never actually rendered or emitted.
38
+ */
39
+ value: number;
40
+ protected valueChanged(newVal: number): void;
41
+ /**
42
+ * The name of the control, which is submitted with the form data.
43
+ */
44
+ readonly name: string;
45
+ /**
46
+ * The label of the slider, which is displayed above the control.
47
+ */
48
+ readonly label: string;
49
+ /**
50
+ * The description of the slider, which is displayed below the control.
51
+ */
52
+ readonly description: string;
53
+ /**
54
+ * Defines the color of the slider. The default value is `primary`.
55
+ */
56
+ readonly color: InputColor;
57
+ /**
58
+ * Recolors the connect (the filled progress track) with a brand color instead of the default
59
+ * grey/primary style. Left of the handle uses the darker `-4` shade, right of it the lighter
60
+ * `-2` shade. Empty (default) keeps the current grey/primary look.
61
+ */
62
+ readonly brandColor: InputSliderBrandColor;
63
+ /**
64
+ * If `true` the component gets an invalid style.
65
+ */
66
+ readonly invalid: boolean;
67
+ protected invalidChanged(): void;
68
+ /**
69
+ * The text to display when the slider is in an invalid state.
70
+ */
71
+ readonly invalidText: string;
72
+ /**
73
+ * The minimum value of the slider.
74
+ */
75
+ readonly min: number;
76
+ /**
77
+ * The maximum value of the slider.
78
+ */
79
+ readonly max: number;
80
+ protected minChanged(): void;
81
+ /**
82
+ * The granularity the value must adhere to, as a string so `"any"` (free,
83
+ * continuous dragging with no step snapping) can be expressed alongside
84
+ * numeric step sizes.
85
+ */
86
+ readonly step: string;
87
+ protected stepChanged(): void;
88
+ /**
89
+ * Set the amount of time, in milliseconds, to wait to trigger the `dsChange` event after each keystroke. This also impacts form bindings such as `ngModel` or `v-model`.
90
+ */
91
+ readonly debounce: number;
92
+ protected debounceChanged(): void;
93
+ /**
94
+ * If `true`, the element is not mutable, focusable, or even submitted with the form. The user can neither edit nor focus on the control, nor its form control descendants.
95
+ */
96
+ readonly disabled: boolean;
97
+ protected disabledChanged(): void;
98
+ /**
99
+ * If `true` the element can not be mutated. noUiSlider has no native concept of
100
+ * `readonly`, so this is treated as equivalent to `disabled`.
101
+ */
102
+ readonly readonly: boolean;
103
+ protected readonlyChanged(): void;
104
+ /**
105
+ * If `true`, the user must fill in a value before submitting a form.
106
+ */
107
+ readonly required: boolean;
108
+ /**
109
+ * If `true`, in Angular reactive forms the control will not be set invalid
110
+ */
111
+ readonly autoInvalidOff: boolean;
112
+ /**
113
+ * Emitted on each keyboard/pointer movement, before the value is committed.
114
+ */
115
+ dsInput: EventEmitter<InputSliderInputDetail>;
116
+ /**
117
+ * Emitted when the input has focus.
118
+ */
119
+ dsFocus: EventEmitter<InputSliderFocusDetail>;
120
+ /**
121
+ * Emitted when the input loses focus.
122
+ */
123
+ dsBlur: EventEmitter<InputSliderBlurDetail>;
124
+ /**
125
+ * Emitted when the input is clicked.
126
+ */
127
+ dsClick: EventEmitter<InputSliderClickDetail>;
128
+ /**
129
+ * Emitted when the value is committed (noUiSlider `change`, not `blur` — see
130
+ * ADR-0010/ADR-0007). Fires once per discrete drag/step, independent of focus.
131
+ */
132
+ dsChange: EventEmitter<InputSliderChangeDetail>;
133
+ /**
134
+ * LIFECYCLE
135
+ * ------------------------------------------------------
136
+ */
137
+ connectedCallback(): void;
138
+ componentWillLoad(): void;
139
+ componentDidLoad(): void;
140
+ disconnectedCallback(): void;
141
+ /**
142
+ * PUBLIC LISTENERS
143
+ * ------------------------------------------------------
144
+ */
145
+ listenToClick(ev: UIEvent): void;
146
+ listenToReset(ev: UIEvent): void;
147
+ /**
148
+ * @internal define config for the component
149
+ */
150
+ configChanged(state: DsConfigState): Promise<void>;
151
+ /**
152
+ * PUBLIC METHODS
153
+ * ------------------------------------------------------
154
+ */
155
+ /**
156
+ * Sets focus on `ds-input-slider`'s slider handle. Use this method instead of the global
157
+ * `element.focus()`.
158
+ */
159
+ setFocus(): Promise<void>;
160
+ /**
161
+ * Sets blur on `ds-input-slider`'s slider handle. Use this method instead of the global
162
+ * `element.blur()`.
163
+ * @internal
164
+ */
165
+ setBlur(): Promise<void>;
166
+ /**
167
+ * Returns the noUiSlider handle element used under the hood.
168
+ */
169
+ getInputElement(): Promise<HTMLElement | undefined>;
170
+ /**
171
+ * PRIVATE METHODS
172
+ * ------------------------------------------------------
173
+ */
174
+ private setValue;
175
+ private syncFormValue;
176
+ private syncDisabledState;
177
+ /**
178
+ * EVENT HANDLERS
179
+ * ------------------------------------------------------
180
+ */
181
+ private handleFocus;
182
+ private handleBlur;
183
+ private handleClick;
184
+ /**
185
+ * RENDER
186
+ * ------------------------------------------------------
187
+ */
188
+ render(): any;
189
+ }
@@ -0,0 +1,18 @@
1
+ import { InputColor } from '../input/input.interfaces';
2
+ export type { InputColor };
3
+ export declare const INPUT_SLIDER_BRAND_COLORS: readonly ["yellow", "purple", "red", "green", ""];
4
+ export type InputSliderBrandColor = (typeof INPUT_SLIDER_BRAND_COLORS)[number];
5
+ export interface InputSliderCustomEvent<T> extends CustomEvent<T> {
6
+ detail: T;
7
+ target: HTMLDsInputSliderElement;
8
+ }
9
+ export type InputSliderChangeDetail = number;
10
+ export type InputSliderChange = InputSliderCustomEvent<InputSliderChangeDetail>;
11
+ export type InputSliderInputDetail = number;
12
+ export type InputSliderInput = InputSliderCustomEvent<InputSliderInputDetail>;
13
+ export type InputSliderBlurDetail = FocusEvent;
14
+ export type InputSliderBlur = InputSliderCustomEvent<InputSliderBlurDetail>;
15
+ export type InputSliderFocusDetail = FocusEvent;
16
+ export type InputSliderFocus = InputSliderCustomEvent<InputSliderFocusDetail>;
17
+ export type InputSliderClickDetail = MouseEvent;
18
+ export type InputSliderClick = InputSliderCustomEvent<InputSliderClickDetail>;
@@ -0,0 +1,37 @@
1
+ import { type target as TargetElement } from 'nouislider';
2
+ export interface InputSliderPickerConfig {
3
+ targetEl: TargetElement;
4
+ labelId: string;
5
+ min: number;
6
+ max: number;
7
+ step: string;
8
+ value: number;
9
+ disabled: boolean;
10
+ invalid: boolean;
11
+ onInput: (value: number) => void;
12
+ onChange: (value: number) => void;
13
+ }
14
+ export declare class InputSliderPickerController {
15
+ private slider;
16
+ private config;
17
+ private suppressEvents;
18
+ constructor(config: InputSliderPickerConfig);
19
+ /**
20
+ * PUBLIC API
21
+ * ------------------------------------------------------
22
+ */
23
+ setValue(value: number): void;
24
+ setDisabled(disabled: boolean): void;
25
+ setInvalid(invalid: boolean): void;
26
+ updateRange(min: number, max: number, step: string): void;
27
+ focus(): void;
28
+ blur(): void;
29
+ get handleEl(): HTMLElement | undefined;
30
+ destroy(): void;
31
+ /**
32
+ * PRIVATE
33
+ * ------------------------------------------------------
34
+ */
35
+ private init;
36
+ private connectLabelToHandle;
37
+ }
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Clamps `value` into `[min, max]`. Degrades sanely when `min > max` by
3
+ * treating the effective range as `[min(min, max), max(min, max)]`.
4
+ */
5
+ export declare function clampValue(value: number, min: number, max: number): number;
6
+ /**
7
+ * Resolves the initial value: a range input can never be empty, so an unset
8
+ * (`NaN`, this codebase's "empty number" sentinel — see `isValueEmpty`) value
9
+ * defaults to `min`.
10
+ */
11
+ export declare function resolveInitialValue(value: number, min: number): number;
12
+ /**
13
+ * Derives the decimal precision implied by a `step` value, so noUiSlider's
14
+ * `format.to` can round away the floating-point noise its internal
15
+ * percentage-based math otherwise produces. `"any"` (continuous mode) falls
16
+ * back to a small fixed precision rather than pretending to be exact.
17
+ */
18
+ export declare function decimalsFromStep(step: string): number;
@@ -9,6 +9,7 @@ import { NumberInputInputDetail, NumberInputChangeDetail, NumberInputBlurDetail,
9
9
  * Number input renders a specialized text input for numeric values with increment/decrement buttons, formatting, and validation.
10
10
  *
11
11
  * @slot - The number input field content and surrounding elements.
12
+ * @slot invalid-text - Overrides the `invalidText` prop with custom markup, shown instead of the description when `invalid` is `true`.
12
13
  * @part input - The native HTML input element.
13
14
  * @part prefix - The prefix wrapper (if used).
14
15
  * @part suffix - The suffix wrapper (if used).
@@ -20,12 +21,14 @@ export declare class NumberInput implements DsComponentInterface, FieldInterface
20
21
  private inheritedAttributes;
21
22
  private selectTimeout?;
22
23
  private control;
24
+ private disconnectInvalidTextSlotWatcher?;
23
25
  private lastValue;
24
26
  log: LogInstance;
25
27
  createLogger(log: LogInstance): void;
26
28
  el: HTMLStencilElement;
27
29
  internals: ElementInternals;
28
30
  focused: boolean;
31
+ hasInvalidTextSlotContent: boolean;
29
32
  language: DsLanguage;
30
33
  region: DsRegion;
31
34
  nativeInputValue: string;
@@ -141,6 +144,7 @@ export declare class NumberInput implements DsComponentInterface, FieldInterface
141
144
  * ------------------------------------------------------
142
145
  */
143
146
  connectedCallback(): void;
147
+ disconnectedCallback(): void;
144
148
  componentWillLoad(): void;
145
149
  componentDidLoad(): void;
146
150
  /**
@@ -9,6 +9,7 @@ import { HTMLStencilElement } from '../../../stencil-public-runtime';
9
9
  * Radio Group groups multiple radio inputs so only one option can be selected at a time within a form field.
10
10
  *
11
11
  * @slot - The radio items to display inside the group.
12
+ * @slot invalid-text - Overrides the `invalidText` prop with custom markup, shown instead of the description when `invalid` is `true`.
12
13
  */
13
14
  export declare class RadioGroup implements DsComponentInterface, FieldInterface {
14
15
  log: LogInstance;
@@ -17,6 +18,8 @@ export declare class RadioGroup implements DsComponentInterface, FieldInterface
17
18
  internals: ElementInternals;
18
19
  language: DsLanguage;
19
20
  region: DsRegion;
21
+ hasInvalidTextSlotContent: boolean;
22
+ private disconnectInvalidTextSlotWatcher?;
20
23
  inputId: string;
21
24
  private initialValue?;
22
25
  /**
@@ -87,6 +90,10 @@ export declare class RadioGroup implements DsComponentInterface, FieldInterface
87
90
  * Defines the layout of the input
88
91
  */
89
92
  readonly tile: boolean;
93
+ /**
94
+ * If `true` and `tile` is set, the radio circle is visually hidden on every radio in the group.
95
+ */
96
+ readonly hideTrigger: boolean;
90
97
  /**
91
98
  * Defines the color of the tile checkbox.
92
99
  */
@@ -117,8 +124,10 @@ export declare class RadioGroup implements DsComponentInterface, FieldInterface
117
124
  * ------------------------------------------------------
118
125
  */
119
126
  connectedCallback(): void;
127
+ disconnectedCallback(): void;
120
128
  componentWillLoad(): void;
121
129
  componentWillUpdate(): void;
130
+ componentDidLoad(): void;
122
131
  /**
123
132
  * PUBLIC LISTENERS
124
133
  * ------------------------------------------------------
@@ -143,6 +152,7 @@ export declare class RadioGroup implements DsComponentInterface, FieldInterface
143
152
  * ------------------------------------------------------
144
153
  */
145
154
  private handleValueChange;
155
+ private handleSlotChange;
146
156
  private handleClick;
147
157
  /**
148
158
  * PRIVATE METHODS
@@ -81,6 +81,10 @@ export declare class Radio implements DsComponentInterface {
81
81
  * Defines the layout of the input
82
82
  */
83
83
  readonly tile: boolean;
84
+ /**
85
+ * If `true` and `tile` is set, the radio circle is visually hidden. The tile remains fully clickable and keyboard-accessible.
86
+ */
87
+ readonly hideTrigger: boolean;
84
88
  /**
85
89
  * Defines the color of the tile radio.
86
90
  */
@@ -9,6 +9,7 @@ import { HTMLStencilElement } from '../../../stencil-public-runtime';
9
9
  * Segment renders a group of button-like controls for selecting a single option from multiple choices with toggle behavior.
10
10
  *
11
11
  * @slot - One or more ds-segment-item elements.
12
+ * @slot invalid-text - Overrides the `invalidText` prop with custom markup, shown instead of the description when `invalid` is `true`.
12
13
  * @part segment - The segment container element.
13
14
  */
14
15
  export declare class Segment implements DsComponentInterface, Omit<FieldInterface, 'color'> {
@@ -21,6 +22,8 @@ export declare class Segment implements DsComponentInterface, Omit<FieldInterfac
21
22
  region: DsRegion;
22
23
  items: SegmentItemInterface[];
23
24
  autoVertical: boolean;
25
+ hasInvalidTextSlotContent: boolean;
26
+ private disconnectInvalidTextSlotWatcher?;
24
27
  private initialValue?;
25
28
  private resizeObserver?;
26
29
  private lastNaturalWidth;
@@ -12,6 +12,7 @@ import { SelectOption, SelectOptionGroup, SelectChangeDetail, SelectFocusDetail,
12
12
  *
13
13
  * @slot - Optional ds-select-option / ds-select-optgroup elements, as an HTML-only alternative
14
14
  * to the options / optionGroups props. Ignored whenever options or optionGroups is non-empty.
15
+ * @slot invalid-text - Overrides the `invalidText` prop with custom markup, shown instead of the description when `invalid` is `true`.
15
16
  * @part inner - The inner wrapper element containing label, control, and description.
16
17
  * @part label - The label element.
17
18
  * @part control - The control container wrapping the slim-select trigger.
@@ -31,6 +32,8 @@ export declare class DsSelect implements DsComponentInterface, FieldInterface {
31
32
  language: DsLanguage;
32
33
  region: DsRegion;
33
34
  slottedOptions: SelectOption[];
35
+ hasInvalidTextSlotContent: boolean;
36
+ private disconnectInvalidTextSlotWatcher?;
34
37
  slottedOptionGroups: SelectOptionGroup[];
35
38
  internals: ElementInternals;
36
39
  /**
@@ -6,6 +6,7 @@ import { SpinnerColor, SpinnerLabelPosition, SpinnerSize, SpinnerVariation } fro
6
6
  * Spinner displays an animated loading indicator with customizable color, size, and variation.
7
7
  *
8
8
  * @part inner - The spinner animation container element.
9
+ * @part label - The visible label rendered next to the spinner.
9
10
  */
10
11
  export declare class Spinner implements DsComponentInterface, DsConfigObserver {
11
12
  log: LogInstance;
@@ -20,7 +21,7 @@ export declare class Spinner implements DsComponentInterface, DsConfigObserver {
20
21
  private innerEl;
21
22
  /**
22
23
  * PUBLIC PROPERTY API
23
- * ------------------------------------------------------
24
+ * ─────────────────────────────────────────────────────
24
25
  */
25
26
  /**
26
27
  * **Deprecated:** Use inverted="true" for white spinner instead.
@@ -38,7 +39,7 @@ export declare class Spinner implements DsComponentInterface, DsConfigObserver {
38
39
  /**
39
40
  * Defines the size of the spinner. If `sm` the spinner is smaller.
40
41
  */
41
- size: SpinnerSize;
42
+ size?: SpinnerSize;
42
43
  /**
43
44
  * **Deprecated:** Use size="sm" instead.
44
45
  */
@@ -58,13 +59,13 @@ export declare class Spinner implements DsComponentInterface, DsConfigObserver {
58
59
  variationChanged(newValue: SpinnerVariation, oldValue: SpinnerVariation): void;
59
60
  /**
60
61
  * LIFECYCLE
61
- * ------------------------------------------------------
62
+ * ─────────────────────────────────────────────────────
62
63
  */
63
64
  componentDidLoad(): void;
64
65
  disconnectedCallback(): void;
65
66
  /**
66
- * PUBLIC LISTENERS
67
- * ------------------------------------------------------
67
+ * PUBLIC METHODS
68
+ * ─────────────────────────────────────────────────────
68
69
  */
69
70
  /**
70
71
  * @internal define config for the component
@@ -72,7 +73,7 @@ export declare class Spinner implements DsComponentInterface, DsConfigObserver {
72
73
  configChanged(state: DsConfigState): Promise<void>;
73
74
  /**
74
75
  * PRIVATE METHODS
75
- * ------------------------------------------------------
76
+ * ─────────────────────────────────────────────────────
76
77
  */
77
78
  private animate;
78
79
  private destroy;
@@ -81,7 +82,7 @@ export declare class Spinner implements DsComponentInterface, DsConfigObserver {
81
82
  private getColor;
82
83
  /**
83
84
  * RENDER
84
- * ------------------------------------------------------
85
+ * ─────────────────────────────────────────────────────
85
86
  */
86
87
  render(): any;
87
88
  }
@@ -1,6 +1,6 @@
1
1
  export declare const SPINNER_COLORS: readonly ["blue", "white"];
2
2
  export declare const SPINNER_VARIATIONS: readonly ["logo", "circle"];
3
- export declare const SPINNER_SIZES: readonly ["sm", ""];
3
+ export declare const SPINNER_SIZES: readonly ["sm"];
4
4
  export declare const SPINNER_LABEL_POSITIONS: readonly ["right", "bottom"];
5
5
  export type SpinnerColor = (typeof SPINNER_COLORS)[number];
6
6
  export type SpinnerVariation = (typeof SPINNER_VARIATIONS)[number];
@@ -18,16 +18,16 @@ export declare class Stack implements DsComponentInterface {
18
18
  /**
19
19
  * Defines the text positioning like center, right or default to start.
20
20
  */
21
- readonly align: StackAlignment;
21
+ readonly align?: StackAlignment;
22
22
  /**
23
23
  * @internal
24
24
  * Please use align instead.
25
25
  */
26
- readonly alignment: StackAlignment;
26
+ readonly alignment?: StackAlignment;
27
27
  /**
28
28
  * Defines the direction of the child elements. Default is column.
29
29
  */
30
- direction: StackDirection;
30
+ direction?: StackDirection;
31
31
  /**
32
32
  * Defines the width of the stack to be exactly the width of the content.
33
33
  */
@@ -1,8 +1,8 @@
1
1
  export declare const STACK_LAYOUTS: readonly ["", "horizontal", "vertical", "horizontal-reverse", "vertical-reverse"];
2
2
  export declare const STACK_SPACES: readonly ["", "auto", "none", "2xs", "xs", "sm", "base", "md", "lg", "xl", "xxl", "xx-small", "x-small", "small", "normal", "medium", "large", "x-large", "xx-large"];
3
3
  export declare const STACK_PADDINGS: readonly ["", "none", "2xs", "xs", "sm", "base", "md", "lg", "xl", "xxl", "xx-small", "x-small", "small", "normal", "medium", "large", "x-large", "xx-large"];
4
- export declare const STACK_ALIGNMENTS: readonly ["", "top start", "top center", "top end", "start", "center", "end", "bottom start", "bottom center", "bottom end"];
5
- export declare const STACK_DIRECTIONS: readonly ["", "row", "column", "row-reverse", "column-reverse"];
4
+ export declare const STACK_ALIGNMENTS: readonly ["top start", "top center", "top end", "start", "center", "end", "bottom start", "bottom center", "bottom end"];
5
+ export declare const STACK_DIRECTIONS: readonly ["row", "column", "row-reverse", "column-reverse"];
6
6
  export type StackLayout = (typeof STACK_LAYOUTS)[number];
7
7
  export type StackSpace = (typeof STACK_SPACES)[number];
8
8
  export type StackPadding = (typeof STACK_PADDINGS)[number];
@@ -9,6 +9,7 @@ import { TextareaWrap, TextareaInputMode, TextareaBlurDetail, TextareaKeyPressDe
9
9
  * Textarea renders a multi-line text input field with validation, resizing, and optional help/error messaging.
10
10
  *
11
11
  * @slot - The textarea field content and surrounding elements.
12
+ * @slot invalid-text - Overrides the `invalidText` prop with custom markup, shown instead of the description when `invalid` is `true`.
12
13
  * @part textarea - The native HTML textarea element.
13
14
  * @part prefix - The prefix wrapper (if used).
14
15
  * @part suffix - The suffix wrapper (if used).
@@ -17,11 +18,13 @@ export declare class Textarea implements DsComponentInterface, FieldInterface, F
17
18
  inputId: string;
18
19
  private inheritedAttributes;
19
20
  private control;
21
+ private disconnectInvalidTextSlotWatcher?;
20
22
  log: LogInstance;
21
23
  createLogger(log: LogInstance): void;
22
24
  el: HTMLStencilElement;
23
25
  internals: ElementInternals;
24
26
  focused: boolean;
27
+ hasInvalidTextSlotContent: boolean;
25
28
  language: DsLanguage;
26
29
  region: DsRegion;
27
30
  /**
@@ -146,6 +149,7 @@ export declare class Textarea implements DsComponentInterface, FieldInterface, F
146
149
  * ------------------------------------------------------
147
150
  */
148
151
  connectedCallback(): void;
152
+ disconnectedCallback(): void;
149
153
  componentWillLoad(): void;
150
154
  componentDidLoad(): void;
151
155
  /**