@swisspost/design-system-components 10.0.0-next.70 → 10.0.0-next.72

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 (460) hide show
  1. package/dist/cjs/breakpoints-B0Olgvgc.js +206 -0
  2. package/dist/cjs/component-on-ready-CifOTqw1.js +24 -0
  3. package/dist/cjs/create-validator-decorator-Bnx17kwi.js +223 -0
  4. package/dist/cjs/{focusable-ZqET_zrB.js → focusable-COT2uiEV.js} +25 -4
  5. package/dist/cjs/{index-DPdHkdGf.js → index-ngUOBQot.js} +17 -13
  6. package/dist/cjs/loader.cjs.js +2 -2
  7. package/dist/cjs/nanoid-CmjyF1Cm.js +20 -0
  8. package/dist/cjs/one-of-BHyX4vYq.js +27 -0
  9. package/dist/cjs/{package-Ds_LS1pB.js → package-Bi-tiNRc.js} +1 -1
  10. package/dist/cjs/pattern-BgBx5zGQ.js +27 -0
  11. package/dist/cjs/post-accordion_2.cjs.entry.js +18 -24
  12. package/dist/cjs/post-autocomplete.cjs.entry.js +27 -14
  13. package/dist/cjs/post-avatar.cjs.entry.js +33 -54
  14. package/dist/cjs/post-back-to-top.cjs.entry.js +21 -12
  15. package/dist/cjs/post-banner.cjs.entry.js +9 -14
  16. package/dist/cjs/post-breadcrumb-item.cjs.entry.js +48 -41
  17. package/dist/cjs/post-breadcrumbs.cjs.entry.js +106 -105
  18. package/dist/cjs/post-closebutton_14.cjs.entry.js +257 -288
  19. package/dist/cjs/post-collapsible_2.cjs.entry.js +57 -40
  20. package/dist/cjs/post-components.cjs.js +2 -2
  21. package/dist/cjs/post-date-picker.cjs.entry.js +154 -144
  22. package/dist/cjs/post-footer.cjs.entry.js +26 -19
  23. package/dist/cjs/post-linkarea.cjs.entry.js +3 -3
  24. package/dist/cjs/post-listbox-option.cjs.entry.js +4 -4
  25. package/dist/cjs/post-listbox.cjs.entry.js +4 -6
  26. package/dist/cjs/post-login-widget.cjs.entry.js +35 -3
  27. package/dist/cjs/post-number-input.cjs.entry.js +6 -6
  28. package/dist/cjs/post-pagination.cjs.entry.js +53 -83
  29. package/dist/cjs/post-popover-trigger.cjs.entry.js +22 -19
  30. package/dist/cjs/post-popover.cjs.entry.js +25 -23
  31. package/dist/cjs/post-progressbar.cjs.entry.js +147 -0
  32. package/dist/cjs/post-rating.cjs.entry.js +34 -35
  33. package/dist/cjs/post-stepper-item.cjs.entry.js +3 -3
  34. package/dist/cjs/post-stepper.cjs.entry.js +49 -38
  35. package/dist/cjs/post-tab-item.cjs.entry.js +23 -15
  36. package/dist/cjs/post-tab-panel.cjs.entry.js +23 -16
  37. package/dist/cjs/post-tabs.cjs.entry.js +24 -30
  38. package/dist/cjs/post-tooltip-trigger.cjs.entry.js +34 -21
  39. package/dist/cjs/post-tooltip.cjs.entry.js +19 -16
  40. package/dist/cjs/required-lRDOdbd6.js +44 -0
  41. package/dist/cjs/type-shT641Eo.js +30 -0
  42. package/dist/cjs/url-DRUMqVBq.js +34 -0
  43. package/dist/collection/collection-manifest.json +1 -0
  44. package/dist/collection/components/post-accordion/post-accordion.js +11 -8
  45. package/dist/collection/components/post-accordion-item/post-accordion-item.js +4 -18
  46. package/dist/collection/components/post-autocomplete/post-autocomplete.js +23 -13
  47. package/dist/collection/components/post-avatar/avatar-utils.js +2 -2
  48. package/dist/collection/components/post-avatar/post-avatar.js +29 -72
  49. package/dist/collection/components/post-back-to-top/post-back-to-top.js +17 -10
  50. package/dist/collection/components/post-banner/post-banner.js +7 -14
  51. package/dist/collection/components/post-breadcrumb-item/post-breadcrumb-item.css +1 -1
  52. package/dist/collection/components/post-breadcrumb-item/post-breadcrumb-item.js +92 -47
  53. package/dist/collection/components/post-breadcrumb-item/variants.js +1 -0
  54. package/dist/collection/components/post-breadcrumbs/post-breadcrumbs.css +1 -1
  55. package/dist/collection/components/post-breadcrumbs/post-breadcrumbs.js +110 -114
  56. package/dist/collection/components/post-closebutton/post-closebutton.js +24 -27
  57. package/dist/collection/components/post-collapsible/post-collapsible.js +26 -16
  58. package/dist/collection/components/post-collapsible-trigger/post-collapsible-trigger.js +34 -30
  59. package/dist/collection/components/post-date-picker/post-date-picker.css +1 -1
  60. package/dist/collection/components/post-date-picker/post-date-picker.js +64 -96
  61. package/dist/collection/components/post-footer/post-footer.js +17 -13
  62. package/dist/collection/components/post-header/post-header.js +18 -24
  63. package/dist/collection/components/post-icon/post-icon.js +36 -48
  64. package/dist/collection/components/post-language-menu/post-language-menu.js +16 -22
  65. package/dist/collection/components/post-language-menu-item/post-language-menu-item.js +28 -39
  66. package/dist/collection/components/post-linkarea/post-linkarea.js +2 -2
  67. package/dist/collection/components/post-listbox/post-listbox.js +3 -5
  68. package/dist/collection/components/post-listbox-option/post-listbox-option.js +3 -3
  69. package/dist/collection/components/post-login-widget/post-login-widget.css +1 -0
  70. package/dist/collection/components/post-login-widget/post-login-widget.js +103 -5
  71. package/dist/collection/components/post-logo/post-logo.js +16 -13
  72. package/dist/collection/components/post-mainnavigation/post-mainnavigation.js +17 -13
  73. package/dist/collection/components/post-megadropdown/post-megadropdown.js +24 -23
  74. package/dist/collection/components/post-megadropdown-trigger/post-megadropdown-trigger.js +7 -15
  75. package/dist/collection/components/post-menu/post-menu.js +14 -24
  76. package/dist/collection/components/post-menu-item/post-menu-item.css +1 -1
  77. package/dist/collection/components/post-menu-trigger/post-menu-trigger.js +17 -13
  78. package/dist/collection/components/post-number-input/post-number-input.js +5 -5
  79. package/dist/collection/components/post-pagination/post-pagination.js +47 -83
  80. package/dist/collection/components/post-popover/post-popover.js +20 -22
  81. package/dist/collection/components/post-popover-trigger/post-popover-trigger.js +16 -14
  82. package/dist/collection/components/post-popovercontainer/post-popovercontainer.css +1 -1
  83. package/dist/collection/components/post-popovercontainer/post-popovercontainer.js +28 -34
  84. package/dist/collection/components/post-progressbar/post-progressbar.css +1 -0
  85. package/dist/collection/components/post-progressbar/post-progressbar.js +136 -0
  86. package/dist/collection/components/post-rating/post-rating.js +25 -29
  87. package/dist/collection/components/post-stepper/post-stepper.js +44 -36
  88. package/dist/collection/components/post-stepper-item/post-stepper-item.js +2 -2
  89. package/dist/collection/components/post-tab-item/post-tab-item.js +17 -13
  90. package/dist/collection/components/post-tab-panel/post-tab-panel.js +17 -14
  91. package/dist/collection/components/post-tabs/post-tabs.js +20 -7
  92. package/dist/collection/components/post-togglebutton/post-togglebutton.js +5 -3
  93. package/dist/collection/components/post-tooltip/post-tooltip.js +17 -16
  94. package/dist/collection/components/post-tooltip-trigger/post-tooltip-trigger.js +30 -19
  95. package/dist/collection/hydrate-stub/index.stub.js +5 -0
  96. package/dist/collection/test-setup.js +7 -0
  97. package/dist/collection/utils/index.js +4 -3
  98. package/dist/collection/utils/is-value-empty.js +1 -1
  99. package/dist/collection/utils/locales.js +9 -2
  100. package/dist/collection/utils/nanoid.js +16 -0
  101. package/dist/collection/utils/property-decorators/array-of.js +22 -0
  102. package/dist/collection/utils/property-decorators/bound.js +75 -0
  103. package/dist/collection/utils/property-decorators/create-validator-decorator.js +211 -0
  104. package/dist/collection/utils/property-decorators/date.js +21 -0
  105. package/dist/collection/utils/property-decorators/index.js +9 -0
  106. package/dist/collection/utils/property-decorators/iso-date.js +21 -0
  107. package/dist/collection/utils/property-decorators/one-of.js +22 -0
  108. package/dist/collection/utils/property-decorators/pattern.js +22 -0
  109. package/dist/collection/utils/property-decorators/required.js +40 -0
  110. package/dist/collection/utils/property-decorators/type.js +25 -0
  111. package/dist/collection/utils/property-decorators/url.js +29 -0
  112. package/dist/component-names.json +1 -0
  113. package/dist/components/breakpoints.js +1 -0
  114. package/dist/components/component-on-ready.js +1 -0
  115. package/dist/components/focusable.js +1 -1
  116. package/dist/components/index.d.ts +2 -0
  117. package/dist/components/index.js +1 -1
  118. package/dist/components/nanoid.js +1 -0
  119. package/dist/components/one-of.js +1 -0
  120. package/dist/components/package.js +1 -1
  121. package/dist/components/pattern.js +1 -0
  122. package/dist/components/post-accordion-item2.js +1 -1
  123. package/dist/components/post-accordion2.js +1 -1
  124. package/dist/components/post-autocomplete.js +1 -1
  125. package/dist/components/post-avatar.js +1 -1
  126. package/dist/components/post-avatar2.js +1 -0
  127. package/dist/components/post-back-to-top.js +1 -1
  128. package/dist/components/post-banner.js +1 -1
  129. package/dist/components/post-breadcrumb-item.js +1 -1
  130. package/dist/components/post-breadcrumbs.js +1 -1
  131. package/dist/components/post-closebutton2.js +1 -1
  132. package/dist/components/post-collapsible-trigger2.js +1 -1
  133. package/dist/components/post-collapsible2.js +1 -1
  134. package/dist/components/post-date-picker.js +1 -1
  135. package/dist/components/post-footer.js +1 -1
  136. package/dist/components/post-header.js +1 -1
  137. package/dist/components/post-icon2.js +1 -1
  138. package/dist/components/post-language-menu-item.js +1 -1
  139. package/dist/components/post-language-menu.js +1 -1
  140. package/dist/components/post-linkarea.js +1 -1
  141. package/dist/components/post-listbox-option.js +1 -1
  142. package/dist/components/post-listbox.js +1 -1
  143. package/dist/components/post-login-widget.js +1 -1
  144. package/dist/components/post-logo.js +1 -1
  145. package/dist/components/post-mainnavigation.js +1 -1
  146. package/dist/components/post-megadropdown-trigger.js +1 -1
  147. package/dist/components/post-megadropdown.js +1 -1
  148. package/dist/components/post-menu-item2.js +1 -1
  149. package/dist/components/post-menu-trigger2.js +1 -1
  150. package/dist/components/post-menu2.js +1 -1
  151. package/dist/components/post-number-input.js +1 -1
  152. package/dist/components/post-pagination.js +1 -1
  153. package/dist/components/post-popover-trigger.js +1 -1
  154. package/dist/components/post-popover.js +1 -1
  155. package/dist/components/post-popovercontainer2.js +1 -1
  156. package/dist/components/post-progressbar.d.ts +11 -0
  157. package/dist/components/post-progressbar.js +1 -0
  158. package/dist/components/post-rating.js +1 -1
  159. package/dist/components/post-stepper-item.js +1 -1
  160. package/dist/components/post-stepper.js +1 -1
  161. package/dist/components/post-tab-item.js +1 -1
  162. package/dist/components/post-tab-panel.js +1 -1
  163. package/dist/components/post-tabs.js +1 -1
  164. package/dist/components/post-togglebutton2.js +1 -1
  165. package/dist/components/post-tooltip-trigger.js +1 -1
  166. package/dist/components/post-tooltip.js +1 -1
  167. package/dist/components/react/index.js +1 -1
  168. package/dist/components/react/p-4wtxqxXu.js +1 -0
  169. package/dist/components/react/p-85IGlhtB.js +1 -0
  170. package/dist/components/react/p-8LXe8Zt_.js +1 -0
  171. package/dist/components/react/p-B9ZFuYey.js +1 -0
  172. package/dist/components/react/p-BXqGI600.js +1 -0
  173. package/dist/components/react/p-BZSAV0-K.js +1 -0
  174. package/dist/components/react/p-B_WnO-QF.js +1 -0
  175. package/dist/components/react/p-BaB8wJvk.js +1 -0
  176. package/dist/components/react/p-Bg9dtyzK.js +1 -0
  177. package/dist/components/react/p-Bji_4dfL.js +1 -0
  178. package/dist/components/react/p-Bn66acGG.js +1 -0
  179. package/dist/components/react/p-BrY4VWTQ.js +1 -0
  180. package/dist/components/react/p-Bu2JeHDf.js +1 -0
  181. package/dist/components/react/p-BxoRVIIr.js +1 -0
  182. package/dist/components/react/p-CX2E_IXB.js +1 -0
  183. package/dist/components/react/p-Cd1TsNm7.js +1 -0
  184. package/dist/components/react/p-CkTAQJGd.js +1 -0
  185. package/dist/components/react/p-ClG-N42b.js +1 -0
  186. package/dist/components/react/p-D1zw8FxT.js +1 -0
  187. package/dist/components/react/p-DwuW52g5.js +1 -0
  188. package/dist/components/react/p-PM7l--ff.js +1 -0
  189. package/dist/components/react/p-lpWRZjJp.js +1 -0
  190. package/dist/components/react/post-accordion-item.js +1 -1
  191. package/dist/components/react/post-accordion.js +1 -1
  192. package/dist/components/react/post-autocomplete.js +1 -1
  193. package/dist/components/react/post-avatar.js +1 -1
  194. package/dist/components/react/post-back-to-top.js +1 -1
  195. package/dist/components/react/post-banner.js +1 -1
  196. package/dist/components/react/post-breadcrumb-item.js +1 -1
  197. package/dist/components/react/post-breadcrumbs.js +1 -1
  198. package/dist/components/react/post-closebutton.js +1 -1
  199. package/dist/components/react/post-collapsible-trigger.js +1 -1
  200. package/dist/components/react/post-collapsible.js +1 -1
  201. package/dist/components/react/post-date-picker.js +1 -1
  202. package/dist/components/react/post-footer.js +1 -1
  203. package/dist/components/react/post-header.js +1 -1
  204. package/dist/components/react/post-icon.js +1 -1
  205. package/dist/components/react/post-language-menu-item.js +1 -1
  206. package/dist/components/react/post-language-menu.js +1 -1
  207. package/dist/components/react/post-linkarea.js +1 -1
  208. package/dist/components/react/post-listbox-option.js +1 -1
  209. package/dist/components/react/post-listbox.js +1 -1
  210. package/dist/components/react/post-login-widget.js +1 -1
  211. package/dist/components/react/post-logo.js +1 -1
  212. package/dist/components/react/post-mainnavigation.js +1 -1
  213. package/dist/components/react/post-megadropdown-trigger.js +1 -1
  214. package/dist/components/react/post-megadropdown.js +1 -1
  215. package/dist/components/react/post-menu-item.js +1 -1
  216. package/dist/components/react/post-menu-trigger.js +1 -1
  217. package/dist/components/react/post-menu.js +1 -1
  218. package/dist/components/react/post-number-input.js +1 -1
  219. package/dist/components/react/post-pagination.js +1 -1
  220. package/dist/components/react/post-popover-trigger.js +1 -1
  221. package/dist/components/react/post-popover.js +1 -1
  222. package/dist/components/react/post-popovercontainer.js +1 -1
  223. package/dist/components/react/post-progressbar.d.ts +11 -0
  224. package/dist/components/react/post-progressbar.js +1 -0
  225. package/dist/components/react/post-rating.js +1 -1
  226. package/dist/components/react/post-stepper-item.js +1 -1
  227. package/dist/components/react/post-stepper.js +1 -1
  228. package/dist/components/react/post-tab-item.js +1 -1
  229. package/dist/components/react/post-tab-panel.js +1 -1
  230. package/dist/components/react/post-tabs.js +1 -1
  231. package/dist/components/react/post-togglebutton.js +1 -1
  232. package/dist/components/react/post-tooltip-trigger.js +1 -1
  233. package/dist/components/react/post-tooltip.js +1 -1
  234. package/dist/components/required.js +1 -0
  235. package/dist/components/type.js +1 -0
  236. package/dist/components/url.js +1 -0
  237. package/dist/docs.json +307 -72
  238. package/dist/esm/breakpoints-BQ3HlJPr.js +202 -0
  239. package/dist/esm/component-on-ready-lpWRZjJp.js +22 -0
  240. package/dist/esm/create-validator-decorator-D8qwF5Qe.js +218 -0
  241. package/dist/esm/{focusable-BD_WT2MO.js → focusable-C7afHKmo.js} +25 -5
  242. package/dist/esm/{index-DmAi35UF.js → index-BbDawWJ5.js} +17 -13
  243. package/dist/esm/loader.js +3 -3
  244. package/dist/esm/nanoid-8LXe8Zt_.js +18 -0
  245. package/dist/esm/one-of-GPr3FflU.js +25 -0
  246. package/dist/esm/package-ClG-N42b.js +3 -0
  247. package/dist/esm/pattern-BWPRYpYv.js +25 -0
  248. package/dist/esm/post-accordion_2.entry.js +17 -23
  249. package/dist/esm/post-autocomplete.entry.js +27 -14
  250. package/dist/esm/post-avatar.entry.js +33 -54
  251. package/dist/esm/post-back-to-top.entry.js +21 -12
  252. package/dist/esm/post-banner.entry.js +9 -14
  253. package/dist/esm/post-breadcrumb-item.entry.js +48 -41
  254. package/dist/esm/post-breadcrumbs.entry.js +106 -105
  255. package/dist/esm/post-closebutton_14.entry.js +252 -283
  256. package/dist/esm/post-collapsible_2.entry.js +57 -40
  257. package/dist/esm/post-components.js +3 -3
  258. package/dist/esm/post-date-picker.entry.js +151 -141
  259. package/dist/esm/post-footer.entry.js +21 -14
  260. package/dist/esm/post-linkarea.entry.js +3 -3
  261. package/dist/esm/post-listbox-option.entry.js +4 -4
  262. package/dist/esm/post-listbox.entry.js +4 -6
  263. package/dist/esm/post-login-widget.entry.js +35 -3
  264. package/dist/esm/post-number-input.entry.js +5 -5
  265. package/dist/esm/post-pagination.entry.js +52 -82
  266. package/dist/esm/post-popover-trigger.entry.js +20 -17
  267. package/dist/esm/post-popover.entry.js +25 -23
  268. package/dist/esm/post-progressbar.entry.js +145 -0
  269. package/dist/esm/post-rating.entry.js +29 -30
  270. package/dist/esm/post-stepper-item.entry.js +3 -3
  271. package/dist/esm/post-stepper.entry.js +49 -38
  272. package/dist/esm/post-tab-item.entry.js +22 -14
  273. package/dist/esm/post-tab-panel.entry.js +22 -15
  274. package/dist/esm/post-tabs.entry.js +23 -29
  275. package/dist/esm/post-tooltip-trigger.entry.js +34 -21
  276. package/dist/esm/post-tooltip.entry.js +19 -16
  277. package/dist/esm/required-uK-rZZjy.js +42 -0
  278. package/dist/esm/type-obmwEgkM.js +28 -0
  279. package/dist/esm/url-B28ByZCe.js +32 -0
  280. package/dist/post-components/p-00f55af5.entry.js +1 -0
  281. package/dist/post-components/p-0288484f.entry.js +1 -0
  282. package/dist/post-components/p-07cdd022.entry.js +1 -0
  283. package/dist/post-components/{p-c2e05ba0.entry.js → p-12047216.entry.js} +1 -1
  284. package/dist/post-components/p-17df4e91.entry.js +1 -0
  285. package/dist/post-components/p-17e046fa.entry.js +1 -0
  286. package/dist/post-components/p-29bd31a0.entry.js +1 -0
  287. package/dist/post-components/p-2c6b4e6a.entry.js +1 -0
  288. package/dist/post-components/p-3b05e01d.entry.js +1 -0
  289. package/dist/post-components/p-53fd5230.entry.js +1 -0
  290. package/dist/post-components/p-5b7e6369.entry.js +1 -0
  291. package/dist/post-components/p-5f4ca179.entry.js +1 -0
  292. package/dist/post-components/p-62b6154a.entry.js +1 -0
  293. package/dist/post-components/{p-77d5e17b.entry.js → p-686a6e22.entry.js} +1 -1
  294. package/dist/post-components/p-758fc84f.entry.js +1 -0
  295. package/dist/post-components/{p-570d64dd.entry.js → p-7f929bb9.entry.js} +1 -1
  296. package/dist/post-components/p-8LXe8Zt_.js +1 -0
  297. package/dist/post-components/p-9865f72c.entry.js +1 -0
  298. package/dist/post-components/p-99803d57.entry.js +1 -0
  299. package/dist/post-components/p-BQ3HlJPr.js +1 -0
  300. package/dist/post-components/p-BRNqUiXj.js +1 -0
  301. package/dist/post-components/p-BbDawWJ5.js +2 -0
  302. package/dist/post-components/p-BrY4VWTQ.js +1 -0
  303. package/dist/post-components/p-CVsNfXZd.js +1 -0
  304. package/dist/post-components/p-Ck2qPht6.js +1 -0
  305. package/dist/post-components/p-ClG-N42b.js +1 -0
  306. package/dist/post-components/p-D4F0BqBW.js +1 -0
  307. package/dist/post-components/p-DSNGJB58.js +1 -0
  308. package/dist/post-components/p-IUnDBhPg.js +1 -0
  309. package/dist/post-components/p-a0e0a760.entry.js +1 -0
  310. package/dist/post-components/p-a850652d.entry.js +1 -0
  311. package/dist/post-components/p-aac1a8ea.entry.js +1 -0
  312. package/dist/post-components/{p-092f8795.entry.js → p-b3f0f9a2.entry.js} +1 -1
  313. package/dist/post-components/p-c37dba4b.entry.js +1 -0
  314. package/dist/post-components/p-d061773b.entry.js +1 -0
  315. package/dist/post-components/p-e2370e94.entry.js +1 -0
  316. package/dist/post-components/p-f1ca1d3f.entry.js +1 -0
  317. package/dist/post-components/p-f2e5f44e.entry.js +1 -0
  318. package/dist/post-components/p-ff98ada4.entry.js +1 -0
  319. package/dist/post-components/p-lpWRZjJp.js +1 -0
  320. package/dist/post-components/post-components.css +2 -2
  321. package/dist/post-components/post-components.esm.js +1 -1
  322. package/dist/types/components/post-accordion/post-accordion.d.ts +1 -1
  323. package/dist/types/components/post-accordion-item/post-accordion-item.d.ts +0 -2
  324. package/dist/types/components/post-autocomplete/post-autocomplete.d.ts +0 -1
  325. package/dist/types/components/post-avatar/avatar-utils.d.ts +1 -1
  326. package/dist/types/components/post-avatar/post-avatar.d.ts +0 -13
  327. package/dist/types/components/post-back-to-top/post-back-to-top.d.ts +0 -1
  328. package/dist/types/components/post-banner/post-banner.d.ts +0 -1
  329. package/dist/types/components/post-breadcrumb-item/post-breadcrumb-item.d.ts +11 -11
  330. package/dist/types/components/post-breadcrumb-item/variants.d.ts +2 -0
  331. package/dist/types/components/post-breadcrumbs/post-breadcrumbs.d.ts +20 -26
  332. package/dist/types/components/post-closebutton/post-closebutton.d.ts +0 -3
  333. package/dist/types/components/post-collapsible/post-collapsible.d.ts +1 -2
  334. package/dist/types/components/post-collapsible-trigger/post-collapsible-trigger.d.ts +3 -6
  335. package/dist/types/components/post-date-picker/post-date-picker.d.ts +0 -12
  336. package/dist/types/components/post-footer/post-footer.d.ts +0 -1
  337. package/dist/types/components/post-header/post-header.d.ts +0 -2
  338. package/dist/types/components/post-icon/post-icon.d.ts +0 -6
  339. package/dist/types/components/post-language-menu/post-language-menu.d.ts +1 -3
  340. package/dist/types/components/post-language-menu-item/post-language-menu-item.d.ts +0 -5
  341. package/dist/types/components/post-login-widget/post-login-widget.d.ts +17 -2
  342. package/dist/types/components/post-logo/post-logo.d.ts +0 -1
  343. package/dist/types/components/post-mainnavigation/post-mainnavigation.d.ts +0 -1
  344. package/dist/types/components/post-megadropdown/post-megadropdown.d.ts +1 -3
  345. package/dist/types/components/post-megadropdown-trigger/post-megadropdown-trigger.d.ts +0 -2
  346. package/dist/types/components/post-menu/post-menu.d.ts +1 -4
  347. package/dist/types/components/post-menu-trigger/post-menu-trigger.d.ts +0 -1
  348. package/dist/types/components/post-pagination/post-pagination.d.ts +0 -17
  349. package/dist/types/components/post-popover/post-popover.d.ts +0 -3
  350. package/dist/types/components/post-popover-trigger/post-popover-trigger.d.ts +0 -1
  351. package/dist/types/components/post-popovercontainer/post-popovercontainer.d.ts +0 -3
  352. package/dist/types/components/post-progressbar/post-progressbar.d.ts +23 -0
  353. package/dist/types/components/post-rating/post-rating.d.ts +0 -4
  354. package/dist/types/components/post-stepper/post-stepper.d.ts +1 -4
  355. package/dist/types/components/post-tab-item/post-tab-item.d.ts +0 -1
  356. package/dist/types/components/post-tab-panel/post-tab-panel.d.ts +0 -1
  357. package/dist/types/components/post-tooltip/post-tooltip.d.ts +1 -3
  358. package/dist/types/components/post-tooltip-trigger/post-tooltip-trigger.d.ts +1 -1
  359. package/dist/types/components.d.ts +119 -29
  360. package/dist/types/modules.d.ts +2 -0
  361. package/dist/types/utils/index.d.ts +4 -3
  362. package/dist/types/utils/nanoid.d.ts +8 -0
  363. package/dist/types/utils/property-decorators/array-of.d.ts +9 -0
  364. package/dist/types/utils/property-decorators/bound.d.ts +36 -0
  365. package/dist/types/utils/property-decorators/create-validator-decorator.d.ts +48 -0
  366. package/dist/types/utils/property-decorators/date.d.ts +6 -0
  367. package/dist/types/utils/property-decorators/index.d.ts +9 -0
  368. package/dist/types/utils/property-decorators/iso-date.d.ts +6 -0
  369. package/dist/types/utils/property-decorators/one-of.d.ts +8 -0
  370. package/dist/types/utils/property-decorators/pattern.d.ts +8 -0
  371. package/dist/types/utils/property-decorators/required.d.ts +17 -0
  372. package/dist/types/utils/property-decorators/type.d.ts +9 -0
  373. package/dist/types/utils/property-decorators/url.d.ts +6 -0
  374. package/hydrate/index.js +1536 -115469
  375. package/hydrate/index.mjs +1536 -115469
  376. package/hydrate/index.stub.js +5 -0
  377. package/package.json +28 -18
  378. package/dist/cjs/index-YBj3gUJp.js +0 -114540
  379. package/dist/cjs/index-qCzRmwgB.js +0 -114
  380. package/dist/cjs/index.browser-BVb9l9T_.js +0 -16
  381. package/dist/collection/utils/property-checkers/check-array-of.js +0 -8
  382. package/dist/collection/utils/property-checkers/check-date.js +0 -13
  383. package/dist/collection/utils/property-checkers/check-iso-date.js +0 -9
  384. package/dist/collection/utils/property-checkers/check-one-of.js +0 -8
  385. package/dist/collection/utils/property-checkers/check-pattern.js +0 -8
  386. package/dist/collection/utils/property-checkers/check-type.js +0 -15
  387. package/dist/collection/utils/property-checkers/check-url.js +0 -15
  388. package/dist/collection/utils/property-checkers/constants.js +0 -1
  389. package/dist/collection/utils/property-checkers/empty-or.js +0 -9
  390. package/dist/collection/utils/property-checkers/index.js +0 -20
  391. package/dist/collection/utils/property-checkers/required-and.js +0 -14
  392. package/dist/components/heading-levels.js +0 -1
  393. package/dist/components/index.browser.js +0 -1
  394. package/dist/components/index2.js +0 -1
  395. package/dist/components/index3.js +0 -6
  396. package/dist/components/post-breadcrumb-item2.js +0 -1
  397. package/dist/components/react/p-B076QoO3.js +0 -1
  398. package/dist/components/react/p-B2BDAeHI.js +0 -1
  399. package/dist/components/react/p-B2iQay0-.js +0 -1
  400. package/dist/components/react/p-B_RL4AOE.js +0 -1
  401. package/dist/components/react/p-BoFDru4R.js +0 -1
  402. package/dist/components/react/p-BuL0WAoF.js +0 -1
  403. package/dist/components/react/p-C8b6-YQl.js +0 -1
  404. package/dist/components/react/p-CJcRbvrI.js +0 -6
  405. package/dist/components/react/p-Cu9RsvYK.js +0 -1
  406. package/dist/components/react/p-D6uA8DbL.js +0 -1
  407. package/dist/components/react/p-DSSN7xW4.js +0 -1
  408. package/dist/components/react/p-DW7sbg9f.js +0 -1
  409. package/dist/components/react/p-DgdnwpId.js +0 -1
  410. package/dist/components/react/p-Dmnnz3fB.js +0 -1
  411. package/dist/components/react/p-PuHMz_9_.js +0 -1
  412. package/dist/components/react/p-nA1BKco0.js +0 -1
  413. package/dist/components/react/p-r4txK0AC.js +0 -1
  414. package/dist/components/react/p-tpgRP2Dr.js +0 -1
  415. package/dist/esm/index-CJcRbvrI.js +0 -114535
  416. package/dist/esm/index-D9bU2pIE.js +0 -104
  417. package/dist/esm/index.browser-nA1BKco0.js +0 -14
  418. package/dist/esm/package-DW7sbg9f.js +0 -3
  419. package/dist/post-components/p-17ccebe6.entry.js +0 -1
  420. package/dist/post-components/p-1d58bec1.entry.js +0 -1
  421. package/dist/post-components/p-25c28493.entry.js +0 -1
  422. package/dist/post-components/p-29ada3d7.entry.js +0 -1
  423. package/dist/post-components/p-2fcca5ec.entry.js +0 -1
  424. package/dist/post-components/p-3cefd49e.entry.js +0 -1
  425. package/dist/post-components/p-3fea238c.entry.js +0 -1
  426. package/dist/post-components/p-5068ae7e.entry.js +0 -1
  427. package/dist/post-components/p-521178f5.entry.js +0 -1
  428. package/dist/post-components/p-534fed55.entry.js +0 -1
  429. package/dist/post-components/p-5f52cba3.entry.js +0 -1
  430. package/dist/post-components/p-86697a58.entry.js +0 -1
  431. package/dist/post-components/p-987bebe8.entry.js +0 -1
  432. package/dist/post-components/p-9ca5c297.entry.js +0 -1
  433. package/dist/post-components/p-9ea3066f.entry.js +0 -1
  434. package/dist/post-components/p-CJcRbvrI.js +0 -6
  435. package/dist/post-components/p-D9bU2pIE.js +0 -1
  436. package/dist/post-components/p-DW7sbg9f.js +0 -1
  437. package/dist/post-components/p-DmAi35UF.js +0 -2
  438. package/dist/post-components/p-PuHMz_9_.js +0 -1
  439. package/dist/post-components/p-a6fc33fa.entry.js +0 -1
  440. package/dist/post-components/p-ac853d6b.entry.js +0 -1
  441. package/dist/post-components/p-bd09bc20.entry.js +0 -1
  442. package/dist/post-components/p-c55b537b.entry.js +0 -1
  443. package/dist/post-components/p-dded4f13.entry.js +0 -1
  444. package/dist/post-components/p-e6ba44b1.entry.js +0 -1
  445. package/dist/post-components/p-ead1094e.entry.js +0 -1
  446. package/dist/post-components/p-f12e59a0.entry.js +0 -1
  447. package/dist/post-components/p-nA1BKco0.js +0 -1
  448. package/dist/types/home/runner/work/design-system/design-system/packages/components/.stencil/types/language-tags.d.ts +0 -1
  449. package/dist/types/utils/property-checkers/check-array-of.d.ts +0 -4
  450. package/dist/types/utils/property-checkers/check-date.d.ts +0 -3
  451. package/dist/types/utils/property-checkers/check-iso-date.d.ts +0 -3
  452. package/dist/types/utils/property-checkers/check-one-of.d.ts +0 -3
  453. package/dist/types/utils/property-checkers/check-pattern.d.ts +0 -3
  454. package/dist/types/utils/property-checkers/check-type.d.ts +0 -4
  455. package/dist/types/utils/property-checkers/check-url.d.ts +0 -3
  456. package/dist/types/utils/property-checkers/constants.d.ts +0 -1
  457. package/dist/types/utils/property-checkers/empty-or.d.ts +0 -3
  458. package/dist/types/utils/property-checkers/index.d.ts +0 -34
  459. package/dist/types/utils/property-checkers/required-and.d.ts +0 -3
  460. /package/dist/types/{language-tags.js → test-setup.d.ts} +0 -0
