@swisspost/design-system-components 10.0.0-next.39 → 10.0.0-next.41

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 (454) hide show
  1. package/dist/cjs/breakpoints-DIH5Oaz7.js +186 -0
  2. package/dist/cjs/event-from-AKK8RQrn.js +107 -0
  3. package/dist/cjs/{get-root-8102fecd.js → get-root-DmyBVSJ_.js} +1 -1
  4. package/dist/cjs/{index-b60129c4.js → index-CRMt-jq2.js} +1172 -313
  5. package/dist/cjs/index.cjs.js +0 -72
  6. package/dist/cjs/loader.cjs.js +3 -6
  7. package/dist/cjs/{package-29dc73af.js → package-C2pR6Vs2.js} +1 -1
  8. package/dist/cjs/post-accordion_2.cjs.entry.js +183 -0
  9. package/dist/cjs/post-avatar.cjs.entry.js +151 -8
  10. package/dist/cjs/post-back-to-top.cjs.entry.js +86 -9
  11. package/dist/cjs/post-banner.cjs.entry.js +81 -9
  12. package/dist/cjs/post-breadcrumb-item_2.cjs.entry.js +62 -8
  13. package/dist/cjs/post-breadcrumbs.cjs.entry.js +119 -7
  14. package/dist/cjs/post-card-control.cjs.entry.js +283 -8
  15. package/dist/cjs/post-closebutton_15.cjs.entry.js +4376 -30
  16. package/dist/cjs/post-collapsible_2.cjs.entry.js +196 -10
  17. package/dist/cjs/post-components.cjs.js +7 -8
  18. package/dist/cjs/post-footer.cjs.entry.js +59 -8
  19. package/dist/cjs/post-linkarea.cjs.entry.js +24 -6
  20. package/dist/cjs/post-popover.cjs.entry.js +151 -8
  21. package/dist/cjs/post-rating.cjs.entry.js +115 -8
  22. package/dist/cjs/post-tab-header.cjs.entry.js +26 -9
  23. package/dist/cjs/post-tab-panel.cjs.entry.js +28 -9
  24. package/dist/cjs/post-tabs.cjs.entry.js +165 -7
  25. package/dist/cjs/post-tag.cjs.entry.js +50 -8
  26. package/dist/cjs/post-tooltip-trigger.cjs.entry.js +5195 -7
  27. package/dist/cjs/post-tooltip.cjs.entry.js +78 -9
  28. package/dist/collection/collection-manifest.json +4 -4
  29. package/dist/collection/components/post-accordion/post-accordion.css +1 -1
  30. package/dist/collection/components/post-accordion/post-accordion.js +39 -23
  31. package/dist/collection/components/post-accordion-item/post-accordion-item.css +1 -1
  32. package/dist/collection/components/post-accordion-item/post-accordion-item.js +26 -12
  33. package/dist/collection/components/post-avatar/post-avatar.js +12 -9
  34. package/dist/collection/components/post-back-to-top/post-back-to-top.js +4 -3
  35. package/dist/collection/components/post-banner/post-banner.js +18 -9
  36. package/dist/collection/components/post-breadcrumb-item/post-breadcrumb-item.js +4 -6
  37. package/dist/collection/components/post-breadcrumbs/post-breadcrumbs.css +1 -1
  38. package/dist/collection/components/post-breadcrumbs/post-breadcrumbs.js +13 -9
  39. package/dist/collection/components/post-card-control/post-card-control.js +33 -16
  40. package/dist/collection/components/post-collapsible/post-collapsible.js +6 -1
  41. package/dist/collection/components/post-collapsible-trigger/post-collapsible-trigger.js +21 -9
  42. package/dist/collection/components/post-footer/post-footer.css +1 -1
  43. package/dist/collection/components/post-footer/post-footer.js +35 -15
  44. package/dist/collection/components/post-header/post-header.css +1 -1
  45. package/dist/collection/components/post-header/post-header.js +28 -16
  46. package/dist/collection/components/post-icon/post-icon.js +66 -54
  47. package/dist/collection/components/post-language-option/post-language-option.css +1 -1
  48. package/dist/collection/components/post-language-option/post-language-option.js +17 -13
  49. package/dist/collection/components/post-language-switch/post-language-switch.css +1 -1
  50. package/dist/collection/components/post-language-switch/post-language-switch.js +43 -24
  51. package/dist/collection/components/post-linkarea/post-linkarea.js +1 -1
  52. package/dist/collection/components/post-list/post-list.js +13 -4
  53. package/dist/collection/components/post-list-item/post-list-item.js +1 -1
  54. package/dist/collection/components/post-logo/post-logo.js +4 -5
  55. package/dist/collection/components/post-mainnavigation/post-mainnavigation.js +1 -1
  56. package/dist/collection/components/post-megadropdown/post-megadropdown.js +12 -6
  57. package/dist/collection/components/post-megadropdown-trigger/post-megadropdown-trigger.js +34 -20
  58. package/dist/collection/components/post-menu/post-menu.css +1 -1
  59. package/dist/collection/components/post-menu/post-menu.js +43 -21
  60. package/dist/collection/components/post-menu-item/post-menu-item.css +1 -0
  61. package/dist/collection/components/post-menu-item/post-menu-item.js +11 -1
  62. package/dist/collection/components/post-menu-trigger/post-menu-trigger.js +9 -5
  63. package/dist/collection/components/post-popover/post-popover.js +20 -6
  64. package/dist/collection/components/post-popovercontainer/post-popovercontainer.css +1 -1
  65. package/dist/collection/components/post-popovercontainer/post-popovercontainer.js +44 -16
  66. package/dist/collection/components/post-rating/post-rating.js +26 -6
  67. package/dist/collection/components/post-tab-header/post-tab-header.js +4 -6
  68. package/dist/collection/components/post-tab-panel/post-tab-panel.js +4 -6
  69. package/dist/collection/components/post-tabs/post-tabs.js +4 -3
  70. package/dist/collection/components/post-tag/post-tag.js +11 -9
  71. package/dist/collection/components/post-togglebutton/post-togglebutton.js +8 -3
  72. package/dist/collection/components/post-tooltip/post-tooltip.js +25 -7
  73. package/dist/collection/components/post-tooltip-trigger/post-tooltip-trigger.js +20 -12
  74. package/dist/collection/index.js +1 -37
  75. package/dist/collection/utils/breakpoints.js +38 -45
  76. package/dist/collection/utils/event-from.js +103 -0
  77. package/dist/collection/utils/index.js +1 -1
  78. package/dist/components/index.js +2315 -37
  79. package/dist/components/p-1KLiMO0w.js +3 -0
  80. package/dist/components/p-8U5GFtQP.js +105 -0
  81. package/dist/components/{post-menu2.js → p-BLhBouGz.js} +51 -30
  82. package/dist/{esm/index-ffccd040.js → components/p-CV7fm1rW.js} +1 -1
  83. package/dist/components/{post-menu-trigger2.js → p-CaPj3whI.js} +14 -12
  84. package/dist/components/{post-breadcrumb-item2.js → p-Cpaqct04.js} +9 -11
  85. package/dist/components/p-CtNCtg2z.js +114 -0
  86. package/dist/components/p-Cx0AiN2A.js +182 -0
  87. package/{loaders/post-collapsible-trigger2.js → dist/components/p-D3LhzIrC.js} +25 -14
  88. package/dist/components/{get-root.js → p-DBHo9yGF.js} +1 -1
  89. package/dist/components/p-DQuPPEca.js +31 -0
  90. package/dist/components/{post-accordion2.js → p-DlEtlaNu.js} +42 -29
  91. package/dist/components/{post-collapsible2.js → p-DphlfQse.js} +11 -8
  92. package/dist/components/{post-popovercontainer2.js → p-elg4VvHg.js} +246 -278
  93. package/{loaders/post-icon2.js → dist/components/p-fmA57Ivd.js} +52 -54
  94. package/dist/components/post-accordion-item.js +1 -1
  95. package/dist/components/post-accordion.js +1 -1
  96. package/dist/components/post-avatar.js +183 -1
  97. package/dist/components/post-back-to-top.js +115 -1
  98. package/dist/components/post-banner.js +120 -1
  99. package/dist/components/post-breadcrumb-item.js +1 -1
  100. package/dist/components/post-breadcrumbs.js +182 -1
  101. package/dist/components/post-card-control.js +322 -1
  102. package/dist/components/post-closebutton.js +37 -1
  103. package/dist/components/post-collapsible-trigger.js +1 -1
  104. package/dist/components/post-collapsible.js +1 -1
  105. package/dist/components/post-footer.js +112 -1
  106. package/dist/components/post-header.js +273 -1
  107. package/dist/components/post-icon.js +1 -1
  108. package/dist/components/post-language-option.js +96 -1
  109. package/dist/components/post-language-switch.js +154 -1
  110. package/dist/components/post-linkarea.js +41 -1
  111. package/dist/components/post-list-item.js +34 -1
  112. package/dist/components/post-list.js +57 -1
  113. package/dist/components/post-logo.js +54 -1
  114. package/dist/components/post-mainnavigation.js +181 -1
  115. package/dist/components/post-megadropdown-trigger.js +132 -1
  116. package/dist/components/post-megadropdown.js +194 -1
  117. package/dist/components/post-menu-item.js +1 -1
  118. package/dist/components/post-menu-trigger.js +1 -1
  119. package/dist/components/post-menu.js +1 -1
  120. package/dist/components/post-popover.js +184 -1
  121. package/dist/components/post-popovercontainer.js +1 -1
  122. package/dist/components/post-rating.js +148 -1
  123. package/dist/components/post-tab-header.js +48 -1
  124. package/dist/components/post-tab-panel.js +50 -1
  125. package/dist/components/post-tabs.js +186 -1
  126. package/dist/components/post-tag.js +82 -1
  127. package/dist/components/post-togglebutton.js +52 -1
  128. package/dist/components/post-tooltip-trigger.js +5218 -1
  129. package/dist/components/post-tooltip.js +110 -1
  130. package/dist/docs.d.ts +8 -0
  131. package/dist/docs.json +426 -118
  132. package/dist/esm/breakpoints-DyVir0ex.js +182 -0
  133. package/dist/esm/event-from-8U5GFtQP.js +105 -0
  134. package/{loaders/get-root.js → dist/esm/get-root-D9QC9-TY.js} +1 -1
  135. package/{loaders/index2.js → dist/esm/index-BWC0gtGU.js} +1 -1
  136. package/dist/esm/{index-f4d19816.js → index-CVhzhVv0.js} +1169 -309
  137. package/dist/esm/index.js +1 -31
  138. package/dist/esm/loader.js +3 -4
  139. package/dist/esm/package-1KLiMO0w.js +3 -0
  140. package/dist/esm/post-accordion_2.entry.js +180 -0
  141. package/dist/esm/post-avatar.entry.js +154 -5
  142. package/dist/esm/post-back-to-top.entry.js +89 -6
  143. package/dist/esm/post-banner.entry.js +85 -7
  144. package/dist/esm/post-breadcrumb-item_2.entry.js +65 -5
  145. package/dist/esm/post-breadcrumbs.entry.js +123 -5
  146. package/dist/esm/post-card-control.entry.js +286 -5
  147. package/dist/esm/post-closebutton_15.entry.js +4362 -10
  148. package/dist/esm/post-collapsible_2.entry.js +199 -7
  149. package/dist/esm/post-components.js +5 -5
  150. package/dist/esm/post-footer.entry.js +62 -5
  151. package/dist/esm/post-linkarea.entry.js +27 -3
  152. package/dist/esm/post-popover.entry.js +155 -6
  153. package/dist/esm/post-rating.entry.js +118 -5
  154. package/dist/esm/post-tab-header.entry.js +29 -6
  155. package/dist/esm/post-tab-panel.entry.js +31 -6
  156. package/dist/esm/post-tabs.entry.js +169 -5
  157. package/dist/esm/post-tag.entry.js +53 -5
  158. package/dist/esm/post-tooltip-trigger.entry.js +5199 -5
  159. package/dist/esm/post-tooltip.entry.js +81 -6
  160. package/dist/post-components/index.esm.js +0 -1
  161. package/dist/post-components/p-0d08ab13.entry.js +1 -0
  162. package/dist/post-components/p-1KLiMO0w.js +1 -0
  163. package/dist/post-components/p-1e006e29.entry.js +1 -0
  164. package/dist/post-components/p-3a5bdb7f.entry.js +1 -0
  165. package/dist/post-components/p-4214b85e.entry.js +1 -0
  166. package/dist/post-components/p-50916d48.entry.js +1 -0
  167. package/dist/post-components/p-5f4126d8.entry.js +1 -0
  168. package/dist/post-components/p-62982420.entry.js +1 -0
  169. package/dist/post-components/p-78f4dd12.entry.js +1 -0
  170. package/dist/post-components/p-7a7d237b.entry.js +1 -0
  171. package/dist/post-components/p-80174475.entry.js +1 -0
  172. package/dist/post-components/p-8U5GFtQP.js +1 -0
  173. package/dist/post-components/p-8d5a4218.entry.js +1 -0
  174. package/dist/post-components/p-8e89ccc1.entry.js +1 -0
  175. package/dist/post-components/p-9003674b.entry.js +1 -0
  176. package/dist/post-components/p-925aee3d.entry.js +1 -0
  177. package/dist/post-components/p-9b446561.entry.js +1 -0
  178. package/dist/post-components/p-9ec29527.entry.js +1 -0
  179. package/dist/post-components/{p-b176309b.js → p-BWC0gtGU.js} +1 -1
  180. package/dist/post-components/{p-6b31a76a.js → p-Bkp2QDth.js} +1 -1
  181. package/dist/post-components/p-CVhzhVv0.js +2 -0
  182. package/dist/post-components/p-DyVir0ex.js +1 -0
  183. package/dist/post-components/p-ec764922.entry.js +1 -0
  184. package/dist/post-components/p-fa550b4a.entry.js +1 -0
  185. package/dist/post-components/p-fb46e260.entry.js +1 -0
  186. package/dist/post-components/post-components.esm.js +1 -1
  187. package/dist/types/components/post-footer/post-footer.d.ts +7 -3
  188. package/dist/types/components/post-header/post-header.d.ts +1 -0
  189. package/dist/types/components/post-icon/post-icon.d.ts +0 -4
  190. package/dist/types/components/post-language-switch/post-language-switch.d.ts +1 -0
  191. package/dist/types/components/post-tag/post-tag.d.ts +1 -1
  192. package/dist/types/components.d.ts +61 -1
  193. package/dist/types/index.d.ts +10 -37
  194. package/dist/types/stencil-public-runtime.d.ts +29 -1
  195. package/dist/types/utils/breakpoints.d.ts +12 -7
  196. package/dist/types/utils/event-from.d.ts +9 -0
  197. package/dist/types/utils/index.d.ts +1 -1
  198. package/hydrate/index.d.ts +273 -0
  199. package/hydrate/index.js +32002 -0
  200. package/hydrate/index.mjs +31994 -0
  201. package/hydrate/package.json +12 -0
  202. package/package.json +45 -17
  203. package/dist/cjs/app-globals-3a1e7e63.js +0 -5
  204. package/dist/cjs/breakpoints-cdf1b747.js +0 -59
  205. package/dist/cjs/event-guard-efabc84f.js +0 -47
  206. package/dist/cjs/heading-levels-608d432e.js +0 -5
  207. package/dist/cjs/post-accordion-c433c493.js +0 -105
  208. package/dist/cjs/post-accordion-item-8d5a301d.js +0 -64
  209. package/dist/cjs/post-accordion-item.cjs.entry.js +0 -16
  210. package/dist/cjs/post-accordion.cjs.entry.js +0 -15
  211. package/dist/cjs/post-avatar-421043df.js +0 -162
  212. package/dist/cjs/post-back-to-top-3cca3803.js +0 -93
  213. package/dist/cjs/post-banner-2e99c9d8.js +0 -87
  214. package/dist/cjs/post-breadcrumbs-1be50860.js +0 -126
  215. package/dist/cjs/post-card-control-0bfdad92.js +0 -290
  216. package/dist/cjs/post-collapsible-trigger-4180b218.js +0 -190
  217. package/dist/cjs/post-footer-92adffac.js +0 -48
  218. package/dist/cjs/post-linkarea-26c457b3.js +0 -30
  219. package/dist/cjs/post-menu-item-d0a53c84.js +0 -68
  220. package/dist/cjs/post-popover-36cead3d.js +0 -150
  221. package/dist/cjs/post-rating-f50a9939.js +0 -109
  222. package/dist/cjs/post-tab-header-f47508da.js +0 -34
  223. package/dist/cjs/post-tab-panel-7c51798b.js +0 -36
  224. package/dist/cjs/post-tabs-2debea01.js +0 -173
  225. package/dist/cjs/post-tag-ac62c57f.js +0 -60
  226. package/dist/cjs/post-togglebutton-43c46511.js +0 -4491
  227. package/dist/cjs/post-tooltip-b7dcfb44.js +0 -74
  228. package/dist/cjs/post-tooltip-trigger-904061b6.js +0 -4685
  229. package/dist/collection/utils/event-guard.js +0 -43
  230. package/dist/components/breakpoints.js +0 -56
  231. package/dist/components/event-guard.js +0 -45
  232. package/dist/components/index2.js +0 -88
  233. package/dist/components/package.js +0 -3
  234. package/dist/components/post-accordion-item2.js +0 -103
  235. package/dist/components/post-avatar2.js +0 -190
  236. package/dist/components/post-back-to-top2.js +0 -118
  237. package/dist/components/post-banner2.js +0 -121
  238. package/dist/components/post-breadcrumbs2.js +0 -184
  239. package/dist/components/post-card-control2.js +0 -325
  240. package/dist/components/post-closebutton2.js +0 -39
  241. package/dist/components/post-collapsible-trigger2.js +0 -125
  242. package/dist/components/post-footer2.js +0 -90
  243. package/dist/components/post-header2.js +0 -397
  244. package/dist/components/post-icon2.js +0 -156
  245. package/dist/components/post-language-option2.js +0 -102
  246. package/dist/components/post-language-switch2.js +0 -143
  247. package/dist/components/post-linkarea2.js +0 -43
  248. package/dist/components/post-list-item2.js +0 -36
  249. package/dist/components/post-list2.js +0 -54
  250. package/dist/components/post-logo2.js +0 -57
  251. package/dist/components/post-mainnavigation2.js +0 -183
  252. package/dist/components/post-megadropdown-trigger2.js +0 -121
  253. package/dist/components/post-megadropdown2.js +0 -190
  254. package/dist/components/post-menu-item2.js +0 -27
  255. package/dist/components/post-popover2.js +0 -178
  256. package/dist/components/post-rating2.js +0 -138
  257. package/dist/components/post-tab-header2.js +0 -52
  258. package/dist/components/post-tab-panel2.js +0 -54
  259. package/dist/components/post-tabs2.js +0 -189
  260. package/dist/components/post-tag2.js +0 -88
  261. package/dist/components/post-togglebutton2.js +0 -51
  262. package/dist/components/post-tooltip-trigger2.js +0 -4703
  263. package/dist/components/post-tooltip2.js +0 -102
  264. package/dist/esm/app-globals-0f993ce5.js +0 -3
  265. package/dist/esm/breakpoints-7812702e.js +0 -56
  266. package/dist/esm/event-guard-538ee077.js +0 -45
  267. package/dist/esm/get-root-1b1af46f.js +0 -15
  268. package/dist/esm/heading-levels-5b7b4349.js +0 -3
  269. package/dist/esm/package-8503eaa8.js +0 -3
  270. package/dist/esm/post-accordion-9365faca.js +0 -103
  271. package/dist/esm/post-accordion-item-2dc8e3b7.js +0 -62
  272. package/dist/esm/post-accordion-item.entry.js +0 -8
  273. package/dist/esm/post-accordion.entry.js +0 -7
  274. package/dist/esm/post-avatar-4f73dc4d.js +0 -160
  275. package/dist/esm/post-back-to-top-8f759d32.js +0 -91
  276. package/dist/esm/post-banner-ad979275.js +0 -85
  277. package/dist/esm/post-breadcrumbs-a20336c7.js +0 -124
  278. package/dist/esm/post-card-control-3c77e778.js +0 -288
  279. package/dist/esm/post-collapsible-trigger-5fd0e193.js +0 -187
  280. package/dist/esm/post-footer-3e117b5a.js +0 -46
  281. package/dist/esm/post-linkarea-16a14609.js +0 -28
  282. package/dist/esm/post-menu-item-b1604fe4.js +0 -65
  283. package/dist/esm/post-popover-49096648.js +0 -148
  284. package/dist/esm/post-rating-405bee8f.js +0 -107
  285. package/dist/esm/post-tab-header-b228c217.js +0 -32
  286. package/dist/esm/post-tab-panel-98110b64.js +0 -34
  287. package/dist/esm/post-tabs-44d9313c.js +0 -171
  288. package/dist/esm/post-tag-99cc9616.js +0 -58
  289. package/dist/esm/post-togglebutton-ea73e63f.js +0 -4475
  290. package/dist/esm/post-tooltip-78cd2988.js +0 -72
  291. package/dist/esm/post-tooltip-trigger-bdb21c45.js +0 -4683
  292. package/dist/post-components/p-0889c759.js +0 -1
  293. package/dist/post-components/p-09dd5aa4.js +0 -1
  294. package/dist/post-components/p-0f9322e5.js +0 -8
  295. package/dist/post-components/p-11572299.js +0 -1
  296. package/dist/post-components/p-19a83519.entry.js +0 -1
  297. package/dist/post-components/p-1afb3c43.entry.js +0 -1
  298. package/dist/post-components/p-214cd032.js +0 -1
  299. package/dist/post-components/p-21e5b028.js +0 -1
  300. package/dist/post-components/p-2320305b.js +0 -1
  301. package/dist/post-components/p-247a1668.js +0 -1
  302. package/dist/post-components/p-2523f97b.entry.js +0 -1
  303. package/dist/post-components/p-2bd3a436.js +0 -1
  304. package/dist/post-components/p-2ce8fbf5.js +0 -1
  305. package/dist/post-components/p-2f879f4e.entry.js +0 -1
  306. package/dist/post-components/p-33e26845.entry.js +0 -1
  307. package/dist/post-components/p-38b1c71e.entry.js +0 -1
  308. package/dist/post-components/p-38d59732.js +0 -1
  309. package/dist/post-components/p-3a67f1ff.js +0 -1
  310. package/dist/post-components/p-41450b6c.entry.js +0 -1
  311. package/dist/post-components/p-4c23ed05.entry.js +0 -1
  312. package/dist/post-components/p-57746c40.js +0 -1
  313. package/dist/post-components/p-6313d72e.entry.js +0 -1
  314. package/dist/post-components/p-64e0b0fc.js +0 -1
  315. package/dist/post-components/p-658a2e34.entry.js +0 -1
  316. package/dist/post-components/p-722ffaae.js +0 -1
  317. package/dist/post-components/p-746d3cd3.entry.js +0 -1
  318. package/dist/post-components/p-79a2dad0.entry.js +0 -1
  319. package/dist/post-components/p-7dd1807c.js +0 -1
  320. package/dist/post-components/p-817fbeaf.js +0 -1
  321. package/dist/post-components/p-85950200.js +0 -1
  322. package/dist/post-components/p-8ebecf22.entry.js +0 -1
  323. package/dist/post-components/p-8ed1cb53.entry.js +0 -1
  324. package/dist/post-components/p-91244b25.js +0 -1
  325. package/dist/post-components/p-91675004.js +0 -1
  326. package/dist/post-components/p-94ebc430.js +0 -1
  327. package/dist/post-components/p-95727a4f.entry.js +0 -1
  328. package/dist/post-components/p-9e461613.js +0 -2
  329. package/dist/post-components/p-a844da3a.entry.js +0 -1
  330. package/dist/post-components/p-af900651.js +0 -1
  331. package/dist/post-components/p-b373659e.entry.js +0 -1
  332. package/dist/post-components/p-b500b245.js +0 -1
  333. package/dist/post-components/p-bf182745.entry.js +0 -1
  334. package/dist/post-components/p-c9b6f9e7.entry.js +0 -1
  335. package/dist/post-components/p-cb7d8f67.entry.js +0 -1
  336. package/dist/post-components/p-e1255160.js +0 -1
  337. package/dist/post-components/p-e28eb73a.js +0 -1
  338. package/dist/types/popover-fn.d.ts +0 -11
  339. package/dist/types/utils/event-guard.d.ts +0 -4
  340. package/loader/package.json +0 -11
  341. package/loaders/breakpoints.js +0 -56
  342. package/loaders/event-guard.js +0 -45
  343. package/loaders/fade.js +0 -11
  344. package/loaders/get-focusable-children.js +0 -35
  345. package/loaders/heading-levels.js +0 -3
  346. package/loaders/index.browser.js +0 -14
  347. package/loaders/index.d.ts +0 -108
  348. package/loaders/index.js +0 -39
  349. package/loaders/long-press-event.js +0 -264
  350. package/loaders/package.js +0 -3
  351. package/loaders/post-accordion-item.d.ts +0 -11
  352. package/loaders/post-accordion-item.js +0 -6
  353. package/loaders/post-accordion-item2.js +0 -103
  354. package/loaders/post-accordion.d.ts +0 -11
  355. package/loaders/post-accordion.js +0 -129
  356. package/loaders/post-avatar.d.ts +0 -11
  357. package/loaders/post-avatar.js +0 -193
  358. package/loaders/post-back-to-top.d.ts +0 -11
  359. package/loaders/post-back-to-top.js +0 -121
  360. package/loaders/post-banner.d.ts +0 -11
  361. package/loaders/post-banner.js +0 -124
  362. package/loaders/post-breadcrumb-item.d.ts +0 -11
  363. package/loaders/post-breadcrumb-item.js +0 -6
  364. package/loaders/post-breadcrumb-item2.js +0 -82
  365. package/loaders/post-breadcrumbs.d.ts +0 -11
  366. package/loaders/post-breadcrumbs.js +0 -187
  367. package/loaders/post-card-control.d.ts +0 -11
  368. package/loaders/post-card-control.js +0 -328
  369. package/loaders/post-closebutton.d.ts +0 -11
  370. package/loaders/post-closebutton.js +0 -42
  371. package/loaders/post-collapsible-trigger.d.ts +0 -11
  372. package/loaders/post-collapsible-trigger.js +0 -6
  373. package/loaders/post-collapsible.d.ts +0 -11
  374. package/loaders/post-collapsible.js +0 -6
  375. package/loaders/post-collapsible2.js +0 -108
  376. package/loaders/post-footer.d.ts +0 -11
  377. package/loaders/post-footer.js +0 -93
  378. package/loaders/post-header.d.ts +0 -11
  379. package/loaders/post-header.js +0 -400
  380. package/loaders/post-icon.d.ts +0 -11
  381. package/loaders/post-icon.js +0 -6
  382. package/loaders/post-language-option.d.ts +0 -11
  383. package/loaders/post-language-option.js +0 -105
  384. package/loaders/post-language-switch.d.ts +0 -11
  385. package/loaders/post-language-switch.js +0 -146
  386. package/loaders/post-linkarea.d.ts +0 -11
  387. package/loaders/post-linkarea.js +0 -46
  388. package/loaders/post-list-item.d.ts +0 -11
  389. package/loaders/post-list-item.js +0 -39
  390. package/loaders/post-list.d.ts +0 -11
  391. package/loaders/post-list.js +0 -57
  392. package/loaders/post-logo.d.ts +0 -11
  393. package/loaders/post-logo.js +0 -60
  394. package/loaders/post-mainnavigation.d.ts +0 -11
  395. package/loaders/post-mainnavigation.js +0 -186
  396. package/loaders/post-megadropdown-trigger.d.ts +0 -11
  397. package/loaders/post-megadropdown-trigger.js +0 -124
  398. package/loaders/post-megadropdown.d.ts +0 -11
  399. package/loaders/post-megadropdown.js +0 -193
  400. package/loaders/post-menu-item.d.ts +0 -11
  401. package/loaders/post-menu-item.js +0 -6
  402. package/loaders/post-menu-item2.js +0 -27
  403. package/loaders/post-menu-trigger.d.ts +0 -11
  404. package/loaders/post-menu-trigger.js +0 -6
  405. package/loaders/post-menu-trigger2.js +0 -109
  406. package/loaders/post-menu.d.ts +0 -11
  407. package/loaders/post-menu.js +0 -6
  408. package/loaders/post-menu2.js +0 -202
  409. package/loaders/post-popover.d.ts +0 -11
  410. package/loaders/post-popover.js +0 -181
  411. package/loaders/post-popovercontainer.d.ts +0 -11
  412. package/loaders/post-popovercontainer.js +0 -6
  413. package/loaders/post-popovercontainer2.js +0 -3051
  414. package/loaders/post-rating.d.ts +0 -11
  415. package/loaders/post-rating.js +0 -141
  416. package/loaders/post-tab-header.d.ts +0 -11
  417. package/loaders/post-tab-header.js +0 -55
  418. package/loaders/post-tab-panel.d.ts +0 -11
  419. package/loaders/post-tab-panel.js +0 -57
  420. package/loaders/post-tabs.d.ts +0 -11
  421. package/loaders/post-tabs.js +0 -192
  422. package/loaders/post-tag.d.ts +0 -11
  423. package/loaders/post-tag.js +0 -91
  424. package/loaders/post-togglebutton.d.ts +0 -11
  425. package/loaders/post-togglebutton.js +0 -54
  426. package/loaders/post-tooltip-trigger.d.ts +0 -11
  427. package/loaders/post-tooltip-trigger.js +0 -4706
  428. package/loaders/post-tooltip.d.ts +0 -11
  429. package/loaders/post-tooltip.js +0 -105
  430. package/loaders/slide.js +0 -25
  431. package/loaders/switch-variants.js +0 -3
  432. /package/dist/cjs/{fade-72d5ef55.js → fade-nS5zzDQS.js} +0 -0
  433. /package/dist/cjs/{index-2b2b85e5.js → index-DtvYdwe1.js} +0 -0
  434. /package/dist/cjs/{index.browser-4af21c17.js → index.browser-Doj636JV.js} +0 -0
  435. /package/dist/cjs/{long-press-event-6e62d113.js → long-press-event-Q8jMUNXD.js} +0 -0
  436. /package/dist/cjs/{placement-b2bb6ec4.js → placement-qEFR9hmI.js} +0 -0
  437. /package/dist/cjs/{slide-cd1f09b3.js → slide-CbBL7A8w.js} +0 -0
  438. /package/dist/components/{index.browser.js → p-BLchVpF6.js} +0 -0
  439. /package/dist/components/{slide.js → p-BuLMaH5t.js} +0 -0
  440. /package/dist/components/{get-focusable-children.js → p-C35MCWIp.js} +0 -0
  441. /package/dist/components/{long-press-event.js → p-C_2k3G1c.js} +0 -0
  442. /package/dist/components/{switch-variants.js → p-DjIHLduJ.js} +0 -0
  443. /package/dist/components/{fade.js → p-SbIC4aZX.js} +0 -0
  444. /package/dist/components/{heading-levels.js → p-r4txK0AC.js} +0 -0
  445. /package/dist/esm/{fade-1f3cacf4.js → fade-SbIC4aZX.js} +0 -0
  446. /package/dist/esm/{index.browser-ff103197.js → index.browser-BLchVpF6.js} +0 -0
  447. /package/dist/esm/{long-press-event-04d24397.js → long-press-event-C_2k3G1c.js} +0 -0
  448. /package/dist/esm/{placement-8d56605d.js → placement-DRiVosES.js} +0 -0
  449. /package/dist/esm/{slide-cd2850ee.js → slide-BuLMaH5t.js} +0 -0
  450. /package/dist/post-components/{p-c65f32b0.js → p-BLchVpF6.js} +0 -0
  451. /package/dist/post-components/{p-9b052461.js → p-BuLMaH5t.js} +0 -0
  452. /package/dist/post-components/{p-8db32dab.js → p-C_2k3G1c.js} +0 -0
  453. /package/dist/post-components/{p-59a38c23.js → p-DRiVosES.js} +0 -0
  454. /package/dist/post-components/{p-64e3de38.js → p-SbIC4aZX.js} +0 -0
