@swisspost/design-system-components 9.0.0 → 10.0.0-next.37

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 (568) hide show
  1. package/dist/.config/bindings.angular.js +4 -0
  2. package/dist/cjs/breakpoints-cdf1b747.js +59 -0
  3. package/dist/cjs/check-non-empty-bd99d236.js +15 -0
  4. package/dist/cjs/check-one-of-75d270b5.js +13 -0
  5. package/dist/cjs/check-type-cdbf6d29.js +21 -0
  6. package/dist/cjs/check-url-220a286c.js +19 -0
  7. package/dist/cjs/event-guard-efabc84f.js +47 -0
  8. package/dist/cjs/fade-72d5ef55.js +14 -0
  9. package/dist/cjs/get-root-8102fecd.js +17 -0
  10. package/dist/cjs/index-23e36ff7.js +37 -0
  11. package/dist/cjs/{index-e1f32cce.js → index-b60129c4.js} +35 -15
  12. package/dist/cjs/index.browser-4af21c17.js +16 -0
  13. package/dist/cjs/index.cjs.js +57 -28
  14. package/dist/cjs/loader.cjs.js +2 -2
  15. package/dist/cjs/long-press-event-6e62d113.js +266 -0
  16. package/dist/cjs/{package-3ed88bb9.js → package-8121f093.js} +1 -1
  17. package/dist/cjs/{post-accordion-9ef382e8.js → post-accordion-beac7c9f.js} +11 -12
  18. package/dist/cjs/post-accordion-item-4846fbee.js +64 -0
  19. package/dist/cjs/post-accordion-item.cjs.entry.js +10 -6
  20. package/dist/cjs/post-accordion.cjs.entry.js +6 -4
  21. package/dist/cjs/post-avatar-a36991fb.js +145 -0
  22. package/dist/cjs/post-avatar.cjs.entry.js +14 -0
  23. package/dist/cjs/post-back-to-top-32aa9017.js +96 -0
  24. package/dist/cjs/post-back-to-top.cjs.entry.js +16 -0
  25. package/dist/cjs/post-banner-be0e8909.js +92 -0
  26. package/dist/cjs/post-banner.cjs.entry.js +20 -0
  27. package/dist/cjs/post-breadcrumb-item_2.cjs.entry.js +18 -0
  28. package/dist/cjs/post-breadcrumbs-6ef82a41.js +120 -0
  29. package/dist/cjs/post-breadcrumbs.cjs.entry.js +13 -0
  30. package/dist/cjs/post-card-control-fe919333.js +269 -0
  31. package/dist/cjs/post-card-control.cjs.entry.js +6 -5
  32. package/dist/cjs/post-closebutton_15.cjs.entry.js +36 -0
  33. package/dist/cjs/{post-collapsible-trigger-1764e6dc.js → post-collapsible-trigger-f42be607.js} +62 -76
  34. package/dist/cjs/post-collapsible_2.cjs.entry.js +11 -7
  35. package/dist/cjs/post-components.cjs.js +2 -2
  36. package/dist/cjs/post-footer-5179aa17.js +38 -0
  37. package/dist/cjs/post-footer.cjs.entry.js +12 -0
  38. package/dist/cjs/post-linkarea-27125078.js +30 -0
  39. package/dist/cjs/post-linkarea.cjs.entry.js +11 -0
  40. package/dist/cjs/post-menu-item-d78a9121.js +68 -0
  41. package/dist/cjs/post-popover-feb1e773.js +135 -0
  42. package/dist/cjs/post-popover.cjs.entry.js +4 -3
  43. package/dist/cjs/{post-rating-d5073d8d.js → post-rating-6d153a2c.js} +4 -4
  44. package/dist/cjs/post-rating.cjs.entry.js +3 -3
  45. package/dist/cjs/post-tab-header-e4532918.js +34 -0
  46. package/dist/cjs/post-tab-header.cjs.entry.js +6 -4
  47. package/dist/cjs/{post-tab-panel-97b79ecd.js → post-tab-panel-40df21ad.js} +5 -4
  48. package/dist/cjs/post-tab-panel.cjs.entry.js +4 -3
  49. package/dist/cjs/{post-tabs-834497f2.js → post-tabs-45db2696.js} +14 -16
  50. package/dist/cjs/post-tabs.cjs.entry.js +5 -4
  51. package/dist/cjs/post-tag-0967bb1e.js +47 -0
  52. package/dist/cjs/post-tag.cjs.entry.js +3 -3
  53. package/dist/cjs/post-togglebutton-42b7d166.js +4494 -0
  54. package/dist/cjs/{post-tooltip-20ebe011.js → post-tooltip-f833d51d.js} +10 -6
  55. package/dist/cjs/{post-tooltip-trigger-6f4c9748.js → post-tooltip-trigger-3ceac010.js} +17 -280
  56. package/dist/cjs/post-tooltip-trigger.cjs.entry.js +5 -4
  57. package/dist/cjs/post-tooltip.cjs.entry.js +5 -4
  58. package/dist/cjs/slide-cd1f09b3.js +28 -0
  59. package/dist/collection/animations/collapse.js +8 -6
  60. package/dist/collection/animations/fade.js +6 -2
  61. package/dist/collection/animations/slide.js +23 -0
  62. package/dist/collection/collection-manifest.json +22 -3
  63. package/dist/collection/components/post-accordion/post-accordion.css +1 -1
  64. package/dist/collection/components/post-accordion/post-accordion.js +8 -10
  65. package/dist/collection/components/post-accordion-item/post-accordion-item.css +1 -1
  66. package/dist/collection/components/post-accordion-item/post-accordion-item.js +30 -16
  67. package/dist/collection/components/post-avatar/post-avatar.css +1 -0
  68. package/dist/collection/components/post-avatar/post-avatar.js +233 -0
  69. package/dist/collection/components/post-back-to-top/post-back-to-top.css +1 -0
  70. package/dist/collection/components/post-back-to-top/post-back-to-top.js +127 -0
  71. package/dist/collection/components/post-banner/banner-types.js +1 -0
  72. package/dist/collection/components/post-banner/post-banner.css +1 -0
  73. package/dist/collection/components/{post-alert/post-alert.js → post-banner/post-banner.js} +44 -72
  74. package/dist/collection/components/post-breadcrumb-item/post-breadcrumb-item.css +1 -0
  75. package/dist/collection/components/post-breadcrumb-item/post-breadcrumb-item.js +96 -0
  76. package/dist/collection/components/post-breadcrumbs/post-breadcrumbs.css +1 -0
  77. package/dist/collection/components/post-breadcrumbs/post-breadcrumbs.js +160 -0
  78. package/dist/collection/components/post-card-control/post-card-control.css +1 -31
  79. package/dist/collection/components/post-card-control/post-card-control.js +20 -24
  80. package/dist/collection/components/post-closebutton/post-closebutton.css +1 -0
  81. package/dist/collection/components/post-closebutton/post-closebutton.js +23 -0
  82. package/dist/collection/components/post-collapsible/post-collapsible.css +1 -1
  83. package/dist/collection/components/post-collapsible/post-collapsible.js +6 -3
  84. package/dist/collection/components/post-collapsible-trigger/post-collapsible-trigger.js +43 -45
  85. package/dist/collection/components/post-footer/post-footer.css +1 -0
  86. package/dist/collection/components/post-footer/post-footer.js +75 -0
  87. package/dist/collection/components/post-header/post-header.css +1 -0
  88. package/dist/collection/components/post-header/post-header.js +320 -0
  89. package/dist/collection/components/post-icon/post-icon.js +58 -55
  90. package/dist/collection/components/post-language-option/post-language-option.css +1 -0
  91. package/dist/collection/components/post-language-option/post-language-option.js +237 -0
  92. package/dist/collection/components/post-language-switch/post-language-switch.css +1 -0
  93. package/dist/collection/components/post-language-switch/post-language-switch.js +186 -0
  94. package/dist/collection/components/post-language-switch/switch-variants.js +1 -0
  95. package/dist/collection/components/post-linkarea/post-linkarea.css +1 -0
  96. package/dist/collection/components/post-linkarea/post-linkarea.js +30 -0
  97. package/dist/collection/components/post-list/post-list.css +1 -0
  98. package/dist/collection/components/post-list/post-list.js +88 -0
  99. package/dist/collection/components/post-list-item/post-list-item.css +1 -0
  100. package/dist/collection/components/post-list-item/post-list-item.js +26 -0
  101. package/dist/collection/components/post-logo/post-logo.css +1 -1
  102. package/dist/collection/components/post-logo/post-logo.js +2 -2
  103. package/dist/collection/components/post-mainnavigation/post-mainnavigation.css +1 -0
  104. package/dist/collection/components/post-mainnavigation/post-mainnavigation.js +184 -0
  105. package/dist/collection/components/post-megadropdown/post-megadropdown.css +1 -0
  106. package/dist/collection/components/post-megadropdown/post-megadropdown.js +275 -0
  107. package/dist/collection/components/post-megadropdown-trigger/post-megadropdown-trigger.css +1 -0
  108. package/dist/collection/components/post-megadropdown-trigger/post-megadropdown-trigger.js +133 -0
  109. package/dist/collection/components/post-menu/post-menu.css +1 -0
  110. package/dist/collection/components/post-menu/post-menu.js +294 -0
  111. package/dist/collection/components/post-menu-item/post-menu-item.js +8 -0
  112. package/dist/collection/components/post-menu-trigger/post-menu-trigger.css +1 -0
  113. package/dist/collection/components/post-menu-trigger/post-menu-trigger.js +120 -0
  114. package/dist/collection/components/post-popover/post-popover.css +1 -31
  115. package/dist/collection/components/post-popover/post-popover.js +16 -13
  116. package/dist/collection/components/post-popovercontainer/post-popovercontainer.css +1 -31
  117. package/dist/collection/components/post-popovercontainer/post-popovercontainer.js +39 -6
  118. package/dist/collection/components/post-rating/post-rating.css +1 -31
  119. package/dist/collection/components/post-rating/post-rating.js +1 -1
  120. package/dist/collection/components/post-tab-header/post-tab-header.css +1 -31
  121. package/dist/collection/components/post-tab-header/post-tab-header.js +6 -5
  122. package/dist/collection/components/post-tab-panel/post-tab-panel.js +4 -3
  123. package/dist/collection/components/post-tabs/post-tabs.css +1 -1
  124. package/dist/collection/components/post-tabs/post-tabs.js +7 -15
  125. package/dist/collection/components/post-tag/post-tag.css +1 -31
  126. package/dist/collection/components/post-tag/post-tag.js +2 -2
  127. package/dist/collection/components/post-togglebutton/post-togglebutton.css +1 -0
  128. package/dist/collection/components/post-togglebutton/post-togglebutton.js +74 -0
  129. package/dist/collection/components/post-tooltip/post-tooltip.css +1 -1
  130. package/dist/collection/components/post-tooltip/post-tooltip.js +6 -3
  131. package/dist/collection/components/post-tooltip-trigger/post-tooltip-trigger.js +14 -14
  132. package/dist/collection/index.js +21 -2
  133. package/dist/collection/utils/attribute-observer.js +6 -5
  134. package/dist/collection/utils/breakpoints.js +52 -0
  135. package/dist/collection/utils/component-on-ready.js +4 -4
  136. package/dist/collection/utils/debounce.js +2 -1
  137. package/dist/collection/utils/environment.js +2 -0
  138. package/dist/collection/utils/event-guard.js +43 -0
  139. package/dist/collection/utils/get-focusable-children.js +33 -0
  140. package/dist/collection/utils/get-root.js +6 -1
  141. package/dist/collection/utils/index.js +5 -0
  142. package/dist/collection/utils/is-motion-reduced.js +2 -1
  143. package/dist/collection/utils/property-checkers/check-non-empty.js +6 -2
  144. package/dist/collection/utils/property-checkers/check-one-of.js +8 -3
  145. package/dist/collection/utils/property-checkers/check-pattern.js +8 -3
  146. package/dist/collection/utils/property-checkers/check-type.js +11 -6
  147. package/dist/collection/utils/property-checkers/check-url.js +11 -6
  148. package/dist/collection/utils/property-checkers/empty-or.js +5 -2
  149. package/dist/collection/utils/sass-export.js +8 -5
  150. package/dist/components/breakpoints.js +56 -0
  151. package/dist/components/check-non-empty.js +6 -2
  152. package/dist/components/check-one-of.js +8 -3
  153. package/dist/components/check-type.js +11 -6
  154. package/dist/components/event-guard.js +45 -0
  155. package/dist/components/fade.js +6 -2
  156. package/dist/components/get-focusable-children.js +35 -0
  157. package/dist/components/get-root.js +15 -0
  158. package/dist/components/index.browser.js +14 -0
  159. package/dist/components/index.js +21 -2
  160. package/dist/components/index2.js +25 -12
  161. package/dist/components/long-press-event.js +264 -0
  162. package/dist/components/package.js +1 -1
  163. package/dist/components/post-accordion-item2.js +37 -18
  164. package/dist/components/post-accordion2.js +8 -9
  165. package/dist/components/post-avatar.d.ts +11 -0
  166. package/dist/components/post-avatar.js +6 -0
  167. package/dist/components/post-avatar2.js +170 -0
  168. package/dist/components/post-back-to-top.d.ts +11 -0
  169. package/dist/components/post-back-to-top.js +6 -0
  170. package/dist/components/post-back-to-top2.js +121 -0
  171. package/dist/components/post-banner.d.ts +11 -0
  172. package/dist/components/post-banner.js +6 -0
  173. package/dist/components/post-banner2.js +127 -0
  174. package/dist/components/post-breadcrumb-item.d.ts +11 -0
  175. package/dist/components/post-breadcrumb-item.js +6 -0
  176. package/dist/components/post-breadcrumb-item2.js +82 -0
  177. package/dist/components/post-breadcrumbs.d.ts +11 -0
  178. package/dist/components/post-breadcrumbs.js +6 -0
  179. package/dist/components/post-breadcrumbs2.js +177 -0
  180. package/dist/components/post-card-control2.js +16 -19
  181. package/dist/components/post-closebutton.d.ts +11 -0
  182. package/dist/components/post-closebutton.js +6 -0
  183. package/dist/components/post-closebutton2.js +39 -0
  184. package/dist/components/post-collapsible-trigger2.js +47 -64
  185. package/dist/components/post-collapsible2.js +17 -12
  186. package/dist/components/post-footer.d.ts +11 -0
  187. package/dist/components/post-footer.js +6 -0
  188. package/dist/components/post-footer2.js +78 -0
  189. package/dist/components/post-header.d.ts +11 -0
  190. package/dist/components/post-header.js +6 -0
  191. package/dist/components/post-header2.js +399 -0
  192. package/dist/components/post-icon2.js +59 -55
  193. package/dist/components/post-language-option.d.ts +11 -0
  194. package/dist/components/post-language-option.js +6 -0
  195. package/dist/components/post-language-option2.js +103 -0
  196. package/dist/components/post-language-switch.d.ts +11 -0
  197. package/dist/components/post-language-switch.js +6 -0
  198. package/dist/components/post-language-switch2.js +145 -0
  199. package/dist/components/post-linkarea.d.ts +11 -0
  200. package/dist/components/post-linkarea.js +6 -0
  201. package/dist/components/post-linkarea2.js +43 -0
  202. package/dist/components/post-list-item.d.ts +11 -0
  203. package/dist/components/post-list-item.js +6 -0
  204. package/dist/components/post-list-item2.js +36 -0
  205. package/dist/components/{post-alert.d.ts → post-list.d.ts} +4 -4
  206. package/dist/components/post-list.js +6 -0
  207. package/dist/components/post-list2.js +54 -0
  208. package/dist/components/post-logo2.js +4 -3
  209. package/dist/components/post-mainnavigation.d.ts +11 -0
  210. package/dist/components/post-mainnavigation.js +6 -0
  211. package/dist/components/post-mainnavigation2.js +183 -0
  212. package/dist/components/post-megadropdown-trigger.d.ts +11 -0
  213. package/dist/components/post-megadropdown-trigger.js +6 -0
  214. package/dist/components/post-megadropdown-trigger2.js +121 -0
  215. package/dist/components/post-megadropdown.d.ts +11 -0
  216. package/dist/components/post-megadropdown.js +6 -0
  217. package/dist/components/post-megadropdown2.js +190 -0
  218. package/dist/components/post-menu-item.d.ts +11 -0
  219. package/dist/components/post-menu-item.js +6 -0
  220. package/dist/components/post-menu-item2.js +27 -0
  221. package/dist/components/post-menu-trigger.d.ts +11 -0
  222. package/dist/components/post-menu-trigger.js +6 -0
  223. package/dist/components/post-menu-trigger2.js +109 -0
  224. package/dist/components/post-menu.d.ts +11 -0
  225. package/dist/components/post-menu.js +6 -0
  226. package/dist/components/post-menu2.js +192 -0
  227. package/dist/components/post-popover2.js +20 -16
  228. package/dist/components/post-popovercontainer2.js +788 -73
  229. package/dist/components/post-rating2.js +2 -2
  230. package/dist/components/post-tab-header2.js +8 -6
  231. package/dist/components/post-tab-panel2.js +4 -3
  232. package/dist/components/post-tabs2.js +11 -13
  233. package/dist/components/post-tag2.js +2 -2
  234. package/dist/components/post-togglebutton.d.ts +11 -0
  235. package/dist/components/post-togglebutton.js +6 -0
  236. package/dist/components/post-togglebutton2.js +62 -0
  237. package/dist/components/post-tooltip-trigger2.js +14 -277
  238. package/dist/components/post-tooltip2.js +7 -3
  239. package/dist/components/slide.js +25 -0
  240. package/dist/docs.json +1977 -287
  241. package/dist/esm/breakpoints-7812702e.js +56 -0
  242. package/dist/esm/check-non-empty-258a56b3.js +13 -0
  243. package/dist/esm/check-one-of-0bee20f5.js +11 -0
  244. package/dist/esm/check-type-37d5d307.js +19 -0
  245. package/dist/esm/check-url-17962bc8.js +17 -0
  246. package/dist/esm/event-guard-538ee077.js +45 -0
  247. package/dist/esm/fade-1f3cacf4.js +11 -0
  248. package/dist/esm/get-root-1b1af46f.js +15 -0
  249. package/dist/esm/index-8f8fe5b0.js +32 -0
  250. package/dist/esm/{index-e1b64755.js → index-f4d19816.js} +35 -15
  251. package/dist/esm/index.browser-ff103197.js +14 -0
  252. package/dist/esm/index.js +33 -23
  253. package/dist/esm/loader.js +3 -3
  254. package/dist/esm/long-press-event-04d24397.js +264 -0
  255. package/dist/esm/package-d9237b44.js +3 -0
  256. package/dist/esm/{post-accordion-ad570427.js → post-accordion-fdcf7205.js} +11 -12
  257. package/dist/esm/post-accordion-item-e11e3804.js +62 -0
  258. package/dist/esm/post-accordion-item.entry.js +10 -6
  259. package/dist/esm/post-accordion.entry.js +6 -4
  260. package/dist/esm/post-avatar-d360c6d2.js +143 -0
  261. package/dist/esm/post-avatar.entry.js +6 -0
  262. package/dist/esm/post-back-to-top-85796c8b.js +94 -0
  263. package/dist/esm/post-back-to-top.entry.js +8 -0
  264. package/dist/esm/post-banner-a3090f67.js +90 -0
  265. package/dist/esm/post-banner.entry.js +12 -0
  266. package/dist/esm/post-breadcrumb-item_2.entry.js +9 -0
  267. package/dist/esm/post-breadcrumbs-15ec5a26.js +118 -0
  268. package/dist/esm/post-breadcrumbs.entry.js +5 -0
  269. package/dist/esm/post-card-control-6142534e.js +267 -0
  270. package/dist/esm/post-card-control.entry.js +6 -5
  271. package/dist/esm/post-closebutton_15.entry.js +14 -0
  272. package/dist/esm/{post-collapsible-trigger-45fe328a.js → post-collapsible-trigger-68306358.js} +62 -76
  273. package/dist/esm/post-collapsible_2.entry.js +11 -7
  274. package/dist/esm/post-components.js +3 -3
  275. package/dist/esm/post-footer-d2a3270e.js +36 -0
  276. package/dist/esm/post-footer.entry.js +4 -0
  277. package/dist/esm/post-linkarea-64998c67.js +28 -0
  278. package/dist/esm/post-linkarea.entry.js +3 -0
  279. package/dist/esm/post-menu-item-95a0a647.js +65 -0
  280. package/dist/esm/post-popover-c5f81087.js +133 -0
  281. package/dist/esm/post-popover.entry.js +4 -3
  282. package/dist/esm/{post-rating-f60024fa.js → post-rating-7bfedafb.js} +4 -4
  283. package/dist/esm/post-rating.entry.js +3 -3
  284. package/dist/esm/post-tab-header-08033da4.js +32 -0
  285. package/dist/esm/post-tab-header.entry.js +6 -4
  286. package/dist/esm/{post-tab-panel-0ddb05a2.js → post-tab-panel-be701793.js} +5 -4
  287. package/dist/esm/post-tab-panel.entry.js +4 -3
  288. package/dist/esm/{post-tabs-ab7853cf.js → post-tabs-c69e2842.js} +14 -16
  289. package/dist/esm/post-tabs.entry.js +5 -4
  290. package/dist/esm/post-tag-ebac7f3e.js +45 -0
  291. package/dist/esm/post-tag.entry.js +3 -3
  292. package/dist/esm/post-togglebutton-706e3af0.js +4478 -0
  293. package/dist/esm/{post-tooltip-c03cd719.js → post-tooltip-9a195d47.js} +10 -6
  294. package/dist/esm/{post-tooltip-trigger-1fefc8ad.js → post-tooltip-trigger-7d6f234b.js} +17 -280
  295. package/dist/esm/post-tooltip-trigger.entry.js +5 -4
  296. package/dist/esm/post-tooltip.entry.js +5 -4
  297. package/dist/esm/slide-cd2850ee.js +25 -0
  298. package/dist/post-components/index.esm.js +1 -1
  299. package/dist/post-components/p-034715ec.js +1 -0
  300. package/dist/post-components/p-0717fe4c.js +1 -0
  301. package/dist/post-components/p-0889c759.js +1 -0
  302. package/dist/post-components/p-0c03547b.js +1 -0
  303. package/dist/post-components/p-0de8d05f.js +1 -0
  304. package/dist/post-components/p-1373a79b.entry.js +1 -0
  305. package/dist/post-components/p-17dc4170.js +8 -0
  306. package/dist/post-components/p-181c73d5.js +1 -0
  307. package/dist/post-components/p-1a21fd8d.js +1 -0
  308. package/dist/post-components/p-1ab3eba4.entry.js +1 -0
  309. package/dist/post-components/p-2d6c0670.js +1 -0
  310. package/dist/post-components/p-2dc0a2d0.js +1 -0
  311. package/dist/post-components/p-35ad2e11.entry.js +1 -0
  312. package/dist/post-components/p-368c473a.js +1 -0
  313. package/dist/post-components/p-38f778a7.entry.js +1 -0
  314. package/dist/post-components/p-39a8df3c.entry.js +1 -0
  315. package/dist/post-components/p-3c7f6003.js +1 -0
  316. package/dist/post-components/p-474a41bc.entry.js +1 -0
  317. package/dist/post-components/p-64e3de38.js +1 -0
  318. package/dist/post-components/p-69bc8eaf.entry.js +1 -0
  319. package/dist/post-components/p-6b31a76a.js +1 -0
  320. package/dist/post-components/p-722ffaae.js +1 -0
  321. package/dist/post-components/p-72310bf0.entry.js +1 -0
  322. package/dist/post-components/p-7709c14a.js +1 -0
  323. package/dist/post-components/p-804b61b7.entry.js +1 -0
  324. package/dist/post-components/p-85fdc2d3.js +1 -0
  325. package/dist/post-components/p-89247caa.js +1 -0
  326. package/dist/post-components/p-89dc67c7.entry.js +1 -0
  327. package/dist/post-components/p-8db32dab.js +8 -0
  328. package/dist/post-components/p-8f7f5200.entry.js +1 -0
  329. package/dist/post-components/p-964f9581.js +1 -0
  330. package/dist/post-components/p-9b052461.js +1 -0
  331. package/dist/post-components/{p-3eab790d.js → p-9e461613.js} +2 -2
  332. package/dist/post-components/p-a52b2d34.js +1 -0
  333. package/dist/post-components/p-ab566526.js +1 -0
  334. package/dist/post-components/p-b648e537.entry.js +1 -0
  335. package/dist/post-components/p-bc33a6d9.js +1 -0
  336. package/dist/post-components/p-bcfdbd0b.entry.js +1 -0
  337. package/dist/post-components/p-beb67979.js +1 -0
  338. package/dist/post-components/p-c41868b1.js +1 -0
  339. package/dist/post-components/p-c65f32b0.js +1 -0
  340. package/dist/post-components/p-c71700a7.js +1 -0
  341. package/dist/post-components/p-cb027003.js +1 -0
  342. package/dist/post-components/p-cc5b1437.js +1 -0
  343. package/dist/post-components/p-ceda889e.entry.js +1 -0
  344. package/dist/post-components/p-d45df336.js +1 -0
  345. package/dist/post-components/p-de4d4274.js +1 -0
  346. package/dist/post-components/p-deb9efcf.entry.js +1 -0
  347. package/dist/post-components/p-e585c6fe.js +1 -0
  348. package/dist/post-components/p-e9f1cc46.entry.js +1 -0
  349. package/dist/post-components/p-ee4e776d.entry.js +1 -0
  350. package/dist/post-components/p-ee7c3bcc.entry.js +1 -0
  351. package/dist/post-components/p-f56482fa.entry.js +1 -0
  352. package/dist/post-components/p-f8c652ce.entry.js +1 -0
  353. package/dist/post-components/post-components.esm.js +1 -1
  354. package/dist/types/animations/collapse.d.ts +2 -2
  355. package/dist/types/animations/fade.d.ts +2 -2
  356. package/dist/types/animations/slide.d.ts +2 -0
  357. package/dist/types/components/post-accordion/post-accordion.d.ts +1 -1
  358. package/dist/types/components/post-accordion-item/post-accordion-item.d.ts +8 -2
  359. package/dist/types/components/post-avatar/post-avatar.d.ts +51 -0
  360. package/dist/types/components/post-back-to-top/post-back-to-top.d.ts +21 -0
  361. package/dist/types/components/post-banner/banner-types.d.ts +2 -0
  362. package/dist/types/components/post-banner/post-banner.d.ts +49 -0
  363. package/dist/types/components/post-breadcrumb-item/post-breadcrumb-item.d.ts +20 -0
  364. package/dist/types/components/post-breadcrumbs/post-breadcrumbs.d.ts +30 -0
  365. package/dist/types/components/post-card-control/post-card-control.d.ts +9 -9
  366. package/dist/types/components/post-closebutton/post-closebutton.d.ts +7 -0
  367. package/dist/types/components/post-collapsible-trigger/post-collapsible-trigger.d.ts +9 -14
  368. package/dist/types/components/post-footer/post-footer.d.ts +23 -0
  369. package/dist/types/components/post-header/post-header.d.ts +52 -0
  370. package/dist/types/components/post-icon/post-icon.d.ts +10 -6
  371. package/dist/types/components/post-language-option/post-language-option.d.ts +49 -0
  372. package/dist/types/components/post-language-switch/post-language-switch.d.ts +39 -0
  373. package/dist/types/components/post-language-switch/switch-variants.d.ts +2 -0
  374. package/dist/types/components/post-linkarea/post-linkarea.d.ts +5 -0
  375. package/dist/types/components/post-list/post-list.d.ts +24 -0
  376. package/dist/types/components/post-list-item/post-list-item.d.ts +8 -0
  377. package/dist/types/components/post-mainnavigation/post-mainnavigation.d.ts +46 -0
  378. package/dist/types/components/post-megadropdown/post-megadropdown.d.ts +59 -0
  379. package/dist/types/components/post-megadropdown-trigger/post-megadropdown-trigger.d.ts +33 -0
  380. package/dist/types/components/post-menu/post-menu.d.ts +49 -0
  381. package/dist/types/components/post-menu-item/post-menu-item.d.ts +3 -0
  382. package/dist/types/components/post-menu-trigger/post-menu-trigger.d.ts +28 -0
  383. package/dist/types/components/post-popover/post-popover.d.ts +6 -4
  384. package/dist/types/components/post-popovercontainer/post-popovercontainer.d.ts +9 -1
  385. package/dist/types/components/post-tab-header/post-tab-header.d.ts +1 -1
  386. package/dist/types/components/post-tabs/post-tabs.d.ts +1 -1
  387. package/dist/types/components/post-tag/post-tag.d.ts +2 -2
  388. package/dist/types/components/post-togglebutton/post-togglebutton.d.ts +15 -0
  389. package/dist/types/components/post-tooltip/post-tooltip.d.ts +1 -0
  390. package/dist/types/components/post-tooltip-trigger/post-tooltip-trigger.d.ts +0 -1
  391. package/dist/types/components.d.ts +603 -50
  392. package/dist/types/home/runner/work/design-system/design-system/packages/components/.stencil/.config/bindings.angular.d.ts +2 -0
  393. package/dist/types/index.d.ts +22 -3
  394. package/dist/types/popover-fn.d.ts +11 -0
  395. package/dist/types/utils/attribute-observer.d.ts +1 -1
  396. package/dist/types/utils/breakpoints.d.ts +12 -0
  397. package/dist/types/utils/component-on-ready.d.ts +1 -1
  398. package/dist/types/utils/environment.d.ts +2 -0
  399. package/dist/types/utils/event-guard.d.ts +4 -0
  400. package/dist/types/utils/get-focusable-children.d.ts +1 -0
  401. package/dist/types/utils/get-root.d.ts +5 -1
  402. package/dist/types/utils/index.d.ts +5 -0
  403. package/dist/types/utils/property-checkers/check-non-empty.d.ts +3 -1
  404. package/dist/types/utils/property-checkers/check-one-of.d.ts +3 -1
  405. package/dist/types/utils/property-checkers/check-pattern.d.ts +3 -1
  406. package/dist/types/utils/property-checkers/check-type.d.ts +3 -1
  407. package/dist/types/utils/property-checkers/check-url.d.ts +3 -1
  408. package/dist/types/utils/property-checkers/index.d.ts +12 -4
  409. package/dist/types/utils/sass-export.d.ts +5 -1
  410. package/loaders/breakpoints.js +56 -0
  411. package/loaders/check-non-empty.js +6 -2
  412. package/loaders/check-one-of.js +8 -3
  413. package/loaders/check-type.js +11 -6
  414. package/loaders/event-guard.js +45 -0
  415. package/loaders/fade.js +6 -2
  416. package/loaders/get-focusable-children.js +35 -0
  417. package/loaders/get-root.js +15 -0
  418. package/loaders/index.browser.js +14 -0
  419. package/loaders/index.d.ts +40 -2
  420. package/loaders/index.js +22 -2
  421. package/loaders/index2.js +25 -12
  422. package/loaders/long-press-event.js +264 -0
  423. package/loaders/package.js +1 -1
  424. package/loaders/post-accordion-item.js +1 -82
  425. package/loaders/post-accordion-item2.js +103 -0
  426. package/loaders/post-accordion.js +8 -9
  427. package/loaders/post-avatar.d.ts +11 -0
  428. package/loaders/post-avatar.js +173 -0
  429. package/loaders/post-back-to-top.d.ts +11 -0
  430. package/loaders/post-back-to-top.js +124 -0
  431. package/loaders/post-banner.d.ts +11 -0
  432. package/loaders/post-banner.js +130 -0
  433. package/loaders/post-breadcrumb-item.d.ts +11 -0
  434. package/loaders/post-breadcrumb-item.js +6 -0
  435. package/loaders/post-breadcrumb-item2.js +82 -0
  436. package/loaders/post-breadcrumbs.d.ts +11 -0
  437. package/loaders/post-breadcrumbs.js +180 -0
  438. package/loaders/post-card-control.js +16 -19
  439. package/loaders/post-closebutton.d.ts +11 -0
  440. package/loaders/post-closebutton.js +42 -0
  441. package/loaders/post-collapsible-trigger2.js +47 -64
  442. package/loaders/post-collapsible2.js +16 -11
  443. package/loaders/post-footer.d.ts +11 -0
  444. package/loaders/post-footer.js +81 -0
  445. package/loaders/post-header.d.ts +11 -0
  446. package/loaders/post-header.js +402 -0
  447. package/loaders/post-icon2.js +59 -55
  448. package/loaders/post-language-option.d.ts +11 -0
  449. package/loaders/post-language-option.js +106 -0
  450. package/loaders/post-language-switch.d.ts +11 -0
  451. package/loaders/post-language-switch.js +148 -0
  452. package/loaders/post-linkarea.d.ts +11 -0
  453. package/loaders/post-linkarea.js +46 -0
  454. package/loaders/post-list-item.d.ts +11 -0
  455. package/loaders/post-list-item.js +39 -0
  456. package/loaders/{post-alert.d.ts → post-list.d.ts} +4 -4
  457. package/loaders/post-list.js +57 -0
  458. package/loaders/post-logo.js +5 -4
  459. package/loaders/post-mainnavigation.d.ts +11 -0
  460. package/loaders/post-mainnavigation.js +186 -0
  461. package/loaders/post-megadropdown-trigger.d.ts +11 -0
  462. package/loaders/post-megadropdown-trigger.js +124 -0
  463. package/loaders/post-megadropdown.d.ts +11 -0
  464. package/loaders/post-megadropdown.js +193 -0
  465. package/loaders/post-menu-item.d.ts +11 -0
  466. package/loaders/post-menu-item.js +6 -0
  467. package/loaders/post-menu-item2.js +27 -0
  468. package/loaders/post-menu-trigger.d.ts +11 -0
  469. package/loaders/post-menu-trigger.js +6 -0
  470. package/loaders/post-menu-trigger2.js +109 -0
  471. package/loaders/post-menu.d.ts +11 -0
  472. package/loaders/post-menu.js +6 -0
  473. package/loaders/post-menu2.js +192 -0
  474. package/loaders/post-popover.js +20 -16
  475. package/loaders/post-popovercontainer2.js +788 -73
  476. package/loaders/post-rating.js +2 -2
  477. package/loaders/post-tab-header.js +8 -6
  478. package/loaders/post-tab-panel.js +4 -3
  479. package/loaders/post-tabs.js +11 -13
  480. package/loaders/post-tag.js +2 -2
  481. package/loaders/post-togglebutton.d.ts +11 -0
  482. package/loaders/post-togglebutton.js +65 -0
  483. package/loaders/post-tooltip-trigger.js +14 -277
  484. package/loaders/post-tooltip.js +7 -3
  485. package/loaders/slide.js +25 -0
  486. package/package.json +45 -33
  487. package/dist/cjs/check-non-empty-eeaa8f77.js +0 -11
  488. package/dist/cjs/check-one-of-f4f5d0c0.js +0 -8
  489. package/dist/cjs/check-type-64af82a9.js +0 -16
  490. package/dist/cjs/fade-35a3633a.js +0 -10
  491. package/dist/cjs/index-824d2b71.js +0 -39
  492. package/dist/cjs/post-accordion-item-5f685bee.js +0 -52
  493. package/dist/cjs/post-alert-88adc668.js +0 -99
  494. package/dist/cjs/post-alert.cjs.entry.js +0 -17
  495. package/dist/cjs/post-card-control-c6e5c427.js +0 -272
  496. package/dist/cjs/post-icon-f735da00.js +0 -139
  497. package/dist/cjs/post-icon.cjs.entry.js +0 -16
  498. package/dist/cjs/post-logo-2cd8ae98.js +0 -39
  499. package/dist/cjs/post-logo.cjs.entry.js +0 -15
  500. package/dist/cjs/post-popover-36c854a4.js +0 -131
  501. package/dist/cjs/post-popovercontainer-cb4793c1.js +0 -2281
  502. package/dist/cjs/post-popovercontainer.cjs.entry.js +0 -11
  503. package/dist/cjs/post-tab-header-b756d9b1.js +0 -32
  504. package/dist/cjs/post-tag-c70fb945.js +0 -47
  505. package/dist/collection/components/post-alert/alert-types.js +0 -1
  506. package/dist/collection/components/post-alert/post-alert.css +0 -35
  507. package/dist/components/post-alert.js +0 -6
  508. package/dist/components/post-alert2.js +0 -136
  509. package/dist/esm/check-non-empty-58bd6b17.js +0 -9
  510. package/dist/esm/check-one-of-6b3ef8eb.js +0 -6
  511. package/dist/esm/check-type-8828dbe4.js +0 -14
  512. package/dist/esm/fade-7fd71785.js +0 -7
  513. package/dist/esm/index-69587a51.js +0 -34
  514. package/dist/esm/package-983f957d.js +0 -3
  515. package/dist/esm/post-accordion-item-4db0aa2a.js +0 -50
  516. package/dist/esm/post-alert-1e9fbdfa.js +0 -97
  517. package/dist/esm/post-alert.entry.js +0 -9
  518. package/dist/esm/post-card-control-ccb189a8.js +0 -270
  519. package/dist/esm/post-icon-3fc4dd7d.js +0 -137
  520. package/dist/esm/post-icon.entry.js +0 -8
  521. package/dist/esm/post-logo-e6cdea13.js +0 -37
  522. package/dist/esm/post-logo.entry.js +0 -7
  523. package/dist/esm/post-popover-afdf4906.js +0 -129
  524. package/dist/esm/post-popovercontainer-b19b7606.js +0 -2279
  525. package/dist/esm/post-popovercontainer.entry.js +0 -3
  526. package/dist/esm/post-tab-header-333e15d5.js +0 -30
  527. package/dist/esm/post-tag-4a7d14b9.js +0 -45
  528. package/dist/post-components/p-0a45da5e.entry.js +0 -1
  529. package/dist/post-components/p-12e82863.entry.js +0 -1
  530. package/dist/post-components/p-1386b77d.js +0 -1
  531. package/dist/post-components/p-1528b798.js +0 -1
  532. package/dist/post-components/p-18dc1299.entry.js +0 -1
  533. package/dist/post-components/p-1a8f6c84.entry.js +0 -1
  534. package/dist/post-components/p-256453ca.js +0 -1
  535. package/dist/post-components/p-2737eaf5.js +0 -1
  536. package/dist/post-components/p-3272ebad.js +0 -1
  537. package/dist/post-components/p-3596035e.js +0 -1
  538. package/dist/post-components/p-3668f4fa.entry.js +0 -1
  539. package/dist/post-components/p-375845d4.js +0 -1
  540. package/dist/post-components/p-381de59d.entry.js +0 -1
  541. package/dist/post-components/p-4a3f67ab.js +0 -1
  542. package/dist/post-components/p-4e68c514.js +0 -1
  543. package/dist/post-components/p-4eb5d9a1.entry.js +0 -1
  544. package/dist/post-components/p-611b3c41.js +0 -1
  545. package/dist/post-components/p-61a7d216.js +0 -1
  546. package/dist/post-components/p-788e64fb.js +0 -1
  547. package/dist/post-components/p-7d5b41d1.js +0 -1
  548. package/dist/post-components/p-82ea24e7.js +0 -1
  549. package/dist/post-components/p-85c4d04f.js +0 -1
  550. package/dist/post-components/p-85c6d001.entry.js +0 -1
  551. package/dist/post-components/p-8e555dda.js +0 -15
  552. package/dist/post-components/p-962a6f36.entry.js +0 -1
  553. package/dist/post-components/p-a76c71bc.js +0 -1
  554. package/dist/post-components/p-a7e8fd41.entry.js +0 -1
  555. package/dist/post-components/p-ac216bd0.entry.js +0 -1
  556. package/dist/post-components/p-b095519d.js +0 -1
  557. package/dist/post-components/p-b17ecbee.entry.js +0 -1
  558. package/dist/post-components/p-bb4227ad.entry.js +0 -1
  559. package/dist/post-components/p-bc294d0b.js +0 -1
  560. package/dist/post-components/p-d0b3c5d3.entry.js +0 -1
  561. package/dist/post-components/p-d4e148d8.entry.js +0 -1
  562. package/dist/post-components/p-d9809281.js +0 -1
  563. package/dist/post-components/p-eb1e7a49.js +0 -1
  564. package/dist/post-components/p-f35291d5.entry.js +0 -1
  565. package/dist/post-components/p-fc3bfe08.js +0 -1
  566. package/dist/types/components/post-alert/alert-types.d.ts +0 -2
  567. package/dist/types/components/post-alert/post-alert.d.ts +0 -54
  568. package/loaders/post-alert.js +0 -139
