@swisspost/design-system-components 9.0.0-next.13 → 9.0.0-next.15

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 (382) hide show
  1. package/dist/cjs/{index-f1b08cdb.js → index-0ee3ab4a.js} +334 -152
  2. package/dist/cjs/index.cjs.js +22 -20
  3. package/dist/cjs/loader.cjs.js +2 -2
  4. package/dist/cjs/{package-60e57542.js → package-da5224f8.js} +1 -1
  5. package/dist/cjs/{post-accordion-1e495c23.js → post-accordion-412a5841.js} +11 -5
  6. package/dist/cjs/{post-accordion-item-86b6950a.js → post-accordion-item-0bcc2d1d.js} +15 -8
  7. package/dist/cjs/post-accordion-item.cjs.entry.js +3 -3
  8. package/dist/cjs/post-accordion.cjs.entry.js +3 -3
  9. package/dist/cjs/{post-avatar-067c033b.js → post-avatar-8c349298.js} +23 -11
  10. package/dist/cjs/post-avatar.cjs.entry.js +3 -3
  11. package/dist/cjs/post-back-to-top-56f1cc8e.js +80 -0
  12. package/dist/cjs/post-back-to-top.cjs.entry.js +3 -3
  13. package/dist/cjs/post-banner-6295a2a0.js +110 -0
  14. package/dist/cjs/post-banner.cjs.entry.js +3 -3
  15. package/dist/cjs/{post-breadcrumb-b33abf67.js → post-breadcrumb-507266b2.js} +15 -9
  16. package/dist/cjs/post-breadcrumb-item_2.cjs.entry.js +3 -3
  17. package/dist/cjs/post-breadcrumb.cjs.entry.js +3 -3
  18. package/dist/cjs/{post-card-control-7867a104.js → post-card-control-d7eabec9.js} +45 -14
  19. package/dist/cjs/post-card-control.cjs.entry.js +3 -3
  20. package/dist/cjs/post-closebutton_15.cjs.entry.js +3 -3
  21. package/dist/cjs/{post-collapsible-trigger-6affdc02.js → post-collapsible-trigger-0ee4d82a.js} +11 -5
  22. package/dist/cjs/post-collapsible_2.cjs.entry.js +3 -3
  23. package/dist/cjs/post-components.cjs.js +3 -3
  24. package/dist/cjs/{post-footer-330e8999.js → post-footer-2bac2420.js} +8 -5
  25. package/dist/cjs/post-footer.cjs.entry.js +3 -3
  26. package/dist/cjs/post-linkarea-fc2f9c72.js +32 -0
  27. package/dist/cjs/post-linkarea.cjs.entry.js +11 -0
  28. package/dist/cjs/{post-menu-item-48191dfd.js → post-menu-item-709448cc.js} +8 -5
  29. package/dist/cjs/{post-popover-27f3e9aa.js → post-popover-0a247c47.js} +18 -6
  30. package/dist/cjs/post-popover.cjs.entry.js +3 -3
  31. package/dist/cjs/{post-rating-28904e91.js → post-rating-e09b9243.js} +21 -8
  32. package/dist/cjs/post-rating.cjs.entry.js +3 -3
  33. package/dist/cjs/{post-tab-header-86b129ab.js → post-tab-header-7fb08fb1.js} +8 -5
  34. package/dist/cjs/post-tab-header.cjs.entry.js +3 -3
  35. package/dist/cjs/{post-tab-panel-94333a7e.js → post-tab-panel-e35b6f6d.js} +8 -5
  36. package/dist/cjs/post-tab-panel.cjs.entry.js +3 -3
  37. package/dist/cjs/{post-tabs-f8581050.js → post-tabs-3967f88b.js} +10 -4
  38. package/dist/cjs/post-tabs.cjs.entry.js +3 -3
  39. package/dist/cjs/{post-tag-3a24c574.js → post-tag-07461a94.js} +18 -7
  40. package/dist/cjs/post-tag.cjs.entry.js +3 -3
  41. package/dist/cjs/{post-togglebutton-e7d697bf.js → post-togglebutton-675dccb0.js} +516 -133
  42. package/dist/cjs/{post-tooltip-8c87dfe3.js → post-tooltip-1c754653.js} +17 -6
  43. package/dist/cjs/post-tooltip.cjs.entry.js +3 -3
  44. package/dist/collection/collection-manifest.json +4 -3
  45. package/dist/collection/components/post-accordion/post-accordion.js +13 -5
  46. package/dist/collection/components/post-accordion-item/post-accordion-item.js +17 -8
  47. package/dist/collection/components/post-avatar/post-avatar.js +29 -11
  48. package/dist/collection/components/post-back-to-top/post-back-to-top.css +1 -1
  49. package/dist/collection/components/post-back-to-top/post-back-to-top.js +9 -5
  50. package/dist/collection/components/post-banner/post-banner.css +1 -1
  51. package/dist/collection/components/post-banner/post-banner.js +34 -14
  52. package/dist/collection/components/post-breadcrumb/post-breadcrumb.js +17 -9
  53. package/dist/collection/components/post-breadcrumb-item/post-breadcrumb-item.js +7 -4
  54. package/dist/collection/components/post-card-control/post-card-control.js +61 -12
  55. package/dist/collection/components/post-closebutton/post-closebutton.js +1 -1
  56. package/dist/collection/components/post-collapsible/post-collapsible.js +7 -4
  57. package/dist/collection/components/post-collapsible-trigger/post-collapsible-trigger.js +6 -3
  58. package/dist/collection/components/post-footer/post-footer.js +8 -5
  59. package/dist/collection/components/post-header/post-header.css +1 -1
  60. package/dist/collection/components/post-header/post-header.js +82 -8
  61. package/dist/collection/components/post-icon/post-icon.js +43 -10
  62. package/dist/collection/components/post-language-option/post-language-option.js +32 -8
  63. package/dist/collection/components/post-language-switch/post-language-switch.css +1 -1
  64. package/dist/collection/components/post-language-switch/post-language-switch.js +23 -7
  65. package/dist/collection/components/post-linkarea/post-linkarea.css +1 -0
  66. package/dist/collection/components/post-linkarea/post-linkarea.js +32 -0
  67. package/dist/collection/components/post-list/post-list.js +17 -6
  68. package/dist/collection/components/post-list-item/post-list-item.js +1 -1
  69. package/dist/collection/components/post-logo/post-logo.js +7 -4
  70. package/dist/collection/components/post-mainnavigation/post-mainnavigation.css +1 -1
  71. package/dist/collection/components/post-mainnavigation/post-mainnavigation.js +193 -19
  72. package/dist/collection/components/post-megadropdown/post-megadropdown.css +1 -1
  73. package/dist/collection/components/post-megadropdown/post-megadropdown.js +124 -66
  74. package/dist/collection/components/post-megadropdown-trigger/post-megadropdown-trigger.css +1 -1
  75. package/dist/collection/components/post-megadropdown-trigger/post-megadropdown-trigger.js +12 -6
  76. package/dist/collection/components/post-menu/post-menu.js +15 -5
  77. package/dist/collection/components/post-menu-item/post-menu-item.js +1 -1
  78. package/dist/collection/components/post-menu-trigger/post-menu-trigger.js +11 -5
  79. package/dist/collection/components/post-popover/post-popover.js +22 -4
  80. package/dist/collection/components/post-popovercontainer/post-popovercontainer.css +1 -1
  81. package/dist/collection/components/post-popovercontainer/post-popovercontainer.js +46 -8
  82. package/dist/collection/components/post-rating/post-rating.js +27 -6
  83. package/dist/collection/components/post-tab-header/post-tab-header.js +8 -5
  84. package/dist/collection/components/post-tab-panel/post-tab-panel.js +8 -5
  85. package/dist/collection/components/post-tabs/post-tabs.js +10 -4
  86. package/dist/collection/components/post-tag/post-tag.js +22 -5
  87. package/dist/collection/components/post-togglebutton/post-togglebutton.js +7 -4
  88. package/dist/collection/components/post-tooltip/post-tooltip.js +21 -6
  89. package/dist/collection/index.js +1 -0
  90. package/dist/components/index.js +36 -35
  91. package/dist/components/{post-collapsible2.js → p-10c1a15a.js} +9 -6
  92. package/dist/components/{post-menu-trigger2.js → p-15877641.js} +14 -8
  93. package/dist/components/{post-breadcrumb2.js → p-23b12eda.js} +26 -20
  94. package/dist/components/p-2e509a60.js +237 -0
  95. package/dist/components/{post-tab-header2.js → p-32b7a0a8.js} +11 -8
  96. package/dist/components/{post-togglebutton2.js → p-3385af29.js} +9 -6
  97. package/dist/components/p-3aba7629.js +29 -0
  98. package/dist/components/p-3e8554e7.js +1646 -0
  99. package/dist/components/p-46a6c5ec.js +168 -0
  100. package/dist/components/{post-tooltip2.js → p-477784a7.js} +21 -10
  101. package/dist/components/{post-megadropdown-trigger2.js → p-4b60e5f8.js} +15 -9
  102. package/{loaders/post-menu-item2.js → dist/components/p-4bbdde2b.js} +4 -4
  103. package/dist/components/{post-avatar2.js → p-4f60823b.js} +25 -13
  104. package/dist/components/{post-collapsible-trigger2.js → p-5366ff92.js} +11 -8
  105. package/dist/components/p-54e097c7.js +199 -0
  106. package/dist/components/{post-language-switch2.js → p-61419ecc.js} +28 -16
  107. package/dist/components/{post-popover2.js → p-621f6dce.js} +21 -9
  108. package/dist/components/{post-card-control2.js → p-6d591e1c.js} +49 -18
  109. package/dist/components/{post-logo2.js → p-70e8b74f.js} +9 -6
  110. package/{loaders/post-menu2.js → dist/components/p-7202d5d4.js} +19 -36
  111. package/dist/components/p-74e13cb1.js +3 -0
  112. package/dist/components/{post-breadcrumb-item2.js → p-80478535.js} +10 -7
  113. package/dist/components/{post-back-to-top2.js → p-8b750ccb.js} +15 -11
  114. package/dist/components/p-9a726750.js +44 -0
  115. package/dist/components/{post-list-item2.js → p-9e4b1f10.js} +3 -3
  116. package/dist/components/{post-language-option2.js → p-a07e1562.js} +27 -11
  117. package/dist/components/{post-list2.js → p-a3711af3.js} +17 -8
  118. package/dist/components/{check-non-empty.js → p-b095519d.js} +1 -1
  119. package/dist/components/{post-accordion2.js → p-cf4cb17f.js} +14 -8
  120. package/dist/components/{post-rating2.js → p-d343757a.js} +23 -10
  121. package/dist/components/{post-footer2.js → p-d428a69c.js} +13 -10
  122. package/dist/components/{post-tab-panel2.js → p-db9fa77d.js} +10 -7
  123. package/dist/components/{post-tag2.js → p-e482b539.js} +20 -9
  124. package/dist/components/{index2.js → p-eabb09ad.js} +3 -3
  125. package/dist/components/{post-tabs2.js → p-efc1bc9c.js} +12 -6
  126. package/dist/components/{post-closebutton2.js → p-f5433ff7.js} +5 -5
  127. package/dist/components/p-f566dbe4.js +145 -0
  128. package/{loaders/post-popovercontainer2.js → dist/components/p-f59c8544.js} +25 -10
  129. package/{loaders/post-accordion-item2.js → dist/components/p-f60c925d.js} +22 -15
  130. package/dist/components/p-f7b9f90a.js +135 -0
  131. package/dist/components/{post-icon2.js → p-fcec301c.js} +35 -14
  132. package/dist/components/post-accordion-item.js +1 -1
  133. package/dist/components/post-accordion.js +1 -1
  134. package/dist/components/post-avatar.js +1 -1
  135. package/dist/components/post-back-to-top.js +1 -1
  136. package/dist/components/post-banner.js +1 -1
  137. package/dist/components/post-breadcrumb-item.js +1 -1
  138. package/dist/components/post-breadcrumb.js +1 -1
  139. package/dist/components/post-card-control.js +1 -1
  140. package/dist/components/post-closebutton.js +1 -1
  141. package/dist/components/post-collapsible-trigger.js +1 -1
  142. package/dist/components/post-collapsible.js +1 -1
  143. package/dist/components/post-footer.js +1 -1
  144. package/dist/components/post-header.js +1 -1
  145. package/dist/components/post-icon.js +1 -1
  146. package/dist/components/post-language-option.js +1 -1
  147. package/dist/components/post-language-switch.js +1 -1
  148. package/dist/components/post-linkarea.d.ts +11 -0
  149. package/dist/components/post-linkarea.js +6 -0
  150. package/dist/components/post-list-item.js +1 -1
  151. package/dist/components/post-list.js +1 -1
  152. package/dist/components/post-logo.js +1 -1
  153. package/dist/components/post-mainnavigation.js +1 -1
  154. package/dist/components/post-megadropdown-trigger.js +1 -1
  155. package/dist/components/post-megadropdown.js +1 -1
  156. package/dist/components/post-menu-item.js +1 -1
  157. package/dist/components/post-menu-trigger.js +1 -1
  158. package/dist/components/post-menu.js +1 -1
  159. package/dist/components/post-popover.js +1 -1
  160. package/dist/components/post-popovercontainer.js +1 -1
  161. package/dist/components/post-rating.js +1 -1
  162. package/dist/components/post-tab-header.js +1 -1
  163. package/dist/components/post-tab-panel.js +1 -1
  164. package/dist/components/post-tabs.js +1 -1
  165. package/dist/components/post-tag.js +1 -1
  166. package/dist/components/post-togglebutton.js +1 -1
  167. package/dist/components/post-tooltip.js +1 -1
  168. package/dist/docs.d.ts +8 -0
  169. package/dist/docs.json +333 -149
  170. package/dist/esm/{index-6bfe6554.js → index-2c232bf2.js} +334 -152
  171. package/dist/esm/index.js +21 -20
  172. package/dist/esm/loader.js +3 -3
  173. package/dist/esm/package-fe605ce2.js +3 -0
  174. package/dist/esm/{post-accordion-48eb17c3.js → post-accordion-27faacb3.js} +11 -5
  175. package/dist/esm/{post-accordion-item-e0893bb3.js → post-accordion-item-518d7bd0.js} +15 -8
  176. package/dist/esm/post-accordion-item.entry.js +3 -3
  177. package/dist/esm/post-accordion.entry.js +3 -3
  178. package/dist/esm/{post-avatar-20cde806.js → post-avatar-80b061df.js} +23 -11
  179. package/dist/esm/post-avatar.entry.js +3 -3
  180. package/dist/esm/post-back-to-top-531e1376.js +78 -0
  181. package/dist/esm/post-back-to-top.entry.js +3 -3
  182. package/dist/esm/post-banner-e10a3101.js +108 -0
  183. package/dist/esm/post-banner.entry.js +3 -3
  184. package/dist/esm/{post-breadcrumb-39203792.js → post-breadcrumb-54bac634.js} +15 -9
  185. package/dist/esm/post-breadcrumb-item_2.entry.js +3 -3
  186. package/dist/esm/post-breadcrumb.entry.js +3 -3
  187. package/dist/esm/{post-card-control-d2c25c96.js → post-card-control-ba354a50.js} +45 -14
  188. package/dist/esm/post-card-control.entry.js +3 -3
  189. package/dist/esm/post-closebutton_15.entry.js +3 -3
  190. package/dist/esm/{post-collapsible-trigger-2f9ad9a5.js → post-collapsible-trigger-3dbedd6e.js} +11 -5
  191. package/dist/esm/post-collapsible_2.entry.js +3 -3
  192. package/dist/esm/post-components.js +4 -4
  193. package/dist/esm/{post-footer-e804a967.js → post-footer-c73c4669.js} +8 -5
  194. package/dist/esm/post-footer.entry.js +3 -3
  195. package/dist/esm/post-linkarea-65638949.js +30 -0
  196. package/dist/esm/post-linkarea.entry.js +3 -0
  197. package/dist/esm/{post-menu-item-f9793958.js → post-menu-item-fb5afbfe.js} +8 -5
  198. package/dist/esm/{post-popover-8205412a.js → post-popover-50930237.js} +18 -6
  199. package/dist/esm/post-popover.entry.js +3 -3
  200. package/dist/esm/{post-rating-95ecb434.js → post-rating-3077bc2d.js} +21 -8
  201. package/dist/esm/post-rating.entry.js +3 -3
  202. package/dist/esm/{post-tab-header-d520b99a.js → post-tab-header-359fe858.js} +8 -5
  203. package/dist/esm/post-tab-header.entry.js +3 -3
  204. package/dist/esm/{post-tab-panel-8c8d2332.js → post-tab-panel-1209fd6f.js} +8 -5
  205. package/dist/esm/post-tab-panel.entry.js +3 -3
  206. package/dist/esm/{post-tabs-dd6dfe43.js → post-tabs-3a9acd87.js} +10 -4
  207. package/dist/esm/post-tabs.entry.js +3 -3
  208. package/dist/esm/{post-tag-593813a4.js → post-tag-c8c9b213.js} +18 -7
  209. package/dist/esm/post-tag.entry.js +3 -3
  210. package/dist/esm/{post-togglebutton-120df903.js → post-togglebutton-1e02ab7c.js} +516 -133
  211. package/dist/esm/{post-tooltip-a13d6fbb.js → post-tooltip-65892d5f.js} +17 -6
  212. package/dist/esm/post-tooltip.entry.js +3 -3
  213. package/dist/post-components/index.esm.js +1 -1
  214. package/dist/post-components/p-05d809f2.entry.js +1 -0
  215. package/dist/post-components/p-122f969e.js +1 -0
  216. package/dist/post-components/p-16c08e07.entry.js +1 -0
  217. package/dist/post-components/p-16f883f9.entry.js +1 -0
  218. package/dist/post-components/p-23a94c36.entry.js +1 -0
  219. package/dist/post-components/p-2ea6e06e.js +1 -0
  220. package/dist/post-components/p-36527185.js +1 -0
  221. package/dist/post-components/p-368cee4c.js +1 -0
  222. package/dist/post-components/p-3a408d41.entry.js +1 -0
  223. package/dist/post-components/p-43caa6b0.js +1 -0
  224. package/dist/post-components/{p-4fc83a1c.js → p-458d4560.js} +3 -3
  225. package/dist/post-components/p-52508346.entry.js +1 -0
  226. package/dist/post-components/p-54ae1f02.js +1 -0
  227. package/dist/post-components/p-55139ed4.js +1 -0
  228. package/dist/post-components/p-5a051654.entry.js +1 -0
  229. package/dist/post-components/p-5b058c27.entry.js +1 -0
  230. package/dist/post-components/p-5be385f2.js +1 -0
  231. package/dist/post-components/p-5cc36eb9.entry.js +1 -0
  232. package/dist/post-components/p-61ebfb27.js +1 -0
  233. package/dist/post-components/p-66552bf5.entry.js +1 -0
  234. package/dist/post-components/{p-a72cb18c.js → p-68defca9.js} +1 -1
  235. package/dist/post-components/p-74dbfcd3.js +1 -0
  236. package/dist/post-components/p-74e13cb1.js +1 -0
  237. package/dist/post-components/p-8abc347f.js +1 -0
  238. package/dist/post-components/p-8fe69fae.js +1 -0
  239. package/dist/post-components/p-902e52fb.entry.js +1 -0
  240. package/dist/post-components/p-9bf305da.entry.js +1 -0
  241. package/dist/post-components/{p-d6449a93.entry.js → p-a680d8b0.entry.js} +1 -1
  242. package/dist/post-components/p-a7199df3.js +1 -0
  243. package/dist/post-components/p-a7683dcd.entry.js +1 -0
  244. package/dist/post-components/p-aaef3917.js +1 -0
  245. package/dist/post-components/p-ad2a716a.entry.js +1 -0
  246. package/dist/post-components/p-b5758f64.js +1 -0
  247. package/dist/post-components/{p-92f8803c.entry.js → p-b64f5ba4.entry.js} +1 -1
  248. package/dist/post-components/p-ce4a94d4.entry.js +1 -0
  249. package/dist/post-components/p-d9833667.js +2 -0
  250. package/dist/post-components/p-dc8a4c6f.js +1 -0
  251. package/dist/post-components/p-e725b6f4.js +1 -0
  252. package/dist/post-components/p-ecc6a8fa.entry.js +1 -0
  253. package/dist/post-components/p-fed91ff7.entry.js +1 -0
  254. package/dist/post-components/post-components.esm.js +1 -1
  255. package/dist/types/components/post-header/post-header.d.ts +11 -2
  256. package/dist/types/components/post-language-switch/post-language-switch.d.ts +1 -1
  257. package/dist/types/components/post-linkarea/post-linkarea.d.ts +5 -0
  258. package/dist/types/components/post-mainnavigation/post-mainnavigation.d.ts +57 -3
  259. package/dist/types/components/post-megadropdown/post-megadropdown.d.ts +26 -12
  260. package/dist/types/components/post-popovercontainer/post-popovercontainer.d.ts +4 -0
  261. package/dist/types/components.d.ts +49 -23
  262. package/dist/types/index.d.ts +3 -2
  263. package/dist/types/stencil-public-runtime.d.ts +6 -0
  264. package/loaders/index.d.ts +2 -0
  265. package/loaders/index.js +3 -2
  266. package/loaders/{post-menu-trigger2.js → p-15877641.js} +14 -8
  267. package/loaders/p-3aba7629.js +29 -0
  268. package/loaders/p-3e8554e7.js +1646 -0
  269. package/{dist/components/post-menu-item2.js → loaders/p-4bbdde2b.js} +4 -4
  270. package/loaders/{post-icon2.js → p-51b50ca3.js} +35 -14
  271. package/loaders/{post-collapsible-trigger2.js → p-5366ff92.js} +11 -8
  272. package/loaders/{index2.js → p-56ad4838.js} +3 -3
  273. package/{dist/components/post-menu2.js → loaders/p-7202d5d4.js} +19 -36
  274. package/loaders/p-74e13cb1.js +3 -0
  275. package/loaders/{post-breadcrumb-item2.js → p-9e7120c3.js} +10 -7
  276. package/loaders/{check-non-empty.js → p-b095519d.js} +1 -1
  277. package/loaders/{post-collapsible2.js → p-c2033fcd.js} +9 -6
  278. package/{dist/components/post-accordion-item2.js → loaders/p-e57c041b.js} +22 -15
  279. package/{dist/components/post-popovercontainer2.js → loaders/p-f59c8544.js} +25 -10
  280. package/loaders/p-f7b9f90a.js +135 -0
  281. package/loaders/post-accordion-item.js +1 -1
  282. package/loaders/post-accordion.js +14 -8
  283. package/loaders/post-avatar.js +25 -13
  284. package/loaders/post-back-to-top.js +15 -11
  285. package/loaders/post-banner.js +36 -22
  286. package/loaders/post-breadcrumb-item.js +1 -1
  287. package/loaders/post-breadcrumb.js +26 -20
  288. package/loaders/post-card-control.js +49 -18
  289. package/loaders/post-closebutton.js +5 -5
  290. package/loaders/post-collapsible-trigger.js +1 -1
  291. package/loaders/post-collapsible.js +1 -1
  292. package/loaders/post-footer.js +13 -10
  293. package/loaders/post-header.js +65 -145
  294. package/loaders/post-icon.js +1 -1
  295. package/loaders/post-language-option.js +27 -11
  296. package/loaders/post-language-switch.js +28 -16
  297. package/loaders/post-linkarea.d.ts +11 -0
  298. package/loaders/post-linkarea.js +47 -0
  299. package/loaders/post-list-item.js +3 -3
  300. package/loaders/post-list.js +17 -8
  301. package/loaders/post-logo.js +9 -6
  302. package/loaders/post-mainnavigation.js +193 -9
  303. package/loaders/post-megadropdown-trigger.js +15 -9
  304. package/loaders/post-megadropdown.js +108 -51
  305. package/loaders/post-menu-item.js +1 -1
  306. package/loaders/post-menu-trigger.js +1 -1
  307. package/loaders/post-menu.js +1 -1
  308. package/loaders/post-popover.js +21 -9
  309. package/loaders/post-popovercontainer.js +1 -1
  310. package/loaders/post-rating.js +23 -10
  311. package/loaders/post-tab-header.js +11 -8
  312. package/loaders/post-tab-panel.js +10 -7
  313. package/loaders/post-tabs.js +12 -6
  314. package/loaders/post-tag.js +20 -9
  315. package/loaders/post-togglebutton.js +9 -6
  316. package/loaders/post-tooltip.js +21 -10
  317. package/package.json +10 -11
  318. package/dist/cjs/post-back-to-top-7efd1066.js +0 -76
  319. package/dist/cjs/post-banner-a6808d7d.js +0 -96
  320. package/dist/components/package.js +0 -3
  321. package/dist/components/post-banner2.js +0 -131
  322. package/dist/components/post-header2.js +0 -279
  323. package/dist/components/post-mainnavigation2.js +0 -53
  324. package/dist/components/post-megadropdown2.js +0 -111
  325. package/dist/esm/package-495dba42.js +0 -3
  326. package/dist/esm/post-back-to-top-e422c426.js +0 -74
  327. package/dist/esm/post-banner-7385397e.js +0 -94
  328. package/dist/post-components/p-0b613350.js +0 -1
  329. package/dist/post-components/p-0e216cc4.js +0 -2
  330. package/dist/post-components/p-20e1b680.js +0 -1
  331. package/dist/post-components/p-29bc8ddc.entry.js +0 -1
  332. package/dist/post-components/p-2b4c7ec7.entry.js +0 -1
  333. package/dist/post-components/p-2f327006.entry.js +0 -1
  334. package/dist/post-components/p-3632ace7.js +0 -1
  335. package/dist/post-components/p-3a978ea9.entry.js +0 -1
  336. package/dist/post-components/p-3d4fdde0.js +0 -1
  337. package/dist/post-components/p-427132e3.entry.js +0 -1
  338. package/dist/post-components/p-445dfa96.js +0 -1
  339. package/dist/post-components/p-4c0c13a9.js +0 -1
  340. package/dist/post-components/p-5384e6f4.js +0 -1
  341. package/dist/post-components/p-5630677a.entry.js +0 -1
  342. package/dist/post-components/p-5e5ee06d.entry.js +0 -1
  343. package/dist/post-components/p-68c43ef0.entry.js +0 -1
  344. package/dist/post-components/p-6e39bb59.entry.js +0 -1
  345. package/dist/post-components/p-6fede961.js +0 -1
  346. package/dist/post-components/p-72a5ee9b.js +0 -1
  347. package/dist/post-components/p-72d9d594.entry.js +0 -1
  348. package/dist/post-components/p-85bf673e.entry.js +0 -1
  349. package/dist/post-components/p-8decb072.entry.js +0 -1
  350. package/dist/post-components/p-9596c7d6.js +0 -1
  351. package/dist/post-components/p-975b30f5.js +0 -1
  352. package/dist/post-components/p-9a50697e.entry.js +0 -1
  353. package/dist/post-components/p-aaca7ca7.js +0 -1
  354. package/dist/post-components/p-ac2189b7.js +0 -1
  355. package/dist/post-components/p-afe3b28e.js +0 -1
  356. package/dist/post-components/p-b129c166.js +0 -1
  357. package/dist/post-components/p-bd49bb7e.entry.js +0 -1
  358. package/dist/post-components/p-c043686c.entry.js +0 -1
  359. package/dist/post-components/p-c8544b65.js +0 -1
  360. package/dist/post-components/p-c9f65844.entry.js +0 -1
  361. package/dist/post-components/p-f7c5b0c2.js +0 -1
  362. package/loaders/package.js +0 -3
  363. /package/dist/components/{heading-levels.js → p-247a1668.js} +0 -0
  364. /package/dist/components/{constants.js → p-440193f4.js} +0 -0
  365. /package/dist/components/{slide.js → p-4af6dbed.js} +0 -0
  366. /package/dist/components/{index.browser.js → p-5959f2bd.js} +0 -0
  367. /package/dist/components/{fade.js → p-64e3de38.js} +0 -0
  368. /package/dist/components/{check-type.js → p-8562c7dc.js} +0 -0
  369. /package/dist/components/{attribute-observer.js → p-9748a355.js} +0 -0
  370. /package/dist/components/{check-one-of.js → p-bacd3e2c.js} +0 -0
  371. /package/dist/components/{debounce.js → p-e1baac59.js} +0 -0
  372. /package/dist/components/{get-root.js → p-fc91cbc2.js} +0 -0
  373. /package/loaders/{heading-levels.js → p-247a1668.js} +0 -0
  374. /package/loaders/{constants.js → p-440193f4.js} +0 -0
  375. /package/loaders/{slide.js → p-4af6dbed.js} +0 -0
  376. /package/loaders/{index.browser.js → p-5959f2bd.js} +0 -0
  377. /package/loaders/{fade.js → p-64e3de38.js} +0 -0
  378. /package/loaders/{check-type.js → p-8562c7dc.js} +0 -0
  379. /package/loaders/{attribute-observer.js → p-9748a355.js} +0 -0
  380. /package/loaders/{check-one-of.js → p-bacd3e2c.js} +0 -0
  381. /package/loaders/{debounce.js → p-e1baac59.js} +0 -0
  382. /package/loaders/{get-root.js → p-fc91cbc2.js} +0 -0
