@swisspost/design-system-components 10.7.0 → 10.9.0

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 (333) hide show
  1. package/README.md +1 -1
  2. package/dist/cjs/{create-validator-decorator-D7nAb9KJ.js → create-validator-decorator-DVm_SDrR.js} +1 -1
  3. package/dist/cjs/{index-DWIlRT6N.js → index-DY4QxKNv.js} +5 -5
  4. package/dist/cjs/is-focus-visible-B3CqVQsX.js +19 -0
  5. package/dist/cjs/loader.cjs.js +2 -2
  6. package/dist/cjs/{one-of-B8RUgrZk.js → one-of-qu7_EPxf.js} +1 -1
  7. package/dist/cjs/{package-BtKYhTNj.js → package-kgRYEtTJ.js} +1 -1
  8. package/dist/cjs/{pattern-B6VoDk_m.js → pattern-EpwCKMyC.js} +1 -1
  9. package/dist/cjs/post-accordion_2.cjs.entry.js +6 -6
  10. package/dist/cjs/post-autocomplete.cjs.entry.js +5 -5
  11. package/dist/cjs/post-avatar.cjs.entry.js +85 -61
  12. package/dist/cjs/post-back-to-top.cjs.entry.js +6 -6
  13. package/dist/cjs/post-banner.cjs.entry.js +5 -5
  14. package/dist/cjs/post-breadcrumb-item.cjs.entry.js +8 -8
  15. package/dist/cjs/post-breadcrumbs.cjs.entry.js +7 -7
  16. package/dist/cjs/post-closebutton_14.cjs.entry.js +545 -607
  17. package/dist/cjs/post-collapsible_2.cjs.entry.js +13 -7
  18. package/dist/cjs/post-components.cjs.js +2 -2
  19. package/dist/cjs/post-date-picker.cjs.entry.js +24 -9
  20. package/dist/cjs/post-footer.cjs.entry.js +6 -6
  21. package/dist/cjs/post-linkarea.cjs.entry.js +3 -3
  22. package/dist/cjs/post-listbox-option.cjs.entry.js +4 -4
  23. package/dist/cjs/post-listbox.cjs.entry.js +4 -4
  24. package/dist/cjs/post-number-input.cjs.entry.js +5 -5
  25. package/dist/cjs/post-pagination.cjs.entry.js +6 -6
  26. package/dist/cjs/post-popover-trigger.cjs.entry.js +5 -5
  27. package/dist/cjs/post-popover.cjs.entry.js +9 -9
  28. package/dist/cjs/post-progressbar.cjs.entry.js +4 -4
  29. package/dist/cjs/post-rating.cjs.entry.js +6 -6
  30. package/dist/cjs/post-side-navigation-trigger.cjs.entry.js +6 -6
  31. package/dist/cjs/post-side-navigation.cjs.entry.js +14 -9
  32. package/dist/cjs/post-stepper-item.cjs.entry.js +3 -3
  33. package/dist/cjs/post-stepper.cjs.entry.js +7 -7
  34. package/dist/cjs/post-tab-item.cjs.entry.js +6 -6
  35. package/dist/cjs/post-tab-panel.cjs.entry.js +6 -6
  36. package/dist/cjs/post-tabs.cjs.entry.js +37 -9
  37. package/dist/cjs/post-tooltip-trigger.cjs.entry.js +6 -6
  38. package/dist/cjs/post-tooltip.cjs.entry.js +8 -6
  39. package/dist/cjs/{required-bXtlqqaA.js → required-Dgzo-rb5.js} +1 -1
  40. package/dist/cjs/{type-BqLE7Uui.js → type-DBRxpBZI.js} +1 -1
  41. package/dist/cjs/{url-CUy3C3sH.js → url-Dl1JABeP.js} +1 -1
  42. package/dist/collection/components/post-accordion-item/post-accordion-item.css +1 -1
  43. package/dist/collection/components/post-avatar/avatar-utils.js +1 -2
  44. package/dist/collection/components/post-avatar/post-avatar.js +77 -59
  45. package/dist/collection/components/post-back-to-top/post-back-to-top.css +1 -1
  46. package/dist/collection/components/post-banner/post-banner.css +1 -1
  47. package/dist/collection/components/post-breadcrumb-item/post-breadcrumb-item.css +1 -1
  48. package/dist/collection/components/post-breadcrumbs/post-breadcrumbs.css +1 -1
  49. package/dist/collection/components/post-closebutton/post-closebutton.css +1 -1
  50. package/dist/collection/components/post-collapsible/post-collapsible.js +9 -3
  51. package/dist/collection/components/post-date-picker/post-date-picker.css +1 -1
  52. package/dist/collection/components/post-date-picker/post-date-picker.js +18 -3
  53. package/dist/collection/components/post-footer/post-footer.css +1 -1
  54. package/dist/collection/components/post-header/post-header.css +1 -1
  55. package/dist/collection/components/post-header/post-header.js +100 -18
  56. package/dist/collection/components/post-icon/post-icon.css +1 -1
  57. package/dist/collection/components/post-icon/post-icon.js +1 -2
  58. package/dist/collection/components/post-language-menu/post-language-menu.css +1 -1
  59. package/dist/collection/components/post-language-menu/post-language-menu.js +2 -2
  60. package/dist/collection/components/post-linkarea/post-linkarea.js +1 -1
  61. package/dist/collection/components/post-listbox/post-listbox.css +1 -1
  62. package/dist/collection/components/post-listbox/post-listbox.js +1 -1
  63. package/dist/collection/components/post-listbox-option/post-listbox-option.js +2 -2
  64. package/dist/collection/components/post-logo/post-logo.css +1 -1
  65. package/dist/collection/components/post-logo/post-logo.js +1 -1
  66. package/dist/collection/components/post-mainnavigation/post-mainnavigation.css +1 -1
  67. package/dist/collection/components/post-mainnavigation/post-mainnavigation.js +1 -1
  68. package/dist/collection/components/post-megadropdown/post-megadropdown.css +1 -1
  69. package/dist/collection/components/post-megadropdown/post-megadropdown.js +34 -16
  70. package/dist/collection/components/post-megadropdown-trigger/post-megadropdown-trigger.css +1 -1
  71. package/dist/collection/components/post-megadropdown-trigger/post-megadropdown-trigger.js +1 -1
  72. package/dist/collection/components/post-menu/post-menu.css +1 -1
  73. package/dist/collection/components/post-menu/post-menu.js +3 -14
  74. package/dist/collection/components/post-menu-item/post-menu-item.css +1 -1
  75. package/dist/collection/components/post-menu-trigger/post-menu-trigger.js +1 -1
  76. package/dist/collection/components/post-number-input/post-number-input.css +2 -2
  77. package/dist/collection/components/post-number-input/post-number-input.js +2 -2
  78. package/dist/collection/components/post-pagination/post-pagination.css +1 -1
  79. package/dist/collection/components/post-popover/post-popover.css +1 -1
  80. package/dist/collection/components/post-popover/post-popover.js +2 -2
  81. package/dist/collection/components/post-popover-trigger/post-popover-trigger.js +1 -1
  82. package/dist/collection/components/post-popovercontainer/post-popovercontainer.css +1 -1
  83. package/dist/collection/components/post-popovercontainer/post-popovercontainer.js +211 -323
  84. package/dist/collection/components/post-progressbar/post-progressbar.js +1 -1
  85. package/dist/collection/components/post-rating/post-rating.js +1 -1
  86. package/dist/collection/components/post-side-navigation/post-side-navigation.css +1 -1
  87. package/dist/collection/components/post-side-navigation/post-side-navigation.js +7 -3
  88. package/dist/collection/components/post-side-navigation-trigger/post-side-navigation-trigger.js +1 -1
  89. package/dist/collection/components/post-stepper/post-stepper.js +1 -1
  90. package/dist/collection/components/post-stepper-item/post-stepper-item.js +1 -1
  91. package/dist/collection/components/post-tab-item/post-tab-item.js +2 -2
  92. package/dist/collection/components/post-tab-panel/post-tab-panel.js +1 -1
  93. package/dist/collection/components/post-tabs/post-tabs.css +1 -1
  94. package/dist/collection/components/post-tabs/post-tabs.js +31 -3
  95. package/dist/collection/components/post-togglebutton/post-togglebutton.js +1 -1
  96. package/dist/collection/components/post-tooltip/post-tooltip.css +1 -1
  97. package/dist/collection/components/post-tooltip/post-tooltip.js +3 -1
  98. package/dist/collection/components/post-tooltip-trigger/post-tooltip-trigger.js +1 -1
  99. package/dist/collection/test-setup.js +28 -0
  100. package/dist/collection/utils/floating-ui/middleware/flip.js +77 -0
  101. package/dist/collection/utils/floating-ui/middleware/safe-space.js +52 -0
  102. package/dist/collection/utils/floating-ui/util.js +10 -0
  103. package/dist/collection/utils/index.js +1 -0
  104. package/dist/collection/utils/is-focus-visible.js +15 -0
  105. package/dist/components/is-focus-visible.js +1 -0
  106. package/dist/components/package.js +1 -1
  107. package/dist/components/post-accordion-item2.js +1 -1
  108. package/dist/components/post-avatar.js +1 -1
  109. package/dist/components/post-back-to-top.js +1 -1
  110. package/dist/components/post-banner.js +1 -1
  111. package/dist/components/post-breadcrumb-item.js +1 -1
  112. package/dist/components/post-breadcrumbs.js +1 -1
  113. package/dist/components/post-closebutton2.js +1 -1
  114. package/dist/components/post-collapsible2.js +1 -1
  115. package/dist/components/post-date-picker.js +1 -1
  116. package/dist/components/post-footer.js +1 -1
  117. package/dist/components/post-header.js +1 -1
  118. package/dist/components/post-icon2.js +1 -1
  119. package/dist/components/post-language-menu.js +1 -1
  120. package/dist/components/post-linkarea.js +1 -1
  121. package/dist/components/post-listbox-option.js +1 -1
  122. package/dist/components/post-listbox.js +1 -1
  123. package/dist/components/post-logo.js +1 -1
  124. package/dist/components/post-mainnavigation.js +1 -1
  125. package/dist/components/post-megadropdown-trigger.js +1 -1
  126. package/dist/components/post-megadropdown.js +1 -1
  127. package/dist/components/post-menu-item2.js +1 -1
  128. package/dist/components/post-menu-trigger2.js +1 -1
  129. package/dist/components/post-menu2.js +1 -1
  130. package/dist/components/post-number-input.js +1 -1
  131. package/dist/components/post-pagination.js +1 -1
  132. package/dist/components/post-popover-trigger.js +1 -1
  133. package/dist/components/post-popover.js +1 -1
  134. package/dist/components/post-popovercontainer2.js +1 -1
  135. package/dist/components/post-progressbar.js +1 -1
  136. package/dist/components/post-rating.js +1 -1
  137. package/dist/components/post-side-navigation-trigger.js +1 -1
  138. package/dist/components/post-side-navigation.js +1 -1
  139. package/dist/components/post-stepper-item.js +1 -1
  140. package/dist/components/post-stepper.js +1 -1
  141. package/dist/components/post-tab-item.js +1 -1
  142. package/dist/components/post-tab-panel.js +1 -1
  143. package/dist/components/post-tabs.js +1 -1
  144. package/dist/components/post-togglebutton2.js +1 -1
  145. package/dist/components/post-tooltip-trigger.js +1 -1
  146. package/dist/components/post-tooltip.js +1 -1
  147. package/dist/components/react/index.js +1 -1
  148. package/dist/components/react/p-BWwWKRO5.js +1 -0
  149. package/dist/components/react/p-CAL337jJ.js +1 -0
  150. package/dist/components/react/p-CBVthgj-.js +1 -0
  151. package/dist/components/react/{p-DS46v3ju.js → p-CLkb55ud.js} +1 -1
  152. package/dist/components/react/{p-C8_zqgAP.js → p-CYBXVnUJ.js} +1 -1
  153. package/dist/components/react/p-Ci-TsJYj.js +1 -0
  154. package/dist/components/react/p-CtgMQs_Q.js +1 -0
  155. package/dist/components/react/p-D4LBzsbB.js +1 -0
  156. package/dist/components/react/p-D5lqOfVk.js +1 -0
  157. package/dist/components/react/p-DGpWjdFJ.js +1 -0
  158. package/dist/components/react/{p-BBv5JYsW.js → p-DSk0Nq8U.js} +1 -1
  159. package/dist/components/react/{p-1y1rv5Tw.js → p-Db3d6dKF.js} +1 -1
  160. package/dist/components/react/p-DkDIUTRi.js +1 -0
  161. package/dist/components/react/post-accordion-item.js +1 -1
  162. package/dist/components/react/post-accordion.js +1 -1
  163. package/dist/components/react/post-autocomplete.js +1 -1
  164. package/dist/components/react/post-avatar.js +1 -1
  165. package/dist/components/react/post-back-to-top.js +1 -1
  166. package/dist/components/react/post-banner.js +1 -1
  167. package/dist/components/react/post-breadcrumb-item.js +1 -1
  168. package/dist/components/react/post-breadcrumbs.js +1 -1
  169. package/dist/components/react/post-closebutton.js +1 -1
  170. package/dist/components/react/post-collapsible-trigger.js +1 -1
  171. package/dist/components/react/post-collapsible.js +1 -1
  172. package/dist/components/react/post-date-picker.js +1 -1
  173. package/dist/components/react/post-footer.js +1 -1
  174. package/dist/components/react/post-header.js +1 -1
  175. package/dist/components/react/post-icon.js +1 -1
  176. package/dist/components/react/post-language-menu-item.js +1 -1
  177. package/dist/components/react/post-language-menu.js +1 -1
  178. package/dist/components/react/post-linkarea.js +1 -1
  179. package/dist/components/react/post-listbox-option.js +1 -1
  180. package/dist/components/react/post-listbox.js +1 -1
  181. package/dist/components/react/post-logo.js +1 -1
  182. package/dist/components/react/post-mainnavigation.js +1 -1
  183. package/dist/components/react/post-megadropdown-trigger.js +1 -1
  184. package/dist/components/react/post-megadropdown.js +1 -1
  185. package/dist/components/react/post-menu-item.js +1 -1
  186. package/dist/components/react/post-menu-trigger.js +1 -1
  187. package/dist/components/react/post-menu.js +1 -1
  188. package/dist/components/react/post-number-input.js +1 -1
  189. package/dist/components/react/post-pagination.js +1 -1
  190. package/dist/components/react/post-popover-trigger.js +1 -1
  191. package/dist/components/react/post-popover.js +1 -1
  192. package/dist/components/react/post-popovercontainer.js +1 -1
  193. package/dist/components/react/post-progressbar.js +1 -1
  194. package/dist/components/react/post-rating.js +1 -1
  195. package/dist/components/react/post-side-navigation-trigger.js +1 -1
  196. package/dist/components/react/post-side-navigation.js +1 -1
  197. package/dist/components/react/post-stepper-item.js +1 -1
  198. package/dist/components/react/post-stepper.js +1 -1
  199. package/dist/components/react/post-tab-item.js +1 -1
  200. package/dist/components/react/post-tab-panel.js +1 -1
  201. package/dist/components/react/post-tabs.js +1 -1
  202. package/dist/components/react/post-togglebutton.js +1 -1
  203. package/dist/components/react/post-tooltip-trigger.js +1 -1
  204. package/dist/components/react/post-tooltip.js +1 -1
  205. package/dist/docs.json +67 -45
  206. package/dist/esm/{create-validator-decorator-DFpQtJzK.js → create-validator-decorator-Cp_NUmrr.js} +1 -1
  207. package/dist/esm/{index-Bs0zeM5Q.js → index-D0jX3Fts.js} +5 -5
  208. package/dist/esm/is-focus-visible-BWwWKRO5.js +17 -0
  209. package/dist/esm/loader.js +3 -3
  210. package/dist/esm/{one-of-DQCfaZpw.js → one-of-B9locHPx.js} +1 -1
  211. package/dist/esm/{package-BBz9PVf0.js → package-CAL337jJ.js} +1 -1
  212. package/dist/esm/{pattern-3lnaFlkk.js → pattern-BL3OBU8C.js} +1 -1
  213. package/dist/esm/post-accordion_2.entry.js +6 -6
  214. package/dist/esm/post-autocomplete.entry.js +5 -5
  215. package/dist/esm/post-avatar.entry.js +85 -61
  216. package/dist/esm/post-back-to-top.entry.js +6 -6
  217. package/dist/esm/post-banner.entry.js +5 -5
  218. package/dist/esm/post-breadcrumb-item.entry.js +8 -8
  219. package/dist/esm/post-breadcrumbs.entry.js +7 -7
  220. package/dist/esm/post-closebutton_14.entry.js +545 -607
  221. package/dist/esm/post-collapsible_2.entry.js +13 -7
  222. package/dist/esm/post-components.js +3 -3
  223. package/dist/esm/post-date-picker.entry.js +24 -9
  224. package/dist/esm/post-footer.entry.js +6 -6
  225. package/dist/esm/post-linkarea.entry.js +3 -3
  226. package/dist/esm/post-listbox-option.entry.js +4 -4
  227. package/dist/esm/post-listbox.entry.js +4 -4
  228. package/dist/esm/post-number-input.entry.js +5 -5
  229. package/dist/esm/post-pagination.entry.js +6 -6
  230. package/dist/esm/post-popover-trigger.entry.js +5 -5
  231. package/dist/esm/post-popover.entry.js +9 -9
  232. package/dist/esm/post-progressbar.entry.js +4 -4
  233. package/dist/esm/post-rating.entry.js +6 -6
  234. package/dist/esm/post-side-navigation-trigger.entry.js +6 -6
  235. package/dist/esm/post-side-navigation.entry.js +14 -9
  236. package/dist/esm/post-stepper-item.entry.js +3 -3
  237. package/dist/esm/post-stepper.entry.js +7 -7
  238. package/dist/esm/post-tab-item.entry.js +6 -6
  239. package/dist/esm/post-tab-panel.entry.js +6 -6
  240. package/dist/esm/post-tabs.entry.js +37 -9
  241. package/dist/esm/post-tooltip-trigger.entry.js +6 -6
  242. package/dist/esm/post-tooltip.entry.js +8 -6
  243. package/dist/esm/{required-NuzPg5jZ.js → required-CDaQB1gC.js} +1 -1
  244. package/dist/esm/{type-ChnksJ25.js → type-CQ7XuPCZ.js} +1 -1
  245. package/dist/esm/{url-BCk3ZU-x.js → url-B-86gtTK.js} +1 -1
  246. package/dist/post-components/{p-63e570c4.entry.js → p-077be898.entry.js} +1 -1
  247. package/dist/post-components/{p-6a2f47af.entry.js → p-184bd61c.entry.js} +1 -1
  248. package/dist/post-components/p-1933e4fa.entry.js +1 -0
  249. package/dist/post-components/p-21e6f82a.entry.js +1 -0
  250. package/dist/post-components/{p-c2de3702.entry.js → p-2220db4c.entry.js} +1 -1
  251. package/dist/post-components/p-2aff3873.entry.js +1 -0
  252. package/dist/post-components/p-2b475cd7.entry.js +1 -0
  253. package/dist/post-components/p-33a898ec.entry.js +1 -0
  254. package/dist/post-components/p-405c1fff.entry.js +1 -0
  255. package/dist/post-components/{p-bd128657.entry.js → p-5efaca25.entry.js} +1 -1
  256. package/dist/post-components/p-6a9661d9.entry.js +1 -0
  257. package/dist/post-components/{p-f275b872.entry.js → p-7dd192b3.entry.js} +1 -1
  258. package/dist/post-components/p-8e5052d5.entry.js +1 -0
  259. package/dist/post-components/p-9440738d.entry.js +1 -0
  260. package/dist/post-components/{p-31550a50.entry.js → p-965a02fb.entry.js} +1 -1
  261. package/dist/post-components/{p-61a45246.entry.js → p-9740719e.entry.js} +1 -1
  262. package/dist/post-components/p-9af8f5af.entry.js +1 -0
  263. package/dist/post-components/{p-DeUk3rcv.js → p-BCPv4bcY.js} +1 -1
  264. package/dist/post-components/p-BWwWKRO5.js +1 -0
  265. package/dist/post-components/p-CAL337jJ.js +1 -0
  266. package/dist/post-components/{p-D1s6tESz.js → p-CP3LjuFR.js} +1 -1
  267. package/dist/post-components/p-D0jX3Fts.js +2 -0
  268. package/dist/post-components/{p-Bl-_v3aT.js → p-D6mVqZLg.js} +1 -1
  269. package/dist/post-components/{p-BwhzbRIR.js → p-DSaWK_q-.js} +1 -1
  270. package/dist/post-components/p-VPHnF9fB.js +1 -0
  271. package/dist/post-components/p-a6971c1c.entry.js +1 -0
  272. package/dist/post-components/p-a7d8f328.entry.js +1 -0
  273. package/dist/post-components/{p-f784e149.entry.js → p-bb9a0e1e.entry.js} +1 -1
  274. package/dist/post-components/{p-e6a4146b.entry.js → p-bf8c7dca.entry.js} +1 -1
  275. package/dist/post-components/p-c3351def.entry.js +1 -0
  276. package/dist/post-components/{p-31a97aae.entry.js → p-c87f33f0.entry.js} +1 -1
  277. package/dist/post-components/{p-64480e3a.entry.js → p-e30b534d.entry.js} +1 -1
  278. package/dist/post-components/{p-43240818.entry.js → p-e73eabac.entry.js} +1 -1
  279. package/dist/post-components/{p-f566768e.entry.js → p-e84fe883.entry.js} +1 -1
  280. package/dist/post-components/{p-aa33141b.entry.js → p-eaa28736.entry.js} +1 -1
  281. package/dist/post-components/{p-451ec8ee.entry.js → p-f2cb8ed1.entry.js} +1 -1
  282. package/dist/post-components/{p-58b66607.entry.js → p-ffbf2375.entry.js} +1 -1
  283. package/dist/post-components/p-gv9b-Z15.js +1 -0
  284. package/dist/post-components/post-components.css +2 -2
  285. package/dist/post-components/post-components.esm.js +1 -1
  286. package/dist/types/components/post-avatar/avatar-utils.d.ts +0 -2
  287. package/dist/types/components/post-avatar/post-avatar.d.ts +11 -9
  288. package/dist/types/components/post-date-picker/post-date-picker.d.ts +2 -0
  289. package/dist/types/components/post-header/post-header.d.ts +14 -0
  290. package/dist/types/components/post-language-menu/post-language-menu.d.ts +3 -0
  291. package/dist/types/components/post-megadropdown/post-megadropdown.d.ts +1 -1
  292. package/dist/types/components/post-menu/post-menu.d.ts +0 -1
  293. package/dist/types/components/post-popovercontainer/post-popovercontainer.d.ts +74 -69
  294. package/dist/types/components/post-tabs/post-tabs.d.ts +4 -0
  295. package/dist/types/components.d.ts +39 -26
  296. package/dist/types/utils/floating-ui/middleware/flip.d.ts +14 -0
  297. package/dist/types/utils/floating-ui/middleware/safe-space.d.ts +10 -0
  298. package/dist/types/utils/floating-ui/util.d.ts +4 -0
  299. package/dist/types/utils/index.d.ts +1 -0
  300. package/dist/types/utils/is-focus-visible.d.ts +5 -0
  301. package/dist/vrt/helpers/header-test-config.js +2 -1
  302. package/hydrate/index.js +659 -634
  303. package/hydrate/index.mjs +659 -634
  304. package/package.json +22 -21
  305. package/dist/components/react/p-BBz9PVf0.js +0 -1
  306. package/dist/components/react/p-BgEY7xhT.js +0 -1
  307. package/dist/components/react/p-C3J7fIWx.js +0 -1
  308. package/dist/components/react/p-C5ibTdH5.js +0 -1
  309. package/dist/components/react/p-CUKzje9q.js +0 -1
  310. package/dist/components/react/p-DTBtJCjk.js +0 -1
  311. package/dist/components/react/p-XUkUhxaz.js +0 -1
  312. package/dist/components/react/p-ialuSSl2.js +0 -1
  313. package/dist/post-components/p-10e430c3.entry.js +0 -1
  314. package/dist/post-components/p-32e1e951.entry.js +0 -1
  315. package/dist/post-components/p-4f08b99b.entry.js +0 -1
  316. package/dist/post-components/p-54432b47.entry.js +0 -1
  317. package/dist/post-components/p-5d7de657.entry.js +0 -1
  318. package/dist/post-components/p-63dd9a76.entry.js +0 -1
  319. package/dist/post-components/p-96d07f2b.entry.js +0 -1
  320. package/dist/post-components/p-9a1e8b1d.entry.js +0 -1
  321. package/dist/post-components/p-BBz9PVf0.js +0 -1
  322. package/dist/post-components/p-Bs0zeM5Q.js +0 -2
  323. package/dist/post-components/p-DH-eJVHZ.js +0 -1
  324. package/dist/post-components/p-Dk-DtPZn.js +0 -1
  325. package/dist/post-components/p-aff180f5.entry.js +0 -1
  326. package/dist/post-components/p-d5327dd1.entry.js +0 -1
  327. package/dist/post-components/p-e1817744.entry.js +0 -1
  328. package/dist/post-components/p-f6da5e69.entry.js +0 -1
  329. package/dist/post-components/p-f917527c.entry.js +0 -1
  330. package/dist/types/home/runner/work/design-system/design-system/packages/components/.stencil/vrt/helpers/header-variants.config.d.ts +0 -23
  331. package/dist/vrt/helpers/header-variants.config.js +0 -157
  332. /package/dist/collection/utils/{floating-ui.js → floating-ui/platform/safe-area.js} +0 -0
  333. /package/dist/types/utils/{floating-ui.d.ts → floating-ui/platform/safe-area.d.ts} +0 -0
