@swisspost/design-system-components 9.0.0-next.3 → 9.0.0-next.5

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 (326) hide show
  1. package/dist/cjs/check-type-64af82a9.js +16 -0
  2. package/dist/cjs/{index-01f30442.js → index-824d2b71.js} +2 -15
  3. package/dist/cjs/index-e1f32cce.js +18 -10
  4. package/dist/cjs/index.cjs.js +36 -22
  5. package/dist/cjs/loader.cjs.js +1 -1
  6. package/dist/cjs/{package-ef26e62c.js → package-53892d3d.js} +1 -1
  7. package/dist/cjs/{post-accordion-3878bf43.js → post-accordion-7f627ffd.js} +1 -1
  8. package/dist/cjs/{post-accordion-item-0278e6e2.js → post-accordion-item-ceb5399f.js} +3 -3
  9. package/dist/cjs/post-accordion-item.cjs.entry.js +4 -3
  10. package/dist/cjs/post-accordion.cjs.entry.js +2 -2
  11. package/dist/cjs/post-alert-5333a23c.js +99 -0
  12. package/dist/cjs/post-alert.cjs.entry.js +4 -3
  13. package/dist/cjs/{post-avatar-2bcfc016.js → post-avatar-a8123d38.js} +1 -1
  14. package/dist/cjs/post-avatar.cjs.entry.js +2 -2
  15. package/dist/cjs/post-breadcrumb-item-6e4704e5.js +49 -0
  16. package/dist/cjs/post-breadcrumb-item.cjs.entry.js +15 -0
  17. package/dist/cjs/post-card-control-b289ddcf.js +272 -0
  18. package/dist/cjs/post-card-control.cjs.entry.js +2 -2
  19. package/dist/cjs/post-closebutton_10.cjs.entry.js +25 -0
  20. package/dist/cjs/{post-collapsible-trigger-6ae59c64.js → post-collapsible-trigger-e4862a5b.js} +9 -6
  21. package/dist/cjs/post-collapsible_2.cjs.entry.js +4 -3
  22. package/dist/cjs/post-components.cjs.js +1 -1
  23. package/dist/cjs/{post-language-option-4a3ecaeb.js → post-language-option-62414842.js} +5 -4
  24. package/dist/cjs/post-language-option.cjs.entry.js +4 -3
  25. package/dist/cjs/{post-popovercontainer-6a25713a.js → post-megadropdown-trigger-da912fed.js} +522 -19
  26. package/dist/cjs/post-menu-54fa65d3.js +176 -0
  27. package/dist/cjs/post-menu-item-8c3090b1.js +20 -0
  28. package/dist/cjs/post-menu-item.cjs.entry.js +11 -0
  29. package/dist/cjs/post-menu-trigger-71449876.js +73 -0
  30. package/dist/cjs/post-menu-trigger.cjs.entry.js +12 -0
  31. package/dist/cjs/post-menu.cjs.entry.js +11 -0
  32. package/dist/cjs/{post-popover-de1b8d95.js → post-popover-5f639e4f.js} +3 -3
  33. package/dist/cjs/post-popover.cjs.entry.js +2 -2
  34. package/dist/cjs/{post-rating-1d2c59b7.js → post-rating-3d166fed.js} +2 -2
  35. package/dist/cjs/post-rating.cjs.entry.js +2 -2
  36. package/dist/cjs/{post-tab-header-877676bf.js → post-tab-header-03b20f24.js} +2 -2
  37. package/dist/cjs/post-tab-header.cjs.entry.js +2 -2
  38. package/dist/cjs/{post-tab-panel-80b1f3ee.js → post-tab-panel-e5685f3d.js} +2 -2
  39. package/dist/cjs/post-tab-panel.cjs.entry.js +2 -2
  40. package/dist/cjs/{post-tabs-c2d42035.js → post-tabs-e871c911.js} +3 -3
  41. package/dist/cjs/post-tabs.cjs.entry.js +2 -2
  42. package/dist/cjs/{post-tag-5e2c7798.js → post-tag-62f31d0e.js} +2 -2
  43. package/dist/cjs/post-tag.cjs.entry.js +2 -2
  44. package/dist/cjs/{post-tooltip-9a120b2e.js → post-tooltip-851c342c.js} +3 -3
  45. package/dist/cjs/post-tooltip.cjs.entry.js +4 -3
  46. package/dist/collection/collection-manifest.json +12 -1
  47. package/dist/collection/components/post-accordion-item/post-accordion-item.css +1 -1
  48. package/dist/collection/components/post-alert/post-alert.css +3 -3
  49. package/dist/collection/components/post-breadcrumb-item/post-breadcrumb-item.css +1 -0
  50. package/dist/collection/components/post-breadcrumb-item/post-breadcrumb-item.js +83 -0
  51. package/dist/collection/components/post-card-control/post-card-control.css +1 -1
  52. package/dist/collection/components/post-card-control/post-card-control.js +2 -2
  53. package/dist/collection/components/post-closebutton/post-closebutton.js +12 -0
  54. package/dist/collection/components/post-collapsible/post-collapsible.js +5 -3
  55. package/dist/collection/components/post-header/post-header.css +1 -0
  56. package/dist/collection/components/post-header/post-header.js +103 -0
  57. package/dist/collection/components/post-icon/post-icon.js +1 -1
  58. package/dist/collection/components/post-language-option/post-language-option.js +1 -1
  59. package/dist/collection/components/post-list/post-list.css +3 -0
  60. package/dist/collection/components/post-list/post-list.js +87 -0
  61. package/dist/collection/components/post-list-item/post-list-item.css +1 -0
  62. package/dist/collection/components/post-list-item/post-list-item.js +25 -0
  63. package/dist/collection/components/post-logo/post-logo.js +1 -1
  64. package/dist/collection/components/post-mainnavigation/post-mainnavigation.css +1 -0
  65. package/dist/collection/components/post-mainnavigation/post-mainnavigation.js +61 -0
  66. package/dist/collection/components/post-megadropdown/post-megadropdown.css +1 -0
  67. package/dist/collection/components/post-megadropdown/post-megadropdown.js +137 -0
  68. package/dist/collection/components/post-megadropdown-trigger/post-megadropdown-trigger.css +1 -0
  69. package/dist/collection/components/post-megadropdown-trigger/post-megadropdown-trigger.js +48 -0
  70. package/dist/collection/components/post-menu/post-menu.css +3 -0
  71. package/dist/collection/components/post-menu/post-menu.js +278 -0
  72. package/dist/collection/components/post-menu-item/post-menu-item.css +1 -0
  73. package/dist/collection/components/post-menu-item/post-menu-item.js +20 -0
  74. package/dist/collection/components/post-menu-trigger/post-menu-trigger.css +1 -0
  75. package/dist/collection/components/post-menu-trigger/post-menu-trigger.js +103 -0
  76. package/dist/collection/components/post-popover/post-popover.css +1 -1
  77. package/dist/collection/components/post-popover/post-popover.js +1 -1
  78. package/dist/collection/components/post-popovercontainer/post-popovercontainer.js +26 -6
  79. package/dist/collection/components/post-rating/post-rating.js +1 -1
  80. package/dist/collection/components/post-tab-header/post-tab-header.js +1 -1
  81. package/dist/collection/components/post-tab-panel/post-tab-panel.js +1 -1
  82. package/dist/collection/components/post-tabs/post-tabs.css +1 -1
  83. package/dist/collection/components/post-tabs/post-tabs.js +1 -1
  84. package/dist/collection/components/post-tag/post-tag.js +1 -1
  85. package/dist/collection/components/post-tooltip/post-tooltip.js +1 -1
  86. package/dist/collection/index.js +11 -0
  87. package/dist/collection/utils/is-focusable.js +26 -0
  88. package/dist/components/index.js +11 -0
  89. package/dist/components/index2.js +1 -1
  90. package/dist/components/package.js +1 -1
  91. package/dist/components/post-accordion-item2.js +1 -1
  92. package/dist/components/post-alert2.js +1 -1
  93. package/dist/components/post-breadcrumb-item.d.ts +11 -0
  94. package/dist/components/post-breadcrumb-item.js +6 -0
  95. package/dist/components/post-breadcrumb-item2.js +72 -0
  96. package/dist/components/post-card-control2.js +3 -3
  97. package/dist/components/post-closebutton.d.ts +11 -0
  98. package/dist/components/post-closebutton.js +6 -0
  99. package/dist/components/post-closebutton2.js +34 -0
  100. package/dist/components/post-collapsible2.js +6 -4
  101. package/dist/components/post-header.d.ts +11 -0
  102. package/dist/components/post-header.js +6 -0
  103. package/dist/components/post-header2.js +235 -0
  104. package/dist/components/post-icon2.js +2 -2
  105. package/dist/components/post-language-option2.js +2 -2
  106. package/dist/components/post-list-item.d.ts +11 -0
  107. package/dist/components/post-list-item.js +6 -0
  108. package/dist/components/post-list-item2.js +35 -0
  109. package/dist/components/post-list.d.ts +11 -0
  110. package/dist/components/post-list.js +6 -0
  111. package/dist/components/post-list2.js +53 -0
  112. package/dist/components/post-logo2.js +2 -2
  113. package/dist/components/post-mainnavigation.d.ts +11 -0
  114. package/dist/components/post-mainnavigation.js +6 -0
  115. package/dist/components/post-mainnavigation2.js +48 -0
  116. package/dist/components/post-megadropdown-trigger.d.ts +11 -0
  117. package/dist/components/post-megadropdown-trigger.js +6 -0
  118. package/dist/components/post-megadropdown-trigger2.js +39 -0
  119. package/dist/components/post-megadropdown.d.ts +11 -0
  120. package/dist/components/post-megadropdown.js +6 -0
  121. package/dist/components/post-megadropdown2.js +67 -0
  122. package/dist/components/post-menu-item.d.ts +11 -0
  123. package/dist/components/post-menu-item.js +6 -0
  124. package/dist/components/post-menu-item2.js +33 -0
  125. package/dist/components/post-menu-trigger.d.ts +11 -0
  126. package/dist/components/post-menu-trigger.js +6 -0
  127. package/dist/components/post-menu-trigger2.js +90 -0
  128. package/dist/components/post-menu.d.ts +11 -0
  129. package/dist/components/post-menu.js +6 -0
  130. package/dist/components/post-menu2.js +201 -0
  131. package/dist/components/post-popover2.js +2 -2
  132. package/dist/components/post-popovercontainer2.js +9 -6
  133. package/dist/components/post-rating2.js +1 -1
  134. package/dist/components/post-tab-header2.js +1 -1
  135. package/dist/components/post-tab-panel2.js +1 -1
  136. package/dist/components/post-tabs2.js +2 -2
  137. package/dist/components/post-tag2.js +1 -1
  138. package/dist/components/post-tooltip2.js +2 -2
  139. package/dist/docs.json +832 -45
  140. package/dist/esm/check-type-8828dbe4.js +14 -0
  141. package/dist/esm/index-e1b64755.js +18 -10
  142. package/dist/esm/{index-f41b763f.js → index-f8a00dc0.js} +2 -14
  143. package/dist/esm/index.js +22 -19
  144. package/dist/esm/loader.js +1 -1
  145. package/dist/esm/package-d0380f19.js +3 -0
  146. package/dist/esm/{post-accordion-01d49d83.js → post-accordion-b2762084.js} +1 -1
  147. package/dist/esm/{post-accordion-item-366f385b.js → post-accordion-item-82ef1c4a.js} +3 -3
  148. package/dist/esm/post-accordion-item.entry.js +4 -3
  149. package/dist/esm/post-accordion.entry.js +2 -2
  150. package/dist/esm/post-alert-0679e14b.js +97 -0
  151. package/dist/esm/post-alert.entry.js +4 -3
  152. package/dist/esm/{post-avatar-6f24d1ab.js → post-avatar-e84c49cb.js} +1 -1
  153. package/dist/esm/post-avatar.entry.js +2 -2
  154. package/dist/esm/post-breadcrumb-item-ff752018.js +47 -0
  155. package/dist/esm/post-breadcrumb-item.entry.js +7 -0
  156. package/dist/esm/post-card-control-53b9ca94.js +270 -0
  157. package/dist/esm/post-card-control.entry.js +2 -2
  158. package/dist/esm/post-closebutton_10.entry.js +8 -0
  159. package/dist/esm/{post-collapsible-trigger-654bf2b0.js → post-collapsible-trigger-34740fa6.js} +8 -5
  160. package/dist/esm/post-collapsible_2.entry.js +4 -3
  161. package/dist/esm/post-components.js +1 -1
  162. package/dist/esm/{post-language-option-0c2818aa.js → post-language-option-e2a76752.js} +4 -3
  163. package/dist/esm/post-language-option.entry.js +4 -3
  164. package/dist/esm/{post-popovercontainer-e6d11d81.js → post-megadropdown-trigger-7e577245.js} +515 -21
  165. package/dist/esm/post-menu-e6337859.js +174 -0
  166. package/dist/esm/post-menu-item-c10a0a93.js +18 -0
  167. package/dist/esm/post-menu-item.entry.js +3 -0
  168. package/dist/esm/post-menu-trigger-5f31ad60.js +71 -0
  169. package/dist/esm/post-menu-trigger.entry.js +4 -0
  170. package/dist/esm/post-menu.entry.js +3 -0
  171. package/dist/esm/{post-popover-7d44a85c.js → post-popover-d78547b4.js} +3 -3
  172. package/dist/esm/post-popover.entry.js +2 -2
  173. package/dist/esm/{post-rating-3cd3e97b.js → post-rating-d04d0349.js} +2 -2
  174. package/dist/esm/post-rating.entry.js +2 -2
  175. package/dist/esm/{post-tab-header-776a991a.js → post-tab-header-6efc530f.js} +2 -2
  176. package/dist/esm/post-tab-header.entry.js +2 -2
  177. package/dist/esm/{post-tab-panel-163e6c99.js → post-tab-panel-d9ecc10e.js} +2 -2
  178. package/dist/esm/post-tab-panel.entry.js +2 -2
  179. package/dist/esm/{post-tabs-8cb1bce9.js → post-tabs-e98a47e8.js} +3 -3
  180. package/dist/esm/post-tabs.entry.js +2 -2
  181. package/dist/esm/{post-tag-deefcc86.js → post-tag-40a65871.js} +2 -2
  182. package/dist/esm/post-tag.entry.js +2 -2
  183. package/dist/esm/{post-tooltip-dc7e1a21.js → post-tooltip-3b1e121c.js} +3 -3
  184. package/dist/esm/post-tooltip.entry.js +4 -3
  185. package/dist/post-components/index.esm.js +1 -1
  186. package/dist/post-components/p-029c91d8.entry.js +1 -0
  187. package/dist/post-components/p-0338f9da.js +1 -0
  188. package/dist/post-components/p-03c850fa.entry.js +1 -0
  189. package/dist/post-components/p-1d8a41d3.js +1 -0
  190. package/dist/post-components/p-2069e764.js +1 -0
  191. package/dist/post-components/p-3705d2b4.js +1 -0
  192. package/dist/post-components/p-3aaea2a7.js +1 -0
  193. package/dist/post-components/p-3b4342e4.entry.js +1 -0
  194. package/dist/post-components/p-3b5bd4a4.entry.js +1 -0
  195. package/dist/post-components/p-3f785d16.entry.js +1 -0
  196. package/dist/post-components/p-40a57111.entry.js +1 -0
  197. package/dist/post-components/p-41f5f626.entry.js +1 -0
  198. package/dist/post-components/p-42c628fd.js +1 -0
  199. package/dist/post-components/p-43451d07.js +1 -0
  200. package/dist/post-components/{p-16d057a6.js → p-49a42850.js} +1 -1
  201. package/dist/post-components/p-4a3f67ab.js +1 -0
  202. package/dist/post-components/p-4f1a40dd.entry.js +1 -0
  203. package/dist/post-components/p-6e7bde44.js +1 -0
  204. package/dist/post-components/{p-d785856c.js → p-70c016ab.js} +1 -1
  205. package/dist/post-components/{p-3d3795f9.js → p-75514d7d.js} +1 -1
  206. package/dist/post-components/p-76dbca34.entry.js +1 -0
  207. package/dist/post-components/{p-b38eaabf.js → p-77a757d4.js} +1 -1
  208. package/dist/post-components/p-77af2367.entry.js +1 -0
  209. package/dist/post-components/{p-60e72b25.js → p-7a20605b.js} +1 -1
  210. package/dist/post-components/{p-8734876e.js → p-879ae242.js} +1 -1
  211. package/dist/post-components/p-976c2742.js +1 -0
  212. package/dist/post-components/p-9cda2b0d.entry.js +1 -0
  213. package/dist/post-components/p-9fab4d3c.js +1 -0
  214. package/dist/post-components/p-a0226aec.js +1 -0
  215. package/dist/post-components/p-aa890e24.entry.js +1 -0
  216. package/dist/post-components/p-ac6d9496.js +1 -0
  217. package/dist/post-components/p-ad6e41d5.entry.js +1 -0
  218. package/dist/post-components/p-af8cfb8e.js +1 -0
  219. package/dist/post-components/p-c95813b2.entry.js +1 -0
  220. package/dist/post-components/p-d3814644.entry.js +1 -0
  221. package/dist/post-components/p-d5b02b44.entry.js +1 -0
  222. package/dist/post-components/{p-0ad93d89.js → p-e0dc4fac.js} +2 -2
  223. package/dist/post-components/p-f404d0bb.entry.js +1 -0
  224. package/dist/post-components/p-f5b933bc.entry.js +1 -0
  225. package/dist/post-components/p-fbda2556.entry.js +1 -0
  226. package/dist/post-components/{p-9ac2a947.js → p-fc2c7222.js} +1 -1
  227. package/dist/post-components/post-components.esm.js +1 -1
  228. package/dist/types/components/post-breadcrumb-item/post-breadcrumb-item.d.ts +15 -0
  229. package/dist/types/components/post-closebutton/post-closebutton.d.ts +7 -0
  230. package/dist/types/components/post-header/post-header.d.ts +16 -0
  231. package/dist/types/components/post-list/post-list.d.ts +24 -0
  232. package/dist/types/components/post-list-item/post-list-item.d.ts +8 -0
  233. package/dist/types/components/post-mainnavigation/post-mainnavigation.d.ts +10 -0
  234. package/dist/types/components/post-megadropdown/post-megadropdown.d.ts +23 -0
  235. package/dist/types/components/post-megadropdown-trigger/post-megadropdown-trigger.d.ts +10 -0
  236. package/dist/types/components/post-menu/post-menu.d.ts +47 -0
  237. package/dist/types/components/post-menu-item/post-menu-item.d.ts +4 -0
  238. package/dist/types/components/post-menu-trigger/post-menu-trigger.d.ts +26 -0
  239. package/dist/types/components/post-popovercontainer/post-popovercontainer.d.ts +4 -0
  240. package/dist/types/components.d.ts +279 -0
  241. package/dist/types/index.d.ts +11 -0
  242. package/dist/types/utils/is-focusable.d.ts +1 -0
  243. package/loaders/index.d.ts +22 -0
  244. package/loaders/index.js +12 -1
  245. package/loaders/package.js +1 -1
  246. package/loaders/post-accordion-item.js +1 -1
  247. package/loaders/post-alert.js +1 -1
  248. package/loaders/post-breadcrumb-item.d.ts +11 -0
  249. package/loaders/post-breadcrumb-item.js +75 -0
  250. package/loaders/post-card-control.js +3 -3
  251. package/loaders/post-closebutton.d.ts +11 -0
  252. package/loaders/post-closebutton.js +37 -0
  253. package/loaders/post-collapsible2.js +5 -3
  254. package/loaders/post-header.d.ts +11 -0
  255. package/loaders/post-header.js +238 -0
  256. package/loaders/post-icon2.js +1 -1
  257. package/loaders/post-language-option.js +1 -1
  258. package/loaders/post-list-item.d.ts +11 -0
  259. package/loaders/post-list-item.js +38 -0
  260. package/loaders/post-list.d.ts +11 -0
  261. package/loaders/post-list.js +56 -0
  262. package/loaders/post-logo.js +1 -1
  263. package/loaders/post-mainnavigation.d.ts +11 -0
  264. package/loaders/post-mainnavigation.js +51 -0
  265. package/loaders/post-megadropdown-trigger.d.ts +11 -0
  266. package/loaders/post-megadropdown-trigger.js +42 -0
  267. package/loaders/post-megadropdown.d.ts +11 -0
  268. package/loaders/post-megadropdown.js +70 -0
  269. package/loaders/post-menu-item.d.ts +11 -0
  270. package/loaders/post-menu-item.js +36 -0
  271. package/loaders/post-menu-trigger.d.ts +11 -0
  272. package/loaders/post-menu-trigger.js +93 -0
  273. package/loaders/post-menu.d.ts +11 -0
  274. package/loaders/post-menu.js +204 -0
  275. package/loaders/post-popover.js +2 -2
  276. package/loaders/post-popovercontainer2.js +9 -6
  277. package/loaders/post-rating.js +1 -1
  278. package/loaders/post-tab-header.js +1 -1
  279. package/loaders/post-tab-panel.js +1 -1
  280. package/loaders/post-tabs.js +2 -2
  281. package/loaders/post-tag.js +1 -1
  282. package/loaders/post-tooltip.js +1 -1
  283. package/package.json +3 -2
  284. package/dist/cjs/post-alert-5f795d9c.js +0 -98
  285. package/dist/cjs/post-card-control-5ffcd201.js +0 -272
  286. package/dist/cjs/post-icon-1f71aa0f.js +0 -104
  287. package/dist/cjs/post-icon.cjs.entry.js +0 -15
  288. package/dist/cjs/post-logo-7070d727.js +0 -39
  289. package/dist/cjs/post-logo.cjs.entry.js +0 -14
  290. package/dist/cjs/post-popovercontainer.cjs.entry.js +0 -11
  291. package/dist/esm/package-0311770e.js +0 -3
  292. package/dist/esm/post-alert-5a69f40d.js +0 -96
  293. package/dist/esm/post-card-control-2a7939c3.js +0 -270
  294. package/dist/esm/post-icon-885f17e9.js +0 -102
  295. package/dist/esm/post-icon.entry.js +0 -7
  296. package/dist/esm/post-logo-dd425f2e.js +0 -37
  297. package/dist/esm/post-logo.entry.js +0 -6
  298. package/dist/esm/post-popovercontainer.entry.js +0 -3
  299. package/dist/post-components/p-048538ea.js +0 -1
  300. package/dist/post-components/p-0a1f5e13.entry.js +0 -1
  301. package/dist/post-components/p-0a4318ff.js +0 -1
  302. package/dist/post-components/p-0d64ef0c.entry.js +0 -1
  303. package/dist/post-components/p-1198a5f2.entry.js +0 -1
  304. package/dist/post-components/p-13d1bef7.entry.js +0 -1
  305. package/dist/post-components/p-1a091fca.entry.js +0 -1
  306. package/dist/post-components/p-1f35b0ba.entry.js +0 -1
  307. package/dist/post-components/p-246a6d28.js +0 -1
  308. package/dist/post-components/p-3aa5e1e5.js +0 -1
  309. package/dist/post-components/p-3fabf6e4.entry.js +0 -1
  310. package/dist/post-components/p-4f0617e6.js +0 -1
  311. package/dist/post-components/p-53bacbbc.js +0 -1
  312. package/dist/post-components/p-5c8cb76f.entry.js +0 -1
  313. package/dist/post-components/p-5eee8d31.entry.js +0 -1
  314. package/dist/post-components/p-66ed33a9.js +0 -1
  315. package/dist/post-components/p-681b751d.entry.js +0 -1
  316. package/dist/post-components/p-6b6a1e82.entry.js +0 -1
  317. package/dist/post-components/p-752e6a98.entry.js +0 -1
  318. package/dist/post-components/p-9d211a45.js +0 -1
  319. package/dist/post-components/p-cdfcc758.entry.js +0 -1
  320. package/dist/post-components/p-d50d4ec1.entry.js +0 -1
  321. package/dist/post-components/p-deb4131c.js +0 -1
  322. package/dist/post-components/p-e18f3639.js +0 -1
  323. package/dist/post-components/p-f1b7797f.entry.js +0 -1
  324. package/dist/post-components/p-f6efc76b.entry.js +0 -1
  325. package/dist/post-components/p-f825d681.js +0 -1
  326. package/dist/post-components/p-fff1c2ee.entry.js +0 -1