@@ -0,0 +1,237 @@
1
+ import { Host, h, } from "@stencil/core";
2
+ import { checkEmptyOrType, checkType } from "../../utils/index";
3
+ import { version } from "../../../../package";
4
+ /**
5
+ * @slot default - Slot for placing the content inside the anchor or button.
6
+ */
7
+ export class PostLanguageOption {
8
+ constructor() {
9
+ this.code = undefined;
10
+ this.active = undefined;
11
+ this.variant = undefined;
12
+ this.name = undefined;
13
+ this.url = undefined;
14
+ }
15
+ validateCode() {
16
+ checkType(this, 'code', 'string');
17
+ }
18
+ validateActiveProp() {
19
+ checkEmptyOrType(this, 'active', 'boolean');
20
+ }
21
+ validateName() {
22
+ checkEmptyOrType(this, 'name', 'string');
23
+ }
24
+ validateUrl() {
25
+ checkEmptyOrType(this, 'url', 'string');
26
+ }
27
+ componentDidLoad() {
28
+ this.validateCode();
29
+ this.validateActiveProp();
30
+ this.validateName();
31
+ this.validateUrl();
32
+ if (!this.name && this.isNameRequired()) {
33
+ throw new Error('The "name" property of the post-language-option component is required when the full language name is not displayed.');
34
+ }
35
+ if (this.active) {
36
+ this.postLanguageOptionInitiallyActive.emit(this.code);
37
+ }
38
+ }
39
+ /**
40
+ * Selects the language option programmatically.
41
+ */
42
+ async select() {
43
+ this.active = true;
44
+ this.emitChange();
45
+ }
46
+ emitChange() {
47
+ this.postChange.emit(this.code);
48
+ }
49
+ isNameRequired() {
50
+ return this.host.textContent.toLowerCase() === this.code.toLowerCase();
51
+ }
52
+ render() {
53
+ const lang = this.code.toLowerCase();
54
+ const emitOnKeyDown = (e) => {
55
+ if (e.key === 'Enter' || e.key === ' ') {
56
+ this.emitChange();
57
+ }
58
+ };
59
+ return (h(Host, { key: '3a6b9a8f63c90f431a13c1df529a2e4716ede5d8', "data-version": version }, this.url ? (h("a", { "aria-current": this.active ? 'page' : undefined, "aria-label": this.name, href: this.url, hrefLang: lang, lang: lang, onClick: () => this.emitChange(), onKeyDown: emitOnKeyDown }, h("slot", null))) : (h("button", { "aria-current": this.active ? 'true' : undefined, "aria-label": this.name, lang: lang, onClick: () => this.emitChange(), onKeyDown: emitOnKeyDown }, h("slot", null)))));
60
+ }
61
+ static get is() { return "post-language-option"; }
62
+ static get originalStyleUrls() {
63
+ return {
64
+ "$": ["post-language-option.scss"]
65
+ };
66
+ }
67
+ static get styleUrls() {
68
+ return {
69
+ "$": ["post-language-option.css"]
70
+ };
71
+ }
72
+ static get properties() {
73
+ return {
74
+ "code": {
75
+ "type": "string",
76
+ "mutable": false,
77
+ "complexType": {
78
+ "original": "string",
79
+ "resolved": "string",
80
+ "references": {}
81
+ },
82
+ "required": true,
83
+ "optional": false,
84
+ "docs": {
85
+ "tags": [],
86
+ "text": "The ISO 639 language code, formatted according to [RFC 5646 (also known as BCP 47)](https://datatracker.ietf.org/doc/html/rfc5646). For example, \"de\"."
87
+ },
88
+ "attribute": "code",
89
+ "reflect": false
90
+ },
91
+ "active": {
92
+ "type": "boolean",
93
+ "mutable": true,
94
+ "complexType": {
95
+ "original": "boolean",
96
+ "resolved": "boolean",
97
+ "references": {}
98
+ },
99
+ "required": false,
100
+ "optional": false,
101
+ "docs": {
102
+ "tags": [],
103
+ "text": "If set to `true`, the language option is considered the current language for the page."
104
+ },
105
+ "attribute": "active",
106
+ "reflect": true
107
+ },
108
+ "variant": {
109
+ "type": "string",
110
+ "mutable": false,
111
+ "complexType": {
112
+ "original": "SwitchVariant | null",
113
+ "resolved": "\"list\" | \"menu\"",
114
+ "references": {
115
+ "SwitchVariant": {
116
+ "location": "import",
117
+ "path": "../post-language-switch/switch-variants",
118
+ "id": "src/components/post-language-switch/switch-variants.ts::SwitchVariant"
119
+ }
120
+ }
121
+ },
122
+ "required": false,
123
+ "optional": true,
124
+ "docs": {
125
+ "tags": [],
126
+ "text": "To communicate the variant prop from the parent (post-language-switch) component to the child (post-language-option) component. See parent docs for a description about the property itself."
127
+ },
128
+ "attribute": "variant",
129
+ "reflect": false
130
+ },
131
+ "name": {
132
+ "type": "string",
133
+ "mutable": false,
134
+ "complexType": {
135
+ "original": "string",
136
+ "resolved": "string",
137
+ "references": {}
138
+ },
139
+ "required": false,
140
+ "optional": false,
141
+ "docs": {
142
+ "tags": [],
143
+ "text": "The full name of the language. For example, \"Deutsch\"."
144
+ },
145
+ "attribute": "name",
146
+ "reflect": false
147
+ },
148
+ "url": {
149
+ "type": "string",
150
+ "mutable": false,
151
+ "complexType": {
152
+ "original": "string",
153
+ "resolved": "string",
154
+ "references": {}
155
+ },
156
+ "required": false,
157
+ "optional": false,
158
+ "docs": {
159
+ "tags": [],
160
+ "text": "The URL used for the href attribute of the internal anchor.\nThis field is optional; if not provided, a button will be used internally instead of an anchor."
161
+ },
162
+ "attribute": "url",
163
+ "reflect": false
164
+ }
165
+ };
166
+ }
167
+ static get events() {
168
+ return [{
169
+ "method": "postChange",
170
+ "name": "postChange",
171
+ "bubbles": true,
172
+ "cancelable": true,
173
+ "composed": true,
174
+ "docs": {
175
+ "tags": [],
176
+ "text": "An event emitted when the language option is clicked. The payload is the ISO 639 code of the language."
177
+ },
178
+ "complexType": {
179
+ "original": "string",
180
+ "resolved": "string",
181
+ "references": {}
182
+ }
183
+ }, {
184
+ "method": "postLanguageOptionInitiallyActive",
185
+ "name": "postLanguageOptionInitiallyActive",
186
+ "bubbles": true,
187
+ "cancelable": true,
188
+ "composed": true,
189
+ "docs": {
190
+ "tags": [],
191
+ "text": "An event emitted when the language option is initially active. The payload is the ISO 639 code of the language."
192
+ },
193
+ "complexType": {
194
+ "original": "string",
195
+ "resolved": "string",
196
+ "references": {}
197
+ }
198
+ }];
199
+ }
200
+ static get methods() {
201
+ return {
202
+ "select": {
203
+ "complexType": {
204
+ "signature": "() => Promise<void>",
205
+ "parameters": [],
206
+ "references": {
207
+ "Promise": {
208
+ "location": "global",
209
+ "id": "global::Promise"
210
+ }
211
+ },
212
+ "return": "Promise<void>"
213
+ },
214
+ "docs": {
215
+ "text": "Selects the language option programmatically.",
216
+ "tags": []
217
+ }
218
+ }
219
+ };
220
+ }
221
+ static get elementRef() { return "host"; }
222
+ static get watchers() {
223
+ return [{
224
+ "propName": "code",
225
+ "methodName": "validateCode"
226
+ }, {
227
+ "propName": "active",
228
+ "methodName": "validateActiveProp"
229
+ }, {
230
+ "propName": "name",
231
+ "methodName": "validateName"
232
+ }, {
233
+ "propName": "url",
234
+ "methodName": "validateUrl"
235
+ }];
236
+ }
237
+ }
@@ -0,0 +1 @@
1
+ :host{display:flex !important;flex-wrap:wrap;gap:.5rem}.post-language-switch-dropdown-container{display:flex;flex-direction:column}.post-language-switch-trigger{cursor:pointer;text-transform:uppercase;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;text-decoration:none;display:inline-flex;align-items:center;gap:6px;border-radius:24px;font-size:16px;padding:3px 10px}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.post-language-switch-trigger{background-color:ButtonFace !important}.post-language-switch-trigger:hover{background-color:Highlight !important}}.post-language-switch-trigger{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}.post-language-switch-trigger:is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-style:var(--post-core-border-style-solid) !important}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.post-language-switch-trigger:is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-color:Highlight !important}}@supports not selector(:has(:focus-visible)){.post-language-switch-trigger:is(:focus-visible,:focus-within,.pretend-focus){outline-style:var(--post-core-border-style-solid) !important}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.post-language-switch-trigger:is(:focus-visible,:focus-within,.pretend-focus){outline-color:Highlight !important}}}.post-language-switch-trigger:not(:disabled):hover,.post-language-switch-trigger.pretend-hover{border-color:var(--post-scheme-color-interactive-button-tertiary-hover-stroke);background-color:var(--post-scheme-color-interactive-button-tertiary-hover-bg);color:var(--post-scheme-color-interactive-button-tertiary-hover-fg)}.post-language-switch-trigger post-icon{height:24px;width:24px}.post-language-switch-trigger[aria-expanded=true]{background-color:#050400;color:#fff}.post-language-switch-trigger[aria-expanded=true] post-icon{transform:rotate(180deg)}.post-language-switch-trigger[aria-expanded=true]:hover{background-color:#504f4b;color:#fff}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.post-language-switch-trigger{border:1px solid ButtonBorder}.post-language-switch-trigger[aria-expanded=true] post-icon,.post-language-switch-trigger:hover post-icon{color:HighlightText}}
@@ -0,0 +1,186 @@
1
+ import { Host, h } from "@stencil/core";
2
+ import { checkEmptyOrOneOf, checkType, eventGuard } from "../../utils/index";
3
+ import { version } from "../../../../package";
4
+ import { SWITCH_VARIANTS } from "./switch-variants";
5
+ import { nanoid } from "nanoid";
6
+ export class PostLanguageSwitch {
7
+ constructor() {
8
+ this.menuId = `p${nanoid(11)}`;
9
+ this.caption = undefined;
10
+ this.description = undefined;
11
+ this.variant = 'list';
12
+ this.activeLang = undefined;
13
+ }
14
+ get languageOptions() {
15
+ return Array.from(this.host.querySelectorAll('post-language-option'));
16
+ }
17
+ validateCaption() {
18
+ checkType(this, 'caption', 'string');
19
+ }
20
+ validateDescription() {
21
+ checkType(this, 'description', 'string');
22
+ }
23
+ validateVariant() {
24
+ checkEmptyOrOneOf(this, 'variant', SWITCH_VARIANTS);
25
+ this.updateChildrenVariant();
26
+ }
27
+ componentDidLoad() {
28
+ this.validateCaption();
29
+ this.validateDescription();
30
+ this.validateVariant();
31
+ // Initially set variants and active language
32
+ // Handles cases where the language-switch is rendered after the language-options have been rendered
33
+ this.updateChildrenVariant();
34
+ }
35
+ /**
36
+ * Listen for the postChange event and guard it to run only for events originating from a <post-language-option> element.
37
+ */
38
+ handlePostChange(event) {
39
+ eventGuard(this.host, event, { targetLocalName: 'post-language-option', delegatorSelector: 'post-language-switch' }, () => {
40
+ this.activeLang = event.detail;
41
+ // Update the active state in the children post-language-option components
42
+ this.languageOptions.forEach(lang => {
43
+ if (lang.code && lang.code === this.activeLang) {
44
+ lang.setAttribute('active', '');
45
+ }
46
+ else {
47
+ lang.removeAttribute('active');
48
+ }
49
+ });
50
+ // Hides the dropdown when an option has been clicked
51
+ if (this.variant === 'menu') {
52
+ const menu = this.host.shadowRoot.querySelector('post-menu');
53
+ menu.hide();
54
+ }
55
+ });
56
+ }
57
+ /**
58
+ * Handles cases where the language switch is being rendered before options are available
59
+ * @param event Initially emitted by <post-langauge-option>
60
+ */
61
+ handleInitiallyActive(event) {
62
+ this.activeLang = event.detail;
63
+ }
64
+ // Update post-language-option variant to have the correct style
65
+ updateChildrenVariant() {
66
+ this.languageOptions.forEach(el => {
67
+ el.setAttribute('variant', this.variant);
68
+ });
69
+ }
70
+ renderList() {
71
+ return (h(Host, { "data-version": version, role: "list", "aria-label": this.caption }, h("div", { class: "post-language-switch-list", role: "group", "aria-label": this.description }, h("slot", null))));
72
+ }
73
+ renderDropdown() {
74
+ return (h(Host, { "data-version": version }, h("post-menu-trigger", { for: this.menuId }, h("button", { class: "post-language-switch-trigger", "aria-label": this.description }, this.activeLang, h("post-icon", { "aria-hidden": "true", name: "chevrondown" }))), h("post-menu", { id: this.menuId, class: "post-language-switch-dropdown-container", "aria-label": this.caption }, h("slot", null))));
75
+ }
76
+ render() {
77
+ return this.variant === 'list' ? this.renderList() : this.renderDropdown();
78
+ }
79
+ static get is() { return "post-language-switch"; }
80
+ static get encapsulation() { return "shadow"; }
81
+ static get originalStyleUrls() {
82
+ return {
83
+ "$": ["post-language-switch.scss"]
84
+ };
85
+ }
86
+ static get styleUrls() {
87
+ return {
88
+ "$": ["post-language-switch.css"]
89
+ };
90
+ }
91
+ static get properties() {
92
+ return {
93
+ "caption": {
94
+ "type": "string",
95
+ "mutable": false,
96
+ "complexType": {
97
+ "original": "string",
98
+ "resolved": "string",
99
+ "references": {}
100
+ },
101
+ "required": false,
102
+ "optional": false,
103
+ "docs": {
104
+ "tags": [],
105
+ "text": "A title for the list of language options"
106
+ },
107
+ "attribute": "caption",
108
+ "reflect": false
109
+ },
110
+ "description": {
111
+ "type": "string",
112
+ "mutable": false,
113
+ "complexType": {
114
+ "original": "string",
115
+ "resolved": "string",
116
+ "references": {}
117
+ },
118
+ "required": false,
119
+ "optional": false,
120
+ "docs": {
121
+ "tags": [],
122
+ "text": "A descriptive text for the list of language options"
123
+ },
124
+ "attribute": "description",
125
+ "reflect": false
126
+ },
127
+ "variant": {
128
+ "type": "string",
129
+ "mutable": false,
130
+ "complexType": {
131
+ "original": "SwitchVariant",
132
+ "resolved": "\"list\" | \"menu\"",
133
+ "references": {
134
+ "SwitchVariant": {
135
+ "location": "import",
136
+ "path": "./switch-variants",
137
+ "id": "src/components/post-language-switch/switch-variants.ts::SwitchVariant"
138
+ }
139
+ }
140
+ },
141
+ "required": false,
142
+ "optional": false,
143
+ "docs": {
144
+ "tags": [],
145
+ "text": "Whether the component is rendered as a list or a menu"
146
+ },
147
+ "attribute": "variant",
148
+ "reflect": false,
149
+ "defaultValue": "'list'"
150
+ }
151
+ };
152
+ }
153
+ static get states() {
154
+ return {
155
+ "activeLang": {}
156
+ };
157
+ }
158
+ static get elementRef() { return "host"; }
159
+ static get watchers() {
160
+ return [{
161
+ "propName": "caption",
162
+ "methodName": "validateCaption"
163
+ }, {
164
+ "propName": "description",
165
+ "methodName": "validateDescription"
166
+ }, {
167
+ "propName": "variant",
168
+ "methodName": "validateVariant"
169
+ }];
170
+ }
171
+ static get listeners() {
172
+ return [{
173
+ "name": "postChange",
174
+ "method": "handlePostChange",
175
+ "target": undefined,
176
+ "capture": false,
177
+ "passive": false
178
+ }, {
179
+ "name": "postLanguageOptionInitiallyActive",
180
+ "method": "handleInitiallyActive",
181
+ "target": undefined,
182
+ "capture": false,
183
+ "passive": false
184
+ }];
185
+ }
186
+ }
@@ -0,0 +1 @@
1
+ export const SWITCH_VARIANTS = ['list', 'menu'];
@@ -0,0 +1 @@
1
+ :host{display:contents;cursor:pointer}
@@ -0,0 +1,30 @@
1
+ import { h, Host } from "@stencil/core";
2
+ import { version } from "../../../../package";
3
+ const INTERACTIVE_ELEMENTS = ['a'].join(',');
4
+ const INTERACTIVE_ELEMENTS_SELECTOR = `:where(${INTERACTIVE_ELEMENTS})`;
5
+ export class PostLinkarea {
6
+ dispatchClick({ ctrlKey, shiftKey, altKey, metaKey }) {
7
+ const interactiveElement = this.host.querySelector(`[data-link]${INTERACTIVE_ELEMENTS_SELECTOR}`) ??
8
+ this.host.querySelector(INTERACTIVE_ELEMENTS_SELECTOR);
9
+ if (!interactiveElement) {
10
+ throw new Error(`The \`post-linkarea\` component must contain an interactive element. Possible elements are: ${INTERACTIVE_ELEMENTS}.`);
11
+ }
12
+ interactiveElement.dispatchEvent(new MouseEvent('click', { ctrlKey, shiftKey, altKey, metaKey }));
13
+ }
14
+ render() {
15
+ return (h(Host, { key: '56e4b032fa8976cc120bff5f1c36d55167e54e98', "data-version": version, onClick: (e) => this.dispatchClick(e), tabindex: "0" }, h("slot", { key: '25568fab2a47d765757c00fbee4f2999c1da16d1' })));
16
+ }
17
+ static get is() { return "post-linkarea"; }
18
+ static get encapsulation() { return "shadow"; }
19
+ static get originalStyleUrls() {
20
+ return {
21
+ "$": ["post-linkarea.scss"]
22
+ };
23
+ }
24
+ static get styleUrls() {
25
+ return {
26
+ "$": ["post-linkarea.css"]
27
+ };
28
+ }
29
+ static get elementRef() { return "host"; }
30
+ }
@@ -0,0 +1 @@
1
+ @keyframes popIn{from{transform:scale(0.9);opacity:0;transition-property:transform,opacity,overlay,display;transition-behavior:allow-discrete;transition-duration:var(--post-transition-duration, 0.35s);transition-timing-function:linear(0, 0.007, 0.029 2.2%, 0.118 4.7%, 0.625 14.4%, 0.826 19%, 0.902, 0.962, 1.008 26.1%, 1.041 28.7%, 1.064 32.1%, 1.07 36%, 1.061 40.5%, 1.015 53.4%, 0.999 61.6%, 0.995 71.2%, 1)}to{opacity:1;transform:scale(1)}}post-list{display:flex;flex-direction:column;gap:var(--post-list-title-gap, 0)}post-list>[role=list]{display:flex;flex-direction:column;gap:var(--post-list-item-gap, 0)}post-list:where([horizontal]:not([horizontal=false])){flex-direction:row;align-items:center}post-list:where([horizontal]:not([horizontal=false]))>[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}
@@ -0,0 +1,88 @@
1
+ import { Host, h } from "@stencil/core";
2
+ import { version } from "../../../../package";
3
+ import { nanoid } from "nanoid";
4
+ /**
5
+ * @slot default - Slot for placing the list title.
6
+ * @slot post-list-item - Slot for placing post-list-item components.
7
+ */
8
+ export class PostList {
9
+ constructor() {
10
+ this.titleId = undefined;
11
+ this.titleHidden = false;
12
+ this.horizontal = false;
13
+ }
14
+ componentWillLoad() {
15
+ /**
16
+ * Get the id set on the host element or use a random id by default
17
+ */
18
+ this.titleId = `title-${this.host.id || nanoid(6)}`;
19
+ }
20
+ componentDidLoad() {
21
+ this.checkTitle();
22
+ }
23
+ checkTitle() {
24
+ if (!this.titleEl.textContent.trim()) {
25
+ console.error('Please provide a title to the list component. Title is mandatory for accessibility purposes.');
26
+ }
27
+ }
28
+ render() {
29
+ return (h(Host, { key: 'b003aa61735359b6a1d95aad8d29c609d5bb3c8b', "data-version": version }, h("div", { key: '2f69a2c72dd357767735e10d16f1b7586da6d5a3', ref: el => (this.titleEl = el), id: this.titleId, class: `list-title${this.titleHidden ? ' visually-hidden' : ''}` }, h("slot", { key: '3982783d438519673a676323339a013d3edb84db' })), h("div", { key: 'b8a91c4430774f019cc46aa19393e2a1566204a5', role: "list", "aria-labelledby": this.titleId }, h("slot", { key: '378a51785c4d52df8ae422657a16e8295b405149', name: "post-list-item" }))));
30
+ }
31
+ static get is() { return "post-list"; }
32
+ static get originalStyleUrls() {
33
+ return {
34
+ "$": ["post-list.scss"]
35
+ };
36
+ }
37
+ static get styleUrls() {
38
+ return {
39
+ "$": ["post-list.css"]
40
+ };
41
+ }
42
+ static get properties() {
43
+ return {
44
+ "titleHidden": {
45
+ "type": "boolean",
46
+ "mutable": false,
47
+ "complexType": {
48
+ "original": "boolean",
49
+ "resolved": "boolean",
50
+ "references": {}
51
+ },
52
+ "required": false,
53
+ "optional": false,
54
+ "docs": {
55
+ "tags": [],
56
+ "text": "If `true`, the list title will be hidden. Otherwise, it will be displayed.`"
57
+ },
58
+ "attribute": "title-hidden",
59
+ "reflect": false,
60
+ "defaultValue": "false"
61
+ },
62
+ "horizontal": {
63
+ "type": "boolean",
64
+ "mutable": false,
65
+ "complexType": {
66
+ "original": "boolean",
67
+ "resolved": "boolean",
68
+ "references": {}
69
+ },
70
+ "required": false,
71
+ "optional": false,
72
+ "docs": {
73
+ "tags": [],
74
+ "text": "The list can become horizontal by setting `horizontal=\"true\"` or just `horizontal`"
75
+ },
76
+ "attribute": "horizontal",
77
+ "reflect": true,
78
+ "defaultValue": "false"
79
+ }
80
+ };
81
+ }
82
+ static get states() {
83
+ return {
84
+ "titleId": {}
85
+ };
86
+ }
87
+ static get elementRef() { return "host"; }
88
+ }
@@ -0,0 +1 @@
1
+ :host{display:flex}
@@ -0,0 +1,26 @@
1
+ import { Host, h } from "@stencil/core";
2
+ import { version } from "../../../../package";
3
+ /**
4
+ * @slot default- Slot for placing the content of the list item.
5
+ */
6
+ export class PostListItem {
7
+ connectedCallback() {
8
+ this.host.setAttribute('slot', 'post-list-item');
9
+ }
10
+ render() {
11
+ return (h(Host, { key: 'c826293ea2a7446bea2f5b223934b444655198a0', role: "listitem", slot: "post-list-item", version: version }, h("slot", { key: 'b997f79da2fbc87fbc6a388c118a03c008ad2c23' })));
12
+ }
13
+ static get is() { return "post-list-item"; }
14
+ static get encapsulation() { return "shadow"; }
15
+ static get originalStyleUrls() {
16
+ return {
17
+ "$": ["post-list-item.scss"]
18
+ };
19
+ }
20
+ static get styleUrls() {
21
+ return {
22
+ "$": ["post-list-item.css"]
23
+ };
24
+ }
25
+ static get elementRef() { return "host"; }
26
+ }
@@ -1 +1 @@
1
- :host,.logo{display:inline-block}:host,:host .logo>svg,.logo,.logo .logo>svg{height:100%}.description{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);border:0}
1
+ :host,.logo{display:inline-block}:host,:host .logo>svg,.logo,.logo .logo>svg{height:100%}.description{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);border:0}.logo-link{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}.logo-link:is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-style:var(--post-core-border-style-solid) !important}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.logo-link:is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-color:Highlight !important}}@supports not selector(:has(:focus-visible)){.logo-link:is(:focus-visible,:focus-within,.pretend-focus){outline-style:var(--post-core-border-style-solid) !important}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.logo-link:is(:focus-visible,:focus-within,.pretend-focus){outline-color:Highlight !important}}}.logo-link :focus,:focus-visible{border-radius:2px}
@@ -9,7 +9,7 @@ export class PostLogo {
9
9
  this.url = undefined;
10
10
  }
