@swisspost/design-system-components 9.0.0-next.23 → 9.0.0-next.25

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 (180) hide show
  1. package/dist/cjs/{index-5acef487.js → index-d6bf2c66.js} +1 -5
  2. package/dist/cjs/index.cjs.js +22 -22
  3. package/dist/cjs/loader.cjs.js +2 -2
  4. package/dist/cjs/{package-fdebc7ce.js → package-c7d204b7.js} +1 -1
  5. package/dist/cjs/{post-accordion-d6ddb379.js → post-accordion-17294430.js} +2 -2
  6. package/dist/cjs/{post-accordion-item-61aed72f.js → post-accordion-item-da4339cd.js} +2 -2
  7. package/dist/cjs/post-accordion-item.cjs.entry.js +3 -3
  8. package/dist/cjs/post-accordion.cjs.entry.js +3 -3
  9. package/dist/cjs/{post-avatar-b5d6aaa9.js → post-avatar-4406be64.js} +2 -2
  10. package/dist/cjs/post-avatar.cjs.entry.js +3 -3
  11. package/dist/cjs/{post-back-to-top-80cbf486.js → post-back-to-top-7ce45d24.js} +5 -5
  12. package/dist/cjs/post-back-to-top.cjs.entry.js +4 -4
  13. package/dist/cjs/{post-banner-72f433b1.js → post-banner-d7e1b7d5.js} +2 -2
  14. package/dist/cjs/post-banner.cjs.entry.js +3 -3
  15. package/dist/cjs/{post-breadcrumb-63107527.js → post-breadcrumb-6a5984b4.js} +2 -2
  16. package/dist/cjs/post-breadcrumb-item_2.cjs.entry.js +3 -3
  17. package/dist/cjs/post-breadcrumb.cjs.entry.js +3 -3
  18. package/dist/cjs/{post-card-control-dfb221d5.js → post-card-control-8071448c.js} +2 -2
  19. package/dist/cjs/post-card-control.cjs.entry.js +3 -3
  20. package/dist/cjs/post-closebutton_15.cjs.entry.js +4 -4
  21. package/dist/cjs/{post-collapsible-trigger-e24eae7e.js → post-collapsible-trigger-b0d3df22.js} +2 -2
  22. package/dist/cjs/post-collapsible_2.cjs.entry.js +3 -3
  23. package/dist/cjs/post-components.cjs.js +2 -2
  24. package/dist/cjs/{post-footer-cfa3cc4c.js → post-footer-f38ef472.js} +2 -2
  25. package/dist/cjs/post-footer.cjs.entry.js +3 -3
  26. package/dist/cjs/{post-linkarea-9e808259.js → post-linkarea-3a0f8a49.js} +2 -2
  27. package/dist/cjs/post-linkarea.cjs.entry.js +3 -3
  28. package/dist/cjs/{post-menu-item-0e147e2c.js → post-menu-item-107b6d80.js} +2 -2
  29. package/dist/cjs/{post-popover-bddabf57.js → post-popover-7f47ee07.js} +2 -2
  30. package/dist/cjs/post-popover.cjs.entry.js +3 -3
  31. package/dist/cjs/{post-rating-f4c48349.js → post-rating-8981e238.js} +2 -2
  32. package/dist/cjs/post-rating.cjs.entry.js +3 -3
  33. package/dist/cjs/{post-tab-header-246cd064.js → post-tab-header-f89119cb.js} +2 -2
  34. package/dist/cjs/post-tab-header.cjs.entry.js +3 -3
  35. package/dist/cjs/{post-tab-panel-0e494e5c.js → post-tab-panel-665c1400.js} +2 -2
  36. package/dist/cjs/post-tab-panel.cjs.entry.js +3 -3
  37. package/dist/cjs/{post-tabs-3ead6ac7.js → post-tabs-579f5e97.js} +2 -2
  38. package/dist/cjs/post-tabs.cjs.entry.js +3 -3
  39. package/dist/cjs/{post-tag-f62abd13.js → post-tag-b13a44ae.js} +2 -2
  40. package/dist/cjs/post-tag.cjs.entry.js +3 -3
  41. package/dist/cjs/{post-togglebutton-63708f9f.js → post-togglebutton-241c1868.js} +136 -94
  42. package/dist/cjs/{post-tooltip-2f80afc8.js → post-tooltip-bedfc58a.js} +2 -2
  43. package/dist/cjs/post-tooltip.cjs.entry.js +3 -3
  44. package/dist/cjs/{slide-8ae17ee4.js → slide-cd1f09b3.js} +6 -6
  45. package/dist/collection/animations/slide.js +6 -6
  46. package/dist/collection/components/post-back-to-top/post-back-to-top.js +2 -2
  47. package/dist/collection/components/post-header/post-header.css +1 -1
  48. package/dist/collection/components/post-header/post-header.js +75 -54
  49. package/dist/collection/components/post-language-option/post-language-option.js +23 -1
  50. package/dist/collection/components/post-language-switch/post-language-switch.css +1 -1
  51. package/dist/collection/components/post-language-switch/post-language-switch.js +61 -33
  52. package/dist/collection/components/post-mainnavigation/post-mainnavigation.css +1 -1
  53. package/dist/components/package.js +1 -1
  54. package/dist/components/post-back-to-top2.js +3 -3
  55. package/dist/components/post-header2.js +77 -56
  56. package/dist/components/post-language-option2.js +9 -1
  57. package/dist/components/post-language-switch2.js +48 -35
  58. package/dist/components/post-mainnavigation2.js +1 -1
  59. package/dist/components/slide.js +7 -7
  60. package/dist/docs.json +27 -2
  61. package/dist/esm/{index-40846676.js → index-3419e46d.js} +1 -5
  62. package/dist/esm/index.js +22 -22
  63. package/dist/esm/loader.js +3 -3
  64. package/dist/esm/package-6dd1a273.js +3 -0
  65. package/dist/esm/{post-accordion-72896a6b.js → post-accordion-0a3d5cb5.js} +2 -2
  66. package/dist/esm/{post-accordion-item-42446f00.js → post-accordion-item-7cd61396.js} +2 -2
  67. package/dist/esm/post-accordion-item.entry.js +3 -3
  68. package/dist/esm/post-accordion.entry.js +3 -3
  69. package/dist/esm/{post-avatar-3d552832.js → post-avatar-887e552c.js} +2 -2
  70. package/dist/esm/post-avatar.entry.js +3 -3
  71. package/dist/esm/{post-back-to-top-dbfe00b0.js → post-back-to-top-04066434.js} +5 -5
  72. package/dist/esm/post-back-to-top.entry.js +4 -4
  73. package/dist/esm/{post-banner-3ec35c25.js → post-banner-244b9664.js} +2 -2
  74. package/dist/esm/post-banner.entry.js +3 -3
  75. package/dist/esm/{post-breadcrumb-640a1b7a.js → post-breadcrumb-9b85c503.js} +2 -2
  76. package/dist/esm/post-breadcrumb-item_2.entry.js +3 -3
  77. package/dist/esm/post-breadcrumb.entry.js +3 -3
  78. package/dist/esm/{post-card-control-549f9ac0.js → post-card-control-1329dcfe.js} +2 -2
  79. package/dist/esm/post-card-control.entry.js +3 -3
  80. package/dist/esm/post-closebutton_15.entry.js +4 -4
  81. package/dist/esm/{post-collapsible-trigger-76749a79.js → post-collapsible-trigger-d2b5247c.js} +2 -2
  82. package/dist/esm/post-collapsible_2.entry.js +3 -3
  83. package/dist/esm/post-components.js +3 -3
  84. package/dist/esm/{post-footer-2fb4d20e.js → post-footer-dd62137f.js} +2 -2
  85. package/dist/esm/post-footer.entry.js +3 -3
  86. package/dist/esm/{post-linkarea-d7dbf30c.js → post-linkarea-a32d5a77.js} +2 -2
  87. package/dist/esm/post-linkarea.entry.js +3 -3
  88. package/dist/esm/{post-menu-item-80d44823.js → post-menu-item-2951453a.js} +2 -2
  89. package/dist/esm/{post-popover-1fb2446b.js → post-popover-7aa09133.js} +2 -2
  90. package/dist/esm/post-popover.entry.js +3 -3
  91. package/dist/esm/{post-rating-e9a95e85.js → post-rating-b8974582.js} +2 -2
  92. package/dist/esm/post-rating.entry.js +3 -3
  93. package/dist/esm/{post-tab-header-aa2be14d.js → post-tab-header-8eae9acf.js} +2 -2
  94. package/dist/esm/post-tab-header.entry.js +3 -3
  95. package/dist/esm/{post-tab-panel-15f4254a.js → post-tab-panel-e3368b04.js} +2 -2
  96. package/dist/esm/post-tab-panel.entry.js +3 -3
  97. package/dist/esm/{post-tabs-07612298.js → post-tabs-7adeaf6b.js} +2 -2
  98. package/dist/esm/post-tabs.entry.js +3 -3
  99. package/dist/esm/{post-tag-b9d3bb0f.js → post-tag-441d043f.js} +2 -2
  100. package/dist/esm/post-tag.entry.js +3 -3
  101. package/dist/esm/{post-togglebutton-5f0e2508.js → post-togglebutton-a0510987.js} +136 -94
  102. package/dist/esm/{post-tooltip-b1309328.js → post-tooltip-8295268a.js} +2 -2
  103. package/dist/esm/post-tooltip.entry.js +3 -3
  104. package/dist/esm/{slide-62768431.js → slide-cd2850ee.js} +7 -7
  105. package/dist/post-components/index.esm.js +1 -1
  106. package/dist/post-components/{p-33963539.js → p-09468501.js} +1 -1
  107. package/dist/post-components/{p-819f6f7e.js → p-195f8cd8.js} +1 -1
  108. package/dist/post-components/{p-f1995b47.js → p-1a1b3072.js} +1 -1
  109. package/dist/post-components/{p-b6e041ee.js → p-1cbde7fe.js} +1 -1
  110. package/dist/post-components/{p-d993dd37.js → p-1e3dd5bd.js} +1 -1
  111. package/dist/post-components/{p-4f6694d4.js → p-1e73add7.js} +1 -1
  112. package/dist/post-components/{p-b1b5248c.js → p-21e1cb32.js} +1 -1
  113. package/dist/post-components/p-2443adcb.js +1 -0
  114. package/dist/post-components/{p-7c08cad2.js → p-2e9f4062.js} +1 -1
  115. package/dist/post-components/{p-b559d89c.js → p-3b748f3e.js} +1 -1
  116. package/dist/post-components/p-3b7cfd1b.entry.js +1 -0
  117. package/dist/post-components/{p-b5f43c76.entry.js → p-3d1f93a6.entry.js} +1 -1
  118. package/dist/post-components/p-41f255ec.entry.js +1 -0
  119. package/dist/post-components/{p-745ce238.js → p-4eb71e30.js} +1 -1
  120. package/dist/post-components/{p-ff95dcd3.js → p-5c758f41.js} +2 -2
  121. package/dist/post-components/p-5c813ccf.entry.js +1 -0
  122. package/dist/post-components/p-62e18265.entry.js +1 -0
  123. package/dist/post-components/{p-530bedb1.js → p-69841b90.js} +1 -1
  124. package/dist/post-components/{p-bbf9ba02.js → p-6beffad5.js} +1 -1
  125. package/dist/post-components/p-792c167c.entry.js +1 -0
  126. package/dist/post-components/p-8bdf6637.entry.js +1 -0
  127. package/dist/post-components/p-94bceea9.entry.js +1 -0
  128. package/dist/post-components/p-9a4dd70a.entry.js +1 -0
  129. package/dist/post-components/p-9b052461.js +1 -0
  130. package/dist/post-components/p-9fc68ef1.entry.js +1 -0
  131. package/dist/post-components/p-a9fc29db.entry.js +1 -0
  132. package/dist/post-components/{p-9f986e3d.js → p-ae1aa734.js} +1 -1
  133. package/dist/post-components/p-af6ace51.entry.js +1 -0
  134. package/dist/post-components/p-b46777b6.entry.js +1 -0
  135. package/dist/post-components/p-bb5ae350.js +1 -0
  136. package/dist/post-components/p-c75bad27.entry.js +1 -0
  137. package/dist/post-components/{p-75627a39.js → p-d81ae8cb.js} +1 -1
  138. package/dist/post-components/{p-534ca692.js → p-e0241c1d.js} +1 -1
  139. package/dist/post-components/p-ee0c1389.entry.js +1 -0
  140. package/dist/post-components/p-ef47cf27.entry.js +1 -0
  141. package/dist/post-components/{p-eba6a679.js → p-f0a232d7.js} +1 -1
  142. package/dist/post-components/{p-7b526da4.js → p-f2451c8b.js} +1 -1
  143. package/dist/post-components/p-f9a01f1e.entry.js +1 -0
  144. package/dist/post-components/p-fbe39ef0.entry.js +1 -0
  145. package/dist/post-components/{p-88b5add2.js → p-fc4c553c.js} +1 -1
  146. package/dist/post-components/{p-e2da4e76.entry.js → p-fd03e4f7.entry.js} +1 -1
  147. package/dist/post-components/post-components.esm.js +1 -1
  148. package/dist/types/components/post-header/post-header.d.ts +10 -7
  149. package/dist/types/components/post-language-option/post-language-option.d.ts +4 -0
  150. package/dist/types/components/post-language-switch/post-language-switch.d.ts +11 -3
  151. package/dist/types/components.d.ts +5 -0
  152. package/loaders/package.js +1 -1
  153. package/loaders/post-back-to-top.js +3 -3
  154. package/loaders/post-header.js +77 -56
  155. package/loaders/post-language-option.js +9 -1
  156. package/loaders/post-language-switch.js +48 -35
  157. package/loaders/post-mainnavigation.js +1 -1
  158. package/loaders/slide.js +7 -7
  159. package/package.json +3 -3
  160. package/dist/esm/package-30b5445a.js +0 -3
  161. package/dist/post-components/p-32caa5d5.entry.js +0 -1
  162. package/dist/post-components/p-3994c72c.entry.js +0 -1
  163. package/dist/post-components/p-442957b7.entry.js +0 -1
  164. package/dist/post-components/p-449caeba.entry.js +0 -1
  165. package/dist/post-components/p-4af6dbed.js +0 -1
  166. package/dist/post-components/p-513e4b41.entry.js +0 -1
  167. package/dist/post-components/p-5556960c.entry.js +0 -1
  168. package/dist/post-components/p-590c8681.entry.js +0 -1
  169. package/dist/post-components/p-68e0803e.entry.js +0 -1
  170. package/dist/post-components/p-6be78a63.entry.js +0 -1
  171. package/dist/post-components/p-8891c692.entry.js +0 -1
  172. package/dist/post-components/p-a1cbef0b.entry.js +0 -1
  173. package/dist/post-components/p-b54c207a.js +0 -1
  174. package/dist/post-components/p-ca01c184.js +0 -1
  175. package/dist/post-components/p-d9e7aec4.entry.js +0 -1
  176. package/dist/post-components/p-da18066a.entry.js +0 -1
  177. package/dist/post-components/p-e3d794b1.entry.js +0 -1
  178. package/dist/post-components/p-f175148d.entry.js +0 -1
  179. package/dist/post-components/p-f5a940f4.entry.js +0 -1
  180. package/dist/post-components/p-fcb60a95.entry.js +0 -1