@@ -1,7 +1,16 @@
1
- import { h, Host } from "@stencil/core";
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
4
+ r = Reflect.decorate(decorators, target, key, desc);
5
+ else
6
+ for (var i = decorators.length - 1; i >= 0; i--)
7
+ if (d = decorators[i])
8
+ r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
9
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
10
+ };
11
+ import { nanoid, Required, Type } from "../../utils/index";
2
12
  import { version } from "../../../../package";
3
- import { checkRequiredAndType } from "../../utils/index";
4
- import { nanoid } from "nanoid";
13
+ import { h, Host } from "@stencil/core";
5
14
  /**
6
15
  * @slot default - Slot for the content of the tab item. Can contain text or an <a> element for navigation mode.
7
16
  */
@@ -10,9 +19,6 @@ export class PostTabItem {
10
19
  this.mutationObserver = new MutationObserver(this.checkNavigationMode.bind(this));
11
20
  this.isNavigationMode = false;
12
21
  }
13
- validateName() {
14
- checkRequiredAndType(this, 'name', 'string');
15
- }
16
22
  connectedCallback() {
17
23
  this.mutationObserver.observe(this.host, {
18
24
  childList: true,
@@ -33,7 +39,7 @@ export class PostTabItem {
33
39
  this.isNavigationMode = hasAnchor;
34
40
  }
35
41
  render() {
36
- return (h(Host, { key: 'ad908beacdffc7d6ce2eb0cab7a7a2868e876a34', id: this.tabId, role: !this.isNavigationMode ? 'tab' : undefined, "data-version": version, "data-navigation-mode": this.isNavigationMode.toString(), "aria-selected": !this.isNavigationMode ? 'false' : undefined, tabindex: !this.isNavigationMode ? '-1' : undefined, class: !this.isNavigationMode ? 'tab-title' : 'nav-item' }, h("slot", { key: 'd8208d5c9b78f31351ad6c32677b8c693ec449f6' })));
42
+ return (h(Host, { key: 'bd2713959afafd5dafa80c5f59e8249ffbb78b09', id: this.tabId, role: !this.isNavigationMode ? 'tab' : undefined, "data-version": version, "data-navigation-mode": this.isNavigationMode.toString(), "aria-selected": !this.isNavigationMode ? 'false' : undefined, tabindex: !this.isNavigationMode ? '-1' : undefined, class: !this.isNavigationMode ? 'tab-title' : 'nav-item' }, h("slot", { key: '87e22df81eae1ecef48a6ad443b959562d8a816b' })));
37
43
  }
38
44
  static get is() { return "post-tab-item"; }
39
45
  static get encapsulation() { return "shadow"; }
@@ -77,10 +83,8 @@ export class PostTabItem {
77
83
  };
78
84
  }
79
85
  static get elementRef() { return "host"; }
80
- static get watchers() {
81
- return [{
82
- "propName": "name",
83
- "methodName": "validateName"
84
- }];
85
- }
86
86
  }
87
+ __decorate([
88
+ Required(),
89
+ Type('string')
90
+ ], PostTabItem.prototype, "name", void 0);
@@ -1,21 +1,26 @@
1
- import { h, Host } from "@stencil/core";
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
4
+ r = Reflect.decorate(decorators, target, key, desc);
5
+ else
6
+ for (var i = decorators.length - 1; i >= 0; i--)
7
+ if (d = decorators[i])
8
+ r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
9
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
10
+ };
11
+ import { nanoid, Required, Type } from "../../utils/index";
2
12
  import { version } from "../../../../package";