11
11
  validateUrl() {
12
- checkEmptyOrUrl(this.url, 'The "url" property of the post-logo is invalid');
12
+ checkEmptyOrUrl(this, 'url');
13
13
  }
14
14
  componentDidLoad() {
15
15
  this.validateUrl();
@@ -23,7 +23,7 @@ export class PostLogo {
23
23
  render() {
24
24
  const logoLink = this.url && (typeof this.url === 'string' ? this.url : this.url.href);
25
25
  const LogoTag = logoLink ? 'a' : 'span';
26
- return (h(Host, { key: '5e12f01c5df290fbfc98ad955c1660e0a588fab0', "data-version": version }, h(LogoTag, Object.assign({ key: 'f52322a18279954eff4162927329e4ee17c0175a', class: "logo" }, (logoLink ? { href: logoLink } : {})), h("span", { key: '61a31b1df5cc8cbb67efb4de9ed3e2547575e067', class: "description" }, h("slot", { key: '27b06f1fd8bf9422e8acbe4f258102816ee05b70', onSlotchange: () => this.checkDescription() })), h("svg", { key: '5688e2665af9bfa3232966d9a88244279d37e2f4', xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 72 72", "aria-hidden": "true" }, h("g", { key: '138b2d8929c5fa434ecba7f1d7d6cc0cb597aac2', id: "Logo" }, h("rect", { key: '603d6f10b5650e69c19c43659d5a34853153c3ee', fill: "#ffcc00", x: "0", y: "0", width: "72", height: "72" }), h("polygon", { key: '81bdbf1bf6656ce1280a295639e453f457decb18', 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: '8c23a4bc20006cb1d8965d20d8565062550eb5b3', 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" }))))));
26
+ return (h(Host, { key: '7dee19302c0c560b29f09b1675135f10d41fc44a', "data-version": version }, h(LogoTag, { key: '1d851ca305d1bfc24666b416ad5f210b96d39811', class: `logo ${logoLink ? 'logo-link' : ''}`, ...(logoLink ? { href: logoLink } : {}) }, h("span", { key: 'cd75bd4040bc2f0d62e5cec2afc9529fa7c43c49', class: "description" }, h("slot", { key: 'caf63c4f823873181fa52cfb0cf38217b6a45823', onSlotchange: () => this.checkDescription() })), h("svg", { key: 'd41c14973b829eb35764c9e562fe449e65f410b4', xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 72 72", "aria-hidden": "true" }, h("g", { key: '90c52e528bf4fc8e075e6517c18a59686ffd39f6', id: "Logo" }, h("rect", { key: '50633d1110596123232f07272406ebd0a32ffce8', fill: "#ffcc00", x: "0", y: "0", width: "72", height: "72" }), h("polygon", { key: '7a617412c094669a66914edf769fba9ee9448b83', 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: '74213b21fad18ba6a1dbb07e0b0b7dcf4a89b855', 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" }))))));
27
27
  }
28
28
  static get is() { return "post-logo"; }
29
29
  static get encapsulation() { return "shadow"; }
@@ -0,0 +1 @@
1
+ post-mainnavigation post-list-item>a{text-decoration:none;border-radius:0}post-mainnavigation post-list-item post-megadropdown-trigger button{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;text-align:start}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){post-mainnavigation post-list-item post-megadropdown-trigger button{background-color:ButtonFace !important}post-mainnavigation post-list-item post-megadropdown-trigger button:hover{background-color:Highlight !important}}post-mainnavigation post-list-item>a,post-mainnavigation post-list-item post-megadropdown-trigger button{flex:0 0 fit-content;white-space:nowrap;display:flex;align-items:center;justify-content:space-between}post-mainnavigation post-list-item>a:hover,post-mainnavigation post-list-item post-megadropdown-trigger button:hover{color:var(--post-scheme-color-interactive-primary-hover-fg1)}post-mainnavigation post-list-item>a:focus-visible,post-mainnavigation post-list-item post-megadropdown-trigger button:focus-visible{border-radius:4px;outline-offset:-2px !important}@media screen and (max-width: 1023.98px){post-mainnavigation .back-button{font-size:16px}}@media screen and (max-width: 599.98px){post-mainnavigation .back-button{font-size:14px}}post-mainnavigation>button::after,post-mainnavigation post-megadropdown-trigger button::after{content:"";mask-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m23.6 13.2-7.5 7.6-7.6-7.6.9-.9 6.6 6.6 6.6-6.6z'/%3E%3C/svg%3E");background-color:currentColor;color:currentColor;forced-color-adjust:preserve-parent-color;height:24px;width:24px}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){post-mainnavigation>button,post-mainnavigation post-megadropdown-trigger button{border:1px solid ButtonBorder !important}post-mainnavigation>button:hover::after,post-mainnavigation>button[aria-expanded=true]::after,post-mainnavigation post-megadropdown-trigger button:hover::after,post-mainnavigation post-megadropdown-trigger button[aria-expanded=true]::after{color:HighlightText}}@media screen and (min-width: 1024px){post-mainnavigation{display:block;position:relative;height:var(--post-main-navigation-height);background:#fff;user-select:none}post-mainnavigation nav{flex:1 1 auto;overflow:hidden;scroll-behavior:smooth}post-mainnavigation .scroll-control{cursor:pointer;position:absolute;inset-block:0;z-index:5;padding:16px;background:#fff;box-shadow:var(--post-device-elevation-500);line-height:1}post-mainnavigation .scroll-control.scroll-left{inset-inline-start:0}post-mainnavigation .scroll-control.scroll-right{inset-inline-end:0}post-mainnavigation .scroll-control.d-none{display:none}post-mainnavigation .scroll-control post-icon{font-size:1rem}post-mainnavigation post-list>[role=list]{flex-direction:row;max-width:100vw}post-mainnavigation post-list-item>a,post-mainnavigation post-list-item>button,post-mainnavigation post-list-item post-megadropdown-trigger button{position:sticky;padding-inline:12px;height:var(--post-main-navigation-height);gap:4px;font-size:16px;z-index:4}post-mainnavigation post-list-item>a .nav-el-active,post-mainnavigation post-list-item>button .nav-el-active,post-mainnavigation post-list-item post-megadropdown-trigger button .nav-el-active{font-weight:700;text-align:center;opacity:0}post-mainnavigation post-list-item>a .nav-el-inactive,post-mainnavigation post-list-item>button .nav-el-inactive,post-mainnavigation post-list-item post-megadropdown-trigger button .nav-el-inactive{position:absolute;opacity:1;text-align:center;width:100%;inset-inline-start:0}post-mainnavigation post-list-item>a.selected,post-mainnavigation post-list-item>a[aria-expanded=true],post-mainnavigation post-list-item>button.selected,post-mainnavigation post-list-item>button[aria-expanded=true],post-mainnavigation post-list-item post-megadropdown-trigger button.selected,post-mainnavigation post-list-item post-megadropdown-trigger button[aria-expanded=true]{background-color:#050400;color:#fff;font-weight:700}post-mainnavigation post-list-item>a.selected .nav-el-active,post-mainnavigation post-list-item>a[aria-expanded=true] .nav-el-active,post-mainnavigation post-list-item>button.selected .nav-el-active,post-mainnavigation post-list-item>button[aria-expanded=true] .nav-el-active,post-mainnavigation post-list-item post-megadropdown-trigger button.selected .nav-el-active,post-mainnavigation post-list-item post-megadropdown-trigger button[aria-expanded=true] .nav-el-active{opacity:1}post-mainnavigation post-list-item>a.selected .nav-el-inactive,post-mainnavigation post-list-item>a[aria-expanded=true] .nav-el-inactive,post-mainnavigation post-list-item>button.selected .nav-el-inactive,post-mainnavigation post-list-item>button[aria-expanded=true] .nav-el-inactive,post-mainnavigation post-list-item post-megadropdown-trigger button.selected .nav-el-inactive,post-mainnavigation post-list-item post-megadropdown-trigger button[aria-expanded=true] .nav-el-inactive{opacity:0}post-mainnavigation post-list-item>a:hover,post-mainnavigation post-list-item>button:hover,post-mainnavigation post-list-item post-megadropdown-trigger button:hover{background-color:#504f4b;color:#fff}}@media screen and (min-width: 1024px)and (max-width: 599.98px){post-mainnavigation post-list-item>a,post-mainnavigation post-list-item>button,post-mainnavigation post-list-item post-megadropdown-trigger button{font-size:14px}}@media screen and (min-width: 1024px){post-mainnavigation post-list-item>button,post-mainnavigation post-list-item post-megadropdown-trigger button{padding-inline-end:12px;transition:border-block-end-color 250ms cubic-bezier(0.4, 0, 0.2, 1)}post-mainnavigation post-list-item>button .nav-el-inactive,post-mainnavigation post-list-item post-megadropdown-trigger button .nav-el-inactive{width:calc(100% - 28px)}post-mainnavigation post-list-item>button::after,post-mainnavigation post-list-item post-megadropdown-trigger button::after{transition:transform 250ms cubic-bezier(0.4, 0, 0.2, 1)}post-mainnavigation post-list-item>button.selected::after,post-mainnavigation post-list-item>button[aria-expanded=true]::after,post-mainnavigation post-list-item post-megadropdown-trigger button.selected::after,post-mainnavigation post-list-item post-megadropdown-trigger button[aria-expanded=true]::after{transform:rotate(180deg)}}@media screen and (min-width: 1024px){post-mainnavigation post-megadropdown button:not(.btn-icon-close),post-mainnavigation post-megadropdown a{width:100%;min-width:100%;height:48px;padding-inline:8px 12px;gap:16px;font-weight:400;position:relative}post-mainnavigation post-megadropdown button:not(.btn-icon-close)::before,post-mainnavigation post-megadropdown a::before{content:"";background-color:#050400;bottom:0;width:100%;height:1px;position:absolute;left:0}post-mainnavigation post-megadropdown button:not(.btn-icon-close).selected,post-mainnavigation post-megadropdown button:not(.btn-icon-close)[aria-expanded=true],post-mainnavigation post-megadropdown a.selected,post-mainnavigation post-megadropdown a[aria-expanded=true]{background-color:#050400;color:#fff}post-mainnavigation post-megadropdown button:not(.btn-icon-close):hover,post-mainnavigation post-megadropdown a:hover{background-color:#504f4b;color:#fff}post-mainnavigation post-megadropdown button:not(.btn-icon-close):hover::before,post-mainnavigation post-megadropdown a:hover::before{background-color:#504f4b}}@media screen and (min-width: 1024px){post-mainnavigation [slot=back-button]{display:none}}@media screen and (max-width: 1023.98px){post-mainnavigation nav{transform:none !important}post-mainnavigation .scroll-control{display:none}post-mainnavigation post-list-item>a,post-mainnavigation post-list-item>button,post-mainnavigation post-list-item post-megadropdown-trigger button{width:100%;min-width:100%;height:48px;padding-inline:8px 12px;gap:16px;font-weight:400;position:relative}post-mainnavigation post-list-item>a::before,post-mainnavigation post-list-item>button::before,post-mainnavigation post-list-item post-megadropdown-trigger button::before{content:"";background-color:#050400;bottom:0;width:100%;height:1px;position:absolute;left:0}post-mainnavigation post-list-item>a.selected,post-mainnavigation post-list-item>a[aria-expanded=true],post-mainnavigation post-list-item>button.selected,post-mainnavigation post-list-item>button[aria-expanded=true],post-mainnavigation post-list-item post-megadropdown-trigger button.selected,post-mainnavigation post-list-item post-megadropdown-trigger button[aria-expanded=true]{background-color:#050400;color:#fff}post-mainnavigation post-list-item>a:hover,post-mainnavigation post-list-item>button:hover,post-mainnavigation post-list-item post-megadropdown-trigger button:hover{background-color:#504f4b;color:#fff}post-mainnavigation post-list-item>a:hover::before,post-mainnavigation post-list-item>button:hover::before,post-mainnavigation post-list-item post-megadropdown-trigger button:hover::before{background-color:#504f4b}post-mainnavigation post-list-item>a .nav-el-inactive,post-mainnavigation post-list-item>button .nav-el-inactive,post-mainnavigation post-list-item post-megadropdown-trigger button .nav-el-inactive{display:none}post-mainnavigation>button::after,post-mainnavigation post-megadropdown-trigger button::after{transform:rotate(-90deg)}}post-mainnavigation .back-button .btn{padding-inline:0}