@swisspost/design-system-components 10.0.0-next.70 → 10.0.0-next.71

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 (339) hide show
  1. package/dist/cjs/breakpoints-B0Olgvgc.js +206 -0
  2. package/dist/cjs/component-on-ready-CifOTqw1.js +24 -0
  3. package/dist/cjs/{focusable-ZqET_zrB.js → focusable-COT2uiEV.js} +25 -4
  4. package/dist/cjs/{index-DPdHkdGf.js → index-CCteMCnR.js} +13 -13
  5. package/dist/cjs/loader.cjs.js +2 -2
  6. package/dist/cjs/nanoid-CmjyF1Cm.js +20 -0
  7. package/dist/cjs/{package-Ds_LS1pB.js → package-CscM89A7.js} +1 -1
  8. package/dist/cjs/post-accordion_2.cjs.entry.js +7 -7
  9. package/dist/cjs/post-autocomplete.cjs.entry.js +3 -3
  10. package/dist/cjs/post-avatar.cjs.entry.js +6 -24
  11. package/dist/cjs/post-back-to-top.cjs.entry.js +3 -3
  12. package/dist/cjs/post-banner.cjs.entry.js +3 -3
  13. package/dist/cjs/post-breadcrumb-item.cjs.entry.js +30 -33
  14. package/dist/cjs/post-breadcrumbs.cjs.entry.js +82 -80
  15. package/dist/cjs/post-closebutton_14.cjs.entry.js +36 -33
  16. package/dist/cjs/post-collapsible_2.cjs.entry.js +5 -5
  17. package/dist/cjs/post-components.cjs.js +2 -2
  18. package/dist/cjs/post-date-picker.cjs.entry.js +31 -23
  19. package/dist/cjs/post-footer.cjs.entry.js +5 -5
  20. package/dist/cjs/post-linkarea.cjs.entry.js +3 -3
  21. package/dist/cjs/post-listbox-option.cjs.entry.js +4 -4
  22. package/dist/cjs/post-listbox.cjs.entry.js +4 -4
  23. package/dist/cjs/post-login-widget.cjs.entry.js +36 -3
  24. package/dist/cjs/post-number-input.cjs.entry.js +6 -6
  25. package/dist/cjs/post-pagination.cjs.entry.js +5 -5
  26. package/dist/cjs/post-popover-trigger.cjs.entry.js +5 -5
  27. package/dist/cjs/post-popover.cjs.entry.js +4 -4
  28. package/dist/cjs/post-rating.cjs.entry.js +4 -4
  29. package/dist/cjs/post-stepper-item.cjs.entry.js +3 -3
  30. package/dist/cjs/post-stepper.cjs.entry.js +4 -4
  31. package/dist/cjs/post-tab-item.cjs.entry.js +6 -6
  32. package/dist/cjs/post-tab-panel.cjs.entry.js +6 -6
  33. package/dist/cjs/post-tabs.cjs.entry.js +7 -27
  34. package/dist/cjs/post-tooltip-trigger.cjs.entry.js +16 -12
  35. package/dist/cjs/post-tooltip.cjs.entry.js +4 -4
  36. package/dist/collection/components/post-accordion-item/post-accordion-item.js +3 -4
  37. package/dist/collection/components/post-avatar/avatar-utils.js +2 -2
  38. package/dist/collection/components/post-avatar/post-avatar.js +3 -40
  39. package/dist/collection/components/post-breadcrumb-item/post-breadcrumb-item.css +1 -1
  40. package/dist/collection/components/post-breadcrumb-item/post-breadcrumb-item.js +79 -39
  41. package/dist/collection/components/post-breadcrumb-item/variants.js +1 -0
  42. package/dist/collection/components/post-breadcrumbs/post-breadcrumbs.css +1 -1
  43. package/dist/collection/components/post-breadcrumbs/post-breadcrumbs.js +84 -83
  44. package/dist/collection/components/post-closebutton/post-closebutton.js +1 -1
  45. package/dist/collection/components/post-collapsible/post-collapsible.js +1 -1
  46. package/dist/collection/components/post-collapsible-trigger/post-collapsible-trigger.js +1 -1
  47. package/dist/collection/components/post-date-picker/post-date-picker.css +1 -1
  48. package/dist/collection/components/post-date-picker/post-date-picker.js +2 -2
  49. package/dist/collection/components/post-footer/post-footer.js +1 -1
  50. package/dist/collection/components/post-header/post-header.js +4 -4
  51. package/dist/collection/components/post-icon/post-icon.js +3 -2
  52. package/dist/collection/components/post-language-menu/post-language-menu.js +2 -3
  53. package/dist/collection/components/post-linkarea/post-linkarea.js +1 -1
  54. package/dist/collection/components/post-listbox/post-listbox.js +1 -1
  55. package/dist/collection/components/post-listbox-option/post-listbox-option.js +2 -2
  56. package/dist/collection/components/post-login-widget/post-login-widget.css +1 -0
  57. package/dist/collection/components/post-login-widget/post-login-widget.js +106 -4
  58. package/dist/collection/components/post-logo/post-logo.js +1 -1
  59. package/dist/collection/components/post-mainnavigation/post-mainnavigation.js +1 -1
  60. package/dist/collection/components/post-megadropdown/post-megadropdown.js +1 -1
  61. package/dist/collection/components/post-megadropdown-trigger/post-megadropdown-trigger.js +1 -1
  62. package/dist/collection/components/post-menu/post-menu.js +5 -2
  63. package/dist/collection/components/post-menu-item/post-menu-item.css +1 -1
  64. package/dist/collection/components/post-menu-trigger/post-menu-trigger.js +1 -1
  65. package/dist/collection/components/post-number-input/post-number-input.js +2 -2
  66. package/dist/collection/components/post-pagination/post-pagination.js +1 -2
  67. package/dist/collection/components/post-popover/post-popover.js +1 -1
  68. package/dist/collection/components/post-popover-trigger/post-popover-trigger.js +1 -1
  69. package/dist/collection/components/post-popovercontainer/post-popovercontainer.css +1 -1
  70. package/dist/collection/components/post-popovercontainer/post-popovercontainer.js +5 -6
  71. package/dist/collection/components/post-rating/post-rating.js +1 -1
  72. package/dist/collection/components/post-stepper/post-stepper.js +1 -1
  73. package/dist/collection/components/post-stepper-item/post-stepper-item.js +1 -1
  74. package/dist/collection/components/post-tab-item/post-tab-item.js +2 -3
  75. package/dist/collection/components/post-tab-panel/post-tab-panel.js +2 -3
  76. package/dist/collection/components/post-tabs/post-tabs.js +2 -2
  77. package/dist/collection/components/post-togglebutton/post-togglebutton.js +1 -1
  78. package/dist/collection/components/post-tooltip/post-tooltip.js +1 -1
  79. package/dist/collection/components/post-tooltip-trigger/post-tooltip-trigger.js +15 -9
  80. package/dist/collection/hydrate-stub/index.stub.js +5 -0
  81. package/dist/collection/test-setup.js +7 -0
  82. package/dist/collection/utils/index.js +2 -0
  83. package/dist/collection/utils/locales.js +9 -2
  84. package/dist/collection/utils/nanoid.js +16 -0
  85. package/dist/collection/utils/property-decorators/array-of.js +22 -0
  86. package/dist/collection/utils/property-decorators/create-validator-decorator.js +187 -0
  87. package/dist/collection/utils/property-decorators/date.js +21 -0
  88. package/dist/collection/utils/property-decorators/index.js +9 -0
  89. package/dist/collection/utils/property-decorators/iso-date.js +21 -0
  90. package/dist/collection/utils/property-decorators/one-of.js +22 -0
  91. package/dist/collection/utils/property-decorators/pattern.js +22 -0
  92. package/dist/collection/utils/property-decorators/required.js +24 -0
  93. package/dist/collection/utils/property-decorators/type.js +25 -0
  94. package/dist/collection/utils/property-decorators/url.js +29 -0
  95. package/dist/components/breakpoints.js +1 -0
  96. package/dist/components/component-on-ready.js +1 -0
  97. package/dist/components/focusable.js +1 -1
  98. package/dist/components/index2.js +1 -1
  99. package/dist/components/nanoid.js +1 -0
  100. package/dist/components/package.js +1 -1
  101. package/dist/components/post-accordion-item2.js +1 -1
  102. package/dist/components/post-accordion2.js +1 -1
  103. package/dist/components/post-autocomplete.js +1 -1
  104. package/dist/components/post-avatar.js +1 -1
  105. package/dist/components/post-avatar2.js +1 -0
  106. package/dist/components/post-back-to-top.js +1 -1
  107. package/dist/components/post-banner.js +1 -1
  108. package/dist/components/post-breadcrumb-item.js +1 -1
  109. package/dist/components/post-breadcrumbs.js +1 -1
  110. package/dist/components/post-closebutton2.js +1 -1
  111. package/dist/components/post-collapsible-trigger2.js +1 -1
  112. package/dist/components/post-collapsible2.js +1 -1
  113. package/dist/components/post-date-picker.js +1 -1
  114. package/dist/components/post-footer.js +1 -1
  115. package/dist/components/post-header.js +1 -1
  116. package/dist/components/post-icon2.js +1 -1
  117. package/dist/components/post-language-menu-item.js +1 -1
  118. package/dist/components/post-language-menu.js +1 -1
  119. package/dist/components/post-linkarea.js +1 -1
  120. package/dist/components/post-listbox-option.js +1 -1
  121. package/dist/components/post-listbox.js +1 -1
  122. package/dist/components/post-login-widget.js +1 -1
  123. package/dist/components/post-logo.js +1 -1
  124. package/dist/components/post-mainnavigation.js +1 -1
  125. package/dist/components/post-megadropdown-trigger.js +1 -1
  126. package/dist/components/post-megadropdown.js +1 -1
  127. package/dist/components/post-menu-item2.js +1 -1
  128. package/dist/components/post-menu-trigger2.js +1 -1
  129. package/dist/components/post-menu2.js +1 -1
  130. package/dist/components/post-number-input.js +1 -1
  131. package/dist/components/post-pagination.js +1 -1
  132. package/dist/components/post-popover-trigger.js +1 -1
  133. package/dist/components/post-popover.js +1 -1
  134. package/dist/components/post-popovercontainer2.js +1 -1
  135. package/dist/components/post-rating.js +1 -1
  136. package/dist/components/post-stepper-item.js +1 -1
  137. package/dist/components/post-stepper.js +1 -1
  138. package/dist/components/post-tab-item.js +1 -1
  139. package/dist/components/post-tab-panel.js +1 -1
  140. package/dist/components/post-tabs.js +1 -1
  141. package/dist/components/post-togglebutton2.js +1 -1
  142. package/dist/components/post-tooltip-trigger.js +1 -1
  143. package/dist/components/post-tooltip.js +1 -1
  144. package/dist/components/react/index.js +1 -1
  145. package/dist/components/react/p-8LXe8Zt_.js +1 -0
  146. package/dist/components/react/p-BC0-M_SK.js +1 -0
  147. package/dist/components/react/p-BQ3HlJPr.js +1 -0
  148. package/dist/components/react/p-BrY4VWTQ.js +1 -0
  149. package/dist/components/react/p-C7s9oglQ.js +1 -0
  150. package/dist/components/react/{p-D6uA8DbL.js → p-CTgZ8DGr.js} +1 -1
  151. package/dist/components/react/{p-B2iQay0-.js → p-CVtlwDsT.js} +1 -1
  152. package/dist/components/react/p-CaLwTf3T.js +1 -0
  153. package/dist/components/react/p-ClJyTIVM.js +1 -0
  154. package/dist/components/react/{p-B2BDAeHI.js → p-DGr-hfLq.js} +1 -1
  155. package/dist/components/react/{p-Cu9RsvYK.js → p-DJxdj9pa.js} +1 -1
  156. package/dist/components/react/p-DKDEtjQe.js +1 -0
  157. package/dist/components/react/p-DPKR_4uI.js +1 -0
  158. package/dist/components/react/p-DcEDGaFs.js +1 -0
  159. package/dist/components/react/{p-C8b6-YQl.js → p-DipfA69b.js} +1 -1
  160. package/dist/components/react/{p-Dmnnz3fB.js → p-DwZxAC2u.js} +1 -1
  161. package/dist/components/react/p-lpWRZjJp.js +1 -0
  162. package/dist/components/react/p-x3kxyWSZ.js +1 -0
  163. package/dist/components/react/post-accordion-item.js +1 -1
  164. package/dist/components/react/post-accordion.js +1 -1
  165. package/dist/components/react/post-autocomplete.js +1 -1
  166. package/dist/components/react/post-avatar.js +1 -1
  167. package/dist/components/react/post-back-to-top.js +1 -1
  168. package/dist/components/react/post-banner.js +1 -1
  169. package/dist/components/react/post-breadcrumb-item.js +1 -1
  170. package/dist/components/react/post-breadcrumbs.js +1 -1
  171. package/dist/components/react/post-closebutton.js +1 -1
  172. package/dist/components/react/post-collapsible-trigger.js +1 -1
  173. package/dist/components/react/post-collapsible.js +1 -1
  174. package/dist/components/react/post-date-picker.js +1 -1
  175. package/dist/components/react/post-footer.js +1 -1
  176. package/dist/components/react/post-header.js +1 -1
  177. package/dist/components/react/post-icon.js +1 -1
  178. package/dist/components/react/post-language-menu-item.js +1 -1
  179. package/dist/components/react/post-language-menu.js +1 -1
  180. package/dist/components/react/post-linkarea.js +1 -1
  181. package/dist/components/react/post-listbox-option.js +1 -1
  182. package/dist/components/react/post-listbox.js +1 -1
  183. package/dist/components/react/post-login-widget.js +1 -1
  184. package/dist/components/react/post-logo.js +1 -1
  185. package/dist/components/react/post-mainnavigation.js +1 -1
  186. package/dist/components/react/post-megadropdown-trigger.js +1 -1
  187. package/dist/components/react/post-megadropdown.js +1 -1
  188. package/dist/components/react/post-menu-item.js +1 -1
  189. package/dist/components/react/post-menu-trigger.js +1 -1
  190. package/dist/components/react/post-menu.js +1 -1
  191. package/dist/components/react/post-number-input.js +1 -1
  192. package/dist/components/react/post-pagination.js +1 -1
  193. package/dist/components/react/post-popover-trigger.js +1 -1
  194. package/dist/components/react/post-popover.js +1 -1
  195. package/dist/components/react/post-popovercontainer.js +1 -1
  196. package/dist/components/react/post-rating.js +1 -1
  197. package/dist/components/react/post-stepper-item.js +1 -1
  198. package/dist/components/react/post-stepper.js +1 -1
  199. package/dist/components/react/post-tab-item.js +1 -1
  200. package/dist/components/react/post-tab-panel.js +1 -1
  201. package/dist/components/react/post-tabs.js +1 -1
  202. package/dist/components/react/post-togglebutton.js +1 -1
  203. package/dist/components/react/post-tooltip-trigger.js +1 -1
  204. package/dist/components/react/post-tooltip.js +1 -1
  205. package/dist/docs.json +202 -69
  206. package/dist/esm/breakpoints-BQ3HlJPr.js +202 -0
  207. package/dist/esm/component-on-ready-lpWRZjJp.js +22 -0
  208. package/dist/esm/{focusable-BD_WT2MO.js → focusable-C7afHKmo.js} +25 -5
  209. package/dist/esm/{index-DmAi35UF.js → index-DmBWUef5.js} +13 -13
  210. package/dist/esm/loader.js +3 -3
  211. package/dist/esm/nanoid-8LXe8Zt_.js +18 -0
  212. package/dist/esm/package-x3kxyWSZ.js +3 -0
  213. package/dist/esm/post-accordion_2.entry.js +6 -6
  214. package/dist/esm/post-autocomplete.entry.js +3 -3
  215. package/dist/esm/post-avatar.entry.js +6 -24
  216. package/dist/esm/post-back-to-top.entry.js +3 -3
  217. package/dist/esm/post-banner.entry.js +3 -3
  218. package/dist/esm/post-breadcrumb-item.entry.js +31 -34
  219. package/dist/esm/post-breadcrumbs.entry.js +82 -80
  220. package/dist/esm/post-closebutton_14.entry.js +31 -28
  221. package/dist/esm/post-collapsible_2.entry.js +5 -5
  222. package/dist/esm/post-components.js +3 -3
  223. package/dist/esm/post-date-picker.entry.js +15 -7
  224. package/dist/esm/post-footer.entry.js +4 -4
  225. package/dist/esm/post-linkarea.entry.js +3 -3
  226. package/dist/esm/post-listbox-option.entry.js +4 -4
  227. package/dist/esm/post-listbox.entry.js +4 -4
  228. package/dist/esm/post-login-widget.entry.js +36 -3
  229. package/dist/esm/post-number-input.entry.js +5 -5
  230. package/dist/esm/post-pagination.entry.js +4 -4
  231. package/dist/esm/post-popover-trigger.entry.js +5 -5
  232. package/dist/esm/post-popover.entry.js +4 -4
  233. package/dist/esm/post-rating.entry.js +4 -4
  234. package/dist/esm/post-stepper-item.entry.js +3 -3
  235. package/dist/esm/post-stepper.entry.js +4 -4
  236. package/dist/esm/post-tab-item.entry.js +5 -5
  237. package/dist/esm/post-tab-panel.entry.js +5 -5
  238. package/dist/esm/post-tabs.entry.js +6 -26
  239. package/dist/esm/post-tooltip-trigger.entry.js +16 -12
  240. package/dist/esm/post-tooltip.entry.js +4 -4
  241. package/dist/post-components/{p-c2e05ba0.entry.js → p-08a0e8e9.entry.js} +1 -1
  242. package/dist/post-components/{p-f12e59a0.entry.js → p-1583817b.entry.js} +1 -1
  243. package/dist/post-components/{p-e6ba44b1.entry.js → p-203d9abd.entry.js} +1 -1
  244. package/dist/post-components/p-2c68af27.entry.js +1 -0
  245. package/dist/post-components/{p-092f8795.entry.js → p-39143e19.entry.js} +1 -1
  246. package/dist/post-components/p-46dd9e7e.entry.js +1 -0
  247. package/dist/post-components/{p-77d5e17b.entry.js → p-4b445a35.entry.js} +1 -1
  248. package/dist/post-components/p-53a8cce5.entry.js +1 -0
  249. package/dist/post-components/p-72bff1fc.entry.js +1 -0
  250. package/dist/post-components/{p-25c28493.entry.js → p-75045028.entry.js} +1 -1
  251. package/dist/post-components/{p-534fed55.entry.js → p-768b4516.entry.js} +1 -1
  252. package/dist/post-components/{p-2fcca5ec.entry.js → p-7e072450.entry.js} +1 -1
  253. package/dist/post-components/{p-3cefd49e.entry.js → p-83cb6424.entry.js} +1 -1
  254. package/dist/post-components/p-8LXe8Zt_.js +1 -0
  255. package/dist/post-components/{p-1d58bec1.entry.js → p-94f4da57.entry.js} +1 -1
  256. package/dist/post-components/{p-5068ae7e.entry.js → p-9dace750.entry.js} +1 -1
  257. package/dist/post-components/{p-3fea238c.entry.js → p-9ea7e46f.entry.js} +1 -1
  258. package/dist/post-components/p-BQ3HlJPr.js +1 -0
  259. package/dist/post-components/p-BrY4VWTQ.js +1 -0
  260. package/dist/post-components/p-DmBWUef5.js +2 -0
  261. package/dist/post-components/{p-86697a58.entry.js → p-a0ac814c.entry.js} +1 -1
  262. package/dist/post-components/p-a0d12ca8.entry.js +1 -0
  263. package/dist/post-components/{p-570d64dd.entry.js → p-bab0f27f.entry.js} +1 -1
  264. package/dist/post-components/p-cb039d66.entry.js +1 -0
  265. package/dist/post-components/p-e8cda4e1.entry.js +1 -0
  266. package/dist/post-components/{p-17ccebe6.entry.js → p-e8e50d5c.entry.js} +1 -1
  267. package/dist/post-components/p-eb64ec1d.entry.js +1 -0
  268. package/dist/post-components/p-f0746a9e.entry.js +1 -0
  269. package/dist/post-components/p-f5e33714.entry.js +1 -0
  270. package/dist/post-components/{p-521178f5.entry.js → p-f93ce33d.entry.js} +1 -1
  271. package/dist/post-components/{p-9ca5c297.entry.js → p-fd0446b2.entry.js} +1 -1
  272. package/dist/post-components/p-lpWRZjJp.js +1 -0
  273. package/dist/post-components/p-x3kxyWSZ.js +1 -0
  274. package/dist/post-components/post-components.css +1 -1
  275. package/dist/post-components/post-components.esm.js +1 -1
  276. package/dist/types/components/post-avatar/avatar-utils.d.ts +1 -1
  277. package/dist/types/components/post-avatar/post-avatar.d.ts +0 -8
  278. package/dist/types/components/post-breadcrumb-item/post-breadcrumb-item.d.ts +14 -11
  279. package/dist/types/components/post-breadcrumb-item/variants.d.ts +2 -0
  280. package/dist/types/components/post-breadcrumbs/post-breadcrumbs.d.ts +23 -25
  281. package/dist/types/components/post-login-widget/post-login-widget.d.ts +21 -2
  282. package/dist/types/components/post-menu/post-menu.d.ts +1 -1
  283. package/dist/types/components/post-popover/post-popover.d.ts +1 -1
  284. package/dist/types/components/post-tooltip/post-tooltip.d.ts +1 -1
  285. package/dist/types/components/post-tooltip-trigger/post-tooltip-trigger.d.ts +1 -0
  286. package/dist/types/components.d.ts +68 -24
  287. package/dist/types/modules.d.ts +2 -0
  288. package/dist/types/utils/index.d.ts +2 -0
  289. package/dist/types/utils/nanoid.d.ts +8 -0
  290. package/dist/types/utils/property-decorators/array-of.d.ts +9 -0
  291. package/dist/types/utils/property-decorators/create-validator-decorator.d.ts +43 -0
  292. package/dist/types/utils/property-decorators/date.d.ts +6 -0
  293. package/dist/types/utils/property-decorators/index.d.ts +9 -0
  294. package/dist/types/utils/property-decorators/iso-date.d.ts +6 -0
  295. package/dist/types/utils/property-decorators/one-of.d.ts +8 -0
  296. package/dist/types/utils/property-decorators/pattern.d.ts +8 -0
  297. package/dist/types/utils/property-decorators/required.d.ts +8 -0
  298. package/dist/types/utils/property-decorators/type.d.ts +9 -0
  299. package/dist/types/utils/property-decorators/url.d.ts +6 -0
  300. package/hydrate/index.js +417 -114734
  301. package/hydrate/index.mjs +417 -114734
  302. package/hydrate/index.stub.js +5 -0
  303. package/package.json +28 -18
  304. package/dist/cjs/index-YBj3gUJp.js +0 -114540
  305. package/dist/cjs/index.browser-BVb9l9T_.js +0 -16
  306. package/dist/components/index.browser.js +0 -1
  307. package/dist/components/index3.js +0 -6
  308. package/dist/components/post-breadcrumb-item2.js +0 -1
  309. package/dist/components/react/p-B076QoO3.js +0 -1
  310. package/dist/components/react/p-B_RL4AOE.js +0 -1
  311. package/dist/components/react/p-BoFDru4R.js +0 -1
  312. package/dist/components/react/p-BuL0WAoF.js +0 -1
  313. package/dist/components/react/p-CJcRbvrI.js +0 -6
  314. package/dist/components/react/p-DSSN7xW4.js +0 -1
  315. package/dist/components/react/p-DW7sbg9f.js +0 -1
  316. package/dist/components/react/p-DgdnwpId.js +0 -1
  317. package/dist/components/react/p-PuHMz_9_.js +0 -1
  318. package/dist/components/react/p-nA1BKco0.js +0 -1
  319. package/dist/components/react/p-tpgRP2Dr.js +0 -1
  320. package/dist/esm/index-CJcRbvrI.js +0 -114535
  321. package/dist/esm/index.browser-nA1BKco0.js +0 -14
  322. package/dist/esm/package-DW7sbg9f.js +0 -3
  323. package/dist/post-components/p-29ada3d7.entry.js +0 -1
  324. package/dist/post-components/p-5f52cba3.entry.js +0 -1
  325. package/dist/post-components/p-987bebe8.entry.js +0 -1
  326. package/dist/post-components/p-9ea3066f.entry.js +0 -1
  327. package/dist/post-components/p-CJcRbvrI.js +0 -6
  328. package/dist/post-components/p-DW7sbg9f.js +0 -1
  329. package/dist/post-components/p-DmAi35UF.js +0 -2
  330. package/dist/post-components/p-PuHMz_9_.js +0 -1
  331. package/dist/post-components/p-a6fc33fa.entry.js +0 -1
  332. package/dist/post-components/p-ac853d6b.entry.js +0 -1
  333. package/dist/post-components/p-bd09bc20.entry.js +0 -1
  334. package/dist/post-components/p-c55b537b.entry.js +0 -1
  335. package/dist/post-components/p-dded4f13.entry.js +0 -1
  336. package/dist/post-components/p-ead1094e.entry.js +0 -1
  337. package/dist/post-components/p-nA1BKco0.js +0 -1
  338. package/dist/types/home/runner/work/design-system/design-system/packages/components/.stencil/types/language-tags.d.ts +0 -1
  339. /package/dist/types/{language-tags.js → test-setup.d.ts} +0 -0