@@ -2,9 +2,9 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const postTooltip = require('./post-tooltip-2f80afc8.js');
6
- require('./index-5acef487.js');
7
- require('./package-fdebc7ce.js');
5
+ const postTooltip = require('./post-tooltip-bedfc58a.js');
6
+ require('./index-d6bf2c66.js');
7
+ require('./package-c7d204b7.js');
8
8
  require('./attribute-observer-6d8b886b.js');
9
9
  require('./index-23e36ff7.js');
10
10
  require('./constants-238701d3.js');
@@ -3,20 +3,20 @@
3
3
  const easing = 'ease';
4
4
  const duration = 500;
5
5
  const fill = 'forwards';
6
- function slideUp(el, translateSize = '100%') {
6
+ function slideUp(el, translateSize = '-100%') {
7
7
  return el.animate([
8
- { transform: `translateY(${translateSize})` }, // Starting position (no translation)
9
- { transform: 'translateY(0)' }, // End position
8
+ { transform: 'translateY(0)' }, // Starting position (no translation)
9
+ { transform: `translateY(${translateSize})` }, // End position
10
10
  ], {
11
11
  duration: duration,
12
12
  easing,
13
13
  fill,
14
14
  });
15
15
  }
16
- function slideDown(el, translateSize = '100%') {
16
+ function slideDown(el, translateSize = '-100%') {
17
17
  return el.animate([
18
- { transform: 'translateY(0)' }, // Starting position (no translation)
19
- { transform: `translateY(${translateSize})` }, // End position
18
+ { transform: `translateY(${translateSize})` }, // Starting position (no translation)
19
+ { transform: 'translateY(0)' }, // End position
20
20
  ], {
21
21
  duration: duration,
22
22
  easing,
@@ -1,20 +1,20 @@
1
1
  const easing = 'ease';
2
2
  const duration = 500;
3
3
  const fill = 'forwards';
4
- export function slideUp(el, translateSize = '100%') {
4
+ export function slideUp(el, translateSize = '-100%') {
5
5
  return el.animate([
6
- { transform: `translateY(${translateSize})` }, // Starting position (no translation)
7
- { transform: 'translateY(0)' }, // End position
6
+ { transform: 'translateY(0)' }, // Starting position (no translation)
7
+ { transform: `translateY(${translateSize})` }, // End position
8
8
  ], {
9
9
  duration: duration,
10
10
  easing,
11
11
  fill,
12
12
  });
13
13
  }
14
- export function slideDown(el, translateSize = '100%') {
14
+ export function slideDown(el, translateSize = '-100%') {
15
15
  return el.animate([
16
- { transform: 'translateY(0)' }, // Starting position (no translation)
17
- { transform: `translateY(${translateSize})` }, // End position
16
+ { transform: `translateY(${translateSize})` }, // Starting position (no translation)
17
+ { transform: 'translateY(0)' }, // End position
18
18
  ], {
19
19
  duration: duration,
20
20
  easing,
@@ -18,10 +18,10 @@ export class PostBackToTop {
18
18
  // Watch for changes in belowFold
19
19
  watchBelowFold(newValue) {
20
20
  if (newValue) {
21
- slideUp(this.host, this.translateY);
21
+ slideDown(this.host, this.translateY);
22
22
  }
23
23
  else {
24
- slideDown(this.host, this.translateY);
24
+ slideUp(this.host, this.translateY);
25
25
  }
26
26
  }
27
27
  scrollToTop() {
@@ -1 +1 @@
1
- *,::before,::after{box-sizing:border-box}:host{z-index:1020;position:relative}:host(:not(:has([slot=title]))) .local-header{padding-block-start:0}:host(:not(:has([slot=title]))) .local-sub{display:none}.d-flex{display:flex}.space-between{justify-content:space-between}.global-header{background-color:#fc0;display:flex;justify-content:space-between;position:sticky;padding-inline:4px;height:var(--global-header-height)}@media screen and (max-width: 1023.98px){.global-header{z-index:3;inset-block-start:0}}@media screen and (min-width: 1024px){.global-header{z-index:5;padding-inline-end:12px;inset-block-start:calc((var(--global-header-height) - var(--global-header-reduced-height))*-1)}}.global-sub{display:flex;align-items:center;gap:24px}.align-end{align-items:flex-end}.logo{flex:1 0 auto;height:var(--global-header-height);width:var(--global-header-height);min-height:var(--global-header-reduced-height);align-self:flex-end}@media screen and (min-width: 1024px){.logo{height:calc(var(--global-header-height) - var(--header-scroll-top))}}::slotted(ul){margin-block:0 !important;list-style:none;display:flex;padding-left:0;gap:1rem;flex-shrink:0 !important}.local-header{display:flex;position:sticky;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px;min-height:var(--local-header-min-height);background:#fff;transition:box-shadow .2s ease-in-out}.local-header::after{content:"";position:absolute;width:100%;height:1px;background-color:#e1e0dc;bottom:-1px;z-index:1}@media screen and (min-width: 1024px){.local-header{z-index:3;inset-block-start:calc(-1*(var(--local-header-height) - var(--main-navigation-height)) + var(--global-header-reduced-height));padding-block-start:18px;box-shadow:var(--post-device-elevation-300)}}@media screen and (max-width: 1023.98px){.local-header{z-index:2;inset-block-start:var(--global-header-height);padding-block:12px;flex-wrap:wrap;gap:16px}.local-header.local-header-mobile-extended::after{bottom:0}.local-header:not(.local-header-mobile-extended){box-shadow:var(--post-device-elevation-300)}}.local-sub{margin-inline-end:16px}::slotted(.list-inline){margin:0 !important;z-index:3 !important;position:relative !important}::slotted(h1){margin:0 !important;flex-shrink:10;z-index:3}@media screen and (min-width: 600px){::slotted(h1){margin-inline-start:12px !important}}@media screen and (max-width: 599.98px){::slotted(h1){margin-inline-start:8px !important}}@media screen and (min-width: 1024px){::slotted(h1){font-size:28px !important;line-height:34px !important}}@media screen and (max-width: 1023.98px){::slotted(h1){font-size:20px !important;max-width:calc(100vw - 8px - 16px)}}@media screen and (min-width: 1024px){.mobile-toggle{display:none}}.navigation{width:100%}@media screen and (min-width: 1024px){.navigation{inset-block-start:var(--global-header-reduced-height)}.navigation::before{display:block;content:"";position:absolute;inset:0;z-index:2;background:#fff}}@media screen and (max-width: 1023.98px){.navigation{position:fixed;z-index:1;inset-inline:0;background:#fff;inset-block-end:calc(100dvh - var(--header-height))}::slotted(post-mainnavigation),.navigation-footer{display:none;flex-direction:column;padding-block:16px 24px;padding-inline:32px}.navigation.extended ::slotted(post-mainnavigation),.navigation.extended .navigation-footer{display:flex}.navigation.extended{height:calc(100dvh - var(--header-height));display:flex;flex-direction:column}.navigation.extended.scroll-y{overflow-y:auto}.navigation.extended ::slotted(post-mainnavigation){flex-grow:1 !important}::slotted(post-mainnavigation){background-color:#fafafa;gap:32px}.navigation-footer{background-color:#f0efed;gap:24px}}@media screen and (max-width: 599.98px){::slotted(post-mainnavigation),.navigation-footer{padding-inline:16px}}
1
+ *,::before,::after{box-sizing:border-box}:host{z-index:1020;position:relative}:host(:not(:has([slot=title]))) .local-header{padding-block-start:0}:host(:not(:has([slot=title]))) .local-sub{display:none}.d-flex{display:flex}.space-between{justify-content:space-between}.global-header{background-color:#fc0;display:flex;justify-content:space-between;position:sticky;padding-inline:4px;height:var(--global-header-height)}@media screen and (max-width: 1023.98px){.global-header{z-index:3;inset-block-start:0}}@media screen and (min-width: 1024px){.global-header{z-index:5;padding-inline-end:12px;inset-block-start:calc((var(--global-header-height) - var(--global-header-reduced-height))*-1)}}.global-sub{display:flex;align-items:center;gap:24px}.align-end{align-items:flex-end}.logo{flex:1 0 auto;height:var(--global-header-height);width:var(--global-header-height);min-height:var(--global-header-reduced-height);align-self:flex-end}@media screen and (min-width: 1024px){.logo{height:calc(var(--global-header-height) - var(--header-scroll-top))}}::slotted(ul){margin-block:0 !important;list-style:none;display:flex;padding-left:0;gap:1rem;flex-shrink:0 !important}.local-header{display:flex;position:sticky;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px;min-height:var(--local-header-min-height);background:#fff;transition:box-shadow .2s ease-in-out}.local-header::after{content:"";position:absolute;width:100%;height:1px;background-color:#e1e0dc;bottom:-1px;z-index:1}@media screen and (min-width: 1024px){.local-header{z-index:3;inset-block-start:calc(-1*(var(--local-header-height) - var(--main-navigation-height)) + var(--global-header-reduced-height));padding-block-start:18px;box-shadow:var(--post-device-elevation-300)}}@media screen and (max-width: 1023.98px){.local-header{z-index:2;inset-block-start:var(--global-header-height);padding-block:12px;flex-wrap:wrap;gap:16px}.local-header.local-header-mobile-extended::after{bottom:0}.local-header:not(.local-header-mobile-extended){box-shadow:var(--post-device-elevation-300)}}.local-sub{margin-inline-end:16px}::slotted(.list-inline){margin:0 !important;z-index:3 !important;position:relative !important}::slotted(h1){margin:0 !important;flex-shrink:10;z-index:3}@media screen and (min-width: 600px){::slotted(h1){margin-inline-start:12px !important}}@media screen and (max-width: 599.98px){::slotted(h1){margin-inline-start:8px !important}}@media screen and (min-width: 1024px){::slotted(h1){font-size:28px !important;line-height:34px !important}}@media screen and (max-width: 1023.98px){::slotted(h1){font-size:20px !important;max-width:calc(100vw - 8px - 16px)}}@media screen and (min-width: 1024px){.mobile-toggle{display:none}}.navigation{width:100%}@media screen and (min-width: 1024px){.navigation{inset-block-start:var(--global-header-reduced-height)}.navigation::before{display:block;content:"";position:absolute;inset:0;z-index:2;background:#fff}}@media screen and (max-width: 1023.98px){.navigation{position:fixed;z-index:1;inset-inline:0;inset-block-start:var(--header-height);overflow:hidden}::slotted(post-mainnavigation),.navigation-footer{display:none;flex-direction:column;padding-block:16px 24px;padding-inline:32px}.navigation.extended ::slotted(post-mainnavigation),.navigation.extended .navigation-footer{display:flex}.navigation.extended>div{display:flex;flex-direction:column;height:calc(100dvh - var(--header-height))}.navigation.extended.scroll-y>div{overflow-y:auto;overflow-x:hidden}.navigation.extended ::slotted(post-mainnavigation){flex-grow:1 !important}::slotted(post-mainnavigation){background-color:#fafafa;gap:32px}.navigation-footer{background-color:#f0efed;gap:24px}}@media screen and (max-width: 599.98px){::slotted(post-mainnavigation),.navigation-footer{padding-inline:16px}}
@@ -20,59 +20,75 @@ export class PostHeader {
20
20
  }
21
21
  firstFocusableEl;
22
22
  lastFocusableEl;
23
- scrollListenerElement = null;
24
- overflowElement = null;
25
23
  mobileMenu;
26
24
  mobileMenuAnimation;
27
- throttledScroll = () => this.handleScrollEvent();
28
25
  throttledResize = throttle(50, () => this.handleResize());
26
+ scrollParentResizeObserver;
27
+ localHeaderResizeObserver;
28
+ get scrollParent() {
29
+ let element = this.host.parentElement;
30
+ while (element) {
31
+ const hasScrollParentAttr = element.hasAttribute('data-is-post-header-scroll-parent');
32
+ const overflow = getComputedStyle(element).overflowY;
33
+ if (hasScrollParentAttr || ['auto', 'scroll'].includes(overflow)) {
34
+ return element;
35
+ }
36
+ element = element.parentElement;
37
+ }
38
+ return document.documentElement;
39
+ }
40
+ host;
41
+ frozeBody(isMobileMenuExtended) {
42
+ if (isMobileMenuExtended) {
43
+ this.scrollParent.setAttribute('data-is-post-header-scroll-parent', '');
44
+ this.scrollParent.style.overflow = 'hidden';
45
+ this.host.addEventListener('keydown', this.keyboardHandler.bind(this));
46
+ }
47
+ else {
48
+ this.scrollParent.style.overflow = '';
49
+ this.scrollParent.removeAttribute('data-is-post-header-scroll-parent');
50
+ this.host.removeEventListener('keydown', this.keyboardHandler.bind(this));
51
+ }
52
+ }
53
+ /**
54
+ * An event emitted when the device has changed
55
+ */
56
+ postUpdateDevice;
29
57
  componentWillRender() {
30
- this.scrollListenerElement = this.getScrollParent();
31
- this.overflowElement =
32
- this.scrollListenerElement === document
33
- ? document.documentElement
34
- : this.scrollListenerElement;
35
- this.scrollListenerElement.addEventListener('scroll', this.throttledScroll, { passive: true });
36
58
  window.addEventListener('resize', this.throttledResize, { passive: true });
59
+ window.addEventListener('scroll', this.handleScrollEvent.bind(this), {
60
+ passive: true,
61
+ });
62
+ this.scrollParent.addEventListener('scroll', this.handleScrollEvent.bind(this), {
63
+ passive: true,
64
+ });
37
65
  this.handleResize();
38
66
  this.handleScrollEvent();
39
67
  this.getFocusableElements();
40
68
  }
41
69
  componentDidLoad() {
42
- this.updateLocalHeaderHeight();
43
70
  // Check if the mega dropdown is expanded
44
- document.addEventListener('postToggleMegadropdown', (event) => {
45
- this.megadropdownOpen = event.detail.isVisible;
46
- });
71
+ document.addEventListener('postToggleMegadropdown', this.megedropdownStateHandler.bind(this));
47
72
  this.host.addEventListener('click', this.handleLinkClick.bind(this));
73
+ this.handleScrollParentResize();
74
+ this.handleLocalHeaderResize();
48
75
  }
49
76
  // Clean up possible side effects when post-header is disconnected
50
77
  disconnectedCallback() {
51
78
  this.mobileMenuExtended = false;
52
- this.overflowElement.style.overflow = '';
53
- this.host.removeEventListener('keydown', e => {
54
- this.keyboardHandler(e);
55
- });
79
+ this.scrollParent.style.overflow = '';
80
+ this.scrollParent.removeAttribute('data-is-post-header-scroll-parent');
81
+ window.removeEventListener('resize', this.throttledResize);
82
+ window.removeEventListener('scroll', this.handleScrollEvent.bind(this));
83
+ this.scrollParent.removeEventListener('scroll', this.handleScrollEvent.bind(this));
84
+ document.removeEventListener('postToggleMegadropdown', this.megedropdownStateHandler.bind(this));
85
+ this.host.removeEventListener('keydown', this.keyboardHandler.bind(this));
56
86
  this.host.removeEventListener('click', this.handleLinkClick.bind(this));
87
+ if (this.scrollParentResizeObserver)
88
+ this.scrollParentResizeObserver.disconnect();
89
+ if (this.localHeaderResizeObserver)
90
+ this.localHeaderResizeObserver.disconnect();
57
91
  }
58
- host;
59
- frozeBody(isMobileMenuExtended) {
60
- this.overflowElement.style.overflow = isMobileMenuExtended ? 'hidden' : '';
61
- if (isMobileMenuExtended) {
62
- this.host.addEventListener('keydown', e => {
63
- this.keyboardHandler(e);
64
- });
65
- }
66
- else {
67
- this.host.removeEventListener('keydown', e => {
68
- this.keyboardHandler(e);
69
- });
70
- }
71
- }
72
- /**
73
- * An event emitted when the device has changed
74
- */
75
- postUpdateDevice;
76
92
  /**
77
93
  * Toggles the mobile navigation.
78
94
  */
@@ -92,6 +108,9 @@ export class PostHeader {
92
108
  if (!this.mobileMenuExtended)
93
109
  await this.mobileMenuAnimation.finished;
94
110
  }
111
+ megedropdownStateHandler(event) {
112
+ this.megadropdownOpen = event.detail.isVisible;
113
+ }
95
114
  // Get all the focusable elements in the post-header mobile menu
96
115
  getFocusableElements() {
97
116
  // Get elements in the correct order (different as the DOM order)
@@ -122,25 +141,15 @@ export class PostHeader {
122
141
  }
123
142
  }
124
143
  }
125
- getScrollParent() {
126
- let parent = this.host.parentElement;
127
- if (parent.tagName === 'BODY') {
128
- parent = document;
129
- }
130
- return parent;
131
- }
132
144
  handleScrollEvent() {
133
- // Credits: "https://github.com/qeremy/so/blob/master/so.dom.js#L426"
134
- const st = Math.max(0, this.scrollListenerElement instanceof Document
135
- ? this.scrollListenerElement.documentElement.scrollTop
136
- : this.scrollListenerElement.scrollTop);
137
- this.host.style.setProperty('--header-scroll-top', `${st}px`);
145
+ this.host.style.setProperty('--header-scroll-top', `${this.scrollParent.scrollTop}px`);
138
146
  }
139
147
  updateLocalHeaderHeight() {
140
- requestAnimationFrame(() => {
141
- const mhh = this.host.shadowRoot.querySelector('.local-header')?.clientHeight || 0;
142
- this.host.style.setProperty('--local-header-height', `${mhh}px`);
143
- });
148
+ const localHeaderHeight = this.host.shadowRoot.querySelector('.local-header')?.clientHeight || 0;
149
+ this.host.style.setProperty('--local-header-height', `${localHeaderHeight}px`);
150
+ }
151
+ updateScrollParentHeight() {
152
+ this.host.style.setProperty('--header-scroll-parent-height', `${this.scrollParent.clientHeight}px`);
144
153
  }
145
154
  handleLinkClick(event) {
146
155
  const target = event.target;
@@ -177,7 +186,6 @@ export class PostHeader {
177
186
  this.toggleMobileMenu();
178
187
  this.mobileMenuAnimation.finish(); // no animation
179
188
  }
180
- this.updateLocalHeaderHeight();
181
189
  // Apply only on change for doing work only when necessary
182
190
  if (newDevice !== previousDevice) {
183
191
  this.device = newDevice;
@@ -187,6 +195,19 @@ export class PostHeader {
187
195
  });
188
196
  }
189
197
  }
198
+ handleScrollParentResize() {
199
+ if (this.scrollParent) {
200
+ this.scrollParentResizeObserver = new ResizeObserver(this.updateScrollParentHeight.bind(this));
201
+ this.scrollParentResizeObserver.observe(this.scrollParent);
202
+ }
203
+ }
204
+ handleLocalHeaderResize() {
205
+ const localHeader = this.host.shadowRoot.querySelector('.local-header');
206
+ if (localHeader) {
207
+ this.localHeaderResizeObserver = new ResizeObserver(this.updateLocalHeaderHeight.bind(this));
208
+ this.localHeaderResizeObserver.observe(localHeader);
209
+ }
210
+ }
190
211
  switchLanguageSwitchMode() {
191
212
  const variant = this.device === 'desktop' ? 'menu' : 'list';
192
213
  Array.from(this.host.querySelectorAll('post-language-switch')).forEach(languageSwitch => {
@@ -201,10 +222,10 @@ export class PostHeader {
201
222
  if (!this.megadropdownOpen) {
202
223
  navigationClasses.push('scroll-y');
203
224
  }
204
- return (h("div", { ref: el => (this.mobileMenu = el), class: navigationClasses.join(' ') }, h("slot", { name: "post-mainnavigation" }), (this.device === 'mobile' || this.device === 'tablet') && (h("div", { class: "navigation-footer" }, h("slot", { name: "meta-navigation" }), h("slot", { name: "post-language-switch" })))));
225
+ return (h("div", { class: navigationClasses.join(' ') }, h("div", { ref: el => (this.mobileMenu = el) }, h("slot", { name: "post-mainnavigation" }), (this.device === 'mobile' || this.device === 'tablet') && (h("div", { class: "navigation-footer" }, h("slot", { name: "meta-navigation" }), h("slot", { name: "post-language-switch" }))))));
205
226
  }
206
227
  render() {
207
- return (h(Host, { key: 'd92b8f3fbf93f1defc6eff9d7283c7452962f1d9', version: version }, h("div", { key: '2d4d19e4aab0bb294c95b4ed672aaac0d0ad23e9', class: "global-header" }, h("div", { key: '069ae5f4ad46baa0245dd97966738a1d4be8d954', class: "global-sub" }, h("div", { key: 'f48c56b8dab12bc8e9a19628d4bc9f7a99ebfd8a', class: "logo" }, h("slot", { key: '663d5f7aa39ec7ff68dd90f24472740ab49d6838', name: "post-logo" }))), h("div", { key: '6a0c11629c5d58d63b49cf99f87fa5858d05c5b0', class: "global-sub" }, this.device === 'desktop' && h("slot", { key: 'ecc46275f314af761ab96fc209133e5f011d25e1', name: "meta-navigation" }), h("slot", { key: '92d41365424c09e07750be9f561d08d062d25c37', name: "global-controls" }), this.device === 'desktop' && h("slot", { key: '6c4d7640261933e939a0cde1cf73d26024e4fcfc', name: "post-language-switch" }), h("div", { key: '39e2ee687469c80f36559d3e50210203e20e2854', onClick: () => this.toggleMobileMenu(), class: "mobile-toggle" }, h("slot", { key: 'f8e746e4dfef7f2427a78ac40b81f4cfd9422d95', name: "post-togglebutton" })))), h("div", { key: '90ca0666714d3e87600bd0ba160dcec289d9ed98', class: 'local-header ' + (this.mobileMenuExtended ? 'local-header-mobile-extended' : '') }, h("slot", { key: '08eb843b431faceac96aaada6714bd86c26f41f5', name: "title" }), h("div", { key: '04542458a9e4aa804daf74d17471a3849e62071e', class: "local-sub" }, h("slot", { key: 'c8c2bc0a9d8433776241c1121a04feb13c34b30c', name: "local-controls" }), h("slot", { key: 'c0b60ab9499dbb9bf08a7e104bac218accd16861' })), this.device === 'desktop' && this.renderNavigation()), this.device !== 'desktop' && this.renderNavigation()));
228
+ return (h(Host, { key: '859829bf3a75e13fc6f2501806167936be900f1b', version: version }, h("div", { key: '06dba64e897db49bd4a8db56786af8daf24b17ed', class: "global-header" }, h("div", { key: 'ad8187bf4cef41ea869109515192349eac5bb896', class: "global-sub" }, h("div", { key: '629afbf9b084e66665b407d597df17cef57d3c8a', class: "logo" }, h("slot", { key: '33f0d3d3ed83057b0a6e235aaf3313a8bf5347ed', name: "post-logo" }))), h("div", { key: '9acf53aa0bb748678436baaf9023cba4a65fddec', class: "global-sub" }, this.device === 'desktop' && h("slot", { key: '44d42df5a0c25b9892800eeb7bba8cd445a39bef', name: "meta-navigation" }), h("slot", { key: '2d0732014f827e989ce90ea1262e7957933bfb15', name: "global-controls" }), this.device === 'desktop' && h("slot", { key: 'f56457752c256e0b620f473e63b9ca6b9fe16efa', name: "post-language-switch" }), h("div", { key: 'b570047b4492e461ace9676e8ae3e63461f9c7ce', onClick: () => this.toggleMobileMenu(), class: "mobile-toggle" }, h("slot", { key: '681840ffdee4e11d68eb16ecddcf1869a0cfd691', name: "post-togglebutton" })))), h("div", { key: 'e90406e7508603222e8ab37bf790bb8a3ecc9614', class: 'local-header ' + (this.mobileMenuExtended ? 'local-header-mobile-extended' : '') }, h("slot", { key: '0115ccd0047409e5a10219ea61c6c09996711e1b', name: "title" }), h("div", { key: '2bd5d0e83650c30de7cd7628f324d726337a28b2', class: "local-sub" }, h("slot", { key: '0578b7fc28a6caa821d131b43b031036250750a8', name: "local-controls" }), h("slot", { key: 'c5ddceb8c56c76a31657633890e8562981e34249' })), this.device === 'desktop' && this.renderNavigation()), this.device !== 'desktop' && this.renderNavigation()));
208
229
  }
209
230
  static get is() { return "post-header"; }
210
231
  static get encapsulation() { return "shadow"; }
@@ -33,11 +33,18 @@ export class PostLanguageOption {
33
33
  if (!this.name && this.isNameRequired()) {
34
34
  throw new Error('The "name" property of the post-language-option component is required when the full language name is not displayed.');
35
35
  }
36
+ if (this.active) {
37
+ this.postLanguageOptionInitiallyActive.emit(this.code);
38
+ }
36
39
  }
37
40
  /**
38
41
  * An event emitted when the language option is clicked. The payload is the ISO 639 code of the language.
39
42
  */
40
43
  postChange;
44
+ /**
45
+ * An event emitted when the language option is initially active. The payload is the ISO 639 code of the language.
46
+ */
47
+ postLanguageOptionInitiallyActive;
41
48
  /**
42
49
  * Selects the language option programmatically.
43
50
  */
@@ -58,7 +65,7 @@ export class PostLanguageOption {
58
65
  this.emitChange();
59
66
  }
60
67
  };
61
- return (h(Host, { key: 'f987cfc18bb86866781e0668516e86f89be6241b', "data-version": version, role: this.variant ? `${this.variant}item` : null }, 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)))));
68
+ return (h(Host, { key: '23bf186d9cc718b2697cbc5bc54b44f6c9ead54f', "data-version": version, role: this.variant ? `${this.variant}item` : null }, 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)))));
62
69
  }
63
70
  static get is() { return "post-language-option"; }
64
71
  static get originalStyleUrls() {
@@ -182,6 +189,21 @@ export class PostLanguageOption {
182
189
  "resolved": "string",
183
190
  "references": {}
184
191
  }
192
+ }, {
193
+ "method": "postLanguageOptionInitiallyActive",
194
+ "name": "postLanguageOptionInitiallyActive",
195
+ "bubbles": true,
196
+ "cancelable": true,
197
+ "composed": true,
198
+ "docs": {
199
+ "tags": [],
200
+ "text": "An event emitted when the language option is initially active. The payload is the ISO 639 code of the language."
201
+ },
202
+ "complexType": {
203
+ "original": "string",
204
+ "resolved": "string",
205
+ "references": {}
206
+ }
185
207
  }];
186
208
  }
187
209
  static get methods() {
@@ -1 +1 @@
1
- :host{display:flex !important;flex-wrap:wrap;gap:.5rem}.post-language-switch-dropdown-container{display:flex;flex-direction:column}.post-language-switch-dropdown-container>*{width:100%}.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:16px;width:16px}.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}
1
+ :host{display:flex !important;flex-wrap:wrap;gap:.5rem}.post-language-switch-dropdown-container{display:flex;flex-direction:column}.post-language-switch-dropdown-container>*{width:100%}.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}
@@ -19,52 +19,65 @@ export class PostLanguageSwitch {
19
19
  }
20
20
  validateVariant() {
21
21
  checkEmptyOrOneOf(this, 'variant', SWITCH_VARIANTS);
22
- }
23
- connectedCallback() {
24
- this.updateChildrenVariant();
25
- // Get the active language based on children's active state
26
- const activeLanguageOption = this.host.querySelector('post-language-option[active]:not([active="false"])');
27
- if (activeLanguageOption)
28
- this.activeLang = activeLanguageOption.getAttribute('code');
29
- }
30
- // Update post-language-option variant to have the correct style
31
- updateChildrenVariant() {
32
- this.host.querySelectorAll('post-language-option').forEach(el => {
33
- el.setAttribute('variant', this.variant);
34
- });
35
- }
36
- componentWillUpdate() {
37
22
  this.updateChildrenVariant();
38
23
  }
39
24
  componentDidLoad() {
40
25
  this.validateCaption();
41
26
  this.validateDescription();
42
27
  this.validateVariant();
43
- // Detects a change in the active language
44
- this.host.addEventListener('postChange', (el) => {
45
- this.activeLang = el.detail;
46
- // Update the active state in the children post-language-option components
47
- this.host.querySelectorAll('post-language-option').forEach(lang => {
48
- if (lang.code && lang.code === this.activeLang) {
49
- lang.setAttribute('active', 'true');
50
- }
51
- else {
52
- lang.setAttribute('active', 'false');
53
- }
54
- });
55
- // Hides the dropdown when an option has been clicked
56
- if (this.variant === 'menu') {
57
- const menu = this.host.shadowRoot.querySelector('post-menu');
58
- menu.hide();
28
+ // Initially set variants and active language
29
+ // Handles cases where the language-switch is rendered after the language-options have been rendered
30
+ this.updateChildrenVariant();
31
+ this.updateActiveLanguage();
32
+ }
33
+ handlePostChange(event) {
34
+ this.activeLang = event.detail;
35
+ // Update the active state in the children post-language-option components
36
+ this.languageOptions.forEach(lang => {
37
+ if (lang.code && lang.code === this.activeLang) {
38
+ lang.setAttribute('active', '');
59
39
  }
40
+ else {
41
+ lang.removeAttribute('active');
42
+ }
43
+ });
44
+ // Hides the dropdown when an option has been clicked
45
+ if (this.variant === 'menu') {
46
+ const menu = this.host.shadowRoot.querySelector('post-menu');
47
+ menu.hide();
48
+ }
49
+ }
50
+ /**
51
+ * Handles cases where the language switch is being rendered before options are available
52
+ * @param event Initially emitted by <post-langauge-option>
53
+ */
54
+ handleInitiallyActive(event) {
55
+ this.activeLang = event.detail;
56
+ }
57
+ get languageOptions() {
58
+ return this.host.querySelectorAll('post-language-option');
59
+ }
60
+ get activeLanguageOption() {
61
+ return this.host.querySelector('post-language-option[active]:not([active="false"])');
62
+ }
63
+ handleSlotChange() {
64
+ this.updateActiveLanguage();
65
+ }
66
+ updateActiveLanguage() {
67
+ this.activeLang = this.activeLanguageOption.getAttribute('code');
68
+ }
69
+ // Update post-language-option variant to have the correct style
70
+ updateChildrenVariant() {
71
+ this.languageOptions.forEach(el => {
72
+ el.setAttribute('variant', this.variant);
60
73
  });
61
74
  }
62
75
  menuId = `p${nanoid(11)}`;
63
76
  renderList() {
64
- 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))));
77
+ 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", { onSlotchange: () => this.handleSlotChange() }))));
65
78
  }
66
79
  renderDropdown() {
67
- 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))));
80
+ 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", { onSlotchange: () => this.handleSlotChange() }))));
68
81
  }