3
- import { nanoid } from "nanoid";
4
- import { checkRequiredAndType } from "../../utils/index";
13
+ import { h, Host } from "@stencil/core";
5
14
  /**
6
15
  * @slot default - Slot for placing the content of the tab panel.
7
16
  */
8
17
  export class PostTabPanel {
9
- validateFor() {
10
- checkRequiredAndType(this, 'for', 'string');
11
- }
12
18
  componentWillLoad() {
13
- this.validateFor();
14
19
  // get the id set on the host element or use a random id by default
15
20
  this.panelId = `panel-${this.host.id || nanoid(6)}`;
16
21
  }
17
22
  render() {
18
- return (h(Host, { key: 'd80c058e686d94347bfcb266f35f73247fc6db5a', "data-version": version, id: this.panelId, role: "tabpanel", slot: "panels" }, h("slot", { key: 'dc226cf7fe57939fd53a8f1cc68c9eaf766d5c1e' })));
23
+ return (h(Host, { key: 'a67cc32e99a26cafcdb39968252012d8b67810b1', "data-version": version, id: this.panelId, role: "tabpanel", slot: "panels" }, h("slot", { key: '2435e43fcecac9a863e4ba2fc215efa7b03c7c18' })));
19
24
  }
20
25
  static get is() { return "post-tab-panel"; }
21
26
  static get encapsulation() { return "shadow"; }
@@ -58,10 +63,8 @@ export class PostTabPanel {
58
63
  };
59
64
  }
