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

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 (362) hide show
  1. package/dist/cjs/index-2b2b85e5.js +96 -0
  2. package/dist/cjs/index.cjs.js +23 -27
  3. package/dist/cjs/loader.cjs.js +1 -1
  4. package/dist/cjs/{package-8121f093.js → package-29dc73af.js} +1 -1
  5. package/dist/cjs/placement-b2bb6ec4.js +18 -0
  6. package/dist/cjs/{post-accordion-beac7c9f.js → post-accordion-c433c493.js} +8 -8
  7. package/dist/cjs/{post-accordion-item-4846fbee.js → post-accordion-item-8d5a301d.js} +5 -5
  8. package/dist/cjs/post-accordion-item.cjs.entry.js +3 -7
  9. package/dist/cjs/post-accordion.cjs.entry.js +3 -3
  10. package/dist/cjs/{post-avatar-a36991fb.js → post-avatar-421043df.js} +21 -4
  11. package/dist/cjs/post-avatar.cjs.entry.js +3 -4
  12. package/dist/cjs/{post-back-to-top-32aa9017.js → post-back-to-top-3cca3803.js} +8 -11
  13. package/dist/cjs/post-back-to-top.cjs.entry.js +3 -5
  14. package/dist/cjs/{post-banner-be0e8909.js → post-banner-2e99c9d8.js} +12 -17
  15. package/dist/cjs/post-banner.cjs.entry.js +3 -8
  16. package/dist/cjs/post-breadcrumb-item_2.cjs.entry.js +3 -7
  17. package/dist/cjs/{post-breadcrumbs-6ef82a41.js → post-breadcrumbs-1be50860.js} +13 -7
  18. package/dist/cjs/post-breadcrumbs.cjs.entry.js +3 -3
  19. package/dist/cjs/{post-card-control-fe919333.js → post-card-control-0bfdad92.js} +42 -21
  20. package/dist/cjs/post-card-control.cjs.entry.js +3 -5
  21. package/dist/cjs/post-closebutton_15.cjs.entry.js +5 -9
  22. package/dist/cjs/{post-collapsible-trigger-f42be607.js → post-collapsible-trigger-4180b218.js} +5 -8
  23. package/dist/cjs/post-collapsible_2.cjs.entry.js +3 -8
  24. package/dist/cjs/post-components.cjs.js +1 -1
  25. package/dist/cjs/{post-footer-5179aa17.js → post-footer-92adffac.js} +12 -2
  26. package/dist/cjs/post-footer.cjs.entry.js +3 -2
  27. package/dist/cjs/{post-linkarea-27125078.js → post-linkarea-26c457b3.js} +1 -1
  28. package/dist/cjs/post-linkarea.cjs.entry.js +2 -2
  29. package/dist/cjs/{post-menu-item-d78a9121.js → post-menu-item-d0a53c84.js} +3 -3
  30. package/dist/cjs/{post-popover-feb1e773.js → post-popover-36cead3d.js} +20 -5
  31. package/dist/cjs/post-popover.cjs.entry.js +4 -2
  32. package/dist/cjs/{post-rating-6d153a2c.js → post-rating-f50a9939.js} +29 -8
  33. package/dist/cjs/post-rating.cjs.entry.js +4 -2
  34. package/dist/cjs/{post-tab-header-e4532918.js → post-tab-header-f47508da.js} +3 -3
  35. package/dist/cjs/post-tab-header.cjs.entry.js +3 -4
  36. package/dist/cjs/{post-tab-panel-40df21ad.js → post-tab-panel-7c51798b.js} +11 -2
  37. package/dist/cjs/post-tab-panel.cjs.entry.js +4 -2
  38. package/dist/cjs/{post-tabs-45db2696.js → post-tabs-2debea01.js} +2 -2
  39. package/dist/cjs/post-tabs.cjs.entry.js +2 -2
  40. package/dist/cjs/{post-tag-0967bb1e.js → post-tag-ac62c57f.js} +18 -5
  41. package/dist/cjs/post-tag.cjs.entry.js +4 -2
  42. package/dist/cjs/{post-togglebutton-42b7d166.js → post-togglebutton-43c46511.js} +85 -88
  43. package/dist/cjs/{post-tooltip-f833d51d.js → post-tooltip-b7dcfb44.js} +11 -10
  44. package/dist/cjs/{post-tooltip-trigger-3ceac010.js → post-tooltip-trigger-904061b6.js} +6 -8
  45. package/dist/cjs/post-tooltip-trigger.cjs.entry.js +3 -3
  46. package/dist/cjs/post-tooltip.cjs.entry.js +4 -3
  47. package/dist/collection/collection-manifest.json +1 -1
  48. package/dist/collection/components/post-accordion/post-accordion.js +7 -7
  49. package/dist/collection/components/post-accordion-item/post-accordion-item.js +3 -3
  50. package/dist/collection/components/post-avatar/post-avatar.js +25 -2
  51. package/dist/collection/components/post-back-to-top/post-back-to-top.js +8 -10
  52. package/dist/collection/components/post-banner/post-banner.js +13 -18
  53. package/dist/collection/components/post-breadcrumb-item/post-breadcrumb-item.js +1 -1
  54. package/dist/collection/components/post-breadcrumbs/post-breadcrumbs.js +15 -7
  55. package/dist/collection/components/post-card-control/post-card-control.js +58 -33
  56. package/dist/collection/components/post-closebutton/post-closebutton.js +1 -1
  57. package/dist/collection/components/post-collapsible/post-collapsible.js +1 -1
  58. package/dist/collection/components/post-collapsible-trigger/post-collapsible-trigger.js +4 -5
  59. package/dist/collection/components/post-footer/post-footer.js +14 -2
  60. package/dist/collection/components/post-header/post-header.css +1 -1
  61. package/dist/collection/components/post-header/post-header.js +29 -54
  62. package/dist/collection/components/post-icon/post-icon.js +17 -37
  63. package/dist/collection/components/post-language-option/post-language-option.js +13 -13
  64. package/dist/collection/components/post-language-switch/post-language-switch.js +5 -5
  65. package/dist/collection/components/post-logo/post-logo.js +2 -2
  66. package/dist/collection/components/post-mainnavigation/post-mainnavigation.css +1 -1
  67. package/dist/collection/components/post-megadropdown/post-megadropdown.css +1 -1
  68. package/dist/collection/components/post-megadropdown-trigger/post-megadropdown-trigger.css +1 -1
  69. package/dist/collection/components/post-megadropdown-trigger/post-megadropdown-trigger.js +3 -3
  70. package/dist/collection/components/post-menu/post-menu.js +13 -2
  71. package/dist/collection/components/post-menu-trigger/post-menu-trigger.js +3 -3
  72. package/dist/collection/components/post-popover/post-popover.js +21 -2
  73. package/dist/collection/components/post-popovercontainer/post-popovercontainer.js +26 -4
  74. package/dist/collection/components/post-rating/post-rating.js +29 -2
  75. package/dist/collection/components/post-tab-header/post-tab-header.js +5 -10
  76. package/dist/collection/components/post-tab-panel/post-tab-panel.js +13 -2
  77. package/dist/collection/components/post-tabs/post-tabs.js +2 -2
  78. package/dist/collection/components/post-tag/post-tag.js +23 -11
  79. package/dist/collection/components/post-togglebutton/post-togglebutton.js +1 -12
  80. package/dist/collection/components/post-tooltip/post-tooltip.css +1 -1
  81. package/dist/collection/components/post-tooltip/post-tooltip.js +12 -12
  82. package/dist/collection/components/post-tooltip-trigger/post-tooltip-trigger.js +5 -7
  83. package/dist/collection/types/index.js +2 -0
  84. package/dist/collection/types/placement.js +14 -0
  85. package/dist/collection/types/property-types.js +1 -0
  86. package/dist/collection/utils/is-value-empty.js +4 -0
  87. package/dist/collection/utils/property-checkers/check-one-of.js +3 -4
  88. package/dist/collection/utils/property-checkers/check-pattern.js +3 -4
  89. package/dist/collection/utils/property-checkers/check-type.js +4 -6
  90. package/dist/collection/utils/property-checkers/check-url.js +5 -5
  91. package/dist/collection/utils/property-checkers/constants.js +1 -1
  92. package/dist/collection/utils/property-checkers/empty-or.js +4 -6
  93. package/dist/collection/utils/property-checkers/index.js +6 -6
  94. package/dist/collection/utils/property-checkers/required-and.js +14 -0
  95. package/dist/components/index2.js +60 -19
  96. package/dist/components/package.js +1 -1
  97. package/dist/components/post-accordion-item2.js +4 -4
  98. package/dist/components/post-accordion2.js +7 -7
  99. package/dist/components/post-avatar2.js +24 -4
  100. package/dist/components/post-back-to-top2.js +9 -12
  101. package/dist/components/post-banner2.js +12 -18
  102. package/dist/components/post-breadcrumb-item2.js +2 -2
  103. package/dist/components/post-breadcrumbs2.js +14 -7
  104. package/dist/components/post-card-control2.js +41 -16
  105. package/dist/components/post-closebutton2.js +1 -1
  106. package/dist/components/post-collapsible-trigger2.js +3 -5
  107. package/dist/components/post-collapsible2.js +2 -2
  108. package/dist/components/post-footer2.js +13 -1
  109. package/dist/components/post-header2.js +31 -33
  110. package/dist/components/post-icon2.js +9 -25
  111. package/dist/components/post-language-option2.js +9 -10
  112. package/dist/components/post-language-switch2.js +4 -6
  113. package/dist/components/post-logo2.js +2 -2
  114. package/dist/components/post-mainnavigation2.js +1 -1
  115. package/dist/components/post-megadropdown-trigger2.js +4 -4
  116. package/dist/components/post-megadropdown2.js +1 -1
  117. package/dist/components/post-menu-trigger2.js +3 -3
  118. package/dist/components/post-menu2.js +12 -2
  119. package/dist/components/post-popover2.js +20 -3
  120. package/dist/components/post-popovercontainer2.js +37 -3
  121. package/dist/components/post-rating2.js +26 -1
  122. package/dist/components/post-tab-header2.js +2 -2
  123. package/dist/components/post-tab-panel2.js +12 -1
  124. package/dist/components/post-tabs2.js +1 -1
  125. package/dist/components/post-tag2.js +19 -5
  126. package/dist/components/post-togglebutton2.js +1 -12
  127. package/dist/components/post-tooltip-trigger2.js +5 -7
  128. package/dist/components/post-tooltip2.js +11 -11
  129. package/dist/components/switch-variants.js +3 -0
  130. package/dist/docs.json +39 -87
  131. package/dist/esm/index-ffccd040.js +88 -0
  132. package/dist/esm/index.js +23 -27
  133. package/dist/esm/loader.js +1 -1
  134. package/dist/esm/package-8503eaa8.js +3 -0
  135. package/dist/esm/placement-8d56605d.js +16 -0
  136. package/dist/esm/{post-accordion-fdcf7205.js → post-accordion-9365faca.js} +8 -8
  137. package/dist/esm/{post-accordion-item-e11e3804.js → post-accordion-item-2dc8e3b7.js} +5 -5
  138. package/dist/esm/post-accordion-item.entry.js +3 -7
  139. package/dist/esm/post-accordion.entry.js +3 -3
  140. package/dist/esm/{post-avatar-d360c6d2.js → post-avatar-4f73dc4d.js} +21 -4
  141. package/dist/esm/post-avatar.entry.js +3 -4
  142. package/dist/esm/{post-back-to-top-85796c8b.js → post-back-to-top-8f759d32.js} +8 -11
  143. package/dist/esm/post-back-to-top.entry.js +3 -5
  144. package/dist/esm/{post-banner-a3090f67.js → post-banner-ad979275.js} +12 -17
  145. package/dist/esm/post-banner.entry.js +3 -8
  146. package/dist/esm/post-breadcrumb-item_2.entry.js +3 -7
  147. package/dist/esm/{post-breadcrumbs-15ec5a26.js → post-breadcrumbs-a20336c7.js} +13 -7
  148. package/dist/esm/post-breadcrumbs.entry.js +3 -3
  149. package/dist/esm/{post-card-control-6142534e.js → post-card-control-3c77e778.js} +37 -16
  150. package/dist/esm/post-card-control.entry.js +3 -5
  151. package/dist/esm/post-closebutton_15.entry.js +5 -9
  152. package/dist/esm/{post-collapsible-trigger-68306358.js → post-collapsible-trigger-5fd0e193.js} +5 -8
  153. package/dist/esm/post-collapsible_2.entry.js +3 -8
  154. package/dist/esm/post-components.js +1 -1
  155. package/dist/esm/{post-footer-d2a3270e.js → post-footer-3e117b5a.js} +12 -2
  156. package/dist/esm/post-footer.entry.js +3 -2
  157. package/dist/esm/{post-linkarea-64998c67.js → post-linkarea-16a14609.js} +1 -1
  158. package/dist/esm/post-linkarea.entry.js +2 -2
  159. package/dist/esm/{post-menu-item-95a0a647.js → post-menu-item-b1604fe4.js} +3 -3
  160. package/dist/esm/{post-popover-c5f81087.js → post-popover-49096648.js} +17 -2
  161. package/dist/esm/post-popover.entry.js +4 -2
  162. package/dist/esm/{post-rating-7bfedafb.js → post-rating-405bee8f.js} +23 -2
  163. package/dist/esm/post-rating.entry.js +4 -2
  164. package/dist/esm/{post-tab-header-08033da4.js → post-tab-header-b228c217.js} +3 -3
  165. package/dist/esm/post-tab-header.entry.js +3 -4
  166. package/dist/esm/{post-tab-panel-be701793.js → post-tab-panel-98110b64.js} +11 -2
  167. package/dist/esm/post-tab-panel.entry.js +4 -2
  168. package/dist/esm/{post-tabs-c69e2842.js → post-tabs-44d9313c.js} +2 -2
  169. package/dist/esm/post-tabs.entry.js +2 -2
  170. package/dist/esm/{post-tag-ebac7f3e.js → post-tag-99cc9616.js} +18 -5
  171. package/dist/esm/post-tag.entry.js +4 -2
  172. package/dist/esm/{post-togglebutton-706e3af0.js → post-togglebutton-ea73e63f.js} +85 -88
  173. package/dist/esm/{post-tooltip-9a195d47.js → post-tooltip-78cd2988.js} +11 -10
  174. package/dist/esm/{post-tooltip-trigger-7d6f234b.js → post-tooltip-trigger-bdb21c45.js} +6 -8
  175. package/dist/esm/post-tooltip-trigger.entry.js +3 -3
  176. package/dist/esm/post-tooltip.entry.js +4 -3
  177. package/dist/post-components/index.esm.js +1 -1
  178. package/dist/post-components/p-09dd5aa4.js +1 -0
  179. package/dist/post-components/{p-17dc4170.js → p-0f9322e5.js} +2 -2
  180. package/dist/post-components/{p-de4d4274.js → p-11572299.js} +1 -1
  181. package/dist/post-components/p-19a83519.entry.js +1 -0
  182. package/dist/post-components/p-1afb3c43.entry.js +1 -0
  183. package/dist/post-components/p-214cd032.js +1 -0
  184. package/dist/post-components/p-21e5b028.js +1 -0
  185. package/dist/post-components/p-2320305b.js +1 -0
  186. package/dist/post-components/p-2523f97b.entry.js +1 -0
  187. package/dist/post-components/p-2bd3a436.js +1 -0
  188. package/dist/post-components/p-2ce8fbf5.js +1 -0
  189. package/dist/post-components/p-2f879f4e.entry.js +1 -0
  190. package/dist/post-components/p-33e26845.entry.js +1 -0
  191. package/dist/post-components/p-38b1c71e.entry.js +1 -0
  192. package/dist/post-components/p-38d59732.js +1 -0
  193. package/dist/post-components/p-3a67f1ff.js +1 -0
  194. package/dist/post-components/p-41450b6c.entry.js +1 -0
  195. package/dist/post-components/p-4c23ed05.entry.js +1 -0
  196. package/dist/post-components/p-57746c40.js +1 -0
  197. package/dist/post-components/p-59a38c23.js +1 -0
  198. package/dist/post-components/p-6313d72e.entry.js +1 -0
  199. package/dist/post-components/p-64e0b0fc.js +1 -0
  200. package/dist/post-components/p-658a2e34.entry.js +1 -0
  201. package/dist/post-components/p-746d3cd3.entry.js +1 -0
  202. package/dist/post-components/p-79a2dad0.entry.js +1 -0
  203. package/dist/post-components/p-7dd1807c.js +1 -0
  204. package/dist/post-components/p-817fbeaf.js +1 -0
  205. package/dist/post-components/p-85950200.js +1 -0
  206. package/dist/post-components/p-8ebecf22.entry.js +1 -0
  207. package/dist/post-components/p-8ed1cb53.entry.js +1 -0
  208. package/dist/post-components/p-91244b25.js +1 -0
  209. package/dist/post-components/{p-ab566526.js → p-91675004.js} +1 -1
  210. package/dist/post-components/p-94ebc430.js +1 -0
  211. package/dist/post-components/p-95727a4f.entry.js +1 -0
  212. package/dist/post-components/p-a844da3a.entry.js +1 -0
  213. package/dist/post-components/{p-1a21fd8d.js → p-af900651.js} +1 -1
  214. package/dist/post-components/p-b176309b.js +1 -0
  215. package/dist/post-components/p-b373659e.entry.js +1 -0
  216. package/dist/post-components/p-b500b245.js +1 -0
  217. package/dist/post-components/p-bf182745.entry.js +1 -0
  218. package/dist/post-components/p-c9b6f9e7.entry.js +1 -0
  219. package/dist/post-components/p-cb7d8f67.entry.js +1 -0
  220. package/dist/post-components/p-e28eb73a.js +1 -0
  221. package/dist/post-components/post-components.css +1 -0
  222. package/dist/post-components/post-components.esm.js +1 -1
  223. package/dist/prebuild.js +26 -0
  224. package/dist/types/components/post-accordion/post-accordion.d.ts +2 -1
  225. package/dist/types/components/post-avatar/post-avatar.d.ts +3 -0
  226. package/dist/types/components/post-back-to-top/post-back-to-top.d.ts +1 -1
  227. package/dist/types/components/post-banner/post-banner.d.ts +3 -4
  228. package/dist/types/components/post-breadcrumbs/post-breadcrumbs.d.ts +2 -1
  229. package/dist/types/components/post-card-control/post-card-control.d.ts +10 -6
  230. package/dist/types/components/post-footer/post-footer.d.ts +2 -0
  231. package/dist/types/components/post-header/post-header.d.ts +5 -9
  232. package/dist/types/components/post-icon/post-icon.d.ts +5 -7
  233. package/dist/types/components/post-language-option/post-language-option.d.ts +5 -5
  234. package/dist/types/components/post-logo/post-logo.d.ts +1 -1
  235. package/dist/types/components/post-menu/post-menu.d.ts +1 -0
  236. package/dist/types/components/post-popover/post-popover.d.ts +2 -0
  237. package/dist/types/components/post-popovercontainer/post-popovercontainer.d.ts +3 -0
  238. package/dist/types/components/post-rating/post-rating.d.ts +4 -0
  239. package/dist/types/components/post-tab-header/post-tab-header.d.ts +1 -1
  240. package/dist/types/components/post-tab-panel/post-tab-panel.d.ts +1 -0
  241. package/dist/types/components/post-tabs/post-tabs.d.ts +1 -1
  242. package/dist/types/components/post-tag/post-tag.d.ts +5 -3
  243. package/dist/types/components/post-togglebutton/post-togglebutton.d.ts +0 -1
  244. package/dist/types/components/post-tooltip/post-tooltip.d.ts +3 -3
  245. package/dist/types/components.d.ts +38 -59
  246. package/dist/types/home/runner/work/design-system/design-system/packages/components/.stencil/prebuild.d.ts +1 -0
  247. package/dist/types/index.d.ts +2 -2
  248. package/dist/types/types/index.d.ts +2 -0
  249. package/dist/types/types/placement.d.ts +1 -0
  250. package/dist/types/types/property-types.d.ts +1 -0
  251. package/dist/types/utils/is-value-empty.d.ts +1 -0
  252. package/dist/types/utils/property-checkers/check-one-of.d.ts +1 -1
  253. package/dist/types/utils/property-checkers/check-pattern.d.ts +1 -1
  254. package/dist/types/utils/property-checkers/check-type.d.ts +2 -2
  255. package/dist/types/utils/property-checkers/check-url.d.ts +1 -1
  256. package/dist/types/utils/property-checkers/constants.d.ts +1 -1
  257. package/dist/types/utils/property-checkers/empty-or.d.ts +3 -1
  258. package/dist/types/utils/property-checkers/index.d.ts +16 -9
  259. package/dist/types/utils/property-checkers/required-and.d.ts +3 -0
  260. package/loaders/index2.js +60 -19
  261. package/loaders/package.js +1 -1
  262. package/loaders/post-accordion-item2.js +4 -4
  263. package/loaders/post-accordion.js +7 -7
  264. package/loaders/post-avatar.js +24 -4
  265. package/loaders/post-back-to-top.js +9 -12
  266. package/loaders/post-banner.js +12 -18
  267. package/loaders/post-breadcrumb-item2.js +2 -2
  268. package/loaders/post-breadcrumbs.js +14 -7
  269. package/loaders/post-card-control.js +41 -16
  270. package/loaders/post-closebutton.js +1 -1
  271. package/loaders/post-collapsible-trigger2.js +3 -5
  272. package/loaders/post-collapsible2.js +2 -2
  273. package/loaders/post-footer.js +13 -1
  274. package/loaders/post-header.js +31 -33
  275. package/loaders/post-icon2.js +9 -25
  276. package/loaders/post-language-option.js +9 -10
  277. package/loaders/post-language-switch.js +4 -6
  278. package/loaders/post-logo.js +2 -2
  279. package/loaders/post-mainnavigation.js +1 -1
  280. package/loaders/post-megadropdown-trigger.js +4 -4
  281. package/loaders/post-megadropdown.js +1 -1
  282. package/loaders/post-menu-trigger2.js +3 -3
  283. package/loaders/post-menu2.js +12 -2
  284. package/loaders/post-popover.js +20 -3
  285. package/loaders/post-popovercontainer.js +1 -1
  286. package/loaders/post-popovercontainer2.js +37 -3
  287. package/loaders/post-rating.js +26 -1
  288. package/loaders/post-tab-header.js +2 -2
  289. package/loaders/post-tab-panel.js +12 -1
  290. package/loaders/post-tabs.js +1 -1
  291. package/loaders/post-tag.js +19 -5
  292. package/loaders/post-togglebutton.js +1 -12
  293. package/loaders/post-tooltip-trigger.js +5 -7
  294. package/loaders/post-tooltip.js +11 -11
  295. package/loaders/switch-variants.js +3 -0
  296. package/package.json +19 -9
  297. package/dist/cjs/check-non-empty-bd99d236.js +0 -15
  298. package/dist/cjs/check-one-of-75d270b5.js +0 -13
  299. package/dist/cjs/check-type-cdbf6d29.js +0 -21
  300. package/dist/cjs/check-url-220a286c.js +0 -19
  301. package/dist/cjs/constants-238701d3.js +0 -5
  302. package/dist/cjs/index-23e36ff7.js +0 -37
  303. package/dist/collection/utils/property-checkers/check-non-empty.js +0 -10
  304. package/dist/components/check-non-empty.js +0 -13
  305. package/dist/components/check-one-of.js +0 -11
  306. package/dist/components/check-type.js +0 -19
  307. package/dist/components/constants.js +0 -3
  308. package/dist/esm/check-non-empty-258a56b3.js +0 -13
  309. package/dist/esm/check-one-of-0bee20f5.js +0 -11
  310. package/dist/esm/check-type-37d5d307.js +0 -19
  311. package/dist/esm/check-url-17962bc8.js +0 -17
  312. package/dist/esm/constants-8d548297.js +0 -3
  313. package/dist/esm/index-8f8fe5b0.js +0 -32
  314. package/dist/esm/package-d9237b44.js +0 -3
  315. package/dist/post-components/p-034715ec.js +0 -1
  316. package/dist/post-components/p-0717fe4c.js +0 -1
  317. package/dist/post-components/p-0c03547b.js +0 -1
  318. package/dist/post-components/p-0de8d05f.js +0 -1
  319. package/dist/post-components/p-1373a79b.entry.js +0 -1
  320. package/dist/post-components/p-181c73d5.js +0 -1
  321. package/dist/post-components/p-1ab3eba4.entry.js +0 -1
  322. package/dist/post-components/p-2d6c0670.js +0 -1
  323. package/dist/post-components/p-2dc0a2d0.js +0 -1
  324. package/dist/post-components/p-35ad2e11.entry.js +0 -1
  325. package/dist/post-components/p-368c473a.js +0 -1
  326. package/dist/post-components/p-38f778a7.entry.js +0 -1
  327. package/dist/post-components/p-39a8df3c.entry.js +0 -1
  328. package/dist/post-components/p-3c7f6003.js +0 -1
  329. package/dist/post-components/p-440193f4.js +0 -1
  330. package/dist/post-components/p-474a41bc.entry.js +0 -1
  331. package/dist/post-components/p-69bc8eaf.entry.js +0 -1
  332. package/dist/post-components/p-72310bf0.entry.js +0 -1
  333. package/dist/post-components/p-7709c14a.js +0 -1
  334. package/dist/post-components/p-804b61b7.entry.js +0 -1
  335. package/dist/post-components/p-85fdc2d3.js +0 -1
  336. package/dist/post-components/p-89247caa.js +0 -1
  337. package/dist/post-components/p-89dc67c7.entry.js +0 -1
  338. package/dist/post-components/p-8f7f5200.entry.js +0 -1
  339. package/dist/post-components/p-964f9581.js +0 -1
  340. package/dist/post-components/p-a52b2d34.js +0 -1
  341. package/dist/post-components/p-b648e537.entry.js +0 -1
  342. package/dist/post-components/p-bc33a6d9.js +0 -1
  343. package/dist/post-components/p-bcfdbd0b.entry.js +0 -1
  344. package/dist/post-components/p-beb67979.js +0 -1
  345. package/dist/post-components/p-c41868b1.js +0 -1
  346. package/dist/post-components/p-c71700a7.js +0 -1
  347. package/dist/post-components/p-cb027003.js +0 -1
  348. package/dist/post-components/p-cc5b1437.js +0 -1
  349. package/dist/post-components/p-ceda889e.entry.js +0 -1
  350. package/dist/post-components/p-d45df336.js +0 -1
  351. package/dist/post-components/p-deb9efcf.entry.js +0 -1
  352. package/dist/post-components/p-e585c6fe.js +0 -1
  353. package/dist/post-components/p-e9f1cc46.entry.js +0 -1
  354. package/dist/post-components/p-ee4e776d.entry.js +0 -1
  355. package/dist/post-components/p-ee7c3bcc.entry.js +0 -1
  356. package/dist/post-components/p-f56482fa.entry.js +0 -1
  357. package/dist/post-components/p-f8c652ce.entry.js +0 -1
  358. package/dist/types/utils/property-checkers/check-non-empty.d.ts +0 -3
  359. package/loaders/check-non-empty.js +0 -13
  360. package/loaders/check-one-of.js +0 -11
  361. package/loaders/check-type.js +0 -19
  362. package/loaders/constants.js +0 -3