69
82
  render() {
70
83
  return this.variant === 'list' ? this.renderList() : this.renderDropdown();
@@ -161,4 +174,19 @@ export class PostLanguageSwitch {
161
174
  "methodName": "validateVariant"
162
175
  }];
163
176
  }
177
+ static get listeners() {
178
+ return [{
179
+ "name": "postChange",
180
+ "method": "handlePostChange",
181
+ "target": undefined,
182
+ "capture": false,
183
+ "passive": false
184
+ }, {
185
+ "name": "postLanguageOptionInitiallyActive",
186
+ "method": "handleInitiallyActive",
187
+ "target": undefined,
188
+ "capture": false,
189
+ "passive": false
190
+ }];
191
+ }
164
192
  }
@@ -1 +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 post-megadropdown-trigger button{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-mainnavigation post-list-item post-megadropdown-trigger button: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-mainnavigation post-list-item post-megadropdown-trigger button:is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-color:Highlight !important}}@supports not selector(:has(:focus-visible)){post-mainnavigation post-list-item post-megadropdown-trigger button: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-mainnavigation post-list-item post-megadropdown-trigger button:is(:focus-visible,:focus-within,.pretend-focus){outline-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}post-mainnavigation .back-button post-icon{transform:rotate(180deg)}@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 screen and (min-width: 1024px){post-mainnavigation{display:block}post-mainnavigation nav{max-width:100%;background:#fff;max-height:var(--main-navigation-height);user-select:none;transition:margin 250ms cubic-bezier(0.4, 0, 0.2, 1)}post-mainnavigation .left-scroll-button,post-mainnavigation .right-scroll-button{z-index:4;position:absolute;inset-block-end:0;overflow:hidden}post-mainnavigation .left-scroll-button button,post-mainnavigation .right-scroll-button 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;background:#fff;padding:16px;box-shadow:var(--post-device-elevation-500);line-height:100%;height:var(--main-navigation-height)}}@media screen and (min-width: 1024px)and (forced-colors: active),screen and (min-width: 1024px)and (-ms-high-contrast: active),screen and (min-width: 1024px)and (-ms-high-contrast: white-on-black){post-mainnavigation .left-scroll-button button,post-mainnavigation .right-scroll-button button{background-color:ButtonFace !important}post-mainnavigation .left-scroll-button button:hover,post-mainnavigation .right-scroll-button button:hover{background-color:Highlight !important}}@media screen and (min-width: 1024px){post-mainnavigation .left-scroll-button button post-icon,post-mainnavigation .right-scroll-button button post-icon{font-size:1rem}}@media screen and (min-width: 1024px){post-mainnavigation .left-scroll-button.d-none,post-mainnavigation .right-scroll-button.d-none{display:none}}@media screen and (min-width: 1024px){post-mainnavigation .left-scroll-button{inset-inline-start:0;padding-inline-end:2rem}}@media screen and (min-width: 1024px){post-mainnavigation .right-scroll-button{inset-inline-end:0;padding-inline-start:2rem}}@media screen and (min-width: 1024px){post-mainnavigation post-list>[role=list]{flex-direction:row;max-width:100vw}}@media screen and (min-width: 1024px){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(--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%;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;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 .left-scroll-button,post-mainnavigation .right-scroll-button{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}
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 post-megadropdown-trigger button{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-mainnavigation post-list-item post-megadropdown-trigger button: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-mainnavigation post-list-item post-megadropdown-trigger button:is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-color:Highlight !important}}@supports not selector(:has(:focus-visible)){post-mainnavigation post-list-item post-megadropdown-trigger button: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-mainnavigation post-list-item post-megadropdown-trigger button:is(:focus-visible,:focus-within,.pretend-focus){outline-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}post-mainnavigation .back-button post-icon{transform:rotate(180deg)}@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 screen and (min-width: 1024px){post-mainnavigation{display:block;overflow-x:hidden}post-mainnavigation nav{max-width:100%;background:#fff;max-height:var(--main-navigation-height);user-select:none;transition:margin 250ms cubic-bezier(0.4, 0, 0.2, 1)}post-mainnavigation .left-scroll-button,post-mainnavigation .right-scroll-button{z-index:4;position:absolute;inset-block-end:0;overflow:hidden}post-mainnavigation .left-scroll-button button,post-mainnavigation .right-scroll-button 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;background:#fff;padding:16px;box-shadow:var(--post-device-elevation-500);line-height:100%;height:var(--main-navigation-height)}}@media screen and (min-width: 1024px)and (forced-colors: active),screen and (min-width: 1024px)and (-ms-high-contrast: active),screen and (min-width: 1024px)and (-ms-high-contrast: white-on-black){post-mainnavigation .left-scroll-button button,post-mainnavigation .right-scroll-button button{background-color:ButtonFace !important}post-mainnavigation .left-scroll-button button:hover,post-mainnavigation .right-scroll-button button:hover{background-color:Highlight !important}}@media screen and (min-width: 1024px){post-mainnavigation .left-scroll-button button post-icon,post-mainnavigation .right-scroll-button button post-icon{font-size:1rem}}@media screen and (min-width: 1024px){post-mainnavigation .left-scroll-button.d-none,post-mainnavigation .right-scroll-button.d-none{display:none}}@media screen and (min-width: 1024px){post-mainnavigation .left-scroll-button{inset-inline-start:0;padding-inline-end:2rem}}@media screen and (min-width: 1024px){post-mainnavigation .right-scroll-button{inset-inline-end:0;padding-inline-start:2rem}}@media screen and (min-width: 1024px){post-mainnavigation post-list>[role=list]{flex-direction:row;max-width:100vw}}@media screen and (min-width: 1024px){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(--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%;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;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 .left-scroll-button,post-mainnavigation .right-scroll-button{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}
@@ -1,3 +1,3 @@
1
- const version = "9.0.0-next.23";
1
+ const version = "9.0.0-next.25";
2
2
 
3
3
  export { version as v };
@@ -1,5 +1,5 @@
1
1
  import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
- import { s as slideUp, a as slideDown } from './slide.js';
2
+ import { s as slideDown, a as slideUp } from './slide.js';
3
3
  import { v as version } from './package.js';
4
4
  import { c as checkType } from './check-type.js';
5
5
  import { c as checkNonEmpty } from './check-non-empty.js';
@@ -27,10 +27,10 @@ const PostBackToTop = /*@__PURE__*/ proxyCustomElement(class PostBackToTop exten
27
27
  // Watch for changes in belowFold
28
28
  watchBelowFold(newValue) {
29
29
  if (newValue) {
30
- slideUp(this.host, this.translateY);
30
+ slideDown(this.host, this.translateY);
31
31
  }
32
32
  else {
33
- slideDown(this.host, this.translateY);
33
+ slideUp(this.host, this.translateY);
34
34
  }
35
35
  }
36
36
  scrollToTop() {