@swisspost/design-system-components 10.3.0 → 10.5.0

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 (353) hide show
  1. package/dist/cjs/breakpoints-Kruvy8Dm.js +47 -0
  2. package/dist/cjs/{create-validator-decorator-BchTP-YG.js → create-validator-decorator-u-Byhihe.js} +1 -1
  3. package/dist/cjs/{event-from-CwMw19f8.js → event-from-CTcQxB9-.js} +19 -13
  4. package/dist/cjs/{index-BDBlw92l.js → index-CXnlZiX8.js} +1 -1
  5. package/dist/cjs/{breakpoints-B0Olgvgc.js → index-CggFmZ8n.js} +0 -42
  6. package/dist/cjs/loader.cjs.js +2 -2
  7. package/dist/cjs/{one-of-IgKJFMA_.js → one-of-LGG0uEIi.js} +1 -1
  8. package/dist/cjs/{package-uiAqYqcY.js → package-DdU-rENe.js} +1 -1
  9. package/dist/cjs/{pattern-BCnL1qK3.js → pattern-B-csvfNt.js} +1 -1
  10. package/dist/cjs/post-accordion_2.cjs.entry.js +7 -7
  11. package/dist/cjs/post-autocomplete.cjs.entry.js +70 -55
  12. package/dist/cjs/post-avatar.cjs.entry.js +7 -7
  13. package/dist/cjs/post-back-to-top.cjs.entry.js +25 -13
  14. package/dist/cjs/post-banner.cjs.entry.js +6 -13
  15. package/dist/cjs/post-breadcrumb-item.cjs.entry.js +18 -10
  16. package/dist/cjs/post-breadcrumbs.cjs.entry.js +118 -66
  17. package/dist/cjs/post-closebutton_14.cjs.entry.js +413 -218
  18. package/dist/cjs/post-collapsible_2.cjs.entry.js +8 -8
  19. package/dist/cjs/post-components.cjs.js +2 -2
  20. package/dist/cjs/post-date-picker.cjs.entry.js +38 -15
  21. package/dist/cjs/post-footer.cjs.entry.js +13 -10
  22. package/dist/cjs/post-linkarea.cjs.entry.js +3 -3
  23. package/dist/cjs/post-listbox-option.cjs.entry.js +4 -4
  24. package/dist/cjs/post-listbox.cjs.entry.js +6 -6
  25. package/dist/cjs/post-number-input.cjs.entry.js +8 -7
  26. package/dist/cjs/post-pagination.cjs.entry.js +7 -7
  27. package/dist/cjs/post-popover-trigger.cjs.entry.js +7 -7
  28. package/dist/cjs/post-popover.cjs.entry.js +10 -10
  29. package/dist/cjs/post-progressbar.cjs.entry.js +5 -5
  30. package/dist/cjs/post-rating.cjs.entry.js +7 -7
  31. package/dist/cjs/post-side-navigation-trigger.cjs.entry.js +8 -8
  32. package/dist/cjs/post-side-navigation.cjs.entry.js +19 -10
  33. package/dist/cjs/post-stepper-item.cjs.entry.js +3 -3
  34. package/dist/cjs/post-stepper.cjs.entry.js +8 -8
  35. package/dist/cjs/post-tab-item.cjs.entry.js +7 -7
  36. package/dist/cjs/post-tab-panel.cjs.entry.js +7 -7
  37. package/dist/cjs/post-tabs.cjs.entry.js +9 -9
  38. package/dist/cjs/post-tooltip-trigger.cjs.entry.js +7 -7
  39. package/dist/cjs/post-tooltip.cjs.entry.js +7 -7
  40. package/dist/cjs/{required-BXiinq5t.js → required-bJzxBV-V.js} +1 -1
  41. package/dist/cjs/{type-l3fnHs_E.js → type-CGPnqGY1.js} +1 -1
  42. package/dist/cjs/{url-Dmn5zP5b.js → url-Dxdd6tWj.js} +1 -1
  43. package/dist/collection/components/post-autocomplete/post-autocomplete.js +65 -50
  44. package/dist/collection/components/post-back-to-top/post-back-to-top.js +19 -7
  45. package/dist/collection/components/post-banner/post-banner.js +2 -17
  46. package/dist/collection/components/post-breadcrumb-item/post-breadcrumb-item.css +1 -1
  47. package/dist/collection/components/post-breadcrumb-item/post-breadcrumb-item.js +29 -1
  48. package/dist/collection/components/post-breadcrumbs/post-breadcrumbs.css +1 -1
  49. package/dist/collection/components/post-breadcrumbs/post-breadcrumbs.js +113 -61
  50. package/dist/collection/components/post-closebutton/post-closebutton.css +1 -1
  51. package/dist/collection/components/post-closebutton/post-closebutton.js +7 -8
  52. package/dist/collection/components/post-collapsible/post-collapsible.js +1 -1
  53. package/dist/collection/components/post-collapsible-trigger/post-collapsible-trigger.js +1 -1
  54. package/dist/collection/components/post-date-picker/post-date-picker.css +7 -3
  55. package/dist/collection/components/post-date-picker/post-date-picker.js +31 -8
  56. package/dist/collection/components/post-footer/post-footer.css +1 -1
  57. package/dist/collection/components/post-footer/post-footer.js +6 -3
  58. package/dist/collection/components/post-header/post-header.css +1 -1
  59. package/dist/collection/components/post-header/post-header.js +2 -2
  60. package/dist/collection/components/post-icon/post-icon.js +1 -1
  61. package/dist/collection/components/post-language-menu/post-language-menu.css +1 -1
  62. package/dist/collection/components/post-language-menu/post-language-menu.js +19 -1
  63. package/dist/collection/components/post-linkarea/post-linkarea.js +1 -1
  64. package/dist/collection/components/post-listbox/post-listbox.js +2 -2
  65. package/dist/collection/components/post-listbox-option/post-listbox-option.js +2 -2
  66. package/dist/collection/components/post-logo/post-logo.js +1 -1
  67. package/dist/collection/components/post-mainnavigation/post-mainnavigation.css +1 -1
  68. package/dist/collection/components/post-mainnavigation/post-mainnavigation.js +1 -1
  69. package/dist/collection/components/post-megadropdown/post-megadropdown.css +1 -1
  70. package/dist/collection/components/post-megadropdown/post-megadropdown.js +1 -1
  71. package/dist/collection/components/post-megadropdown-trigger/post-megadropdown-trigger.css +1 -1
  72. package/dist/collection/components/post-megadropdown-trigger/post-megadropdown-trigger.js +1 -1
  73. package/dist/collection/components/post-menu/post-menu.css +1 -1
  74. package/dist/collection/components/post-menu/post-menu.js +23 -8
  75. package/dist/collection/components/post-menu-item/post-menu-item.css +1 -1
  76. package/dist/collection/components/post-menu-trigger/post-menu-trigger.js +1 -1
  77. package/dist/collection/components/post-number-input/post-number-input.css +1 -1
  78. package/dist/collection/components/post-number-input/post-number-input.js +2 -2
  79. package/dist/collection/components/post-pagination/post-pagination.css +1 -1
  80. package/dist/collection/components/post-popover/post-popover.css +1 -1
  81. package/dist/collection/components/post-popover/post-popover.js +3 -3
  82. package/dist/collection/components/post-popover-trigger/post-popover-trigger.js +2 -2
  83. package/dist/collection/components/post-popovercontainer/post-popovercontainer.js +47 -23
  84. package/dist/collection/components/post-progressbar/post-progressbar.js +1 -1
  85. package/dist/collection/components/post-rating/post-rating.js +1 -1
  86. package/dist/collection/components/post-side-navigation/post-side-navigation.css +1 -1
  87. package/dist/collection/components/post-side-navigation/post-side-navigation.js +11 -2
  88. package/dist/collection/components/post-side-navigation-trigger/post-side-navigation-trigger.js +1 -1
  89. package/dist/collection/components/post-stepper/post-stepper.js +1 -1
  90. package/dist/collection/components/post-stepper-item/post-stepper-item.js +1 -1
  91. package/dist/collection/components/post-tab-item/post-tab-item.js +2 -2
  92. package/dist/collection/components/post-tab-panel/post-tab-panel.js +1 -1
  93. package/dist/collection/components/post-tabs/post-tabs.css +1 -1
  94. package/dist/collection/components/post-tabs/post-tabs.js +2 -2
  95. package/dist/collection/components/post-togglebutton/post-togglebutton.js +1 -1
  96. package/dist/collection/components/post-tooltip/post-tooltip.css +1 -1
  97. package/dist/collection/components/post-tooltip/post-tooltip.js +2 -2
  98. package/dist/collection/components/post-tooltip-trigger/post-tooltip-trigger.js +1 -1
  99. package/dist/collection/utils/breakpoints.js +11 -9
  100. package/dist/collection/utils/closable-target.js +38 -0
  101. package/dist/collection/utils/event-from.js +18 -13
  102. package/dist/collection/utils/floating-ui.js +72 -0
  103. package/dist/collection/utils/index.js +1 -0
  104. package/dist/components/breakpoints.js +1 -1
  105. package/dist/components/event-from.js +1 -1
  106. package/dist/components/index2.js +1 -0
  107. package/dist/components/package.js +1 -1
  108. package/dist/components/post-autocomplete.js +1 -1
  109. package/dist/components/post-back-to-top.js +1 -1
  110. package/dist/components/post-banner.js +1 -1
  111. package/dist/components/post-breadcrumb-item.js +1 -1
  112. package/dist/components/post-breadcrumbs.js +1 -1
  113. package/dist/components/post-closebutton2.js +1 -1
  114. package/dist/components/post-collapsible-trigger2.js +1 -1
  115. package/dist/components/post-collapsible2.js +1 -1
  116. package/dist/components/post-date-picker.js +1 -1
  117. package/dist/components/post-footer.js +1 -1
  118. package/dist/components/post-header.js +1 -1
  119. package/dist/components/post-icon2.js +1 -1
  120. package/dist/components/post-language-menu.js +1 -1
  121. package/dist/components/post-linkarea.js +1 -1
  122. package/dist/components/post-listbox-option.js +1 -1
  123. package/dist/components/post-listbox.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-progressbar.js +1 -1
  137. package/dist/components/post-rating.js +1 -1
  138. package/dist/components/post-side-navigation-trigger.js +1 -1
  139. package/dist/components/post-side-navigation.js +1 -1
  140. package/dist/components/post-stepper-item.js +1 -1
  141. package/dist/components/post-stepper.js +1 -1
  142. package/dist/components/post-tab-item.js +1 -1
  143. package/dist/components/post-tab-panel.js +1 -1
  144. package/dist/components/post-tabs.js +1 -1
  145. package/dist/components/post-togglebutton2.js +1 -1
  146. package/dist/components/post-tooltip-trigger.js +1 -1
  147. package/dist/components/post-tooltip.js +1 -1
  148. package/dist/components/react/index.js +1 -1
  149. package/dist/components/react/p-0nNMdSBr.js +1 -0
  150. package/dist/components/react/p-5LuCes5o.js +1 -0
  151. package/dist/components/react/{p-4wtxqxXu.js → p-B2jsM_Ov.js} +1 -1
  152. package/dist/components/react/p-BEcxHjuM.js +1 -0
  153. package/dist/{post-components/p-CveORA5D.js → components/react/p-BdLRXQqY.js} +1 -1
  154. package/dist/components/react/{p-CRQE_mDo.js → p-C8vlYfD-.js} +1 -1
  155. package/dist/components/react/{p-CWFoQ-cx.js → p-CLeWLMJn.js} +1 -1
  156. package/dist/components/react/p-CVVXnYLU.js +1 -0
  157. package/dist/components/react/p-CnN4Jdtv.js +1 -0
  158. package/dist/components/react/{p-BUtt9Sij.js → p-CoCua20S.js} +1 -1
  159. package/dist/components/react/p-CuVhOs8F.js +1 -0
  160. package/dist/components/react/{p-DmN8JwRm.js → p-D3rq_-Qk.js} +1 -1
  161. package/dist/components/react/{p-Bj1LK-jg.js → p-DD-Sl3Ji.js} +1 -1
  162. package/dist/components/react/{p-Dr0r5iBG.js → p-DasK590W.js} +1 -1
  163. package/dist/components/react/p-DeO0rZ1T.js +1 -0
  164. package/dist/components/react/p-DiFAKI9o.js +1 -0
  165. package/dist/components/react/p-Ny5VnydI.js +1 -0
  166. package/dist/components/react/{p-DRQB0V8-.js → p-PYoaz_Xl.js} +1 -1
  167. package/dist/components/react/p-SBBBSmJM.js +1 -0
  168. package/dist/components/react/p-bR8vy6-s.js +1 -0
  169. package/dist/components/react/post-accordion-item.js +1 -1
  170. package/dist/components/react/post-accordion.js +1 -1
  171. package/dist/components/react/post-autocomplete.js +1 -1
  172. package/dist/components/react/post-avatar.js +1 -1
  173. package/dist/components/react/post-back-to-top.js +1 -1
  174. package/dist/components/react/post-banner.js +1 -1
  175. package/dist/components/react/post-breadcrumb-item.js +1 -1
  176. package/dist/components/react/post-breadcrumbs.js +1 -1
  177. package/dist/components/react/post-closebutton.js +1 -1
  178. package/dist/components/react/post-collapsible-trigger.js +1 -1
  179. package/dist/components/react/post-collapsible.js +1 -1
  180. package/dist/components/react/post-date-picker.js +1 -1
  181. package/dist/components/react/post-footer.js +1 -1
  182. package/dist/components/react/post-header.js +1 -1
  183. package/dist/components/react/post-icon.js +1 -1
  184. package/dist/components/react/post-language-menu-item.js +1 -1
  185. package/dist/components/react/post-language-menu.js +1 -1
  186. package/dist/components/react/post-linkarea.js +1 -1
  187. package/dist/components/react/post-listbox-option.js +1 -1
  188. package/dist/components/react/post-listbox.js +1 -1
  189. package/dist/components/react/post-logo.js +1 -1
  190. package/dist/components/react/post-mainnavigation.js +1 -1
  191. package/dist/components/react/post-megadropdown-trigger.js +1 -1
  192. package/dist/components/react/post-megadropdown.js +1 -1
  193. package/dist/components/react/post-menu-item.js +1 -1
  194. package/dist/components/react/post-menu-trigger.js +1 -1
  195. package/dist/components/react/post-menu.js +1 -1
  196. package/dist/components/react/post-number-input.js +1 -1
  197. package/dist/components/react/post-pagination.js +1 -1
  198. package/dist/components/react/post-popover-trigger.js +1 -1
  199. package/dist/components/react/post-popover.js +1 -1
  200. package/dist/components/react/post-popovercontainer.js +1 -1
  201. package/dist/components/react/post-progressbar.js +1 -1
  202. package/dist/components/react/post-rating.js +1 -1
  203. package/dist/components/react/post-side-navigation-trigger.js +1 -1
  204. package/dist/components/react/post-side-navigation.js +1 -1
  205. package/dist/components/react/post-stepper-item.js +1 -1
  206. package/dist/components/react/post-stepper.js +1 -1
  207. package/dist/components/react/post-tab-item.js +1 -1
  208. package/dist/components/react/post-tab-panel.js +1 -1
  209. package/dist/components/react/post-tabs.js +1 -1
  210. package/dist/components/react/post-togglebutton.js +1 -1
  211. package/dist/components/react/post-tooltip-trigger.js +1 -1
  212. package/dist/components/react/post-tooltip.js +1 -1
  213. package/dist/docs.json +78 -17
  214. package/dist/esm/breakpoints-I1j7a0bW.js +45 -0
  215. package/dist/esm/{create-validator-decorator-BzX_jW0Z.js → create-validator-decorator-CbYxqPSB.js} +1 -1
  216. package/dist/esm/{event-from-rEfV4v4a.js → event-from-BEcxHjuM.js} +19 -14
  217. package/dist/esm/{index-BAtz9iuv.js → index-D3NdvMgy.js} +1 -1
  218. package/dist/esm/{breakpoints-BQ3HlJPr.js → index-bR8vy6-s.js} +1 -42
  219. package/dist/esm/loader.js +3 -3
  220. package/dist/esm/{one-of-D5QwMlvb.js → one-of-Mx4vYjem.js} +1 -1
  221. package/dist/esm/{package-D9jUbrFT.js → package-Ny5VnydI.js} +1 -1
  222. package/dist/esm/{pattern-CrL4IkfA.js → pattern-CqQVrJPN.js} +1 -1
  223. package/dist/esm/post-accordion_2.entry.js +7 -7
  224. package/dist/esm/post-autocomplete.entry.js +70 -55
  225. package/dist/esm/post-avatar.entry.js +7 -7
  226. package/dist/esm/post-back-to-top.entry.js +25 -13
  227. package/dist/esm/post-banner.entry.js +6 -13
  228. package/dist/esm/post-breadcrumb-item.entry.js +18 -10
  229. package/dist/esm/post-breadcrumbs.entry.js +118 -66
  230. package/dist/esm/post-closebutton_14.entry.js +412 -217
  231. package/dist/esm/post-collapsible_2.entry.js +8 -8
  232. package/dist/esm/post-components.js +3 -3
  233. package/dist/esm/post-date-picker.entry.js +38 -15
  234. package/dist/esm/post-footer.entry.js +13 -10
  235. package/dist/esm/post-linkarea.entry.js +3 -3
  236. package/dist/esm/post-listbox-option.entry.js +4 -4
  237. package/dist/esm/post-listbox.entry.js +6 -6
  238. package/dist/esm/post-number-input.entry.js +7 -6
  239. package/dist/esm/post-pagination.entry.js +7 -7
  240. package/dist/esm/post-popover-trigger.entry.js +7 -7
  241. package/dist/esm/post-popover.entry.js +10 -10
  242. package/dist/esm/post-progressbar.entry.js +5 -5
  243. package/dist/esm/post-rating.entry.js +7 -7
  244. package/dist/esm/post-side-navigation-trigger.entry.js +8 -8
  245. package/dist/esm/post-side-navigation.entry.js +19 -10
  246. package/dist/esm/post-stepper-item.entry.js +3 -3
  247. package/dist/esm/post-stepper.entry.js +8 -8
  248. package/dist/esm/post-tab-item.entry.js +7 -7
  249. package/dist/esm/post-tab-panel.entry.js +7 -7
  250. package/dist/esm/post-tabs.entry.js +9 -9
  251. package/dist/esm/post-tooltip-trigger.entry.js +7 -7
  252. package/dist/esm/post-tooltip.entry.js +7 -7
  253. package/dist/esm/{required-BX_AhSO0.js → required-CxvSCYJj.js} +1 -1
  254. package/dist/esm/{type-BYIjiHKr.js → type-CYB7_Yi8.js} +1 -1
  255. package/dist/esm/{url-CZMYpchD.js → url-DOwgyBfp.js} +1 -1
  256. package/dist/post-components/p-030bfaa1.entry.js +1 -0
  257. package/dist/post-components/p-1d67c427.entry.js +1 -0
  258. package/dist/post-components/{p-15f0cdf5.entry.js → p-2379e498.entry.js} +1 -1
  259. package/dist/post-components/p-29e6c2a4.entry.js +1 -0
  260. package/dist/post-components/{p-b3a9309d.entry.js → p-2cb843f4.entry.js} +1 -1
  261. package/dist/post-components/{p-1ff7ddef.entry.js → p-2ee255c1.entry.js} +1 -1
  262. package/dist/post-components/{p-6258e611.entry.js → p-3a75186d.entry.js} +1 -1
  263. package/dist/post-components/{p-3ed757a7.entry.js → p-44718c1a.entry.js} +1 -1
  264. package/dist/post-components/p-4e2bb082.entry.js +1 -0
  265. package/dist/post-components/p-5a44b217.entry.js +1 -0
  266. package/dist/post-components/p-65e12f2c.entry.js +1 -0
  267. package/dist/post-components/p-665d877f.entry.js +1 -0
  268. package/dist/post-components/p-781efeb8.entry.js +1 -0
  269. package/dist/post-components/p-795eb5ad.entry.js +1 -0
  270. package/dist/post-components/p-894b20dd.entry.js +1 -0
  271. package/dist/post-components/p-9ad2216e.entry.js +1 -0
  272. package/dist/post-components/p-BEcxHjuM.js +1 -0
  273. package/dist/post-components/p-BmpkvdQk.js +1 -0
  274. package/dist/post-components/p-C-FunIfQ.js +1 -0
  275. package/dist/post-components/p-CCciE4QO.js +1 -0
  276. package/dist/post-components/p-D3NdvMgy.js +2 -0
  277. package/dist/post-components/p-I1j7a0bW.js +1 -0
  278. package/dist/post-components/p-Ny5VnydI.js +1 -0
  279. package/dist/post-components/p-X1vWfzMK.js +1 -0
  280. package/dist/post-components/{p-33649303.entry.js → p-a9223467.entry.js} +1 -1
  281. package/dist/post-components/p-b6e231a8.entry.js +1 -0
  282. package/dist/post-components/{p-ed64b31f.entry.js → p-b856263a.entry.js} +1 -1
  283. package/dist/post-components/p-bR8vy6-s.js +1 -0
  284. package/dist/post-components/{p-32c266ba.entry.js → p-c7a39444.entry.js} +1 -1
  285. package/dist/post-components/p-cGcyMrvx.js +1 -0
  286. package/dist/post-components/{p-dd4a07ca.entry.js → p-cde00944.entry.js} +1 -1
  287. package/dist/post-components/p-cf7493ab.entry.js +1 -0
  288. package/dist/post-components/{p-143014ef.entry.js → p-e463e7ac.entry.js} +1 -1
  289. package/dist/post-components/p-e7f97f6d.entry.js +1 -0
  290. package/dist/post-components/p-e8268a8d.entry.js +1 -0
  291. package/dist/post-components/{p-4df63f7d.entry.js → p-e8c19f72.entry.js} +1 -1
  292. package/dist/post-components/p-ecfc494e.entry.js +1 -0
  293. package/dist/post-components/p-eda4a376.entry.js +1 -0
  294. package/dist/post-components/{p-675f62bc.entry.js → p-ffec1880.entry.js} +1 -1
  295. package/dist/post-components/{p-C0Z-E_YL.js → p-sgCfAEQU.js} +1 -1
  296. package/dist/post-components/post-components.css +1 -1
  297. package/dist/post-components/post-components.esm.js +1 -1
  298. package/dist/types/components/post-autocomplete/post-autocomplete.d.ts +18 -6
  299. package/dist/types/components/post-back-to-top/post-back-to-top.d.ts +2 -1
  300. package/dist/types/components/post-banner/post-banner.d.ts +0 -1
  301. package/dist/types/components/post-breadcrumb-item/post-breadcrumb-item.d.ts +4 -0
  302. package/dist/types/components/post-breadcrumbs/post-breadcrumbs.d.ts +34 -11
  303. package/dist/types/components/post-closebutton/post-closebutton.d.ts +1 -1
  304. package/dist/types/components/post-date-picker/post-date-picker.d.ts +6 -1
  305. package/dist/types/components/post-language-menu/post-language-menu.d.ts +2 -0
  306. package/dist/types/components/post-menu/post-menu.d.ts +1 -0
  307. package/dist/types/components/post-popovercontainer/post-popovercontainer.d.ts +8 -5
  308. package/dist/types/components/post-side-navigation/post-side-navigation.d.ts +4 -0
  309. package/dist/types/components.d.ts +36 -0
  310. package/dist/types/utils/breakpoints.d.ts +1 -0
  311. package/dist/types/utils/closable-target.d.ts +5 -0
  312. package/dist/types/utils/event-from.d.ts +8 -0
  313. package/dist/types/utils/floating-ui.d.ts +12 -0
  314. package/dist/types/utils/index.d.ts +1 -0
  315. package/hydrate/index.js +949 -629
  316. package/hydrate/index.mjs +949 -629
  317. package/package.json +7 -6
  318. package/dist/components/react/p-B-mnuUce.js +0 -1
  319. package/dist/components/react/p-B4APzGUz.js +0 -1
  320. package/dist/components/react/p-BXqGI600.js +0 -1
  321. package/dist/components/react/p-BYoBZKC_.js +0 -1
  322. package/dist/components/react/p-B_WnO-QF.js +0 -1
  323. package/dist/components/react/p-BaB8wJvk.js +0 -1
  324. package/dist/components/react/p-Bji_4dfL.js +0 -1
  325. package/dist/components/react/p-C4D-C0Qi.js +0 -1
  326. package/dist/components/react/p-CX2E_IXB.js +0 -1
  327. package/dist/components/react/p-D9jUbrFT.js +0 -1
  328. package/dist/components/react/p-rEfV4v4a.js +0 -1
  329. package/dist/post-components/p-02585fe8.entry.js +0 -1
  330. package/dist/post-components/p-07d50011.entry.js +0 -1
  331. package/dist/post-components/p-0b762d2b.entry.js +0 -1
  332. package/dist/post-components/p-0sQVSOjO.js +0 -1
  333. package/dist/post-components/p-6a146ec8.entry.js +0 -1
  334. package/dist/post-components/p-6ed71ab9.entry.js +0 -1
  335. package/dist/post-components/p-7492d34d.entry.js +0 -1
  336. package/dist/post-components/p-8ace2b57.entry.js +0 -1
  337. package/dist/post-components/p-8f52881d.entry.js +0 -1
  338. package/dist/post-components/p-950ba0a1.entry.js +0 -1
  339. package/dist/post-components/p-BAtz9iuv.js +0 -2
  340. package/dist/post-components/p-BQ3HlJPr.js +0 -1
  341. package/dist/post-components/p-BzmELz-M.js +0 -1
  342. package/dist/post-components/p-D9jUbrFT.js +0 -1
  343. package/dist/post-components/p-DsgIP6Dq.js +0 -1
  344. package/dist/post-components/p-a5ae59ba.entry.js +0 -1
  345. package/dist/post-components/p-ac7120cb.entry.js +0 -1
  346. package/dist/post-components/p-b079f36d.entry.js +0 -1
  347. package/dist/post-components/p-c72c3bff.entry.js +0 -1
  348. package/dist/post-components/p-d99f4d9d.entry.js +0 -1
  349. package/dist/post-components/p-da7178e5.entry.js +0 -1
  350. package/dist/post-components/p-f1598c80.entry.js +0 -1
  351. package/dist/post-components/p-fOjbWhb_.js +0 -1
  352. package/dist/post-components/p-fed3e568.entry.js +0 -1
  353. package/dist/post-components/p-rEfV4v4a.js +0 -1