@@ -0,0 +1,168 @@
1
+ import { p as proxyCustomElement, H, d as createEvent, h, c as Host } from './p-3e8554e7.js';
2
+ import { g as getFocusableChildren } from './p-3aba7629.js';
3
+
4
+ const postMegadropdownCss = "@keyframes slide-in{0%{transform:translateX(100%)}100%{transform:translateX(0%)}}@keyframes slide-out{from{transform:translateX(0%)}to{transform:translateX(100%)}}@keyframes slide-down{from{transform:translateY(-100%)}to{transform:translateY(0%)}}@keyframes slide-up{0%{transform:translateY(0%)}100%{transform:translateY(-100%)}}*,::before,::after{box-sizing:border-box}.megadropdown-container{--post-main-header-height:56px;--post-global-header-height:72px;--post-header-height:calc(var(--post-global-header-height) + var(--post-main-header-height));box-shadow:0 8px 6px rgba(0,0,0,.16);position:absolute;background-color:#fafafa;border:none;z-index:1;border-top:1px solid #e1e0dc;width:100%;top:100%;left:0;border-radius:0}.megadropdown-container.slide-in{animation:slide-down 350ms forwards}.megadropdown-container.slide-out{animation:slide-up 350ms forwards}@media screen and (max-width: 1023.98px){.megadropdown-container{--post-global-header-height:64px;z-index:4;top:0 !important;left:0;width:100%;position:fixed;height:calc(100vh - var(--post-header-height));max-height:calc(100vh - var(--header-height));border-top:unset;overflow:auto}.megadropdown-container.slide-in{animation:slide-in 350ms forwards}.megadropdown-container.slide-out{animation:slide-out 350ms forwards}}.megadropdown{padding:31px 40px 40px;background-color:#fafafa}@media screen and (max-width: 1023.98px){.megadropdown{padding:16px 32px 24px}}@media screen and (max-width: 599.98px){.megadropdown{padding-inline:16px}}.megadropdown .megadropdown-content{gap:1.5rem;display:grid;grid-template-columns:repeat(auto-fit, minmax(min(15vw, 100%), 1fr));grid-auto-rows:1fr auto;grid-auto-flow:dense}@media screen and (max-width: 1023.98px){.megadropdown .megadropdown-content{grid-template-columns:repeat(auto-fit, minmax(min(35vw, 100%), 1fr))}}@media screen and (max-width: 599.98px){.megadropdown .megadropdown-content{grid-template-columns:1fr}}.megadropdown h2{display:none;margin-top:0;margin-bottom:8px;font-weight:900}.megadropdown h2 a{text-decoration:none;font-weight:inherit;border-bottom:0;border-top:0}@media screen and (max-width: 1023.98px){.megadropdown h2{display:block;font-size:1.25rem}}@media screen and (max-width: 599.98px){.megadropdown h2{font-size:1.125rem}}.megadropdown post-list{display:grid;grid-row:span 2;grid-template-rows:subgrid;row-gap:0px}.megadropdown post-list>[role=list]{flex-direction:unset;display:unset}.megadropdown post-list>*{width:100%}.megadropdown post-list .list-title{display:flex;flex-direction:column-reverse;height:100%}.megadropdown post-list .list-title h3{font-size:20px;display:block;font-weight:900}.megadropdown post-list .list-title h3:not(:has(a)){padding:15px 12px 14px 8px;border-bottom:1px solid #050400}.megadropdown post-list .list-title h3 a{padding-block:15px 14px;padding-inline-start:8px;border-radius:0;text-decoration:none;font-size:inherit;display:flex;align-items:center;justify-content:space-between;min-height:53px;width:100%;min-width:100%;height:var(--post-core-dimension-48);padding-inline-end:calc(var(--post-core-dimension-6) + var(--post-core-dimension-24) + var(--post-core-dimension-16));gap:var(--post-core-dimension-16);font-weight:var(--post-core-font-weight-400);position:relative;height:unset;font-weight:900}.megadropdown post-list .list-title h3 a::before{content:\"\";background-color:currentColor;bottom:0;width:100%;height:var(--post-core-dimension-1);position:absolute;left:0}.megadropdown post-list .list-title h3 a:hover::before{height:var(--post-core-dimension-3)}.megadropdown post-list .list-title h3 a:hover::after{content:\"\";display:block;margin-right:calc((var(--post-core-dimension-24) + var(--post-core-dimension-16))*-1);mask-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath d='m31.95 16-9.11 9.11c-.2.2-.45.29-.71.29s-.51-.1-.71-.29a.996.996 0 0 1 0-1.41l6.69-6.69H-.05v-2h28.17l-6.69-6.69a.996.996 0 1 1 1.41-1.41l9.11 9.11Z'%3E%3C/path%3E%3C/svg%3E\");background-color:currentColor;color:currentColor;forced-color-adjust:preserve-parent-color;width:var(--post-core-dimension-20);min-width:var(--post-core-dimension-20);height:var(--post-core-dimension-20)}@media screen and (max-width: 1023.98px){.megadropdown post-list .list-title h3{font-size:1rem}.megadropdown post-list .list-title h3:not(:has(a)){padding:15px 12px 14px 8px;border-bottom:1px solid #050400}}@media screen and (max-width: 599.98px){.megadropdown post-list .list-title h3{font-size:.875rem}}.megadropdown post-list-item>a{padding-block:13px 12px;padding-inline-start:8px;display:flex;text-decoration:none;width:100%;min-width:100%;height:auto;min-height:48px}.megadropdown post-list-item>a:hover{border-block-width:0}@media screen and (min-width: 1024px){.megadropdown post-list-item>a{font-size:1.25rem}}@media screen and (max-width: 1023.98px){.megadropdown post-list-item>a{padding-block:12px 11px}}@media screen and (max-width: 599.98px){.megadropdown post-list-item>a{font-size:.875rem}}.megadropdown .back-button{display:none;margin-bottom:2rem}.megadropdown .back-button .btn{width:auto}@media screen and (max-width: 1023.98px){.megadropdown .back-button{display:block}}.megadropdown .close-button{position:absolute;top:1rem;right:1rem}@media screen and (max-width: 1023.98px){.megadropdown .close-button{display:none}}";
5
+ const PostMegadropdownStyle0 = postMegadropdownCss;
6
+
7
+ const PostMegadropdown = /*@__PURE__*/ proxyCustomElement(class PostMegadropdown extends H {
8
+ constructor() {
9
+ super();
10
+ this.__registerHost();
11
+ this.postToggleMegadropdown = createEvent(this, "postToggleMegadropdown", 7);
12
+ }
13
+ header;
14
+ firstFocusableEl;
15
+ lastFocusableEl;
16
+ device;
17
+ get host() { return this; }
18
+ /** Tracks the currently active dropdown instance. */
19
+ static activeDropdown = null;
20
+ /**
21
+ * Holds the current visibility state of the dropdown.
22
+ * This state is internally managed to track whether the dropdown is open (`true`) or closed (`false`),
23
+ * and updates automatically when the dropdown is toggled.
24
+ */
25
+ isVisible = false;
26
+ /** Holds the current animation class. */
27
+ animationClass = null;
28
+ /**
29
+ * Emits when the dropdown is shown or hidden.
30
+ * The event payload is a boolean: `true` when the dropdown was opened, `false` when it was closed.
31
+ **/
32
+ postToggleMegadropdown;
33
+ disconnectedCallback() {
34
+ this.removeOutsideClickListener();
35
+ if (PostMegadropdown.activeDropdown === this) {
36
+ PostMegadropdown.activeDropdown = null;
37
+ }
38
+ }
39
+ componentWillRender() {
40
+ this.getFocusableElements();
41
+ }
42
+ /**
43
+ * Toggles the dropdown visibility based on its current state.
44
+ */
45
+ async toggle() {
46
+ if (this.isVisible) {
47
+ this.hide();
48
+ }
49
+ else {
50
+ await this.show();
51
+ }
52
+ }
53
+ /**
54
+ * Displays the dropdown.
55
+ */
56
+ async show() {
57
+ if (PostMegadropdown.activeDropdown && PostMegadropdown.activeDropdown !== this) {
58
+ // Close the previously active dropdown without animation
59
+ PostMegadropdown.activeDropdown.forceClose();
60
+ }
61
+ this.isVisible = true;
62
+ this.host.addEventListener('keydown', e => this.keyboardHandler(e));
63
+ this.animationClass = 'slide-in';
64
+ PostMegadropdown.activeDropdown = this;
65
+ this.postToggleMegadropdown.emit(this.isVisible);
66
+ this.addOutsideClickListener();
67
+ }
68
+ /**
69
+ * Hides the dropdown with an animation.
70
+ */
71
+ async hide() {
72
+ this.animationClass = 'slide-out';
73
+ this.host.removeEventListener('keydown', e => this.keyboardHandler(e));
74
+ }
75
+ connectedCallback() {
76
+ this.header = this.host.closest('post-header');
77
+ if (this.header) {
78
+ this.header.addEventListener('postUpdateDevice', (event) => (this.device = event.detail));
79
+ }
80
+ }
81
+ /**
82
+ * Forces the dropdown to close without animation.
83
+ */
84
+ forceClose() {
85
+ this.isVisible = false;
86
+ this.animationClass = null;
87
+ this.postToggleMegadropdown.emit(this.isVisible);
88
+ this.removeOutsideClickListener();
89
+ }
90
+ handleAnimationEnd() {
91
+ if (this.animationClass === 'slide-out') {
92
+ this.isVisible = false;
93
+ this.animationClass = null;
94
+ this.postToggleMegadropdown.emit(this.isVisible);
95
+ this.removeOutsideClickListener();
96
+ }
97
+ }
98
+ handleClickOutside = (event) => {
99
+ const target = event.target;
100
+ if (this.host.contains(target)) {
101
+ return;
102
+ }
103
+ if (target instanceof H) {
104
+ const trigger = target.closest('post-megadropdown-trigger');
105
+ if (trigger) {
106
+ const targetDropdownId = trigger.getAttribute('for');
107
+ if (targetDropdownId !== this.host.id) {
108
+ return;
109
+ }
110
+ }
111
+ }
112
+ this.hide();
113
+ };
114
+ addOutsideClickListener() {
115
+ document.addEventListener('mousedown', this.handleClickOutside);
116
+ }
117
+ removeOutsideClickListener() {
118
+ document.removeEventListener('mousedown', this.handleClickOutside);
119
+ }
120
+ getFocusableElements() {
121
+ const focusableEls = Array.from(this.host.querySelectorAll('post-list-item, h3, .back-button'));
122
+ const focusableChildren = focusableEls.flatMap(el => Array.from(getFocusableChildren(el)));
123
+ this.firstFocusableEl = focusableChildren[0];
124
+ this.lastFocusableEl = focusableChildren[focusableChildren.length - 1];
125
+ }
126
+ // Loop through the focusable children
127
+ keyboardHandler(e) {
128
+ if (e.key === 'Tab' && this.device !== 'desktop') {
129
+ if (e.shiftKey && document.activeElement === this.firstFocusableEl) {
130
+ // If back tab (TAB + Shift) and first element is focused, focus goes to the last element of the megadropdown
131
+ e.preventDefault();
132
+ this.lastFocusableEl.focus();
133
+ }
134
+ else if (!e.shiftKey && document.activeElement === this.lastFocusableEl) {
135
+ // If TAB and last element is focused, focus goes back to the first element of the megadropdown
136
+ e.preventDefault();
137
+ this.firstFocusableEl.focus();
138
+ }
139
+ }
140
+ }
141
+ render() {
142
+ const containerStyle = this.isVisible ? {} : { display: 'none' };
143
+ return (h(Host, { key: '5aa08b01be715325182c245e1b0ae2456bcc5df6' }, h("div", { key: '0737c9368ecbffac59bbdf47fabac3f3b94ae7bb', class: `megadropdown-container ${this.animationClass || ''}`, style: containerStyle, onAnimationEnd: () => this.handleAnimationEnd() }, h("div", { key: 'efe49f3f9cdcd99e2feca78b772c944405e19f21', class: "megadropdown" }, h("div", { key: '14dd7ff2f7e7b1eb91f2673a25d7ccafffe4f9d0', onClick: () => this.hide(), class: "back-button" }, h("slot", { key: '554e30e6408c0bef0549f5e2c31dcd8b90ceee40', name: "back-button" })), h("div", { key: '4e7335152d7b6649918adf075213ebbf8b8ddeaa', onClick: () => this.hide(), class: "close-button" }, h("slot", { key: 'db90f3a5334ce723c0ee672a96167197ca25b545', name: "close-button" })), h("slot", { key: 'b11b1d16147f88103f2eb24c8dd21394de53f69c', name: "megadropdown-title" }), h("div", { key: '6d837c1a70f66f00097fb531058750fbac6fd41a', class: "megadropdown-content" }, h("slot", { key: 'be685185f04e44d867167f918494d086856b5928' }))))));
144
+ }
145
+ static get style() { return PostMegadropdownStyle0; }
146
+ }, [4, "post-megadropdown", {
147
+ "device": [32],
148
+ "isVisible": [32],
149
+ "animationClass": [32],
150
+ "toggle": [64],
151
+ "show": [64],
152
+ "hide": [64]
153
+ }]);
154
+ function defineCustomElement() {
155
+ if (typeof customElements === "undefined") {
156
+ return;
157
+ }
158
+ const components = ["post-megadropdown"];
159
+ components.forEach(tagName => { switch (tagName) {
160
+ case "post-megadropdown":
161
+ if (!customElements.get(tagName)) {
162
+ customElements.define(tagName, PostMegadropdown);
163
+ }
164
+ break;
165
+ } });
166
+ }
167
+
168
+ export { PostMegadropdown as P, defineCustomElement as d };
@@ -1,8 +1,8 @@
1
- import { proxyCustomElement, HTMLElement as HTMLElement$1, h, Host } from '@stencil/core/internal/client';
2
- import { v as version$1 } from './package.js';
3
- import { g as getAttributeObserver } from './attribute-observer.js';
4
- import { e as checkEmptyOrType } from './index2.js';
5
- import { d as defineCustomElement$1 } from './post-popovercontainer2.js';
1
+ import { p as proxyCustomElement, H, h, c as Host } from './p-3e8554e7.js';
2
+ import { v as version$1 } from './p-74e13cb1.js';
3
+ import { g as getAttributeObserver } from './p-9748a355.js';
4
+ import { e as checkEmptyOrType } from './p-eabb09ad.js';
5
+ import { d as defineCustomElement$1 } from './p-f59c8544.js';
6
6
 
