@swisspost/design-system-components 10.0.0-next.69 → 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 (342) 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-CzSn3NmD.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 +6 -6
  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.css +1 -1
  50. package/dist/collection/components/post-footer/post-footer.js +2 -1
  51. package/dist/collection/components/post-header/post-header.js +4 -4
  52. package/dist/collection/components/post-icon/post-icon.js +3 -2
  53. package/dist/collection/components/post-language-menu/post-language-menu.js +2 -3
  54. package/dist/collection/components/post-linkarea/post-linkarea.js +1 -1
  55. package/dist/collection/components/post-listbox/post-listbox.js +1 -1
  56. package/dist/collection/components/post-listbox-option/post-listbox-option.js +2 -2
  57. package/dist/collection/components/post-login-widget/post-login-widget.css +1 -0
  58. package/dist/collection/components/post-login-widget/post-login-widget.js +106 -4
  59. package/dist/collection/components/post-logo/post-logo.js +1 -1
  60. package/dist/collection/components/post-mainnavigation/post-mainnavigation.js +1 -1
  61. package/dist/collection/components/post-megadropdown/post-megadropdown.js +1 -1
  62. package/dist/collection/components/post-megadropdown-trigger/post-megadropdown-trigger.js +1 -1
  63. package/dist/collection/components/post-menu/post-menu.js +5 -2
  64. package/dist/collection/components/post-menu-item/post-menu-item.css +1 -1
  65. package/dist/collection/components/post-menu-trigger/post-menu-trigger.js +1 -1
  66. package/dist/collection/components/post-number-input/post-number-input.js +2 -2
  67. package/dist/collection/components/post-pagination/post-pagination.js +1 -2
  68. package/dist/collection/components/post-popover/post-popover.js +1 -1
  69. package/dist/collection/components/post-popover-trigger/post-popover-trigger.js +1 -1
  70. package/dist/collection/components/post-popovercontainer/post-popovercontainer.css +1 -1
  71. package/dist/collection/components/post-popovercontainer/post-popovercontainer.js +5 -6
  72. package/dist/collection/components/post-rating/post-rating.js +1 -1
  73. package/dist/collection/components/post-stepper/post-stepper.js +1 -1
  74. package/dist/collection/components/post-stepper-item/post-stepper-item.js +1 -1
  75. package/dist/collection/components/post-tab-item/post-tab-item.js +2 -3
  76. package/dist/collection/components/post-tab-panel/post-tab-panel.js +2 -3
  77. package/dist/collection/components/post-tabs/post-tabs.js +2 -2
  78. package/dist/collection/components/post-togglebutton/post-togglebutton.js +1 -1
  79. package/dist/collection/components/post-tooltip/post-tooltip.js +1 -1
  80. package/dist/collection/components/post-tooltip-trigger/post-tooltip-trigger.js +15 -9
  81. package/dist/collection/hydrate-stub/index.stub.js +5 -0
  82. package/dist/collection/test-setup.js +7 -0
  83. package/dist/collection/utils/index.js +2 -0
  84. package/dist/collection/utils/locales.js +9 -2
  85. package/dist/collection/utils/nanoid.js +16 -0
  86. package/dist/collection/utils/property-decorators/array-of.js +22 -0
  87. package/dist/collection/utils/property-decorators/create-validator-decorator.js +187 -0
  88. package/dist/collection/utils/property-decorators/date.js +21 -0
  89. package/dist/collection/utils/property-decorators/index.js +9 -0
  90. package/dist/collection/utils/property-decorators/iso-date.js +21 -0
  91. package/dist/collection/utils/property-decorators/one-of.js +22 -0
  92. package/dist/collection/utils/property-decorators/pattern.js +22 -0
  93. package/dist/collection/utils/property-decorators/required.js +24 -0
  94. package/dist/collection/utils/property-decorators/type.js +25 -0
  95. package/dist/collection/utils/property-decorators/url.js +29 -0
  96. package/dist/components/breakpoints.js +1 -0
  97. package/dist/components/component-on-ready.js +1 -0
  98. package/dist/components/focusable.js +1 -1
  99. package/dist/components/index2.js +1 -1
  100. package/dist/components/nanoid.js +1 -0
  101. package/dist/components/package.js +1 -1
  102. package/dist/components/post-accordion-item2.js +1 -1
  103. package/dist/components/post-accordion2.js +1 -1
  104. package/dist/components/post-autocomplete.js +1 -1
  105. package/dist/components/post-avatar.js +1 -1
  106. package/dist/components/post-avatar2.js +1 -0
  107. package/dist/components/post-back-to-top.js +1 -1
  108. package/dist/components/post-banner.js +1 -1
  109. package/dist/components/post-breadcrumb-item.js +1 -1
  110. package/dist/components/post-breadcrumbs.js +1 -1
  111. package/dist/components/post-closebutton2.js +1 -1
  112. package/dist/components/post-collapsible-trigger2.js +1 -1
  113. package/dist/components/post-collapsible2.js +1 -1
  114. package/dist/components/post-date-picker.js +1 -1
  115. package/dist/components/post-footer.js +1 -1
  116. package/dist/components/post-header.js +1 -1
  117. package/dist/components/post-icon2.js +1 -1
  118. package/dist/components/post-language-menu-item.js +1 -1
  119. package/dist/components/post-language-menu.js +1 -1
  120. package/dist/components/post-linkarea.js +1 -1
  121. package/dist/components/post-listbox-option.js +1 -1
  122. package/dist/components/post-listbox.js +1 -1
  123. package/dist/components/post-login-widget.js +1 -1
  124. package/dist/components/post-logo.js +1 -1
  125. package/dist/components/post-mainnavigation.js +1 -1
  126. package/dist/components/post-megadropdown-trigger.js +1 -1
  127. package/dist/components/post-megadropdown.js +1 -1
  128. package/dist/components/post-menu-item2.js +1 -1
  129. package/dist/components/post-menu-trigger2.js +1 -1
  130. package/dist/components/post-menu2.js +1 -1
  131. package/dist/components/post-number-input.js +1 -1
  132. package/dist/components/post-pagination.js +1 -1
  133. package/dist/components/post-popover-trigger.js +1 -1
  134. package/dist/components/post-popover.js +1 -1
  135. package/dist/components/post-popovercontainer2.js +1 -1
  136. package/dist/components/post-rating.js +1 -1
  137. package/dist/components/post-stepper-item.js +1 -1
  138. package/dist/components/post-stepper.js +1 -1
  139. package/dist/components/post-tab-item.js +1 -1
  140. package/dist/components/post-tab-panel.js +1 -1
  141. package/dist/components/post-tabs.js +1 -1
  142. package/dist/components/post-togglebutton2.js +1 -1
  143. package/dist/components/post-tooltip-trigger.js +1 -1
  144. package/dist/components/post-tooltip.js +1 -1
  145. package/dist/components/react/index.js +1 -1
  146. package/dist/components/react/p-8LXe8Zt_.js +1 -0
  147. package/dist/components/react/p-BC0-M_SK.js +1 -0
  148. package/dist/components/react/p-BQ3HlJPr.js +1 -0
  149. package/dist/components/react/p-BrY4VWTQ.js +1 -0
  150. package/dist/components/react/p-C7s9oglQ.js +1 -0
  151. package/dist/components/react/{p-Bj33xnuq.js → p-CTgZ8DGr.js} +1 -1
  152. package/dist/components/react/{p-DwJ5SwpN.js → p-CVtlwDsT.js} +1 -1
  153. package/dist/components/react/p-CaLwTf3T.js +1 -0
  154. package/dist/components/react/p-ClJyTIVM.js +1 -0
  155. package/dist/components/react/{p-B2BDAeHI.js → p-DGr-hfLq.js} +1 -1
  156. package/dist/components/react/{p-BYfHrHCb.js → p-DJxdj9pa.js} +1 -1
  157. package/dist/components/react/p-DKDEtjQe.js +1 -0
  158. package/dist/components/react/p-DPKR_4uI.js +1 -0
  159. package/dist/components/react/p-DcEDGaFs.js +1 -0
  160. package/dist/components/react/{p-DRtzK3cr.js → p-DipfA69b.js} +1 -1
  161. package/dist/components/react/{p-BbOp03Tv.js → p-DwZxAC2u.js} +1 -1
  162. package/dist/components/react/p-lpWRZjJp.js +1 -0
  163. package/dist/components/react/p-x3kxyWSZ.js +1 -0
  164. package/dist/components/react/post-accordion-item.js +1 -1
  165. package/dist/components/react/post-accordion.js +1 -1
  166. package/dist/components/react/post-autocomplete.js +1 -1
  167. package/dist/components/react/post-avatar.js +1 -1
  168. package/dist/components/react/post-back-to-top.js +1 -1
  169. package/dist/components/react/post-banner.js +1 -1
  170. package/dist/components/react/post-breadcrumb-item.js +1 -1
  171. package/dist/components/react/post-breadcrumbs.js +1 -1
  172. package/dist/components/react/post-closebutton.js +1 -1
  173. package/dist/components/react/post-collapsible-trigger.js +1 -1
  174. package/dist/components/react/post-collapsible.js +1 -1
  175. package/dist/components/react/post-date-picker.js +1 -1
  176. package/dist/components/react/post-footer.js +1 -1
  177. package/dist/components/react/post-header.js +1 -1
  178. package/dist/components/react/post-icon.js +1 -1
  179. package/dist/components/react/post-language-menu-item.js +1 -1
  180. package/dist/components/react/post-language-menu.js +1 -1
  181. package/dist/components/react/post-linkarea.js +1 -1
  182. package/dist/components/react/post-listbox-option.js +1 -1
  183. package/dist/components/react/post-listbox.js +1 -1
  184. package/dist/components/react/post-login-widget.js +1 -1
  185. package/dist/components/react/post-logo.js +1 -1
  186. package/dist/components/react/post-mainnavigation.js +1 -1
  187. package/dist/components/react/post-megadropdown-trigger.js +1 -1
  188. package/dist/components/react/post-megadropdown.js +1 -1
  189. package/dist/components/react/post-menu-item.js +1 -1
  190. package/dist/components/react/post-menu-trigger.js +1 -1
  191. package/dist/components/react/post-menu.js +1 -1
  192. package/dist/components/react/post-number-input.js +1 -1
  193. package/dist/components/react/post-pagination.js +1 -1
  194. package/dist/components/react/post-popover-trigger.js +1 -1
  195. package/dist/components/react/post-popover.js +1 -1
  196. package/dist/components/react/post-popovercontainer.js +1 -1
  197. package/dist/components/react/post-rating.js +1 -1
  198. package/dist/components/react/post-stepper-item.js +1 -1
  199. package/dist/components/react/post-stepper.js +1 -1
  200. package/dist/components/react/post-tab-item.js +1 -1
  201. package/dist/components/react/post-tab-panel.js +1 -1
  202. package/dist/components/react/post-tabs.js +1 -1
  203. package/dist/components/react/post-togglebutton.js +1 -1
  204. package/dist/components/react/post-tooltip-trigger.js +1 -1
  205. package/dist/components/react/post-tooltip.js +1 -1
  206. package/dist/docs.json +210 -69
  207. package/dist/esm/breakpoints-BQ3HlJPr.js +202 -0
  208. package/dist/esm/component-on-ready-lpWRZjJp.js +22 -0
  209. package/dist/esm/{focusable-BD_WT2MO.js → focusable-C7afHKmo.js} +25 -5
  210. package/dist/esm/{index-DmAi35UF.js → index-DmBWUef5.js} +13 -13
  211. package/dist/esm/loader.js +3 -3
  212. package/dist/esm/nanoid-8LXe8Zt_.js +18 -0
  213. package/dist/esm/package-x3kxyWSZ.js +3 -0
  214. package/dist/esm/post-accordion_2.entry.js +6 -6
  215. package/dist/esm/post-autocomplete.entry.js +3 -3
  216. package/dist/esm/post-avatar.entry.js +6 -24
  217. package/dist/esm/post-back-to-top.entry.js +3 -3
  218. package/dist/esm/post-banner.entry.js +3 -3
  219. package/dist/esm/post-breadcrumb-item.entry.js +31 -34
  220. package/dist/esm/post-breadcrumbs.entry.js +82 -80
  221. package/dist/esm/post-closebutton_14.entry.js +31 -28
  222. package/dist/esm/post-collapsible_2.entry.js +5 -5
  223. package/dist/esm/post-components.js +3 -3
  224. package/dist/esm/post-date-picker.entry.js +15 -7
  225. package/dist/esm/post-footer.entry.js +5 -5
  226. package/dist/esm/post-linkarea.entry.js +3 -3
  227. package/dist/esm/post-listbox-option.entry.js +4 -4
  228. package/dist/esm/post-listbox.entry.js +4 -4
  229. package/dist/esm/post-login-widget.entry.js +36 -3
  230. package/dist/esm/post-number-input.entry.js +5 -5
  231. package/dist/esm/post-pagination.entry.js +4 -4
  232. package/dist/esm/post-popover-trigger.entry.js +5 -5
  233. package/dist/esm/post-popover.entry.js +4 -4
  234. package/dist/esm/post-rating.entry.js +4 -4
  235. package/dist/esm/post-stepper-item.entry.js +3 -3
  236. package/dist/esm/post-stepper.entry.js +4 -4
  237. package/dist/esm/post-tab-item.entry.js +5 -5
  238. package/dist/esm/post-tab-panel.entry.js +5 -5
  239. package/dist/esm/post-tabs.entry.js +6 -26
  240. package/dist/esm/post-tooltip-trigger.entry.js +16 -12
  241. package/dist/esm/post-tooltip.entry.js +4 -4
  242. package/dist/post-components/p-08a0e8e9.entry.js +1 -0
  243. package/dist/post-components/{p-9fab1847.entry.js → p-1583817b.entry.js} +1 -1
  244. package/dist/post-components/{p-6644e626.entry.js → p-203d9abd.entry.js} +1 -1
  245. package/dist/post-components/{p-5ade4255.entry.js → p-2c68af27.entry.js} +1 -1
  246. package/dist/post-components/{p-f88a161a.entry.js → p-39143e19.entry.js} +1 -1
  247. package/dist/post-components/p-46dd9e7e.entry.js +1 -0
  248. package/dist/post-components/{p-c95fcb40.entry.js → p-4b445a35.entry.js} +1 -1
  249. package/dist/post-components/p-53a8cce5.entry.js +1 -0
  250. package/dist/post-components/p-72bff1fc.entry.js +1 -0
  251. package/dist/post-components/{p-8b68164f.entry.js → p-75045028.entry.js} +1 -1
  252. package/dist/post-components/p-768b4516.entry.js +1 -0
  253. package/dist/post-components/{p-95df4d4e.entry.js → p-7e072450.entry.js} +1 -1
  254. package/dist/post-components/{p-0992cba9.entry.js → p-83cb6424.entry.js} +1 -1
  255. package/dist/post-components/p-8LXe8Zt_.js +1 -0
  256. package/dist/post-components/{p-d57462a3.entry.js → p-94f4da57.entry.js} +1 -1
  257. package/dist/post-components/{p-0c249c71.entry.js → p-9dace750.entry.js} +1 -1
  258. package/dist/post-components/{p-220d0eab.entry.js → p-9ea7e46f.entry.js} +1 -1
  259. package/dist/post-components/p-BQ3HlJPr.js +1 -0
  260. package/dist/post-components/p-BrY4VWTQ.js +1 -0
  261. package/dist/post-components/p-DmBWUef5.js +2 -0
  262. package/dist/post-components/{p-52f85cba.entry.js → p-a0ac814c.entry.js} +1 -1
  263. package/dist/post-components/p-a0d12ca8.entry.js +1 -0
  264. package/dist/post-components/{p-5664d5b5.entry.js → p-bab0f27f.entry.js} +1 -1
  265. package/dist/post-components/p-cb039d66.entry.js +1 -0
  266. package/dist/post-components/p-e8cda4e1.entry.js +1 -0
  267. package/dist/post-components/{p-500a3fc7.entry.js → p-e8e50d5c.entry.js} +1 -1
  268. package/dist/post-components/p-eb64ec1d.entry.js +1 -0
  269. package/dist/post-components/p-f0746a9e.entry.js +1 -0
  270. package/dist/post-components/p-f5e33714.entry.js +1 -0
  271. package/dist/post-components/{p-cca0cf23.entry.js → p-f93ce33d.entry.js} +1 -1
  272. package/dist/post-components/{p-272de102.entry.js → p-fd0446b2.entry.js} +1 -1
  273. package/dist/post-components/p-lpWRZjJp.js +1 -0
  274. package/dist/post-components/p-x3kxyWSZ.js +1 -0
  275. package/dist/post-components/post-components.css +1 -1
  276. package/dist/post-components/post-components.esm.js +1 -1
  277. package/dist/types/components/post-avatar/avatar-utils.d.ts +1 -1
  278. package/dist/types/components/post-avatar/post-avatar.d.ts +0 -8
  279. package/dist/types/components/post-breadcrumb-item/post-breadcrumb-item.d.ts +14 -11
  280. package/dist/types/components/post-breadcrumb-item/variants.d.ts +2 -0
  281. package/dist/types/components/post-breadcrumbs/post-breadcrumbs.d.ts +23 -25
  282. package/dist/types/components/post-footer/post-footer.d.ts +1 -0
  283. package/dist/types/components/post-login-widget/post-login-widget.d.ts +21 -2
  284. package/dist/types/components/post-menu/post-menu.d.ts +1 -1
  285. package/dist/types/components/post-popover/post-popover.d.ts +1 -1
  286. package/dist/types/components/post-tooltip/post-tooltip.d.ts +1 -1
  287. package/dist/types/components/post-tooltip-trigger/post-tooltip-trigger.d.ts +1 -0
  288. package/dist/types/components.d.ts +68 -24
  289. package/dist/types/modules.d.ts +2 -0
  290. package/dist/types/utils/index.d.ts +2 -0
  291. package/dist/types/utils/nanoid.d.ts +8 -0
  292. package/dist/types/utils/property-decorators/array-of.d.ts +9 -0
  293. package/dist/types/utils/property-decorators/create-validator-decorator.d.ts +43 -0
  294. package/dist/types/utils/property-decorators/date.d.ts +6 -0
  295. package/dist/types/utils/property-decorators/index.d.ts +9 -0
  296. package/dist/types/utils/property-decorators/iso-date.d.ts +6 -0
  297. package/dist/types/utils/property-decorators/one-of.d.ts +8 -0
  298. package/dist/types/utils/property-decorators/pattern.d.ts +8 -0
  299. package/dist/types/utils/property-decorators/required.d.ts +8 -0
  300. package/dist/types/utils/property-decorators/type.d.ts +9 -0
  301. package/dist/types/utils/property-decorators/url.d.ts +6 -0
  302. package/hydrate/index.js +419 -114735
  303. package/hydrate/index.mjs +419 -114735
  304. package/hydrate/index.stub.js +5 -0
  305. package/package.json +28 -18
  306. package/dist/cjs/index-YBj3gUJp.js +0 -114540
  307. package/dist/cjs/index.browser-BVb9l9T_.js +0 -16
  308. package/dist/components/index.browser.js +0 -1
  309. package/dist/components/index3.js +0 -6
  310. package/dist/components/post-breadcrumb-item2.js +0 -1
  311. package/dist/components/react/p-B4l5EAoq.js +0 -1
  312. package/dist/components/react/p-B4tq6hiA.js +0 -1
  313. package/dist/components/react/p-CJcRbvrI.js +0 -6
  314. package/dist/components/react/p-CfQqdIV2.js +0 -1
  315. package/dist/components/react/p-D1KBbwmi.js +0 -1
  316. package/dist/components/react/p-DAIxJysJ.js +0 -1
  317. package/dist/components/react/p-De_QjSNJ.js +0 -1
  318. package/dist/components/react/p-HNUXY1z7.js +0 -1
  319. package/dist/components/react/p-PuHMz_9_.js +0 -1
  320. package/dist/components/react/p-UY924tHr.js +0 -1
  321. package/dist/components/react/p-nA1BKco0.js +0 -1
  322. package/dist/esm/index-CJcRbvrI.js +0 -114535
  323. package/dist/esm/index.browser-nA1BKco0.js +0 -14
  324. package/dist/esm/package-B4l5EAoq.js +0 -3
  325. package/dist/post-components/p-1e28d279.entry.js +0 -1
  326. package/dist/post-components/p-30e5bc99.entry.js +0 -1
  327. package/dist/post-components/p-694e76be.entry.js +0 -1
  328. package/dist/post-components/p-906b669b.entry.js +0 -1
  329. package/dist/post-components/p-92e4a7f7.entry.js +0 -1
  330. package/dist/post-components/p-B4l5EAoq.js +0 -1
  331. package/dist/post-components/p-CJcRbvrI.js +0 -6
  332. package/dist/post-components/p-DmAi35UF.js +0 -2
  333. package/dist/post-components/p-PuHMz_9_.js +0 -1
  334. package/dist/post-components/p-c70cad6e.entry.js +0 -1
  335. package/dist/post-components/p-cd6684e1.entry.js +0 -1
  336. package/dist/post-components/p-d99bdef2.entry.js +0 -1
  337. package/dist/post-components/p-dfe811cc.entry.js +0 -1
  338. package/dist/post-components/p-f14ca918.entry.js +0 -1
  339. package/dist/post-components/p-fc2882a8.entry.js +0 -1
  340. package/dist/post-components/p-nA1BKco0.js +0 -1
  341. package/dist/types/home/runner/work/design-system/design-system/packages/components/.stencil/types/language-tags.d.ts +0 -1
  342. /package/dist/types/{language-tags.js → test-setup.d.ts} +0 -0