60
65
  static get elementRef() { return "host"; }
61
- static get watchers() {
62
- return [{
63
- "propName": "for",
64
- "methodName": "validateFor"
65
- }];
66
- }
67
66
  }
67
+ __decorate([
68
+ Required(),
69
+ Type('string')
70
+ ], PostTabPanel.prototype, "for", void 0);
@@ -1,7 +1,17 @@
1
- import { h, Host, } from "@stencil/core";
2
- import { version } from "../../../../package";
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
4
+ r = Reflect.decorate(decorators, target, key, desc);
5
+ else
6
+ for (var i = decorators.length - 1; i >= 0; i--)
7
+ if (d = decorators[i])
8
+ r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
9
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
10
+ };
3
11
  import { fade } from "../../animations/index";
4
- import { componentOnReady, checkRequiredAndType } from "../../utils/index";
12
+ import { componentOnReady, Type } from "../../utils/index";
13
+ import { version } from "../../../../package";
14
+ import { h, Host, } from "@stencil/core";
5
15
  /**
6
16
  * @slot default - Slot for placing tab items. Each tab item should be a <post-tab-item> element.
7
17
  * @slot panels - Slot for placing tab panels. Each tab panel should be a <post-tab-panel> element.
@@ -26,8 +36,8 @@ export class PostTabs {
26
36
  return Array.from(this.host.querySelectorAll('post-tab-panel')).filter(panel => panel.closest('post-tabs') === this.host);
27
37
  }
28
38
  validateLabel() {
29
- if (this.isNavigationMode) {
30
- checkRequiredAndType(this, 'label', 'string');
39
+ if (this.isNavigationMode && !this.label) {
40
+ console.error(`[${this.host.localName}] Property "label" is required in navigation mode. Received: ${JSON.stringify(this.label)}.`, this.host);
31
41
  }
32
42
  }
33
43
  componentWillRender() {
@@ -291,10 +301,10 @@ export class PostTabs {
291
301
  }
292
302
  render() {
293
303
  const TabsContainer = this.isNavigationMode ? 'nav' : 'div';
294
- return (h(Host, { key: '4eb78778cb1a98e78714b5b8d69d15eaa68170c6', "data-version": version }, h("div", { key: '203c1529d44e676d40dd4f87593bcce07901079f', class: "tabs-wrapper", part: "post-tabs" }, h(TabsContainer, { key: '70f132a96d11fdcc0f0e9bab5053cc3a188b5b04', class: "tabs", role: this.isNavigationMode ? undefined : 'tablist', "aria-label": this.isNavigationMode ? this.label : undefined }, h("slot", { key: '24e2b06bf1b884d83d6c915d4c54029856f2a0ec', onSlotchange: () => {
304
+ return (h(Host, { key: '3b674ed455e34a7efc1c1ffed14ac719a7ecb061', "data-version": version }, h("div", { key: '749f4695adc7c3125bfb678606249c48a4d7ea31', class: "tabs-wrapper", part: "post-tabs" }, h(TabsContainer, { key: 'c06c83dbcbdf9f3fd38f01db7beae181748b369d', class: "tabs", role: this.isNavigationMode ? undefined : 'tablist', "aria-label": this.isNavigationMode ? this.label : undefined }, h("slot", { key: 'b065d0200fb2d4b6a63e23141d3e625a4147a93d', onSlotchange: () => {
295
305
  this.moveMisplacedTabs();
296
306
  this.enableTabs();
297
- } }))), !this.isNavigationMode && (h("div", { key: 'bd6530a08d31258fa028761f44f0db4dc12541ec', class: "tab-content", part: "post-tabs-content" }, h("slot", { key: 'df50010f2b6cfbd77bc435bedbff1677415869e5', name: "panels", onSlotchange: () => this.moveMisplacedPanels() })))));
307
+ } }))), !this.isNavigationMode && (h("div", { key: '8dc41274f8c9da24b2d65eebf213ea35c41368d0', class: "tab-content", part: "post-tabs-content" }, h("slot", { key: 'e859256ebcb60fc0457349ca991508406b3bc309', name: "panels", onSlotchange: () => this.moveMisplacedPanels() })))));
298
308
  }
299
309
  static get is() { return "post-tabs"; }
300
310
  static get encapsulation() { return "shadow"; }
@@ -430,3 +440,6 @@ export class PostTabs {
430
440
  }];
431
441
  }
432
442
  }
443
+ __decorate([
444
+ Type('string')
445
+ ], PostTabs.prototype, "label", void 0);
@@ -1,5 +1,5 @@
1
- import { Host, h } from "@stencil/core";
2
1
  import { version } from "../../../../package";
2
+ import { h, Host } from "@stencil/core";
3
3
  /**
4
4
  * @slot default - Slot for the content of the button.
5
5
  */