@@ -1,12 +1,12 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-DWIlRT6N.js');
3
+ var index = require('./index-DY4QxKNv.js');
4
4
  require('./breakpoints-Kruvy8Dm.js');
5
5
  var nanoid = require('./nanoid-CmjyF1Cm.js');
6
- var _package = require('./package-BtKYhTNj.js');
7
- var required = require('./required-bXtlqqaA.js');
8
- var type = require('./type-BqLE7Uui.js');
9
- require('./create-validator-decorator-D7nAb9KJ.js');
6
+ var _package = require('./package-kgRYEtTJ.js');
7
+ var required = require('./required-Dgzo-rb5.js');
8
+ var type = require('./type-DBRxpBZI.js');
9
+ require('./create-validator-decorator-DVm_SDrR.js');
10
10
 
11
11
  var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
12
12
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
@@ -48,7 +48,7 @@ const PostTabItem = class {
48
48
  this.isPagesVariant = hasAnchor;
49
49
  }
50
50
  render() {
51
- return (index.h(index.Host, { key: '0c98772d01658e932be9982b6983eb3c1f0c4053', id: this.tabId, role: this.isPagesVariant ? undefined : 'tab', "data-version": _package.version, "data-pages-variant": this.isPagesVariant.toString(), "aria-selected": this.isPagesVariant ? undefined : 'false', "aria-disabled": this.disabled ? 'true' : undefined, tabindex: this.isPagesVariant ? undefined : '-1', class: `${this.isPagesVariant ? 'nav-item' : 'tab-title'}${''}`, style: undefined }, index.h("slot", { key: 'fba27566a1226e560161f839df050666763bdce5' })));
51
+ return (index.h(index.Host, { key: '974d9682ef0448cf3adf9481ba472a5c196349b3', id: this.tabId, role: this.isPagesVariant ? undefined : 'tab', "data-version": _package.version, "data-pages-variant": this.isPagesVariant.toString(), "aria-selected": this.isPagesVariant ? undefined : 'false', "aria-disabled": this.disabled ? 'true' : undefined, tabindex: this.isPagesVariant ? undefined : '-1', class: `${this.isPagesVariant ? 'nav-item' : 'tab-title'}${''}`, style: undefined }, index.h("slot", { key: '6a7ed6323892a40ea22e487bc9460af69fda02c6' })));
52
52
  }
