@swisspost/design-system-components 9.0.0-next.33 → 9.0.0-next.34

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 (332) hide show
  1. package/dist/cjs/{attribute-observer-6d8b886b.js → attribute-observer-c3a805b2.js} +3 -1
  2. package/dist/cjs/{breakpoints-c6247c71.js → breakpoints-cdf1b747.js} +12 -7
  3. package/dist/cjs/get-root-8102fecd.js +17 -0
  4. package/dist/cjs/{index-d6bf2c66.js → index-b60129c4.js} +2 -2
  5. package/dist/cjs/index.cjs.js +24 -25
  6. package/dist/cjs/loader.cjs.js +2 -2
  7. package/dist/cjs/long-press-event-6e62d113.js +266 -0
  8. package/dist/cjs/{package-3562c265.js → package-3426e8f7.js} +1 -1
  9. package/dist/cjs/{post-accordion-6c5681ba.js → post-accordion-3ac8dca8.js} +5 -5
  10. package/dist/cjs/{post-accordion-item-05a78451.js → post-accordion-item-aace6bc2.js} +5 -5
  11. package/dist/cjs/post-accordion-item.cjs.entry.js +5 -4
  12. package/dist/cjs/post-accordion.cjs.entry.js +4 -3
  13. package/dist/cjs/{post-avatar-6710a77a.js → post-avatar-53abd22f.js} +5 -4
  14. package/dist/cjs/post-avatar.cjs.entry.js +4 -3
  15. package/dist/cjs/{post-back-to-top-d0662842.js → post-back-to-top-b231fc1c.js} +9 -9
  16. package/dist/cjs/post-back-to-top.cjs.entry.js +4 -3
  17. package/dist/cjs/{post-banner-bd97db9c.js → post-banner-e6d14bf1.js} +4 -8
  18. package/dist/cjs/post-banner.cjs.entry.js +4 -3
  19. package/dist/cjs/{post-breadcrumb-36ab841c.js → post-breadcrumb-a929f2a6.js} +30 -22
  20. package/dist/cjs/post-breadcrumb-item_2.cjs.entry.js +4 -3
  21. package/dist/cjs/post-breadcrumb.cjs.entry.js +4 -4
  22. package/dist/cjs/{post-card-control-155fb433.js → post-card-control-cbee7b86.js} +26 -40
  23. package/dist/cjs/post-card-control.cjs.entry.js +4 -3
  24. package/dist/cjs/post-closebutton_15.cjs.entry.js +5 -5
  25. package/dist/cjs/{post-collapsible-trigger-6601c554.js → post-collapsible-trigger-d1cb592a.js} +24 -41
  26. package/dist/cjs/post-collapsible_2.cjs.entry.js +5 -5
  27. package/dist/cjs/post-components.cjs.js +2 -2
  28. package/dist/cjs/{post-footer-23699aef.js → post-footer-4290dafc.js} +11 -11
  29. package/dist/cjs/post-footer.cjs.entry.js +4 -4
  30. package/dist/cjs/{post-linkarea-8e5e1a9f.js → post-linkarea-f22f4f92.js} +5 -5
  31. package/dist/cjs/post-linkarea.cjs.entry.js +3 -3
  32. package/dist/cjs/{post-menu-item-8dd94792.js → post-menu-item-afabaa61.js} +4 -4
  33. package/dist/cjs/{post-popover-858cbd12.js → post-popover-a4c72d38.js} +16 -14
  34. package/dist/cjs/post-popover.cjs.entry.js +5 -4
  35. package/dist/cjs/{post-rating-ef592484.js → post-rating-b87616fc.js} +4 -14
  36. package/dist/cjs/post-rating.cjs.entry.js +3 -3
  37. package/dist/cjs/{post-tab-header-d785e7fc.js → post-tab-header-45cb6bb4.js} +5 -4
  38. package/dist/cjs/post-tab-header.cjs.entry.js +4 -3
  39. package/dist/cjs/{post-tab-panel-41ea371e.js → post-tab-panel-00d16ba7.js} +4 -4
  40. package/dist/cjs/post-tab-panel.cjs.entry.js +3 -3
  41. package/dist/cjs/{post-tabs-c6f00130.js → post-tabs-2c3a89d0.js} +5 -12
  42. package/dist/cjs/post-tabs.cjs.entry.js +4 -3
  43. package/dist/cjs/{post-tag-d1a1176c.js → post-tag-370a2f4d.js} +3 -3
  44. package/dist/cjs/post-tag.cjs.entry.js +3 -3
  45. package/dist/cjs/{post-togglebutton-02c56b7b.js → post-togglebutton-2c9552e3.js} +935 -460
  46. package/dist/cjs/{post-tooltip-3176e280.js → post-tooltip-4d4d2ea9.js} +39 -296
  47. package/dist/cjs/post-tooltip.cjs.entry.js +5 -4
  48. package/dist/collection/animations/collapse.js +3 -1
  49. package/dist/collection/components/post-accordion/post-accordion.js +1 -3
  50. package/dist/collection/components/post-accordion-item/post-accordion-item.js +0 -2
  51. package/dist/collection/components/post-avatar/post-avatar.js +3 -4
  52. package/dist/collection/components/post-back-to-top/post-back-to-top.js +6 -8
  53. package/dist/collection/components/post-banner/post-banner.js +0 -6
  54. package/dist/collection/components/post-breadcrumb/post-breadcrumb.js +16 -19
  55. package/dist/collection/components/post-breadcrumb-item/post-breadcrumb-item.js +0 -2
  56. package/dist/collection/components/post-card-control/post-card-control.js +24 -40
  57. package/dist/collection/components/post-closebutton/post-closebutton.css +1 -0
  58. package/dist/collection/components/post-closebutton/post-closebutton.js +12 -2
  59. package/dist/collection/components/post-collapsible/post-collapsible.js +4 -10
  60. package/dist/collection/components/post-collapsible-trigger/post-collapsible-trigger.js +15 -28
  61. package/dist/collection/components/post-footer/post-footer.js +8 -9
  62. package/dist/collection/components/post-header/post-header.css +1 -1
  63. package/dist/collection/components/post-header/post-header.js +13 -22
  64. package/dist/collection/components/post-icon/post-icon.js +4 -6
  65. package/dist/collection/components/post-language-option/post-language-option.js +1 -10
  66. package/dist/collection/components/post-language-switch/post-language-switch.js +7 -19
  67. package/dist/collection/components/post-linkarea/post-linkarea.css +1 -1
  68. package/dist/collection/components/post-linkarea/post-linkarea.js +2 -2
  69. package/dist/collection/components/post-list/post-list.js +1 -3
  70. package/dist/collection/components/post-list-item/post-list-item.js +1 -2
  71. package/dist/collection/components/post-logo/post-logo.js +1 -2
  72. package/dist/collection/components/post-mainnavigation/post-mainnavigation.css +1 -1
  73. package/dist/collection/components/post-mainnavigation/post-mainnavigation.js +98 -182
  74. package/dist/collection/components/post-megadropdown/post-megadropdown.js +20 -30
  75. package/dist/collection/components/post-megadropdown-trigger/post-megadropdown-trigger.js +36 -37
  76. package/dist/collection/components/post-menu/post-menu.js +45 -53
  77. package/dist/collection/components/post-menu-trigger/post-menu-trigger.js +13 -15
  78. package/dist/collection/components/post-popover/post-popover.js +12 -12
  79. package/dist/collection/components/post-popovercontainer/post-popovercontainer.js +30 -33
  80. package/dist/collection/components/post-rating/post-rating.js +1 -12
  81. package/dist/collection/components/post-tab-header/post-tab-header.js +2 -3
  82. package/dist/collection/components/post-tab-panel/post-tab-panel.js +2 -3
  83. package/dist/collection/components/post-tabs/post-tabs.js +1 -10
  84. package/dist/collection/components/post-tag/post-tag.js +0 -1
  85. package/dist/collection/components/post-togglebutton/post-togglebutton.js +10 -11
  86. package/dist/collection/components/post-tooltip/post-tooltip.js +36 -32
  87. package/dist/collection/utils/attribute-observer.js +2 -1
  88. package/dist/collection/utils/breakpoints.js +9 -7
  89. package/dist/collection/utils/environment.js +2 -0
  90. package/dist/collection/utils/get-root.js +6 -1
  91. package/dist/collection/utils/index.js +5 -0
  92. package/dist/collection/utils/is-motion-reduced.js +2 -1
  93. package/dist/components/attribute-observer.js +3 -1
  94. package/dist/components/breakpoints.js +12 -8
  95. package/dist/components/get-root.js +7 -1
  96. package/dist/components/long-press-event.js +264 -0
  97. package/dist/components/package.js +1 -1
  98. package/dist/components/post-accordion-item2.js +3 -3
  99. package/dist/components/post-accordion2.js +3 -3
  100. package/dist/components/post-avatar2.js +4 -3
  101. package/dist/components/post-back-to-top2.js +8 -8
  102. package/dist/components/post-banner2.js +2 -6
  103. package/dist/components/post-breadcrumb-item2.js +2 -2
  104. package/dist/components/post-breadcrumb2.js +28 -20
  105. package/dist/components/post-card-control2.js +25 -39
  106. package/dist/components/post-closebutton2.js +8 -3
  107. package/dist/components/post-collapsible-trigger2.js +19 -31
  108. package/dist/components/post-collapsible2.js +9 -12
  109. package/dist/components/post-footer2.js +8 -8
  110. package/dist/components/post-header2.js +15 -23
  111. package/dist/components/post-icon2.js +5 -5
  112. package/dist/components/post-language-option2.js +3 -10
  113. package/dist/components/post-language-switch2.js +9 -18
  114. package/dist/components/post-linkarea2.js +5 -4
  115. package/dist/components/post-list-item2.js +2 -2
  116. package/dist/components/post-list2.js +2 -3
  117. package/dist/components/post-logo2.js +3 -2
  118. package/dist/components/post-mainnavigation2.js +94 -182
  119. package/dist/components/post-megadropdown-trigger2.js +38 -37
  120. package/dist/components/post-megadropdown2.js +21 -30
  121. package/dist/components/post-menu-trigger2.js +15 -15
  122. package/dist/components/post-menu2.js +48 -54
  123. package/dist/components/post-popover2.js +14 -12
  124. package/dist/components/post-popovercontainer2.js +638 -36
  125. package/dist/components/post-rating2.js +2 -12
  126. package/dist/components/post-tab-header2.js +4 -3
  127. package/dist/components/post-tab-panel2.js +3 -3
  128. package/dist/components/post-tabs2.js +3 -10
  129. package/dist/components/post-tag2.js +1 -1
  130. package/dist/components/post-togglebutton2.js +12 -11
  131. package/dist/components/post-tooltip2.js +37 -294
  132. package/dist/docs.json +21 -15
  133. package/dist/esm/{attribute-observer-2f203993.js → attribute-observer-009deee5.js} +3 -1
  134. package/dist/esm/{breakpoints-bbe0c54e.js → breakpoints-7812702e.js} +12 -8
  135. package/dist/esm/get-root-1b1af46f.js +15 -0
  136. package/dist/esm/{index-3419e46d.js → index-f4d19816.js} +2 -2
  137. package/dist/esm/index.js +24 -25
  138. package/dist/esm/loader.js +3 -3
  139. package/dist/esm/long-press-event-04d24397.js +264 -0
  140. package/dist/esm/package-8986a24c.js +3 -0
  141. package/dist/esm/{post-accordion-024451fa.js → post-accordion-577b52a0.js} +5 -5
  142. package/dist/esm/{post-accordion-item-19b996d1.js → post-accordion-item-99053b41.js} +5 -5
  143. package/dist/esm/post-accordion-item.entry.js +5 -4
  144. package/dist/esm/post-accordion.entry.js +4 -3
  145. package/dist/esm/{post-avatar-33aed045.js → post-avatar-2914706c.js} +5 -4
  146. package/dist/esm/post-avatar.entry.js +4 -3
  147. package/dist/esm/{post-back-to-top-7dd43c3b.js → post-back-to-top-4c7b1b47.js} +9 -9
  148. package/dist/esm/post-back-to-top.entry.js +4 -3
  149. package/dist/esm/{post-banner-28d18721.js → post-banner-295fd0f5.js} +4 -8
  150. package/dist/esm/post-banner.entry.js +4 -3
  151. package/dist/esm/{post-breadcrumb-d86fae7b.js → post-breadcrumb-1abfb312.js} +30 -22
  152. package/dist/esm/post-breadcrumb-item_2.entry.js +4 -3
  153. package/dist/esm/post-breadcrumb.entry.js +4 -4
  154. package/dist/esm/{post-card-control-aa043898.js → post-card-control-ad72d4f8.js} +26 -40
  155. package/dist/esm/post-card-control.entry.js +4 -3
  156. package/dist/esm/post-closebutton_15.entry.js +5 -5
  157. package/dist/esm/{post-collapsible-trigger-b1612866.js → post-collapsible-trigger-6b4ece20.js} +24 -41
  158. package/dist/esm/post-collapsible_2.entry.js +5 -5
  159. package/dist/esm/post-components.js +3 -3
  160. package/dist/esm/{post-footer-2ed5e520.js → post-footer-a5105e66.js} +11 -11
  161. package/dist/esm/post-footer.entry.js +4 -4
  162. package/dist/esm/{post-linkarea-802bf774.js → post-linkarea-22f97a88.js} +5 -5
  163. package/dist/esm/post-linkarea.entry.js +3 -3
  164. package/dist/esm/{post-menu-item-d97611d8.js → post-menu-item-9465a1f3.js} +4 -4
  165. package/dist/esm/{post-popover-e51a7a18.js → post-popover-e9b4569c.js} +16 -14
  166. package/dist/esm/post-popover.entry.js +5 -4
  167. package/dist/esm/{post-rating-e1ac47ce.js → post-rating-ae16e3c9.js} +4 -14
  168. package/dist/esm/post-rating.entry.js +3 -3
  169. package/dist/esm/{post-tab-header-06dcbf7f.js → post-tab-header-11f23150.js} +5 -4
  170. package/dist/esm/post-tab-header.entry.js +4 -3
  171. package/dist/esm/{post-tab-panel-75932601.js → post-tab-panel-0f3a952e.js} +4 -4
  172. package/dist/esm/post-tab-panel.entry.js +3 -3
  173. package/dist/esm/{post-tabs-3ef2ea23.js → post-tabs-1192509c.js} +5 -12
  174. package/dist/esm/post-tabs.entry.js +4 -3
  175. package/dist/esm/{post-tag-a3b989e0.js → post-tag-8be0a71c.js} +3 -3
  176. package/dist/esm/post-tag.entry.js +3 -3
  177. package/dist/esm/{post-togglebutton-db251030.js → post-togglebutton-b634fc7c.js} +935 -460
  178. package/dist/esm/{post-tooltip-c256d714.js → post-tooltip-f64bd0cc.js} +39 -296
  179. package/dist/esm/post-tooltip.entry.js +5 -4
  180. package/dist/post-components/index.esm.js +1 -1
  181. package/dist/post-components/p-0f398677.js +1 -0
  182. package/dist/post-components/p-1038fc25.js +1 -0
  183. package/dist/post-components/p-30f94eca.entry.js +1 -0
  184. package/dist/post-components/p-31bb6dc5.entry.js +1 -0
  185. package/dist/post-components/p-32173742.js +1 -0
  186. package/dist/post-components/p-338a2507.js +1 -0
  187. package/dist/post-components/p-36540dd6.entry.js +1 -0
  188. package/dist/post-components/p-3aa766a6.js +1 -0
  189. package/dist/post-components/p-3b0158b3.js +1 -0
  190. package/dist/post-components/p-40db8cd5.js +1 -0
  191. package/dist/post-components/p-44f13ce4.entry.js +1 -0
  192. package/dist/post-components/p-46a9324f.entry.js +1 -0
  193. package/dist/post-components/p-49c5aa99.js +1 -0
  194. package/dist/post-components/p-4cd4a936.entry.js +1 -0
  195. package/dist/post-components/p-548ef2f5.entry.js +1 -0
  196. package/dist/post-components/p-58f453dd.js +1 -0
  197. package/dist/post-components/p-5f54b77f.js +1 -0
  198. package/dist/post-components/p-60bb7f26.js +1 -0
  199. package/dist/post-components/p-60bfa4be.entry.js +1 -0
  200. package/dist/post-components/p-6b31a76a.js +1 -0
  201. package/dist/post-components/p-6ee81c5d.js +1 -0
  202. package/dist/post-components/p-6faad212.entry.js +1 -0
  203. package/dist/post-components/p-722ffaae.js +1 -0
  204. package/dist/post-components/p-74a0b44c.entry.js +1 -0
  205. package/dist/post-components/{p-dbe31632.js → p-78b4c699.js} +1 -1
  206. package/dist/post-components/p-7aa0468b.entry.js +1 -0
  207. package/dist/post-components/p-7afc495e.entry.js +1 -0
  208. package/dist/post-components/p-8db32dab.js +8 -0
  209. package/dist/post-components/p-96034ba4.entry.js +1 -0
  210. package/dist/post-components/p-9aaf9f54.js +1 -0
  211. package/dist/post-components/{p-5c758f41.js → p-9e461613.js} +1 -1
  212. package/dist/post-components/p-ab4073be.js +1 -0
  213. package/dist/post-components/p-abd7eb91.js +8 -0
  214. package/dist/post-components/p-afb8a487.entry.js +1 -0
  215. package/dist/post-components/p-b003b381.js +1 -0
  216. package/dist/post-components/p-b97dea1e.entry.js +1 -0
  217. package/dist/post-components/p-be37cf2a.js +1 -0
  218. package/dist/post-components/p-c31b56ed.js +1 -0
  219. package/dist/post-components/p-ccbb51fe.js +1 -0
  220. package/dist/post-components/p-d3900385.entry.js +1 -0
  221. package/dist/post-components/p-ef49153c.entry.js +1 -0
  222. package/dist/post-components/p-f27e5691.js +1 -0
  223. package/dist/post-components/p-f553019f.entry.js +1 -0
  224. package/dist/post-components/p-ffc1db17.entry.js +1 -0
  225. package/dist/post-components/post-components.esm.js +1 -1
  226. package/dist/types/components/post-avatar/post-avatar.d.ts +1 -1
  227. package/dist/types/components/post-card-control/post-card-control.d.ts +1 -1
  228. package/dist/types/components/post-collapsible-trigger/post-collapsible-trigger.d.ts +4 -14
  229. package/dist/types/components/post-footer/post-footer.d.ts +2 -2
  230. package/dist/types/components/post-header/post-header.d.ts +1 -0
  231. package/dist/types/components/post-icon/post-icon.d.ts +0 -1
  232. package/dist/types/components/post-language-switch/post-language-switch.d.ts +2 -5
  233. package/dist/types/components/post-mainnavigation/post-mainnavigation.d.ts +14 -39
  234. package/dist/types/components/post-menu-trigger/post-menu-trigger.d.ts +1 -1
  235. package/dist/types/components/post-popover/post-popover.d.ts +3 -1
  236. package/dist/types/components/post-popovercontainer/post-popovercontainer.d.ts +1 -1
  237. package/dist/types/components/post-tooltip/post-tooltip.d.ts +6 -1
  238. package/dist/types/components.d.ts +4 -4
  239. package/dist/types/popover-fn.d.ts +11 -0
  240. package/dist/types/utils/environment.d.ts +2 -0
  241. package/dist/types/utils/get-root.d.ts +4 -0
  242. package/dist/types/utils/index.d.ts +5 -0
  243. package/loaders/attribute-observer.js +3 -1
  244. package/loaders/breakpoints.js +12 -8
  245. package/loaders/get-root.js +7 -1
  246. package/loaders/index.js +3 -3
  247. package/loaders/long-press-event.js +264 -0
  248. package/loaders/package.js +1 -1
  249. package/loaders/post-accordion-item2.js +3 -3
  250. package/loaders/post-accordion.js +3 -3
  251. package/loaders/post-avatar.js +4 -3
  252. package/loaders/post-back-to-top.js +8 -8
  253. package/loaders/post-banner.js +2 -6
  254. package/loaders/post-breadcrumb-item2.js +2 -2
  255. package/loaders/post-breadcrumb.js +28 -20
  256. package/loaders/post-card-control.js +25 -39
  257. package/loaders/post-closebutton.js +8 -3
  258. package/loaders/post-collapsible-trigger2.js +19 -31
  259. package/loaders/post-collapsible2.js +9 -12
  260. package/loaders/post-footer.js +8 -8
  261. package/loaders/post-header.js +15 -23
  262. package/loaders/post-icon2.js +5 -5
  263. package/loaders/post-language-option.js +3 -10
  264. package/loaders/post-language-switch.js +9 -18
  265. package/loaders/post-linkarea.js +5 -4
  266. package/loaders/post-list-item.js +2 -2
  267. package/loaders/post-list.js +2 -3
  268. package/loaders/post-logo.js +3 -2
  269. package/loaders/post-mainnavigation.js +94 -182
  270. package/loaders/post-megadropdown-trigger.js +38 -37
  271. package/loaders/post-megadropdown.js +21 -30
  272. package/loaders/post-menu-trigger2.js +15 -15
  273. package/loaders/post-menu2.js +48 -54
  274. package/loaders/post-popover.js +14 -12
  275. package/loaders/post-popovercontainer2.js +638 -36
  276. package/loaders/post-rating.js +2 -12
  277. package/loaders/post-tab-header.js +4 -3
  278. package/loaders/post-tab-panel.js +3 -3
  279. package/loaders/post-tabs.js +3 -10
  280. package/loaders/post-tag.js +1 -1
  281. package/loaders/post-togglebutton.js +12 -11
  282. package/loaders/post-tooltip.js +37 -294
  283. package/package.json +5 -5
  284. package/dist/cjs/debounce-158fd76f.js +0 -13
  285. package/dist/cjs/get-root-7a3498ef.js +0 -11
  286. package/dist/components/debounce.js +0 -11
  287. package/dist/esm/debounce-e54c7131.js +0 -11
  288. package/dist/esm/get-root-7af2e0d1.js +0 -9
  289. package/dist/esm/package-da68ab5a.js +0 -3
  290. package/dist/post-components/p-1376c653.js +0 -1
  291. package/dist/post-components/p-13835969.js +0 -1
  292. package/dist/post-components/p-13fdbaf6.entry.js +0 -1
  293. package/dist/post-components/p-1e2169ae.entry.js +0 -1
  294. package/dist/post-components/p-23e4c270.entry.js +0 -1
  295. package/dist/post-components/p-2641e06b.js +0 -1
  296. package/dist/post-components/p-2d3b16c7.js +0 -1
  297. package/dist/post-components/p-33c35e15.js +0 -1
  298. package/dist/post-components/p-3b247d71.entry.js +0 -1
  299. package/dist/post-components/p-42a5fdf8.js +0 -1
  300. package/dist/post-components/p-4ed7bab6.js +0 -1
  301. package/dist/post-components/p-5aeb3656.js +0 -1
  302. package/dist/post-components/p-5c518421.js +0 -1
  303. package/dist/post-components/p-6db1a2e0.entry.js +0 -1
  304. package/dist/post-components/p-6fe98184.entry.js +0 -1
  305. package/dist/post-components/p-7d731077.entry.js +0 -1
  306. package/dist/post-components/p-7ee47334.entry.js +0 -1
  307. package/dist/post-components/p-8223e97b.js +0 -1
  308. package/dist/post-components/p-8a8376d0.js +0 -1
  309. package/dist/post-components/p-8bb828cf.entry.js +0 -1
  310. package/dist/post-components/p-8e55ddd2.js +0 -1
  311. package/dist/post-components/p-9681efce.js +0 -1
  312. package/dist/post-components/p-96a59372.entry.js +0 -1
  313. package/dist/post-components/p-9748a355.js +0 -1
  314. package/dist/post-components/p-99c8fd43.entry.js +0 -1
  315. package/dist/post-components/p-ac042f7a.entry.js +0 -1
  316. package/dist/post-components/p-c34cacb7.js +0 -1
  317. package/dist/post-components/p-c3a970c5.js +0 -1
  318. package/dist/post-components/p-c4651d32.entry.js +0 -1
  319. package/dist/post-components/p-c9b61d31.entry.js +0 -1
  320. package/dist/post-components/p-d16dd7f9.js +0 -1
  321. package/dist/post-components/p-d81c5908.entry.js +0 -1
  322. package/dist/post-components/p-e1baac59.js +0 -1
  323. package/dist/post-components/p-e2294014.js +0 -15
  324. package/dist/post-components/p-e8ff8122.js +0 -1
  325. package/dist/post-components/p-ed78d04a.entry.js +0 -1
  326. package/dist/post-components/p-f1c0924a.js +0 -1
  327. package/dist/post-components/p-f1db96d0.entry.js +0 -1
  328. package/dist/post-components/p-f7aa917f.entry.js +0 -1
  329. package/dist/post-components/p-f96b80cc.entry.js +0 -1
  330. package/dist/post-components/p-fc91cbc2.js +0 -1
  331. package/dist/post-components/p-fd78716d.js +0 -1
  332. package/loaders/debounce.js +0 -11