@@ -1,14 +1,15 @@
1
- import { r as registerInstance, h, H as Host, a as getElement } from './index-BAtz9iuv.js';
2
- import { t as throttle } from './breakpoints-BQ3HlJPr.js';
1
+ import { r as registerInstance, h, H as Host, a as getElement } from './index-D3NdvMgy.js';
2
+ import './breakpoints-I1j7a0bW.js';
3
3
  import { c as componentOnReady } from './component-on-ready-lpWRZjJp.js';
4
4
  import { n as nanoid } from './nanoid-8LXe8Zt_.js';
5
- import { v as version } from './package-D9jUbrFT.js';
6
- import { R as Required } from './required-BX_AhSO0.js';
7
- import { U as Url } from './url-CZMYpchD.js';
8
- import { T as Type } from './type-BYIjiHKr.js';
9
- import './create-validator-decorator-BzX_jW0Z.js';
5
+ import { v as version } from './package-Ny5VnydI.js';
6
+ import { t as throttle } from './index-bR8vy6-s.js';
7
+ import { R as Required } from './required-CxvSCYJj.js';
8
+ import { U as Url } from './url-DOwgyBfp.js';
9
+ import { T as Type } from './type-CYB7_Yi8.js';
10
+ import './create-validator-decorator-CbYxqPSB.js';
10
11
 