@@ -1,4 +1,135 @@
1
- import { P as PostMegadropdownTrigger$1, d as defineCustomElement$1 } from './post-megadropdown-trigger2.js';
1
+ import { p as proxyCustomElement, H, h, a as Host } from './index.js';
2
+ import { v as version } from './p-1KLiMO0w.js';
3
+ import { c as checkRequiredAndType } from './p-CV7fm1rW.js';
4
+ import './p-Cx0AiN2A.js';
5
+ import { E as EventFrom } from './p-8U5GFtQP.js';
6
+
7
+ const postMegadropdownTriggerCss = "post-megadropdown-trigger{width:100%;position:relative;z-index:3}@media screen and (max-width: 1023.98px){post-megadropdown-trigger{z-index:4}}";
8
+
9
+ var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
10
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
11
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
12
+ r = Reflect.decorate(decorators, target, key, desc);
13
+ else
14
+ for (var i = decorators.length - 1; i >= 0; i--)
15
+ if (d = decorators[i])
16
+ r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
17
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
18
+ };
19
+ const PostMegadropdownTrigger$1 = /*@__PURE__*/ proxyCustomElement(class PostMegadropdownTrigger extends H {
20
+ constructor() {
21
+ super();
22
+ this.__registerHost();
23
+ /**
24
+ * Manages the accessibility attribute `aria-expanded` to indicate whether the associated mega dropdown is expanded or collapsed.
25
+ */
26
+ this.ariaExpanded = false;
27
+ /**
28
+ * Reference to the slotted button within the trigger, if present.
29
+ * Used to manage click and key events for mega dropdown control.
30
+ */
31
+ this.slottedButton = null;
32
+ /**
33
+ * Tracks whether this trigger's dropdown was expanded before a state change.
34
+ * Used to determine if this trigger should handle focus when its dropdown closes.
35
+ */
36
+ this.wasExpanded = false;
37
+ this.handleKeyDown = (event) => {
38
+ if (event.key === 'Enter' || event.key === ' ') {
39
+ event.preventDefault();
40
+ this.handleToggle();
41
+ if (this.megadropdown && !this.ariaExpanded) {
42
+ setTimeout(() => this.megadropdown.focusFirst(), 100);
43
+ }
44
+ }
45
+ };
46
+ this.handleToggleMegadropdown = (event) => {
47
+ if (event.target.id === this.for) {
48
+ this.ariaExpanded = event.detail.isVisible;
49
+ // Focus on the trigger parent of the dropdown after it's closed if the close button had been clicked
50
+ if (this.wasExpanded && !this.ariaExpanded && event.detail.focusParent) {
51
+ setTimeout(() => {
52
+ this.slottedButton?.focus();
53
+ }, 100);
54
+ }
55
+ this.wasExpanded = this.ariaExpanded;
56
+ if (this.slottedButton) {
57
+ this.slottedButton.setAttribute('aria-expanded', this.ariaExpanded.toString());
58
+ }
59
+ }
60
+ };
61
+ }
62
+ /**
63
+ * Watch for changes to the `for` property to validate its type and ensure it is a string.
64
+ * @param forValue - The new value of the `for` property.
65
+ */
66
+ validateControlFor() {
67
+ checkRequiredAndType(this, 'for', 'string');
68
+ }
69
+ get megadropdown() {
70
+ const ref = document.getElementById(this.for);
71
+ return ref && ref.localName === 'post-megadropdown'
72
+ ? ref
73
+ : null;
74
+ }
75
+ handleToggle() {
76
+ if (this.megadropdown) {
77
+ this.megadropdown.toggle();
78
+ }
79
+ else {
80
+ console.warn(`No post-megadropdown found with ID: ${this.for}`);
81
+ }
82
+ }
83
+ componentDidLoad() {
84
+ this.validateControlFor();
85
+ // Check if the mega dropdown attached to the trigger is expanded or not
86
+ document.addEventListener('postToggleMegadropdown', this.handleToggleMegadropdown);
87
+ this.slottedButton = this.host.querySelector('button');
88
+ if (this.slottedButton) {
89
+ this.slottedButton.setAttribute('aria-haspopup', 'menu');
90
+ this.slottedButton.addEventListener('click', () => {
91
+ this.handleToggle();
92
+ });
93
+ this.slottedButton.addEventListener('keydown', this.handleKeyDown);
94
+ }
95
+ else {
96
+ console.warn('No button found within post-megadropdown-trigger');
97
+ }
98
+ }
99
+ disconnectedCallback() {
100
+ document.removeEventListener('postToggleMegadropdown', this.handleToggleMegadropdown);
101
+ }
102
+ render() {
103
+ return (h(Host, { key: '315c957a6cf876da48209096b9f30a7d94e72c08', "data-version": version, "tab-index": "-1" }, h("button", { key: '2533ded6277d2cf97c0c108df49823833486b4de' }, h("slot", { key: 'bf9b18545e11b30eb40d351794ca104035ed47db' }))));
104
+ }
105
+ get host() { return this; }
106
+ static get watchers() { return {
107
+ "for": ["validateControlFor"]
108
+ }; }
109
+ static get style() { return postMegadropdownTriggerCss; }
110
+ }, [4, "post-megadropdown-trigger", {
111
+ "for": [1],
112
+ "ariaExpanded": [32]
113
+ }, undefined, {
114
+ "for": ["validateControlFor"]
115
+ }]);
116
+ __decorate([
117
+ EventFrom('post-megadropdown', { ignoreNestedComponents: false })
118
+ ], PostMegadropdownTrigger$1.prototype, "handleToggleMegadropdown", void 0);
119
+ function defineCustomElement$1() {
120
+ if (typeof customElements === "undefined") {
121
+ return;
122
+ }
123
+ const components = ["post-megadropdown-trigger"];
124
+ components.forEach(tagName => { switch (tagName) {
125
+ case "post-megadropdown-trigger":
126
+ if (!customElements.get(tagName)) {
127
+ customElements.define(tagName, PostMegadropdownTrigger$1);
128
+ }
129
+ break;
130
+ } });
131
+ }
132
+ defineCustomElement$1();
2
133
 