@@ -0,0 +1,238 @@
1
+ import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
+ import { v as version } from './package.js';
3
+
4
+ /* eslint-disable no-undefined,no-param-reassign,no-shadow */
5
+
6
+ /**
7
+ * Throttle execution of a function. Especially useful for rate limiting
8
+ * execution of handlers on events like resize and scroll.
9
+ *
10
+ * @param {number} delay - A zero-or-greater delay in milliseconds. For event callbacks, values around 100 or 250 (or even higher)
11
+ * are most useful.
12
+ * @param {Function} callback - A function to be executed after delay milliseconds. The `this` context and all arguments are passed through,
13
+ * as-is, to `callback` when the throttled-function is executed.
14
+ * @param {object} [options] - An object to configure options.
15
+ * @param {boolean} [options.noTrailing] - Optional, defaults to false. If noTrailing is true, callback will only execute every `delay` milliseconds
16
+ * while the throttled-function is being called. If noTrailing is false or unspecified, callback will be executed
17
+ * one final time after the last throttled-function call. (After the throttled-function has not been called for
18
+ * `delay` milliseconds, the internal counter is reset).
19
+ * @param {boolean} [options.noLeading] - Optional, defaults to false. If noLeading is false, the first throttled-function call will execute callback
20
+ * immediately. If noLeading is true, the first the callback execution will be skipped. It should be noted that
21
+ * callback will never executed if both noLeading = true and noTrailing = true.
22
+ * @param {boolean} [options.debounceMode] - If `debounceMode` is true (at begin), schedule `clear` to execute after `delay` ms. If `debounceMode` is
23
+ * false (at end), schedule `callback` to execute after `delay` ms.
24
+ *
25
+ * @returns {Function} A new, throttled, function.
26
+ */
27
+ function throttle (delay, callback, options) {
28
+ var _ref = options || {},
29
+ _ref$noTrailing = _ref.noTrailing,
30
+ noTrailing = _ref$noTrailing === void 0 ? false : _ref$noTrailing,
31
+ _ref$noLeading = _ref.noLeading,
32
+ noLeading = _ref$noLeading === void 0 ? false : _ref$noLeading,
33
+ _ref$debounceMode = _ref.debounceMode,
34
+ debounceMode = _ref$debounceMode === void 0 ? undefined : _ref$debounceMode;
35
+ /*
36
+ * After wrapper has stopped being called, this timeout ensures that
37
+ * `callback` is executed at the proper times in `throttle` and `end`
38
+ * debounce modes.
39
+ */
40
+ var timeoutID;
41
+ var cancelled = false;
42
+
43
+ // Keep track of the last time `callback` was executed.
44
+ var lastExec = 0;
45
+
46
+ // Function to clear existing timeout
47
+ function clearExistingTimeout() {
48
+ if (timeoutID) {
49
+ clearTimeout(timeoutID);
50
+ }
51
+ }
52
+
53
+ // Function to cancel next exec
54
+ function cancel(options) {
55
+ var _ref2 = options || {},
56
+ _ref2$upcomingOnly = _ref2.upcomingOnly,
57
+ upcomingOnly = _ref2$upcomingOnly === void 0 ? false : _ref2$upcomingOnly;
58
+ clearExistingTimeout();
59
+ cancelled = !upcomingOnly;
60
+ }
61
+
62
+ /*
63
+ * The `wrapper` function encapsulates all of the throttling / debouncing
64
+ * functionality and when executed will limit the rate at which `callback`
65
+ * is executed.
66
+ */
67
+ function wrapper() {
68
+ for (var _len = arguments.length, arguments_ = new Array(_len), _key = 0; _key < _len; _key++) {
69
+ arguments_[_key] = arguments[_key];
70
+ }
71
+ var self = this;
72
+ var elapsed = Date.now() - lastExec;
73
+ if (cancelled) {
74
+ return;
75
+ }
76
+
77
+ // Execute `callback` and update the `lastExec` timestamp.
78
+ function exec() {
79
+ lastExec = Date.now();
80
+ callback.apply(self, arguments_);
81
+ }
82
+
83
+ /*
84
+ * If `debounceMode` is true (at begin) this is used to clear the flag
85
+ * to allow future `callback` executions.
86
+ */
87
+ function clear() {
88
+ timeoutID = undefined;
89
+ }
90
+ if (!noLeading && debounceMode && !timeoutID) {
91
+ /*
92
+ * Since `wrapper` is being called for the first time and
93
+ * `debounceMode` is true (at begin), execute `callback`
94
+ * and noLeading != true.
95
+ */
96
+ exec();
97
+ }
98
+ clearExistingTimeout();
99
+ if (debounceMode === undefined && elapsed > delay) {
100
+ if (noLeading) {
101
+ /*
102
+ * In throttle mode with noLeading, if `delay` time has
103
+ * been exceeded, update `lastExec` and schedule `callback`
104
+ * to execute after `delay` ms.
105
+ */
106
+ lastExec = Date.now();
107
+ if (!noTrailing) {
108
+ timeoutID = setTimeout(debounceMode ? clear : exec, delay);
109
+ }
110
+ } else {
111
+ /*
112
+ * In throttle mode without noLeading, if `delay` time has been exceeded, execute
113
+ * `callback`.
114
+ */
115
+ exec();
116
+ }
117
+ } else if (noTrailing !== true) {
118
+ /*
119
+ * In trailing throttle mode, since `delay` time has not been
120
+ * exceeded, schedule `callback` to execute `delay` ms after most
121
+ * recent execution.
122
+ *
123
+ * If `debounceMode` is true (at begin), schedule `clear` to execute
124
+ * after `delay` ms.
125
+ *
126
+ * If `debounceMode` is false (at end), schedule `callback` to
127
+ * execute after `delay` ms.
128
+ */
129
+ timeoutID = setTimeout(debounceMode ? clear : exec, debounceMode === undefined ? delay - elapsed : delay);
130
+ }
131
+ }
132
+ wrapper.cancel = cancel;
133
+
134
+ // Return the wrapper function.
135
+ return wrapper;
136
+ }
137
+
138
+ const postHeaderCss = "*,::before,::after{box-sizing:border-box}:host{--global-header-height:72px;--main-header-height:56px;--header-height:calc(var(--global-header-height) + var(--main-header-height))}@media screen and (max-width: 1023.99px){:host{--global-header-height:64px}}.d-flex{display:flex}.space-between{justify-content:space-between}.global-header{background-color:#fc0;display:flex;justify-content:space-between;align-items:center;position:sticky;padding-inline-start:4px;padding-inline-end:12px;height:var(--global-header-height)}@media screen and (max-width: 1023.99px){.global-header{top:0}}@media screen and (min-width: 1024px){.global-header{top:calc((var(--global-header-height) - 24px)*-1)}}slot[name=post-logo]{align-self:flex-end}.global-sub{display:flex;align-items:center;gap:2rem;height:var(--global-header-height)}.align-end{align-items:flex-end}.logo{flex:1 0 auto;height:var(--global-header-height);width:var(--global-header-height);min-height:24px;align-self:flex-end}@media screen and (min-width: 1024px){.logo{height:calc(var(--global-header-height) - var(--header-scroll-top))}}::slotted(ul){margin-block:0;list-style:none;display:flex;padding-left:0;gap:1rem}.title-header,.main-navigation{display:flex;align-items:center;padding-inline:12px;background:#fff}.title-header{height:var(--main-header-height);display:flex;align-items:center}@media screen and (max-width: 1023.99px){.title-header{border-bottom:1px solid #000}}:host(:not(:has([slot=title]))) .title-header{display:none}::slotted(h1){margin:0 !important;font-size:28px !important}.main-navigation{position:sticky;top:24px;height:var(--main-header-height)}@media screen and (min-width: 1024px){.main-navigation{border-bottom:1px solid #000}}@media screen and (max-width: 1023.99px){.main-navigation{display:none;position:absolute;top:var(--header-height);bottom:0;width:100%;background-color:#fff;height:auto}.main-navigation.extended{display:block}}@media screen and (min-width: 1024px){.mobile-toggle{display:none}}";
139
+ const PostHeaderStyle0 = postHeaderCss;
140
+
141
+ const PostHeader$1 = /*@__PURE__*/ proxyCustomElement(class PostHeader extends HTMLElement {
142
+ constructor() {
143
+ super();
144
+ this.__registerHost();
145
+ this.__attachShadow();
146
+ this.scrollParent = null;
147
+ this.throttledScroll = () => this.handleScrollEvent();
148
+ this.throttledResize = throttle(50, () => this.handleResize());
149
+ this.device = null;
150
+ this.mobileMenuExtended = false;
151
+ }
152
+ componentWillRender() {
153
+ this.scrollParent = this.getScrollParent(this.host);
154
+ this.scrollParent.addEventListener('scroll', this.throttledScroll, { passive: true });
155
+ window.addEventListener('resize', this.throttledResize, { passive: true });
156
+ this.handleResize();
157
+ this.handleScrollEvent();
158
+ }
159
+ handlePostMainNavigationClosed() {
160
+ this.mobileMenuExtended = false;
161
+ }
162
+ handleScrollEvent() {
163
+ // Credits: "https://github.com/qeremy/so/blob/master/so.dom.js#L426"
164
+ const st = Math.max(0, this.scrollParent instanceof Document
165
+ ? this.scrollParent.documentElement.scrollTop
166
+ : this.scrollParent.scrollTop);
167
+ this.host.style.setProperty('--header-scroll-top', `${st}px`);
168
+ }
169
+ getScrollParent(node) {
170
+ let currentParent = node.parentElement;
171
+ while (currentParent) {
172
+ if (currentParent.nodeName === 'BODY') {
173
+ return document;
174
+ }
175
+ if (this.isScrollable(currentParent)) {
176
+ return currentParent;
177
+ }
178
+ currentParent = currentParent.parentElement;
179
+ }
180
+ return document;
181
+ }
182
+ isScrollable(node) {
183
+ if (!(node instanceof HTMLElement || node instanceof SVGElement)) {
184
+ return false;
185
+ }
186
+ const style = getComputedStyle(node);
187
+ return ['overflow', 'overflow-x', 'overflow-y'].some(propertyName => {
188
+ const value = style.getPropertyValue(propertyName);
189
+ return value === 'auto' || value === 'scroll';
190
+ });
191
+ }
192
+ handleResize() {
193
+ const width = window === null || window === void 0 ? void 0 : window.innerWidth;
194
+ if (width >= 1024) {
195
+ this.device = 'desktop';
196
+ this.mobileMenuExtended = false; // Close any open mobile menu
197
+ }
198
+ else if (width >= 600) {
199
+ this.device = 'tablet';
200
+ }
201
+ else {
202
+ this.device = 'mobile';
203
+ }
204
+ }
205
+ handleMobileMenuToggle() {
206
+ this.mobileMenuExtended = !this.mobileMenuExtended;
207
+ }
208
+ render() {
209
+ const mainNavClasses = ['main-navigation'];
210
+ if (this.mobileMenuExtended) {
211
+ mainNavClasses.push('extended');
212
+ }
213
+ return (h(Host, { key: '5a05f890e66ec97d54fd17ca26436392a4e78e9b', version: version }, h("div", { key: '8f9b79cb289d0c613f6d000cf969ce5bf0b3d62a', class: "global-header" }, h("div", { key: '0a482fc3153e29917ed2df1fcbf39492a18918ef', class: "global-sub" }, h("div", { key: '3d25cc42a1fac21906cb2c487d90de84a9f1d029', class: "logo" }, h("slot", { key: '5a14eb7b8f9927083a56e37d53bc4aed3311b6c8', name: "post-logo" })), this.device === 'desktop' && h("slot", { key: '21bc41d4a09536a33ee3d7a98424a00d3969718f', name: "audience-navigation" })), h("div", { key: '6c8fdc5acc99c165bda366e872ceb32d6918b515', class: "global-sub" }, this.device === 'desktop' && h("slot", { key: '88f681de4d63517d73decd436b7084fca410f021', name: "meta-navigation" }), h("slot", { key: 'b6e5c1143fb89e2940f464bac95277bc2741a5c8', name: "global-controls" }), this.device === 'desktop' && h("slot", { key: '2edb30a148ffaae9f864e9babc03228c63a46314', name: "post-language-switch" }), h("div", { key: 'cc0633f19bd9b948fb2456fdc44431984e3a10eb', onClick: () => this.handleMobileMenuToggle(), class: "mobile-toggle" }, h("slot", { key: '26fa9aa29cab7e4048c387ee6c49216dc911f209', name: "post-togglebutton" })))), h("div", { key: '772afbe63ac2f0ae0527e25c6feac75b02365689', class: "title-header d-flex space-between align-center" }, h("slot", { key: '32bf212b1e16df0a2fd7cec6b21a7649458e7660', name: "title" }), h("div", { key: '13bf9f2443fa9c48c6f25a0159896995e170b4dc', class: "global-sub" }, h("slot", { key: 'a20c9414619c9508600c25ef31d5c14f6178f520', name: "local-controls" }), h("slot", { key: 'a87beb7500f4e07396bf4a91ee299a4bebd751bd' }))), h("div", { key: '008c9d1a0acf59a9b54facec5e6aec2f483f8ed7', class: mainNavClasses.join(' ') }, (this.device === 'mobile' || this.device === 'tablet') && (h("slot", { key: 'e8013ae7c0fe3883a4be405409fd3b35e236cf8c', name: "audience-navigation" })), h("slot", { key: '90412d08f0a835714de0a6c635f82aae90abeac2', name: "post-mainnavigation" }), (this.device === 'mobile' || this.device === 'tablet') && (h("slot", { key: '31fb4b34ddabda5f87f65a6c841b64f4a9802d50', name: "meta-navigation" })), (this.device === 'mobile' || this.device === 'tablet') && (h("slot", { key: 'cfd212a052d0b736d049084f492c614131ae7a32', name: "post-language-switch" })))));
214
+ }
215
+ get host() { return this; }
216
+ static get style() { return PostHeaderStyle0; }
217
+ }, [1, "post-header", {
218
+ "device": [32],
219
+ "mobileMenuExtended": [32]
220
+ }, [[0, "postMainNavigationClosed", "handlePostMainNavigationClosed"]]]);
221
+ function defineCustomElement$1() {
222
+ if (typeof customElements === "undefined") {
223
+ return;
224
+ }
225
+ const components = ["post-header"];
226
+ components.forEach(tagName => { switch (tagName) {
227
+ case "post-header":
228
+ if (!customElements.get(tagName)) {
229
+ customElements.define(tagName, PostHeader$1);
230
+ }
231
+ break;
232
+ } });
233
+ }
234
+
235
+ const PostHeader = PostHeader$1;
236
+ const defineCustomElement = defineCustomElement$1;
237
+
238
+ export { PostHeader, defineCustomElement };
@@ -87,7 +87,7 @@ const PostIcon = /*@__PURE__*/ proxyCustomElement(class PostIcon extends HTMLEle
87
87
  })