@@ -2,8 +2,8 @@
2
2
 
3
3
  const index = require('./index-b60129c4.js');
4
4
  const breakpoints = require('./breakpoints-cdf1b747.js');
5
- const checkType = require('./check-type-cdbf6d29.js');
6
- const _package = require('./package-8121f093.js');
5
+ const index$1 = require('./index-2b2b85e5.js');
6
+ const _package = require('./package-29dc73af.js');
7
7
 
8
8
  var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
9
9
 
@@ -4535,15 +4535,13 @@ const PostTooltipTrigger = class {
4535
4535
  this.boundTooltipHandler = this.handleTooltipEvent.bind(this);
4536
4536
  }
4537
4537
  validateControlFor() {
4538
- checkType.checkType(this, 'for', 'string');
4538
+ index$1.checkEmptyOrType(this, 'for', 'string');
4539
4539
  }
4540
4540
  get tooltip() {
4541
4541
  if (!breakpoints.IS_BROWSER)
4542
4542
  return null;
4543
4543
  const ref = document.getElementById(this.for);
4544
- return ref?.localName === 'post-tooltip'
4545
- ? ref
4546
- : null;
4544
+ return ref?.localName === 'post-tooltip' ? ref : null;
4547
4545
  }
4548
4546
  componentDidLoad() {
4549
4547
  this.setupTrigger();
@@ -4651,7 +4649,7 @@ const PostTooltipTrigger = class {
4651
4649
  handleLeave(event) {
4652
4650
  const newTarget = event.relatedTarget;
4653
4651
  if ((this.tooltip && newTarget && this.tooltip.contains(newTarget)) ||
4654
- (newTarget === this.trigger)) {
4652
+ newTarget === this.trigger) {
4655
4653
  return;
4656
4654
  }
4657
4655
  this.interestLostHandler();
@@ -4675,7 +4673,7 @@ const PostTooltipTrigger = class {
4675
4673
  this.tooltip?.hide();
4676
4674
  }
4677
4675
  render() {
4678
- return (index.h(index.Host, { key: '4e4b53e85570d6dbba4ee7833a1d3de00e53dbc6', "data-version": _package.version }, index.h("slot", { key: 'f8f5ea2e2ce848d654e233617455bbbbdc6ba5b1', onSlotchange: () => this.handleSlotChange() })));
4676
+ return (index.h(index.Host, { key: '2dc6f70e4dc7706a69efcede935e85faede3b73c', "data-version": _package.version }, index.h("slot", { key: 'b6301a66707d85a06b053a0a70a2a0cbc62877b3', onSlotchange: () => this.handleSlotChange() })));
4679
4677
  }
4680
4678
  get host() { return index.getElement(this); }
4681
4679
  static get watchers() { return {
@@ -2,11 +2,11 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const postTooltipTrigger = require('./post-tooltip-trigger-3ceac010.js');
5
+ const postTooltipTrigger = require('./post-tooltip-trigger-904061b6.js');
6
6
  require('./index-b60129c4.js');
7
7
  require('./breakpoints-cdf1b747.js');
8
- require('./check-type-cdbf6d29.js');
9
- require('./package-8121f093.js');
8
+ require('./index-2b2b85e5.js');
9
+ require('./package-29dc73af.js');
10
10
 
11
11
 
12
12
 
@@ -2,11 +2,12 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const postTooltip = require('./post-tooltip-f833d51d.js');
5
+ const postTooltip = require('./post-tooltip-b7dcfb44.js');
6
6
  require('./index-b60129c4.js');
7
- require('./package-8121f093.js');
8
- require('./check-type-cdbf6d29.js');
7
+ require('./package-29dc73af.js');
8
+ require('./index-2b2b85e5.js');
9
9
  require('./breakpoints-cdf1b747.js');
10
+ require('./placement-b2bb6ec4.js');
10
11
 
11
12
 
12
13
 
@@ -1,6 +1,5 @@
1
1
  {
2
2
  "entries": [
3
- "components/post-header/post-header.js",
4
3
  "components/post-accordion/post-accordion.js",
5
4
  "components/post-accordion-item/post-accordion-item.js",
6
5
  "components/post-avatar/post-avatar.js",
@@ -13,6 +12,7 @@
13
12
  "components/post-collapsible/post-collapsible.js",
14
13
  "components/post-collapsible-trigger/post-collapsible-trigger.js",
15
14
  "components/post-footer/post-footer.js",
15
+ "components/post-header/post-header.js",
16
16
  "components/post-icon/post-icon.js",
17
17
  "components/post-language-option/post-language-option.js",
18
18
  "components/post-language-switch/post-language-switch.js",
@@ -1,7 +1,7 @@
1
1
  import { h, Host } from "@stencil/core";
2
2
  import { version } from "../../../../package";
3
3
  import { HEADING_LEVELS } from "../../types/index";
4
- import { checkOneOf } from "../../utils/index";
4
+ import { checkRequiredAndOneOf } from "../../utils/index";
5
5
  import { eventGuard } from "../../utils/event-gua"; // Import eventGuard
6
6
  /**
7
7
  * @slot default - Slot for placing post-accordion-item components.
@@ -12,16 +12,16 @@ export class PostAccordion {
12
12
  this.headingLevel = undefined;
13
13
  this.multiple = false;
14
14
  }
15
- validateHeadingLevel(newValue = this.headingLevel) {
16
- if (!newValue)
17
- return;
18
- checkOneOf(this, 'headingLevel', HEADING_LEVELS, 'The `heading-level` property of the `post-accordion` must be a number between 1 and 6.');
15
+ validateHeadingLevel() {
16
+ checkRequiredAndOneOf(this, 'headingLevel', HEADING_LEVELS);
19
17
  this.accordionItems.forEach(item => {
20
- item.setAttribute('heading-level', String(newValue));
18
+ item.setAttribute('heading-level', String(this.headingLevel));
21
19
  });
22
20
  }
23
21
  componentWillLoad() {
24
22
  this.registerAccordionItems();
23
+ }
24
+ componentDidLoad() {
25
25
  this.validateHeadingLevel();
26
26
  }
27
27
  collapseToggleHandler(event) {
@@ -88,7 +88,7 @@ export class PostAccordion {
88
88
  });
89
89
  }
90
90
  render() {
91
- return (h(Host, { key: '80e15cf7835f213cfee1ca7cf83cc2fd24bba3ff', "data-version": version }, h("div", { key: '1cf03d4960115b52394b5cb07cd2286747c728dd', class: "accordion" }, h("slot", { key: 'b94328a45a3cba6a8d3b418061036eb8af2cf027', onSlotchange: () => this.registerAccordionItems() }))));
91
+ return (h(Host, { key: '7057a6926f2279f7fc86d7f8539dd3ca884a3d70', "data-version": version }, h("div", { key: 'a6d337471d1d16c09d7e6af950d39c58fc6f2880', class: "accordion" }, h("slot", { key: '9687babb4b539f6e54468555b4057a2b378e1e10', onSlotchange: () => this.registerAccordionItems() }))));
92
92
  }
93
93
  static get is() { return "post-accordion"; }
94
94
  static get encapsulation() { return "shadow"; }
@@ -19,7 +19,7 @@ export class PostAccordionItem {
19
19
  this.headingLevel = undefined;
20
20
  }
21
21
  validateHeadingLevel() {
22
- checkEmptyOrOneOf(this, 'headingLevel', HEADING_LEVELS, 'The `heading-level` property of the `post-accordion-item` must be a number between 1 and 6.');
22
+ checkEmptyOrOneOf(this, 'headingLevel', HEADING_LEVELS);
23
23
  }
24
24
  componentWillLoad() {
25
25
  this.id = this.host.id || `p${nanoid(6)}`;
@@ -48,10 +48,10 @@ export class PostAccordionItem {
48
48
  render() {
49
49
  const headingLevel = this.host.closest('post-accordion')?.getAttribute('heading-level');
50
50
  const HeadingTag = `h${headingLevel ?? this.headingLevel ?? 2}`;
51
- return (h(Host, { key: '725d3710f7937f82c2382938d15770001e923b61', id: this.id, "data-version": version }, h("div", { key: '679d25d8278fbf9ae68546ee50c27a86ded95999', part: "accordion-item", class: "accordion-item" }, h("post-collapsible-trigger", { key: '7c2af8dc6a1f5265b4ae2cad066be7d2e0bf6a78', for: `${this.id}--collapse` }, h(HeadingTag, { key: 'a10e59a17fdb272fe6308d2ba98f37f90490fab8', class: "accordion-header", id: `${this.id}--header` }, h("button", { key: 'e2b527850c8342a8adf99453d0ac330b6a94760f', type: "button", class: `accordion-button${this.collapsed ? ' collapsed' : ''}`, part: "button" }, h("span", { key: 'b722a4bc51757546eefa58c7c3ea3a688838298a', class: {
51
+ return (h(Host, { key: '4de770633e0c9b9bb92b92a66be9a1481bf0fb3e', id: this.id, "data-version": version }, h("div", { key: '4c2b91b25637cbe284442626d02d0ce6496589a4', part: "accordion-item", class: "accordion-item" }, h("post-collapsible-trigger", { key: '777f8b222b017b765f265296ad2829a027a99c22', for: `${this.id}--collapse` }, h(HeadingTag, { key: 'a646d911ea83c004fbc5490cb1e9dafdf490d09f', class: "accordion-header", id: `${this.id}--header` }, h("button", { key: '0c30a665426b98fff997874c365ffc6b97ecc01c', type: "button", class: `accordion-button${this.collapsed ? ' collapsed' : ''}`, part: "button" }, h("span", { key: '64edd8541af949f87ad929173c4a5210f892b0b6', class: {
52
52
  'logo-container': true,
53
53
  'has-image': !!this.slottedLogo,
54
- } }, h("slot", { key: '1a42494db72a7b437b1d98fa2e8159d73ece22fa', name: "logo", onSlotchange: this.onSlotLogoChange.bind(this) })), h("slot", { key: '049865bb25f833780ef8e27fe8477e06476a2427', name: "header" }), h("post-icon", { key: 'da0cf7078e4f51710dbfd39c0afa90465fcb53c6', name: "2051" })))), h("post-collapsible", { key: '7c3b268e34d3e4f52820b11a6c090aefbc16e3b9', id: `${this.id}--collapse`, collapsed: this.collapsed, ref: el => (this.collapsible = el) }, h("div", { key: '993a7fffbccb557aed2842305f3927e5c3b5047a', class: "accordion-body", part: "body" }, h("slot", { key: '580eb87b1cb4f88acd7dddddecaa1c1982b7f6e3' }))))));
54
+ } }, h("slot", { key: 'a3dfd1796d7c3b854980078673a017d58acb97ea', name: "logo", onSlotchange: this.onSlotLogoChange.bind(this) })), h("slot", { key: 'd008c9aebfd8431afa4eae1af8646dd7de97916b', name: "header" }), h("post-icon", { key: 'ee5150a9cd7693e57f639cf09d9c4f24aae57308', name: "2051" })))), h("post-collapsible", { key: '12d2ef55e0e7615619a0a246268e8af3d3d8e712', id: `${this.id}--collapse`, collapsed: this.collapsed, ref: el => (this.collapsible = el) }, h("div", { key: 'd2cf362418c50ad56f8dee8e43baabbd976682f9', class: "accordion-body", part: "body" }, h("slot", { key: '6792db26a9eab60e113d62e23faf003a6b43685b' }))))));
55
55
  }
56
56
  static get is() { return "post-accordion-item"; }
57
57
  static get encapsulation() { return "shadow"; }
@@ -1,11 +1,12 @@
1
1
  import { h, Host } from "@stencil/core";
2
2
  import { version } from "../../../../package";
3
- import { checkNonEmpty } from "../../utils/index";
3
+ import { checkRequiredAndType, checkEmptyOrPattern, checkEmptyOrType } from "../../utils/index";
4
4
  // https://docs.gravatar.com/api/avatars/images/
5
5
  const GRAVATAR_DEFAULT = '404';
6
6
  const GRAVATAR_RATING = 'g';
7
7
  const GRAVATAR_SIZE = 80;
8
8
  const GRAVATAR_BASE_URL = `https://www.gravatar.com/avatar/{email}?s=${GRAVATAR_SIZE}&d=${GRAVATAR_DEFAULT}&r=${GRAVATAR_RATING}`;
9
+ const emailPattern = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/;
9
10
  var AvatarType;
10
11
  (function (AvatarType) {
11
12
  AvatarType["Slotted"] = "slotted";
@@ -29,7 +30,17 @@ export class PostAvatar {
29
30
  this.initials = '';
30
31
  }
31
32
  validateFirstname() {
32
- checkNonEmpty(this, 'firstname');
33
+ checkRequiredAndType(this, 'firstname', 'string');
34
+ }
35
+ validateLastname() {
36
+ checkEmptyOrType(this, 'lastname', 'string');
37
+ }
38
+ validateUserid() {
39
+ checkEmptyOrType(this, 'userid', 'string');
40
+ }
41
+ validateEmail() {
42
+ if (this.email)
43
+ checkEmptyOrPattern(this, 'email', emailPattern);
33
44
  }
34
45
  async getAvatar() {
35
46
  if (this.slottedImage !== null) {
@@ -117,6 +128,9 @@ export class PostAvatar {
117
128
  }
118
129
  componentDidLoad() {
119
130
  this.validateFirstname();
131
+ this.validateLastname();
132
+ this.validateUserid();
133
+ this.validateEmail();
120
134
  }
121
135
  render() {
122
136
  const initials = this.getNames().reduce((acc, n, i) => {
@@ -227,6 +241,15 @@ export class PostAvatar {
227
241
  return [{
228
242
  "propName": "firstname",
229
243
  "methodName": "validateFirstname"
244
+ }, {
245
+ "propName": "lastname",
246
+ "methodName": "validateLastname"
247
+ }, {
248
+ "propName": "userid",
249
+ "methodName": "validateUserid"
250
+ }, {
251
+ "propName": "email",
252
+ "methodName": "validateEmail"
230
253
  }];
231
254
  }
232
255
  }
@@ -1,7 +1,7 @@
1
1
  import { Host, h } from "@stencil/core";
2
2
  import { slideUp, slideDown } from "../../animations/slide";
3
3
  import { version } from "../../../../package";
4
- import { checkType, checkNonEmpty } from "../../utils/index";
4
+ import { checkRequiredAndType } from "../../utils/index";
5
5
  export class PostBackToTop {
6
6
  constructor() {
7
7
  this.handleScroll = () => {
@@ -13,6 +13,9 @@ export class PostBackToTop {
13
13
  isBelowFold() {
14
14
  return window.scrollY > window.innerHeight;
15
15
  }
16
+ validateLabel() {
17
+ checkRequiredAndType(this, 'label', 'string');
18
+ }
16
19
  /*Watch for changes in belowFold to show/hide the back to top button*/
17
20
  watchBelowFold(newValue) {
18
21
  if (newValue) {
@@ -56,11 +59,6 @@ export class PostBackToTop {
56
59
  this.host.style.transform = `translateY(${this.translateY})`;
57
60
  }
58
61
  }
59
- // Validate the label
60
- validateLabel() {
61
- checkNonEmpty(this, 'label');
62
- checkType(this, 'label', 'string');
63
- }
64
62
  // Set the initial state
65
63
  componentWillLoad() {
66
64
  this.belowFold = this.isBelowFold();
@@ -74,7 +72,7 @@ export class PostBackToTop {
74
72
  window.removeEventListener('scroll', this.handleScroll);
75
73
  }
76
74
  render() {
77
- return (h(Host, { key: 'c1ab6c5e7619ad829d64aea16c59a923310cf091', "data-version": version }, h("button", { key: '99e10e4d16c8d82521b001c3b3d902d8ba47ee92', class: "back-to-top", "aria-hidden": this.belowFold ? 'false' : 'true', tabindex: this.belowFold ? '0' : '-1', onClick: this.scrollToTop }, h("post-icon", { key: '5a6a1b472b45fcc466127ece7091617e4700ee16', "aria-hidden": "true", name: "3026" }), h("span", { key: 'c8502e4822347d48034f6a936203e3314c7ae91e', class: "visually-hidden" }, this.label))));
75
+ return (h(Host, { key: '7edc6db9d849cf9ce0308a2ac5b2c2f9bc4e47a9', "data-version": version }, h("button", { key: '610e81756ce3dd927f55d48beb8cd829b66fc247', class: "back-to-top", "aria-hidden": this.belowFold ? 'false' : 'true', tabindex: this.belowFold ? '0' : '-1', onClick: this.scrollToTop }, h("post-icon", { key: 'bb1f3cc462de7680361f4cfd04abb1816aebd488', "aria-hidden": "true", name: "3026" }), h("span", { key: '4fbd84d78c425140adea5833450cef60af967f5a', class: "visually-hidden" }, this.label))));
78
76
  }
79
77
  static get is() { return "post-back-to-top"; }
80
78
  static get encapsulation() { return "shadow"; }
@@ -117,11 +115,11 @@ export class PostBackToTop {
117
115
  static get elementRef() { return "host"; }
118
116
  static get watchers() {
119
117
  return [{
120
- "propName": "belowFold",
121
- "methodName": "watchBelowFold"
122
- }, {
123
118
  "propName": "label",
124
119
  "methodName": "validateLabel"
120
+ }, {
121
+ "propName": "belowFold",
122
+ "methodName": "watchBelowFold"
125
123
  }];
126
124
  }
127
125
  }
@@ -1,7 +1,7 @@
1
1
  import { Host, h, } from "@stencil/core";
2
2
  import { version } from "../../../../package";
3
3
  import { fadeOut } from "../../animations/index";
4
- import { checkEmptyOrOneOf, checkEmptyOrPattern, checkNonEmpty, checkType } from "../../utils/index";
4
+ import { checkRequiredAndType, checkEmptyOrOneOf, checkEmptyOrType } from "../../utils/index";
5
5
  import { BANNER_TYPES } from "./banner-types";
6
6
  import { nanoid } from "nanoid";
7
7
  /**
@@ -21,23 +21,21 @@ export class PostBanner {
21
21
  this.icon = undefined;
22
22
  this.type = 'neutral';
23
23
  }
24
- validateDismissible() {
25
- checkType(this, 'dismissible', 'boolean');
26
- setTimeout(() => this.validateDismissLabel());
27
- }
28
- validateDismissLabel() {
24
+ checkDismissible() {
29
25
  if (this.dismissible) {
30
- checkNonEmpty(this, 'dismissLabel', 'Dismissible post-banner\'s require a "dismiss-label" prop.');
26
+ setTimeout(() => {
27
+ checkRequiredAndType(this, 'dismissLabel', 'string');
28
+ });
31
29
  }
32
30
  }
33
31
  validateIcon() {
34
- checkEmptyOrPattern(this, 'icon', /\d{4}|none/, 'The post-banner "icon" prop should be a 4-digit string.');
32
+ checkEmptyOrType(this, 'icon', 'string');
35
33
  }
36
34
  validateType() {
37
35
  checkEmptyOrOneOf(this, 'type', BANNER_TYPES);
38
36
  }
39
37
  componentDidLoad() {
40
- this.validateDismissible();
38
+ this.checkDismissible();
41
39
  this.validateIcon();
42
40
  this.validateType();
43
41
  }
@@ -63,14 +61,14 @@ export class PostBanner {
63
61
  }
64
62
  render() {
65
63
  const defaultBannerContent = [
66
- this.hasHeading && (h("div", { key: `${this.bannerId}-heading`, class: "banner-heading" }, h("slot", { key: 'd4b29e3591f026b880c4b859a47bcbc3e3b11ced', name: "heading" }))),
64
+ this.hasHeading && (h("div", { key: `${this.bannerId}-heading`, class: "banner-heading" }, h("slot", { key: '6bf8a3c8152cda870f7d3036c837918f83dee8e1', name: "heading" }))),
67
65
  h("slot", { key: `${this.bannerId}-message` }),
68
66
  ];
69
67
  const actionBannerContent = [
70
68
  h("div", { key: `${this.bannerId}-content`, class: "banner-content" }, defaultBannerContent),
71
- h("div", { key: `${this.bannerId}-buttons`, class: "banner-buttons" }, h("slot", { key: '2f1461a2374d736cb3b72641aa150bc611082f56', name: "actions" })),
69
+ h("div", { key: `${this.bannerId}-buttons`, class: "banner-buttons" }, h("slot", { key: '07a3ade9a798eeb292e28820483a4e5096fe3569', name: "actions" })),
72
70
  ];
73
- return (h(Host, { key: 'ec72012fa82e03b0dca2368025449e1942731c21', "data-version": version }, h("div", { key: 'acae7ac34af951ca9176769ab4bcdc388d769931', role: "alert", class: this.classes, part: this.classes }, this.dismissible && (h("button", { key: '23cc4d77c2825bc76cedcdc321b80b9b0f333e71', class: "btn-close", onClick: this.onDismissButtonClick }, h("span", { key: '2f0753d49fc86f19df743f33a086c14b2a0686f7', class: "visually-hidden" }, this.dismissLabel))), this.icon && this.icon !== 'none' && (h("post-icon", { key: `${this.bannerId}-icon`, name: this.icon })), this.hasActions ? actionBannerContent : defaultBannerContent)));
71
+ return (h(Host, { key: '9b6c1935e20686e69005a0034ca711363b880647', "data-version": version }, h("div", { key: '9a4effd086d7279cbd91bea6b5510bc66349fdc5', role: "alert", class: this.classes, part: this.classes }, this.dismissible && (h("button", { key: '7e822d65eaf6eb9aa356aed8cc95c0107ee1ae27', class: "btn-close", onClick: this.onDismissButtonClick }, h("span", { key: 'f1c7356412ddb9d046f985fde25703715a20755d', class: "visually-hidden" }, this.dismissLabel))), this.icon && this.icon !== 'none' && (h("post-icon", { key: `${this.bannerId}-icon`, name: this.icon })), this.hasActions ? actionBannerContent : defaultBannerContent)));
74
72
  }
75
73
  static get is() { return "post-banner"; }
76
74
  static get encapsulation() { return "shadow"; }
@@ -113,7 +111,7 @@ export class PostBanner {
113
111
  "references": {}
114
112
  },
115
113
  "required": false,
116
- "optional": false,
114
+ "optional": true,
117
115
  "docs": {
118
116
  "tags": [],
119
117
  "text": "The label to use for the close button of a dismissible banner."
@@ -130,7 +128,7 @@ export class PostBanner {
130
128
  "references": {}
131
129
  },
132
130
  "required": false,
133
- "optional": false,
131
+ "optional": true,
134
132
  "docs": {
135
133
  "tags": [],
136
134
  "text": "The icon to display in the banner. By default, the icon depends on the banner type.\n\nIf `none`, no icon is displayed."
@@ -216,10 +214,7 @@ export class PostBanner {
216
214
  static get watchers() {
217
215
  return [{
218
216
  "propName": "dismissible",
219
- "methodName": "validateDismissible"
220
- }, {
221
- "propName": "dismissLabel",
222
- "methodName": "validateDismissLabel"
217
+ "methodName": "checkDismissible"
223
218
  }, {
224
219
  "propName": "icon",
225
220
  "methodName": "validateIcon"
@@ -41,7 +41,7 @@ export class PostBreadcrumbItem {
41
41
  }
42
42
  render() {
43
43
  const BreadcrumbTag = this.validUrl ? 'a' : 'span';
44
- return (h(Host, { key: 'd0444118aa031f4cf6f5161d7aa21900e9768348', "data-version": version }, h("post-icon", { key: '719a76e6e86bbb02526c4610acefb3ad253454af', name: "2111", class: "breadcrumb-item-icon" }), h(BreadcrumbTag, { key: '3f5ffb9c77567dba35efa7938029cd519de55474', class: "breadcrumb-item", ...(this.validUrl ? { href: this.validUrl } : {}), onKeyDown: event => this.handleKeyDown(event) }, h("slot", { key: 'bb1be29905c1533f2238a47a346fb35d6a7645fd' }))));
44
+ return (h(Host, { key: '8db753265537822996e971b6910284246ed0c9b2', "data-version": version }, h("post-icon", { key: '5a40f01b5876337f6dff6117b61d0138b0c85d1e', name: "2111", class: "breadcrumb-item-icon" }), h(BreadcrumbTag, { key: '8a023863726927eca0f222a27f9b8946bc6c3b57', class: "breadcrumb-item", ...(this.validUrl ? { href: this.validUrl } : {}), onKeyDown: event => this.handleKeyDown(event) }, h("slot", { key: 'f98dd0552ff91b845bb838518cc619d613f57e5c' }))));
45
45
  }
46
46
  static get is() { return "post-breadcrumb-item"; }
47
47
  static get encapsulation() { return "shadow"; }
@@ -1,6 +1,6 @@
1
1
  import { h, Host } from "@stencil/core";
2
2
  import { version } from "../../../../package";
3
- import { checkUrl, debounce } from "../../utils/index";
3
+ import { checkRequiredAndUrl, checkEmptyOrType, debounce } from "../../utils/index";
4
4
  export class PostBreadcrumbs {
5
5
  constructor() {
6
6
  // Waits for breadcrumbs navigation reference to be available
@@ -25,13 +25,18 @@ export class PostBreadcrumbs {
25
25
  this.isConcatenated = undefined;
26
26
  this.lastWindowWidth = undefined;
27
27
  }
28
- validateUrl() {
29
- checkUrl(this, 'homeUrl');
28
+ validateHomeUrl() {
29
+ checkRequiredAndUrl(this, 'homeUrl');
30
+ }
31
+ validateHomeText() {
32
+ checkEmptyOrType(this, 'homeUrl', 'string');
30
33
  }
31
34
  componentWillLoad() {
32
35
  this.updateBreadcrumbItems();
33
36
  }
34
37
  componentDidLoad() {
38
+ this.validateHomeUrl();
39
+ this.validateHomeText();
35
40
  window.addEventListener('resize', this.handleResize);
36
41
  this.waitForBreadcrumbsRef();
37
42
  }
@@ -79,7 +84,7 @@ export class PostBreadcrumbs {
79
84
  }
80
85
  render() {
81
86
  const visibleItems = this.breadcrumbItems.slice(0, -1);
82
- return (h(Host, { key: 'f0c2507a02ea79059af1e4dfefce17ab04780fbe', "data-version": version }, h("nav", { key: '0307206eecadfa5a47ba88f9c17c72b88d26be5c', "aria-label": "Breadcrumbs", class: "breadcrumbs-nav", ref: el => (this.breadcrumbsNavRef = el) }, h("ol", { key: '646809f73775f8cd74b6b97c21b7055569fa5f4c', class: "no-list breadcrumbs-list" }, h("li", { key: '15bd467366517f0b9a11e54dfdffc13a0b681f3c' }, h("a", { key: 'd05e860d2de60b740b77120f0745752ff1ec1d17', href: this.homeUrl, class: "breadcrumb-link" }, h("span", { key: '3241f72e9fdc82e1521762d2fc47a6472366f722', class: "visually-hidden" }, this.homeText), h("post-icon", { key: '2cdfdb5641b1ba459070b724e6578b842b8d90ae', name: "home", class: "home-icon" }))), this.isConcatenated ? (h("div", { class: "menu-trigger-wrapper", "aria-label": "More breadcrumbs", onKeyDown: e => {
87
+ return (h(Host, { key: '6498bbfb52739937fc8043a78fa66d922ce740ef', "data-version": version }, h("nav", { key: '421e51bdf79856ba2feb6c23f1b5bb4f5a87f975', "aria-label": "Breadcrumbs", class: "breadcrumbs-nav", ref: el => (this.breadcrumbsNavRef = el) }, h("ol", { key: '191140970a37312b486b594b065fcc6ef580f1ae', class: "no-list breadcrumbs-list" }, h("li", { key: '37e0da2803814556bac7102e4e27b13cfd268472' }, h("a", { key: 'b11a8dba7b19dac336dc5905dd74b84a9b83da58', href: this.homeUrl, class: "breadcrumb-link" }, h("span", { key: '147009734e9174d7b9541c3f5325d914ef5d35c0', class: "visually-hidden" }, this.homeText), h("post-icon", { key: '56dd5647116c03c11506fb1e2957edeb389c5718', name: "home", class: "home-icon" }))), this.isConcatenated ? (h("div", { class: "menu-trigger-wrapper", "aria-label": "More breadcrumbs", onKeyDown: e => {
83
88
  if (e.key === 'Enter' || e.key === ' ') {
84
89
  e.preventDefault();
85
90
  this.handleBreadcrumbItemClick();
@@ -90,7 +95,7 @@ export class PostBreadcrumbs {
90
95
  linkElement?.click();
91
96
  e.preventDefault();
92
97
  }
93
- } }, item.url ? h("a", { href: item.url }, item.text) : h("span", null, item.text)))))))) : (visibleItems.map(item => (h("post-breadcrumb-item", { url: item.url, key: item.url || item.text }, item.text)))), this.lastItem && (h("post-breadcrumb-item", { key: '9820e7cc99072f16f9118e3783de126b1c65c51c', url: this.lastItem.url, "aria-current": "page", tabindex: -1 }, this.lastItem.text))), h("div", { key: '960f5784f11bd87e787722bd888cf91ec65329e1', class: "hidden-items" }, h("a", { key: '73dfb29ff5b45c6e3fe9a8f88abfde56fc9bb5e3', href: this.homeUrl, class: "hidden-breadcrumb-item" }, h("span", { key: 'bf6be08c70fca37879312b2adbf2808d83599cf3', class: "visually-hidden" }, this.homeText), h("post-icon", { key: '8c94c725dc315ac31187e079cb01def2891ac352', name: "home", class: "home-icon" })), this.breadcrumbItems.map(item => (h("post-breadcrumb-item", { url: item.url, key: `hidden-${item.url || item.text}`, class: "hidden-breadcrumb-item" }, item.text)))))));
98
+ } }, item.url ? h("a", { href: item.url }, item.text) : h("span", null, item.text)))))))) : (visibleItems.map(item => (h("post-breadcrumb-item", { url: item.url, key: item.url || item.text }, item.text)))), this.lastItem && (h("post-breadcrumb-item", { key: 'ca1fe70041a11fa14e04e3e3d4fce699f23a127f', url: this.lastItem.url, "aria-current": "page", tabindex: -1 }, this.lastItem.text))), h("div", { key: '360825da69d23943a55ceb7095fabcccbf65795b', class: "hidden-items" }, h("a", { key: '9c5dedc65e639c853bc537a93971a45c6d801d00', href: this.homeUrl, class: "hidden-breadcrumb-item" }, h("span", { key: '2e6961ca93e24ba8042cf15f2f8cc14511c3d374', class: "visually-hidden" }, this.homeText), h("post-icon", { key: 'ea61643af1b2384e931ecbf5b9ff48950b69719e', name: "home", class: "home-icon" })), this.breadcrumbItems.map(item => (h("post-breadcrumb-item", { url: item.url, key: `hidden-${item.url || item.text}`, class: "hidden-breadcrumb-item" }, item.text)))))));
94
99
  }
95
100
  static get is() { return "post-breadcrumbs"; }
96
101
  static get encapsulation() { return "shadow"; }
@@ -114,7 +119,7 @@ export class PostBreadcrumbs {
114
119
  "resolved": "string",
115
120
  "references": {}
116
121
  },
117
- "required": false,
122
+ "required": true,
118
123
  "optional": false,
119
124
  "docs": {
120
125
  "tags": [],
@@ -154,7 +159,10 @@ export class PostBreadcrumbs {
154
159
  static get watchers() {
155
160
  return [{
156
161
  "propName": "homeUrl",
157
- "methodName": "validateUrl"
162
+ "methodName": "validateHomeUrl"
163
+ }, {
164
+ "propName": "homeText",
165
+ "methodName": "validateHomeText"
158
166
  }];
159
167
  }
160
168
  }