@@ -24,10 +24,12 @@ export class PostTogglebutton {
24
24
  // add event listener in capture phase so the toggle state is updated
25
25
  // before any parent bubble listeners react to the click.
26
26
  this.host.addEventListener('click', () => this.handleClick(), { capture: true });
27
- this.host.addEventListener('keydown', (e) => this.handleKeydown(e), { capture: true });
27
+ this.host.addEventListener('keydown', (e) => this.handleKeydown(e), {
28
+ capture: true,
29
+ });
28
30
  }
29
31
  render() {
30
- return (h(Host, { key: '9d5a1290041d0a1959efceb520423124e5a09270', "data-version": version, role: "button", tabindex: "0", "aria-pressed": this.toggled.toString() }, h("slot", { key: '9168b19b5ddd39dcf61139ff335db773d3da1a1a' })));
32
+ return (h(Host, { key: '6659870a07cf41d8808660906165797572f6a24d', "data-version": version, role: "button", tabindex: "0", "aria-pressed": this.toggled.toString() }, h("slot", { key: '08e6e5b43eeff5239eb40ec8ee960076058dede1' })));
31
33
  }
32
34
  static get is() { return "post-togglebutton"; }
33
35
  static get encapsulation() { return "shadow"; }
@@ -1,7 +1,17 @@
1
- import { h, Host } from "@stencil/core";
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
4
+ r = Reflect.decorate(decorators, target, key, desc);
5
+ else
6
+ for (var i = decorators.length - 1; i >= 0; i--)
7
+ if (d = decorators[i])
8
+ r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
9
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
10
+ };
11
+ import { PLACEMENT_TYPES } from "../../types/placement";
12
+ import { OneOf } from "../../utils/index";
2
13
  import { version } from "../../../../package";