11
- const postBreadcrumbsCss = () => `:host{display:block;position:relative}nav{max-width:100%}nav.invisible{--post-breadcrumb-item-wrap:nowrap;visibility:hidden;overflow:hidden;position:absolute;inset:0;padding-inline:1px}[role=list]{display:flex;align-items:flex-start;gap:var(--post-device-spacing-gap-inline-4)}.breadcrumb-item{display:flex;align-items:flex-start;padding-block:var(--post-device-spacing-padding-block-6);gap:var(--post-device-spacing-gap-inline-5)}.breadcrumb-item :is(button,a){display:inline-flex;position:relative;align-items:center;justify-content:center;max-width:100%;overflow:hidden;transition:opacity 250ms,border-color 250ms,background-color 250ms,color 250ms;border-width:var(--post-device-border-width-default);border-style:solid;border-color:rgba(0,0,0,0);border-radius:var(--post-device-border-radius-round);background-color:rgba(0,0,0,0);box-shadow:none;font-family:inherit;font-size:var(--post-device-font-size-6);font-weight:var(--post-device-font-weight-bold);text-decoration:none;white-space:nowrap;cursor:pointer;font:inherit;padding:unset;border:unset;color:var(--post-scheme-color-interactive-primary-enabled-fg1);border-radius:var(--post-device-border-radius-focus);text-decoration:var(--post-core-text-decoration-none)}.breadcrumb-item :is(button,a):not(:disabled):hover{text-decoration:none}.breadcrumb-item :is(button,a):disabled{border-style:var(--post-core-border-style-dash);cursor:unset}.breadcrumb-item :is(button,a){outline-offset:var(--post-device-spacing-padding-2) !important;outline:var(--post-scheme-color-interactive-focus-stroke) none var(--post-device-border-width-focus) !important}.breadcrumb-item :is(button,a):is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-style:var(--post-core-border-style-solid) !important}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.breadcrumb-item :is(button,a):is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-color:Highlight !important}}@supports not selector(:has(:focus-visible)){.breadcrumb-item :is(button,a):is(:focus-visible,:focus-within,.pretend-focus){outline-style:var(--post-core-border-style-solid) !important}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.breadcrumb-item :is(button,a):is(:focus-visible,:focus-within,.pretend-focus){outline-color:Highlight !important}}}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.breadcrumb-item :is(button,a):is(button){background-color:ButtonFace !important;border:1px solid ButtonBorder !important}.breadcrumb-item :is(button,a):not(:disabled,.disabled):is(button):hover{background-color:Highlight !important}.breadcrumb-item :is(button,a):not(:disabled,.disabled):is(button):hover>post-icon{color:HighlightText !important}}.breadcrumb-item :is(button,a):hover{color:var(--post-scheme-color-interactive-primary-hover-fg1);text-decoration:var(--post-core-text-decoration-underline)}.breadcrumb-item::before{mask-image:var(--post-icon-chevronright);background-color:currentColor;flex:0 0 auto;content:"";display:block;height:16px;width:16px;margin-block:calc(var(--post-device-spacing-padding-35) - 1*var(--post-device-spacing-padding-block-6));margin-inline:var(--post-core-dimension-4)}:root,:host{--post-icon-chevronright:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxkZWZzPjxzeW1ib2wgaWQ9ImktY2hldnJvbnJpZ2h0Ij48c3ltYm9sIGlkPSJzMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiI+PHBhdGggZD0iTTUuMzggMTRjLS4xOSAwLS4zOC0uMDctLjUzLS4yMmEuNzU0Ljc1NCAwIDAgMSAwLTEuMDZMOS41NyA4IDQuODUgMy4yOGMtLjI5LS4yOS0uMjktLjc3IDAtMS4wNnMuNzctLjI5IDEuMDYgMEwxMS42OSA4bC01Ljc4IDUuNzhjLS4xNS4xNS0uMzQuMjItLjUzLjIyIi8+PC9zeW1ib2w+PHN5bWJvbCBpZD0iczI0IiB2aWV3Qm94PSIwIDAgMjQgMjQiPjxwYXRoIGQ9Ik04LjA3IDIwLjcyYy0uMjIgMC0uNDUtLjA4LS42Mi0uMjZhLjg4Ljg4IDAgMCAxIDAtMS4yNGw3LjI2LTcuMjZMNy40NSA0LjdhLjg4Ljg4IDAgMCAxIDAtMS4yNGMuMzQtLjM0LjktLjM0IDEuMjQgMGw4LjUgOC41LTguNDkgOC40OWMtLjE3LjE3LS40LjI2LS42Mi4yNloiLz48L3N5bWJvbD48c3ltYm9sIGlkPSJzMzIiIHZpZXdCb3g9IjAgMCAzMiAzMiI+PHBhdGggZD0iTTEwLjc2IDI3LjVjLS4yNiAwLS41MS0uMS0uNzEtLjI5YS45OTYuOTk2IDAgMCAxIDAtMS40MWw5Ljc5LTkuNzktOS43OS05LjgxYS45OTYuOTk2IDAgMSAxIDEuNDEtMS40MUwyMi42NyAxNiAxMS40NiAyNy4yMWMtLjIuMi0uNDUuMjktLjcxLjI5WiIvPjwvc3ltYm9sPjxzeW1ib2wgaWQ9InM0MCIgdmlld0JveD0iMCAwIDQwIDQwIj48cGF0aCBkPSJNMTMuNSAzNC4yMmExLjEyMyAxLjEyMyAwIDAgMS0uOC0xLjkybDEyLjMzLTEyLjMzTDEyLjcgNy42M2MtLjQ0LS40NC0uNDQtMS4xNSAwLTEuNTlzMS4xNS0uNDQgMS41OSAwbDEzLjkzIDEzLjkzTDE0LjMgMzMuODljLS4yMi4yMi0uNTEuMzMtLjguMzMiLz48L3N5bWJvbD48c3ltYm9sIGlkPSJzNDgiIHZpZXdCb3g9IjAgMCA0OCA0OCI+PHBhdGggZD0iTTE2LjE0IDQxYy0uMzIgMC0uNjQtLjEyLS44OC0uMzdhMS4yNSAxLjI1IDAgMCAxIDAtMS43N2wxNC44Ny0xNC44N0wxNS4yNSA5LjExYy0uNDktLjQ5LS40OS0xLjI4IDAtMS43N3MxLjI4LS40OSAxLjc3IDBsMTYuNjQgMTYuNjQtMTYuNjMgMTYuNjNjLS4yNC4yNC0uNTYuMzctLjg4LjM3WiIvPjwvc3ltYm9sPjxzeW1ib2wgaWQ9InM2NCIgdmlld0JveD0iMCAwIDY0IDY0Ij48cGF0aCBkPSJNMjEuNTEgNTQuNGExLjM3NiAxLjM3NiAwIDAgMS0uOTctMi4zNWwyMC4wMy0yMC4wMy0yMC4wNC0yMC4wM2MtLjU0LS41NC0uNTQtMS40MSAwLTEuOTVzMS40MS0uNTQgMS45NSAwbDIxLjk4IDIxLjk5TDIyLjQ5IDU0Yy0uMjcuMjctLjYyLjQtLjk3LjRaIi8+PC9zeW1ib2w+PHVzZSBzdHlsZT0iZGlzcGxheTogdmFyKC0tczE2LCBub25lKSIgaHJlZj0iI3MxNiIvPjx1c2Ugc3R5bGU9ImRpc3BsYXk6IHZhcigtLXMyNCwgbm9uZSkiIGhyZWY9IiNzMjQiLz48dXNlIHN0eWxlPSJkaXNwbGF5OiB2YXIoLS1zMzIsIG5vbmUpIiBocmVmPSIjczMyIi8+PHVzZSBzdHlsZT0iZGlzcGxheTogdmFyKC0tczQwLCBub25lKSIgaHJlZj0iI3M0MCIvPjx1c2Ugc3R5bGU9ImRpc3BsYXk6IHZhcigtLXM0OCwgbm9uZSkiIGhyZWY9IiNzNDgiLz48dXNlIHN0eWxlPSJkaXNwbGF5OiB2YXIoLS1zNjQsIG5vbmUpIiBocmVmPSIjczY0Ii8+PC9zeW1ib2w+PC9kZWZzPjxzdHlsZT5AbWVkaWEgKG1heC13aWR0aDogMjMuOThweCkge2d7LS1zMTY6YmxvY2s7fX1AbWVkaWEgKG1pbi13aWR0aDogMjRweCkgYW5kIChtYXgtd2lkdGg6IDMxLjk4cHgpIHtney0tczI0OmJsb2NrO319QG1lZGlhIChtaW4td2lkdGg6IDMycHgpIGFuZCAobWF4LXdpZHRoOiAzOS45OHB4KSB7Z3stLXMzMjpibG9jazt9fUBtZWRpYSAobWluLXdpZHRoOiA0MHB4KSBhbmQgKG1heC13aWR0aDogNDcuOThweCkge2d7LS1zNDA6YmxvY2s7fX1AbWVkaWEgKG1pbi13aWR0aDogNDhweCkgYW5kIChtYXgtd2lkdGg6IDYzLjk4cHgpIHtney0tczQ4OmJsb2NrO319QG1lZGlhIChtaW4td2lkdGg6IDY0cHgpIHtney0tczY0OmJsb2NrO319PC9zdHlsZT48Zz48dXNlIGhyZWY9IiNpLWNoZXZyb25yaWdodCIvPjwvZz48L3N2Zz4=")}.home{padding-block:calc((16px + 2 * var(--post-device-spacing-padding-35) - var(--post-core-dimension-24))/2)}.home::before{content:unset}.home post-icon{font-size:var(--post-core-dimension-24)}@media screen and (min-width: 0)and (max-width: 599.98px){.home post-icon{font-size:20px}}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);border:0}`;
12
+ const postBreadcrumbsCss = () => `:host{display:block;position:relative}nav{max-width:100%}nav.invisible{overflow:hidden;visibility:hidden;position:absolute;inset:0}nav.loading>div>:not(.home){display:none}[role=list]{display:flex;align-items:flex-start;gap:var(--post-device-spacing-gap-inline-4)}.breadcrumb-item{display:flex;align-items:flex-start;padding-block:var(--post-device-spacing-padding-block-6);gap:var(--post-device-spacing-gap-inline-5)}.breadcrumb-item :is(button,a){display:inline-flex;position:relative;align-items:center;justify-content:center;max-width:100%;overflow:hidden;transition:opacity 250ms,border-color 250ms,background-color 250ms,color 250ms;border-width:var(--post-device-border-width-default);border-style:solid;border-color:rgba(0,0,0,0);border-radius:var(--post-device-border-radius-round);background-color:rgba(0,0,0,0);box-shadow:none;font-family:inherit;font-size:var(--post-device-font-size-6);font-weight:var(--post-device-font-weight-bold);text-decoration:none;white-space:nowrap;cursor:pointer;font:inherit;padding:unset;border:unset;color:var(--post-scheme-color-interactive-primary-enabled-fg1);border-radius:var(--post-device-border-radius-focus);text-decoration:var(--post-core-text-decoration-none)}.breadcrumb-item :is(button,a):not(:disabled):hover{text-decoration:none}.breadcrumb-item :is(button,a):disabled{border-style:var(--post-core-border-style-dash);cursor:unset}.breadcrumb-item :is(button,a){outline-offset:var(--post-device-spacing-padding-2) !important;outline:var(--post-scheme-color-interactive-focus-stroke) none var(--post-device-border-width-focus) !important}.breadcrumb-item :is(button,a):is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-style:var(--post-core-border-style-solid) !important}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.breadcrumb-item :is(button,a):is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-color:Highlight !important}}@supports not selector(:has(:focus-visible)){.breadcrumb-item :is(button,a):is(:focus-visible,:focus-within,.pretend-focus){outline-style:var(--post-core-border-style-solid) !important}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.breadcrumb-item :is(button,a):is(:focus-visible,:focus-within,.pretend-focus){outline-color:Highlight !important}}}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.breadcrumb-item :is(button,a){border-width:1px !important;transition:none}.breadcrumb-item :is(button,a):is(button){background-color:ButtonFace !important;border-color:ButtonBorder !important}}.breadcrumb-item :is(button,a):hover{color:var(--post-scheme-color-interactive-primary-hover-fg1);text-decoration:var(--post-core-text-decoration-underline)}.breadcrumb-item::before{mask-image:var(--post-icon-chevronright);background-color:currentColor;flex:0 0 auto;content:"";display:block;height:var(--post-device-sizing-interactive-icon-size4);width:var(--post-device-sizing-interactive-icon-size4);margin-block:calc(var(--post-device-spacing-padding-35) - 1*var(--post-device-spacing-padding-block-6));margin-inline:var(--post-core-dimension-4)}:root,:host{--post-icon-chevronright:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxkZWZzPjxzeW1ib2wgaWQ9ImktY2hldnJvbnJpZ2h0Ij48c3ltYm9sIGlkPSJzMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiI+PHBhdGggZD0iTTUuMzggMTRjLS4xOSAwLS4zOC0uMDctLjUzLS4yMmEuNzU0Ljc1NCAwIDAgMSAwLTEuMDZMOS41NyA4IDQuODUgMy4yOGMtLjI5LS4yOS0uMjktLjc3IDAtMS4wNnMuNzctLjI5IDEuMDYgMEwxMS42OSA4bC01Ljc4IDUuNzhjLS4xNS4xNS0uMzQuMjItLjUzLjIyIi8+PC9zeW1ib2w+PHN5bWJvbCBpZD0iczI0IiB2aWV3Qm94PSIwIDAgMjQgMjQiPjxwYXRoIGQ9Ik04LjA3IDIwLjcyYy0uMjIgMC0uNDUtLjA4LS42Mi0uMjZhLjg4Ljg4IDAgMCAxIDAtMS4yNGw3LjI2LTcuMjZMNy40NSA0LjdhLjg4Ljg4IDAgMCAxIDAtMS4yNGMuMzQtLjM0LjktLjM0IDEuMjQgMGw4LjUgOC41LTguNDkgOC40OWMtLjE3LjE3LS40LjI2LS42Mi4yNloiLz48L3N5bWJvbD48c3ltYm9sIGlkPSJzMzIiIHZpZXdCb3g9IjAgMCAzMiAzMiI+PHBhdGggZD0iTTEwLjc2IDI3LjVjLS4yNiAwLS41MS0uMS0uNzEtLjI5YS45OTYuOTk2IDAgMCAxIDAtMS40MWw5Ljc5LTkuNzktOS43OS05LjgxYS45OTYuOTk2IDAgMSAxIDEuNDEtMS40MUwyMi42NyAxNiAxMS40NiAyNy4yMWMtLjIuMi0uNDUuMjktLjcxLjI5WiIvPjwvc3ltYm9sPjxzeW1ib2wgaWQ9InM0MCIgdmlld0JveD0iMCAwIDQwIDQwIj48cGF0aCBkPSJNMTMuNSAzNC4yMmExLjEyMyAxLjEyMyAwIDAgMS0uOC0xLjkybDEyLjMzLTEyLjMzTDEyLjcgNy42M2MtLjQ0LS40NC0uNDQtMS4xNSAwLTEuNTlzMS4xNS0uNDQgMS41OSAwbDEzLjkzIDEzLjkzTDE0LjMgMzMuODljLS4yMi4yMi0uNTEuMzMtLjguMzMiLz48L3N5bWJvbD48c3ltYm9sIGlkPSJzNDgiIHZpZXdCb3g9IjAgMCA0OCA0OCI+PHBhdGggZD0iTTE2LjE0IDQxYy0uMzIgMC0uNjQtLjEyLS44OC0uMzdhMS4yNSAxLjI1IDAgMCAxIDAtMS43N2wxNC44Ny0xNC44N0wxNS4yNSA5LjExYy0uNDktLjQ5LS40OS0xLjI4IDAtMS43N3MxLjI4LS40OSAxLjc3IDBsMTYuNjQgMTYuNjQtMTYuNjMgMTYuNjNjLS4yNC4yNC0uNTYuMzctLjg4LjM3WiIvPjwvc3ltYm9sPjxzeW1ib2wgaWQ9InM2NCIgdmlld0JveD0iMCAwIDY0IDY0Ij48cGF0aCBkPSJNMjEuNTEgNTQuNGExLjM3NiAxLjM3NiAwIDAgMS0uOTctMi4zNWwyMC4wMy0yMC4wMy0yMC4wNC0yMC4wM2MtLjU0LS41NC0uNTQtMS40MSAwLTEuOTVzMS40MS0uNTQgMS45NSAwbDIxLjk4IDIxLjk5TDIyLjQ5IDU0Yy0uMjcuMjctLjYyLjQtLjk3LjRaIi8+PC9zeW1ib2w+PHVzZSBzdHlsZT0iZGlzcGxheTogdmFyKC0tczE2LCBub25lKSIgaHJlZj0iI3MxNiIvPjx1c2Ugc3R5bGU9ImRpc3BsYXk6IHZhcigtLXMyNCwgbm9uZSkiIGhyZWY9IiNzMjQiLz48dXNlIHN0eWxlPSJkaXNwbGF5OiB2YXIoLS1zMzIsIG5vbmUpIiBocmVmPSIjczMyIi8+PHVzZSBzdHlsZT0iZGlzcGxheTogdmFyKC0tczQwLCBub25lKSIgaHJlZj0iI3M0MCIvPjx1c2Ugc3R5bGU9ImRpc3BsYXk6IHZhcigtLXM0OCwgbm9uZSkiIGhyZWY9IiNzNDgiLz48dXNlIHN0eWxlPSJkaXNwbGF5OiB2YXIoLS1zNjQsIG5vbmUpIiBocmVmPSIjczY0Ii8+PC9zeW1ib2w+PC9kZWZzPjxzdHlsZT5AbWVkaWEgKG1heC13aWR0aDogMjMuOThweCkge2d7LS1zMTY6YmxvY2s7fX1AbWVkaWEgKG1pbi13aWR0aDogMjRweCkgYW5kIChtYXgtd2lkdGg6IDMxLjk4cHgpIHtney0tczI0OmJsb2NrO319QG1lZGlhIChtaW4td2lkdGg6IDMycHgpIGFuZCAobWF4LXdpZHRoOiAzOS45OHB4KSB7Z3stLXMzMjpibG9jazt9fUBtZWRpYSAobWluLXdpZHRoOiA0MHB4KSBhbmQgKG1heC13aWR0aDogNDcuOThweCkge2d7LS1zNDA6YmxvY2s7fX1AbWVkaWEgKG1pbi13aWR0aDogNDhweCkgYW5kIChtYXgtd2lkdGg6IDYzLjk4cHgpIHtney0tczQ4OmJsb2NrO319QG1lZGlhIChtaW4td2lkdGg6IDY0cHgpIHtney0tczY0OmJsb2NrO319PC9zdHlsZT48Zz48dXNlIGhyZWY9IiNpLWNoZXZyb25yaWdodCIvPjwvZz48L3N2Zz4=")}.home{padding-block:var(--post-device-spacing-padding-47)}.home::before{content:unset}.home post-icon{width:var(--post-device-sizing-interactive-icon-size2);height:var(--post-device-sizing-interactive-icon-size2)}.menu{margin-inline-end:calc(-1*var(--post-device-spacing-gap-inline-4))}.menu.empty{display:none}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);border:0}`;
12
13
 