@@ -1,6 +1,7 @@
1
1
  import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
2
  import { v as version } from './package.js';
3
3
  import { c as checkType } from './check-type.js';
4
+ import './breakpoints.js';
4
5
  import { e as eventGuard } from './event-guard.js';
5
6
 
6
7
  const postMegadropdownTriggerCss = "post-megadropdown-trigger{width:100%;position:relative;z-index:3}";
@@ -10,20 +11,45 @@ const PostMegadropdownTrigger = /*@__PURE__*/ proxyCustomElement(class PostMegad
10
11
  constructor() {
11
12
  super();
12
13
  this.__registerHost();
14
+ /**
15
+ * Reference to the slotted button within the trigger, if present.
16
+ * Used to manage click and key events for mega dropdown control.
17
+ */
18
+ this.slottedButton = null;
19
+ /**
20
+ * Tracks whether this trigger's dropdown was expanded before a state change.
21
+ * Used to determine if this trigger should handle focus when its dropdown closes.
22
+ */
23
+ this.wasExpanded = false;
24
+ this.handleKeyDown = (event) => {
25
+ if (event.key === 'Enter' || event.key === ' ') {
26
+ event.preventDefault();
27
+ this.handleToggle();
28
+ if (this.megadropdown && !this.ariaExpanded) {
29
+ setTimeout(() => this.megadropdown.focusFirst(), 100);
30
+ }
31
+ }
32
+ };
33
+ this.handleToggleMegadropdown = (event) => {
34
+ eventGuard(this.host, event, { targetLocalName: 'post-megadropdown' }, () => {
35
+ if (event.target.id === this.for) {
36
+ this.ariaExpanded = event.detail.isVisible;
37
+ // Focus on the trigger parent of the dropdown after it's closed if the close button had been clicked
38
+ if (this.wasExpanded && !this.ariaExpanded && event.detail.focusParent) {
39
+ setTimeout(() => {
40
+ this.slottedButton?.focus();
41
+ }, 100);
42
+ }
43
+ this.wasExpanded = this.ariaExpanded;
44
+ if (this.slottedButton) {
45
+ this.slottedButton.setAttribute('aria-expanded', this.ariaExpanded.toString());
46
+ }
47
+ }
48
+ });
49
+ };
13
50
  this.for = undefined;
14
51
  this.ariaExpanded = false;
15
52
  }
16
- get host() { return this; }
17
- /**
18
- * Reference to the slotted button within the trigger, if present.
19
- * Used to manage click and key events for mega dropdown control.
20
- */
21
- slottedButton = null;
22
- /**
23
- * Tracks whether this trigger's dropdown was expanded before a state change.
24
- * Used to determine if this trigger should handle focus when its dropdown closes.
25
- */
26
- wasExpanded = false;
27
53
  /**
28
54
  * Watch for changes to the `for` property to validate its type and ensure it is a string.
29
55
  * @param forValue - The new value of the `for` property.
@@ -45,32 +71,6 @@ const PostMegadropdownTrigger = /*@__PURE__*/ proxyCustomElement(class PostMegad
45
71
  console.warn(`No post-megadropdown found with ID: ${this.for}`);
46
72
  }
47
73
  }