88
88
  .filter(([_key, value]) => value !== null)
89
89
  .reduce((styles, [key, value]) => Object.assign(styles, { [key]: value }), {});
90
- return (h(Host, { key: '5def9850dfccafe1ed1499fa042d7c1358256f38', "data-version": version }, h("span", { key: '663ec6e0079669d23be3bad4890cdd580145c05b', style: svgStyles })));
90
+ return (h(Host, { key: '86c61ac92270e1b46ef63e2bb0ff4683a16ca794', "data-version": version }, h("span", { key: 'ad856363b96d303912c9085d9d45cb911cbedfc6', style: svgStyles })));
91
91
  }
92
92
  get host() { return this; }
93
93
  static get watchers() { return {
@@ -53,7 +53,7 @@ const PostLanguageOption$1 = /*@__PURE__*/ proxyCustomElement(class PostLanguage
53
53
  }
54
54
  render() {
55
55
  const lang = this.code.toLowerCase();
56
- return (h(Host, { key: '2ee12b880402e7bd994185d86931aec2d7421bd8', "data-version": version, role: "listitem" }, this.url ? (h("a", { "aria-current": this.active ? 'page' : undefined, "aria-label": this.name, href: this.url, hrefLang: lang, lang: lang, onClick: () => this.emitChange() }, h("slot", null))) : (h("button", { "aria-current": this.active ? 'true' : undefined, "aria-label": this.name, lang: lang, onClick: () => this.emitChange() }, h("slot", null)))));
56
+ return (h(Host, { key: '98b5a47cb7544c23512f1a56bb62d286cbde90ff', "data-version": version, role: "listitem" }, this.url ? (h("a", { "aria-current": this.active ? 'page' : undefined, "aria-label": this.name, href: this.url, hrefLang: lang, lang: lang, onClick: () => this.emitChange() }, h("slot", null))) : (h("button", { "aria-current": this.active ? 'true' : undefined, "aria-label": this.name, lang: lang, onClick: () => this.emitChange() }, h("slot", null)))));
57
57
  }
58
58
  get host() { return this; }
59
59
  static get watchers() { return {
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../dist/types/components";
2
+
3
+ interface PostListItem extends Components.PostListItem, HTMLElement {}
4
+ export const PostListItem: {
5
+ prototype: PostListItem;
6
+ new (): PostListItem;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,38 @@
1
+ import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
+
3
+ const postListItemCss = ":host{display:flex}";
4
+ const PostListItemStyle0 = postListItemCss;
5
+
6
+ const PostListItem$1 = /*@__PURE__*/ proxyCustomElement(class PostListItem extends HTMLElement {
7
+ constructor() {
8
+ super();
9
+ this.__registerHost();
10
+ this.__attachShadow();
11
+ }
12
+ connectedCallback() {
13
+ this.host.setAttribute('slot', 'post-list-item');
14
+ }
15
+ render() {
16
+ return (h(Host, { key: '8336f46e5c7d9b6b921582498e1d7e62086b3d4b', role: "listitem" }, h("slot", { key: '36ca0d6632ca775793f1db91d747894e0037dca2' })));
17
+ }
18
+ get host() { return this; }
19
+ static get style() { return PostListItemStyle0; }
20
+ }, [1, "post-list-item"]);
21
+ function defineCustomElement$1() {
22
+ if (typeof customElements === "undefined") {
23
+ return;
24
+ }
25
+ const components = ["post-list-item"];
26
+ components.forEach(tagName => { switch (tagName) {
27
+ case "post-list-item":
28
+ if (!customElements.get(tagName)) {
29
+ customElements.define(tagName, PostListItem$1);
30
+ }
31
+ break;
32
+ } });
33
+ }
34
+
35
+ const PostListItem = PostListItem$1;
36
+ const defineCustomElement = defineCustomElement$1;
37
+
38
+ export { PostListItem, defineCustomElement };
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../dist/types/components";
2
+
3
+ interface PostList extends Components.PostList, HTMLElement {}
4
+ export const PostList: {
5
+ prototype: PostList;
6
+ new (): PostList;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,56 @@
1
+ import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
+ import { v as version } from './package.js';
3
+
4
+ const postListCss = "/*!\n * Copyright 2021 by Swiss Post, Information Technology\n */post-list{display:flex;gap:var(--post-list-title-gap);flex-direction:column;align-items:flex-start}post-list>div[role=list]{flex-direction:column;display:flex;gap:var(--post-list-item-gap)}post-list[horizontal]:not([horizontal=false]){flex-direction:row;align-items:baseline}post-list[horizontal]:not([horizontal=false])>div[role=list]{flex-direction:row;align-items:center}post-list>.list-title.visually-hidden{width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border:0 !important}post-list>.list-title.visually-hidden:not(caption){position:absolute !important}";
5
+ const PostListStyle0 = postListCss;
6
+
7
+ const PostList$1 = /*@__PURE__*/ proxyCustomElement(class PostList extends HTMLElement {
8
+ constructor() {
9
+ super();
10
+ this.__registerHost();
11
+ this.titleId = undefined;
12
+ this.titleHidden = false;
13
+ this.horizontal = false;
14
+ }
15
+ componentWillLoad() {
16
+ /**
17
+ * Get the id set on the host element or use a random id by default
18
+ */
19
+ this.titleId = `list-${crypto.randomUUID()}`;
20
+ }
21
+ componentDidLoad() {
22
+ this.checkTitle();
23
+ }
24
+ checkTitle() {
25
+ if (!this.titleEl.innerText) {
26
+ throw new Error('Please provide a title to the list component. Title is mandatory for accessibility purposes.');
27
+ }
28
+ }
29
+ render() {
30
+ return (h(Host, { key: '23875f577fa2cbdeac88596616ddd1d5b924f983', "data-version": version }, h("div", { key: '3fe8da70bc5c0e7b72c5e8b76a37762deb55fffd', ref: el => (this.titleEl = el), id: this.titleId, class: `list-title${this.titleHidden ? ' visually-hidden' : ''}` }, h("slot", { key: '536bec8ddbed178108a921f0b643d6eeb7b58edc' })), h("div", { key: 'c6b560206740105afc494050fa4b8608ccf4bd15', role: "list", "aria-labelledby": this.titleId }, h("slot", { key: '06272c2a9cc18d2f5440ff1fc0b966929b3ab6a0', name: "post-list-item" }))));
31
+ }
32
+ get host() { return this; }
33
+ static get style() { return PostListStyle0; }
34
+ }, [4, "post-list", {
35
+ "titleHidden": [4, "title-hidden"],
36
+ "horizontal": [4],
37
+ "titleId": [32]
38
+ }]);
39
+ function defineCustomElement$1() {
40
+ if (typeof customElements === "undefined") {
41
+ return;
42
+ }
43
+ const components = ["post-list"];
44
+ components.forEach(tagName => { switch (tagName) {
45
+ case "post-list":
46
+ if (!customElements.get(tagName)) {
47
+ customElements.define(tagName, PostList$1);
48
+ }
49
+ break;
50
+ } });
51
+ }
52
+
53
+ const PostList = PostList$1;
54
+ const defineCustomElement = defineCustomElement$1;
55
+
56
+ export { PostList, defineCustomElement };
@@ -27,7 +27,7 @@ const PostLogo$1 = /*@__PURE__*/ proxyCustomElement(class PostLogo extends HTMLE
27
27
  render() {
28
28
  const logoLink = this.url && (typeof this.url === 'string' ? this.url : this.url.href);
29
29
  const LogoTag = logoLink ? 'a' : 'span';
30
- return (h(Host, { key: '484cc83fcf8886fb627ac047717bc9ef8f0dbcba', "data-version": version }, h(LogoTag, Object.assign({ key: '3c9eb2f917cf4d1c6492cc8956e3d82bb946eff6', class: "logo" }, (logoLink ? { href: logoLink } : {})), h("span", { key: '2c588b6a52942c5b450162884754050d87f0f316', class: "description" }, h("slot", { key: '145e9f0ae716f854a5ece73d5948d7f9dc6864f3', onSlotchange: () => this.checkDescription() })), h("svg", { key: 'd92dcb207c5a3e9b46b54bd0a7a3ca56677cf57f', xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 72 72", "aria-hidden": "true" }, h("g", { key: 'e3101e8162385d4087feb1d6d5b7f7095fa7d625', id: "Logo" }, h("rect", { key: '742a55467004c6cb01f16d10594a8ab29d1c6df9', fill: "#ffcc00", x: "0", y: "0", width: "72", height: "72" }), h("polygon", { key: '9ace2708a4f7bf72bda2b8cb1760bcd9ed74b9e6', fill: "#ff0000", points: "34,32.3 34,19 19.7,19 19.7,29.1 10,29.1 10,42.9 19.7,42.9 19.7,53 34,53 34,39.7 30.6,39.7 30.6,49.8 23.1,49.8 23.1,39.7 13.4,39.7 13.4,32.3 23.1,32.3 23.1,22.2 30.6,22.2 30.6,32.3" }), h("path", { key: '2b9e87466faf9457b093e4a76d8a68bec66bb729', d: "M53.56234,31.10526c0,2.41272-1.99154,4.29475-4.51723,4.29475H45.2v-8.3h3.84511C51.66802,27.1,53.56234,28.78889,53.56234,31.10526z M50.69666,19H36v34h9.2V42.9h5.49666c6.75131,0,11.9971-5.15137,11.9971-11.8057C62.69376,24.39136,57.35099,19,50.69666,19z" }))))));
30
+ return (h(Host, { key: '9f23dca4f568ecbcf3d90387b2a9cb4fa1e85a98', "data-version": version, slot: "post-logo" }, h(LogoTag, Object.assign({ key: '1b303363d3a4a829d4ab4b38bc40cbd3107b55e9', class: "logo" }, (logoLink ? { href: logoLink } : {})), h("span", { key: 'de29d53c4bb663053092b905d32f6597bd9a00d5', class: "description" }, h("slot", { key: 'bdfc96e3d9cb9384a61fa8af91c12a4b119f2f3b', onSlotchange: () => this.checkDescription() })), h("svg", { key: 'f2d1e0803c7f2f3a7c425dd5ebd57346c8d967e6', xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 72 72", "aria-hidden": "true" }, h("g", { key: '554a2d4edb796b01969555eccb3f0f34e74f0121', id: "Logo" }, h("rect", { key: '7596d8684037b02d015e48539bddda3f44dfcadf', fill: "#ffcc00", x: "0", y: "0", width: "72", height: "72" }), h("polygon", { key: 'f79c5e941f7d87de1484a934565cf363b49914d5', fill: "#ff0000", points: "34,32.3 34,19 19.7,19 19.7,29.1 10,29.1 10,42.9 19.7,42.9 19.7,53 34,53 34,39.7 30.6,39.7 30.6,49.8 23.1,49.8 23.1,39.7 13.4,39.7 13.4,32.3 23.1,32.3 23.1,22.2 30.6,22.2 30.6,32.3" }), h("path", { key: '7c5babc1703e4f74c08b78916a86c553f8cc6edf', d: "M53.56234,31.10526c0,2.41272-1.99154,4.29475-4.51723,4.29475H45.2v-8.3h3.84511C51.66802,27.1,53.56234,28.78889,53.56234,31.10526z M50.69666,19H36v34h9.2V42.9h5.49666c6.75131,0,11.9971-5.15137,11.9971-11.8057C62.69376,24.39136,57.35099,19,50.69666,19z" }))))));
31
31
  }
32
32
  get host() { return this; }
33
33
  static get watchers() { return {
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../dist/types/components";
2
+
3
+ interface PostMainnavigation extends Components.PostMainnavigation, HTMLElement {}
4
+ export const PostMainnavigation: {
5
+ prototype: PostMainnavigation;
6
+ new (): PostMainnavigation;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,51 @@
1
+ import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
+
3
+ const postMainnavigationCss = "*,::before,::after{box-sizing:border-box}@media screen and (min-width: 1024px){slot[name=back-button],[slot=back-button]{display:none}}@media screen and (min-width: 1024px){h2{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);border:0}}post-mainnavigation{height:100%}:host{height:100%;display:block}.main-navigation{margin-block:0;list-style:none;display:flex;padding-left:0;gap:1rem}@media screen and (max-width: 1023.99px){.main-navigation{flex-direction:column}}.main-navigation>post-list{display:flex;align-items:stretch;gap:1rem;height:100%}@media screen and (max-width: 1023.99px){.main-navigation>post-list{flex-direction:column}}.main-navigation a,.main-navigation post-megadropdown-toggle{height:100%;display:flex;align-items:center}";
4
+ const PostMainnavigationStyle0 = postMainnavigationCss;
5
+
6
+ const PostMainnavigation$1 = /*@__PURE__*/ proxyCustomElement(class PostMainnavigation extends HTMLElement {
7
+ constructor() {
8
+ super();
9
+ this.__registerHost();
10
+ this.postToggle = createEvent(this, "postToggle", 7);
11
+ }
12
+ handleMegadropdownToggled(event) {
13
+ // Find next element sibling
14
+ let megalodon;
15
+ let target = event.target;
16
+ while (target !== null) {
17
+ if (target.tagName === 'POST-MEGADROPDOWN') {
18
+ megalodon = target;
19
+ break;
20
+ }
21
+ target = target.nextElementSibling;
22
+ }
23
+ if (megalodon)
24
+ megalodon.toggle(event.target);
25
+ }
26
+ handleBackButtonClick() {
27
+ this.postToggle.emit();
28
+ }
29
+ render() {
30
+ return (h(Host, { key: '1c1d1d1c2781f39acc0fd02d3f93f922d801d98f', slot: "post-mainnavigation" }, h("div", { key: '1bc1129c65fc03ec72609438bbf28afe5bc5974b', onClick: () => this.handleBackButtonClick(), class: "back-button" }, h("slot", { key: '6b1bcc25306f1f959a25b18a6319eb696b0cbc2c', name: "back-button" })), h("nav", { key: '0002b55cb82fbf88a69a886c5ec1ba24168c9979', class: "main-navigation" }, h("slot", { key: '15e4558c1202f8f83e09dad76441d6bf7e3e16ea' }))));
31
+ }
32
+ static get style() { return PostMainnavigationStyle0; }
33
+ }, [4, "post-mainnavigation", undefined, [[0, "postToggle", "handleMegadropdownToggled"]]]);
34
+ function defineCustomElement$1() {
35
+ if (typeof customElements === "undefined") {
36
+ return;
37
+ }
38
+ const components = ["post-mainnavigation"];
39
+ components.forEach(tagName => { switch (tagName) {
40
+ case "post-mainnavigation":
41
+ if (!customElements.get(tagName)) {
42
+ customElements.define(tagName, PostMainnavigation$1);
43
+ }
44
+ break;
45
+ } });
46
+ }
47
+
48
+ const PostMainnavigation = PostMainnavigation$1;
49
+ const defineCustomElement = defineCustomElement$1;
50
+
51
+ export { PostMainnavigation, defineCustomElement };
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../dist/types/components";
2
+
3
+ interface PostMegadropdownTrigger extends Components.PostMegadropdownTrigger, HTMLElement {}
4
+ export const PostMegadropdownTrigger: {
5
+ prototype: PostMegadropdownTrigger;
6
+ new (): PostMegadropdownTrigger;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,42 @@
1
+ import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
+
3
+ const postMegadropdownTriggerCss = ":host{display:inline-block}";
4
+ const PostMegadropdownTriggerStyle0 = postMegadropdownTriggerCss;
5
+
6
+ const PostMegadropdownTrigger$1 = /*@__PURE__*/ proxyCustomElement(class PostMegadropdownTrigger extends HTMLElement {
7
+ constructor() {
8
+ super();
9
+ this.__registerHost();
10
+ this.__attachShadow();
11
+ this.postToggle = createEvent(this, "postToggle", 7);
12
+ this.toggled = false;
13
+ }
14
+ handleClick() {
15
+ this.toggled = !this.toggled;
16
+ this.postToggle.emit();
17
+ }
18
+ render() {
19
+ return (h(Host, { key: 'af6dbf6cb97c5f98242e2d3fc31f193d00444b26', slot: "post-megadropdown-trigger" }, h("button", { key: '8160075f3dcb5afdd88a375698a61edfdbe8b7a1', "aria-expanded": this.toggled, onClick: () => this.handleClick() }, h("slot", { key: 'f5be082b15802582540d9a3320d4bf19ca3d98c3' }))));
20
+ }
21
+ static get style() { return PostMegadropdownTriggerStyle0; }
22
+ }, [1, "post-megadropdown-trigger", {
23
+ "toggled": [32]
24
+ }]);
25
+ function defineCustomElement$1() {
26
+ if (typeof customElements === "undefined") {
27
+ return;
28
+ }
29
+ const components = ["post-megadropdown-trigger"];
30
+ components.forEach(tagName => { switch (tagName) {
31
+ case "post-megadropdown-trigger":
32
+ if (!customElements.get(tagName)) {
33
+ customElements.define(tagName, PostMegadropdownTrigger$1);
34
+ }
35
+ break;
36
+ } });
37
+ }
38
+
39
+ const PostMegadropdownTrigger = PostMegadropdownTrigger$1;
40
+ const defineCustomElement = defineCustomElement$1;
41
+
42
+ export { PostMegadropdownTrigger, defineCustomElement };
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../dist/types/components";
2
+
3
+ interface PostMegadropdown extends Components.PostMegadropdown, HTMLElement {}
4
+ export const PostMegadropdown: {
5
+ prototype: PostMegadropdown;
6
+ new (): PostMegadropdown;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,70 @@
1
+ import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
+ import { d as defineCustomElement$2 } from './post-popovercontainer2.js';
3
+
4
+ const postMegadropdownCss = "*,::before,::after{box-sizing:border-box}post-popovercontainer{background-color:#fafafa;width:100%;border-bottom:1px solid #000}@media screen and (max-width: 1023.99px){post-popovercontainer{position:absolute;top:var(--header-height) !important;bottom:0;left:0;width:100%;height:auto}}.megadropdown{display:flex;gap:1rem;padding:1.5rem;border-radius:0 0 3px 3px}@media screen and (max-width: 1023.99px){.megadropdown{flex-direction:column}}.megadropdown post-list{display:flex;flex-direction:column;gap:.5rem}.megadropdown post-list-item{border-bottom:1px solid gray}.megadropdown post-list-item>a{padding-block:.25rem;display:block;text-decoration:none}.back-button{display:none}@media screen and (max-width: 1023.99px){.back-button{display:block}}post-closebutton{margin-left:auto}@media screen and (max-width: 1023.99px){post-closebutton{display:none}}h3{font-size:20px}";
5
+ const PostMegadropdownStyle0 = postMegadropdownCss;
6
+
7
+ const PostMegadropdown$1 = /*@__PURE__*/ proxyCustomElement(class PostMegadropdown extends HTMLElement {
8
+ constructor() {
9
+ super();
10
+ this.__registerHost();
11
+ }
12
+ /**
13
+ * Show megadropdown
14
+ * @param element HTMLElement
15
+ * @returns boolean
16
+ */
17
+ async show(element) {
18
+ return this.popoverRef.show(element);
19
+ }
20
+ /**
21
+ * Hide megadropdown
22
+ * @returns boolean
23
+ */
24
+ async hide() {
25
+ return this.popoverRef.hide();
26
+ }
27
+ /**
28
+ * Toggle megadropdown
29
+ * @param element HTMLElement
30
+ * @param force boolean
31
+ * @returns boolean
32
+ */
33
+ async toggle(element, force) {
34
+ return this.popoverRef.toggle(element, force !== null && force !== void 0 ? force : undefined);
35
+ }
36
+ handleBackButtonClick() {
37
+ this.hide();
38
+ }
39
+ render() {
40
+ return (h(Host, { key: '6b30399852561a911c04a79c7c785bb5cf8e68ff', slot: "post-mainnavigation" }, h("post-popovercontainer", { key: 'caa196c59c0177948a73c43033f7399344068d77', placement: "bottom", "edge-gap": "0", ref: el => (this.popoverRef = el) }, h("div", { key: '7c88bd1ca7fac00b9ab0cb1d73252c6990484fb2', class: "megadropdown" }, h("div", { key: '25073177e9c9a05fca93b3b0abbed18f6b2a075b', onClick: () => this.handleBackButtonClick(), class: "back-button" }, h("slot", { key: '06a153e974f60476f2796e03afea3ad86c7560ca', name: "back-button" })), h("slot", { key: 'ea95044efbd609894dd96b3aa8662756e14711af' })))));
41
+ }
42
+ static get style() { return PostMegadropdownStyle0; }
43
+ }, [4, "post-megadropdown", {
44
+ "show": [64],
45
+ "hide": [64],
46
+ "toggle": [64]
47
+ }]);
48
+ function defineCustomElement$1() {
49
+ if (typeof customElements === "undefined") {
50
+ return;
51
+ }
52
+ const components = ["post-megadropdown", "post-popovercontainer"];
53
+ components.forEach(tagName => { switch (tagName) {
54
+ case "post-megadropdown":
55
+ if (!customElements.get(tagName)) {
56
+ customElements.define(tagName, PostMegadropdown$1);
57
+ }
58
+ break;
59
+ case "post-popovercontainer":
60
+ if (!customElements.get(tagName)) {
61
+ defineCustomElement$2();
62
+ }
63
+ break;
64
+ } });
65
+ }
66
+
67
+ const PostMegadropdown = PostMegadropdown$1;
68
+ const defineCustomElement = defineCustomElement$1;
69
+
70
+ export { PostMegadropdown, defineCustomElement };
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../dist/types/components";
2
+
3
+ interface PostMenuItem extends Components.PostMenuItem, HTMLElement {}
4
+ export const PostMenuItem: {
5
+ prototype: PostMenuItem;
6
+ new (): PostMenuItem;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,36 @@
1
+ import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
+ import { v as version } from './package.js';
3
+
4
+ const postMenuItemCss = ":host{display:block}";
5
+ const PostMenuItemStyle0 = postMenuItemCss;
6
+
7
+ const PostMenuItem$1 = /*@__PURE__*/ proxyCustomElement(class PostMenuItem extends HTMLElement {
8
+ constructor() {
9
+ super();
10
+ this.__registerHost();
11
+ this.__attachShadow();
12
+ }
13
+ render() {
14
+ return (h(Host, { key: '7984d6be0ae981f54618b4c0d7a80bfcc71f16a3', role: "menuitem", "data-version": version }, h("slot", { key: '7fbb20f1586676b1c8f933e0f067144bbcca825f' })));
15
+ }
16
+ get host() { return this; }
17
+ static get style() { return PostMenuItemStyle0; }
18
+ }, [1, "post-menu-item"]);
19
+ function defineCustomElement$1() {
20
+ if (typeof customElements === "undefined") {
21
+ return;
22
+ }
23
+ const components = ["post-menu-item"];
24
+ components.forEach(tagName => { switch (tagName) {
25
+ case "post-menu-item":
26
+ if (!customElements.get(tagName)) {
27
+ customElements.define(tagName, PostMenuItem$1);
28
+ }
29
+ break;
30
+ } });
31
+ }
32
+
33
+ const PostMenuItem = PostMenuItem$1;
34
+ const defineCustomElement = defineCustomElement$1;
35
+
36
+ export { PostMenuItem, defineCustomElement };