3
- import { checkEmptyOrOneOf } from "../../utils/index";
4
- import { PLACEMENT_TYPES } from "../../types/index";
14
+ import { h, Host } from "@stencil/core";
5
15
  export class PostTooltip {
6
16
  constructor() {
7
17
  /**
@@ -19,12 +29,6 @@ export class PostTooltip {
19
29
  */
20
30
  this.open = false;
21
31
  }
22
- validatePlacement() {
23
- checkEmptyOrOneOf(this, 'placement', PLACEMENT_TYPES);
24
- }
25
- componentWillLoad() {
26
- this.validatePlacement();
27
- }
28
32
  componentDidLoad() {
29
33
  if (!this.host.id) {
30
34
  console.error(
@@ -64,7 +68,7 @@ export class PostTooltip {
64
68
  }
65
69
  render() {
66
70
  const popoverClass = `${this.arrow ? 'has-arrow' : ''}`;
67
- return (h(Host, { key: '4822f0831a0ce3e74e7eeb181f562b2e4624efc8', "data-version": version }, h("post-popovercontainer", { key: 'ba403db39900c4fddc6ab7dca4be73c17b2e60bf', safeSpace: "trapezoid", class: popoverClass, role: "tooltip", arrow: this.arrow, placement: this.placement, onPostBeforeToggle: e => this.handleBeforeToggle(e), ref: (el) => (this.popoverRef = el) }, h("slot", { key: '205a693e6e0c2ed41c7c8b5a2dd8ae214f20e199' }))));
71
+ return (h(Host, { key: '8186d5446993e1c21c107a496239e56af2493e87', "data-version": version }, h("post-popovercontainer", { key: '6f916cddf8f3b577b7920b02c001905b782b6ff7', safeSpace: "trapezoid", class: popoverClass, role: "tooltip", arrow: this.arrow, placement: this.placement, onPostBeforeToggle: e => this.handleBeforeToggle(e), ref: (el) => (this.popoverRef = el) }, h("slot", { key: '0443322d0ef00792b14e69fd55abaf42f64c0838' }))));
68
72
  }
69
73
  static get is() { return "post-tooltip"; }
70
74
  static get encapsulation() { return "shadow"; }
@@ -234,10 +238,7 @@ export class PostTooltip {
234
238
  };
235
239
  }
236
240
  static get elementRef() { return "host"; }
237
- static get watchers() {
238
- return [{
239
- "propName": "placement",
240
- "methodName": "validatePlacement"
241
- }];
242
- }
243
241
  }
242
+ __decorate([
243
+ OneOf(PLACEMENT_TYPES)
244
+ ], PostTooltip.prototype, "placement", void 0);
@@ -1,13 +1,18 @@
1
- import { h, Host, Build } from "@stencil/core";
2
- import { checkEmptyOrType } from "../../utils/index";
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
4
+ r = Reflect.decorate(decorators, target, key, desc);
5
+ else
6
+ for (var i = decorators.length - 1; i >= 0; i--)
7
+ if (d = decorators[i])
8
+ r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
9
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
10
+ };
11
+ import { Required, Type } from "../../utils/index";
3
12
  import { version } from "../../../../package";
4
- import isFocusable from "ally.js/is/focusable";
13
+ import { Build, h, Host } from "@stencil/core";
5
14
  const TRIGGER_EVENTS = ['pointerenter', 'pointerleave', 'focusin', 'focusout', 'long-press'];
6
- if (Build.isBrowser) {
7
- (async () => {
8
- await import('long-press-event');
9
- })();
10
- }
15
+ let isFocusable;
11
16
  /**
12
17
  * @slot default - Content to trigger the tooltip. Can contain any focusable element or will be made focusable automatically.
13
18
  */
@@ -28,15 +33,23 @@ export class PostTooltipTrigger {
28
33
  this.boundTriggerHandler = this.handleTriggerEvent.bind(this);
29
34
  this.boundTooltipHandler = this.handleTooltipEvent.bind(this);
30
35
  }
31
- validateControlFor() {
32
- checkEmptyOrType(this, 'for', 'string');
33
- }
34
36
  get tooltip() {
35
37
  if (Build.isServer)
36
38
  return null;
37
39
  const ref = document.getElementById(this.for);
38
40
  return ref?.localName === 'post-tooltip' ? ref : null;
39
41
  }
42
+ componentWillLoad() {
43
+ if (Build.isBrowser) {
44
+ // Fire-and-forget: long-press-event registers a global event listener on import.
45
+ import('long-press-event');
46
+ // Load ally.js lazily; setupTrigger uses optional chaining to handle the
47
+ // case where it hasn't loaded yet (falls back to adding tabindex="0").
48
+ import('ally.js/is/focusable').then(m => {
49
+ isFocusable ?? (isFocusable = m.default);
50
+ });
51
+ }
52
+ }
40
53
  componentDidLoad() {
41
54
  this.setupTrigger();
42
55
  this.attachListeners();
@@ -76,7 +89,7 @@ export class PostTooltipTrigger {
76
89
  setupTrigger() {
77
90
  this.trigger = this.host.querySelector('*');
78
91
  if (this.trigger) {
79
- if (!isFocusable(this.trigger)) {
92
+ if (!isFocusable?.(this.trigger)) {
80
93
  this.trigger.setAttribute('tabindex', '0');
81
94
  }
82
95
  const describedBy = this.trigger.getAttribute('aria-describedby') || '';
@@ -169,7 +182,7 @@ export class PostTooltipTrigger {
169
182
  this.tooltip?.hide();
170
183
  }
171
184
  render() {
172
- return (h(Host, { key: '7121e61cb791f41af5f41b5e2586b0a0399a4e05', "data-version": version }, h("slot", { key: '5de58a569a3bfedb44330c7b66150e58afdfea9b', onSlotchange: () => this.handleSlotChange() })));
185
+ return (h(Host, { key: 'a1f51fabc4417e30a2b3454f9faf239a3a1f8071', "data-version": version }, h("slot", { key: '0ee1caede699ad7bc0c529f6fd1dd85c63107136', onSlotchange: () => this.handleSlotChange() })));
173
186
  }
174
187
  static get is() { return "post-tooltip-trigger"; }
175
188
  static get encapsulation() { return "shadow"; }
@@ -227,10 +240,8 @@ export class PostTooltipTrigger {
227
240
  };
228
241
  }
229
242
  static get elementRef() { return "host"; }
230
- static get watchers() {
231
- return [{
232
- "propName": "for",
233
- "methodName": "validateControlFor"
234
- }];
235
- }
236
243
  }
244
+ __decorate([
245
+ Required(),
246
+ Type('string')
247
+ ], PostTooltipTrigger.prototype, "for", void 0);
@@ -0,0 +1,5 @@
1
+ /* eslint-disable unicorn/no-empty-file */
2
+ /**
3
+ * This is a stub file for stencils hydrate app (helps generating declarative shadow DOM (DSD) during server-side rendering).
4
+ * Whenever the hydrate app is imported in a non-nodejs environment, this stub file will be returned instead.
5
+ */
@@ -0,0 +1,7 @@
1
+ jest.mock('@stencil/core', () => {
2
+ const actual = jest.requireActual('@stencil/core');
3
+ return {
4
+ ...actual,
5
+ getElement: (ref) => ref.host ?? document.createElement('post-test'),
6
+ };
7
+ });
@@ -1,4 +1,4 @@
1
- export * from './property-checkers';
1
+ export * from './property-decorators';
2
2
  export * from './attribute-observer';
3
3
  export * from './breakpoints';
4
4
  export * from './component-on-ready';
@@ -7,10 +7,11 @@ export * from './event-from';
7
7
  export * from './get-focusable-children';
8
8
  export * from './get-root';
9
9
  export * from './get-slotted-element';
10
+ export * from './is-iso-date';
10
11
  export * from './is-motion-reduced';
11
12
  export * from './is-value-empty';
13
+ export * from './locales';
14
+ export * from './nanoid';
12
15
  export * from './repeat-on-long-press';
13
16
  export * from './sass-export';
14
17
  export * from './timeout';
15
- export * from './is-iso-date';
16
- export * from './locales';
@@ -1,4 +1,4 @@
1
- import { EMPTY_VALUES } from "./property-checkers/constants";
1
+ const EMPTY_VALUES = [undefined, null, '', Number.NaN];
2
2
  export function isValueEmpty(value) {
3
3
  return EMPTY_VALUES.some(v => Object.is(v, value));
4
4
  }
@@ -1,4 +1,3 @@
1
- import { check } from "language-tags";
2
1
  export const FALLBACK_LANGUAGE_CODE = 'en';
3
2
  export const FALLBACK_LOCALE_CODE = 'en-GB';
4
3
  export const BUDDHIST_CALENDAR_YEAR_OFFSET = 543;
@@ -13,5 +12,13 @@ export function getLocaleTextDirection(locale) {
13
12
  return new Date().toLocaleDateString(locale).includes(UNICODE_BIDI.rtl) ? 'rtl' : 'ltr';
14
13
  }
15
14
  export function isValidLocale(locale) {
16
- return locale !== undefined && check(locale);
15
+ if (!locale)
16
+ return false;
17
+ try {
18
+ return Intl.DateTimeFormat.supportedLocalesOf(locale).length > 0;
19
+ }
20
+ catch (err) {
21
+ console.log(err);
22
+ return false;
23
+ }
17
24
  }
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Initially copy'n'pasted from https://github.com/ai/nanoid/blob/main/non-secure/index.js, then adopted to our needs.
3
+ *
4
+ * Our custom implementation generates unique IDs for DOM elements efficiently without requiring cryptographic security (as nanoid).
5
+ * It eliminates the nanoid package dependency (as well as the transistive `node:crypto` dependency in node environments), meeting all our requirements.
6
+ * This approach optimizes performance and minimizes the codebase footprint.
7
+ */
8
+ const ALPHABET = 'useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict';
9
+ export function nanoid(size = 21) {
10
+ const bytes = crypto.getRandomValues(new Uint8Array(size));
11
+ let id = '';
12
+ for (let i = 0; i < size; i++) {
13
+ id += ALPHABET[bytes[i] & 63];
14
+ }
15
+ return id;
16
+ }
@@ -0,0 +1,22 @@
1
+ import { createValidatorDecorator, getValidationContext } from "./create-validator-decorator";
2
+ /**
3
+ * Property decorator that validates the property value is an array of the specified type.
4
+ *
5
+ * Validation runs on `componentDidLoad` and whenever the property value changes.
6
+ *
7
+ * @param type - The expected type of each array element ('boolean', 'number', 'string').
8
+ */
9
+ export function ArrayOf(type) {
10
+ return createValidatorDecorator({
11
+ priority: 1,
12
+ blocking: false,
13
+ run(component, property) {
14
+ const { value, showError } = getValidationContext(component, property);
15
+ if (!Array.isArray(value) || value.some(val => typeof val !== type)) {
16
+ showError(`must be a "${type}" array`);
17
+ return false;
18
+ }
19
+ return true;
20
+ },
21
+ });
22
+ }
@@ -0,0 +1,75 @@
1
+ import { createValidatorDecorator, getValidationContext, registerDependency, } from "./create-validator-decorator";
2
+ function resolveBound(component, bound) {
3
+ const resolvedValue = typeof bound === 'string' ? component[bound] : bound;
4
+ return typeof resolvedValue === 'number' ? resolvedValue : null;
5
+ }
6
+ function createBoundValidatorDecorator(bound, options, config) {
7
+ const decorator = createValidatorDecorator({
8
+ priority: 1,
9
+ blocking: false,
10
+ run(component, property) {
11
+ const { value, showError } = getValidationContext(component, property);
12
+ if (typeof value !== 'number') {
13
+ return true;
14
+ }
15
+ const resolvedBound = resolveBound(component, bound);
16
+ if (resolvedBound === null) {
17
+ if (typeof bound === 'string') {
18
+ const boundVal = component[bound];
19
+ const boundType = typeof boundVal;
20
+ if (boundType !== 'number') {
21
+ showError(`references property "${bound}" which must be a number but got ${boundType}`);
22
+ return false;
23
+ }
24
+ }
25
+ return true;
26
+ }
27
+ const include = options.include ?? config.includeDefault;
28
+ if (!config.compare(value, resolvedBound, include)) {
29
+ const displayBound = typeof bound === 'string' ? String(resolvedBound) : String(bound);
30
+ const expectation = config.formatExpectation(displayBound, include);
31
+ showError(`must be ${expectation}`);
32
+ return false;
33
+ }
34
+ return true;
35
+ },
36
+ });
37
+ return function (target, property) {
38
+ if (typeof bound === 'string') {
39
+ registerDependency(target, bound, property);
40
+ }
41
+ decorator(target, property);
42
+ };
43
+ }
44
+ /**
45
+ * Property decorator that validates the property value is greater than the specified minimum.
46
+ *
47
+ * Validation runs on `componentDidLoad` and whenever the property value changes.
48
+ *
49
+ * @typeParam T - Component type used to constrain property-name bounds.
50
+ * @param minimum - The minimum allowed value (exclusive by default) or property name to read it from.
51
+ * @param options - Configuration object with `includeMin` flag (default: false for exclusive behavior).
52
+ */
53
+ export function GreaterThan(minimum, options = {}) {
54
+ return createBoundValidatorDecorator(minimum, { include: options.includeMin }, {
55
+ includeDefault: false,
56
+ compare: (value, bound, include) => (include ? value >= bound : value > bound),
57
+ formatExpectation: (display, include) => include ? `greater than or equal to "${display}"` : `greater than "${display}"`,
58
+ });
59
+ }
60
+ /**
61
+ * Property decorator that validates the property value is less than the specified maximum.
62
+ *
63
+ * Validation runs on `componentDidLoad` and whenever the property value changes.
64
+ *
65
+ * @typeParam T - Component type used to constrain property-name bounds.
66
+ * @param maximum - The maximum allowed value (inclusive by default) or property name to read it from.
67
+ * @param options - Configuration object with `includeMax` flag (default: true for inclusive behavior).
68
+ */
69
+ export function LessThan(maximum, options = {}) {
70
+ return createBoundValidatorDecorator(maximum, { include: options.includeMax }, {
71
+ includeDefault: true,
72
+ compare: (value, bound, include) => (include ? value <= bound : value < bound),
73
+ formatExpectation: (display, include) => include ? `less than or equal to "${display}"` : `less than "${display}"`,
74
+ });
75
+ }