7
7
  var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
8
8
 
@@ -4864,18 +4864,29 @@ const patchAccessibilityFeatures = (trigger) => {
4864
4864
  };
4865
4865
  // Initialize a mutation observer for patching accessibility features
4866
4866
  const triggerObserver = getAttributeObserver(tooltipTargetAttribute, patchAccessibilityFeatures);
4867
- const PostTooltip = /*@__PURE__*/ proxyCustomElement(class PostTooltip extends HTMLElement$1 {
4867
+ const PostTooltip = /*@__PURE__*/ proxyCustomElement(class PostTooltip extends H {
4868
4868
  constructor() {
4869
4869
  super();
4870
4870
  this.__registerHost();
4871
4871
  this.__attachShadow();
4872
- this.placement = 'top';
4873
- this.arrow = true;
4874
- this.delayed = false;
4875
4872
  }
4876
4873
  popoverRef;
4877
4874
  wasOpenedByFocus = false;
4878
4875
  get host() { return this; }
4876
+ /**
4877
+ * Defines the placement of the tooltip according to the floating-ui options available at https://floating-ui.com/docs/computePosition#placement.
4878
+ * Tooltips are automatically flipped to the opposite side if there is not enough available space and are shifted
4879
+ * towards the viewport if they would overlap edge boundaries.
4880
+ */
4881
+ placement = 'top';
4882
+ /**
4883
+ * Wheter or not to display a little pointer arrow
4884
+ */
4885
+ arrow = true;
4886
+ /**
4887
+ * If `true`, the tooltip is displayed a few milliseconds after it is triggered
4888
+ */
4889
+ delayed = false;
4879
4890
  validateDelayed() {
4880
4891
  checkEmptyOrType(this.delayed, 'boolean', 'The post-tooltip "delayed" property should be a boolean.');
4881
4892
  }
@@ -4991,7 +5002,7 @@ const PostTooltip = /*@__PURE__*/ proxyCustomElement(class PostTooltip extends H
4991
5002
  }
4992
5003
  render() {
4993
5004
  const popoverClass = `${this.arrow ? ' has-arrow' : ''}`;
4994
- return (h(Host, { key: '492f3f8b1b323417304ffba6c93f277c18f5b3d8', "data-version": version$1, role: "tooltip", onPointerOver: this.handleInterest, onPointerOut: this.handleInterestLost, onFocusIn: this.handleInterest, onFocusOut: this.handleInterestLost }, h("post-popovercontainer", { key: '1b25c36c8351f0471e9acdf1fdf3073fa59683da', class: popoverClass, arrow: this.arrow, placement: this.placement, ref: (el) => (this.popoverRef = el) }, h("slot", { key: '0c1f7d6c81e214155976d1fb6151ec0f97724724' }))));
5005
+ return (h(Host, { key: 'bda6e8f41cc55d14f11bd76d7a5bde9c3d7e8817', "data-version": version$1, role: "tooltip", onPointerOver: this.handleInterest, onPointerOut: this.handleInterestLost, onFocusIn: this.handleInterest, onFocusOut: this.handleInterestLost }, h("post-popovercontainer", { key: '090506a3d10cafa28d296113b09dfd1a2965dfa5', class: popoverClass, arrow: this.arrow, placement: this.placement, ref: (el) => (this.popoverRef = el) }, h("slot", { key: '9d8ff88355510ec1a56169158e3cf503a8ef8482' }))));
4995
5006
  }
4996
5007
  static get watchers() { return {
4997
5008
  "delayed": ["validateDelayed"]
@@ -1,18 +1,24 @@
1
- import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
- import { v as version } from './package.js';
3
- import { c as checkType } from './check-type.js';
1
+ import { p as proxyCustomElement, H, h, c as Host } from './p-3e8554e7.js';
2
+ import { v as version } from './p-74e13cb1.js';
3
+ import { c as checkType } from './p-8562c7dc.js';
4
4
 
5
- const postMegadropdownTriggerCss = "post-megadropdown-trigger{width:100%}";
5
+ const postMegadropdownTriggerCss = "post-megadropdown-trigger{width:100%;position:relative;z-index:3}";
6
6
  const PostMegadropdownTriggerStyle0 = postMegadropdownTriggerCss;
7
7
 
8
- const PostMegadropdownTrigger = /*@__PURE__*/ proxyCustomElement(class PostMegadropdownTrigger extends HTMLElement {
8
+ const PostMegadropdownTrigger = /*@__PURE__*/ proxyCustomElement(class PostMegadropdownTrigger extends H {
9
9
  constructor() {
10
10
  super();
11
11
  this.__registerHost();
12
- this.for = undefined;
13
- this.ariaExpanded = false;
14
12
  }
13
+ /**
14
+ * ID of the mega dropdown element that this trigger is linked to. Used to open and close the specified mega dropdown.
15
+ */
16
+ for;
15
17
  get host() { return this; }
18
+ /**
19
+ * Manages the accessibility attribute `aria-expanded` to indicate whether the associated mega dropdown is expanded or collapsed.
20
+ */
21
+ ariaExpanded = false;
16
22
  /**
17
23
  * Reference to the slotted button within the trigger, if present.
18
24
  * Used to manage click and key events for mega dropdown control.
@@ -33,7 +39,7 @@ const PostMegadropdownTrigger = /*@__PURE__*/ proxyCustomElement(class PostMegad
33
39
  }
34
40
  handleToggle() {
35
41
  if (this.megadropdown) {
36
- this.megadropdown.toggle(this.host);
42
+ this.megadropdown.toggle();
37
43
  }
38
44
  else {
39
45
  console.warn(`No post-megadropdown found with ID: ${this.for}`);
@@ -62,7 +68,7 @@ const PostMegadropdownTrigger = /*@__PURE__*/ proxyCustomElement(class PostMegad
62
68
  }
63
69
  }
64
70
  render() {
65
- return (h(Host, { key: 'ba9b6922d4f4eac596f7d1310a5a1bf534b156d8', "data-version": version, "tab-index": "-1" }, h("button", { key: '5fe4ea7f385897606f472ea72be84399e76550e2' }, h("slot", { key: '333f583f0db191599c4be9be9647789b2ea1ecaf' }))));
71
+ return (h(Host, { key: '2e009cb0dbfd81785d3a8ce5802a4fab0e84a52e', "data-version": version, "tab-index": "-1" }, h("button", { key: 'd77d9a5eb5786a63cf7453c639647adc705892bc' }, h("slot", { key: '19f4b17dc2d073b0770c33d6acfb763c1e47735a' }))));
66
72
  }
67
73
  static get watchers() { return {
68
74
  "for": ["validateControlFor"]
@@ -1,13 +1,13 @@
1
- import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
- import { v as version } from './package.js';
1
+ import { p as proxyCustomElement, H, h, c as Host } from './p-3e8554e7.js';
2
+ import { v as version } from './p-74e13cb1.js';
3
3
 
4
- const PostMenuItem = /*@__PURE__*/ proxyCustomElement(class PostMenuItem extends HTMLElement {
4
+ const PostMenuItem = /*@__PURE__*/ proxyCustomElement(class PostMenuItem extends H {
5
5
  constructor() {
6
6
  super();
7
7
  this.__registerHost();
8
8
  }
9
9
  render() {
10
- return (h(Host, { key: '1cd717c2bbc991b33acba0bbfa5d5a2412f6dcc7', role: "menuitem", "data-version": version }, h("slot", { key: 'fe09373b79d299f21ebfdf596bab4d4bc30a9060' })));
10
+ return (h(Host, { key: '376ce17a520b6cb74c55c009843df878f99ef411', role: "menuitem", "data-version": version }, h("slot", { key: 'e489c5c09f1527e527e052e9f4349c5b26db6ea9' })));
11
11
  }
12
12
  }, [4, "post-menu-item"]);
13
13
  function defineCustomElement() {
@@ -1,6 +1,6 @@
1
- import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
- import { v as version } from './package.js';
3
- import { c as checkNonEmpty } from './check-non-empty.js';
1
+ import { p as proxyCustomElement, H, h, c as Host } from './p-3e8554e7.js';
2
+ import { v as version } from './p-74e13cb1.js';
3
+ import { c as checkNonEmpty } from './p-b095519d.js';
4
4
 
5
5
  const postAvatarCss = "/*!\n * Copyright 2021 by Swiss Post, Information Technology\n */:host{--post-avatar-bg:var(--post-scheme-color-interactive-primary-enabled-bg2);--post-avatar-fg:var(--post-scheme-color-interactive-primary-enabled-fg3);display:inline-flex;position:relative;width:var(--post-device-sizing-interactive-icon-size3);height:var(--post-device-sizing-interactive-icon-size3);background-color:var(--post-scheme-color-interactive-primary-enabled-stroke3);border:var(--post-device-border-width-default) solid var(--post-scheme-color-interactive-primary-enabled-stroke3);border-radius:var(--post-device-border-radius-round);font-size:var(--post-device-font-size-8);vertical-align:top;line-height:1}:host::after{display:block;content:\"\";position:absolute;inset:0;z-index:1;border-radius:inherit}*,*::before,*::after{box-sizing:border-box}slot,img,::slotted(img){display:block;width:100%;height:100%}img,::slotted(img){border-radius:var(--post-device-border-radius-round)}::slotted(:not(img)){display:none !important}.initials{display:flex;justify-content:center;align-items:center;position:relative;z-index:2;width:100%;height:100%;background-color:var(--post-avatar-bg);border-radius:var(--post-device-border-radius-round);color:var(--post-avatar-fg);text-transform:uppercase}.initials span{width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border:0 !important}.initials span:not(caption){position:absolute !important}";
6
6
  const PostAvatarStyle0 = postAvatarCss;
@@ -17,23 +17,35 @@ var AvatarType;
17
17
  AvatarType["Initials"] = "initials";
18
18
  AvatarType[AvatarType["Null"] = null] = "Null";
19
19
  })(AvatarType || (AvatarType = {}));
20
- const PostAvatar = /*@__PURE__*/ proxyCustomElement(class PostAvatar extends HTMLElement {
20
+ const PostAvatar = /*@__PURE__*/ proxyCustomElement(class PostAvatar extends H {
21
21
  constructor() {
22
22
  super();
23
23
  this.__registerHost();
24
24
  this.__attachShadow();
25
- this.firstname = undefined;
26
- this.lastname = undefined;
27
- this.userid = undefined;
28
- this.email = undefined;
29
- this.slottedImage = undefined;
30
- this.avatarType = null;
31
- this.imageUrl = '';
32
- this.imageAlt = '';
33
- this.initials = '';
34
25
  }
35
26
  static INTERNAL_USERID_IMAGE_SRC = 'https://web.post.ch/UserProfileImage/{userid}.png';
36
27
  get host() { return this; }
28
+ /**
29
+ * Defines the users firstname.
30
+ */
31
+ firstname;
32
+ /**
33
+ * Defines the users lastname.
34
+ */
35
+ lastname;
36
+ /**
37
+ * Defines the company internal userId.<div className="mb-1 banner banner-warning banner-sm">Can only be used on post.ch domains!</div>
38
+ */
39
+ userid;
40
+ /**
41
+ * Defines the users email address associated with a gravatar profile picture.
42
+ */
43
+ email;
44
+ slottedImage;
45
+ avatarType = null;
46
+ imageUrl = '';
47
+ imageAlt = '';
48
+ initials = '';
37
49
  validateFirstname() {
38
50
  checkNonEmpty(this.firstname, 'The `firstname` property of the `post-avatar` is required!');
39
51
  }
@@ -1,20 +1,23 @@
1
- import { proxyCustomElement, HTMLElement } from '@stencil/core/internal/client';
2
- import { v as version } from './package.js';
3
- import { c as checkType } from './check-type.js';
4
- import { c as checkNonEmpty } from './check-non-empty.js';
5
- import { d as debounce } from './debounce.js';
6
- import { g as getRoot } from './get-root.js';
1
+ import { p as proxyCustomElement, H } from './p-3e8554e7.js';
2
+ import { v as version } from './p-74e13cb1.js';
3
+ import { c as checkType } from './p-8562c7dc.js';
4
+ import { c as checkNonEmpty } from './p-b095519d.js';
5
+ import { d as debounce } from './p-e1baac59.js';
6
+ import { g as getRoot } from './p-fc91cbc2.js';
7
7
 
8
- const PostCollapsibleTrigger = /*@__PURE__*/ proxyCustomElement(class PostCollapsibleTrigger extends HTMLElement {
8
+ const PostCollapsibleTrigger = /*@__PURE__*/ proxyCustomElement(class PostCollapsibleTrigger extends H {
9
9
  constructor() {
10
10
  super();
11
11
  this.__registerHost();
12
- this.for = undefined;
13
12
  }
14
13
  trigger;
15
14
  observer = new MutationObserver(() => this.setTrigger());
16
15
  root;
17
16
  get host() { return this; }
17
+ /**
18
+ * Link the trigger to a post-collapsible with this id
19
+ */
20
+ for;
18
21
  /**
19
22
  * Set the "aria-controls" and "aria-expanded" attributes on the trigger to match the state of the controlled post-collapsible
20
23
  */
@@ -0,0 +1,199 @@
1
+ import { p as proxyCustomElement, H, d as createEvent, h, c as Host } from './p-3e8554e7.js';
2
+ import { t as throttle } from './p-f7b9f90a.js';
3
+ import { v as version } from './p-74e13cb1.js';
4
+ import { s as slideUp, a as slideDown } from './p-4af6dbed.js';
5
+ import { g as getFocusableChildren } from './p-3aba7629.js';
6
+
7
+ const postHeaderCss = "*,::before,::after{box-sizing:border-box}:host{z-index:1090;--global-header-height:72px;--global-header-minimal-height:24px;--local-header-height:112px;--local-header-min-height:56px;--header-height:calc(var(--global-header-height) + var(--local-header-height));z-index:1020;position:relative}@media screen and (min-width: 1024px){:host{--global-header-reduced-height:24px;--main-navigation-height:56px}}@media screen and (max-width: 1023.98px){:host{--global-header-height:64px;--local-header-height:48px;--local-header-min-height:48px;--main-navigation-height:0px}}:host(:not(:has([slot=title]))){--local-header-height:var(--main-navigation-height)}:host(:not(:has([slot=title]))) .local-header{padding-block-start:0}:host(:not(:has([slot=title]))) .local-sub{display:none}.d-flex{display:flex}.space-between{justify-content:space-between}.global-header{background-color:#fc0;display:flex;justify-content:space-between;align-items:center;position:sticky;padding-inline:var(--post-core-dimension-4);height:var(--global-header-height)}@media screen and (max-width: 1023.98px){.global-header{z-index:3;inset-block-start:0}}@media screen and (min-width: 1024px){.global-header{z-index:5;padding-inline-end:var(--post-core-dimension-12);inset-block-start:calc((var(--global-header-height) - var(--global-header-reduced-height))*-1)}}slot[name=post-logo]{align-self:flex-end}.global-sub{display:flex;align-items:center;gap:var(--post-core-dimension-24)}.align-end{align-items:flex-end}.logo{flex:1 0 auto;height:var(--global-header-height);width:var(--global-header-height);min-height:var(--global-header-reduced-height);align-self:flex-end}@media screen and (min-width: 1024px){.logo{height:calc(var(--global-header-height) - var(--header-scroll-top))}}::slotted(ul){margin-block:0 !important;list-style:none;display:flex;padding-left:0;gap:1rem;flex-shrink:0 !important}.local-header{display:flex;position:sticky;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--post-core-dimension-8);min-height:var(--local-header-min-height);background:var(--post-core-color-brand-white);transition:box-shadow .2s ease-in-out}@media screen and (min-width: 1024px){.local-header{z-index:3;inset-block-start:calc(-1*(var(--local-header-height) - var(--main-navigation-height)) + var(--global-header-reduced-height));padding-block-start:var(--post-core-dimension-18);box-shadow:var(--post-core-elevation-3)}}@media screen and (max-width: 1023.98px){.local-header{z-index:2;inset-block-start:var(--global-header-height);padding-block:var(--post-core-dimension-9);flex-wrap:wrap}.local-header.local-header-mobile-extended{border-bottom:1px solid var(--post-core-color-sandgrey-012)}.local-header:not(.title-header-mobile-extended){box-shadow:var(--post-core-elevation-3)}}.local-sub{margin-inline-end:var(--post-core-dimension-16)}::slotted(.list-inline){margin:-8px 0 !important;z-index:3 !important;position:relative !important}::slotted(h1){margin:0 !important;flex-shrink:10;z-index:3}@media screen and (min-width: 600px){::slotted(h1){margin-inline-start:var(--post-core-dimension-12) !important}}@media screen and (max-width: 599.98px){::slotted(h1){margin-inline-start:var(--post-core-dimension-8) !important}}@media screen and (min-width: 1024px){::slotted(h1){font-size:var(--post-core-font-size-28) !important}}@media screen and (max-width: 1023.98px){::slotted(h1){font-size:var(--post-core-font-size-20) !important;max-width:calc(100vw - var(--post-core-dimension-8) - var(--post-core-dimension-16))}}@media screen and (min-width: 1024px){.mobile-toggle{display:none}}.navigation{width:100%}@media screen and (min-width: 1024px){.navigation{inset-block-start:var(--global-header-minimal-height)}.navigation::before{display:block;content:\"\";position:absolute;inset:0;z-index:2;background:var(--post-core-color-brand-white)}}@media screen and (max-width: 1023.98px){.navigation{position:fixed;z-index:1;inset-inline:0;background:var(--post-core-color-brand-white);inset-block-end:calc(100vh - var(--header-height))}::slotted(post-mainnavigation),.navigation-footer{display:none;flex-direction:column;padding-block:var(--post-core-dimension-16) var(--post-core-dimension-24);padding-inline:var(--post-core-dimension-32)}.navigation.extended ::slotted(post-mainnavigation),.navigation.extended .navigation-footer{display:flex}.navigation.extended{height:calc(100vh - var(--header-height));display:flex;flex-direction:column}.navigation.extended ::slotted(post-mainnavigation){flex-grow:1 !important}::slotted(post-mainnavigation){background-color:var(--post-core-color-sandgrey-002);gap:var(--post-core-dimension-32)}.navigation-footer{background-color:var(--post-core-color-sandgrey-006);gap:var(--post-core-dimension-24)}}@media screen and (max-width: 599.98px){::slotted(post-mainnavigation),.navigation-footer{padding-inline:var(--post-core-dimension-16)}}";
8
+ const PostHeaderStyle0 = postHeaderCss;
9
+
10
+ const PostHeader = /*@__PURE__*/ proxyCustomElement(class PostHeader extends H {
11
+ constructor() {
12
+ super();
13
+ this.__registerHost();
14
+ this.__attachShadow();
15
+ this.postUpdateDevice = createEvent(this, "postUpdateDevice", 7);
16
+ }
17
+ firstFocusableEl;
18
+ lastFocusableEl;
19
+ scrollParent = null;
20
+ mobileMenu;
21
+ mobileMenuAnimation;
22
+ throttledScroll = () => this.handleScrollEvent();
23
+ throttledResize = throttle(50, () => this.handleResize());
24
+ componentWillRender() {
25
+ this.scrollParent = this.getScrollParent(this.host);
26
+ this.scrollParent.addEventListener('scroll', this.throttledScroll, { passive: true });
27
+ window.addEventListener('resize', this.throttledResize, { passive: true });
28
+ this.handleResize();
29
+ this.handleScrollEvent();
30
+ this.getFocusableElements();
31
+ }
32
+ get host() { return this; }
33
+ device = null;
34
+ mobileMenuExtended = false;
35
+ frozeBody(isMobileMenuExtended) {
36
+ document.body.style.overflow = isMobileMenuExtended ? 'hidden' : '';
37
+ if (isMobileMenuExtended) {
38
+ this.host.addEventListener('keydown', e => {
39
+ this.keyboardHandler(e);
40
+ });
41
+ }
42
+ else {
43
+ this.host.removeEventListener('keydown', e => {
44
+ this.keyboardHandler(e);
45
+ });
46
+ }
47
+ }
48
+ /**
49
+ * An event emitted when the device has changed
50
+ */
51
+ postUpdateDevice;
52
+ /**
53
+ * Toggles the mobile navigation.
54
+ */
55
+ async toggleMobileMenu() {
56
+ if (this.device === 'desktop')
57
+ return;
58
+ this.mobileMenuAnimation = this.mobileMenuExtended
59
+ ? slideUp(this.mobileMenu)
60
+ : slideDown(this.mobileMenu);
61
+ // Update the state of the toggle button
62
+ const menuButton = this.host.querySelector('post-togglebutton');
63
+ menuButton.toggled = !this.mobileMenuExtended;
64
+ // Toggle menu visibility before it slides down and after it slides back up
65
+ if (this.mobileMenuExtended)
66
+ await this.mobileMenuAnimation.finished;
67
+ this.mobileMenuExtended = !this.mobileMenuExtended;
68
+ if (!this.mobileMenuExtended)
69
+ await this.mobileMenuAnimation.finished;
70
+ }
71
+ // Get all the focusable elements in the post-header mobile menu
72
+ getFocusableElements() {
73
+ // Get elements in the correct order (different as the DOM order)
74
+ const focusableEls = [
75
+ ...Array.from(this.host.querySelectorAll('.list-inline:not([slot="meta-navigation"]) > li')),
76
+ ...Array.from(this.host.querySelectorAll('nav > post-list > div > post-list-item, post-mainnavigation > .back-button, post-megadropdown-trigger')),
77
+ ...Array.from(this.host.querySelectorAll('.list-inline[slot="meta-navigation"] > li, post-language-option')),
78
+ ];
79
+ // Add the main toggle menu button to the list of focusable children
80
+ const focusableChildren = [
81
+ this.host.querySelector('post-togglebutton'),
82
+ ...focusableEls.flatMap(el => Array.from(getFocusableChildren(el))),
83
+ ];
84
+ this.firstFocusableEl = focusableChildren[0];
85
+ this.lastFocusableEl = focusableChildren[focusableChildren.length - 1];
86
+ }
87
+ keyboardHandler(e) {
88
+ if (e.key === 'Tab' && this.mobileMenuExtended) {
89
+ if (e.shiftKey && document.activeElement === this.firstFocusableEl) {
90
+ // If back tab (Tab + Shift) and first element is focused, focus goes to the last element of the megadropdown
91
+ e.preventDefault();
92
+ this.lastFocusableEl.focus();
93
+ }
94
+ else if (!e.shiftKey && document.activeElement === this.lastFocusableEl) {
95
+ // If Tab and last element is focused, focus goes back to the first element of the megadropdown
96
+ e.preventDefault();
97
+ this.firstFocusableEl.focus();
98
+ }
99
+ }
100
+ }
101
+ handleScrollEvent() {
102
+ // Credits: "https://github.com/qeremy/so/blob/master/so.dom.js#L426"
103
+ const st = Math.max(0, this.scrollParent instanceof Document
104
+ ? this.scrollParent.documentElement.scrollTop
105
+ : this.scrollParent.scrollTop);
106
+ this.host.style.setProperty('--header-scroll-top', `${st}px`);
107
+ }
108
+ getScrollParent(node) {
109
+ let currentParent = node.parentElement;
110
+ while (currentParent) {
111
+ if (currentParent.nodeName === 'BODY') {
112
+ return document;
113
+ }
114
+ if (this.isScrollable(currentParent)) {
115
+ return currentParent;
116
+ }
117
+ currentParent = currentParent.parentElement;
118
+ }
119
+ return document;
120
+ }
121
+ isScrollable(node) {
122
+ if (!(node instanceof H || node instanceof SVGElement)) {
123
+ return false;
124
+ }
125
+ const style = getComputedStyle(node);
126
+ return ['overflow', 'overflow-x', 'overflow-y'].some(propertyName => {
127
+ const value = style.getPropertyValue(propertyName);
128
+ return value === 'auto' || value === 'scroll';
129
+ });
130
+ }
131
+ handleResize() {
132
+ const previousDevice = this.device;
133
+ let newDevice;
134
+ const width = window?.innerWidth;
135
+ if (width >= 1024) {
136
+ newDevice = 'desktop';
137
+ }
138
+ else if (width >= 600) {
139
+ newDevice = 'tablet';
140
+ }
141
+ else {
142
+ newDevice = 'mobile';
143
+ }
144
+ // Close any open mobile menu
145
+ if (newDevice === 'desktop' && this.mobileMenuExtended) {
146
+ this.toggleMobileMenu();
147
+ this.mobileMenuAnimation.finish(); // no animation
148
+ }
149
+ const mhh = this.host.shadowRoot.querySelector('.local-header')?.clientHeight;
150
+ this.host.style.setProperty('--main-header-height', `${mhh}px`);
151
+ // Apply only on change for doing work only when necessary
152
+ if (newDevice !== previousDevice) {
153
+ this.device = newDevice;
154
+ this.postUpdateDevice.emit(this.device);
155
+ window.requestAnimationFrame(() => {
156
+ this.switchLanguageSwitchMode();
157
+ });
158
+ }
159
+ }
160
+ switchLanguageSwitchMode() {
161
+ const variant = this.device === 'desktop' ? 'menu' : 'list';
162
+ this.host.querySelector('post-language-switch')?.setAttribute('variant', variant);
163
+ }
164
+ renderNavigation() {
165
+ const navigationClasses = ['navigation'];
166
+ if (this.mobileMenuExtended) {
167
+ navigationClasses.push('extended');
168
+ }
169
+ return (h("div", { ref: el => (this.mobileMenu = el), class: navigationClasses.join(' ') }, h("slot", { name: "post-mainnavigation" }), (this.device === 'mobile' || this.device === 'tablet') && (h("div", { class: "navigation-footer" }, h("slot", { name: "meta-navigation" }), h("slot", { name: "post-language-switch" })))));
170
+ }
171
+ render() {
172
+ return (h(Host, { key: 'efbf8028f2abf376f497081996dba759f5885630', version: version }, h("div", { key: 'ecaaea274045453ce869f36e8a1155626b1818ba', class: "global-header" }, h("div", { key: '2fda0d65321ad1cbbc47b731f095e0d9b6694d99', class: "global-sub" }, h("div", { key: '24864d5f18c9d923717cc2e996395cff3bd6ce8b', class: "logo" }, h("slot", { key: 'ba82d7f62bb845732fe6066bcdc7eef15913c9e6', name: "post-logo" }))), h("div", { key: 'a0ddea4e564fca1e286998c73fea75eb8c228428', class: "global-sub" }, this.device === 'desktop' && h("slot", { key: '0d7aa11452eb69fe28914ff7787c6dc206fd4009', name: "meta-navigation" }), h("slot", { key: 'e92b7b9db6e16e8fcecb1ca74efa63942dd542c5', name: "global-controls" }), this.device === 'desktop' && h("slot", { key: 'c68984037a71d5ac54828f6cf2367c3b07e428fc', name: "post-language-switch" }), h("div", { key: '70fb5040dc2f000c2afa286bb673ae9cf88521cf', onClick: () => this.toggleMobileMenu(), class: "mobile-toggle" }, h("slot", { key: '509fb81812262cd9efdb3a562e48f72b0d29e376', name: "post-togglebutton" })))), h("div", { key: '393d1040bad2f85caced5b4a8ff02e30fa5fd5f1', class: 'local-header ' + (this.mobileMenuExtended ? 'local-header-mobile-extended' : '') }, h("slot", { key: '786cc114aae985a0612d3cb044684290e3026462', name: "title" }), h("div", { key: 'd4f68653a09bbf0b222873ed5d23fec6ba9d8f6f', class: "local-sub" }, h("slot", { key: '0ad7dda5490964e9a8eae5e0bf66a117882f7a06', name: "local-controls" }), h("slot", { key: 'bddc01c7696f456c38c200b330767a0f1b353d88' })), this.device === 'desktop' && this.renderNavigation()), this.device !== 'desktop' && this.renderNavigation()));
173
+ }
174
+ static get watchers() { return {
175
+ "mobileMenuExtended": ["frozeBody"]
176
+ }; }
177
+ static get style() { return PostHeaderStyle0; }
178
+ }, [1, "post-header", {
179
+ "device": [32],
180
+ "mobileMenuExtended": [32],
181
+ "toggleMobileMenu": [64]
182
+ }, undefined, {
183
+ "mobileMenuExtended": ["frozeBody"]
184
+ }]);
185
+ function defineCustomElement() {
186
+ if (typeof customElements === "undefined") {
187
+ return;
188
+ }
189
+ const components = ["post-header"];
190
+ components.forEach(tagName => { switch (tagName) {
191
+ case "post-header":
192
+ if (!customElements.get(tagName)) {
193
+ customElements.define(tagName, PostHeader);
194
+ }
195
+ break;
196
+ } });
197
+ }
198
+
199
+ export { PostHeader as P, defineCustomElement as d };