@sondor-technology/sondor-components 1.0.8 → 1.0.10

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 (437) hide show
  1. package/dist/components/accordion/accordion.constants.d.ts +5 -0
  2. package/dist/components/accordion/accordion.constants.d.ts.map +1 -0
  3. package/dist/components/accordion/accordion.constants.js +3 -0
  4. package/dist/components/accordion/accordion.constants.js.map +1 -0
  5. package/dist/components/accordion/accordion.d.ts +29 -0
  6. package/dist/components/accordion/accordion.d.ts.map +1 -0
  7. package/dist/components/accordion/accordion.js +226 -0
  8. package/dist/components/accordion/accordion.js.map +1 -0
  9. package/dist/components/alert/alert.constants.d.ts +2 -0
  10. package/dist/components/alert/alert.constants.d.ts.map +1 -1
  11. package/dist/components/alert/alert.d.ts +50 -2
  12. package/dist/components/alert/alert.d.ts.map +1 -1
  13. package/dist/components/alert/alert.js +285 -16
  14. package/dist/components/alert/alert.js.map +1 -1
  15. package/dist/components/avatar/avatar.d.ts +20 -0
  16. package/dist/components/avatar/avatar.d.ts.map +1 -0
  17. package/dist/components/avatar/avatar.js +100 -0
  18. package/dist/components/avatar/avatar.js.map +1 -0
  19. package/dist/components/back-to-top/back-to-top.d.ts +29 -0
  20. package/dist/components/back-to-top/back-to-top.d.ts.map +1 -0
  21. package/dist/components/back-to-top/back-to-top.js +149 -0
  22. package/dist/components/back-to-top/back-to-top.js.map +1 -0
  23. package/dist/components/bar-chart/bar-chart.d.ts +42 -0
  24. package/dist/components/bar-chart/bar-chart.d.ts.map +1 -0
  25. package/dist/components/bar-chart/bar-chart.js +298 -0
  26. package/dist/components/bar-chart/bar-chart.js.map +1 -0
  27. package/dist/components/breadcrumb/breadcrumb.js +2 -2
  28. package/dist/components/button/button.d.ts +1 -0
  29. package/dist/components/button/button.d.ts.map +1 -1
  30. package/dist/components/button/button.js +8 -8
  31. package/dist/components/button/button.js.map +1 -1
  32. package/dist/components/button-group/button-group.js +4 -4
  33. package/dist/components/calendar/calendar.d.ts.map +1 -1
  34. package/dist/components/calendar/calendar.js +21 -9
  35. package/dist/components/calendar/calendar.js.map +1 -1
  36. package/dist/components/chart/chart-base.d.ts +59 -0
  37. package/dist/components/chart/chart-base.d.ts.map +1 -0
  38. package/dist/components/chart/chart-base.js +261 -0
  39. package/dist/components/chart/chart-base.js.map +1 -0
  40. package/dist/components/chart/chart.utils.d.ts +27 -0
  41. package/dist/components/chart/chart.utils.d.ts.map +1 -0
  42. package/dist/components/chart/chart.utils.js +117 -0
  43. package/dist/components/chart/chart.utils.js.map +1 -0
  44. package/dist/components/code-block/code-block.d.ts +5 -0
  45. package/dist/components/code-block/code-block.d.ts.map +1 -1
  46. package/dist/components/code-block/code-block.js +34 -24
  47. package/dist/components/code-block/code-block.js.map +1 -1
  48. package/dist/components/consent/consent.d.ts +63 -0
  49. package/dist/components/consent/consent.d.ts.map +1 -0
  50. package/dist/components/consent/consent.js +327 -0
  51. package/dist/components/consent/consent.js.map +1 -0
  52. package/dist/components/consent/consent.utils.d.ts +36 -0
  53. package/dist/components/consent/consent.utils.d.ts.map +1 -0
  54. package/dist/components/consent/consent.utils.js +82 -0
  55. package/dist/components/consent/consent.utils.js.map +1 -0
  56. package/dist/components/contact/contact.d.ts +22 -0
  57. package/dist/components/contact/contact.d.ts.map +1 -0
  58. package/dist/components/contact/contact.js +83 -0
  59. package/dist/components/contact/contact.js.map +1 -0
  60. package/dist/components/container/container.d.ts +20 -0
  61. package/dist/components/container/container.d.ts.map +1 -0
  62. package/dist/components/container/container.js +68 -0
  63. package/dist/components/container/container.js.map +1 -0
  64. package/dist/components/content-card/content-card.js +4 -4
  65. package/dist/components/context-menu/context-menu.d.ts +89 -0
  66. package/dist/components/context-menu/context-menu.d.ts.map +1 -0
  67. package/dist/components/context-menu/context-menu.js +414 -0
  68. package/dist/components/context-menu/context-menu.js.map +1 -0
  69. package/dist/components/cron-builder/cron-builder.d.ts +5 -2
  70. package/dist/components/cron-builder/cron-builder.d.ts.map +1 -1
  71. package/dist/components/cron-builder/cron-builder.js +83 -15
  72. package/dist/components/cron-builder/cron-builder.js.map +1 -1
  73. package/dist/components/cta/cta.d.ts +20 -0
  74. package/dist/components/cta/cta.d.ts.map +1 -0
  75. package/dist/components/cta/cta.js +64 -0
  76. package/dist/components/cta/cta.js.map +1 -0
  77. package/dist/components/drawer/drawer.js +6 -6
  78. package/dist/components/faq/faq-item.d.ts +22 -0
  79. package/dist/components/faq/faq-item.d.ts.map +1 -0
  80. package/dist/components/faq/faq-item.js +117 -0
  81. package/dist/components/faq/faq-item.js.map +1 -0
  82. package/dist/components/faq/faq.d.ts +18 -0
  83. package/dist/components/faq/faq.d.ts.map +1 -0
  84. package/dist/components/faq/faq.js +38 -0
  85. package/dist/components/faq/faq.js.map +1 -0
  86. package/dist/components/feature-grid/feature-grid.d.ts +22 -0
  87. package/dist/components/feature-grid/feature-grid.d.ts.map +1 -0
  88. package/dist/components/feature-grid/feature-grid.js +55 -0
  89. package/dist/components/feature-grid/feature-grid.js.map +1 -0
  90. package/dist/components/feature-grid/feature.d.ts +18 -0
  91. package/dist/components/feature-grid/feature.d.ts.map +1 -0
  92. package/dist/components/feature-grid/feature.js +91 -0
  93. package/dist/components/feature-grid/feature.js.map +1 -0
  94. package/dist/components/field/field.js +2 -2
  95. package/dist/components/footer/footer.js +4 -4
  96. package/dist/components/form/form-reset.d.ts +7 -0
  97. package/dist/components/form/form-reset.d.ts.map +1 -0
  98. package/dist/components/form/form-reset.js +47 -0
  99. package/dist/components/form/form-reset.js.map +1 -0
  100. package/dist/components/form/form.d.ts +5 -0
  101. package/dist/components/form/form.d.ts.map +1 -1
  102. package/dist/components/form/form.js +17 -3
  103. package/dist/components/form/form.js.map +1 -1
  104. package/dist/components/grid/grid.d.ts +5 -0
  105. package/dist/components/grid/grid.d.ts.map +1 -1
  106. package/dist/components/grid/grid.js +86 -4
  107. package/dist/components/grid/grid.js.map +1 -1
  108. package/dist/components/heat-map/heat-map.d.ts +39 -0
  109. package/dist/components/heat-map/heat-map.d.ts.map +1 -0
  110. package/dist/components/heat-map/heat-map.js +306 -0
  111. package/dist/components/heat-map/heat-map.js.map +1 -0
  112. package/dist/components/hero/hero.d.ts +26 -0
  113. package/dist/components/hero/hero.d.ts.map +1 -0
  114. package/dist/components/hero/hero.js +132 -0
  115. package/dist/components/hero/hero.js.map +1 -0
  116. package/dist/components/icon/icon-paths.d.ts +84 -0
  117. package/dist/components/icon/icon-paths.d.ts.map +1 -1
  118. package/dist/components/icon/icon-paths.js +89 -0
  119. package/dist/components/icon/icon-paths.js.map +1 -1
  120. package/dist/components/icon/icon.d.ts +2 -0
  121. package/dist/components/icon/icon.d.ts.map +1 -1
  122. package/dist/components/icon/icon.js +10 -1
  123. package/dist/components/icon/icon.js.map +1 -1
  124. package/dist/components/image/image.d.ts +31 -0
  125. package/dist/components/image/image.d.ts.map +1 -0
  126. package/dist/components/image/image.js +179 -0
  127. package/dist/components/image/image.js.map +1 -0
  128. package/dist/components/input/input.js +4 -4
  129. package/dist/components/lazy/lazy.d.ts +34 -0
  130. package/dist/components/lazy/lazy.d.ts.map +1 -0
  131. package/dist/components/lazy/lazy.js +104 -0
  132. package/dist/components/lazy/lazy.js.map +1 -0
  133. package/dist/components/line-chart/line-chart.d.ts +37 -0
  134. package/dist/components/line-chart/line-chart.d.ts.map +1 -0
  135. package/dist/components/line-chart/line-chart.js +271 -0
  136. package/dist/components/line-chart/line-chart.js.map +1 -0
  137. package/dist/components/list/list-item.d.ts +45 -0
  138. package/dist/components/list/list-item.d.ts.map +1 -0
  139. package/dist/components/list/list-item.js +263 -0
  140. package/dist/components/list/list-item.js.map +1 -0
  141. package/dist/components/list/list.d.ts +50 -0
  142. package/dist/components/list/list.d.ts.map +1 -0
  143. package/dist/components/list/list.js +161 -0
  144. package/dist/components/list/list.js.map +1 -0
  145. package/dist/components/logo-cloud/logo-cloud.d.ts +19 -0
  146. package/dist/components/logo-cloud/logo-cloud.d.ts.map +1 -0
  147. package/dist/components/logo-cloud/logo-cloud.js +66 -0
  148. package/dist/components/logo-cloud/logo-cloud.js.map +1 -0
  149. package/dist/components/modal/modal.d.ts +12 -0
  150. package/dist/components/modal/modal.d.ts.map +1 -1
  151. package/dist/components/modal/modal.js +40 -11
  152. package/dist/components/modal/modal.js.map +1 -1
  153. package/dist/components/page-layout/page-layout.js +8 -8
  154. package/dist/components/pagination/pagination.d.ts +15 -0
  155. package/dist/components/pagination/pagination.d.ts.map +1 -0
  156. package/dist/components/pagination/pagination.js +126 -0
  157. package/dist/components/pagination/pagination.js.map +1 -0
  158. package/dist/components/pagination/pagination.utils.d.ts +3 -0
  159. package/dist/components/pagination/pagination.utils.d.ts.map +1 -0
  160. package/dist/components/pagination/pagination.utils.js +19 -0
  161. package/dist/components/pagination/pagination.utils.js.map +1 -0
  162. package/dist/components/pie-chart/pie-chart.d.ts +33 -0
  163. package/dist/components/pie-chart/pie-chart.d.ts.map +1 -0
  164. package/dist/components/pie-chart/pie-chart.js +233 -0
  165. package/dist/components/pie-chart/pie-chart.js.map +1 -0
  166. package/dist/components/pin-input/pin-input.js +4 -4
  167. package/dist/components/popover/popover.d.ts.map +1 -1
  168. package/dist/components/popover/popover.js +1 -3
  169. package/dist/components/popover/popover.js.map +1 -1
  170. package/dist/components/post-list/post-card.d.ts +16 -0
  171. package/dist/components/post-list/post-card.d.ts.map +1 -0
  172. package/dist/components/post-list/post-card.js +22 -0
  173. package/dist/components/post-list/post-card.js.map +1 -0
  174. package/dist/components/post-list/post-list.d.ts +17 -0
  175. package/dist/components/post-list/post-list.d.ts.map +1 -0
  176. package/dist/components/post-list/post-list.js +23 -0
  177. package/dist/components/post-list/post-list.js.map +1 -0
  178. package/dist/components/pricing/pricing-tier.d.ts +23 -0
  179. package/dist/components/pricing/pricing-tier.d.ts.map +1 -0
  180. package/dist/components/pricing/pricing-tier.js +144 -0
  181. package/dist/components/pricing/pricing-tier.js.map +1 -0
  182. package/dist/components/pricing/pricing.d.ts +18 -0
  183. package/dist/components/pricing/pricing.d.ts.map +1 -0
  184. package/dist/components/pricing/pricing.js +38 -0
  185. package/dist/components/pricing/pricing.js.map +1 -0
  186. package/dist/components/progress/progress.d.ts +17 -0
  187. package/dist/components/progress/progress.d.ts.map +1 -0
  188. package/dist/components/progress/progress.js +109 -0
  189. package/dist/components/progress/progress.js.map +1 -0
  190. package/dist/components/project-grid/project-card.d.ts +17 -0
  191. package/dist/components/project-grid/project-card.d.ts.map +1 -0
  192. package/dist/components/project-grid/project-card.js +23 -0
  193. package/dist/components/project-grid/project-card.js.map +1 -0
  194. package/dist/components/project-grid/project-grid.d.ts +17 -0
  195. package/dist/components/project-grid/project-grid.d.ts.map +1 -0
  196. package/dist/components/project-grid/project-grid.js +23 -0
  197. package/dist/components/project-grid/project-grid.js.map +1 -0
  198. package/dist/components/radio/radio.js +1 -1
  199. package/dist/components/reveal/reveal.constants.d.ts +10 -0
  200. package/dist/components/reveal/reveal.constants.d.ts.map +1 -0
  201. package/dist/components/reveal/reveal.constants.js +11 -0
  202. package/dist/components/reveal/reveal.constants.js.map +1 -0
  203. package/dist/components/reveal/reveal.d.ts +64 -0
  204. package/dist/components/reveal/reveal.d.ts.map +1 -0
  205. package/dist/components/reveal/reveal.js +352 -0
  206. package/dist/components/reveal/reveal.js.map +1 -0
  207. package/dist/components/scroll-progress/scroll-progress.d.ts +32 -0
  208. package/dist/components/scroll-progress/scroll-progress.d.ts.map +1 -0
  209. package/dist/components/scroll-progress/scroll-progress.js +120 -0
  210. package/dist/components/scroll-progress/scroll-progress.js.map +1 -0
  211. package/dist/components/section/card-row.d.ts +30 -0
  212. package/dist/components/section/card-row.d.ts.map +1 -0
  213. package/dist/components/section/card-row.js +174 -0
  214. package/dist/components/section/card-row.js.map +1 -0
  215. package/dist/components/section/card.d.ts +27 -0
  216. package/dist/components/section/card.d.ts.map +1 -0
  217. package/dist/components/section/card.js +205 -0
  218. package/dist/components/section/card.js.map +1 -0
  219. package/dist/components/section/row-item.d.ts +22 -0
  220. package/dist/components/section/row-item.d.ts.map +1 -0
  221. package/dist/components/section/row-item.js +53 -0
  222. package/dist/components/section/row-item.js.map +1 -0
  223. package/dist/components/section/section.d.ts +70 -0
  224. package/dist/components/section/section.d.ts.map +1 -0
  225. package/dist/components/section/section.js +240 -0
  226. package/dist/components/section/section.js.map +1 -0
  227. package/dist/components/select/select.js +3 -3
  228. package/dist/components/series-nav/series-nav.d.ts +29 -0
  229. package/dist/components/series-nav/series-nav.d.ts.map +1 -0
  230. package/dist/components/series-nav/series-nav.js +178 -0
  231. package/dist/components/series-nav/series-nav.js.map +1 -0
  232. package/dist/components/site-header/site-header.d.ts +51 -0
  233. package/dist/components/site-header/site-header.d.ts.map +1 -0
  234. package/dist/components/site-header/site-header.js +296 -0
  235. package/dist/components/site-header/site-header.js.map +1 -0
  236. package/dist/components/skeleton/skeleton.js +7 -7
  237. package/dist/components/sparkline/sparkline.d.ts +19 -0
  238. package/dist/components/sparkline/sparkline.d.ts.map +1 -0
  239. package/dist/components/sparkline/sparkline.js +99 -0
  240. package/dist/components/sparkline/sparkline.js.map +1 -0
  241. package/dist/components/spinner/spinner.d.ts +13 -0
  242. package/dist/components/spinner/spinner.d.ts.map +1 -0
  243. package/dist/components/spinner/spinner.js +65 -0
  244. package/dist/components/spinner/spinner.js.map +1 -0
  245. package/dist/components/split/split.d.ts +23 -0
  246. package/dist/components/split/split.d.ts.map +1 -0
  247. package/dist/components/split/split.js +104 -0
  248. package/dist/components/split/split.js.map +1 -0
  249. package/dist/components/stack/stack.d.ts +21 -0
  250. package/dist/components/stack/stack.d.ts.map +1 -0
  251. package/dist/components/stack/stack.js +102 -0
  252. package/dist/components/stack/stack.js.map +1 -0
  253. package/dist/components/stat-card/stat-card.d.ts +35 -0
  254. package/dist/components/stat-card/stat-card.d.ts.map +1 -0
  255. package/dist/components/stat-card/stat-card.js +199 -0
  256. package/dist/components/stat-card/stat-card.js.map +1 -0
  257. package/dist/components/stats/stat.d.ts +16 -0
  258. package/dist/components/stats/stat.d.ts.map +1 -0
  259. package/dist/components/stats/stat.js +51 -0
  260. package/dist/components/stats/stat.js.map +1 -0
  261. package/dist/components/stats/stats.d.ts +19 -0
  262. package/dist/components/stats/stats.d.ts.map +1 -0
  263. package/dist/components/stats/stats.js +45 -0
  264. package/dist/components/stats/stats.js.map +1 -0
  265. package/dist/components/switch/switch.js +2 -2
  266. package/dist/components/table/data-table.d.ts +115 -27
  267. package/dist/components/table/data-table.d.ts.map +1 -1
  268. package/dist/components/table/data-table.js +1012 -411
  269. package/dist/components/table/data-table.js.map +1 -1
  270. package/dist/components/table/data-table.utils.d.ts +81 -0
  271. package/dist/components/table/data-table.utils.d.ts.map +1 -0
  272. package/dist/components/table/data-table.utils.js +208 -0
  273. package/dist/components/table/data-table.utils.js.map +1 -0
  274. package/dist/components/table/table.d.ts +28 -0
  275. package/dist/components/table/table.d.ts.map +1 -1
  276. package/dist/components/table/table.js +161 -33
  277. package/dist/components/table/table.js.map +1 -1
  278. package/dist/components/team/person.d.ts +19 -0
  279. package/dist/components/team/person.d.ts.map +1 -0
  280. package/dist/components/team/person.js +123 -0
  281. package/dist/components/team/person.js.map +1 -0
  282. package/dist/components/team/team.d.ts +18 -0
  283. package/dist/components/team/team.d.ts.map +1 -0
  284. package/dist/components/team/team.js +36 -0
  285. package/dist/components/team/team.js.map +1 -0
  286. package/dist/components/testimonials/testimonial.d.ts +18 -0
  287. package/dist/components/testimonials/testimonial.d.ts.map +1 -0
  288. package/dist/components/testimonials/testimonial.js +115 -0
  289. package/dist/components/testimonials/testimonial.js.map +1 -0
  290. package/dist/components/testimonials/testimonials.d.ts +18 -0
  291. package/dist/components/testimonials/testimonials.d.ts.map +1 -0
  292. package/dist/components/testimonials/testimonials.js +36 -0
  293. package/dist/components/testimonials/testimonials.js.map +1 -0
  294. package/dist/components/textarea/textarea.js +3 -3
  295. package/dist/components/theme-toggle/theme-toggle.js +1 -1
  296. package/dist/components/time-picker/time-picker.d.ts.map +1 -1
  297. package/dist/components/time-picker/time-picker.js +13 -3
  298. package/dist/components/time-picker/time-picker.js.map +1 -1
  299. package/dist/components/timeline/timeline-item.d.ts +18 -0
  300. package/dist/components/timeline/timeline-item.d.ts.map +1 -0
  301. package/dist/components/timeline/timeline-item.js +102 -0
  302. package/dist/components/timeline/timeline-item.js.map +1 -0
  303. package/dist/components/timeline/timeline.d.ts +18 -0
  304. package/dist/components/timeline/timeline.d.ts.map +1 -0
  305. package/dist/components/timeline/timeline.js +30 -0
  306. package/dist/components/timeline/timeline.js.map +1 -0
  307. package/dist/components/toast/toast.d.ts +33 -0
  308. package/dist/components/toast/toast.d.ts.map +1 -0
  309. package/dist/components/toast/toast.js +147 -0
  310. package/dist/components/toast/toast.js.map +1 -0
  311. package/dist/components/toggle-group/toggle-button.d.ts +2 -0
  312. package/dist/components/toggle-group/toggle-button.d.ts.map +1 -1
  313. package/dist/components/toggle-group/toggle-button.js +12 -5
  314. package/dist/components/toggle-group/toggle-button.js.map +1 -1
  315. package/dist/components/toggle-group/toggle-group.d.ts +6 -0
  316. package/dist/components/toggle-group/toggle-group.d.ts.map +1 -1
  317. package/dist/components/toggle-group/toggle-group.js +141 -21
  318. package/dist/components/toggle-group/toggle-group.js.map +1 -1
  319. package/dist/components/tooltip/tooltip.js +21 -21
  320. package/dist/components/vertical-nav/vertical-nav-group.js +3 -3
  321. package/dist/components/vertical-nav/vertical-nav-item.js +4 -4
  322. package/dist/components/video-embed/video-embed.d.ts +37 -0
  323. package/dist/components/video-embed/video-embed.d.ts.map +1 -0
  324. package/dist/components/video-embed/video-embed.js +183 -0
  325. package/dist/components/video-embed/video-embed.js.map +1 -0
  326. package/dist/index.d.ts +107 -0
  327. package/dist/index.d.ts.map +1 -0
  328. package/dist/index.js +104 -0
  329. package/dist/index.js.map +1 -0
  330. package/dist/styles/index.css +205 -1
  331. package/dist/styles/reset.d.ts.map +1 -1
  332. package/dist/styles/reset.js +5 -0
  333. package/dist/styles/reset.js.map +1 -1
  334. package/package.json +214 -7
  335. package/src/components/accordion/accordion.constants.ts +5 -0
  336. package/src/components/accordion/accordion.ts +209 -0
  337. package/src/components/alert/alert.constants.ts +3 -0
  338. package/src/components/alert/alert.ts +284 -17
  339. package/src/components/avatar/avatar.ts +84 -0
  340. package/src/components/back-to-top/back-to-top.ts +140 -0
  341. package/src/components/bar-chart/bar-chart.ts +295 -0
  342. package/src/components/breadcrumb/breadcrumb.ts +2 -2
  343. package/src/components/button/button.ts +9 -8
  344. package/src/components/button-group/button-group.ts +4 -4
  345. package/src/components/calendar/calendar.ts +26 -9
  346. package/src/components/chart/chart-base.ts +275 -0
  347. package/src/components/chart/chart.utils.ts +140 -0
  348. package/src/components/code-block/code-block.ts +35 -24
  349. package/src/components/consent/consent.ts +312 -0
  350. package/src/components/consent/consent.utils.ts +110 -0
  351. package/src/components/contact/contact.ts +83 -0
  352. package/src/components/container/container.ts +60 -0
  353. package/src/components/content-card/content-card.ts +4 -4
  354. package/src/components/context-menu/context-menu.ts +426 -0
  355. package/src/components/cron-builder/cron-builder.ts +102 -22
  356. package/src/components/cta/cta.ts +64 -0
  357. package/src/components/drawer/drawer.ts +6 -6
  358. package/src/components/faq/faq-item.ts +110 -0
  359. package/src/components/faq/faq.ts +40 -0
  360. package/src/components/feature-grid/feature-grid.ts +52 -0
  361. package/src/components/feature-grid/feature.ts +84 -0
  362. package/src/components/field/field.ts +2 -2
  363. package/src/components/footer/footer.ts +4 -4
  364. package/src/components/form/form-reset.ts +45 -0
  365. package/src/components/form/form.ts +17 -3
  366. package/src/components/grid/grid.ts +73 -4
  367. package/src/components/heat-map/heat-map.ts +292 -0
  368. package/src/components/hero/hero.ts +132 -0
  369. package/src/components/icon/icon-paths.ts +92 -1
  370. package/src/components/icon/icon.ts +8 -1
  371. package/src/components/image/image.ts +165 -0
  372. package/src/components/input/input.ts +4 -4
  373. package/src/components/lazy/lazy.ts +94 -0
  374. package/src/components/line-chart/line-chart.ts +271 -0
  375. package/src/components/list/list-item.ts +225 -0
  376. package/src/components/list/list.ts +157 -0
  377. package/src/components/logo-cloud/logo-cloud.ts +65 -0
  378. package/src/components/modal/modal.ts +37 -11
  379. package/src/components/page-layout/page-layout.ts +8 -8
  380. package/src/components/pagination/pagination.ts +120 -0
  381. package/src/components/pagination/pagination.utils.ts +14 -0
  382. package/src/components/pie-chart/pie-chart.ts +230 -0
  383. package/src/components/pin-input/pin-input.ts +4 -4
  384. package/src/components/popover/popover.ts +1 -3
  385. package/src/components/post-list/post-card.ts +18 -0
  386. package/src/components/post-list/post-list.ts +19 -0
  387. package/src/components/pricing/pricing-tier.ts +132 -0
  388. package/src/components/pricing/pricing.ts +39 -0
  389. package/src/components/progress/progress.ts +95 -0
  390. package/src/components/project-grid/project-card.ts +19 -0
  391. package/src/components/project-grid/project-grid.ts +19 -0
  392. package/src/components/radio/radio.ts +1 -1
  393. package/src/components/reveal/reveal.constants.ts +20 -0
  394. package/src/components/reveal/reveal.ts +344 -0
  395. package/src/components/scroll-progress/scroll-progress.ts +119 -0
  396. package/src/components/section/card-row.ts +152 -0
  397. package/src/components/section/card.ts +197 -0
  398. package/src/components/section/row-item.ts +38 -0
  399. package/src/components/section/section.ts +232 -0
  400. package/src/components/select/select.ts +3 -3
  401. package/src/components/series-nav/series-nav.ts +164 -0
  402. package/src/components/site-header/site-header.ts +276 -0
  403. package/src/components/skeleton/skeleton.ts +7 -7
  404. package/src/components/sparkline/sparkline.ts +83 -0
  405. package/src/components/spinner/spinner.ts +55 -0
  406. package/src/components/split/split.ts +106 -0
  407. package/src/components/stack/stack.ts +88 -0
  408. package/src/components/stat-card/stat-card.ts +179 -0
  409. package/src/components/stats/stat.ts +49 -0
  410. package/src/components/stats/stats.ts +47 -0
  411. package/src/components/switch/switch.ts +2 -2
  412. package/src/components/table/data-table.ts +1015 -425
  413. package/src/components/table/data-table.utils.ts +276 -0
  414. package/src/components/table/table.ts +168 -38
  415. package/src/components/team/person.ts +113 -0
  416. package/src/components/team/team.ts +37 -0
  417. package/src/components/testimonials/testimonial.ts +108 -0
  418. package/src/components/testimonials/testimonials.ts +37 -0
  419. package/src/components/textarea/textarea.ts +3 -3
  420. package/src/components/theme-toggle/theme-toggle.ts +1 -1
  421. package/src/components/time-picker/time-picker.ts +17 -3
  422. package/src/components/timeline/timeline-item.ts +100 -0
  423. package/src/components/timeline/timeline.ts +31 -0
  424. package/src/components/toast/toast.ts +153 -0
  425. package/src/components/toggle-group/toggle-button.ts +9 -5
  426. package/src/components/toggle-group/toggle-group.ts +158 -42
  427. package/src/components/tooltip/tooltip.ts +21 -21
  428. package/src/components/vertical-nav/vertical-nav-group.ts +3 -3
  429. package/src/components/vertical-nav/vertical-nav-item.ts +4 -4
  430. package/src/components/video-embed/video-embed.ts +162 -0
  431. package/src/index.ts +108 -0
  432. package/src/styles/globals.css +63 -0
  433. package/src/styles/index.css +3 -1
  434. package/src/styles/prose.css +154 -0
  435. package/src/styles/reset.ts +5 -0
  436. package/src/styles/theme.css +53 -0
  437. package/src/styles/typography.css +1 -0