@@ -8,7 +8,6 @@ declare enum AvatarType {
8
8
  * @slot default - Slot for inserting a custom image as avatar.
9
9
  */
10
10
  export declare class PostAvatar {
11
- private static readonly INTERNAL_USERID_IMAGE_SRC;
12
11
  private slottedImageObserver;
13
12
  host: HTMLPostAvatarElement;
14
13
  /**
@@ -19,10 +18,6 @@ export declare class PostAvatar {
19
18
  * Defines the users lastname.
20
19
  */
21
20
  readonly lastname?: string;
22
- /**
23
- * Defines the company internal userId.<post-banner type="warning" data-size="sm"><p>Can only be used on post.ch domains!</p></post-banner>
24
- */
25
- readonly userid?: string;
26
21
  /**
27
22
  * Defines the users email address associated with a gravatar profile picture.
28
23
  */
@@ -39,14 +34,11 @@ export declare class PostAvatar {
39
34
  storageKey: string;
40
35
  validateFirstname(): void;
41
36
  validateLastname(): void;
42
- updateUserid(): void;
43
37
  updateEmail(): void;
44
38
  validateDescription(): void;
45
- private validateUserId;
46
39
  private validateEmail;
47
40
  private getAvatarImage;
48
41
  private getImageByProp;
49
- private fetchImageByUserId;
50
42
  private fetchImageByEmail;
51
43
  private fetchSlottedImage;
52
44
  private slotChanged;
@@ -1,28 +1,31 @@
1
+ import { Variant } from './variants';
1
2
  /**
2
- * @slot default - Slot for placing the text inside the breadcrumb item.
3
+ * @slot default - The content displayed inside the breadcrumb item.
3
4
  */
4
5
  export declare class PostBreadcrumbItem {
5
6
  host: HTMLPostBreadcrumbItemElement;
6
7
  /**
7
- * The optional URL to which the breadcrumb item will link.
8
+ * The destination URL for the breadcrumb item. If omitted, the item is rendered as non-interactive text.
8
9
  */
9
10
  url?: string | URL;
10
11
  /**
11
- * ARIA label, screen readers will use this instead of the breadcrumb item content.
12
+ * An accessible label screen readers will use this instead of the breadcrumb item content.
12
13
  */
13
14
  label?: string;
14
15
  /**
15
- * ARIA description for additional context, read after the breadcrumb item content or `label`.
16
+ * An accessible description for additional context, read after the content or `label`.
16
17
  */
17
18
  description?: string;
18
- private validUrl?;
19
+ validateURL(): void;
19
20
  /**
20
- * The full path URL to validate.
21
+ * Controls how the item is rendered, either as a standard list item or within an overflow menu.
21
22
  */
22
- fullUrl: string | undefined;
23
- validateUrl(): void;
24
- private constructUrl;
25
- connectedCallback(): void;
26
- private handleKeyDown;
23
+ variant: Variant;
24
+ validateVariant(): void;
25
+ /**
26
+ * Indicates that the item represents the current page, applying appropriate styling.
27
+ */
28
+ selected: boolean;
29
+ validateSelected(): void;
27
30
  render(): any;
28
31
  }
@@ -0,0 +1,2 @@
1
+ export declare const VARIANTS: readonly ["listitem", "menuitem"];
2
+ export type Variant = (typeof VARIANTS)[number];
@@ -1,44 +1,42 @@
1
- type BreadcrumbItem = {
2
- url: string | undefined;
3
- text: string;
4
- description: string | undefined;
5
- label: string | undefined;
6
- };
7
1
  export declare class PostBreadcrumbs {
2
+ private mutationObserver;
3
+ private resizeObserver;
8
4
  host: HTMLPostBreadcrumbsElement;
5
+ shouldRenderMenu: boolean;
6
+ id: string;
9
7
  /**
10
- * The URL for the home breadcrumb item.
8
+ * The URL for the root (home) breadcrumb item.
11
9
  */
12
10
  homeUrl: string;
11
+ validateHomeUrl(): void;
13
12
  /**
14
- * The text label for the home breadcrumb item.
13
+ * An accessible label for the root (home) breadcrumb item.
15
14
  */
16
15
  textHome: string;
16
+ validateTextHome(): void;
17
17
  /**
18
- * The accessible label for the breadcrumb component.
18
+ * An accessible label for the breadcrumb navigation.
19
19
  */
20
20
  textBreadcrumbs: string;
21
+ validateTextBreadcrumbs(): void;
21
22
  /**
22
- * The accessible label for the breadcrumb menu when breadcrumb items are concatenated.
23
+ * An accessible label for the overflow menu that contains collapsed breadcrumb items.
23
24
  */
24
25
  textMoreItems: string;
25
- breadcrumbItems: BreadcrumbItem[];
26
- isConcatenated: boolean;
27
- lastWindowWidth: number;
28
- private breadcrumbsNavRef?;
29
- private lastItem;
30
- validateHomeUrl(): void;
31
- validateTextHome(): void;
32
- validateTextBreadcrumbs(): void;
33
26
  validateTextMoreItems(): void;
27
+ componentWillLoad(): void;
34
28
  componentDidLoad(): void;
35
29
  disconnectedCallback(): void;
36
- private waitForBreadcrumbsRef;
37
- private updateBreadcrumbItems;
38
- private handleResize;
39
- private getParentWidth;
40
- private checkConcatenation;
41
- private handleBreadcrumbItemClick;
30
+ private createMutationObserver;
31
+ private createResizeObserver;
32
+ /**
33
+ * To measure overflow, we duplicate the entire breadcrumb so an inline version is always available.
34
+ */
35
+ private duplicateNavElement;
36
+ private duplicateSlottedElements;
37
+ private checkOverflow;
38
+ private prepareBreadcrumbItemsForClone;
39
+ private updateBreadcrumbItemProps;
40
+ private renderMenu;
42
41
  render(): any;
43
42
  }
44
- export {};
@@ -1,9 +1,10 @@
1
1
  import { EventEmitter } from '../../stencil-public-runtime';
2
2
  /**
3
- * @slot authenticated - Content rendered when the user is authenticated (e.g. user menu).
4
- * @slot unauthenticated - Content rendered when the user is not authenticated (e.g. login link).
3
+ * @slot user-links - Links to show in the user menu when the user is authenticated.
4
+ * @slot login-link - Content rendered when the user is not authenticated.
5
5
  */
6
6
  export declare class PostLoginWidget {
7
+ host: HTMLPostLoginWidgetElement;
7
8
  /**
8
9
  * Emitted when the authentication state changes.
9
10
  * The event payload is an object with an `authenticated` property:
@@ -12,7 +13,25 @@ export declare class PostLoginWidget {
12
13
  postChange: EventEmitter<{
13
14
  authenticated: boolean;
14
15
  }>;
16
+ /**
17
+ * Label for the "Current user is {user}" accessibility description.
18
+ * Use `{user}` as a placeholder — it will be replaced with the current user's name at runtime.
19
+ */
20
+ textCurrentUser: string;
21
+ validateTextCurrentUser(): void;
22
+ /**
23
+ * Accessible label for the dropdown menu
24
+ */
25
+ textUserMenu: string;
26
+ validateTextUserMenu(): void;
27
+ /**
28
+ * Hidden label for the user menu trigger button, for accessibility purposes. It should describe the purpose of the button (e.g. "Access user links").
29
+ */
30
+ textUserMenuTrigger: string;
31
+ validateTextUserMenuTrigger(): void;
15
32
  private authenticated;
33
+ private user;
34
+ componentDidLoad(): void;
16
35
  componentWillLoad(): Promise<void>;
17
36
  /**
18
37
  * Returns the current authentication state:
@@ -1,5 +1,5 @@
1
1
  import { EventEmitter } from '../../stencil-public-runtime';
2
- import { Placement } from '@floating-ui/dom';
2
+ import type { Placement } from '@floating-ui/dom';
3
3
  /**
4
4
  * @part post-menu - The container element that holds the list of menu items.
5
5
  * @slot header - Holds the header part of the menu.
@@ -1,4 +1,4 @@
1
- import { Placement } from '@floating-ui/dom';
1
+ import type { Placement } from '@floating-ui/dom';
2
2
  /**
3
3
  * @slot default - Slot for placing content inside the popover.
4
4
  */
@@ -1,4 +1,4 @@
1
- import { Placement } from '@floating-ui/dom';
1
+ import type { Placement } from '@floating-ui/dom';
2
2
  export declare class PostTooltip {
3
3
  private popoverRef;
4
4
  host: HTMLPostTooltipElement;
@@ -27,6 +27,7 @@ export declare class PostTooltipTrigger {
27
27
  constructor();
28
28
  validateControlFor(): void;
29
29
  private get tooltip();
30
+ componentWillLoad(): void;
30
31
  componentDidLoad(): void;
31
32
  disconnectedCallback(): void;
32
33
  private handleSlotChange;
@@ -7,6 +7,7 @@
7
7
  import { HTMLStencilElement, JSXBase } from "./stencil-public-runtime";
8
8
  import { HeadingLevel } from "./types/index";
9
9
  import { BannerType } from "./components/post-banner/banner-types";
10
+ import { Variant } from "./components/post-breadcrumb-item/variants";
10
11
  import { ButtonType, Placement, Size } from "./components/post-closebutton/types";
11
12
  import { AirDatepickerCustomOptions } from "./components/post-date-picker/post-date-picker";
12
13
  import { PostIconAnimation } from "./types/icon-animations";
@@ -14,6 +15,7 @@ import { SwitchVariant } from "./components/post-language-menu/switch-variants";
14
15
  import { Placement as Placement1 } from "@floating-ui/dom";
15
16
  export { HeadingLevel } from "./types/index";
16
17
  export { BannerType } from "./components/post-banner/banner-types";
18
+ export { Variant } from "./components/post-breadcrumb-item/variants";
17
19
  export { ButtonType, Placement, Size } from "./components/post-closebutton/types";
18
20
  export { AirDatepickerCustomOptions } from "./components/post-date-picker/post-date-picker";
19
21
  export { PostIconAnimation } from "./types/icon-animations";
@@ -96,10 +98,6 @@ export namespace Components {
96
98
  * Defines the users lastname.
97
99
  */
98
100
  "lastname"?: string;
99
- /**
100
- * Defines the company internal userId.<post-banner type="warning" data-size="sm"><p>Can only be used on post.ch domains!</p></post-banner>
101
- */
102
- "userid"?: string;
103
101
  }
104
102
  interface PostBackToTop {
105
103
  /**
@@ -120,33 +118,43 @@ export namespace Components {
120
118
  }
121
119
  interface PostBreadcrumbItem {
122
120
  /**
123
- * ARIA description for additional context, read after the breadcrumb item content or `label`.
121
+ * An accessible description for additional context, read after the content or `label`.
124
122
  */
125
123
  "description"?: string;
126
124
  /**
127
- * ARIA label, screen readers will use this instead of the breadcrumb item content.
125
+ * An accessible label screen readers will use this instead of the breadcrumb item content.
128
126
  */
129
127
  "label"?: string;
130
128
  /**
131
- * The optional URL to which the breadcrumb item will link.
129
+ * Indicates that the item represents the current page, applying appropriate styling.
130
+ * @default false
131
+ */
132
+ "selected": boolean;
133
+ /**
134
+ * The destination URL for the breadcrumb item. If omitted, the item is rendered as non-interactive text.
132
135
  */
133
136
  "url"?: string | URL;
137
+ /**
138
+ * Controls how the item is rendered, either as a standard list item or within an overflow menu.
139
+ * @default 'listitem'
140
+ */
141
+ "variant": Variant;
134
142
  }
135
143
  interface PostBreadcrumbs {
136
144
  /**
137
- * The URL for the home breadcrumb item.
145
+ * The URL for the root (home) breadcrumb item.
138
146
  */
139
147
  "homeUrl": string;
140
148
  /**
141
- * The accessible label for the breadcrumb component.
149
+ * An accessible label for the breadcrumb navigation.
142
150
  */
143
151
  "textBreadcrumbs": string;
144
152
  /**
145
- * The text label for the home breadcrumb item.
153
+ * An accessible label for the root (home) breadcrumb item.
146
154
  */
147
155
  "textHome": string;
148
156
  /**
149
- * The accessible label for the breadcrumb menu when breadcrumb items are concatenated.
157
+ * An accessible label for the overflow menu that contains collapsed breadcrumb items.
150
158
  */
151
159
  "textMoreItems": string;
152
160
  }
@@ -423,6 +431,18 @@ export namespace Components {
423
431
  * Re-fetches the authentication state from the session API and updates the component rendering accordingly.
424
432
  */
425
433
  "refresh": () => Promise<void>;
434
+ /**
435
+ * Label for the "Current user is {user}" accessibility description. Use `{user}` as a placeholder — it will be replaced with the current user's name at runtime.
436
+ */
437
+ "textCurrentUser": string;
438
+ /**
439
+ * Accessible label for the dropdown menu
440
+ */
441
+ "textUserMenu": string;
442
+ /**
443
+ * Hidden label for the user menu trigger button, for accessibility purposes. It should describe the purpose of the button (e.g. "Access user links").
444
+ */
445
+ "textUserMenuTrigger": string;
426
446
  }
427
447
  interface PostLogo {
428
448
  /**
@@ -1334,10 +1354,6 @@ declare namespace LocalJSX {
1334
1354
  * Defines the users lastname.
1335
1355
  */
1336
1356
  "lastname"?: string;
1337
- /**
1338
- * Defines the company internal userId.<post-banner type="warning" data-size="sm"><p>Can only be used on post.ch domains!</p></post-banner>
1339
- */
1340
- "userid"?: string;
1341
1357
  }
1342
1358
  interface PostBackToTop {
1343
1359
  /**
@@ -1358,33 +1374,43 @@ declare namespace LocalJSX {
1358
1374
  }
1359
1375
  interface PostBreadcrumbItem {
1360
1376
  /**
1361
- * ARIA description for additional context, read after the breadcrumb item content or `label`.
1377
+ * An accessible description for additional context, read after the content or `label`.
1362
1378
  */
1363
1379
  "description"?: string;
1364
1380
  /**
1365
- * ARIA label, screen readers will use this instead of the breadcrumb item content.
1381
+ * An accessible label screen readers will use this instead of the breadcrumb item content.
1366
1382
  */
1367
1383
  "label"?: string;
1368
1384
  /**
1369
- * The optional URL to which the breadcrumb item will link.
1385
+ * Indicates that the item represents the current page, applying appropriate styling.
1386
+ * @default false
1387
+ */
1388
+ "selected"?: boolean;
1389
+ /**
1390
+ * The destination URL for the breadcrumb item. If omitted, the item is rendered as non-interactive text.
1370
1391
  */
1371
1392
  "url"?: string | URL;
1393
+ /**
1394
+ * Controls how the item is rendered, either as a standard list item or within an overflow menu.
1395
+ * @default 'listitem'
1396
+ */
1397
+ "variant"?: Variant;
1372
1398
  }
1373
1399
  interface PostBreadcrumbs {
1374
1400
  /**
1375
- * The URL for the home breadcrumb item.
1401
+ * The URL for the root (home) breadcrumb item.
1376
1402
  */
1377
1403
  "homeUrl": string;
1378
1404
  /**
1379
- * The accessible label for the breadcrumb component.
1405
+ * An accessible label for the breadcrumb navigation.
1380
1406
  */
1381
1407
  "textBreadcrumbs": string;
1382
1408
  /**
1383
- * The text label for the home breadcrumb item.
1409
+ * An accessible label for the root (home) breadcrumb item.
1384
1410
  */
1385
1411
  "textHome": string;
1386
1412
  /**
1387
- * The accessible label for the breadcrumb menu when breadcrumb items are concatenated.
1413
+ * An accessible label for the overflow menu that contains collapsed breadcrumb items.
1388
1414
  */
1389
1415
  "textMoreItems": string;
1390
1416
  }
@@ -1633,6 +1659,18 @@ declare namespace LocalJSX {
1633
1659
  * Emitted when the authentication state changes. The event payload is an object with an `authenticated` property: `true` when the user is logged in, `false` when the user is not logged in or the API request failed.
1634
1660
  */
1635
1661
  "onPostChange"?: (event: PostLoginWidgetCustomEvent<{ authenticated: boolean }>) => void;
1662
+ /**
1663
+ * Label for the "Current user is {user}" accessibility description. Use `{user}` as a placeholder — it will be replaced with the current user's name at runtime.
1664
+ */
1665
+ "textCurrentUser": string;
1666
+ /**
1667
+ * Accessible label for the dropdown menu
1668
+ */
1669
+ "textUserMenu": string;
1670
+ /**
1671
+ * Hidden label for the user menu trigger button, for accessibility purposes. It should describe the purpose of the button (e.g. "Access user links").
1672
+ */
1673
+ "textUserMenuTrigger": string;
1636
1674
  }
1637
1675
  interface PostLogo {
1638
1676
  /**
@@ -1943,7 +1981,6 @@ declare namespace LocalJSX {
1943
1981
  interface PostAvatarAttributes {
1944
1982
  "firstname": string;
1945
1983
  "lastname": string;
1946
- "userid": string;
1947
1984
  "email": string;
1948
1985
  "description": string;
1949
1986
  }
@@ -1957,6 +1994,8 @@ declare namespace LocalJSX {
1957
1994
  "url": string | URL;
1958
1995
  "label": string;
1959
1996
  "description": string;
1997
+ "variant": Variant;
1998
+ "selected": boolean;
1960
1999
  }
1961
2000
  interface PostBreadcrumbsAttributes {
1962
2001
  "homeUrl": string;
@@ -2027,6 +2066,11 @@ declare namespace LocalJSX {
2027
2066
  "selected": boolean;
2028
2067
  "highlighted": boolean;
2029
2068
  }
2069
+ interface PostLoginWidgetAttributes {
2070
+ "textCurrentUser": string;
2071
+ "textUserMenu": string;
2072
+ "textUserMenuTrigger": string;
2073
+ }
2030
2074
  interface PostLogoAttributes {
2031
2075
  "url": string | URL;
2032
2076
  }
@@ -2132,7 +2176,7 @@ declare namespace LocalJSX {
2132
2176
  "post-linkarea": PostLinkarea;
2133
2177
  "post-listbox": PostListbox;
2134
2178
  "post-listbox-option": Omit<PostListboxOption, keyof PostListboxOptionAttributes> & { [K in keyof PostListboxOption & keyof PostListboxOptionAttributes]?: PostListboxOption[K] } & { [K in keyof PostListboxOption & keyof PostListboxOptionAttributes as `attr:${K}`]?: PostListboxOptionAttributes[K] } & { [K in keyof PostListboxOption & keyof PostListboxOptionAttributes as `prop:${K}`]?: PostListboxOption[K] } & OneOf<"value", PostListboxOption["value"], PostListboxOptionAttributes["value"]>;
2135
- "post-login-widget": PostLoginWidget;
2179
+ "post-login-widget": Omit<PostLoginWidget, keyof PostLoginWidgetAttributes> & { [K in keyof PostLoginWidget & keyof PostLoginWidgetAttributes]?: PostLoginWidget[K] } & { [K in keyof PostLoginWidget & keyof PostLoginWidgetAttributes as `attr:${K}`]?: PostLoginWidgetAttributes[K] } & { [K in keyof PostLoginWidget & keyof PostLoginWidgetAttributes as `prop:${K}`]?: PostLoginWidget[K] } & OneOf<"textCurrentUser", PostLoginWidget["textCurrentUser"], PostLoginWidgetAttributes["textCurrentUser"]> & OneOf<"textUserMenu", PostLoginWidget["textUserMenu"], PostLoginWidgetAttributes["textUserMenu"]> & OneOf<"textUserMenuTrigger", PostLoginWidget["textUserMenuTrigger"], PostLoginWidgetAttributes["textUserMenuTrigger"]>;
2136
2180
  "post-logo": Omit<PostLogo, keyof PostLogoAttributes> & { [K in keyof PostLogo & keyof PostLogoAttributes]?: PostLogo[K] } & { [K in keyof PostLogo & keyof PostLogoAttributes as `attr:${K}`]?: PostLogoAttributes[K] } & { [K in keyof PostLogo & keyof PostLogoAttributes as `prop:${K}`]?: PostLogo[K] };
2137
2181
  "post-mainnavigation": Omit<PostMainnavigation, keyof PostMainnavigationAttributes> & { [K in keyof PostMainnavigation & keyof PostMainnavigationAttributes]?: PostMainnavigation[K] } & { [K in keyof PostMainnavigation & keyof PostMainnavigationAttributes as `attr:${K}`]?: PostMainnavigationAttributes[K] } & { [K in keyof PostMainnavigation & keyof PostMainnavigationAttributes as `prop:${K}`]?: PostMainnavigation[K] } & OneOf<"textMain", PostMainnavigation["textMain"], PostMainnavigationAttributes["textMain"]>;
2138
2182
  "post-megadropdown": Omit<PostMegadropdown, keyof PostMegadropdownAttributes> & { [K in keyof PostMegadropdown & keyof PostMegadropdownAttributes]?: PostMegadropdown[K] } & { [K in keyof PostMegadropdown & keyof PostMegadropdownAttributes as `attr:${K}`]?: PostMegadropdownAttributes[K] } & { [K in keyof PostMegadropdown & keyof PostMegadropdownAttributes as `prop:${K}`]?: PostMegadropdown[K] } & OneOf<"textClose", PostMegadropdown["textClose"], PostMegadropdownAttributes["textClose"]> & OneOf<"textBack", PostMegadropdown["textBack"], PostMegadropdownAttributes["textBack"]>;
@@ -0,0 +1,2 @@
1
+ declare module 'ally.js/is/focusable';
2
+ declare module 'long-press-event';
@@ -1,4 +1,5 @@
1
1
  export * from './property-checkers';
2
+ export * from './property-decorators';
2
3
  export * from './attribute-observer';
3
4
  export * from './breakpoints';
4
5
  export * from './component-on-ready';
@@ -14,3 +15,4 @@ export * from './sass-export';
14
15
  export * from './timeout';
15
16
  export * from './is-iso-date';
16
17
  export * from './locales';
18
+ export * from './nanoid';
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Initially copy'n'pasted from https://github.com/ai/nanoid/blob/main/non-secure/index.js, then adopted to our needs.
3
+ *
4
+ * Our custom implementation generates unique IDs for DOM elements efficiently without requiring cryptographic security (as nanoid).
5
+ * It eliminates the nanoid package dependency (as well as the transistive `node:crypto` dependency in node environments), meeting all our requirements.
6
+ * This approach optimizes performance and minimizes the codebase footprint.
7
+ */
8
+ export declare function nanoid(size?: number): string;
@@ -0,0 +1,9 @@
1
+ import { PrimitiveType } from "../../types/property-types";
2
+ /**
3
+ * Property decorator that validates the property value is an array of the specified type.
4
+ *
5
+ * Validation runs on `componentDidLoad` and whenever the property value changes.
6
+ *
7
+ * @param type - The expected type of each array element ('boolean', 'number', 'string').
8
+ */
9
+ export declare function ArrayOf(type: PrimitiveType): (target: object, property: string) => void;
@@ -0,0 +1,43 @@
1
+ /**
2
+ * Describes a property validator used by decorators created with
3
+ * {@link createValidatorDecorator}.
4
+ */
5
+ interface Validator {
6
+ /** Lower values run first. */
7
+ priority: number;
8
+ /** Stops execution of subsequent validators for the same property when validation fails. */
9
+ blocking: boolean;
10
+ /** Runs validation even when the property value is considered empty. */
11
+ validateEmptyValues?: boolean;
12
+ /** Executes the validation logic for the given component property. */
13
+ run: (component: object, property: string) => boolean;
14
+ }
15
+ /**
16
+ * Creates a property decorator that registers a validator for a component property.
17
+ *
18
+ * The returned decorator ensures property access is intercepted, initial-load
19
+ * validation is enabled, and the provided validator is stored for execution.
20
+ *
21
+ * @param validator Validator definition to register.
22
+ * @returns Property decorator compatible with TypeScript decorator syntax.
23
+ */
24
+ export declare function createValidatorDecorator(validator: Validator): (target: object, property: string) => void;
25
+ /**
26
+ * Builds a validation context for a decorated component property.
27
+ *
28
+ * The returned context includes:
29
+ * - `value`: current property value.
30
+ * - `showError(constraint)`: helper that logs a consistent error format and includes
31
+ * the host element for easier debugging in browser consoles.
32
+ *
33
+ * Message format: `[componentName] Property "property" <constraint>. Received: <value>.`
34
+ *
35
+ * @param component Component instance containing the validated property.
36
+ * @param property Property name being validated.
37
+ * @returns Validation context used by individual validator implementations.
38
+ */
39
+ export declare function getValidationContext(component: object, property: string): {
40
+ value: unknown;
41
+ showError: (constraint: string) => void;
42
+ };
43
+ export {};
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Property decorator that validates the property value is a valid date string.
3
+ *
4
+ * Validation runs on `componentDidLoad` and whenever the property value changes.
5
+ */
6
+ export declare function DateValue(): (target: object, property: string) => void;
@@ -0,0 +1,9 @@
1
+ export { ArrayOf } from './array-of';
2
+ export { createValidatorDecorator, getValidationContext } from './create-validator-decorator';
3
+ export { DateValue } from './date';
4
+ export { IsoDate } from './iso-date';
5
+ export { OneOf } from './one-of';
6
+ export { Pattern } from './pattern';
7
+ export { Required } from './required';
8
+ export { Type } from './type';
9
+ export { Url } from './url';
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Property decorator that validates the property value is a date in ISO 8601 format (YYYY-MM-DD).
3
+ *
4
+ * Validation runs on `componentDidLoad` and whenever the property value changes.
5
+ */
6
+ export declare function IsoDate(): (target: object, property: string) => void;
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Property decorator that validates the property value is one of the allowed values.
3
+ *
4
+ * Validation runs on `componentDidLoad` and whenever the property value changes.
5
+ *
6
+ * @param possibleValues - The array of allowed values for the property.
7
+ */
8
+ export declare function OneOf(possibleValues: readonly unknown[]): (target: object, property: string) => void;
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Property decorator that validates the property value matches a regular expression.
3
+ *
4
+ * Validation runs on `componentDidLoad` and whenever the property value changes.
5
+ *
6
+ * @param pattern - The regex pattern the property value must match.
7
+ */
8
+ export declare function Pattern(pattern: RegExp): (target: object, property: string) => void;
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Property decorator that validates the property is not empty.
3
+ * If the property is empty (undefined, null, '', NaN), an error is logged.
4
+ * This validator is blocking: if it fails, subsequent validators will not run.
5
+ *
6
+ * Validation runs on `componentDidLoad` and whenever the property value changes.
7
+ */
8
+ export declare function Required(): (target: object, property: string) => void;
@@ -0,0 +1,9 @@
1
+ import { PropertyType } from "../../types/property-types";
2
+ /**
3
+ * Property decorator that validates the property value is of the specified type.
4
+ *
5
+ * Validation runs on `componentDidLoad` and whenever the property value changes.
6
+ *
7
+ * @param type - The expected type ('boolean', 'number', 'string', 'array', 'object', 'function').
8
+ */
9
+ export declare function Type(type: PropertyType): (target: object, property: string) => void;
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Property decorator that validates the property value is a valid URL.
3
+ *
4
+ * Validation runs on `componentDidLoad` and whenever the property value changes.
5
+ */
6
+ export declare function Url(): (target: object, property: string) => void;