53
53
  get host() { return index.getElement(this); }
54
54
  };
@@ -1,12 +1,12 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-DWIlRT6N.js');
3
+ var index = require('./index-DY4QxKNv.js');
4
4
  require('./breakpoints-Kruvy8Dm.js');
5
5
  var nanoid = require('./nanoid-CmjyF1Cm.js');
6
- var _package = require('./package-BtKYhTNj.js');
7
- var required = require('./required-bXtlqqaA.js');
8
- var type = require('./type-BqLE7Uui.js');
9
- require('./create-validator-decorator-D7nAb9KJ.js');
6
+ var _package = require('./package-kgRYEtTJ.js');
7
+ var required = require('./required-Dgzo-rb5.js');
8
+ var type = require('./type-DBRxpBZI.js');
9
+ require('./create-validator-decorator-DVm_SDrR.js');
10
10
 
11
11
  const postTabPanelCss = () => `:host{display:none}`;
12
12
 
@@ -29,7 +29,7 @@ const PostTabPanel = class {
29
29
  this.panelId = `panel-${this.host.id || nanoid.nanoid(6)}`;
30
30
  }
31
31
  render() {
32
- return (index.h(index.Host, { key: '2b02063bf2e67f4e826155759f28a1ae47b0c8e0', "data-version": _package.version, id: this.panelId, role: "tabpanel", slot: "panels", style: undefined }, index.h("slot", { key: 'b4c39e035d0f49f5654b030f4aada27fbebb122c' })));
32
+ return (index.h(index.Host, { key: '07d93ddaa69253a956ed50cd9ecd6ed039fbc6e2', "data-version": _package.version, id: this.panelId, role: "tabpanel", slot: "panels", style: undefined }, index.h("slot", { key: 'd6887db4e0e4dc22f8f8fdf098d6068ef4bd1a91' })));
33
33
  }
34
34
  get host() { return index.getElement(this); }
35
35
  };
@@ -1,16 +1,16 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-DWIlRT6N.js');
3
+ var index = require('./index-DY4QxKNv.js');
4
4
  var fade = require('./fade-CPQhl1fP.js');
5
5
  require('./breakpoints-Kruvy8Dm.js');
6
6
  var componentOnReady = require('./component-on-ready-CifOTqw1.js');
7
- var _package = require('./package-BtKYhTNj.js');
8
- var oneOf = require('./one-of-B8RUgrZk.js');
9
- var type = require('./type-BqLE7Uui.js');
7
+ var _package = require('./package-kgRYEtTJ.js');
8
+ var oneOf = require('./one-of-qu7_EPxf.js');
9
+ var type = require('./type-DBRxpBZI.js');
10
10
  require('./utils-s05L2ulk.js');
11
- require('./create-validator-decorator-D7nAb9KJ.js');
11
+ require('./create-validator-decorator-DVm_SDrR.js');
12
12
 
13
- const postTabsCss = () => `:host{display:block}:host .tabs-wrapper{position:relative;display:flex;align-items:center}:host .tabs-wrapper button.scroll-btn{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;display:flex;align-items:center;justify-content:center;transition:background-color 100ms,border-color 100ms,color 100ms;cursor:pointer}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host .tabs-wrapper button.scroll-btn{background-color:ButtonFace !important}:host .tabs-wrapper button.scroll-btn:hover{background-color:Highlight !important}}:host .tabs-wrapper button.scroll-btn post-icon{color:currentColor}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host .tabs-wrapper button.scroll-btn post-icon{color:Highlight}}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host .tabs-wrapper button.scroll-btn:hover post-icon{color:canvas}}:host .tabs-wrapper button.scroll-btn[hidden]{display:none}:host .tabs-wrapper button.scroll-btn{outline-offset:var(--post-device-spacing-padding-44) !important;outline:var(--post-scheme-color-interactive-focus-stroke) none var(--post-device-border-width-focus) !important}:host .tabs-wrapper button.scroll-btn: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){:host .tabs-wrapper button.scroll-btn:is(:focus-visible,:has(:focus-visible),.pretend-focus){transition:none}:host .tabs-wrapper button.scroll-btn:is(:focus-visible,:has(:focus-visible),.pretend-focus):hover{color:HighlightText;border-color:HighlightText}}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host .tabs-wrapper button.scroll-btn:is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-color:Highlight !important}}@supports not selector(:has(:focus-visible)){:host .tabs-wrapper button.scroll-btn: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){:host .tabs-wrapper button.scroll-btn:is(:focus-visible,:focus-within,.pretend-focus){transition:none}:host .tabs-wrapper button.scroll-btn:is(:focus-visible,:focus-within,.pretend-focus):hover{color:HighlightText;border-color:HighlightText}}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host .tabs-wrapper button.scroll-btn:is(:focus-visible,:focus-within,.pretend-focus){outline-color:Highlight !important}}}:host .tabs-wrapper .tabs{overflow-x:hidden;background-color:rgba(0,0,0,0) !important;display:flex;flex-wrap:nowrap;align-items:end;overscroll-behavior-x:contain;white-space:nowrap;margin-block:0;padding-inline-start:0;list-style:none}:host(.page-tabs){overflow:visible !important}:host(.page-tabs) .tabs-wrapper{margin-inline:calc(-1*(var(--post-container-offset)))}@media screen and (min-width: 1024px){:host(.page-tabs) .tabs-wrapper{margin-inline:calc(-1 * (var(--post-container-offset)) + 20px)}:host(.page-tabs) .tabs-wrapper::after{box-shadow:20px 0 0 var(--post-palette-color-nested-tabs-page-stroke),-20px 0 0 var(--post-palette-color-nested-tabs-page-stroke)}}@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){:host(.page-tabs) .tabs-wrapper::after{box-shadow:20px 0 0 LinkText,-20px 0 0 LinkText}}:host(.page-tabs) .tabs-wrapper button.scroll-btn{color:var(--post-scheme-color-interactive-primary-enabled-fg5);background-color:var(--post-scheme-color-interactive-primary-enabled-bg5);border:var(--post-device-border-width-default) solid var(--post-scheme-color-interactive-primary-enabled-stroke);position:absolute;z-index:2;box-shadow:var(--post-device-elevation-200);border-radius:var(--post-device-border-radius-2)}:host(.page-tabs) .tabs-wrapper button.scroll-btn:hover{border-color:var(--post-scheme-color-interactive-primary-hover-stroke) !important;color:var(--post-scheme-color-interactive-primary-hover-fg4);background-color:var(--post-scheme-color-interactive-primary-hover-bg8)}:host(.page-tabs) .tabs-wrapper button.scroll-btn.scroll-btn-left{inset-inline-start:0;border-inline-start:none;border-radius:0 var(--post-device-border-radius-2) var(--post-device-border-radius-2) 0}:host(.page-tabs) .tabs-wrapper button.scroll-btn.scroll-btn-right{inset-inline-end:0;border-inline-end:none;border-radius:var(--post-device-border-radius-2) 0 0 var(--post-device-border-radius-2)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host(.page-tabs) .tabs-wrapper button.scroll-btn.scroll-btn{background-color:Highlight;color:HighlightText}}:host(.page-tabs) .tabs-wrapper::after{content:"";position:absolute;inset-block-end:0;inset-inline-start:0;width:100%;height:var(--post-device-border-width-default);background-color:var(--post-palette-color-nested-tabs-page-stroke)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host(.page-tabs) .tabs-wrapper::after{background-color:LinkText}}:host(.page-tabs) .tabs-wrapper .tabs{padding-inline:calc(var(--post-container-offset));gap:var(--post-device-spacing-gap-inline-5);scrollbar-width:none}:host(.page-tabs) .tabs-wrapper .tabs::-webkit-scrollbar{display:none}:host(.page-tabs:not([size=small])) button.scroll-btn{top:var(--post-device-spacing-padding-36)}:host(.page-tabs[size=small]) button.scroll-btn{top:var(--post-device-spacing-padding-36)}:host(.content-tabs) .tabs-wrapper button.scroll-btn{flex-shrink:0;color:var(--post-scheme-color-interactive-button-tertiary-enabled-fg)}:host(.content-tabs) .tabs-wrapper button.scroll-btn:hover{border-color:var(--post-scheme-color-interactive-primary-hover-stroke) !important;color:var(--post-scheme-color-interactive-button-tertiary-hover-fg)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host(.content-tabs) .tabs-wrapper button.scroll-btn:hover{color:HighlightText}}:host(post-tabs:not([size=small])) button.scroll-btn{height:var(--post-device-sizing-interactive-button-height-10);width:var(--post-device-sizing-interactive-button-width-1);border-radius:var(--post-device-border-radius-2)}:host(post-tabs:not([size=small])) button.scroll-btn post-icon{height:var(--post-device-sizing-interactive-icon-size5);width:var(--post-device-sizing-interactive-icon-size5)}:host(.page-tabs:not([size=small])) button.scroll-btn-left{padding-inline:var(--post-device-spacing-padding-39) var(--post-device-spacing-padding-40)}:host(.page-tabs:not([size=small])) button.scroll-btn-right{padding-inline:var(--post-device-spacing-padding-40) var(--post-device-spacing-padding-39)}:host([size=small]) button.scroll-btn{height:var(--post-device-sizing-interactive-button-size-1);width:var(--post-device-sizing-interactive-button-size-1);border-radius:var(--post-device-border-radius-2)}:host([size=small]) button.scroll-btn post-icon{height:var(--post-device-sizing-interactive-icon-size4);width:var(--post-device-sizing-interactive-icon-size4)}:host(.page-tabs[size=small]) button.scroll-btn-left{padding-inline:var(--post-device-spacing-padding-42) var(--post-device-spacing-padding-43)}:host(.page-tabs[size=small]) button.scroll-btn-right{padding-inline:var(--post-device-spacing-padding-43) var(--post-device-spacing-padding-42)}`;
13
+ const postTabsCss = () => `:host{display:block}:host .tabs-wrapper{position:relative;display:flex;align-items:center}:host .tabs-wrapper button.scroll-btn{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;display:flex;align-items:center;justify-content:center;transition:background-color 100ms,border-color 100ms,color 100ms;cursor:pointer}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host .tabs-wrapper button.scroll-btn{background-color:ButtonFace !important}:host .tabs-wrapper button.scroll-btn:hover{background-color:Highlight !important}}:host .tabs-wrapper button.scroll-btn post-icon{color:currentColor}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host .tabs-wrapper button.scroll-btn post-icon{color:Highlight}}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host .tabs-wrapper button.scroll-btn:hover post-icon{color:canvas}}:host .tabs-wrapper button.scroll-btn[hidden]{display:none}:host .tabs-wrapper button.scroll-btn{outline-offset:var(--post-device-spacing-padding-44) !important;outline:var(--post-scheme-color-interactive-focus-stroke) none var(--post-device-border-width-focus) !important}:host .tabs-wrapper button.scroll-btn:focus-visible{outline-style:var(--post-core-border-style-solid) !important}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host .tabs-wrapper button.scroll-btn:focus-visible{transition:none}:host .tabs-wrapper button.scroll-btn:focus-visible:hover{color:HighlightText;border-color:HighlightText}}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host .tabs-wrapper button.scroll-btn:focus-visible{outline-color:Highlight !important}}:host .tabs-wrapper button.scroll-btn.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){:host .tabs-wrapper button.scroll-btn.pretend-focus{transition:none}:host .tabs-wrapper button.scroll-btn.pretend-focus:hover{color:HighlightText;border-color:HighlightText}}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host .tabs-wrapper button.scroll-btn.pretend-focus{outline-color:Highlight !important}}:host .tabs-wrapper button.scroll-btn:has(:focus-visible){outline-style:var(--post-core-border-style-solid) !important}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host .tabs-wrapper button.scroll-btn:has(:focus-visible){transition:none}:host .tabs-wrapper button.scroll-btn:has(:focus-visible):hover{color:HighlightText;border-color:HighlightText}}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host .tabs-wrapper button.scroll-btn:has(:focus-visible){outline-color:Highlight !important}}@supports not selector(:has(:focus-visible)){:host .tabs-wrapper button.scroll-btn: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){:host .tabs-wrapper button.scroll-btn:is(:focus-visible,:focus-within,.pretend-focus){transition:none}:host .tabs-wrapper button.scroll-btn:is(:focus-visible,:focus-within,.pretend-focus):hover{color:HighlightText;border-color:HighlightText}}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host .tabs-wrapper button.scroll-btn:is(:focus-visible,:focus-within,.pretend-focus){outline-color:Highlight !important}}}:host .tabs-wrapper .tabs{overflow-x:hidden;background-color:rgba(0,0,0,0) !important;display:flex;flex-wrap:nowrap;align-items:end;overscroll-behavior-x:contain;white-space:nowrap;margin-block:0;padding-inline-start:0;list-style:none}:host(.page-tabs){overflow:visible !important}:host(.page-tabs) .tabs-wrapper{margin-inline:calc(-1*(var(--post-container-offset)))}@media screen and (min-width: 1024px){:host(.page-tabs) .tabs-wrapper{margin-inline:calc(-1 * (var(--post-container-offset)) + 20px)}:host(.page-tabs) .tabs-wrapper::after{box-shadow:20px 0 0 var(--post-palette-color-nested-tabs-page-stroke),-20px 0 0 var(--post-palette-color-nested-tabs-page-stroke)}}@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){:host(.page-tabs) .tabs-wrapper::after{box-shadow:20px 0 0 LinkText,-20px 0 0 LinkText}}:host(.page-tabs) .tabs-wrapper button.scroll-btn{color:var(--post-scheme-color-interactive-primary-enabled-fg5);background-color:var(--post-scheme-color-interactive-primary-enabled-bg5);border:var(--post-device-border-width-default) solid var(--post-scheme-color-interactive-primary-enabled-stroke);position:absolute;z-index:2;box-shadow:var(--post-device-elevation-200);border-radius:var(--post-device-border-radius-2)}:host(.page-tabs) .tabs-wrapper button.scroll-btn:hover{border-color:var(--post-scheme-color-interactive-primary-hover-stroke) !important;color:var(--post-scheme-color-interactive-primary-hover-fg4);background-color:var(--post-scheme-color-interactive-primary-hover-bg8)}:host(.page-tabs) .tabs-wrapper button.scroll-btn.scroll-btn-left{inset-inline-start:0;border-inline-start:none;border-radius:0 var(--post-device-border-radius-2) var(--post-device-border-radius-2) 0}:host(.page-tabs) .tabs-wrapper button.scroll-btn.scroll-btn-right{inset-inline-end:0;border-inline-end:none;border-radius:var(--post-device-border-radius-2) 0 0 var(--post-device-border-radius-2)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host(.page-tabs) .tabs-wrapper button.scroll-btn.scroll-btn{background-color:Highlight;color:HighlightText}}:host(.page-tabs) .tabs-wrapper::after{content:"";position:absolute;inset-block-end:0;inset-inline-start:0;width:100%;height:var(--post-device-border-width-default);background-color:var(--post-palette-color-nested-tabs-page-stroke)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host(.page-tabs) .tabs-wrapper::after{background-color:LinkText}}:host(.page-tabs) .tabs-wrapper .tabs{padding-inline:calc(var(--post-container-offset));gap:var(--post-device-spacing-gap-inline-5);scrollbar-width:none}:host(.page-tabs) .tabs-wrapper .tabs::-webkit-scrollbar{display:none}:host(.page-tabs:not([size=small])) button.scroll-btn{top:var(--post-device-spacing-padding-36)}:host(.page-tabs[size=small]) button.scroll-btn{top:var(--post-device-spacing-padding-36)}:host(.content-tabs) .tabs-wrapper button.scroll-btn{flex-shrink:0;color:var(--post-scheme-color-interactive-button-tertiary-enabled-fg)}:host(.content-tabs) .tabs-wrapper button.scroll-btn:hover{border-color:var(--post-scheme-color-interactive-primary-hover-stroke) !important;color:var(--post-scheme-color-interactive-button-tertiary-hover-fg)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host(.content-tabs) .tabs-wrapper button.scroll-btn:hover{color:HighlightText}}:host(post-tabs:not([size=small])) button.scroll-btn{height:var(--post-device-sizing-interactive-button-height-10);width:var(--post-device-sizing-interactive-button-width-1);border-radius:var(--post-device-border-radius-2)}:host(post-tabs:not([size=small])) button.scroll-btn post-icon{height:var(--post-device-sizing-interactive-icon-size5);width:var(--post-device-sizing-interactive-icon-size5)}:host(.page-tabs:not([size=small])) button.scroll-btn-left{padding-inline:var(--post-device-spacing-padding-39) var(--post-device-spacing-padding-40)}:host(.page-tabs:not([size=small])) button.scroll-btn-right{padding-inline:var(--post-device-spacing-padding-40) var(--post-device-spacing-padding-39)}:host([size=small]) button.scroll-btn{height:var(--post-device-sizing-interactive-button-size-1);width:var(--post-device-sizing-interactive-button-size-1);border-radius:var(--post-device-border-radius-2)}:host([size=small]) button.scroll-btn post-icon{height:var(--post-device-sizing-interactive-icon-size4);width:var(--post-device-sizing-interactive-icon-size4)}:host(.page-tabs[size=small]) button.scroll-btn-left{padding-inline:var(--post-device-spacing-padding-42) var(--post-device-spacing-padding-43)}:host(.page-tabs[size=small]) button.scroll-btn-right{padding-inline:var(--post-device-spacing-padding-43) var(--post-device-spacing-padding-42)}`;
14
14
 