@@ -1 +1 @@
1
- {"version":3,"file":"toggle-group.d.ts","sourceRoot":"","sources":["../../../src/components/toggle-group/toggle-group.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAa,cAAc,EAAE,MAAM,KAAK,CAAC;AAK5D,OAAO,oBAAoB,CAAC;AAE5B,qBACa,aAAc,SAAQ,UAAU;IAC3C,MAAM,CAAC,cAAc,UAAQ;IAC7B,OAAO,CAAC,UAAU,CAAmB;IAGrC,OAAO,CAAC,QAAQ,CAAoB;IAEO,IAAI,SAAM;IAGzB,KAAK,SAAM;IAEV,QAAQ,UAAS;IACF,QAAQ,UAAS;IACjB,QAAQ,UAAS;IAGtB,SAAS,SAAM;IAEtD,OAAO,CAAC,aAAa,CAAM;IAE3B,cAIC;IAED,MAAM,CAAC,MAAM,4BAsBX;IAEO,YAAY,CAAC,iBAAiB,EAAE,cAAc,QAGtD;IAEQ,OAAO,CAAC,iBAAiB,EAAE,cAAc,QAYjD;IAED,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,iBAAiB;IAOzB,OAAO,CAAC,aAAa;IAsBrB,iBAAiB,SAEhB;IAED,OAAO,CAAC,aAAa;IAQd,aAAa,YAA8C;IAC3D,cAAc,YAA+C;IAEpE,MAAM,yCAWL;CACF;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,iBAAiB,EAAE,aAAa,CAAC;KAClC;CACF"}
1
+ {"version":3,"file":"toggle-group.d.ts","sourceRoot":"","sources":["../../../src/components/toggle-group/toggle-group.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAa,cAAc,EAAC,MAAM,KAAK,CAAC;AAM1D,OAAO,oBAAoB,CAAC;AAE5B,qBACa,aAAc,SAAQ,UAAU;IAC3C,MAAM,CAAC,cAAc,UAAQ;IAC7B,OAAO,CAAC,UAAU,CAAmB;IACrC,OAAO,CAAC,eAAe,CAAkB;IAEd,OAAO,CAAC,UAAU,CAAe;IAG5D,OAAO,CAAC,QAAQ,CAAoB;IAEK,IAAI,SAAM;IACzB,KAAK,SAAM;IACV,QAAQ,UAAS;IACF,QAAQ,UAAS;IACjB,QAAQ,UAAS;IACtB,SAAS,SAAM;IAG3C,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,eAAe,CAAS;IAEzC,OAAO,CAAC,aAAa,CAAM;IAE3B,cAIC;IAED,MAAM,CAAC,MAAM,4BAiGX;IAEO,YAAY,CAAC,iBAAiB,EAAE,cAAc,QAUtD;IAEQ,oBAAoB,SAK5B;IAEQ,OAAO,CAAC,iBAAiB,EAAE,cAAc,QAYjD;IAGD,OAAO,CAAC,YAAY,CAOlB;IAEF,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,iBAAiB;IASzB,OAAO,CAAC,aAAa;IAqBrB,iBAAiB,SAEhB;IAED,OAAO,CAAC,aAAa;IAQd,aAAa,YAEnB;IACM,cAAc,YAEpB;IAED,MAAM,yCAoBL;CACF;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,iBAAiB,EAAE,aAAa,CAAC;KAClC;CACF"}
@@ -5,28 +5,51 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
7
  import { LitElement, html, css } from "lit";
8
- import { customElement, property, queryAssignedElements } from "lit/decorators.js";
8
+ import { customElement, property, queryAssignedElements, state, query } from "lit/decorators.js";
9
9
  import { ifDefined } from "lit/directives/if-defined.js";
10
+ import { classMap } from "lit/directives/class-map.js";
10
11
  import { resetStyles } from "../../styles/reset.js";
11
12
  import "./toggle-button.js";
12
13
  let StToggleGroup = class StToggleGroup extends LitElement {
13
14
  constructor() {
14
15
  super();
15
16
  this.name = "";
16
- // A comma-separated list of values if multiple=true, or a single value if false
17
17
  this.value = "";
18
18
  this.multiple = false;
19
19
  this.disabled = false;
20
20
  this.required = false;
21
- // ARIA Support
22
21
  this.ariaLabel = "";
22
+ // 🚀 NEW: State properties for dynamic shadows
23
+ this._canScrollLeft = false;
24
+ this._canScrollRight = false;
23
25
  this._defaultValue = "";
26
+ // 🚀 NEW: Mathematically determine if we are at the edges of the scroll box
27
+ this._checkScroll = () => {
28
+ if (!this._container)
29
+ return;
30
+ const { scrollLeft, scrollWidth, clientWidth } = this._container;
31
+ // Use a 1px buffer to prevent fractional pixel rounding errors on high-DPI screens
32
+ this._canScrollLeft = scrollLeft > 1;
33
+ this._canScrollRight = Math.ceil(scrollLeft + clientWidth) < scrollWidth - 1;
34
+ };
24
35
  this._internals = this.attachInternals();
25
36
  this.addEventListener("st-toggle-action", this._handleToggle);
26
37
  }
27
38
  firstUpdated(changedProperties) {
28
39
  super.firstUpdated(changedProperties);
29
40
  this._defaultValue = this.value;
41
+ // 🚀 NEW: Observe the container. If the user rotates their phone,
42
+ // we need to recalculate if shadows are still needed.
43
+ this._resizeObserver = new ResizeObserver(() => this._checkScroll());
44
+ if (this._container) {
45
+ this._resizeObserver.observe(this._container);
46
+ }
47
+ }
48
+ disconnectedCallback() {
49
+ super.disconnectedCallback();
50
+ if (this._resizeObserver) {
51
+ this._resizeObserver.disconnect();
52
+ }
30
53
  }
31
54
  updated(changedProperties) {
32
55
  super.updated(changedProperties);
@@ -36,20 +59,22 @@ let StToggleGroup = class StToggleGroup extends LitElement {
36
59
  this._syncValidity();
37
60
  }
38
61
  if (changedProperties.has("disabled")) {
39
- this._buttons.forEach(btn => btn.disabled = this.disabled);
62
+ this._buttons.forEach((btn) => (btn.disabled = this.disabled));
40
63
  }
41
64
  }
42
65
  _syncButtons() {
43
66
  const values = this.multiple && this.value ? this.value.split(",") : [this.value];
44
- this._buttons.forEach(btn => {
67
+ this._buttons.forEach((btn) => {
45
68
  btn.selected = values.includes(btn.value);
46
69
  });
47
70
  }
48
71
  _handleSlotChange() {
49
72
  this._syncButtons();
50
73
  if (this.disabled) {
51
- this._buttons.forEach(btn => btn.disabled = true);
74
+ this._buttons.forEach((btn) => (btn.disabled = true));
52
75
  }
76
+ // Calculate shadows after slots render
77
+ setTimeout(() => this._checkScroll(), 50);
53
78
  }
54
79
  _handleToggle(e) {
55
80
  e.stopPropagation();
@@ -57,15 +82,14 @@ let StToggleGroup = class StToggleGroup extends LitElement {
57
82
  if (this.multiple) {
58
83
  let values = this.value ? this.value.split(",") : [];
59
84
  if (values.includes(toggledValue)) {
60
- values = values.filter(v => v !== toggledValue); // Deselect
85
+ values = values.filter((v) => v !== toggledValue);
61
86
  }
62
87
  else {
63
- values.push(toggledValue); // Select
88
+ values.push(toggledValue);
64
89
  }
65
90
  this.value = values.join(",");
66
91
  }
67
92
  else {
68
- // Single select behavior (radio button style: clicking active doesn't deselect)
69
93
  if (this.value !== toggledValue) {
70
94
  this.value = toggledValue;
71
95
  }
@@ -83,17 +107,29 @@ let StToggleGroup = class StToggleGroup extends LitElement {
83
107
  this._internals.setValidity({});
84
108
  }
85
109
  }
86
- checkValidity() { return this._internals.checkValidity(); }
87
- reportValidity() { return this._internals.reportValidity(); }
110
+ checkValidity() {
111
+ return this._internals.checkValidity();
112
+ }
113
+ reportValidity() {
114
+ return this._internals.reportValidity();
115
+ }
88
116
  render() {
117
+ const wrapperClasses = classMap({
118
+ "scroll-wrapper": true,
119
+ "can-scroll-left": this._canScrollLeft,
120
+ "can-scroll-right": this._canScrollRight,
121
+ });
89
122
  return html `
90
- <div
91
- class="group-container"
92
- role="group"
93
- aria-label=${ifDefined(this.ariaLabel || undefined)}
94
- aria-required=${this.required ? "true" : "false"}
95
- >
96
- <slot @slotchange=${this._handleSlotChange}></slot>
123
+ <div class=${wrapperClasses}>
124
+ <div
125
+ class="group-container"
126
+ role="group"
127
+ aria-label=${ifDefined(this.ariaLabel || undefined)}
128
+ aria-required=${this.required ? "true" : "false"}
129
+ @scroll=${this._checkScroll}
130
+ >
131
+ <slot @slotchange=${this._handleSlotChange}></slot>
132
+ </div>
97
133
  </div>
98
134
  `;
99
135
  }
@@ -104,24 +140,102 @@ StToggleGroup.styles = [
104
140
  css `
105
141
  :host {
106
142
  display: inline-flex;
143
+ max-width: 100%;
144
+ min-width: 0;
145
+ }
146
+
147
+ .scroll-wrapper {
148
+ position: relative;
149
+ display: inline-flex;
150
+ max-width: 100%;
151
+ min-width: 0;
152
+ }
153
+
154
+ /* 🚀 FIX: Widened to 40px, boosted z-index to 10, and darkened the opacity */
155
+ .scroll-wrapper::before,
156
+ .scroll-wrapper::after {
157
+ content: "";
158
+ position: absolute;
159
+ top: 0;
160
+ bottom: 0;
161
+ width: 40px;
162
+ pointer-events: none;
163
+ z-index: 10;
164
+ opacity: 0;
165
+ transition: opacity 0.3s ease;
166
+ }
167
+
168
+ .scroll-wrapper::before {
169
+ left: 0;
170
+ background: linear-gradient(
171
+ to right,
172
+ var(--st-color-scroll-shadow) 0%,
173
+ transparent 100%
174
+ );
175
+ border-top-left-radius: var(--st-radius-md);
176
+ border-bottom-left-radius: var(--st-radius-md);
177
+ }
178
+
179
+ .scroll-wrapper::after {
180
+ right: 0;
181
+ background: linear-gradient(
182
+ to left,
183
+ var(--st-color-scroll-shadow) 0%,
184
+ transparent 100%
185
+ );
186
+ border-top-right-radius: var(--st-radius-md);
187
+ border-bottom-right-radius: var(--st-radius-md);
188
+ }
189
+
190
+ .scroll-wrapper.can-scroll-left::before {
191
+ opacity: 1;
192
+ }
193
+
194
+ .scroll-wrapper.can-scroll-right::after {
195
+ opacity: 1;
196
+ }
197
+
198
+ /* 🚀 FIX: Dialed up to 0.5 for dark mode */
199
+ :host([data-theme="dark"]) .scroll-wrapper::before {
200
+ background: linear-gradient(to right, var(--st-color-overlay) 0%, transparent 100%);
201
+ }
202
+ :host([data-theme="dark"]) .scroll-wrapper::after {
203
+ background: linear-gradient(to left, var(--st-color-overlay) 0%, transparent 100%);
107
204
  }
108
205
 
109
206
  .group-container {
110
207
  display: inline-flex;
208
+ max-width: 100%;
209
+ min-width: 0;
111
210
  background-color: var(--st-color-border);
112
- /* 🚀 FIX: This 1px gap perfectly acts as the inner border between children */
113
211
  gap: 1px;
114
212
  border: 1px solid var(--st-color-border);
115
213
  border-radius: var(--st-radius-md);
116
- overflow: hidden; /* Clips the child buttons exactly to the border radius */
214
+
215
+ overflow-x: auto;
216
+ overflow-y: hidden;
217
+ -webkit-overflow-scrolling: touch;
218
+ scrollbar-width: none;
219
+ -ms-overflow-style: none;
220
+ }
221
+
222
+ .group-container::-webkit-scrollbar {
223
+ display: none;
224
+ }
225
+
226
+ ::slotted(*) {
227
+ flex-shrink: 0;
117
228
  }
118
229
 
119
230
  :host([disabled]) .group-container {
120
231
  opacity: 0.5;
121
232
  pointer-events: none;
122
233
  }
123
- `
234
+ `,
124
235
  ];
236
+ __decorate([
237
+ query(".group-container")
238
+ ], StToggleGroup.prototype, "_container", void 0);
125
239
  __decorate([
126
240
  queryAssignedElements({ selector: "st-toggle-button" })
127
241
  ], StToggleGroup.prototype, "_buttons", void 0);
@@ -143,6 +257,12 @@ __decorate([
143
257
  __decorate([
144
258
  property({ attribute: "aria-label" })
145
259
  ], StToggleGroup.prototype, "ariaLabel", void 0);
260
+ __decorate([
261
+ state()
262
+ ], StToggleGroup.prototype, "_canScrollLeft", void 0);
263
+ __decorate([
264
+ state()
265
+ ], StToggleGroup.prototype, "_canScrollRight", void 0);
146
266
  StToggleGroup = __decorate([
147
267
  customElement("st-toggle-group")
148
268
  ], StToggleGroup);
@@ -1 +1 @@
1
- {"version":3,"file":"toggle-group.js","sourceRoot":"","sources":["../../../src/components/toggle-group/toggle-group.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"toggle-group.js","sourceRoot":"","sources":["../../../src/components/toggle-group/toggle-group.ts"],"names":[],"mappings":"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"}
@@ -132,7 +132,7 @@ StTooltip.styles = [
132
132
  opacity 0.2s ease,
133
133
  transform 0.2s ease,
134
134
  visibility 0.2s;
135
- box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
135
+ box-shadow: var(--st-shadow-md);
136
136
  }
137
137
 
138
138
  .tooltip-popup::before {
@@ -156,44 +156,44 @@ StTooltip.styles = [
156
156
  ========================================== */
157
157
 
158
158
  .variant-info {
159
- background: var(--st-color-info, #3b82f6);
160
- border-color: var(--st-color-info, #3b82f6);
161
- color: var(--st-color-on-info, #ffffff);
159
+ background: var(--st-color-info);
160
+ border-color: var(--st-color-info);
161
+ color: var(--st-color-on-info);
162
162
  }
163
163
  .variant-info::before {
164
- background: var(--st-color-info, #3b82f6);
165
- border-color: var(--st-color-info, #3b82f6);
164
+ background: var(--st-color-info);
165
+ border-color: var(--st-color-info);
166
166
  }
167
167
 
168
168
  .variant-success {
169
- background: var(--st-color-success, #16a34a);
170
- border-color: var(--st-color-success, #16a34a);
171
- color: var(--st-color-on-success, #ffffff);
169
+ background: var(--st-color-success);
170
+ border-color: var(--st-color-success);
171
+ color: var(--st-color-on-success);
172
172
  }
173
173
  .variant-success::before {
174
- background: var(--st-color-success, #16a34a);
175
- border-color: var(--st-color-success, #16a34a);
174
+ background: var(--st-color-success);
175
+ border-color: var(--st-color-success);
176
176
  }
177
177
 
178
178
  .variant-warning {
179
- background: var(--st-color-warning, #f59e0b);
180
- border-color: var(--st-color-warning, #f59e0b);
179
+ background: var(--st-color-warning);
180
+ border-color: var(--st-color-warning);
181
181
  /* Warning usually needs dark text for contrast */
182
- color: var(--st-color-on-warning, #1e293b);
182
+ color: var(--st-color-on-warning);
183
183
  }
184
184
  .variant-warning::before {
185
- background: var(--st-color-warning, #f59e0b);
186
- border-color: var(--st-color-warning, #f59e0b);
185
+ background: var(--st-color-warning);
186
+ border-color: var(--st-color-warning);
187
187
  }
188
188
 
189
189
  .variant-danger {
190
- background: var(--st-color-danger, #dc2626);
191
- border-color: var(--st-color-danger, #dc2626);
192
- color: var(--st-color-on-danger, #ffffff);
190
+ background: var(--st-color-danger);
191
+ border-color: var(--st-color-danger);
192
+ color: var(--st-color-on-danger);
193
193
  }
194
194
  .variant-danger::before {
195
- background: var(--st-color-danger, #dc2626);
196
- border-color: var(--st-color-danger, #dc2626);
195
+ background: var(--st-color-danger);
196
+ border-color: var(--st-color-danger);
197
197
  }
198
198
 
199
199
  /* ==========================================
@@ -71,13 +71,13 @@ StNavGroup.styles = [
71
71
  button {
72
72
  display: flex;
73
73
  align-items: center;
74
- gap: var(--st-spacing-sm, 8px);
74
+ gap: var(--st-spacing-sm);
75
75
  width: 100%;
76
76
  box-sizing: border-box;
77
77
  background: transparent;
78
78
  border: none;
79
79
  padding: var(--st-spacing-sm) var(--st-spacing-xl);
80
- padding-left: calc(var(--st-spacing-xl, 24px) + (var(--nav-depth, 0) * 16px));
80
+ padding-left: calc(var(--st-spacing-xl) + (var(--nav-depth, 0) * 16px));
81
81
  color: var(--st-color-text);
82
82
  font-size: var(--st-font-size-sm);
83
83
  font-weight: var(--st-font-weight-semibold);
@@ -88,7 +88,7 @@ StNavGroup.styles = [
88
88
  }
89
89
 
90
90
  button:hover {
91
- background-color: var(--st-color-surface-hover, rgba(0, 0, 0, 0.03));
91
+ background-color: var(--st-color-surface-hover);
92
92
  }
93
93
 
94
94
  button:focus-visible {
@@ -50,11 +50,11 @@ StNavItem.styles = [
50
50
  a {
51
51
  display: flex;
52
52
  align-items: center;
53
- gap: var(--st-spacing-sm, 8px);
53
+ gap: var(--st-spacing-sm);
54
54
  width: 100%;
55
55
  box-sizing: border-box;
56
56
  padding: 8px var(--st-spacing-xl);
57
- padding-left: calc(var(--st-spacing-xl, 24px) + (var(--nav-depth, 0) * 16px));
57
+ padding-left: calc(var(--st-spacing-xl) + (var(--nav-depth, 0) * 16px));
58
58
  color: var(--st-color-text-muted);
59
59
  font-size: var(--st-font-size-sm);
60
60
  text-decoration: none;
@@ -68,7 +68,7 @@ StNavItem.styles = [
68
68
 
69
69
  a:hover {
70
70
  color: var(--st-color-text);
71
- background-color: var(--st-color-surface-hover, rgba(0, 0, 0, 0.03));
71
+ background-color: var(--st-color-surface-hover);
72
72
  }
73
73
 
74
74
  a:focus-visible {
@@ -87,7 +87,7 @@ StNavItem.styles = [
87
87
  color: var(--st-color-primary);
88
88
  border-left-color: var(--st-color-primary);
89
89
  font-weight: var(--st-font-weight-bold);
90
- background-color: var(--st-color-primary-light, rgba(98, 0, 238, 0.05));
90
+ background-color: var(--st-color-primary-light);
91
91
  }
92
92
  `,
93
93
  ];
@@ -0,0 +1,37 @@
1
+ import { LitElement, PropertyValues } from "lit";
2
+ /**
3
+ * Shows a poster and a play button, and only loads the video player (an iframe, which is heavy
4
+ * and sets third-party cookies) once someone presses play. Pages stay fast and visitors are not
5
+ * tracked before they choose to watch.
6
+ *
7
+ * Give it a `youtube` or `vimeo` id, or an `https` embed address in `src`. Slot your own poster
8
+ * as `<img slot="poster" alt="">`: no third-party request is made until play is pressed.
9
+ *
10
+ * Events: `st-play` (bubbles, composed) when the player is loaded.
11
+ */
12
+ export declare class StVideoEmbed extends LitElement {
13
+ /** A YouTube video id. Uses the privacy-enhanced youtube-nocookie.com player. */
14
+ youtube: string;
15
+ /** A Vimeo video id. Asks Vimeo not to track the viewer. */
16
+ vimeo: string;
17
+ /** Any other player, as an https embed address. */
18
+ src: string;
19
+ /** Name of the video. Used for the play button and the player's accessible title. */
20
+ label: string;
21
+ ratio: string;
22
+ /** True once the player has been loaded. Setting it to true loads the player. */
23
+ playing: boolean;
24
+ static styles: import("lit").CSSResult[];
25
+ /** The player address, or an empty string when nothing valid was given. */
26
+ private get _playerUrl();
27
+ /** Loads the player. */
28
+ play(): void;
29
+ protected updated(changed: PropertyValues<this>): void;
30
+ render(): import("lit-html").TemplateResult<1>;
31
+ }
32
+ declare global {
33
+ interface HTMLElementTagNameMap {
34
+ "st-video-embed": StVideoEmbed;
35
+ }
36
+ }
37
+ //# sourceMappingURL=video-embed.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"video-embed.d.ts","sourceRoot":"","sources":["../../../src/components/video-embed/video-embed.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAa,cAAc,EAAC,MAAM,KAAK,CAAC;AAM1D;;;;;;;;;GASG;AACH,qBACa,YAAa,SAAQ,UAAU;IAC1C,iFAAiF;IACvD,OAAO,SAAM;IACvC,4DAA4D;IAClC,KAAK,SAAM;IACrC,mDAAmD;IACzB,GAAG,SAAM;IACnC,qFAAqF;IAC3D,KAAK,SAAW;IAChB,KAAK,SAAU;IACzC,iFAAiF;IACvC,OAAO,UAAS;IAE1D,MAAM,CAAC,MAAM,4BAyEX;IAEF,2EAA2E;IAC3E,OAAO,KAAK,UAAU,GAarB;IAED,wBAAwB;IACxB,IAAI,SAGH;IAED,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,cAAc,CAAC,IAAI,CAAC,QAM9C;IAED,MAAM,yCAmBL;CACF;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,gBAAgB,EAAE,YAAY,CAAC;KAChC;CACF"}
@@ -0,0 +1,183 @@
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") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { LitElement, html, css } from "lit";
8
+ import { customElement, property } from "lit/decorators.js";
9
+ import { resetStyles } from "../../styles/reset.js";
10
+ const ID_PATTERN = /^[\w-]+$/;
11
+ /**
12
+ * Shows a poster and a play button, and only loads the video player (an iframe, which is heavy
13
+ * and sets third-party cookies) once someone presses play. Pages stay fast and visitors are not
14
+ * tracked before they choose to watch.
15
+ *
16
+ * Give it a `youtube` or `vimeo` id, or an `https` embed address in `src`. Slot your own poster
17
+ * as `<img slot="poster" alt="">`: no third-party request is made until play is pressed.
18
+ *
19
+ * Events: `st-play` (bubbles, composed) when the player is loaded.
20
+ */
21
+ let StVideoEmbed = class StVideoEmbed extends LitElement {
22
+ constructor() {
23
+ super(...arguments);
24
+ /** A YouTube video id. Uses the privacy-enhanced youtube-nocookie.com player. */
25
+ this.youtube = "";
26
+ /** A Vimeo video id. Asks Vimeo not to track the viewer. */
27
+ this.vimeo = "";
28
+ /** Any other player, as an https embed address. */
29
+ this.src = "";
30
+ /** Name of the video. Used for the play button and the player's accessible title. */
31
+ this.label = "Video";
32
+ this.ratio = "16/9";
33
+ /** True once the player has been loaded. Setting it to true loads the player. */
34
+ this.playing = false;
35
+ }
36
+ /** The player address, or an empty string when nothing valid was given. */
37
+ get _playerUrl() {
38
+ if (this.youtube && ID_PATTERN.test(this.youtube)) {
39
+ return `https://www.youtube-nocookie.com/embed/${this.youtube}?autoplay=1&rel=0`;
40
+ }
41
+ if (this.vimeo && ID_PATTERN.test(this.vimeo)) {
42
+ return `https://player.vimeo.com/video/${this.vimeo}?autoplay=1&dnt=1`;
43
+ }
44
+ try {
45
+ const url = new URL(this.src); // no base: relative addresses must be rejected
46
+ return this.src && url.protocol === "https:" ? url.href : "";
47
+ }
48
+ catch {
49
+ return "";
50
+ }
51
+ }
52
+ /** Loads the player. */
53
+ play() {
54
+ if (!this._playerUrl || this.playing)
55
+ return;
56
+ this.playing = true;
57
+ }
58
+ updated(changed) {
59
+ if (this.ratio)
60
+ this.style.setProperty("--_ratio", this.ratio);
61
+ if (changed.has("playing") && changed.get("playing") === false && this.playing) {
62
+ this.dispatchEvent(new CustomEvent("st-play", { bubbles: true, composed: true }));
63
+ this.renderRoot.querySelector("iframe")?.focus();
64
+ }
65
+ }
66
+ render() {
67
+ const url = this._playerUrl;
68
+ if (this.playing && url) {
69
+ return html `<iframe
70
+ src=${url}
71
+ title=${this.label}
72
+ allow="autoplay; encrypted-media; picture-in-picture; fullscreen"
73
+ allowfullscreen
74
+ referrerpolicy="strict-origin-when-cross-origin"
75
+ ></iframe>`;
76
+ }
77
+ return html `
78
+ <button class="facade" type="button" ?disabled=${!url} aria-label=${`Play video: ${this.label}`} @click=${this.play}>
79
+ <slot name="poster"></slot>
80
+ <span class="play" aria-hidden="true">
81
+ <svg viewBox="0 0 24 24"><path d="M8 5v14l11-7z"></path></svg>
82
+ </span>
83
+ </button>
84
+ `;
85
+ }
86
+ };
87
+ StVideoEmbed.styles = [
88
+ resetStyles,
89
+ css `
90
+ :host {
91
+ display: block;
92
+ position: relative;
93
+ overflow: hidden;
94
+ aspect-ratio: var(--_ratio, 16 / 9);
95
+ background: var(--st-color-surface-muted);
96
+ border-radius: var(--st-image-radius, var(--st-radius-md));
97
+ }
98
+
99
+ .facade {
100
+ position: relative;
101
+ display: grid;
102
+ place-items: center;
103
+ width: 100%;
104
+ height: 100%;
105
+ padding: 0;
106
+ border: 0;
107
+ background: none;
108
+ cursor: pointer;
109
+ }
110
+
111
+ ::slotted([slot="poster"]) {
112
+ position: absolute;
113
+ inset: 0;
114
+ width: 100%;
115
+ height: 100%;
116
+ object-fit: cover;
117
+ }
118
+
119
+ .play {
120
+ position: relative;
121
+ display: grid;
122
+ place-items: center;
123
+ width: 4.5rem;
124
+ height: 4.5rem;
125
+ border-radius: 50%;
126
+ background: var(--st-color-primary);
127
+ color: var(--st-color-on-primary);
128
+ box-shadow: var(--st-shadow-lg);
129
+ transition: transform 0.2s ease;
130
+ }
131
+
132
+ .play svg {
133
+ width: 1.75rem;
134
+ height: 1.75rem;
135
+ margin-left: 0.2rem;
136
+ fill: currentColor;
137
+ }
138
+
139
+ .facade:hover .play {
140
+ transform: scale(1.08);
141
+ }
142
+
143
+ .facade:focus-visible {
144
+ outline: 3px solid var(--st-color-primary);
145
+ outline-offset: -3px;
146
+ }
147
+
148
+ iframe {
149
+ width: 100%;
150
+ height: 100%;
151
+ border: 0;
152
+ }
153
+
154
+ @media (prefers-reduced-motion: reduce) {
155
+ .play {
156
+ transition: none;
157
+ }
158
+ }
159
+ `,
160
+ ];
161
+ __decorate([
162
+ property({ type: String })
163
+ ], StVideoEmbed.prototype, "youtube", void 0);
164
+ __decorate([
165
+ property({ type: String })
166
+ ], StVideoEmbed.prototype, "vimeo", void 0);
167
+ __decorate([
168
+ property({ type: String })
169
+ ], StVideoEmbed.prototype, "src", void 0);
170
+ __decorate([
171
+ property({ type: String })
172
+ ], StVideoEmbed.prototype, "label", void 0);
173
+ __decorate([
174
+ property({ type: String })
175
+ ], StVideoEmbed.prototype, "ratio", void 0);
176
+ __decorate([
177
+ property({ type: Boolean, reflect: true })
178
+ ], StVideoEmbed.prototype, "playing", void 0);
179
+ StVideoEmbed = __decorate([
180
+ customElement("st-video-embed")
181
+ ], StVideoEmbed);
182
+ export { StVideoEmbed };
183
+ //# sourceMappingURL=video-embed.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"video-embed.js","sourceRoot":"","sources":["../../../src/components/video-embed/video-embed.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAC,UAAU,EAAE,IAAI,EAAE,GAAG,EAAiB,MAAM,KAAK,CAAC;AAC1D,OAAO,EAAC,aAAa,EAAE,QAAQ,EAAC,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAC,WAAW,EAAC,MAAM,uBAAuB,CAAC;AAElD,MAAM,UAAU,GAAG,UAAU,CAAC;AAE9B;;;;;;;;;GASG;AAEI,IAAM,YAAY,GAAlB,MAAM,YAAa,SAAQ,UAAU;IAArC;;QACL,iFAAiF;QACvD,YAAO,GAAG,EAAE,CAAC;QACvC,4DAA4D;QAClC,UAAK,GAAG,EAAE,CAAC;QACrC,mDAAmD;QACzB,QAAG,GAAG,EAAE,CAAC;QACnC,qFAAqF;QAC3D,UAAK,GAAG,OAAO,CAAC;QAChB,UAAK,GAAG,MAAM,CAAC;QACzC,iFAAiF;QACvC,YAAO,GAAG,KAAK,CAAC;IA+H5D,CAAC;IAlDC,2EAA2E;IAC3E,IAAY,UAAU;QACpB,IAAI,IAAI,CAAC,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAClD,OAAO,0CAA0C,IAAI,CAAC,OAAO,mBAAmB,CAAC;QACnF,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YAC9C,OAAO,kCAAkC,IAAI,CAAC,KAAK,mBAAmB,CAAC;QACzE,CAAC;QACD,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,+CAA+C;YAC9E,OAAO,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/D,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED,wBAAwB;IACxB,IAAI;QACF,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,OAAO;YAAE,OAAO;QAC7C,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;IACtB,CAAC;IAES,OAAO,CAAC,OAA6B;QAC7C,IAAI,IAAI,CAAC,KAAK;YAAE,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/D,IAAI,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,KAAK,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAC/E,IAAI,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,SAAS,EAAE,EAAC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAC,CAAC;YAChF,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,CAAC;QACnD,CAAC;IACH,CAAC;IAED,MAAM;QACJ,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC;QAC5B,IAAI,IAAI,CAAC,OAAO,IAAI,GAAG,EAAE,CAAC;YACxB,OAAO,IAAI,CAAA;cACH,GAAG;gBACD,IAAI,CAAC,KAAK;;;;iBAIT,CAAC;QACd,CAAC;QACD,OAAO,IAAI,CAAA;uDACwC,CAAC,GAAG,eAAe,eAAe,IAAI,CAAC,KAAK,EAAE,WAAW,IAAI,CAAC,IAAI;;;;;;KAMpH,CAAC;IACJ,CAAC;CACF,CAAA;AA7HQ,mBAAM,GAAG;IACd,WAAW;IACX,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAsEF;CACF,AAzEY,CAyEX;AApFwB;IAAzB,QAAQ,CAAC,EAAC,IAAI,EAAE,MAAM,EAAC,CAAC;6CAAc;AAEb;IAAzB,QAAQ,CAAC,EAAC,IAAI,EAAE,MAAM,EAAC,CAAC;2CAAY;AAEX;IAAzB,QAAQ,CAAC,EAAC,IAAI,EAAE,MAAM,EAAC,CAAC;yCAAU;AAET;IAAzB,QAAQ,CAAC,EAAC,IAAI,EAAE,MAAM,EAAC,CAAC;2CAAiB;AAChB;IAAzB,QAAQ,CAAC,EAAC,IAAI,EAAE,MAAM,EAAC,CAAC;2CAAgB;AAEC;IAAzC,QAAQ,CAAC,EAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAC,CAAC;6CAAiB;AAX/C,YAAY;IADxB,aAAa,CAAC,gBAAgB,CAAC;GACnB,YAAY,CA0IxB"}