package/dist/docs.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "timestamp": "2026-05-12T15:20:43",
2
+ "timestamp": "2026-06-01T15:48:59",
3
3
  "compiler": {
4
4
  "name": "@stencil/core",
5
5
  "version": "4.43.3",
@@ -675,29 +675,6 @@
675
675
  "required": false,
676
676
  "getter": false,
677
677
  "setter": false
678
- },
679
- {
680
- "name": "userid",
681
- "type": "string",
682
- "complexType": {
683
- "original": "string",
684
- "resolved": "string",
685
- "references": {}
686
- },
687
- "mutable": false,
688
- "attr": "userid",
689
- "reflectToAttr": false,
690
- "docs": "Defines the company internal userId.<post-banner type=\"warning\" data-size=\"sm\"><p>Can only be used on post.ch domains!</p></post-banner>",
691
- "docsTags": [],
692
- "values": [
693
- {
694
- "type": "string"
695
- }
696
- ],
697
- "optional": true,
698
- "required": false,
699
- "getter": false,
700
- "setter": false
701
678
  }
702
679
  ],
703
680
  "methods": [],
@@ -712,9 +689,15 @@
712
689
  ],
713
690
  "parts": [],
714
691
  "states": [],
715
- "dependents": [],
692
+ "dependents": [
693
+ "post-login-widget"
694
+ ],
716
695
  "dependencies": [],