3
134
  const PostMegadropdownTrigger = PostMegadropdownTrigger$1;
4
135
  const defineCustomElement = defineCustomElement$1;
@@ -1,4 +1,197 @@
1
- import { P as PostMegadropdown$1, d as defineCustomElement$1 } from './post-megadropdown2.js';
1
+ import { p as proxyCustomElement, H, c as createEvent, h, a as Host } from './index.js';
2
+ import { g as getFocusableChildren } from './p-C35MCWIp.js';
3
+ import { v as version } from './p-1KLiMO0w.js';
4
+ import { b as breakpoint } from './p-Cx0AiN2A.js';
5
+
6
+ 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{box-shadow:0 8px 6px rgba(0,0,0,.16);position:absolute;background-color:#fafafa;border:none;z-index:1;width:100%;inset-block-start:100%;inset-inline-start:0;border-radius:0}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.megadropdown-container{border-block-end:1px solid CanvasText}}.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{z-index:5;position:fixed;inset-block-start:var(--post-header-navigation-current-inset);inset-inline:0;height:calc(min(var(--post-header-scroll-parent-height, 100dvh),100dvh) - var(--post-header-height));border-block-start:unset;overflow-y:auto;overscroll-behavior:contain}.megadropdown-container.slide-in{animation:slide-in 350ms forwards}.megadropdown-container.slide-out{animation:slide-out 350ms forwards}}@media screen and (min-width: 1024px){.megadropdown-container{max-height:calc(100vh - var(--post-header-height) - 48px);overflow-y:auto}}.megadropdown{padding:31px 40px 40px;background-color:#fafafa}@media screen and (max-width: 1023.98px){.megadropdown{display:flex;flex-direction:column;width:inherit;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-block:0 8px;font-weight:900}.megadropdown h2 a{text-decoration:none;display:none;font-weight:inherit;border-block: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)),.megadropdown post-list .list-title h3 a{padding:16px 12px 14px 8px}.megadropdown post-list .list-title h3:not(:has(a)){position:relative}.megadropdown post-list .list-title h3:not(:has(a))::before{content:\"\";background-color:#050400;inset-block-end:0;inset-inline-start:0;width:100%;height:2px;position:absolute}.megadropdown post-list .list-title h3 a{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:48px;padding-inline:8px 12px;gap:16px;font-weight:400;position:relative;height:unset;font-weight:900}.megadropdown post-list .list-title h3 a::before{content:\"\";background-color:#050400;bottom:0;width:100%;height:1px;position:absolute;left:0}.megadropdown post-list .list-title h3 a.selected,.megadropdown post-list .list-title h3 a[aria-expanded=true]{background-color:#050400;color:#fff}.megadropdown post-list .list-title h3 a:hover{background-color:#504f4b;color:#fff}.megadropdown post-list .list-title h3 a:hover::before{background-color:#504f4b}.megadropdown post-list .list-title h3 a::before{height:2px}@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)),.megadropdown post-list .list-title h3 a{padding:14px 12px 12px 8px}}@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;white-space:normal;word-break:break-word}.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-block-end:2rem}.megadropdown .back-button .btn{width:auto}@media screen and (max-width: 1023.98px){.megadropdown .back-button{order:-1;display:block}}.megadropdown .close-button{position:absolute;inset-block-start:1rem;inset-inline-end:1rem}@media screen and (max-width: 1023.98px){.megadropdown .close-button{display:none}}";
7
+
8
+ const PostMegadropdown$1 = /*@__PURE__*/ proxyCustomElement(class PostMegadropdown extends H {
9
+ constructor() {
10
+ super();
11
+ this.__registerHost();
12
+ this.postToggleMegadropdown = createEvent(this, "postToggleMegadropdown");
13
+ this.device = breakpoint.get('device');
14
+ /**
15
+ * Holds the current visibility state of the dropdown.
16
+ * This state is internally managed to track whether the dropdown is open (`true`) or closed (`false`),
17
+ * and updates automatically when the dropdown is toggled.
18
+ */
19
+ this.isVisible = false;
20
+ /** Holds the current animation class. */
21
+ this.animationClass = null;
22
+ this.handleClickOutside = (event) => {
23
+ if (this.device !== 'desktop')
24
+ return;
25
+ const target = event.target;
26
+ if (this.host.contains(target)) {
27
+ return;
28
+ }
29
+ if (target instanceof H) {
30
+ const trigger = target.closest('post-megadropdown-trigger');
31
+ if (trigger) {
32
+ const targetDropdownId = trigger.getAttribute('for');
33
+ if (targetDropdownId !== this.host.id) {
34
+ return;
35
+ }
36
+ }
37
+ }
38
+ this.hide(false);
39
+ };
40
+ }
41
+ breakpointChange(e) {
42
+ this.device = e.detail;
43
+ if (this.device === 'desktop' && this.isVisible) {
44
+ this.animationClass = null;
45
+ }
46
+ }
47
+ disconnectedCallback() {
48
+ this.removeListeners();
49
+ window.removeEventListener('postBreakpoint:device', this.breakpointChange.bind(this));
50
+ if (PostMegadropdown.activeDropdown === this) {
51
+ PostMegadropdown.activeDropdown = null;
52
+ }
53
+ }
54
+ componentWillRender() {
55
+ this.getFocusableElements();
56
+ }
57
+ /**
58
+ * Toggles the dropdown visibility based on its current state.
59
+ */
60
+ async toggle() {
61
+ if (this.isVisible) {
62
+ this.hide();
63
+ }
64
+ else {
65
+ await this.show();
66
+ }
67
+ }
68
+ /**
69
+ * Displays the dropdown.
70
+ */
71
+ async show() {
72
+ if (PostMegadropdown.activeDropdown && PostMegadropdown.activeDropdown !== this) {
73
+ // Close the previously active dropdown without animation
74
+ PostMegadropdown.activeDropdown.forceClose();
75
+ }
76
+ else {
77
+ this.animationClass = 'slide-in';
78
+ }
79
+ this.isVisible = true;
80
+ PostMegadropdown.activeDropdown = this;
81
+ this.postToggleMegadropdown.emit({ isVisible: this.isVisible });
82
+ if (this.firstFocusableEl &&
83
+ window.getComputedStyle(this.firstFocusableEl).display !== 'none') {
84
+ this.firstFocusableEl.focus();
85
+ }
86
+ this.addListeners();
87
+ }
88
+ /**
89
+ * Hides the dropdown with an animation.
90
+ */
91
+ async hide(focusParent = true, forceClose = false) {
92
+ this.postToggleMegadropdown.emit({ isVisible: false, focusParent: focusParent });
93
+ if (forceClose) {
94
+ this.forceClose();
95
+ }
96
+ else {
97
+ this.animationClass = 'slide-out';
98
+ }
99
+ }
100
+ /**
101
+ * Sets focus to the first focusable element within the component.
102
+ */
103
+ async focusFirst() {
104
+ this.firstFocusableEl?.focus();
105
+ }
106
+ connectedCallback() {
107
+ window.addEventListener('postBreakpoint:device', this.breakpointChange.bind(this));
108
+ }
109
+ /**
110
+ * Forces the dropdown to close without animation.
111
+ */
112
+ forceClose() {
113
+ this.isVisible = false;
114
+ this.animationClass = null;
115
+ this.postToggleMegadropdown.emit({ isVisible: this.isVisible, focusParent: false });
116
+ this.removeListeners();
117
+ }
118
+ handleAnimationEnd() {
119
+ if (this.animationClass === 'slide-out') {
120
+ this.isVisible = false;
121
+ this.animationClass = null;
122
+ PostMegadropdown.activeDropdown = null;
123
+ this.removeListeners();
124
+ }
125
+ }
126
+ addListeners() {
127
+ this.host.addEventListener('keydown', e => this.keyboardHandler(e));
128
+ document.addEventListener('keyup', e => this.handleTabOutside(e));
129
+ document.addEventListener('mousedown', this.handleClickOutside);
130
+ }
131
+ removeListeners() {
132
+ this.host.removeEventListener('keydown', e => this.keyboardHandler(e));
133
+ document.removeEventListener('keyup', e => this.handleTabOutside(e));
134
+ document.removeEventListener('mousedown', this.handleClickOutside);
135
+ }
136
+ getFocusableElements() {
137
+ const focusableEls = Array.from(this.host.querySelectorAll('post-list-item, h3, .back-button'));
138
+ const focusableChildren = focusableEls.flatMap(el => Array.from(getFocusableChildren(el)));
139
+ this.firstFocusableEl = focusableChildren[0];
140
+ this.lastFocusableEl = focusableChildren[focusableChildren.length - 1];
141
+ }
142
+ // Loop through the focusable children
143
+ keyboardHandler(e) {
144
+ if (e.key === 'Tab' && this.device !== 'desktop') {
145
+ if (e.shiftKey && document.activeElement === this.firstFocusableEl) {
146
+ // If back tab (TAB + Shift) and first element is focused, focus goes to the last element of the megadropdown
147
+ e.preventDefault();
148
+ this.lastFocusableEl.focus();
149
+ }
150
+ else if (!e.shiftKey && document.activeElement === this.lastFocusableEl) {
151
+ // If TAB and last element is focused, focus goes back to the first element of the megadropdown
152
+ e.preventDefault();
153
+ this.firstFocusableEl.focus();
154
+ }
155
+ }
156
+ }
157
+ handleTabOutside(e) {
158
+ if (e.key === 'Tab' && this.device === 'desktop') {
159
+ if (!this.host.contains(e.target)) {
160
+ this.hide(false);
161
+ }
162
+ }
163
+ }
164
+ render() {
165
+ const containerStyle = this.isVisible ? {} : { display: 'none' };
166
+ return (h(Host, { key: '3e846f475540067d9c58b60f636730a2b38a0aff', version: version }, h("div", { key: '47133c10dc15b7e5641a9fb47a1875ba89581e23', class: `megadropdown-container ${this.animationClass || ''}`, style: containerStyle, onAnimationEnd: () => this.handleAnimationEnd() }, h("div", { key: '8f64dc9ef745ed4434fe00a48f76cc12b96e6443', class: "megadropdown" }, h("slot", { key: '5041727da18956a26ce43f870cde81264431cb23', name: "megadropdown-title" }), h("div", { key: '5ac34fe4ab27de09c9fc825c3999f2294abc624c', class: "megadropdown-content" }, h("slot", { key: 'f8917a15cd28082d0c0d88046f355aa85767255f' })), h("div", { key: '7fdaae11f771b92f11b2ed12be096f2936d9e08b', onClick: () => this.hide(true), class: "back-button" }, h("slot", { key: 'de791c42ef57abbde0ae9d24e1bcdb64b5e873cc', name: "back-button" })), h("div", { key: 'be88c1f94bc3eb7507e5de0a558a87a31936b6a0', onClick: () => this.hide(true), class: "close-button" }, h("slot", { key: '444b996c0001f283279406d00708e4291d5af5bc', name: "close-button" }))))));
167
+ }
168
+ get host() { return this; }
169
+ static get style() { return postMegadropdownCss; }
170
+ }, [4, "post-megadropdown", {
171
+ "device": [32],
172
+ "isVisible": [32],
173
+ "animationClass": [32],
174
+ "toggle": [64],
175
+ "show": [64],
176
+ "hide": [64],
177
+ "focusFirst": [64]
178
+ }]);
179
+ /** Tracks the currently active dropdown instance. */
180
+ PostMegadropdown$1.activeDropdown = null;
181
+ function defineCustomElement$1() {
182
+ if (typeof customElements === "undefined") {
183
+ return;
184
+ }
185
+ const components = ["post-megadropdown"];
186
+ components.forEach(tagName => { switch (tagName) {
187
+ case "post-megadropdown":
188
+ if (!customElements.get(tagName)) {
189
+ customElements.define(tagName, PostMegadropdown$1);
190
+ }
191
+ break;
192
+ } });
193
+ }
194
+ defineCustomElement$1();
2
195
 
3
196
  const PostMegadropdown = PostMegadropdown$1;
4
197
  const defineCustomElement = defineCustomElement$1;
@@ -1,4 +1,4 @@
1
- import { P as PostMenuItem$1, d as defineCustomElement$1 } from './post-menu-item2.js';
1
+ import { P as PostMenuItem$1, d as defineCustomElement$1 } from './p-DQuPPEca.js';
2
2
 
3
3
  const PostMenuItem = PostMenuItem$1;
4
4
  const defineCustomElement = defineCustomElement$1;
@@ -1,4 +1,4 @@
1
- import { P as PostMenuTrigger$1, d as defineCustomElement$1 } from './post-menu-trigger2.js';
1
+ import { P as PostMenuTrigger$1, d as defineCustomElement$1 } from './p-CaPj3whI.js';
2
2
 
3
3
  const PostMenuTrigger = PostMenuTrigger$1;
4
4
  const defineCustomElement = defineCustomElement$1;
@@ -1,4 +1,4 @@
1
- import { P as PostMenu$1, d as defineCustomElement$1 } from './post-menu2.js';
1
+ import { P as PostMenu$1, d as defineCustomElement$1 } from './p-BLhBouGz.js';
2
2
 
3
3
  const PostMenu = PostMenu$1;
4
4
  const defineCustomElement = defineCustomElement$1;
@@ -1,4 +1,187 @@
1
- import { P as PostPopover$1, d as defineCustomElement$1 } from './post-popover2.js';
1
+ import { p as proxyCustomElement, H, h, a as Host } from './index.js';
2
+ import { d as defineCustomElement$2, a as PLACEMENT_TYPES } from './p-elg4VvHg.js';
3
+ import { v as version } from './p-1KLiMO0w.js';
4
+ import { I as IS_BROWSER } from './p-Cx0AiN2A.js';
5
+ import { d as checkEmptyOrOneOf, c as checkRequiredAndType } from './p-CV7fm1rW.js';
6
+
7
+ function getAttributeObserver(attribute, handler) {
8
+ /**
9
+ * Handle attribute changes and childList changes from the observer
10
+ * @param {MutationRecord[]} mutationList
11
+ */
12
+ function observerHandler(mutationList) {
13
+ mutationList.forEach(mutation => {
14
+ if (mutation.type === 'attributes' && mutation.attributeName === attribute) {
15
+ handler(mutation.target);
16
+ }
17
+ if (mutation.type === 'childList') {
18
+ mutation.addedNodes.forEach(node => {
19
+ if (node.nodeType === Node.ELEMENT_NODE &&
20
+ node.hasAttribute(attribute)) {
21
+ handler(node);
22
+ }
23
+ });
24
+ }
25
+ });
26
+ }
27
+ // Initialize a mutation observer for patching accessibility features
28
+ return IS_BROWSER ? new MutationObserver(observerHandler) : null;
29
+ }
30
+
31
+ const postPopoverCss = "@keyframes popIn{from{transform:scale(0.9);opacity:0;transition-property:transform,opacity,overlay,display;transition-behavior:allow-discrete;transition-duration:var(--post-transition-duration, 0.35s);transition-timing-function:linear(0, 0.007, 0.029 2.2%, 0.118 4.7%, 0.625 14.4%, 0.826 19%, 0.902, 0.962, 1.008 26.1%, 1.041 28.7%, 1.064 32.1%, 1.07 36%, 1.061 40.5%, 1.015 53.4%, 0.999 61.6%, 0.995 71.2%, 1)}to{opacity:1;transform:scale(1)}}.btn-close{padding:0;overflow:visible;border:0;background:none;color:var(--post-scheme-color-interactive-button-secondary-enabled-fg);font:inherit;-webkit-user-select:none;user-select:none;appearance:button;border-radius:var(--post-device-border-radius-round);color:#000;transition:opacity 250ms,border-color 250ms,background-color 250ms,color 250ms;cursor:pointer}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.btn-close{background-color:ButtonFace !important}.btn-close:hover{background-color:Highlight !important}}.btn-close{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}.btn-close:is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-style:var(--post-core-border-style-solid) !important;border-radius:4px}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.btn-close:is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-color:Highlight !important}}@supports not selector(:has(:focus-visible)){.btn-close:is(:focus-visible,:focus-within,.pretend-focus){outline-style:var(--post-core-border-style-solid) !important;border-radius:4px}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.btn-close:is(:focus-visible,:focus-within,.pretend-focus){outline-color:Highlight !important}}}.btn-close::before{mask-image:url(\"data:image/svg+xml,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m16.267 16.667 6.667-6.533-.933-1.067-6.667 6.667-6.667-6.667-.933 1.067 6.667 6.533-6.667 6.667 1.067.933 6.533-6.667 6.667 6.667.933-1.067z'/%3E%3C/svg%3E\");background-color:currentColor;color:currentColor;forced-color-adjust:preserve-parent-color;content:\"\";display:block;height:var(--post-core-dimension-24);width:var(--post-core-dimension-24)}.btn-close:focus,.btn-close:not(:disabled):hover,.pretend-hover.btn-close{color:#000}.btn-close:disabled{color:#999}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.btn-close{color:CanvasText;forced-color-adjust:none}.btn-close:focus,.btn-close:not(:disabled):hover,.pretend-hover.btn-close{color:Highlight}}.btn-close-white{color:#e6e6e6}.btn-close-white:focus,.btn-close-white:not(:disabled):hover,.btn-close-white.pretend-hover{color:#fff}.btn-close-white:disabled{color:#999}*{box-sizing:border-box}:host{display:block}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);border:0}.popover-container{display:flex;align-items:self-start;padding:.5em;min-width:160px;max-width:min(var(--post-popover-max-width, 280px),100vw)}.popover-content{padding:.5em;flex-grow:1}.btn-close{color:var(--post-scheme-color-surface-default-fg)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.btn-close:hover{color:HighlightText !important}}";
32
+
33
+ /**
34
+ * @slot default - Slot for placing content inside the popover.
35
+ */
36
+ let popoverInstances = 0;
37
+ const popoverTargetAttribute = 'data-popover-target';
38
+ const globalToggleHandler = (e) => {
39
+ let currentElement = e.target;
40
+ // Traverse up the DOM tree to find if any parent has the popover target attribute
41
+ while (currentElement && !currentElement.getAttribute(popoverTargetAttribute)) {
42
+ if (currentElement === document.body || !currentElement.parentElement)
43
+ break;
44
+ currentElement = currentElement.parentElement;
45
+ }
46
+ const popoverTarget = currentElement?.getAttribute(popoverTargetAttribute);
47
+ if (!popoverTarget || ('key' in e && e.key !== 'Enter'))
48
+ return;
49
+ const popover = document.getElementById(popoverTarget);
50
+ popover?.toggle(currentElement);
51
+ };
52
+ const PostPopover$1 = /*@__PURE__*/ proxyCustomElement(class PostPopover extends H {
53
+ validatePlacement() {
54
+ checkEmptyOrOneOf(this, 'placement', PLACEMENT_TYPES);
55
+ }
56
+ validateCloseButtonCaption() {
57
+ checkRequiredAndType(this, 'closeButtonCaption', 'string');
58
+ }
59
+ constructor() {
60
+ super();
61
+ this.__registerHost();
62
+ this.__attachShadow();
63
+ // Initialize a mutation observer for patching accessibility features
64
+ this.triggerObserver = IS_BROWSER
65
+ ? getAttributeObserver(popoverTargetAttribute, this.patchAccessibilityFeatures)
66
+ : null;
67
+ /**
68
+ * Defines the position of the popover relative to its trigger.
69
+ * Popovers are automatically flipped to the opposite side if there is not enough available space and are shifted towards the viewport if they would overlap edge boundaries.
70
+ * For supported values and behavior details, see the [Floating UI placement documentation](https://floating-ui.com/docs/computePosition#placement).
71
+ */
72
+ this.placement = 'top';
73
+ /**
74
+ * Show a little indicator arrow
75
+ */
76
+ // eslint-disable-next-line @stencil-community/ban-default-true
77
+ this.arrow = true;
78
+ this.localBeforeToggleHandler = this.beforeToggleHandler.bind(this);
79
+ }
80
+ connectedCallback() {
81
+ // Set up accessibility patcher and event listeners for the first component
82
+ if (popoverInstances === 0) {
83
+ window.addEventListener('pointerup', globalToggleHandler);
84
+ window.addEventListener('keydown', globalToggleHandler);
85
+ this.triggerObserver?.observe(document.body, {
86
+ subtree: true,
87
+ childList: true,
88
+ attributeFilter: [popoverTargetAttribute],
89
+ });
90
+ }
91
+ popoverInstances++;
92
+ this.triggers.forEach(trigger => trigger.setAttribute('aria-expanded', 'false'));
93
+ }
94
+ componentDidLoad() {
95
+ this.validatePlacement();
96
+ this.validateCloseButtonCaption();
97
+ this.popoverRef.addEventListener('beforetoggle', this.localBeforeToggleHandler);
98
+ }
99
+ disconnectedCallback() {
100
+ popoverInstances--;
101
+ // Remove listeners and observer after the last popover has been destructed
102
+ if (popoverInstances === 0) {
103
+ window.removeEventListener('click', globalToggleHandler);
104
+ window.removeEventListener('keydown', globalToggleHandler);
105
+ this.triggerObserver?.disconnect();
106
+ }
107
+ this.popoverRef.removeEventListener('beforetoggle', this.localBeforeToggleHandler);
108
+ this.triggers.forEach(trigger => trigger.removeAttribute('aria-expanded'));
109
+ }
110
+ /**
111
+ * Programmatically display the popover
112
+ * @param target An element with [data-popover-target="id"] where the popover should be shown
113
+ */
114
+ async show(target) {
115
+ this.popoverRef.show(target);
116
+ console.log(this.popoverRef);
117
+ target.setAttribute('aria-expanded', 'true');
118
+ }
119
+ /**
120
+ * Programmatically hide this popover
121
+ */
122
+ async hide() {
123
+ this.popoverRef.hide();
124
+ this.triggers.forEach(trigger => trigger.setAttribute('aria-expanded', 'false'));
125
+ }
126
+ /**
127
+ * Toggle popover display
128
+ * @param target An element with [data-popover-target="id"] where the popover should be anchored to
129
+ * @param force Pass true to always show or false to always hide
130
+ */
131
+ async toggle(target, force) {
132
+ const newState = await this.popoverRef.toggle(target, force);
133
+ this.triggers.forEach(trigger => trigger.setAttribute('aria-expanded', 'false'));
134
+ target.setAttribute('aria-expanded', `${newState}`);
135
+ }
136
+ get triggers() {
137
+ return document.querySelectorAll(`[${popoverTargetAttribute}="${this.host.id}"]`);
138
+ }
139
+ beforeToggleHandler() {
140
+ this.triggers.forEach(trigger => trigger.setAttribute('aria-expanded', 'false'));
141
+ }
142
+ patchAccessibilityFeatures(trigger) {
143
+ const force = trigger.hasAttribute(popoverTargetAttribute);
144
+ trigger.setAttribute('aria-expanded', force ? 'false' : null);
145
+ }
146
+ render() {
147
+ return (h(Host, { key: 'fe756429b10af594a621b5769f129ee82b1aa6eb', "data-version": version }, h("post-popovercontainer", { key: '437b8c75fc878b3edb916887cfab3933ed08c7b2', arrow: this.arrow, placement: this.placement, ref: e => (this.popoverRef = e) }, h("div", { key: '082e00cb11a042cad036252743261395874b0a86', class: "popover-container" }, h("div", { key: 'be2e39304472bf351a524dc4f6eeb3ec9da8fc58', class: "popover-content" }, h("slot", { key: 'e1cd722828d3b136ad96553d81334b31de3289f9' })), h("button", { key: 'b6fa750860d95bf223da9224d6fa8531e577b3a5', class: "btn-close", onClick: () => this.hide() }, h("span", { key: 'dd3fb8e0e0e15c58df5b1aacfe5d4a6b90ec3843', class: "visually-hidden" }, this.closeButtonCaption))))));
148
+ }
149
+ get host() { return this; }
150
+ static get watchers() { return {
151
+ "placement": ["validatePlacement"],
152
+ "closeButtonCaption": ["validateCloseButtonCaption"]
153
+ }; }
154
+ static get style() { return postPopoverCss; }
155
+ }, [1, "post-popover", {
156
+ "placement": [1],
157
+ "closeButtonCaption": [1, "close-button-caption"],
158
+ "arrow": [4],
159
+ "show": [64],
160
+ "hide": [64],
161
+ "toggle": [64]
162
+ }, undefined, {
163
+ "placement": ["validatePlacement"],
164
+ "closeButtonCaption": ["validateCloseButtonCaption"]
165
+ }]);
166
+ function defineCustomElement$1() {
167
+ if (typeof customElements === "undefined") {
168
+ return;
169
+ }
170
+ const components = ["post-popover", "post-popovercontainer"];
171
+ components.forEach(tagName => { switch (tagName) {
172
+ case "post-popover":
173
+ if (!customElements.get(tagName)) {
174
+ customElements.define(tagName, PostPopover$1);
175
+ }
176
+ break;
177
+ case "post-popovercontainer":
178
+ if (!customElements.get(tagName)) {
179
+ defineCustomElement$2();
180
+ }
181
+ break;
182
+ } });
183
+ }
184
+ defineCustomElement$1();
2
185
 
3
186
  const PostPopover = PostPopover$1;
4
187
  const defineCustomElement = defineCustomElement$1;
@@ -1,4 +1,4 @@
1
- import { P as PostPopovercontainer$1, d as defineCustomElement$1 } from './post-popovercontainer2.js';
1
+ import { P as PostPopovercontainer$1, d as defineCustomElement$1 } from './p-elg4VvHg.js';
2
2
 
3
3
  const PostPopovercontainer = PostPopovercontainer$1;
4
4
  const defineCustomElement = defineCustomElement$1;