13
14
  var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
14
15
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
@@ -20,91 +21,142 @@ var __decorate = (undefined && undefined.__decorate) || function (decorators, ta
20
21
  r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
21
22
  return c > 3 && r && Object.defineProperty(target, key, r), r;
22
23
  };
24
+ const MAX_VISIBLE_ITEMS = 6;
25
+ const MEASUREMENT_DEBOUNCE_MS = 50;
23
26
  const PostBreadcrumbs = class {
24
27
  constructor(hostRef) {
25
28
  registerInstance(this, hostRef);
26
- this.shouldRenderMenu = false;
29
+ this.debounceUpdateCollapsedItems = throttle(MEASUREMENT_DEBOUNCE_MS, this.updateCollapsedItems.bind(this));
30
+ this.resizeObserver = new ResizeObserver(this.debounceUpdateCollapsedItems);
31
+ this.mutationObserver = new MutationObserver(this.updateHiddenNav.bind(this));
32
+ this.loaded = false;
33
+ /** The number of breadcrumb items, counted from the start, that are moved into the overflow menu. */
34
+ this.collapsed = 0;
35
+ /** The visible breadcrumb navigation. */
36
+ this.nav = null;
37
+ /** An off-screen copy of the breadcrumb navigation used for measurement. */
38
+ this.hiddenNav = null;
27
39
  }
28
40
  componentWillLoad() {
29
41
  this.id = this.host.id || `b${nanoid(6)}`;
30
42
  }
31
- componentDidLoad() {
32
- this.createMutationObserver();
33
- this.createResizeObserver();
34
- }
35
- disconnectedCallback() {
36
- this.mutationObserver?.disconnect();
37
- this.resizeObserver?.disconnect();
38
- }
39
- createMutationObserver() {
40
- this.mutationObserver = new MutationObserver(this.duplicateNavElement.bind(this));
41
- this.mutationObserver.observe(this.host, {
43
+ async componentDidLoad() {
44
+ this.resizeObserver?.observe(document.body);
45
+ this.mutationObserver?.observe(this.host, {
42
46
  childList: true,
43
47
  characterData: true,
44
48
  subtree: true,
45
49
  });
46
- this.duplicateNavElement();
50
+ await this.updateHiddenNav();
51
+ await this.updateCollapsedItems();
52
+ this.loaded = true;
47
53
  }
48
- createResizeObserver() {
49
- this.resizeObserver = new ResizeObserver(throttle(50, this.checkOverflow.bind(this)));
50
- this.resizeObserver.observe(document.body);
54
+ disconnectedCallback() {
55
+ this.resizeObserver?.disconnect();
56
+ this.mutationObserver?.disconnect();
57
+ this.debounceUpdateCollapsedItems.cancel();
51
58
  }
52
59
  /**
53
- * To measure overflow, we duplicate the entire breadcrumb so an inline version is always available.
60
+ * Measures the space available in the breadcrumb navigation and moves the items that do not fit
61
+ * into the overflow menu.
54
62
  */
55
- duplicateNavElement() {
56
- const shadowRoot = this.host.shadowRoot;
57
- const nav = shadowRoot?.querySelector('nav');
58
- if (!shadowRoot || !nav)
63
+ async updateCollapsedItems() {
64
+ if (!this.nav)
59
65
  return;
60
- this.prepareBreadcrumbItemsForClone();
61
- const clone = nav.cloneNode(true);
62
- clone.classList.add('invisible');
63
- shadowRoot.querySelector('nav.invisible')?.remove();
64
- shadowRoot.append(clone);
65
- requestAnimationFrame(() => {
66
- this.duplicateSlottedElements(clone, 'slot:not([name])');
67
- this.duplicateSlottedElements(clone, 'slot[name="selected"]');
68
- this.checkOverflow();
69
- });
66
+ this.collapsed = await this.calculateCollapsedItems();
70
67
  }
71
- duplicateSlottedElements(clone, slotSelector) {
72
- const originalSlot = this.host.shadowRoot?.querySelector(slotSelector);
73
- const clonedSlot = clone.querySelector(slotSelector);
74
- if (!originalSlot || !clonedSlot)
75
- return;
76
- originalSlot.assignedElements().forEach(element => {
77
- clonedSlot.insertAdjacentElement('beforebegin', element.cloneNode(true));
78
- });
79
- clonedSlot.remove();
68
+ /**
69
+ * Determines how many items have to be collapsed, either because they do not fit the breadcrumb
70
+ * navigation or because they exceed the maximum number of visible items.
71
+ */
72
+ async calculateCollapsedItems() {
73
+ const items = this.host.querySelectorAll('post-breadcrumb-item');
74
+ const overflowing = await this.calculateOverflowingItems();
75
+ // Never show more than `MAX_VISIBLE_ITEMS`, even if the nav is wide enough to fit them all.
76
+ return Math.max(overflowing, items.length - MAX_VISIBLE_ITEMS);
80
77
  }
81
- checkOverflow() {
82
- const hiddenNav = this.host.shadowRoot?.querySelector('nav.invisible');
83
- if (!hiddenNav)
84
- return;
85
- const breadcrumbItems = Array.from(hiddenNav.querySelectorAll('post-breadcrumb-item'));
86
- Promise.all(breadcrumbItems.map(item => componentOnReady(item))).then(() => {
87
- this.shouldRenderMenu = hiddenNav.scrollWidth > hiddenNav.clientWidth;
88
- this.updateBreadcrumbItemProps();
78
+ /**
79
+ * Determines how many items overflow the width of the breadcrumb navigation.
80
+ */
81
+ async calculateOverflowingItems() {
82
+ // Fallback to zero if the hidden nav is not available for measurement.
83
+ if (!this.hiddenNav)
84
+ return 0;
85
+ const gap = Number.parseFloat(getComputedStyle(this.hiddenNav.firstElementChild).gap);
86
+ const menu = this.hiddenNav.querySelector('.menu').clientWidth;
87
+ // The last item can never be collapsed, so it is ignored when measuring the width of the items.
88
+ const items = Array.from(this.hiddenNav.querySelectorAll('post-breadcrumb-item')).slice(0, -1);
89
+ // Start from the assumption that all items fit and that no menu is shown.
90
+ // Therefore, subtract the width of the overflow menu.
91
+ let width = this.hiddenNav.scrollWidth - menu + gap;
92
+ let overflowing = 0;
93
+ // Discard items from the start until the remaining ones fit the available width.
94
+ while (overflowing < items.length && width > this.hiddenNav.clientWidth) {
95
+ // The overflow menu needs to be displayed as soon as the first item is moved into it, so its
96
+ // width needs to be taken into account when measuring the remaining items.
97
+ if (overflowing === 0)
98
+ width += menu;
99
+ width -= items[overflowing++].clientWidth + gap;
100
+ }
101
+ return overflowing;
102
+ }
103
+ /**
104
+ * Moves `collapsed` items into the overflow menu and marks the last item as selected.
105
+ */
106
+ updateItems(items, collapsed) {
107
+ items.forEach((item, index) => {
108
+ item.setAttribute('variant', index < collapsed ? 'menuitem' : 'listitem');
109
+ item.setAttribute('selected', String(index === items.length - 1));
110
+ item.setAttribute('standalone', String(index === items.length - 1 && index === collapsed));
89
111
  });
90
112
  }
91
- prepareBreadcrumbItemsForClone() {
92
- this.shouldRenderMenu = false;
93
- this.updateBreadcrumbItemProps();
113
+ /**
114
+ * Rebuilds the off-screen copy of the breadcrumb navigation.
115
+ */
116
+ async updateHiddenNav() {
117
+ this.hiddenNav?.remove();
118
+ this.hiddenNav = await this.renderHiddenNav();
94
119
  }
95
- updateBreadcrumbItemProps() {
96
- const breadcrumbItems = this.host.querySelectorAll('post-breadcrumb-item');
97
- breadcrumbItems.forEach((item, index) => {
98
- item.setAttribute('variant', this.shouldRenderMenu ? 'menuitem' : 'listitem');
99
- item.setAttribute('selected', String(index === breadcrumbItems.length - 1));
120
+ /**
121
+ * Renders an off-screen copy of the breadcrumb navigation that is used for measurements.
122
+ */
123
+ async renderHiddenNav() {
124
+ const shadowRoot = this.host.shadowRoot;
125
+ if (!shadowRoot || !this.nav)
126
+ return null;
127
+ const clone = this.nav.cloneNode(true);
128
+ const slots = clone.querySelectorAll('slot');
129
+ // Deep clone the breadcrumb navigation and flatten its slots into the clone.
130
+ this.nav.querySelectorAll('slot').forEach((source, index) => {
131
+ const target = slots[index];
132
+ // Insert the assigned elements where the slot used to be, then drop the now empty slot
133
+ source.assignedElements().forEach(element => {
134
+ target.insertAdjacentElement('beforebegin', element.cloneNode(true));
135
+ });
136
+ target.remove();
100
137
  });
138
+ clone.classList.remove('loading');
139
+ clone.classList.add('invisible');
140
+ // Show the overflow menu so that we can include the space it takes up in the measurement.
141
+ clone.querySelector('.menu').classList.remove('empty');
142
+ shadowRoot.append(clone);
143
+ // Wait for all items to be fully hydrated before measuring.
144
+ const items = clone.querySelectorAll('post-breadcrumb-item');
145
+ await Promise.all(Array.from(items).map(item => componentOnReady(item)));
146
+ // Move the items out of the overflow menu so that the uncollapsed layout can be measured.
147
+ this.updateItems(items, 0);
148
+ return clone;
101
149
  }
102
150
  renderMenu() {
103
151
  const menuId = `${this.id}-menu`;
104
- return (h("div", { role: "listitem" }, h("div", { class: "breadcrumb-item" }, h("post-menu-trigger", { for: menuId }, h("button", null, h("span", { class: "visually-hidden" }, this.textMoreItems), h("span", { "aria-hidden": "true" }, "...")))), h("post-menu", { id: menuId, label: this.textMoreItems, placement: "bottom-start" }, h("slot", null))));
152
+ return (h("div", { class: `breadcrumb-item menu ${this.collapsed === 0 ? 'empty' : ''}`, role: "listitem" }, h("post-menu-trigger", { for: menuId }, h("button", null, h("span", { class: "visually-hidden" }, this.textMoreItems), h("span", { "aria-hidden": "true" }, "..."))), h("post-menu", { id: menuId, label: this.textMoreItems, placement: "bottom-start" }, h("slot", { name: "menu" }))));
105
153
  }
106
154
  render() {
107
- return (h(Host, { key: 'b6ac788d29127c030f4b1955c41a7d6e2ac8a346', "data-version": version }, h("nav", { key: 'a7c081b3b4d991cdab30b2ca424c47b7231484cd', "aria-label": this.textBreadcrumbs }, h("div", { key: 'c51606af26b874e66376afa2b7855b400368af85', role: "list" }, h("div", { key: '88a33d5554b807252b1d89ef6ce3a611dd7e5014', class: "breadcrumb-item home", role: "listitem" }, h("a", { key: 'f0fdbff28d44944d18497bf1be12bd22a1281778', href: this.homeUrl }, h("span", { key: '4d16bbe0565dfdd1764027db43cf4c61849f9159', class: "visually-hidden" }, this.textHome), h("post-icon", { key: '86611c819469da07c965c29db3510843e685e449', "aria-hidden": "true", name: "home" }))), this.shouldRenderMenu ? this.renderMenu() : h("slot", null), h("slot", { key: 'cb4a22117596bc8f3f9df72e62564b48c1d88975', name: "selected" })))));
155
+ if (this.loaded) {
156
+ const items = this.host.querySelectorAll('post-breadcrumb-item');
157
+ this.updateItems(items, this.collapsed);
158
+ }
159
+ return (h(Host, { key: '501384cb07b2deac87a21800fc4d39d695747341', "data-version": version }, h("nav", { key: '20aa57da865967458169544dec75d975926eb675', "aria-label": this.textBreadcrumbs, ref: el => (this.nav = el), class: this.loaded ? '' : 'loading' }, h("div", { key: 'cf8f21f2ee9de01bac0edf9379ba5c183b938d70', role: "list" }, h("div", { key: '9bd29a83cb976d67f3c6ea24cf23b2a07e40ca84', class: "breadcrumb-item home", role: "listitem" }, h("a", { key: '675638668994f074951491040c6043819e6f7282', href: this.homeUrl }, h("span", { key: '3ce1f8ea5ba5738925bff000ec5a8c32603ae963', class: "visually-hidden" }, this.textHome), h("post-icon", { key: '1b35b22788d4e70c948e1067d99265e8af9c74e7', "aria-hidden": "true", name: "home" }))), this.renderMenu(), h("slot", { key: 'f7fe7cd0b16a9064aba28149756f785c47133351' }), h("slot", { key: 'c62ce84877203586c184e1adaea1ecb6ed8a0912', name: "selected" })))));
108
160
  }
109
161
  get host() { return getElement(this); }
110
162
  };