717
- "dependencyGraph": {}
696
+ "dependencyGraph": {
697
+ "post-login-widget": [
698
+ "post-avatar"
699
+ ]
700
+ }
718
701
  },
719
702
  {
720
703
  "filePath": "src/components/post-back-to-top/post-back-to-top.tsx",
@@ -923,7 +906,7 @@
923
906
  "docsTags": [
924
907
  {
925
908
  "name": "slot",
926
- "text": "default - Slot for placing the text inside the breadcrumb item."
909
+ "text": "default - The content displayed inside the breadcrumb item."
927
910
  }
928
911
  ],
929
912
  "usage": {},
@@ -939,7 +922,7 @@
939
922
  "mutable": false,
940
923
  "attr": "description",
941
924
  "reflectToAttr": true,
942
- "docs": "ARIA description for additional context, read after the breadcrumb item content or `label`.",
925
+ "docs": "An accessible description for additional context, read after the content or `label`.",
943
926
  "docsTags": [],
944
927
  "values": [
945
928
  {
@@ -962,7 +945,7 @@
962
945
  "mutable": false,
963
946
  "attr": "label",
964
947
  "reflectToAttr": true,
965
- "docs": "ARIA label, screen readers will use this instead of the breadcrumb item content.",
948
+ "docs": "An accessible label screen readers will use this instead of the breadcrumb item content.",
966
949
  "docsTags": [],
967
950
  "values": [
968
951
  {
@@ -974,6 +957,35 @@
974
957
  "getter": false,
975
958
  "setter": false
976
959
  },
960
+ {
961
+ "name": "selected",
962
+ "type": "boolean",
963
+ "complexType": {
964
+ "original": "boolean",
965
+ "resolved": "boolean",
966
+ "references": {}
967
+ },
968
+ "mutable": false,
969
+ "attr": "selected",
970
+ "reflectToAttr": true,
971
+ "docs": "Indicates that the item represents the current page, applying appropriate styling.",
972
+ "docsTags": [
973
+ {
974
+ "name": "default",
975
+ "text": "false"
976
+ }
977
+ ],
978
+ "default": "false",
979
+ "values": [
980
+ {
981
+ "type": "boolean"
982
+ }
983
+ ],
984
+ "optional": false,
985
+ "required": false,
986
+ "getter": false,
987
+ "setter": false
988
+ },
977
989
  {
978
990
  "name": "url",
979
991
  "type": "URL | string",
@@ -990,7 +1002,7 @@
990
1002
  "mutable": false,
991
1003
  "attr": "url",
992
1004
  "reflectToAttr": true,
993
- "docs": "The optional URL to which the breadcrumb item will link.",
1005
+ "docs": "The destination URL for the breadcrumb item. If omitted, the item is rendered as non-interactive text.",
994
1006
  "docsTags": [],
995
1007
  "values": [
996
1008
  {
@@ -1004,6 +1016,47 @@
1004
1016
  "required": false,
1005
1017
  "getter": false,
1006
1018
  "setter": false
1019
+ },
1020
+ {
1021
+ "name": "variant",
1022
+ "type": "\"listitem\" | \"menuitem\"",
1023
+ "complexType": {
1024
+ "original": "Variant",
1025
+ "resolved": "\"listitem\" | \"menuitem\"",
1026
+ "references": {
1027
+ "Variant": {
1028
+ "location": "import",
1029
+ "path": "./variants",
1030
+ "id": "src/components/post-breadcrumb-item/variants.ts::Variant",
1031
+ "referenceLocation": "Variant"
1032
+ }
1033
+ }
1034
+ },
1035
+ "mutable": false,
1036
+ "attr": "variant",
1037
+ "reflectToAttr": true,
1038
+ "docs": "Controls how the item is rendered, either as a standard list item or within an overflow menu.",
1039
+ "docsTags": [
1040
+ {
1041
+ "name": "default",
1042
+ "text": "'listitem'"
1043
+ }
1044
+ ],
1045
+ "default": "'listitem'",
1046
+ "values": [
1047
+ {
1048
+ "value": "listitem",
1049
+ "type": "string"
1050
+ },
1051
+ {
1052
+ "value": "menuitem",
1053
+ "type": "string"
1054
+ }
1055
+ ],
1056
+ "optional": false,
1057
+ "required": false,
1058
+ "getter": false,
1059
+ "setter": false
1007
1060
  }
1008
1061
  ],
1009
1062
  "methods": [],
@@ -1013,23 +1066,18 @@
1013
1066
  "slots": [
1014
1067
  {
1015
1068
  "name": "default",
1016
- "docs": "Slot for placing the text inside the breadcrumb item."
1069
+ "docs": "The content displayed inside the breadcrumb item."
1017
1070
  }
1018
1071
  ],
1019
1072
  "parts": [],
1020
1073
  "states": [],
1021
- "dependents": [
1022
- "post-breadcrumbs"
1023
- ],
1074
+ "dependents": [],
1024
1075
  "dependencies": [
1025
- "post-icon"
1076
+ "post-menu-item"
1026
1077
  ],
1027
1078
  "dependencyGraph": {
1028
1079
  "post-breadcrumb-item": [
1029
- "post-icon"
1030
- ],
1031
- "post-breadcrumbs": [
1032
- "post-breadcrumb-item"
1080
+ "post-menu-item"
1033
1081
  ]
1034
1082
  }
1035
1083
  },
@@ -1053,7 +1101,7 @@
1053
1101
  "mutable": false,
1054
1102
  "attr": "home-url",
1055
1103
  "reflectToAttr": true,
1056
- "docs": "The URL for the home breadcrumb item.",
1104
+ "docs": "The URL for the root (home) breadcrumb item.",
1057
1105
  "docsTags": [],
1058
1106
  "values": [
1059
1107
  {
@@ -1076,7 +1124,7 @@
1076
1124
  "mutable": false,
1077
1125
  "attr": "text-breadcrumbs",
1078
1126
  "reflectToAttr": true,
1079
- "docs": "The accessible label for the breadcrumb component.",
1127
+ "docs": "An accessible label for the breadcrumb navigation.",
1080
1128
  "docsTags": [],
1081
1129
  "values": [
1082
1130
  {
@@ -1099,7 +1147,7 @@
1099
1147
  "mutable": false,
1100
1148
  "attr": "text-home",
1101
1149
  "reflectToAttr": true,
1102
- "docs": "The text label for the home breadcrumb item.",
1150
+ "docs": "An accessible label for the root (home) breadcrumb item.",
1103
1151
  "docsTags": [],
1104
1152
  "values": [
1105
1153
  {
@@ -1122,7 +1170,7 @@
1122
1170
  "mutable": false,
1123
1171
  "attr": "text-more-items",
1124
1172
  "reflectToAttr": true,
1125
- "docs": "The accessible label for the breadcrumb menu when breadcrumb items are concatenated.",
1173
+ "docs": "An accessible label for the overflow menu that contains collapsed breadcrumb items.",
1126
1174
  "docsTags": [],
1127
1175
  "values": [
1128
1176
  {
@@ -1144,25 +1192,18 @@
1144
1192
  "states": [],
1145
1193
  "dependents": [],
1146
1194
  "dependencies": [
1147
- "post-icon",
1148
1195
  "post-menu-trigger",
1149
1196
  "post-menu",
1150
- "post-menu-item",
1151
- "post-breadcrumb-item"
1197
+ "post-icon"
1152
1198
  ],
1153
1199
  "dependencyGraph": {
1154
1200
  "post-breadcrumbs": [
1155
- "post-icon",
1156
1201
  "post-menu-trigger",
1157
1202
  "post-menu",
1158
- "post-menu-item",
1159
- "post-breadcrumb-item"
1203
+ "post-icon"
1160
1204
  ],
1161
1205
  "post-menu": [
1162
1206
  "post-popovercontainer"
1163
- ],
1164
- "post-breadcrumb-item": [
1165
- "post-icon"
1166
1207
  ]
1167
1208
  }
1168
1209
  },
@@ -2015,6 +2056,10 @@
2015
2056
  "readme": "# post-footer\n",
2016
2057
  "docs": "",
2017
2058
  "docsTags": [
2059
+ {
2060
+ "name": "slot",
2061
+ "text": "prefooter - Slot for the pre-footer."
2062
+ },
2018
2063
  {
2019
2064
  "name": "slot",
2020
2065
  "text": "grid-{1|2|3|4}-title - Slot for the accordion headers (mobile)."
@@ -2099,6 +2144,10 @@
2099
2144
  "name": "meta",
2100
2145
  "docs": "Slot for the meta links."
2101
2146
  },
2147
+ {
2148
+ "name": "prefooter",
2149
+ "docs": "Slot for the pre-footer."
2150
+ },
2102
2151
  {
2103
2152
  "name": "socialmedia",
2104
2153
  "docs": "Slot for the social media links."
@@ -2553,7 +2602,6 @@
2553
2602
  "post-accordion-item",
2554
2603
  "post-autocomplete",
2555
2604
  "post-back-to-top",
2556
- "post-breadcrumb-item",
2557
2605
  "post-breadcrumbs",
2558
2606
  "post-closebutton",
2559
2607
  "post-date-picker",
@@ -2578,9 +2626,6 @@
2578
2626
  "post-back-to-top": [
2579
2627
  "post-icon"
2580
2628
  ],
2581
- "post-breadcrumb-item": [
2582
- "post-icon"
2583
- ],
2584
2629
  "post-breadcrumbs": [
2585
2630
  "post-icon"
2586
2631
  ],
@@ -3352,15 +3397,85 @@
3352
3397
  "docsTags": [
3353
3398
  {
3354
3399
  "name": "slot",
3355
- "text": "authenticated - Content rendered when the user is authenticated (e.g. user menu)."
3400
+ "text": "user-links - Links to show in the user menu when the user is authenticated."
3356
3401
  },
3357
3402
  {
3358
3403
  "name": "slot",
3359
- "text": "unauthenticated - Content rendered when the user is not authenticated (e.g. login link)."
3404
+ "text": "login-link - Content rendered when the user is not authenticated."
3360
3405
  }
3361
3406
  ],
3362
3407
  "usage": {},
3363
- "props": [],
3408
+ "props": [
3409
+ {
3410
+ "name": "textCurrentUser",
3411
+ "type": "string",
3412
+ "complexType": {
3413
+ "original": "string",
3414
+ "resolved": "string",
3415
+ "references": {}
3416
+ },
3417
+ "mutable": false,
3418
+ "attr": "text-current-user",
3419
+ "reflectToAttr": true,
3420
+ "docs": "Label for the \"Current user is {user}\" accessibility description.\nUse `{user}` as a placeholder — it will be replaced with the current user's name at runtime.",
3421
+ "docsTags": [],
3422
+ "values": [
3423
+ {
3424
+ "type": "string"
3425
+ }
3426
+ ],
3427
+ "optional": false,
3428
+ "required": true,
3429
+ "getter": false,
3430
+ "setter": false
3431
+ },
3432
+ {
3433
+ "name": "textUserMenu",
3434
+ "type": "string",
3435
+ "complexType": {
3436
+ "original": "string",
3437
+ "resolved": "string",
3438
+ "references": {}
3439
+ },
3440
+ "mutable": false,
3441
+ "attr": "text-user-menu",
3442
+ "reflectToAttr": true,
3443
+ "docs": "Accessible label for the dropdown menu",
3444
+ "docsTags": [],
3445
+ "values": [
3446
+ {
3447
+ "type": "string"
3448
+ }
3449
+ ],
3450
+ "optional": false,
3451
+ "required": true,
3452
+ "getter": false,
3453
+ "setter": false
3454
+ },
3455
+ {
3456
+ "name": "textUserMenuTrigger",
3457
+ "type": "string",
3458
+ "complexType": {
3459
+ "original": "string",
3460
+ "resolved": "string",
3461
+ "references": {}
3462
+ },
3463
+ "mutable": false,
3464
+ "attr": "text-user-menu-trigger",
3465
+ "reflectToAttr": true,
3466
+ "docs": "Hidden label for the user menu trigger button, for accessibility purposes. It should describe the purpose of the button (e.g. \"Access user links\").",
3467
+ "docsTags": [],
3468
+ "values": [
3469
+ {
3470
+ "type": "string"
3471
+ }
3472
+ ],
3473
+ "optional": false,
3474
+ "required": true,
3475
+ "getter": false,
3476
+ "setter": false
3477
+ }
3478
+ ],
3364
3479
  "methods": [
3365
3480
  {
3366
3481
  "name": "isAuthenticated",
@@ -3427,19 +3542,32 @@
3427
3542
  "styles": [],
3428
3543
  "slots": [
3429
3544
  {
3430
- "name": "authenticated",
3431
- "docs": "Content rendered when the user is authenticated (e.g. user menu)."
3545
+ "name": "login-link",
3546
+ "docs": "Content rendered when the user is not authenticated."
3432
3547
  },
3433
3548
  {
3434
- "name": "unauthenticated",
3435
- "docs": "Content rendered when the user is not authenticated (e.g. login link)."
3549
+ "name": "user-links",
3550
+ "docs": "Links to show in the user menu when the user is authenticated."
3436
3551
  }
3437
3552
  ],
3438
3553
  "parts": [],
3439
3554
  "states": [],
3440
3555
  "dependents": [],
3441
- "dependencies": [],
3442
- "dependencyGraph": {}
3556
+ "dependencies": [
3557
+ "post-menu-trigger",
3558
+ "post-avatar",
3559
+ "post-menu"
3560
+ ],
3561
+ "dependencyGraph": {
3562
+ "post-login-widget": [
3563
+ "post-menu-trigger",
3564
+ "post-avatar",
3565
+ "post-menu"
3566
+ ],
3567
+ "post-menu": [
3568
+ "post-popovercontainer"
3569
+ ]
3570
+ }
3443
3571
  },
3444
3572
  {
3445
3573
  "filePath": "src/components/post-logo/post-logo.tsx",
@@ -4117,7 +4245,8 @@
4117
4245
  "states": [],
4118
4246
  "dependents": [
4119
4247
  "post-breadcrumbs",
4120
- "post-language-menu"
4248
+ "post-language-menu",
4249
+ "post-login-widget"
4121
4250
  ],
4122
4251
  "dependencies": [
4123
4252
  "post-popovercontainer"
@@ -4131,6 +4260,9 @@
4131
4260
  ],
4132
4261
  "post-language-menu": [
4133
4262
  "post-menu"
4263
+ ],
4264
+ "post-login-widget": [
4265
+ "post-menu"
4134
4266
  ]
4135
4267
  }
4136
4268
  },
@@ -4151,12 +4283,12 @@
4151
4283
  "parts": [],
4152
4284
  "states": [],
4153
4285
  "dependents": [
4154
- "post-breadcrumbs",
4286
+ "post-breadcrumb-item",
4155
4287
  "post-language-menu-item"
4156
4288
  ],
4157
4289
  "dependencies": [],
4158
4290
  "dependencyGraph": {
4159
- "post-breadcrumbs": [
4291
+ "post-breadcrumb-item": [
4160
4292
  "post-menu-item"
4161
4293
  ],
4162
4294
  "post-language-menu-item": [
@@ -4206,7 +4338,8 @@
4206
4338
  "states": [],
4207
4339
  "dependents": [
4208
4340
  "post-breadcrumbs",
4209
- "post-language-menu"
4341
+ "post-language-menu",
4342
+ "post-login-widget"
4210
4343
  ],
4211
4344
  "dependencies": [],
4212
4345
  "dependencyGraph": {
@@ -4215,6 +4348,9 @@
4215
4348
  ],
4216
4349
  "post-language-menu": [
4217
4350
  "post-menu-trigger"
4351
+ ],
4352
+ "post-login-widget": [
4353
+ "post-menu-trigger"
4218
4354
  ]
4219
4355
  }
4220
4356
  },
@@ -6357,6 +6493,11 @@
6357
6493
  "docstring": "",
6358
6494
  "path": "src/components/post-banner/banner-types.ts"
6359
6495
  },
6496
+ "src/components/post-breadcrumb-item/variants.ts::Variant": {
6497
+ "declaration": "\"listitem\" | \"menuitem\"",
6498
+ "docstring": "",
6499
+ "path": "src/components/post-breadcrumb-item/variants.ts"
6500
+ },
6360
6501
  "src/components/post-closebutton/types.ts::ButtonType": {
6361
6502
  "declaration": "\"button\" | \"submit\" | \"reset\"",
6362
6503
  "docstring": "",
@@ -0,0 +1,202 @@
1
+ /* eslint-disable no-undefined,no-param-reassign,no-shadow */
2
+
3
+ /**
4
+ * Throttle execution of a function. Especially useful for rate limiting
5
+ * execution of handlers on events like resize and scroll.
6
+ *
7
+ * @param {number} delay - A zero-or-greater delay in milliseconds. For event callbacks, values around 100 or 250 (or even higher)
8
+ * are most useful.
9
+ * @param {Function} callback - A function to be executed after delay milliseconds. The `this` context and all arguments are passed through,
10
+ * as-is, to `callback` when the throttled-function is executed.
11
+ * @param {object} [options] - An object to configure options.
12
+ * @param {boolean} [options.noTrailing] - Optional, defaults to false. If noTrailing is true, callback will only execute every `delay` milliseconds
13
+ * while the throttled-function is being called. If noTrailing is false or unspecified, callback will be executed
14
+ * one final time after the last throttled-function call. (After the throttled-function has not been called for
15
+ * `delay` milliseconds, the internal counter is reset).
16
+ * @param {boolean} [options.noLeading] - Optional, defaults to false. If noLeading is false, the first throttled-function call will execute callback
17
+ * immediately. If noLeading is true, the first the callback execution will be skipped. It should be noted that
18
+ * callback will never executed if both noLeading = true and noTrailing = true.
19
+ * @param {boolean} [options.debounceMode] - If `debounceMode` is true (at begin), schedule `clear` to execute after `delay` ms. If `debounceMode` is
20
+ * false (at end), schedule `callback` to execute after `delay` ms.
21
+ *
22
+ * @returns {Function} A new, throttled, function.
23
+ */
24
+ function throttle (delay, callback, options) {
25
+ var _ref = options || {},
26
+ _ref$noTrailing = _ref.noTrailing,
27
+ noTrailing = _ref$noTrailing === void 0 ? false : _ref$noTrailing,
28
+ _ref$noLeading = _ref.noLeading,
29
+ noLeading = _ref$noLeading === void 0 ? false : _ref$noLeading,
30
+ _ref$debounceMode = _ref.debounceMode,
31
+ debounceMode = _ref$debounceMode === void 0 ? undefined : _ref$debounceMode;
32
+ /*
33
+ * After wrapper has stopped being called, this timeout ensures that
34
+ * `callback` is executed at the proper times in `throttle` and `end`
35
+ * debounce modes.
36
+ */
37
+ var timeoutID;
38
+ var cancelled = false;
39
+
40
+ // Keep track of the last time `callback` was executed.
41
+ var lastExec = 0;
42
+
43
+ // Function to clear existing timeout
44
+ function clearExistingTimeout() {
45
+ if (timeoutID) {
46
+ clearTimeout(timeoutID);
47
+ }
48
+ }
49
+
50
+ // Function to cancel next exec
51
+ function cancel(options) {
52
+ var _ref2 = options || {},
53
+ _ref2$upcomingOnly = _ref2.upcomingOnly,
54
+ upcomingOnly = _ref2$upcomingOnly === void 0 ? false : _ref2$upcomingOnly;
55
+ clearExistingTimeout();
56
+ cancelled = !upcomingOnly;
57
+ }
58
+
59
+ /*
60
+ * The `wrapper` function encapsulates all of the throttling / debouncing
61
+ * functionality and when executed will limit the rate at which `callback`
62
+ * is executed.
63
+ */
64
+ function wrapper() {
65
+ for (var _len = arguments.length, arguments_ = new Array(_len), _key = 0; _key < _len; _key++) {
66
+ arguments_[_key] = arguments[_key];
67
+ }
68
+ var self = this;
69
+ var elapsed = Date.now() - lastExec;
70
+ if (cancelled) {
71
+ return;
72
+ }
73
+
74
+ // Execute `callback` and update the `lastExec` timestamp.
75
+ function exec() {
76
+ lastExec = Date.now();
77
+ callback.apply(self, arguments_);
78
+ }
79
+
80
+ /*
81
+ * If `debounceMode` is true (at begin) this is used to clear the flag
82
+ * to allow future `callback` executions.
83
+ */
84
+ function clear() {
85
+ timeoutID = undefined;
86
+ }
87
+ if (!noLeading && debounceMode && !timeoutID) {
88
+ /*
89
+ * Since `wrapper` is being called for the first time and
90
+ * `debounceMode` is true (at begin), execute `callback`
91
+ * and noLeading != true.
92
+ */
93
+ exec();
94
+ }
95
+ clearExistingTimeout();
96
+ if (debounceMode === undefined && elapsed > delay) {
97
+ if (noLeading) {
98
+ /*
99
+ * In throttle mode with noLeading, if `delay` time has
100
+ * been exceeded, update `lastExec` and schedule `callback`
101
+ * to execute after `delay` ms.
102
+ */
103
+ lastExec = Date.now();
104
+ if (!noTrailing) {
105
+ timeoutID = setTimeout(debounceMode ? clear : exec, delay);
106
+ }
107
+ } else {
108
+ /*
109
+ * In throttle mode without noLeading, if `delay` time has been exceeded, execute
110
+ * `callback`.
111
+ */
112
+ exec();
113
+ }
114
+ } else if (noTrailing !== true) {
115
+ /*
116
+ * In trailing throttle mode, since `delay` time has not been
117
+ * exceeded, schedule `callback` to execute `delay` ms after most
118
+ * recent execution.
119
+ *
120
+ * If `debounceMode` is true (at begin), schedule `clear` to execute
121
+ * after `delay` ms.
122
+ *
123
+ * If `debounceMode` is false (at end), schedule `callback` to
124
+ * execute after `delay` ms.
125
+ */
126
+ timeoutID = setTimeout(debounceMode ? clear : exec, debounceMode === undefined ? delay - elapsed : delay);
127
+ }
128
+ }
129
+ wrapper.cancel = cancel;
130
+
131
+ // Return the wrapper function.
132
+ return wrapper;
133
+ }
134
+
135
+ /* eslint-disable no-undefined */
136
+
137
+ /**
138
+ * Debounce execution of a function. Debouncing, unlike throttling,
139
+ * guarantees that a function is only executed a single time, either at the
140
+ * very beginning of a series of calls, or at the very end.
141
+ *
142
+ * @param {number} delay - A zero-or-greater delay in milliseconds. For event callbacks, values around 100 or 250 (or even higher) are most useful.
143
+ * @param {Function} callback - A function to be executed after delay milliseconds. The `this` context and all arguments are passed through, as-is,
144
+ * to `callback` when the debounced-function is executed.
145
+ * @param {object} [options] - An object to configure options.
146
+ * @param {boolean} [options.atBegin] - Optional, defaults to false. If atBegin is false or unspecified, callback will only be executed `delay` milliseconds
147
+ * after the last debounced-function call. If atBegin is true, callback will be executed only at the first debounced-function call.
148
+ * (After the throttled-function has not been called for `delay` milliseconds, the internal counter is reset).
149
+ *
150
+ * @returns {Function} A new, debounced function.
151
+ */
152
+ function debounce (delay, callback, options) {
153
+ var _ref = {},
154
+ _ref$atBegin = _ref.atBegin,
155
+ atBegin = _ref$atBegin === void 0 ? false : _ref$atBegin;
156
+ return throttle(delay, callback, {
157
+ debounceMode: atBegin !== false
158
+ });
159
+ }
160
+
161
+ class Breakpoint {
162
+ constructor() {
163
+ this.breakpoints = [
164
+ { key: 'xl', device: 'desktop', minWidth: 1280 },
165
+ { key: 'lg', device: 'desktop', minWidth: 1024 },
166
+ { key: 'md', device: 'tablet', minWidth: 780 },
167
+ { key: 'sm', device: 'tablet', minWidth: 600 },
168
+ { key: 'xs', device: 'mobile', minWidth: 0 },
169
+ ];
170
+ this.resizeObserver = globalThis.ResizeObserver
171
+ ? new ResizeObserver(() => this.updateCurrentBreakpoint())
172
+ : null;
173
+ this.updateCurrentBreakpoint = throttle(50, (options = { emitEvents: true }) => {
174
+ const previousBreakpoint = this.currentBreakpoint;
175
+ const newBreakpoint = this.breakpoints.find(breakpoint => {
176
+ return breakpoint.minWidth <= innerWidth;
177
+ });
178
+ if (!newBreakpoint)
179
+ return;
180
+ this.currentBreakpoint = newBreakpoint;
181
+ if (!options.emitEvents)
182
+ return;
183
+ Object.keys(this.currentBreakpoint)
184
+ .filter(key => !previousBreakpoint || this.currentBreakpoint[key] !== previousBreakpoint[key])
185
+ .forEach((key) => this.dispatchEvent(key));
186
+ });
187
+ if (this.resizeObserver) {
188
+ this.updateCurrentBreakpoint({ emitEvents: false });
189
+ this.resizeObserver.observe(document.body);
190
+ }
191
+ }
192
+ dispatchEvent(property) {
193
+ globalThis.dispatchEvent(new CustomEvent(`postBreakpoint:${property}`, { detail: this.currentBreakpoint[property] }));
194
+ }
195
+ get(property) {
196
+ this.updateCurrentBreakpoint({ emitEvents: false });
197
+ return this.currentBreakpoint[property];
198
+ }
199
+ }
200
+ const breakpoint = new Breakpoint();
201
+
202
+ export { breakpoint as b, debounce as d, throttle as t };