48
- handleKeyDown = (event) => {
49
- if (event.key === 'Enter' || event.key === ' ') {
50
- event.preventDefault();
51
- this.handleToggle();
52
- if (this.megadropdown && !this.ariaExpanded) {
53
- setTimeout(() => this.megadropdown.focusFirst(), 100);
54
- }
55
- }
56
- };
57
- handleToggleMegadropdown = (event) => {
58
- eventGuard(this.host, event, { targetLocalName: 'post-megadropdown' }, () => {
59
- if (event.target.id === this.for) {
60
- this.ariaExpanded = event.detail.isVisible;
61
- // Focus on the trigger parent of the dropdown after it's closed if the close button had been clicked
62
- if (this.wasExpanded && !this.ariaExpanded && event.detail.focusParent) {
63
- setTimeout(() => {
64
- this.slottedButton?.focus();
65
- }, 100);
66
- }
67
- this.wasExpanded = this.ariaExpanded;
68
- if (this.slottedButton) {
69
- this.slottedButton.setAttribute('aria-expanded', this.ariaExpanded.toString());
70
- }
71
- }
72
- });
73
- };
74
74
  componentDidLoad() {
75
75
  this.validateControlFor();
76
76
  // Check if the mega dropdown attached to the trigger is expanded or not
@@ -93,6 +93,7 @@ const PostMegadropdownTrigger = /*@__PURE__*/ proxyCustomElement(class PostMegad
93
93
  render() {
94
94
  return (h(Host, { key: '86b85efede8d9b19f3f0560f500f33f5e172177f', "data-version": version, "tab-index": "-1" }, h("button", { key: '0f810e4c38bc4abf23ac60ab27b36d408e7ced0d' }, h("slot", { key: '2a522ac7e15ef8ac077b73cdebf629b89ea173c6' }))));
95
95
  }
96
+ get host() { return this; }
96
97
  static get watchers() { return {
97
98
  "for": ["validateControlFor"]
98
99
  }; }
@@ -11,28 +11,34 @@ const PostMegadropdown = /*@__PURE__*/ proxyCustomElement(class PostMegadropdown
11
11
  super();
12
12
  this.__registerHost();
13
13
  this.postToggleMegadropdown = createEvent(this, "postToggleMegadropdown", 7);
14
+ this.handleClickOutside = (event) => {
15
+ if (this.device !== 'desktop')
16
+ return;
17
+ const target = event.target;
18
+ if (this.host.contains(target)) {
19
+ return;
20
+ }
21
+ if (target instanceof HTMLElement) {
22
+ const trigger = target.closest('post-megadropdown-trigger');
23
+ if (trigger) {
24
+ const targetDropdownId = trigger.getAttribute('for');
25
+ if (targetDropdownId !== this.host.id) {
26
+ return;
27
+ }
28
+ }
29
+ }
30
+ this.hide(false);
31
+ };
14
32
  this.device = breakpoint.get('name');
15
33
  this.isVisible = false;
16
34
  this.animationClass = null;
17
35
  }
18
- firstFocusableEl;
19
- lastFocusableEl;
20
- get host() { return this; }
21
- /** Tracks the currently active dropdown instance. */
22
- static activeDropdown = null;
23
36
  breakpointChange(e) {
24
37
  this.device = e.detail;
25
38
  if (this.device === 'desktop' && this.isVisible) {
26
39
  this.animationClass = null;
27
40
  }
28
41
  }
29
- /**
30
- * Emits when the dropdown is shown or hidden.
31
- * The event payload is an object.
32
- * `isVisible` is true when the dropdown gets opened and false when it gets closed
33
- * `focusParent` determines whether after the closing of the mega dropdown, the focus should go back to the trigger parent or naturally go to the next focusable element in the page
34
- **/
35
- postToggleMegadropdown;
36
42
  disconnectedCallback() {
37
43
  this.removeListeners();
38
44
  window.removeEventListener('postBreakpoint:name', this.breakpointChange.bind(this));
@@ -112,24 +118,6 @@ const PostMegadropdown = /*@__PURE__*/ proxyCustomElement(class PostMegadropdown
112
118
  this.removeListeners();
113
119
  }
114
120
  }
115
- handleClickOutside = (event) => {
116
- if (this.device !== 'desktop')
117
- return;
118
- const target = event.target;
119
- if (this.host.contains(target)) {
120
- return;
121
- }
122
- if (target instanceof HTMLElement) {
123
- const trigger = target.closest('post-megadropdown-trigger');
124
- if (trigger) {
125
- const targetDropdownId = trigger.getAttribute('for');
126
- if (targetDropdownId !== this.host.id) {
127
- return;
128
- }
129
- }
130
- }
131
- this.hide(false);
132
- };
133
121
  addListeners() {
134
122
  this.host.addEventListener('keydown', e => this.keyboardHandler(e));
135
123
  document.addEventListener('keyup', e => this.handleTabOutside(e));
@@ -172,6 +160,7 @@ const PostMegadropdown = /*@__PURE__*/ proxyCustomElement(class PostMegadropdown
172
160
  const containerStyle = this.isVisible ? {} : { display: 'none' };
173
161
  return (h(Host, { key: '7426a12ebaeac0ce3b8402c3da4d5393daca059b', version: version }, h("div", { key: 'd47b60c334577f5662f19912f12ce941b4b52d94', class: `megadropdown-container ${this.animationClass || ''}`, style: containerStyle, onAnimationEnd: () => this.handleAnimationEnd() }, h("div", { key: '2798f217b2b3e43c3c63072884bbbbe7d99ed62f', class: "megadropdown" }, h("slot", { key: 'b61f82bbc7f87f65d9b6957e7a4e5d6790b6dd00', name: "megadropdown-title" }), h("div", { key: 'f4996a819511cb59185faeedbdcec4be6e6f8a24', class: "megadropdown-content" }, h("slot", { key: '54f695c3b3d30a6a1aae7f7dc6f65f4d4d27de68' })), h("div", { key: 'b1334295c7d758e20c85b6c6c8cefc31dcf09e20', onClick: () => this.hide(true), class: "back-button" }, h("slot", { key: 'c4db69fa3207ce4cb47b725e37b1993820a2a64c', name: "back-button" })), h("div", { key: '68b22a3222382586fc749dec63e36edae84360c1', onClick: () => this.hide(true), class: "close-button" }, h("slot", { key: '8023b75c931a95dbd9552c1a713790e77e40f526', name: "close-button" }))))));
174
162
  }
163
+ get host() { return this; }
175
164
  static get style() { return PostMegadropdownStyle0; }
176
165
  }, [4, "post-megadropdown", {
177
166
  "device": [32],
@@ -182,6 +171,8 @@ const PostMegadropdown = /*@__PURE__*/ proxyCustomElement(class PostMegadropdown
182
171
  "hide": [64],
183
172
  "focusFirst": [64]
184
173
  }]);
174
+ /** Tracks the currently active dropdown instance. */
175
+ PostMegadropdown.activeDropdown = null;
185
176
  function defineCustomElement() {
186
177
  if (typeof customElements === "undefined") {
187
178
  return;
@@ -1,6 +1,7 @@
1
1
  import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
2
  import { v as version } from './package.js';
3
3
  import { c as checkType } from './check-type.js';
4
+ import './breakpoints.js';
4
5
  import { g as getRoot } from './get-root.js';
5
6
 
6
7
  const postMenuTriggerCss = ":host{display:inline-block}";
@@ -10,16 +11,20 @@ const PostMenuTrigger = /*@__PURE__*/ proxyCustomElement(class PostMenuTrigger e
10
11
  constructor() {
11
12
  super();
12
13
  this.__registerHost();
14
+ /**
15
+ * Reference to the slotted button within the trigger, if present.
16
+ * Used to manage click and key events for menu control.
17
+ */
18
+ this.slottedButton = null;
19
+ this.handleKeyDown = (e) => {
20
+ if (e.key === 'ArrowUp' || e.key === 'ArrowDown') {
21
+ e.preventDefault();
22
+ this.handleToggle();
23
+ }
24
+ };
13
25
  this.for = undefined;
14
26
  this.ariaExpanded = false;
15
27
  }
16
- get host() { return this; }
17
- /**
18
- * Reference to the slotted button within the trigger, if present.
19
- * Used to manage click and key events for menu control.
20
- */
21
- slottedButton = null;
22
- root;
23
28
  /**
24
29
  * Watch for changes to the `for` property to validate its type and ensure it is a string.
25
30
  * @param forValue - The new value of the `for` property.
@@ -39,12 +44,6 @@ const PostMenuTrigger = /*@__PURE__*/ proxyCustomElement(class PostMenuTrigger e
39
44
  console.warn(`No post-menu found with ID: ${this.for}`);
40
45
  }
41
46
  }
42
- handleKeyDown = (e) => {
43
- if (e.key === 'ArrowUp' || e.key === 'ArrowDown') {
44
- e.preventDefault();
45
- this.handleToggle();
46
- }
47
- };
48
47
  connectedCallback() {
49
48
  this.root = getRoot(this.host);
50
49
  }
@@ -80,14 +79,15 @@ const PostMenuTrigger = /*@__PURE__*/ proxyCustomElement(class PostMenuTrigger e
80
79
  }
81
80
  }
82
81
  render() {
83
- return (h(Host, { key: '84316d4a69c4231be636e5ff8971752d5af9bab2', "data-version": version, "tab-index": "-1" }, h("slot", { key: 'd3091adcf7033c4dd25e49fa383ccb9773b2d226' })));
82
+ return (h(Host, { key: '1b9589febc2976d17eed3363d91b4321473b7b5e', "data-version": version, "tab-index": "-1" }, h("slot", { key: 'bec55f97274084ab4721dc085dc9e1c3a216c0a3' })));
84
83
  }
84
+ get host() { return this; }
85
85
  static get watchers() { return {
86
86
  "for": ["validateControlFor"]
87
87
  }; }
88
88
  static get style() { return PostMenuTriggerStyle0; }
89
89
  }, [4, "post-menu-trigger", {
90
- "for": [1],
90
+ "for": [513],
91
91
  "ariaExpanded": [32]
92
92
  }, undefined, {
93
93
  "for": ["validateControlFor"]
@@ -1,8 +1,9 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
2
  import { v as version } from './package.js';
3
3
  import { g as getFocusableChildren } from './get-focusable-children.js';
4
- import { g as getRoot } from './get-root.js';
4
+ import './breakpoints.js';
5
5
  import { e as eventGuard } from './event-guard.js';
6
+ import { g as getRoot } from './get-root.js';
6
7
  import { d as defineCustomElement$1 } from './post-popovercontainer2.js';
7
8
 
8
9
  const postMenuCss = "/*!\n * Copyright 2021 by Swiss Post, Information Technology\n */:host{display:block}post-popovercontainer{padding:var(--post-menu-padding);background-color:var(--post-menu-bg, #ffffff);border-color:var(--post-menu-bg, #ffffff)}.popover-container{display:flex;flex-direction:column}";
@@ -14,28 +15,54 @@ const PostMenu = /*@__PURE__*/ proxyCustomElement(class PostMenu extends HTMLEle
14
15
  this.__registerHost();
15
16
  this.__attachShadow();
16
17
  this.toggleMenu = createEvent(this, "toggleMenu", 7);
18
+ this.lastFocusedElement = null;
19
+ this.KEYCODES = {
20
+ SPACE: ' ',
21
+ ENTER: 'Enter',
22
+ UP: 'ArrowUp',
23
+ DOWN: 'ArrowDown',
24
+ TAB: 'Tab',
25
+ HOME: 'Home',
26
+ END: 'End',
27
+ ESCAPE: 'Escape',
28
+ };
29
+ this.handleKeyDown = (e) => {
30
+ e.stopPropagation();
31
+ if (e.key === this.KEYCODES.ESCAPE) {
32
+ this.toggle(this.host);
33
+ return;
34
+ }
35
+ if (Object.values(this.KEYCODES).includes(e.key)) {
36
+ this.controlKeyDownHandler(e);
37
+ }
38
+ };
39
+ this.handlePostToggle = (event) => {
40
+ eventGuard(this.host, event, { targetLocalName: 'post-popovercontainer', delegatorSelector: 'post-menu' }, () => {
41
+ this.isVisible = event.detail;
42
+ this.toggleMenu.emit(this.isVisible);
43
+ requestAnimationFrame(() => {
44
+ if (this.isVisible) {
45
+ this.lastFocusedElement = this.root?.activeElement;
46
+ const menuItems = this.getSlottedItems();
47
+ if (menuItems.length > 0) {
48
+ menuItems[0].focus();
49
+ }
50
+ }
51
+ else if (this.lastFocusedElement) {
52
+ this.lastFocusedElement.focus();
53
+ }
54
+ });
55
+ });
56
+ };
57
+ this.handleClick = (e) => {
58
+ const target = e.target;
59
+ if (['BUTTON', 'A', 'INPUT', 'SELECT', 'TEXTAREA'].includes(target.tagName)) {
60
+ this.toggle(this.host);
61
+ }
62
+ };
17
63
  this.placement = 'bottom';
18
64
  this.isVisible = false;
19
65
  }
20
- popoverRef;
21
- lastFocusedElement = null;
22
- KEYCODES = {
23
- SPACE: ' ',
24
- ENTER: 'Enter',
25
- UP: 'ArrowUp',
26
- DOWN: 'ArrowDown',
27
- TAB: 'Tab',
28
- HOME: 'Home',
29
- END: 'End',
30
- ESCAPE: 'Escape',
31
- };
32
- get host() { return this; }
33
- /**
34
- * Emits when the menu is shown or hidden.
35
- * The event payload is a boolean: `true` when the menu was opened, `false` when it was closed.
36
- **/
37
- toggleMenu;
38
- root;
39
66
  connectedCallback() {
40
67
  this.root = getRoot(this.host);
41
68
  this.host.addEventListener('keydown', this.handleKeyDown);
@@ -86,40 +113,6 @@ const PostMenu = /*@__PURE__*/ proxyCustomElement(class PostMenu extends HTMLEle
86
113
  console.error('hide: popoverRef is null or undefined');
87
114
  }
88
115
  }
89
- handleKeyDown = (e) => {
90
- e.stopPropagation();
91
- if (e.key === this.KEYCODES.ESCAPE) {
92
- this.toggle(this.host);
93
- return;
94
- }
95
- if (Object.values(this.KEYCODES).includes(e.key)) {
96
- this.controlKeyDownHandler(e);
97
- }
98
- };
99
- handlePostToggle = (event) => {
100
- eventGuard(this.host, event, { targetLocalName: 'post-popovercontainer', delegatorSelector: 'post-menu' }, () => {
101
- this.isVisible = event.detail;
102
- this.toggleMenu.emit(this.isVisible);
103
- requestAnimationFrame(() => {
104
- if (this.isVisible) {
105
- this.lastFocusedElement = this.root?.activeElement;
106
- const menuItems = this.getSlottedItems();
107
- if (menuItems.length > 0) {
108
- menuItems[0].focus();
109
- }
110
- }
111
- else if (this.lastFocusedElement) {
112
- this.lastFocusedElement.focus();
113
- }
114
- });
115
- });
116
- };
117
- handleClick = (e) => {
118
- const target = e.target;
119
- if (['BUTTON', 'A', 'INPUT', 'SELECT', 'TEXTAREA'].includes(target.tagName)) {
120
- this.toggle(this.host);
121
- }
122
- };
123
116
  controlKeyDownHandler(e) {
124
117
  const menuItems = this.getSlottedItems();
125
118
  if (!menuItems.length) {
@@ -168,6 +161,7 @@ const PostMenu = /*@__PURE__*/ proxyCustomElement(class PostMenu extends HTMLEle
168
161
  render() {
169
162
  return (h(Host, { key: 'a86276a1fefccbb1f2b50f1ad74dd98ddcbdae5d', "data-version": version, role: "menu" }, h("post-popovercontainer", { key: 'a0b2a35714ba370b7a73d92d1d6c036aa7039aea', placement: this.placement, ref: e => (this.popoverRef = e) }, h("div", { key: '98da2e21f8e4b4e02b4c347bc4f9238edc635b77', class: "popover-container", part: "popover-container" }, h("slot", { key: 'd3060c46482c5f3179827b8996a9a4b24abf49fa' })))));
170
163
  }
164
+ get host() { return this; }
171
165
  static get style() { return PostMenuStyle0; }
172
166
  }, [1, "post-menu", {
173
167
  "placement": [1],
@@ -1,6 +1,7 @@
1
1
  import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
- import { v as version } from './package.js';
3
2
  import { g as getAttributeObserver } from './attribute-observer.js';
3
+ import { I as IS_BROWSER } from './breakpoints.js';
4
+ import { v as version } from './package.js';
4
5
  import { d as defineCustomElement$1 } from './post-popovercontainer2.js';
5
6
 
6
7
  const postPopoverCss = "/*!\n * Copyright 2021 by Swiss Post, Information Technology\n */.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}}";
@@ -25,19 +26,15 @@ const globalToggleHandler = (e) => {
25
26
  const popover = document.getElementById(popoverTarget);
26
27
  popover?.toggle(currentElement);
27
28
  };
28
- // Initialize a mutation observer for patching accessibility features
29
- const triggerObserver = getAttributeObserver(popoverTargetAttribute, trigger => {
30
- const force = trigger.hasAttribute(popoverTargetAttribute);
31
- trigger.setAttribute('aria-expanded', force ? 'false' : null);
32
- });
33
29
  const PostPopover = /*@__PURE__*/ proxyCustomElement(class PostPopover extends HTMLElement {
34
- popoverRef;
35
- localBeforeToggleHandler;
36
- get host() { return this; }
37
30
  constructor() {
38
31
  super();
39
32
  this.__registerHost();
40
33
  this.__attachShadow();
34
+ // Initialize a mutation observer for patching accessibility features
35
+ this.triggerObserver = IS_BROWSER
36
+ ? getAttributeObserver(popoverTargetAttribute, this.patchAccessibilityFeatures)
37
+ : null;
41
38
  this.placement = 'top';
42
39
  this.closeButtonCaption = undefined;
43
40
  this.arrow = true;
@@ -48,7 +45,7 @@ const PostPopover = /*@__PURE__*/ proxyCustomElement(class PostPopover extends H
48
45
  if (popoverInstances === 0) {
49
46
  window.addEventListener('pointerup', globalToggleHandler);
50
47
  window.addEventListener('keydown', globalToggleHandler);
51
- triggerObserver.observe(document.body, {
48
+ this.triggerObserver?.observe(document.body, {
52
49
  subtree: true,
53
50
  childList: true,
54
51
  attributeFilter: [popoverTargetAttribute],
@@ -66,7 +63,7 @@ const PostPopover = /*@__PURE__*/ proxyCustomElement(class PostPopover extends H
66
63
  if (popoverInstances === 0) {
67
64
  window.removeEventListener('click', globalToggleHandler);
68
65
  window.removeEventListener('keydown', globalToggleHandler);
69
- triggerObserver.disconnect();
66
+ this.triggerObserver?.disconnect();
70
67
  }
71
68
  this.popoverRef.removeEventListener('beforetoggle', this.localBeforeToggleHandler);
72
69
  this.triggers.forEach(trigger => trigger.removeAttribute('aria-expanded'));
@@ -102,9 +99,14 @@ const PostPopover = /*@__PURE__*/ proxyCustomElement(class PostPopover extends H
102
99
  beforeToggleHandler() {
103
100
  this.triggers.forEach(trigger => trigger.setAttribute('aria-expanded', 'false'));
104
101
  }
102
+ patchAccessibilityFeatures(trigger) {
103
+ const force = trigger.hasAttribute(popoverTargetAttribute);
104
+ trigger.setAttribute('aria-expanded', force ? 'false' : null);
105
+ }
105
106
  render() {
106
- return (h(Host, { key: 'ec1aab472fb8f7d6515050d90f6a8b20730640f0', "data-version": version }, h("post-popovercontainer", { key: 'beda133fe8cf98f9db6b61f2bf3e08b3549d3b86', arrow: this.arrow, placement: this.placement, ref: e => (this.popoverRef = e) }, h("div", { key: 'dd0ad949ddc80632b3918cba539781cf23a46163', class: "popover-container" }, h("div", { key: '038dfcf60ff63b0fbe142c0e29db78fe13c5a51b', class: "popover-content" }, h("slot", { key: 'cabcedfbbd0dfc179a66bde0f9afd6a250e4fe1c' })), h("button", { key: 'bb8333e139158f3220c80380cd587e564664b612', class: "btn-close", onClick: () => this.hide() }, h("span", { key: '285a90c985133c7b53150a649850a6e675fdb4d8', class: "visually-hidden" }, this.closeButtonCaption))))));
107
+ return (h(Host, { key: '0eee6a532fc25170b70f2424b7238ae31f0efa2e', "data-version": version }, h("post-popovercontainer", { key: '52af51e794bd070a000fbdd5f0c05ee2f0c3ac1c', arrow: this.arrow, placement: this.placement, ref: e => (this.popoverRef = e) }, h("div", { key: '772b5efef90b136a38b69fccfce2d5607d46035a', class: "popover-container" }, h("div", { key: '8bfdf07447daa58f88c788f04fdfab483783ca7e', class: "popover-content" }, h("slot", { key: '7866899dbf93c856253e2448a0ca696499c94c12' })), h("button", { key: '5056fcd7654309c1f9810b8136ce472b6cf7946f', class: "btn-close", onClick: () => this.hide() }, h("span", { key: '9f9c9b8007a6431367197d824ca42cfd7ca91761', class: "visually-hidden" }, this.closeButtonCaption))))));
107
108
  }
109
+ get host() { return this; }
108
110
  static get style() { return PostPopoverStyle0; }
109
111
  }, [1, "post-popover", {
110
112
  "placement": [1],