15
15
  var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
16
16
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
@@ -45,6 +45,18 @@ const PostTabs = class {
45
45
  * Default is 'large'.
46
46
  */
47
47
  this.size = 'large';
48
+ // Showing or hiding a scroll button changes the container width, which can happen in the middle of a scroll:
49
+ // the scroll target has to be recomputed, otherwise the scroll stops short of the end
50
+ this.handleContainerResize = () => {
51
+ this.updateScrollButtons();
52
+ // When the whole component resizes instead (e.g. the window gets narrower), the tabs keep their position
53
+ const hostWidth = this.host.clientWidth;
54
+ if (hostWidth !== this.hostWidth) {
55
+ this.hostWidth = hostWidth;
56
+ this.pendingScroll = undefined;
57
+ }
58
+ this.pendingScroll?.();
59
+ };
48
60
  // Handles the visibility of scroll buttons based on the scroll position of the tabs container
49
61
  this.updateScrollButtons = () => {
50
62
  if (!this.tabsContainer)
@@ -128,7 +140,8 @@ const PostTabs = class {
128
140
  this.contentObserver?.observe(this.host, config);
129
141
  }
130
142
  setupResizeObserver() {
131
- this.resizeObserver = new ResizeObserver(this.updateScrollButtons);
143
+ this.hostWidth = this.host.clientWidth;
144
+ this.resizeObserver = new ResizeObserver(this.handleContainerResize);
132
145
  this.resizeObserver.observe(this.tabsContainer);
133
146
  }
134
147
  handleContentChange(mutations) {
@@ -397,11 +410,23 @@ const PostTabs = class {
397
410
  const paddingStart = Number.parseFloat(style.paddingInlineStart) || 0;
398
411
  const paddingEnd = Number.parseFloat(style.paddingInlineEnd) || 0;
399
412
  const contentWidth = this.tabsContainer.clientWidth - paddingStart - paddingEnd;
413
+ const maxScrollLeft = this.tabsContainer.scrollWidth - this.tabsContainer.clientWidth;
414
+ const reachesEnd = sign > 0 && this.tabsContainer.scrollLeft + contentWidth >= maxScrollLeft;
415
+ this.pendingScroll = reachesEnd ? () => this.scrollToEnd() : undefined;
400
416
  this.tabsContainer.scrollBy({
401
417
  left: sign * contentWidth,
402
418
  behavior: 'smooth',
403
419
  });
404
420
  }
421
+ scrollToEnd() {
422
+ const container = this.tabsContainer;
423
+ const maxScrollLeft = container.scrollWidth - container.clientWidth;
424
+ if (container.scrollLeft >= maxScrollLeft) {
425
+ this.pendingScroll = undefined;
426
+ return;
427
+ }
428
+ container.scrollTo({ left: maxScrollLeft, behavior: 'smooth' });
429
+ }
405
430
  scrollTabIntoView(tab, behavior = 'instant') {
406
431
  const container = this.tabsContainer;
407
432
  const style = getComputedStyle(container);
@@ -411,10 +436,13 @@ const PostTabs = class {
411
436
  const tabRight = tabLeft + tab.offsetWidth;
412
437
  const containerLeft = container.scrollLeft + paddingStart;
413
438
  const containerRight = containerLeft + container.clientWidth - paddingStart - paddingEnd;
439
+ // Only aligning the tab to the right edge depends on the container width
440
+ this.pendingScroll = undefined;
414
441
  if (tabLeft < containerLeft) {
415
442
  container.scrollTo({ left: tabLeft - paddingStart, behavior });
416
443
  }
417
444
  else if (tabRight > containerRight) {
445
+ this.pendingScroll = () => this.scrollTabIntoView(tab, behavior);
418
446
  container.scrollTo({ left: tabRight - container.clientWidth + paddingEnd, behavior });
419
447
  }
420
448
  }
@@ -425,10 +453,10 @@ const PostTabs = class {
425
453
  render() {
426
454
  const TabsContainer = this.isPagesVariant ? 'nav' : 'div';
427
455
  const style = undefined;
428
- return (index.h(index.Host, { key: 'fb65fd2589517dd6d86e86435ec6b3a3b64b093d', "data-version": _package.version, style: style }, index.h("div", { key: 'dbcdd791af381ccc23953acb38a8e71527a804ee', class: "tabs-wrapper", part: "post-tabs" }, index.h("button", { key: '20ce30515d80b282aa93f20a1f3281a1ef0f6359', ref: el => (this.leftScrollButton = el), class: "scroll-btn scroll-btn-left", type: "button", "aria-label": this.textPrevTabItems, tabindex: this.showLeftScrollButton ? 0 : -1, hidden: !this.showLeftScrollButton, onClick: () => this.scrollTabs('prev') }, index.h("post-icon", { key: '9a5402a28656d7a4459b9b848425bd15a45a0fce', name: "chevronleft" })), index.h(TabsContainer, { key: 'e821db02fd66aef6cf7a9fb5d925b0906571f3b6', ref: el => (this.tabsContainer = el), class: "tabs", role: this.isPagesVariant ? undefined : 'tablist', "aria-label": this.isPagesVariant ? this.label : undefined }, index.h("slot", { key: 'e3650e43ac269173cb58f1624f02778bf094573c', onSlotchange: () => {
456
+ return (index.h(index.Host, { key: '10c247c7c021a4fbbd8f79ce7b82888e0b7c8be2', "data-version": _package.version, style: style }, index.h("div", { key: '5ccae325884c7cff0eec399da23513c0b864dde0', class: "tabs-wrapper", part: "post-tabs" }, index.h("button", { key: 'dd38a22327801b790f849449055b765d2c1bc3b6', ref: el => (this.leftScrollButton = el), class: "scroll-btn scroll-btn-left", type: "button", "aria-label": this.textPrevTabItems, tabindex: -1, hidden: !this.showLeftScrollButton, onClick: () => this.scrollTabs('prev') }, index.h("post-icon", { key: '461a92ab071472c995d0adad5c73c75c82d982fe', name: "chevronleft" })), index.h(TabsContainer, { key: 'edecdbfdc681b96539e5a0755330faf1795ecb35', ref: el => (this.tabsContainer = el), class: "tabs", role: this.isPagesVariant ? undefined : 'tablist', "aria-label": this.isPagesVariant ? this.label : undefined }, index.h("slot", { key: '6240234a2168b2e889cab92a7688731ca93a63a6', onSlotchange: () => {
429
457
  this.moveMisplacedTabs();
430
458
  this.enableTabs();
431
- } })), index.h("button", { key: '4345a9bc121ce187022cddf019d5c86d875a70e9', ref: el => (this.rightScrollButton = el), class: "scroll-btn scroll-btn-right", type: "button", "aria-label": this.textNextTabItems, tabindex: this.showRightScrollButton ? 0 : -1, hidden: !this.showRightScrollButton, onClick: () => this.scrollTabs('next') }, index.h("post-icon", { key: '2df749c1a4e506d9940ce61e077d0f0f330b7342', name: "chevronright" }))), !this.isPagesVariant && (index.h("div", { key: '184db29a5826af78d142ed1489be33c45831970b', class: "tab-content", part: "post-tabs-content" }, index.h("slot", { key: '4a984c7de97f2f89e7fd0f829f5bc62e2323f056', name: "panels", onSlotchange: () => this.moveMisplacedPanels() })))));
459
+ } })), index.h("button", { key: 'a4030c48cbbefb578b03ee9dad35724a1fdd5547', ref: el => (this.rightScrollButton = el), class: "scroll-btn scroll-btn-right", type: "button", "aria-label": this.textNextTabItems, tabindex: -1, hidden: !this.showRightScrollButton, onClick: () => this.scrollTabs('next') }, index.h("post-icon", { key: 'd89c831bdd2faf1991793df47e7ca79bf49e5339', name: "chevronright" }))), !this.isPagesVariant && (index.h("div", { key: 'aba319437ba8bfb9e7a144a44efcc32d82ef6b02', class: "tab-content", part: "post-tabs-content" }, index.h("slot", { key: 'e689b5e3a030909c5c77899ac899ded2481f82a6', name: "panels", onSlotchange: () => this.moveMisplacedPanels() })))));
432
460
  }
433
461
  get host() { return index.getElement(this); }
434
462
  static get watchers() { return {
@@ -1,11 +1,11 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-DWIlRT6N.js');
3
+ var index = require('./index-DY4QxKNv.js');
4
4
  require('./breakpoints-Kruvy8Dm.js');
5
- var _package = require('./package-BtKYhTNj.js');
6
- var required = require('./required-bXtlqqaA.js');
7
- var type = require('./type-BqLE7Uui.js');
8
- require('./create-validator-decorator-D7nAb9KJ.js');
5
+ var _package = require('./package-kgRYEtTJ.js');
6
+ var required = require('./required-Dgzo-rb5.js');
7
+ var type = require('./type-DBRxpBZI.js');
8
+ require('./create-validator-decorator-DVm_SDrR.js');
9
9
 
10
10
  const postTooltipTriggerCss = () => `post-tooltip-trigger{vertical-align:top}:host{cursor:pointer}`;
11
11
 
@@ -184,7 +184,7 @@ const PostTooltipTrigger = class {
184
184
  this.tooltip?.hide();
185
185
  }
186
186
  render() {
187
- return (index.h(index.Host, { key: '55adc12f457aa8a5dd4357ed27876b0e526f7ae3', "data-version": _package.version }, index.h("slot", { key: '84da1734ae1c1ac9376caa693108e3ed54bf176f', onSlotchange: () => this.handleSlotChange() })));
187
+ return (index.h(index.Host, { key: '7811d666f249ead72768adaf5bdc92e47b447d8a', "data-version": _package.version }, index.h("slot", { key: '68e56c43ebec2abffbf049647ac08757dadf22f9', onSlotchange: () => this.handleSlotChange() })));
188
188
  }
189
189
  get host() { return index.getElement(this); }
190
190
  };
@@ -1,13 +1,13 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-DWIlRT6N.js');
3
+ var index = require('./index-DY4QxKNv.js');
4
4
  var placement = require('./placement-qEFR9hmI.js');
5
5
  require('./breakpoints-Kruvy8Dm.js');
6
- var _package = require('./package-BtKYhTNj.js');
7
- var oneOf = require('./one-of-B8RUgrZk.js');
8
- require('./create-validator-decorator-D7nAb9KJ.js');
6
+ var _package = require('./package-kgRYEtTJ.js');
7
+ var oneOf = require('./one-of-qu7_EPxf.js');
8
+ require('./create-validator-decorator-DVm_SDrR.js');
9
9
 
10
- const postTooltipCss = () => `:host{display:none}:host([open]){display:contents}post-popovercontainer[arrow]::after{position:absolute;content:"";inset:-13px;z-index:-1}post-popovercontainer{--post-current-bg:var(--post-scheme-color-surface-accent-bg);--post-current-fg:var(--post-scheme-color-surface-accent-fg);--post-popovercontainer-arrow-border-width:var(--post-device-border-width-alternative1);--post-popovercontainer-arrow-border-color:var(--post-scheme-color-surface-accent-fg)}post-popovercontainer::part(post-popovercontainer-border-mask){display:block;box-shadow:inset 0 0 0 var(--post-device-spacing-padding-14) var(--post-scheme-color-surface-accent-bg)}post-popovercontainer::part(post-popovercontainer-content){border:var(--post-device-border-width-alternative1) solid var(--post-scheme-color-surface-accent-fg);border-radius:var(--post-device-border-radius-1);padding:var(--post-device-spacing-padding-14) var(--post-device-spacing-padding-15);font-size:var(--post-device-font-size-9);max-width:var(--post-tooltip-max-width, 280px);word-wrap:break-word;white-space:normal}`;
10
+ const postTooltipCss = () => `:host{display:none}:host([open]){display:contents}post-popovercontainer{--post-current-bg:var(--post-scheme-color-surface-accent-bg);--post-current-fg:var(--post-scheme-color-surface-accent-fg);--post-popovercontainer-arrow-border-width:var(--post-device-border-width-alternative1);--post-popovercontainer-arrow-border-color:var(--post-scheme-color-surface-accent-fg)}post-popovercontainer::part(post-popovercontainer-border-mask){display:block;box-shadow:inset 0 0 0 var(--post-device-spacing-padding-14) var(--post-scheme-color-surface-accent-bg)}post-popovercontainer::part(post-popovercontainer-content){border:var(--post-device-border-width-alternative1) solid var(--post-scheme-color-surface-accent-fg);border-radius:var(--post-device-border-radius-1)}.tooltip-content{box-sizing:border-box;padding:var(--post-device-spacing-padding-14) var(--post-device-spacing-padding-15);font-size:var(--post-device-font-size-9);max-width:var(--post-tooltip-max-width, 280px);word-wrap:break-word;white-space:normal;overflow:hidden}`;
11
11
 
12
12
  var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
13
13
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
@@ -71,11 +71,13 @@ const PostTooltip = class {
71
71
  * @param e Popovercontainer toggle event
72
72
  */
73
73
  handleBeforeToggle(e) {
74
+ // The 'open' attribute needs to be set synchronously for the popover to be measured correctly.
75
+ this.host.toggleAttribute('open', e.detail.willOpen);
74
76
  this.open = e.detail.willOpen;
75
77
  }
76
78
  render() {
77
79
  const popoverClass = `${this.arrow ? 'has-arrow' : ''}`;
78
- return (index.h(index.Host, { key: '62d5983e0ef32f851166d0c1d2c457cac0809fdf', "data-version": _package.version }, index.h("post-popovercontainer", { key: '10150540956510724ab4832ecceb421a7013d983', safeSpace: "trapezoid", class: popoverClass, role: "tooltip", arrow: this.arrow, placement: this.placement, autoHide: true, onPostBeforeToggle: e => this.handleBeforeToggle(e), ref: (el) => (this.popoverRef = el) }, index.h("slot", { key: 'cdfaf0e916afa55ec3f1a7f64003101985560e27' }))));
80
+ return (index.h(index.Host, { key: '083507ae592ce9be50f6b4217a8d13785039478d', "data-version": _package.version }, index.h("post-popovercontainer", { key: 'e0436489bd955cee95b287f35759c364b019be94', safeSpace: true, class: popoverClass, role: "tooltip", arrow: this.arrow, placement: this.placement, autoHide: true, onPostBeforeToggle: e => this.handleBeforeToggle(e), ref: (el) => (this.popoverRef = el) }, index.h("div", { key: '8e6417485a89f56c18e731351de0e9f5db2cdd9a', class: "tooltip-content" }, index.h("slot", { key: 'e4c9fed0c8a8454c20f504e38557abd8ea253a1b' })))));
79
81
  }
80
82
  get host() { return index.getElement(this); }
81
83
  };
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var createValidatorDecorator = require('./create-validator-decorator-D7nAb9KJ.js');
3
+ var createValidatorDecorator = require('./create-validator-decorator-DVm_SDrR.js');
4
4
 
5
5
  /**
6
6
  * Property decorator that validates the property is not empty.
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var createValidatorDecorator = require('./create-validator-decorator-D7nAb9KJ.js');
3
+ var createValidatorDecorator = require('./create-validator-decorator-DVm_SDrR.js');
4
4
 
5
5
  /**
6
6
  * Property decorator that validates the property value is of the specified type.
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var createValidatorDecorator = require('./create-validator-decorator-D7nAb9KJ.js');
3
+ var createValidatorDecorator = require('./create-validator-decorator-DVm_SDrR.js');
4
4
 
5
5
  /**
6
6
  * Property decorator that validates the property value is a valid URL.
@@ -1 +1 @@
1
- :host{display:block;border-block-end:var(--post-device-border-width-default) var(--post-core-border-style-solid) var(--post-scheme-color-interactive-primary-enabled-stroke)}:host:has(.accordion-button:hover){border-block-end-color:var(--post-scheme-color-interactive-primary-hover-stroke)}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host:has(.accordion-button:hover){border-block-end-color:Highlight}}:host([collapsed]) .accordion-button post-icon{transform:rotate(-180deg)}.accordion-header{color:var(--post-scheme-color-interactive-primary-enabled-fg1);font-size:var(--post-device-font-size-5);margin:0;line-height:var(--post-device-line-height-heading);font-weight:var(--post-device-font-weight-extra-black)}.accordion-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;display:flex;position:relative;width:100%;align-items:center;text-align:start;gap:var(--post-device-spacing-gap-7);padding-block:var(--post-device-spacing-padding-19);padding-inline:var(--post-device-spacing-padding-5);border-block-end:var(--post-device-border-width-default) var(--post-core-border-style-solid) rgba(0,0,0,0);cursor:pointer;outline:none !important}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.accordion-button{background-color:ButtonFace !important}.accordion-button:hover{background-color:Highlight !important}}.accordion-button::before{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}.accordion-button:is(:focus-visible,:has(:focus-visible),.pretend-focus)::before{outline-style:var(--post-core-border-style-solid) !important;display:block;content:"";position:absolute;inset:calc(var(--post-device-border-width-default)*-1) 0 calc(var(--post-device-border-width-default)*-1);border-radius:var(--post-device-border-radius-focus)}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.accordion-button:is(:focus-visible,:has(:focus-visible),.pretend-focus)::before{outline-color:Highlight !important}}@supports not selector(:has(:focus-visible)){.accordion-button:is(:focus-visible,:focus-within,.pretend-focus)::before{outline-style:var(--post-core-border-style-solid) !important;display:block;content:"";position:absolute;inset:calc(var(--post-device-border-width-default)*-1) 0 calc(var(--post-device-border-width-default)*-1);border-radius:var(--post-device-border-radius-focus)}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.accordion-button:is(:focus-visible,:focus-within,.pretend-focus)::before{outline-color:Highlight !important}}}.accordion-button slot::slotted(span[slot=header]){flex-grow:1}.accordion-button post-icon{flex:none;width:var(--post-core-dimension-24);aspect-ratio:1;transition:transform 250ms cubic-bezier(0.4, 0, 0.2, 1);transform:var(--post-accordion-icon-initial-transform, none)}.accordion-button.collapsed{padding-block-start:var(--post-device-spacing-padding-19);padding-block-end:var(--post-device-spacing-padding-19)}.accordion-button.collapsed post-icon{transform:rotate(-180deg)}.accordion-button:hover{color:var(--post-scheme-color-interactive-primary-hover-fg1)}.accordion-button>::slotted(.text-truncate){display:block}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.accordion-button:hover,.accordion-button:focus-visible{color:Highlight}}post-collapsible{margin-block-end:calc(var(--post-device-border-width-default)*-1)}.accordion-body{padding-block-start:var(--post-device-spacing-padding-15);padding-block-end:var(--post-device-spacing-padding-block-25);padding-inline:var(--post-device-spacing-padding-5)}.logo-container{display:none;width:var(--post-device-sizing-logo-1);aspect-ratio:1}.logo-container.has-image{display:block}.logo-container slot::slotted(img){display:block;width:100%;height:100%;object-fit:cover}.accordion-button>::slotted(:first-child),.accordion-body>::slotted(:first-child){margin-block-start:0 !important}.accordion-button>::slotted(:last-child),.accordion-body>::slotted(:last-child){margin-block-end:0 !important}
1
+ :host{display:block;border-block-end:var(--post-device-border-width-default) var(--post-core-border-style-solid) var(--post-scheme-color-interactive-primary-enabled-stroke)}:host:has(.accordion-button:hover){border-block-end-color:var(--post-scheme-color-interactive-primary-hover-stroke)}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host:has(.accordion-button:hover){border-block-end-color:Highlight}}:host([collapsed]) .accordion-button post-icon{transform:rotate(-180deg)}.accordion-header{color:var(--post-scheme-color-interactive-primary-enabled-fg1);font-size:var(--post-device-font-size-5);margin:0;line-height:var(--post-device-line-height-heading);font-weight:var(--post-device-font-weight-extra-black)}.accordion-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;display:flex;position:relative;width:100%;align-items:center;text-align:start;gap:var(--post-device-spacing-gap-7);padding-block:var(--post-device-spacing-padding-19);padding-inline:var(--post-device-spacing-padding-5);border-block-end:var(--post-device-border-width-default) var(--post-core-border-style-solid) rgba(0,0,0,0);cursor:pointer;outline:none !important}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.accordion-button{background-color:ButtonFace !important}.accordion-button:hover{background-color:Highlight !important}}.accordion-button::before{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}.accordion-button:focus-visible::before{outline-style:var(--post-core-border-style-solid) !important;display:block;content:"";position:absolute;inset:calc(var(--post-device-border-width-default)*-1) 0 calc(var(--post-device-border-width-default)*-1);border-radius:var(--post-device-border-radius-focus)}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.accordion-button:focus-visible::before{outline-color:Highlight !important}}.accordion-button.pretend-focus::before{outline-style:var(--post-core-border-style-solid) !important;display:block;content:"";position:absolute;inset:calc(var(--post-device-border-width-default)*-1) 0 calc(var(--post-device-border-width-default)*-1);border-radius:var(--post-device-border-radius-focus)}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.accordion-button.pretend-focus::before{outline-color:Highlight !important}}.accordion-button:has(:focus-visible)::before{outline-style:var(--post-core-border-style-solid) !important;display:block;content:"";position:absolute;inset:calc(var(--post-device-border-width-default)*-1) 0 calc(var(--post-device-border-width-default)*-1);border-radius:var(--post-device-border-radius-focus)}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.accordion-button:has(:focus-visible)::before{outline-color:Highlight !important}}@supports not selector(:has(:focus-visible)){.accordion-button:is(:focus-visible,:focus-within,.pretend-focus)::before{outline-style:var(--post-core-border-style-solid) !important;display:block;content:"";position:absolute;inset:calc(var(--post-device-border-width-default)*-1) 0 calc(var(--post-device-border-width-default)*-1);border-radius:var(--post-device-border-radius-focus)}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.accordion-button:is(:focus-visible,:focus-within,.pretend-focus)::before{outline-color:Highlight !important}}}.accordion-button slot::slotted(span[slot=header]){flex-grow:1}.accordion-button post-icon{flex:none;width:var(--post-core-dimension-24);aspect-ratio:1;transition:transform 250ms cubic-bezier(0.4, 0, 0.2, 1);transform:var(--post-accordion-icon-initial-transform, none)}.accordion-button.collapsed{padding-block-start:var(--post-device-spacing-padding-19);padding-block-end:var(--post-device-spacing-padding-19)}.accordion-button.collapsed post-icon{transform:rotate(-180deg)}.accordion-button:hover{color:var(--post-scheme-color-interactive-primary-hover-fg1)}.accordion-button>::slotted(.text-truncate){display:block}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.accordion-button:hover,.accordion-button:focus-visible{color:Highlight}}post-collapsible{margin-block-end:calc(var(--post-device-border-width-default)*-1)}.accordion-body{padding-block-start:var(--post-device-spacing-padding-15);padding-block-end:var(--post-device-spacing-padding-block-25);padding-inline:var(--post-device-spacing-padding-5)}.logo-container{display:none;width:var(--post-device-sizing-logo-1);aspect-ratio:1}.logo-container.has-image{display:block}.logo-container slot::slotted(img){display:block;width:100%;height:100%;object-fit:cover}.accordion-button>::slotted(:first-child),.accordion-body>::slotted(:first-child){margin-block-start:0 !important}.accordion-button>::slotted(:last-child),.accordion-body>::slotted(:last-child){margin-block-end:0 !important}
@@ -6,11 +6,10 @@ export async function getGravatarUrl(email) {
6
6
  const hash = await cryptify(email.trim().toLowerCase());
7
7
  return `https://www.gravatar.com/avatar/${hash}?s=${GRAVATAR_SIZE}&d=${GRAVATAR_DEFAULT}&r=${GRAVATAR_RATING}`;
8
8
  }
9
- export async function cryptify(key) {
9
+ async function cryptify(key) {
10
10
  return await crypto.subtle.digest('SHA-256', new TextEncoder().encode(key)).then(buffer => {
11
11
  return Array.from(new Uint8Array(buffer))
12
12
  .map(bytes => bytes.toString(16).padStart(2, '0'))
13
13
  .join('');
14
14
  });
15
15
  }
16
- export const GRAVATAR_BASE_URL = `https://www.gravatar.com/avatar/{email}?s=${GRAVATAR_SIZE}&d=${GRAVATAR_DEFAULT}&r=${GRAVATAR_RATING}`;
@@ -11,26 +11,34 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
11
11
  import { Pattern, Required, Type } from "../../utils/index";
12
12
  import { version } from "../../../../package";
13
13
  import { h, Host } from "@stencil/core";
14
- import { cryptify, GRAVATAR_BASE_URL } from "./avatar-utils";
14
+ import { getGravatarUrl } from "./avatar-utils";
15
15
  const emailPattern = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/;
16
16
  var AvatarType;
17
17
  (function (AvatarType) {
18
18
  AvatarType["Slotted"] = "slotted";
19
19
  AvatarType["Image"] = "image";
20
20
  AvatarType["Initials"] = "initials";
21
- AvatarType[AvatarType["Null"] = null] = "Null";
22
21
  })(AvatarType || (AvatarType = {}));
23
22
  /**
24
23
  * @slot default - Slot for inserting a custom image as avatar.
25
24
  */
26
25
  export class PostAvatar {
27
26
  constructor() {
28
- this.avatarType = null;
27
+ this.slottedImage = null;
28
+ this.avatarType = AvatarType.Initials;
29
29
  this.imageUrl = '';
30
30
  this.imageAlt = '';
31
- this.initials = '';
32
- // To handle email updates and reset the storage item
33
- this.storageKey = '';
31
+ this.showSlottedImage = () => {
32
+ if (!this.slottedImage)
33
+ return;
34
+ this.slottedImage.style.display = 'block';
35
+ this.avatarType = AvatarType.Slotted;
36
+ };
37
+ this.hideSlottedImage = () => {
38
+ if (this.slottedImage)
39
+ this.slottedImage.style.display = 'none';
40
+ this.avatarType = AvatarType.Initials;
41
+ };
34
42
  }
35
43
  updateEmail() {
36
44
  this.getAvatarImage();
@@ -40,6 +48,7 @@ export class PostAvatar {
40
48
  this.slottedImage = this.host.querySelector('img');
41
49
  const imageUrl = this.slottedImage?.getAttribute('src');
42
50
  if (!imageUrl) {
51
+ this.imageUrl = '';
43
52
  if (this.email?.match(emailPattern)) {
44
53
  imageLoaded = await this.getImageByProp(this.email, this.fetchImageByEmail.bind(this));
45
54
  }
@@ -48,85 +57,97 @@ export class PostAvatar {
48
57
  }
49
58
  }
50
59
  else {
51
- const slottedImageLoaded = await this.getImageByProp(imageUrl, this.fetchSlottedImage.bind(this));
52
- if (!slottedImageLoaded) {
53
- this.slottedImage.style.display = 'none';
54
- this.avatarType = AvatarType.Initials;
55
- }
56
- else {
57
- this.slottedImage.style.display = 'block';
58
- }
60
+ this.imageUrl = '';
61
+ this.updateSlottedImageVisibility();
59
62
  }
60
63
  }
61
- async getImageByProp(prop, fetchImage) {
64
+ async getImageByProp(prop, loadImage, avatarType = AvatarType.Image) {
62
65
  if (!prop)
63
66
  return false;
64
- let imageResponse;
65
67
  try {
66
- imageResponse = await fetchImage(prop);
68
+ const imageUrl = await loadImage(prop);
69
+ if (avatarType === AvatarType.Image) {
70
+ this.imageUrl = imageUrl;
71
+ this.imageAlt = `${[this.firstname, this.lastname].filter(Boolean).join(' ')} avatar`;
72
+ }
73
+ this.avatarType = avatarType;
74
+ return true;
67
75
  }
68
76
  catch (error) {
69
77
  console.info('Loading avatar image failed.', error);
70
78
  return false;
71
79
  }
72
- if (!imageResponse?.ok) {
73
- return false;
80
+ }
81
+ async fetchImageByEmail(email) {
82
+ return await this.loadImage(await getGravatarUrl(email));
83
+ }
84
+ // The slotted image stays hidden until it has successfully loaded.
85
+ updateSlottedImageVisibility() {
86
+ if (this.slottedImage?.complete && this.slottedImage.naturalWidth > 0) {
87
+ this.showSlottedImage();
74
88
  }
75
89
  else {
76
- this.imageUrl = imageResponse.url;
77
- this.imageAlt = `${this.firstname} ${this.lastname} avatar`;
78
- this.avatarType = AvatarType.Image;
79
- return true;
90
+ this.hideSlottedImage();
80
91
  }
81
92
  }
82
- async fetchImageByEmail() {
83
- const email = await cryptify(this.email);
84
- const imageUrl = GRAVATAR_BASE_URL.replace('{email}', email);
85
- return await fetch(imageUrl);
86
- }
87
- async fetchSlottedImage(imageUrl) {
88
- return await fetch(imageUrl, { method: 'HEAD' });
89
- }
90
- slotChanged() {
91
- const slot = this.host.shadowRoot.querySelector('slot');
92
- const assignedNodes = slot?.assignedNodes({ flatten: true }) || [];
93
- assignedNodes.forEach(node => {
94
- if (node.nodeType === Node.ELEMENT_NODE) {
95
- const el = node;
96
- if (el.tagName === 'IMG') {
97
- this.observeImageSrcChanges(el);
98
- }
99
- }
93
+ loadImage(imageUrl) {
94
+ return new Promise((resolve, reject) => {
95
+ const image = new Image();
96
+ image.addEventListener('load', () => resolve(imageUrl), { once: true });
97
+ image.addEventListener('error', () => reject(new Error(`Could not load ${imageUrl}`)), {
98
+ once: true,
99
+ });
100
+ image.src = imageUrl;
100
101
  });
102
+ }
103
+ slotChanged(event) {
104
+ const slot = event.target;
105
+ const image = slot
106
+ .assignedElements({ flatten: true })
107
+ .find(element => element instanceof HTMLImageElement);
108
+ if (image instanceof HTMLImageElement) {
109
+ this.observeSlottedImage(image);
110
+ return;
111
+ }
112
+ this.disconnectSlottedImage();
113
+ this.slottedImage = null;
101
114
  this.getAvatarImage();
102
115
  }
103
116
  // Observe the Slotted image src attribute and update the image
104
- observeImageSrcChanges(img) {
105
- if (this.slottedImageObserver) {
106
- this.slottedImageObserver.disconnect();
107
- }
108
- this.slottedImageObserver = new MutationObserver(mutations => {
109
- mutations.forEach(mutation => {
110
- if (mutation.type === 'attributes' && mutation.attributeName === 'src') {
111
- this.getAvatarImage();
112
- }
113
- });
114
- });
117
+ observeSlottedImage(img) {
118
+ this.disconnectSlottedImage();
119
+ this.slottedImage = img;
120
+ img.addEventListener('load', this.showSlottedImage);
121
+ img.addEventListener('error', this.hideSlottedImage);
122
+ this.slottedImageObserver = new MutationObserver(() => this.getAvatarImage());
115
123
  this.slottedImageObserver.observe(img, { attributes: true, attributeFilter: ['src'] });
124
+ this.updateSlottedImageVisibility();
116
125
  }
117
- connectedCallback() {
126
+ disconnectSlottedImage() {
127
+ this.slottedImageObserver?.disconnect();
128
+ if (this.slottedImage) {
129
+ this.slottedImage.removeEventListener('load', this.showSlottedImage);
130
+ this.slottedImage.removeEventListener('error', this.hideSlottedImage);
131
+ }
132
+ }
133
+ componentWillLoad() {
118
134
  //This provides a fallback by showing the initials while the image is still loading or delayed.
119
135
  this.avatarType = AvatarType.Initials;
120
136
  this.getAvatarImage();
121
137
  }
138
+ disconnectedCallback() {
139
+ this.disconnectSlottedImage();
140
+ }
122
141
  render() {
123
- const names = [this.firstname, this.lastname].filter(Boolean).map(n => n.trim());
142
+ const names = [this.firstname, this.lastname]
143
+ .filter((name) => typeof name === 'string')
144
+ .map(name => name.trim());
124
145
  const initials = names
125
146
  .map(n => n.charAt(0))
126
147
  .join('')
127
148
  .trim();
128
149
  const fullname = names.join(' ');
129
- return (h(Host, { key: 'ba9c39d64f6a1b77131ba8c603c9be3aad113c53', "data-version": version }, h("span", { key: '27a9ac87e8978fabf1717f3eb978e39d06670507', class: this.avatarType === 'slotted' ? '' : 'd-none' }, h("slot", { key: '3fa13670176f2fc3a79a8b11659962f433c37c2e', onSlotchange: this.slotChanged.bind(this) })), this.avatarType === 'image' && h("img", { key: '232099852c2ad8f2c4660eb1077c6d618092cdca', src: this.imageUrl, alt: this.imageAlt }), this.avatarType === 'initials' && (h("span", { key: 'e6b3bf751a95997a2abef2a16dcd8e2c78d308fa', class: "initials" }, initials, h("span", { key: '8d869a374678094e2ec5abc146b0b981c9079c15' }, this.description ?? fullname)))));
150
+ return (h(Host, { key: 'ccba82ea3d543a8fad108ea7a8dd30bf6715c132', "data-version": version }, h("span", { key: '5e7b58d3eeb6bdf49c8a81f36b4d7fffa5b925cc' }, h("slot", { key: '7b91589fbccdef4e29e3f5f3f58607887adac559', onSlotchange: event => this.slotChanged(event) })), this.avatarType === AvatarType.Image && h("img", { key: '65e9e2945592323e54e08d8152e7571222ad728d', src: this.imageUrl, alt: this.imageAlt }), this.avatarType === AvatarType.Initials && (h("span", { key: 'd4305127e6c77239ab4bf3226aacc153277732cc', class: "initials" }, initials, h("span", { key: '5e681cb3205708fc42706d20c5d37a097f290898' }, this.description ?? fullname)))));
130
151
  }
131
152
  static get is() { return "post-avatar"; }
132
153
  static get encapsulation() { return "shadow"; }
@@ -222,12 +243,9 @@ export class PostAvatar {
222
243
  }
223
244
  static get states() {
224
245
  return {
225
- "slottedImage": {},
226
246
  "avatarType": {},
227
247
  "imageUrl": {},
228
- "imageAlt": {},
229
- "initials": {},
230
- "storageKey": {}
248
+ "imageAlt": {}
231
249
  };
232
250
  }
233
251
  static get elementRef() { return "host"; }
@@ -1 +1 @@
1
- :host{opacity:0;--post-floating-button-position-top: var(--post-device-position-4);--post-back-to-top-position-top: calc( var(--post-header-height) + var(--post-floating-button-position-top) );--post-back-to-top-elevation: var(--post-device-elevation-300);position:fixed;z-index:1019;inset-block-start:var(--post-back-to-top-position-top);inset-inline-end:var(--post-device-position-1)}:host .back-to-top{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;box-shadow:var(--post-back-to-top-elevation);cursor:pointer;border-radius:var(--post-device-border-radius-round);width:var(--post-device-sizing-interactive-button-height-2);height:var(--post-device-sizing-interactive-button-height-2);border:var(--post-device-border-width-default) solid var(--post-scheme-color-interactive-button-secondary-enabled-stroke);color:var(--post-scheme-color-interactive-button-secondary-enabled-fg);background-color:var(--post-scheme-color-interactive-button-secondary-enabled-bg);display:flex;align-items:center;justify-content:center}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host .back-to-top{background-color:ButtonFace !important}:host .back-to-top:hover{background-color:Highlight !important}}:host .back-to-top{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}:host .back-to-top: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){:host .back-to-top:is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-color:Highlight !important}}@supports not selector(:has(:focus-visible)){:host .back-to-top: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){:host .back-to-top:is(:focus-visible,:focus-within,.pretend-focus){outline-color:Highlight !important}}}:host .back-to-top:hover{border-color:var(--post-scheme-color-interactive-button-secondary-hover-stroke);color:var(--post-scheme-color-interactive-button-secondary-hover-fg);background-color:var(--post-scheme-color-interactive-button-secondary-hover-bg)}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host .back-to-top:hover{color:HighlightText !important}}:host .back-to-top post-icon{height:var(--post-device-sizing-interactive-button-icon-3);width:var(--post-device-sizing-interactive-button-icon-3)}:host .visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);border:0}
1
+ :host{opacity:0;--post-floating-button-position-top: var(--post-device-position-4);--post-back-to-top-position-top: calc( var(--post-header-height) + var(--post-floating-button-position-top) );--post-back-to-top-elevation: var(--post-device-elevation-300);position:fixed;z-index:1019;inset-block-start:var(--post-back-to-top-position-top);inset-inline-end:var(--post-device-position-1)}:host .back-to-top{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;box-shadow:var(--post-back-to-top-elevation);cursor:pointer;border-radius:var(--post-device-border-radius-round);width:var(--post-device-sizing-interactive-button-height-2);height:var(--post-device-sizing-interactive-button-height-2);border:var(--post-device-border-width-default) solid var(--post-scheme-color-interactive-button-secondary-enabled-stroke);color:var(--post-scheme-color-interactive-button-secondary-enabled-fg);background-color:var(--post-scheme-color-interactive-button-secondary-enabled-bg);display:flex;align-items:center;justify-content:center}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host .back-to-top{background-color:ButtonFace !important}:host .back-to-top:hover{background-color:Highlight !important}}:host .back-to-top{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}:host .back-to-top:focus-visible{outline-style:var(--post-core-border-style-solid) !important}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host .back-to-top:focus-visible{outline-color:Highlight !important}}:host .back-to-top.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){:host .back-to-top.pretend-focus{outline-color:Highlight !important}}:host .back-to-top:has(:focus-visible){outline-style:var(--post-core-border-style-solid) !important}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host .back-to-top:has(:focus-visible){outline-color:Highlight !important}}@supports not selector(:has(:focus-visible)){:host .back-to-top: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){:host .back-to-top:is(:focus-visible,:focus-within,.pretend-focus){outline-color:Highlight !important}}}:host .back-to-top:hover{border-color:var(--post-scheme-color-interactive-button-secondary-hover-stroke);color:var(--post-scheme-color-interactive-button-secondary-hover-fg);background-color:var(--post-scheme-color-interactive-button-secondary-hover-bg)}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host .back-to-top:hover{color:HighlightText !important}}:host .back-to-top post-icon{height:var(--post-device-sizing-interactive-button-icon-3);width:var(--post-device-sizing-interactive-button-icon-3)}:host .visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);border:0}
@@ -1,4 +1,4 @@
1
1
  :host{position:relative;display:grid;grid-template-columns:1fr;grid-auto-rows:auto;grid-auto-flow:row;min-height:calc(var(--post-device-sizing-notification-icon-2) + (2 * var(--post-device-spacing-padding-10)));padding:var(--post-device-spacing-padding-10);padding-inline-start:calc(
2
2
  var(--post-device-spacing-padding-10) + var(--post-device-sizing-notification-icon-2) +
3
3
  var(--post-device-spacing-gap-inline-6)
4
- );color:var(--post-current-fg);border-style:var(--post-core-border-style-solid);border-width:var(--post-device-border-width-default);border-radius:var(--post-device-border-radius-2);box-shadow:var(--post-device-elevation-100);background-color:var(--post-scheme-color-interactive-notification-info-bg);border-color:var(--post-scheme-color-interactive-notification-info-stroke)}:host::before{content:"";display:block;position:absolute;height:var(--post-device-sizing-notification-icon-2);width:var(--post-device-sizing-notification-icon-2);inset-block-start:var(--post-device-spacing-padding-10);inset-inline-start:var(--post-device-spacing-padding-10);background-image:var(--post-signal-icon-info)}:host([type=info]){background-color:var(--post-scheme-color-interactive-notification-info-bg);border-color:var(--post-scheme-color-interactive-notification-info-stroke)}:host([type=info])::before{background-image:var(--post-signal-icon-info)}:host([type=success]){background-color:var(--post-scheme-color-interactive-notification-success-bg);border-color:var(--post-scheme-color-interactive-notification-success-stroke)}:host([type=success])::before{background-image:var(--post-signal-icon-success)}:host([type=warning]){background-color:var(--post-scheme-color-interactive-notification-warning-bg);border-color:var(--post-scheme-color-interactive-notification-warning-stroke)}:host([type=warning])::before{background-image:var(--post-signal-icon-warning)}:host([type=error]){background-color:var(--post-scheme-color-interactive-notification-error-bg);border-color:var(--post-scheme-color-interactive-notification-error-stroke)}:host([type=error])::before{background-image:var(--post-signal-icon-error)}.post-banner-content{display:grid;grid-template-columns:1fr;row-gap:var(--post-device-spacing-gap-block-1);overflow-x:auto}.actions{display:flex;flex-direction:row-reverse;justify-content:flex-start;align-items:center;margin-block-start:var(--post-device-spacing-padding-block-10);gap:var(--post-device-spacing-gap-1)}@media screen and (min-width: 0)and (max-width: 599.98px){.actions{flex-direction:column;align-items:stretch}}::slotted(*){margin-block:0 !important}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host{border-color:CanvasText}:host::before{color:CanvasText}}
4
+ );color:var(--post-current-fg);border-style:var(--post-core-border-style-solid);border-width:var(--post-device-border-width-default);border-radius:var(--post-device-border-radius-2);box-shadow:var(--post-device-elevation-100);background-color:var(--post-scheme-color-interactive-notification-info-bg);border-color:var(--post-scheme-color-interactive-notification-info-stroke)}:host::before{content:"";display:block;position:absolute;height:var(--post-device-sizing-notification-icon-2);width:var(--post-device-sizing-notification-icon-2);inset-block-start:var(--post-device-spacing-padding-10);inset-inline-start:var(--post-device-spacing-padding-10);background-image:var(--post-signal-icon-info)}:host([type=info]){background-color:var(--post-scheme-color-interactive-notification-info-bg);border-color:var(--post-scheme-color-interactive-notification-info-stroke)}:host([type=info])::before{background-image:var(--post-signal-icon-info)}:host([type=success]){background-color:var(--post-scheme-color-interactive-notification-success-bg);border-color:var(--post-scheme-color-interactive-notification-success-stroke)}:host([type=success])::before{background-image:var(--post-signal-icon-success)}:host([type=warning]){background-color:var(--post-scheme-color-interactive-notification-warning-bg);border-color:var(--post-scheme-color-interactive-notification-warning-stroke)}:host([type=warning])::before{background-image:var(--post-signal-icon-warning)}:host([type=error]){background-color:var(--post-scheme-color-interactive-notification-error-bg);border-color:var(--post-scheme-color-interactive-notification-error-stroke)}:host([type=error])::before{background-image:var(--post-signal-icon-error)}.post-banner-content{--post-banner-focus-room: calc( var(--post-device-border-width-focus) + var(--post-device-spacing-padding-2) );display:grid;grid-template-columns:1fr;row-gap:var(--post-device-spacing-gap-block-1);overflow-x:auto;padding:var(--post-banner-focus-room);margin:calc(-1*var(--post-banner-focus-room))}.actions{display:flex;flex-direction:row-reverse;justify-content:flex-start;align-items:center;margin-block-start:var(--post-device-spacing-padding-block-10);gap:var(--post-device-spacing-gap-1)}@media screen and (min-width: 0)and (max-width: 599.98px){.actions{flex-direction:column;align-items:stretch}}::slotted(*){margin-block:0 !important}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host{border-color:CanvasText}:host::before{color:CanvasText}}
@@ -1 +1 @@
1
- a{-webkit-text-decoration:var(--post-core-text-decoration-underline);text-decoration:var(--post-core-text-decoration-underline);border-radius:var(--post-device-border-radius-focus);color:var(--post-current-fg)}a:hover{color:var(--post-scheme-color-interactive-primary-hover-fg1)}a{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}a: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){a:is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-color:Highlight !important}}@supports not selector(:has(:focus-visible)){a: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){a:is(:focus-visible,:focus-within,.pretend-focus){outline-color:Highlight !important}}}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){a,a:focus{color:LinkText !important}a:hover{text-decoration-thickness:2px}a:visited{color:VisitedText}a.btn:not(.btn-link){border-color:ButtonBorder !important}a.btn.btn-tertiary.px-0{border:0 !important}a.btn.btn-tertiary.px-0:not(:hover){text-decoration:underline}}:host([variant=menuitem]) :is(a,span),:host([variant=menuitem]) ::slotted(a){white-space:normal;overflow-wrap:anywhere;hyphens:auto;line-break:strict}:host([variant=listitem]){display:flex;align-items:flex-start;padding-block:var(--post-device-spacing-padding-block-6);gap:var(--post-device-spacing-gap-inline-5)}:host([variant=listitem]) :is(button,a){display:inline-flex;position:relative;align-items:center;justify-content:center;max-width:100%;overflow:hidden;transition:opacity 250ms,border-color 250ms,background-color 250ms,color 250ms;border-width:var(--post-device-border-width-default);border-style:solid;border-color:rgba(0,0,0,0);border-radius:var(--post-device-border-radius-round);background-color:rgba(0,0,0,0);box-shadow:none;font-family:inherit;font-size:var(--post-device-font-size-6);font-weight:var(--post-device-font-weight-bold);text-decoration:none;white-space:nowrap;cursor:pointer;font:inherit;padding:unset;border:unset;border-radius:var(--post-device-border-radius-focus);color:var(--post-scheme-color-interactive-primary-enabled-fg1);text-decoration:var(--post-core-text-decoration-none)}:host([variant=listitem]) :is(button,a):not(:disabled):hover{text-decoration:none}:host([variant=listitem]) :is(button,a):disabled{border-style:var(--post-core-border-style-dash);cursor:unset}:host([variant=listitem]) :is(button,a){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}:host([variant=listitem]) :is(button,a):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){:host([variant=listitem]) :is(button,a):is(:focus-visible,:has(:focus-visible),.pretend-focus){outline-color:Highlight !important}}@supports not selector(:has(:focus-visible)){:host([variant=listitem]) :is(button,a):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){:host([variant=listitem]) :is(button,a):is(:focus-visible,:focus-within,.pretend-focus){outline-color:Highlight !important}}}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host([variant=listitem]) :is(button,a){border-width:1px !important;transition:none}:host([variant=listitem]) :is(button,a):is(button){background-color:ButtonFace !important;border-color:ButtonBorder !important}}:host([variant=listitem]) :is(button,a):hover{color:var(--post-scheme-color-interactive-primary-hover-fg1);text-decoration:var(--post-core-text-decoration-underline)}:host([variant=listitem])::before{mask-image:var(--post-icon-chevronright);background-color:currentColor;flex:0 0 auto;content:"";display:block;height:var(--post-device-sizing-interactive-icon-size4);width:var(--post-device-sizing-interactive-icon-size4);margin-block:calc(var(--post-device-spacing-padding-35) - 1*var(--post-device-spacing-padding-block-6));margin-inline:var(--post-core-dimension-4)}:root,:host{--post-icon-chevronright: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxkZWZzPjxzeW1ib2wgaWQ9ImktY2hldnJvbnJpZ2h0Ij48c3ltYm9sIGlkPSJzMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiI+PHBhdGggZD0iTTUuMzggMTRjLS4xOSAwLS4zOC0uMDctLjUzLS4yMmEuNzU0Ljc1NCAwIDAgMSAwLTEuMDZMOS41NyA4IDQuODUgMy4yOGMtLjI5LS4yOS0uMjktLjc3IDAtMS4wNnMuNzctLjI5IDEuMDYgMEwxMS42OSA4bC01Ljc4IDUuNzhjLS4xNS4xNS0uMzQuMjItLjUzLjIyIi8+PC9zeW1ib2w+PHN5bWJvbCBpZD0iczI0IiB2aWV3Qm94PSIwIDAgMjQgMjQiPjxwYXRoIGQ9Ik04LjA3IDIwLjcyYy0uMjIgMC0uNDUtLjA4LS42Mi0uMjZhLjg4Ljg4IDAgMCAxIDAtMS4yNGw3LjI2LTcuMjZMNy40NSA0LjdhLjg4Ljg4IDAgMCAxIDAtMS4yNGMuMzQtLjM0LjktLjM0IDEuMjQgMGw4LjUgOC41LTguNDkgOC40OWMtLjE3LjE3LS40LjI2LS42Mi4yNloiLz48L3N5bWJvbD48c3ltYm9sIGlkPSJzMzIiIHZpZXdCb3g9IjAgMCAzMiAzMiI+PHBhdGggZD0iTTEwLjc2IDI3LjVjLS4yNiAwLS41MS0uMS0uNzEtLjI5YS45OTYuOTk2IDAgMCAxIDAtMS40MWw5Ljc5LTkuNzktOS43OS05LjgxYS45OTYuOTk2IDAgMSAxIDEuNDEtMS40MUwyMi42NyAxNiAxMS40NiAyNy4yMWMtLjIuMi0uNDUuMjktLjcxLjI5WiIvPjwvc3ltYm9sPjxzeW1ib2wgaWQ9InM0MCIgdmlld0JveD0iMCAwIDQwIDQwIj48cGF0aCBkPSJNMTMuNSAzNC4yMmExLjEyMyAxLjEyMyAwIDAgMS0uOC0xLjkybDEyLjMzLTEyLjMzTDEyLjcgNy42M2MtLjQ0LS40NC0uNDQtMS4xNSAwLTEuNTlzMS4xNS0uNDQgMS41OSAwbDEzLjkzIDEzLjkzTDE0LjMgMzMuODljLS4yMi4yMi0uNTEuMzMtLjguMzMiLz48L3N5bWJvbD48c3ltYm9sIGlkPSJzNDgiIHZpZXdCb3g9IjAgMCA0OCA0OCI+PHBhdGggZD0iTTE2LjE0IDQxYy0uMzIgMC0uNjQtLjEyLS44OC0uMzdhMS4yNSAxLjI1IDAgMCAxIDAtMS43N2wxNC44Ny0xNC44N0wxNS4yNSA5LjExYy0uNDktLjQ5LS40OS0xLjI4IDAtMS43N3MxLjI4LS40OSAxLjc3IDBsMTYuNjQgMTYuNjQtMTYuNjMgMTYuNjNjLS4yNC4yNC0uNTYuMzctLjg4LjM3WiIvPjwvc3ltYm9sPjxzeW1ib2wgaWQ9InM2NCIgdmlld0JveD0iMCAwIDY0IDY0Ij48cGF0aCBkPSJNMjEuNTEgNTQuNGExLjM3NiAxLjM3NiAwIDAgMS0uOTctMi4zNWwyMC4wMy0yMC4wMy0yMC4wNC0yMC4wM2MtLjU0LS41NC0uNTQtMS40MSAwLTEuOTVzMS40MS0uNTQgMS45NSAwbDIxLjk4IDIxLjk5TDIyLjQ5IDU0Yy0uMjcuMjctLjYyLjQtLjk3LjRaIi8+PC9zeW1ib2w+PHVzZSBzdHlsZT0iZGlzcGxheTogdmFyKC0tczE2LCBub25lKSIgaHJlZj0iI3MxNiIvPjx1c2Ugc3R5bGU9ImRpc3BsYXk6IHZhcigtLXMyNCwgbm9uZSkiIGhyZWY9IiNzMjQiLz48dXNlIHN0eWxlPSJkaXNwbGF5OiB2YXIoLS1zMzIsIG5vbmUpIiBocmVmPSIjczMyIi8+PHVzZSBzdHlsZT0iZGlzcGxheTogdmFyKC0tczQwLCBub25lKSIgaHJlZj0iI3M0MCIvPjx1c2Ugc3R5bGU9ImRpc3BsYXk6IHZhcigtLXM0OCwgbm9uZSkiIGhyZWY9IiNzNDgiLz48dXNlIHN0eWxlPSJkaXNwbGF5OiB2YXIoLS1zNjQsIG5vbmUpIiBocmVmPSIjczY0Ii8+PC9zeW1ib2w+PC9kZWZzPjxzdHlsZT5AbWVkaWEgKG1heC13aWR0aDogMjMuOThweCkge2d7LS1zMTY6YmxvY2s7fX1AbWVkaWEgKG1pbi13aWR0aDogMjRweCkgYW5kIChtYXgtd2lkdGg6IDMxLjk4cHgpIHtney0tczI0OmJsb2NrO319QG1lZGlhIChtaW4td2lkdGg6IDMycHgpIGFuZCAobWF4LXdpZHRoOiAzOS45OHB4KSB7Z3stLXMzMjpibG9jazt9fUBtZWRpYSAobWluLXdpZHRoOiA0MHB4KSBhbmQgKG1heC13aWR0aDogNDcuOThweCkge2d7LS1zNDA6YmxvY2s7fX1AbWVkaWEgKG1pbi13aWR0aDogNDhweCkgYW5kIChtYXgtd2lkdGg6IDYzLjk4cHgpIHtney0tczQ4OmJsb2NrO319QG1lZGlhIChtaW4td2lkdGg6IDY0cHgpIHtney0tczY0OmJsb2NrO319PC9zdHlsZT48Zz48dXNlIGhyZWY9IiNpLWNoZXZyb25yaWdodCIvPjwvZz48L3N2Zz4=")}:host([variant=listitem]):not([standalone]:not([standalone=false])) ::slotted(a){white-space:nowrap}:host([variant=listitem]):host([selected]:not([selected=false])){flex-shrink:0}:host([variant=listitem]):host([selected]:not([selected=false])) :is(a,span){color:var(--post-scheme-color-interactive-primary-selected-fg1);font-weight:var(--post-device-font-weight-bold);text-decoration:var(--post-core-text-decoration-none)}:host([variant=listitem]):host([standalone]:not([standalone=false])){flex-shrink:1}:host([variant=listitem]):host([standalone]:not([standalone=false])) :is(a,span),:host([variant=listitem]):host([standalone]:not([standalone=false])) ::slotted(a){white-space:normal;overflow-wrap:anywhere;hyphens:auto;line-break:strict}
1
+ a{-webkit-text-decoration:var(--post-core-text-decoration-underline);text-decoration:var(--post-core-text-decoration-underline);border-radius:var(--post-device-border-radius-focus);color:var(--post-current-fg)}a:hover{color:var(--post-scheme-color-interactive-primary-hover-fg1)}a{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}a:focus-visible{outline-style:var(--post-core-border-style-solid) !important}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){a:focus-visible{outline-color:Highlight !important}}a.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){a.pretend-focus{outline-color:Highlight !important}}a:has(:focus-visible){outline-style:var(--post-core-border-style-solid) !important}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){a:has(:focus-visible){outline-color:Highlight !important}}@supports not selector(:has(:focus-visible)){a: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){a:is(:focus-visible,:focus-within,.pretend-focus){outline-color:Highlight !important}}}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){a,a:focus{color:LinkText !important}a:hover{text-decoration-thickness:2px}a:visited{color:VisitedText}a.btn:not(.btn-link){border-color:ButtonBorder !important}a.btn.btn-tertiary.px-0{border:0 !important}a.btn.btn-tertiary.px-0:not(:hover){text-decoration:underline}}:host([variant=menuitem]) :is(a,span),:host([variant=menuitem]) ::slotted(a){white-space:normal;overflow-wrap:anywhere;hyphens:auto;line-break:strict}:host([variant=listitem]){display:flex;align-items:flex-start;padding-block:var(--post-device-spacing-padding-block-6);gap:var(--post-device-spacing-gap-inline-5)}:host([variant=listitem]) :is(button,a){display:inline-flex;position:relative;align-items:center;justify-content:center;max-width:100%;overflow:hidden;transition:opacity 250ms,border-color 250ms,background-color 250ms,color 250ms;border-width:var(--post-device-border-width-default);border-style:solid;border-color:rgba(0,0,0,0);border-radius:var(--post-device-border-radius-round);background-color:rgba(0,0,0,0);box-shadow:none;font-family:inherit;font-size:var(--post-device-font-size-6);font-weight:var(--post-device-font-weight-bold);text-decoration:none;white-space:nowrap;cursor:pointer;font:inherit;padding:unset;border:unset;border-radius:var(--post-device-border-radius-focus);color:var(--post-scheme-color-interactive-primary-enabled-fg1);text-decoration:var(--post-core-text-decoration-none)}:host([variant=listitem]) :is(button,a):not(:disabled):hover{text-decoration:none}:host([variant=listitem]) :is(button,a):disabled{border-style:var(--post-core-border-style-dash);cursor:unset}:host([variant=listitem]) :is(button,a){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}:host([variant=listitem]) :is(button,a):focus-visible{outline-style:var(--post-core-border-style-solid) !important}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host([variant=listitem]) :is(button,a):focus-visible{outline-color:Highlight !important}}:host([variant=listitem]) :is(button,a).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){:host([variant=listitem]) :is(button,a).pretend-focus{outline-color:Highlight !important}}:host([variant=listitem]) :is(button,a):has(:focus-visible){outline-style:var(--post-core-border-style-solid) !important}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host([variant=listitem]) :is(button,a):has(:focus-visible){outline-color:Highlight !important}}@supports not selector(:has(:focus-visible)){:host([variant=listitem]) :is(button,a):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){:host([variant=listitem]) :is(button,a):is(:focus-visible,:focus-within,.pretend-focus){outline-color:Highlight !important}}}@media(forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){:host([variant=listitem]) :is(button,a){border-width:1px !important;transition:none}:host([variant=listitem]) :is(button,a):is(button){background-color:ButtonFace !important;border-color:ButtonBorder !important}}:host([variant=listitem]) :is(button,a):hover{color:var(--post-scheme-color-interactive-primary-hover-fg1);text-decoration:var(--post-core-text-decoration-underline)}:host([variant=listitem])::before{mask-image:var(--post-icon-chevronright);background-color:currentColor;flex:0 0 auto;content:"";display:block;height:var(--post-device-sizing-interactive-icon-size4);width:var(--post-device-sizing-interactive-icon-size4);margin-block:calc(var(--post-device-spacing-padding-35) - 1*var(--post-device-spacing-padding-block-6));margin-inline:var(--post-core-dimension-4)}:root,:host{--post-icon-chevronright: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxkZWZzPjxzeW1ib2wgaWQ9ImktY2hldnJvbnJpZ2h0Ij48c3ltYm9sIGlkPSJzMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiI+PHBhdGggZD0iTTUuMzggMTRjLS4xOSAwLS4zOC0uMDctLjUzLS4yMmEuNzU0Ljc1NCAwIDAgMSAwLTEuMDZMOS41NyA4IDQuODUgMy4yOGMtLjI5LS4yOS0uMjktLjc3IDAtMS4wNnMuNzctLjI5IDEuMDYgMEwxMS42OSA4bC01Ljc4IDUuNzhjLS4xNS4xNS0uMzQuMjItLjUzLjIyIi8+PC9zeW1ib2w+PHN5bWJvbCBpZD0iczI0IiB2aWV3Qm94PSIwIDAgMjQgMjQiPjxwYXRoIGQ9Ik04LjA3IDIwLjcyYy0uMjIgMC0uNDUtLjA4LS42Mi0uMjZhLjg4Ljg4IDAgMCAxIDAtMS4yNGw3LjI2LTcuMjZMNy40NSA0LjdhLjg4Ljg4IDAgMCAxIDAtMS4yNGMuMzQtLjM0LjktLjM0IDEuMjQgMGw4LjUgOC41LTguNDkgOC40OWMtLjE3LjE3LS40LjI2LS42Mi4yNloiLz48L3N5bWJvbD48c3ltYm9sIGlkPSJzMzIiIHZpZXdCb3g9IjAgMCAzMiAzMiI+PHBhdGggZD0iTTEwLjc2IDI3LjVjLS4yNiAwLS41MS0uMS0uNzEtLjI5YS45OTYuOTk2IDAgMCAxIDAtMS40MWw5Ljc5LTkuNzktOS43OS05LjgxYS45OTYuOTk2IDAgMSAxIDEuNDEtMS40MUwyMi42NyAxNiAxMS40NiAyNy4yMWMtLjIuMi0uNDUuMjktLjcxLjI5WiIvPjwvc3ltYm9sPjxzeW1ib2wgaWQ9InM0MCIgdmlld0JveD0iMCAwIDQwIDQwIj48cGF0aCBkPSJNMTMuNSAzNC4yMmExLjEyMyAxLjEyMyAwIDAgMS0uOC0xLjkybDEyLjMzLTEyLjMzTDEyLjcgNy42M2MtLjQ0LS40NC0uNDQtMS4xNSAwLTEuNTlzMS4xNS0uNDQgMS41OSAwbDEzLjkzIDEzLjkzTDE0LjMgMzMuODljLS4yMi4yMi0uNTEuMzMtLjguMzMiLz48L3N5bWJvbD48c3ltYm9sIGlkPSJzNDgiIHZpZXdCb3g9IjAgMCA0OCA0OCI+PHBhdGggZD0iTTE2LjE0IDQxYy0uMzIgMC0uNjQtLjEyLS44OC0uMzdhMS4yNSAxLjI1IDAgMCAxIDAtMS43N2wxNC44Ny0xNC44N0wxNS4yNSA5LjExYy0uNDktLjQ5LS40OS0xLjI4IDAtMS43N3MxLjI4LS40OSAxLjc3IDBsMTYuNjQgMTYuNjQtMTYuNjMgMTYuNjNjLS4yNC4yNC0uNTYuMzctLjg4LjM3WiIvPjwvc3ltYm9sPjxzeW1ib2wgaWQ9InM2NCIgdmlld0JveD0iMCAwIDY0IDY0Ij48cGF0aCBkPSJNMjEuNTEgNTQuNGExLjM3NiAxLjM3NiAwIDAgMS0uOTctMi4zNWwyMC4wMy0yMC4wMy0yMC4wNC0yMC4wM2MtLjU0LS41NC0uNTQtMS40MSAwLTEuOTVzMS40MS0uNTQgMS45NSAwbDIxLjk4IDIxLjk5TDIyLjQ5IDU0Yy0uMjcuMjctLjYyLjQtLjk3LjRaIi8+PC9zeW1ib2w+PHVzZSBzdHlsZT0iZGlzcGxheTogdmFyKC0tczE2LCBub25lKSIgaHJlZj0iI3MxNiIvPjx1c2Ugc3R5bGU9ImRpc3BsYXk6IHZhcigtLXMyNCwgbm9uZSkiIGhyZWY9IiNzMjQiLz48dXNlIHN0eWxlPSJkaXNwbGF5OiB2YXIoLS1zMzIsIG5vbmUpIiBocmVmPSIjczMyIi8+PHVzZSBzdHlsZT0iZGlzcGxheTogdmFyKC0tczQwLCBub25lKSIgaHJlZj0iI3M0MCIvPjx1c2Ugc3R5bGU9ImRpc3BsYXk6IHZhcigtLXM0OCwgbm9uZSkiIGhyZWY9IiNzNDgiLz48dXNlIHN0eWxlPSJkaXNwbGF5OiB2YXIoLS1zNjQsIG5vbmUpIiBocmVmPSIjczY0Ii8+PC9zeW1ib2w+PC9kZWZzPjxzdHlsZT5AbWVkaWEgKG1heC13aWR0aDogMjMuOThweCkge2d7LS1zMTY6YmxvY2s7fX1AbWVkaWEgKG1pbi13aWR0aDogMjRweCkgYW5kIChtYXgtd2lkdGg6IDMxLjk4cHgpIHtney0tczI0OmJsb2NrO319QG1lZGlhIChtaW4td2lkdGg6IDMycHgpIGFuZCAobWF4LXdpZHRoOiAzOS45OHB4KSB7Z3stLXMzMjpibG9jazt9fUBtZWRpYSAobWluLXdpZHRoOiA0MHB4KSBhbmQgKG1heC13aWR0aDogNDcuOThweCkge2d7LS1zNDA6YmxvY2s7fX1AbWVkaWEgKG1pbi13aWR0aDogNDhweCkgYW5kIChtYXgtd2lkdGg6IDYzLjk4cHgpIHtney0tczQ4OmJsb2NrO319QG1lZGlhIChtaW4td2lkdGg6IDY0cHgpIHtney0tczY0OmJsb2NrO319PC9zdHlsZT48Zz48dXNlIGhyZWY9IiNpLWNoZXZyb25yaWdodCIvPjwvZz48L3N2Zz4=")}:host([variant=listitem]):not([standalone]:not([standalone=false])) ::slotted(a){white-space:nowrap}:host([variant=listitem]):host([selected]:not([selected=false])){flex-shrink:0}:host([variant=listitem]):host([selected]:not([selected=false])) :is(a,span){color:var(--post-scheme-color-interactive-primary-selected-fg1);font-weight:var(--post-device-font-weight-bold);text-decoration:var(--post-core-text-decoration-none)}:host([variant=listitem]):host([standalone]:not([standalone=false])){flex-shrink:1}:host([variant=listitem]):host([standalone]:not([standalone=false])) :is(a,span),:host([variant=listitem]):host([standalone]:not([standalone=false])) ::slotted(a){white-space:normal;overflow-wrap:anywhere;hyphens:auto;line-break:strict}