@mcp-b/web-components 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (366) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +49 -0
  3. package/dist/accordion-B1Q3kuP_.d.ts +373 -0
  4. package/dist/accordion-item-DvPfhpm8.js +307 -0
  5. package/dist/accordion-item-bPRIahNn.d.ts +63 -0
  6. package/dist/accordion-zDr-Br4V.js +483 -0
  7. package/dist/action-bar-CYsjmhwP.d.ts +29 -0
  8. package/dist/action-bar-CjN_UcnP.js +56 -0
  9. package/dist/alert-dialog-4CnO3Nb5.d.ts +60 -0
  10. package/dist/alert-dialog-D25Oi_TS.js +126 -0
  11. package/dist/avatar-Bje_KpZo.d.ts +141 -0
  12. package/dist/avatar-CRP0kW3x.js +224 -0
  13. package/dist/badge-Ct95U4UO.js +301 -0
  14. package/dist/badge-D1DNQrWn.d.ts +106 -0
  15. package/dist/breadcrumb-BxZ-nQE5.d.ts +365 -0
  16. package/dist/breadcrumb-item-BC454oQe.d.ts +59 -0
  17. package/dist/breadcrumb-item-P5pdq_gE.js +151 -0
  18. package/dist/breadcrumb-uURhiqWJ.js +384 -0
  19. package/dist/button-5k_aL_gD.js +802 -0
  20. package/dist/button-BQofnUt4.d.ts +354 -0
  21. package/dist/button-group-BydvJTQy.js +197 -0
  22. package/dist/button-group-COodHeuB.d.ts +155 -0
  23. package/dist/callout-B8zTf8Go.js +188 -0
  24. package/dist/callout-DFwPao36.d.ts +103 -0
  25. package/dist/card-BYDzdMAU.d.ts +177 -0
  26. package/dist/card-DIg1-X2G.js +332 -0
  27. package/dist/carousel-Bktu7wrD.js +843 -0
  28. package/dist/carousel-DQITCtEY.d.ts +423 -0
  29. package/dist/carousel-item-B5-X31Ha.js +79 -0
  30. package/dist/carousel-item-BB3jL2tk.d.ts +34 -0
  31. package/dist/cdn/loader.js +530 -0
  32. package/dist/checkbox-D6r7PVPj.js +641 -0
  33. package/dist/checkbox-DoFcDEKB.d.ts +354 -0
  34. package/dist/checkbox-group-CLvNAO_F.js +201 -0
  35. package/dist/checkbox-group-Cnh8rAn4.d.ts +152 -0
  36. package/dist/color-input-Bky89xg_.d.ts +470 -0
  37. package/dist/color-input-DPIxi9wR.js +894 -0
  38. package/dist/color-picker-adwOmtRl.js +1240 -0
  39. package/dist/color-picker-wQw8bPsq.d.ts +360 -0
  40. package/dist/combobox-B6al50UG.js +1693 -0
  41. package/dist/combobox-item-D2H1CMxC.d.ts +714 -0
  42. package/dist/combobox-item-yM6tDrGG.js +225 -0
  43. package/dist/comparison-B1-nMwmp.d.ts +134 -0
  44. package/dist/comparison-CyqKrCN-.js +435 -0
  45. package/dist/components/accordion/accordion.d.ts +2 -0
  46. package/dist/components/accordion/accordion.js +2 -0
  47. package/dist/components/accordion-item/accordion-item.d.ts +2 -0
  48. package/dist/components/accordion-item/accordion-item.js +2 -0
  49. package/dist/components/action-bar/action-bar.d.ts +2 -0
  50. package/dist/components/action-bar/action-bar.js +2 -0
  51. package/dist/components/alert-dialog/alert-dialog.d.ts +2 -0
  52. package/dist/components/alert-dialog/alert-dialog.js +2 -0
  53. package/dist/components/avatar/avatar.d.ts +2 -0
  54. package/dist/components/avatar/avatar.js +2 -0
  55. package/dist/components/badge/badge.d.ts +2 -0
  56. package/dist/components/badge/badge.js +2 -0
  57. package/dist/components/breadcrumb/breadcrumb.d.ts +2 -0
  58. package/dist/components/breadcrumb/breadcrumb.js +2 -0
  59. package/dist/components/breadcrumb-item/breadcrumb-item.d.ts +2 -0
  60. package/dist/components/breadcrumb-item/breadcrumb-item.js +2 -0
  61. package/dist/components/button/button.d.ts +2 -0
  62. package/dist/components/button/button.js +2 -0
  63. package/dist/components/button-group/button-group.d.ts +2 -0
  64. package/dist/components/button-group/button-group.js +2 -0
  65. package/dist/components/callout/callout.d.ts +2 -0
  66. package/dist/components/callout/callout.js +2 -0
  67. package/dist/components/card/card.d.ts +2 -0
  68. package/dist/components/card/card.js +2 -0
  69. package/dist/components/carousel/carousel.d.ts +2 -0
  70. package/dist/components/carousel/carousel.js +2 -0
  71. package/dist/components/carousel-item/carousel-item.d.ts +2 -0
  72. package/dist/components/carousel-item/carousel-item.js +2 -0
  73. package/dist/components/checkbox/checkbox.d.ts +2 -0
  74. package/dist/components/checkbox/checkbox.js +2 -0
  75. package/dist/components/checkbox-group/checkbox-group.d.ts +2 -0
  76. package/dist/components/checkbox-group/checkbox-group.js +2 -0
  77. package/dist/components/color-input/color-input.d.ts +2 -0
  78. package/dist/components/color-input/color-input.js +2 -0
  79. package/dist/components/color-picker/color-picker.d.ts +2 -0
  80. package/dist/components/color-picker/color-picker.js +2 -0
  81. package/dist/components/combobox/combobox.d.ts +2 -0
  82. package/dist/components/combobox/combobox.js +2 -0
  83. package/dist/components/combobox-item/combobox-item.d.ts +2 -0
  84. package/dist/components/combobox-item/combobox-item.js +2 -0
  85. package/dist/components/comparison/comparison.d.ts +2 -0
  86. package/dist/components/comparison/comparison.js +2 -0
  87. package/dist/components/copy/copy.d.ts +2 -0
  88. package/dist/components/copy/copy.js +291 -0
  89. package/dist/components/data-table/data-table.d.ts +2 -0
  90. package/dist/components/data-table/data-table.js +2 -0
  91. package/dist/components/date/date.d.ts +2 -0
  92. package/dist/components/date/date.js +2 -0
  93. package/dist/components/dialog/dialog.d.ts +2 -0
  94. package/dist/components/dialog/dialog.js +2 -0
  95. package/dist/components/divider/divider.d.ts +2 -0
  96. package/dist/components/divider/divider.js +2 -0
  97. package/dist/components/dropdown/dropdown.d.ts +2 -0
  98. package/dist/components/dropdown/dropdown.js +2 -0
  99. package/dist/components/dropdown-item/dropdown-item.d.ts +2 -0
  100. package/dist/components/dropdown-item/dropdown-item.js +2 -0
  101. package/dist/components/empty-result/empty-result.d.ts +2 -0
  102. package/dist/components/empty-result/empty-result.js +2 -0
  103. package/dist/components/empty-state/empty-state.d.ts +2 -0
  104. package/dist/components/empty-state/empty-state.js +2 -0
  105. package/dist/components/expander/expander.d.ts +2 -0
  106. package/dist/components/expander/expander.js +2 -0
  107. package/dist/components/field/field.d.ts +2 -0
  108. package/dist/components/field/field.js +2 -0
  109. package/dist/components/file-input/file-input.d.ts +2 -0
  110. package/dist/components/file-input/file-input.js +2 -0
  111. package/dist/components/filter-bar/filter-bar.d.ts +2 -0
  112. package/dist/components/filter-bar/filter-bar.js +2 -0
  113. package/dist/components/form-section/form-section.d.ts +2 -0
  114. package/dist/components/form-section/form-section.js +2 -0
  115. package/dist/components/icon/icon.d.ts +2 -0
  116. package/dist/components/icon/icon.js +2 -0
  117. package/dist/components/include/include.d.ts +2 -0
  118. package/dist/components/include/include.js +2 -0
  119. package/dist/components/index.d.ts +85 -0
  120. package/dist/components/index.js +86 -0
  121. package/dist/components/infinite-scroller/infinite-scroller.d.ts +2 -0
  122. package/dist/components/infinite-scroller/infinite-scroller.js +2 -0
  123. package/dist/components/intersection-observer/intersection-observer.d.ts +2 -0
  124. package/dist/components/intersection-observer/intersection-observer.js +2 -0
  125. package/dist/components/listbox/listbox.d.ts +2 -0
  126. package/dist/components/listbox/listbox.js +2 -0
  127. package/dist/components/listbox-item/listbox-item.d.ts +2 -0
  128. package/dist/components/listbox-item/listbox-item.js +2 -0
  129. package/dist/components/lorem-ipsum/lorem-ipsum.d.ts +2 -0
  130. package/dist/components/lorem-ipsum/lorem-ipsum.js +2 -0
  131. package/dist/components/meter/meter.d.ts +2 -0
  132. package/dist/components/meter/meter.js +2 -0
  133. package/dist/components/metric/metric.d.ts +2 -0
  134. package/dist/components/metric/metric.js +2 -0
  135. package/dist/components/metric-grid/metric-grid.d.ts +2 -0
  136. package/dist/components/metric-grid/metric-grid.js +2 -0
  137. package/dist/components/mutation-observer/mutation-observer.d.ts +2 -0
  138. package/dist/components/mutation-observer/mutation-observer.js +2 -0
  139. package/dist/components/navicon/navicon.d.ts +2 -0
  140. package/dist/components/navicon/navicon.js +2 -0
  141. package/dist/components/number/number.d.ts +2 -0
  142. package/dist/components/number/number.js +2 -0
  143. package/dist/components/number-field/number-field.d.ts +2 -0
  144. package/dist/components/number-field/number-field.js +2 -0
  145. package/dist/components/pagination/pagination.d.ts +2 -0
  146. package/dist/components/pagination/pagination.js +2 -0
  147. package/dist/components/popover/popover.d.ts +2 -0
  148. package/dist/components/popover/popover.js +2 -0
  149. package/dist/components/preview-card/preview-card.d.ts +2 -0
  150. package/dist/components/preview-card/preview-card.js +2 -0
  151. package/dist/components/progress/progress.d.ts +2 -0
  152. package/dist/components/progress/progress.js +2 -0
  153. package/dist/components/radio/radio.d.ts +2 -0
  154. package/dist/components/radio/radio.js +2 -0
  155. package/dist/components/radio-item/radio-item.d.ts +2 -0
  156. package/dist/components/radio-item/radio-item.js +2 -0
  157. package/dist/components/random-content/random-content.d.ts +2 -0
  158. package/dist/components/random-content/random-content.js +2 -0
  159. package/dist/components/rating/rating.d.ts +2 -0
  160. package/dist/components/rating/rating.js +2 -0
  161. package/dist/components/resize-observer/resize-observer.d.ts +2 -0
  162. package/dist/components/resize-observer/resize-observer.js +2 -0
  163. package/dist/components/scroll-area/scroll-area.d.ts +2 -0
  164. package/dist/components/scroll-area/scroll-area.js +2 -0
  165. package/dist/components/scroller/scroller.d.ts +2 -0
  166. package/dist/components/scroller/scroller.js +2 -0
  167. package/dist/components/search-list/search-list.d.ts +2 -0
  168. package/dist/components/search-list/search-list.js +2 -0
  169. package/dist/components/select/select.d.ts +2 -0
  170. package/dist/components/select/select.js +2 -0
  171. package/dist/components/selection-summary/selection-summary.d.ts +2 -0
  172. package/dist/components/selection-summary/selection-summary.js +2 -0
  173. package/dist/components/share/share.d.ts +2 -0
  174. package/dist/components/share/share.js +2 -0
  175. package/dist/components/slide-activator/slide-activator.d.ts +2 -0
  176. package/dist/components/slide-activator/slide-activator.js +2 -0
  177. package/dist/components/slider/slider.d.ts +2 -0
  178. package/dist/components/slider/slider.js +2 -0
  179. package/dist/components/sparkline/sparkline.d.ts +2 -0
  180. package/dist/components/sparkline/sparkline.js +2 -0
  181. package/dist/components/spinner/spinner.d.ts +2 -0
  182. package/dist/components/spinner/spinner.js +2 -0
  183. package/dist/components/splitter/splitter.d.ts +2 -0
  184. package/dist/components/splitter/splitter.js +2 -0
  185. package/dist/components/switch/switch.d.ts +2 -0
  186. package/dist/components/switch/switch.js +2 -0
  187. package/dist/components/tab/tab.d.ts +2 -0
  188. package/dist/components/tab/tab.js +2 -0
  189. package/dist/components/tab-list/tab-list.d.ts +2 -0
  190. package/dist/components/tab-list/tab-list.js +2 -0
  191. package/dist/components/tab-panel/tab-panel.d.ts +2 -0
  192. package/dist/components/tab-panel/tab-panel.js +2 -0
  193. package/dist/components/text-area/text-area.d.ts +2 -0
  194. package/dist/components/text-area/text-area.js +2 -0
  195. package/dist/components/text-field/text-field.d.ts +2 -0
  196. package/dist/components/text-field/text-field.js +2 -0
  197. package/dist/components/text-mask/text-mask.d.ts +2 -0
  198. package/dist/components/text-mask/text-mask.js +2 -0
  199. package/dist/components/timed-content/timed-content.d.ts +2 -0
  200. package/dist/components/timed-content/timed-content.js +2 -0
  201. package/dist/components/toast/toast.d.ts +2 -0
  202. package/dist/components/toast/toast.js +2 -0
  203. package/dist/components/toast-item/toast-item.d.ts +2 -0
  204. package/dist/components/toast-item/toast-item.js +2 -0
  205. package/dist/components/toggle-icon/toggle-icon.d.ts +2 -0
  206. package/dist/components/toggle-icon/toggle-icon.js +2 -0
  207. package/dist/components/toggle-tag/toggle-tag.d.ts +2 -0
  208. package/dist/components/toggle-tag/toggle-tag.js +2 -0
  209. package/dist/components/toolbar/toolbar.d.ts +2 -0
  210. package/dist/components/toolbar/toolbar.js +2 -0
  211. package/dist/components/tooltip/tooltip.d.ts +2 -0
  212. package/dist/components/tooltip/tooltip.js +2 -0
  213. package/dist/components/transition-group/transition-group.d.ts +2 -0
  214. package/dist/components/transition-group/transition-group.js +2 -0
  215. package/dist/components/zoomable-frame/zoomable-frame.d.ts +2 -0
  216. package/dist/components/zoomable-frame/zoomable-frame.js +2 -0
  217. package/dist/copy-CvC9vaGw.d.ts +206 -0
  218. package/dist/copy.styles-DWGvGNTP.js +100 -0
  219. package/dist/data-table-CITa8DSn.js +247 -0
  220. package/dist/data-table-DL5RhE0d.d.ts +89 -0
  221. package/dist/date-CJPmOdi9.js +146 -0
  222. package/dist/date-DtaTBM71.d.ts +142 -0
  223. package/dist/decorate-DcF3lt7P.js +9 -0
  224. package/dist/dialog-Cx46HMaZ.js +983 -0
  225. package/dist/dialog-N-v0woIy.d.ts +414 -0
  226. package/dist/divider-9vNsfHW8.js +169 -0
  227. package/dist/divider-DWuAxcXv.d.ts +79 -0
  228. package/dist/docs/custom-elements.json +29301 -0
  229. package/dist/dropdown-BXSKpVX9.js +1123 -0
  230. package/dist/dropdown-Bo00Vlr5.d.ts +537 -0
  231. package/dist/dropdown-item-_lIs-Tfd.d.ts +111 -0
  232. package/dist/dropdown-item-i77cRuN6.js +504 -0
  233. package/dist/empty-result-B2ln1yFL.js +65 -0
  234. package/dist/empty-result-B54x_Ab2.d.ts +31 -0
  235. package/dist/empty-state-BLWjtKUo.js +186 -0
  236. package/dist/empty-state-SGKjpwp3.d.ts +117 -0
  237. package/dist/expander-BUev0BmM.d.ts +174 -0
  238. package/dist/expander-Bwvxj6Oa.js +342 -0
  239. package/dist/field-BEyS909F.js +163 -0
  240. package/dist/field-ITx0jVw-.d.ts +69 -0
  241. package/dist/file-input-BEumLJjg.js +841 -0
  242. package/dist/file-input-D2D6YC0B.d.ts +378 -0
  243. package/dist/filter-bar-Bj2QzEn9.d.ts +35 -0
  244. package/dist/filter-bar-Dcs67aXo.js +66 -0
  245. package/dist/form-section-BchPetkj.js +83 -0
  246. package/dist/form-section-xFBTBULQ.d.ts +34 -0
  247. package/dist/icon-BPVkNsY4.js +165 -0
  248. package/dist/icon-Ci9CPZJV.d.ts +72 -0
  249. package/dist/icon-library-D_if7p2h.d.ts +2 -0
  250. package/dist/include-CQHVVtNs.d.ts +103 -0
  251. package/dist/include-qNUh_6kT.js +155 -0
  252. package/dist/index.d.ts +89 -0
  253. package/dist/index.js +92 -0
  254. package/dist/infinite-scroller-BmmtnWNt.js +285 -0
  255. package/dist/infinite-scroller-CuUEAlB9.d.ts +174 -0
  256. package/dist/intersection-observer-B6TciOAQ.js +503 -0
  257. package/dist/intersection-observer-B7nmP7Zz.d.ts +418 -0
  258. package/dist/listbox-C3XXRWGX.js +1257 -0
  259. package/dist/listbox-DD4ujIJe.d.ts +682 -0
  260. package/dist/listbox-item-CwD9s3VY.js +135 -0
  261. package/dist/listbox-item-DQEJWp4Z.d.ts +53 -0
  262. package/dist/localize-322EtXNX.d.ts +66 -0
  263. package/dist/lorem-ipsum-B2x3V-v8.js +198 -0
  264. package/dist/lorem-ipsum-CR82CSuJ.d.ts +130 -0
  265. package/dist/meter-BC7uaJWf.d.ts +73 -0
  266. package/dist/meter-BIDyjwFp.js +155 -0
  267. package/dist/metric-CjlLq_VA.d.ts +36 -0
  268. package/dist/metric-DbuOcDp_.js +86 -0
  269. package/dist/metric-grid-C2Pb0Zl3.js +37 -0
  270. package/dist/metric-grid-C5Xbb1_0.d.ts +27 -0
  271. package/dist/mutation-observer-BmrZ-GER.d.ts +326 -0
  272. package/dist/mutation-observer-DS8EBuOp.js +388 -0
  273. package/dist/navicon-Dic5Qjzb.d.ts +159 -0
  274. package/dist/navicon-_yMHY27-.js +486 -0
  275. package/dist/number-BNtNXNF3.js +162 -0
  276. package/dist/number-BwbnErlB.d.ts +143 -0
  277. package/dist/number-field-BQHB7UYo.js +726 -0
  278. package/dist/number-field-odk4lKXM.d.ts +422 -0
  279. package/dist/pagination-6z2qcf3U.d.ts +322 -0
  280. package/dist/pagination-DuKPuzdb.js +679 -0
  281. package/dist/popover-D0sxTU6o.d.ts +259 -0
  282. package/dist/popover-DJBrJ0za.js +556 -0
  283. package/dist/preview-card-C7H1FPfd.js +287 -0
  284. package/dist/preview-card-DitOCZTD.d.ts +86 -0
  285. package/dist/progress-Db0_axHQ.d.ts +181 -0
  286. package/dist/progress-DzVk260j.js +494 -0
  287. package/dist/radio-BtDG9xJM.js +658 -0
  288. package/dist/radio-CieMa4zU.d.ts +460 -0
  289. package/dist/radio-item-DIrUStAX.js +264 -0
  290. package/dist/radio-item-Xq2U3cMu.d.ts +69 -0
  291. package/dist/random-content-BhSeJFKz.d.ts +380 -0
  292. package/dist/random-content-BwiirXdG.js +450 -0
  293. package/dist/rating-4xNsWumY.d.ts +369 -0
  294. package/dist/rating-C1BcJDIO.js +722 -0
  295. package/dist/resize-observer-BseSbVWP.d.ts +187 -0
  296. package/dist/resize-observer-DcrLhddo.js +236 -0
  297. package/dist/scroll-area-COc1857S.js +127 -0
  298. package/dist/scroll-area-CVYDf5qY.d.ts +61 -0
  299. package/dist/scroller-LYgBVyfY.js +590 -0
  300. package/dist/scroller-bB2rGs7b.d.ts +374 -0
  301. package/dist/search-list-Clmrg8EV.js +884 -0
  302. package/dist/search-list-n0GYO7rh.d.ts +777 -0
  303. package/dist/select-CkZK2jJn.d.ts +506 -0
  304. package/dist/select-DLIaRnA4.js +690 -0
  305. package/dist/selection-summary-BVnNJ8Lw.js +48 -0
  306. package/dist/selection-summary-DmFkGyZI.d.ts +34 -0
  307. package/dist/share-DPlqP2dc.d.ts +162 -0
  308. package/dist/share-bsgXZCl7.js +250 -0
  309. package/dist/sigvelo.d.ts +5 -0
  310. package/dist/sigvelo.js +5 -0
  311. package/dist/sigvelo.loader.d.ts +3 -0
  312. package/dist/sigvelo.loader.js +102 -0
  313. package/dist/slide-activator-D7bBz69E.d.ts +429 -0
  314. package/dist/slide-activator-DlxQt9R9.js +798 -0
  315. package/dist/slider-B0FVsV1o.d.ts +921 -0
  316. package/dist/slider-B90Il7x3.js +1744 -0
  317. package/dist/sparkline-CcpTaJ_Z.js +358 -0
  318. package/dist/sparkline-DlCIt81-.d.ts +235 -0
  319. package/dist/spinner-C04Dmc0H.js +188 -0
  320. package/dist/spinner-CZ19x_dC.d.ts +99 -0
  321. package/dist/splitter-DBDJAzsp.d.ts +325 -0
  322. package/dist/splitter-MnD4In9H.js +638 -0
  323. package/dist/switch-CPaEKbog.js +581 -0
  324. package/dist/switch-Cief9M59.d.ts +248 -0
  325. package/dist/tab-BcqYGsuW.d.ts +44 -0
  326. package/dist/tab-C-FtuNmh.js +102 -0
  327. package/dist/tab-list-B_Ye_Oj9.js +691 -0
  328. package/dist/tab-list-DDvS8qHr.d.ts +450 -0
  329. package/dist/tab-panel-BaBl6eep.js +60 -0
  330. package/dist/tab-panel-BzSJlSfd.d.ts +38 -0
  331. package/dist/text-area-B_mjCE9W.d.ts +327 -0
  332. package/dist/text-area-Czixaz-_.js +556 -0
  333. package/dist/text-field-BClWMp6q.d.ts +424 -0
  334. package/dist/text-field-inpJfp0A.js +687 -0
  335. package/dist/text-mask-CNKVKSFp.d.ts +336 -0
  336. package/dist/text-mask-DDEurj90.js +370 -0
  337. package/dist/themes/sigvelo.css +10 -0
  338. package/dist/themes/utilities.css +9 -0
  339. package/dist/timed-content-D2mGFamc.d.ts +181 -0
  340. package/dist/timed-content-pvEP4l5V.js +226 -0
  341. package/dist/toast-BnZaIg6Z.js +636 -0
  342. package/dist/toast-cEBVK9NQ.d.ts +487 -0
  343. package/dist/toast-item-BPpJT6vD.d.ts +159 -0
  344. package/dist/toast-item-IS8IFUEg.js +372 -0
  345. package/dist/toggle-icon-4oLDeEt4.js +752 -0
  346. package/dist/toggle-icon-DlwMMWZL.d.ts +359 -0
  347. package/dist/toggle-tag-1sfTFJtg.js +434 -0
  348. package/dist/toggle-tag-IVvMGT4R.d.ts +245 -0
  349. package/dist/toolbar-CABq0ZL1.d.ts +122 -0
  350. package/dist/toolbar-CEZ0-F-X.js +196 -0
  351. package/dist/tooltip-DbyoPFNe.js +521 -0
  352. package/dist/tooltip-ahFthek8.d.ts +192 -0
  353. package/dist/transition-group-3hnAnwSd.js +801 -0
  354. package/dist/transition-group-DD_CjSNC.d.ts +608 -0
  355. package/dist/translations/en.d.ts +6 -0
  356. package/dist/translations/en.js +75 -0
  357. package/dist/translations/es.d.ts +6 -0
  358. package/dist/translations/es.js +75 -0
  359. package/dist/types/custom-element-jsx.d.ts +13723 -0
  360. package/dist/utilities/icon-library.d.ts +3 -0
  361. package/dist/utilities/icon-library.js +93 -0
  362. package/dist/utilities/localize.d.ts +2 -0
  363. package/dist/utilities/localize.js +6 -0
  364. package/dist/zoomable-frame-Cldvj5sE.js +398 -0
  365. package/dist/zoomable-frame-r6S6587z.d.ts +162 -0
  366. package/package.json +83 -0
package/dist/index.js ADDED
@@ -0,0 +1,92 @@
1
+ import "./translations/en.js";
2
+ import { registerIconLibrary, unregisterIconLibrary } from "./utilities/icon-library.js";
3
+ import { t as SigveloIcon } from "./icon-BPVkNsY4.js";
4
+ import { t as SigveloAccordionItem } from "./accordion-item-DvPfhpm8.js";
5
+ import { t as SigveloAccordion } from "./accordion-zDr-Br4V.js";
6
+ import { t as SigveloActionBar } from "./action-bar-CjN_UcnP.js";
7
+ import { t as SigveloAlertDialog } from "./alert-dialog-D25Oi_TS.js";
8
+ import { t as SigveloDialog } from "./dialog-Cx46HMaZ.js";
9
+ import { t as SigveloAvatar } from "./avatar-CRP0kW3x.js";
10
+ import { t as SigveloBadge } from "./badge-Ct95U4UO.js";
11
+ import { t as SigveloBreadcrumb } from "./breadcrumb-uURhiqWJ.js";
12
+ import { t as SigveloBreadcrumbItem } from "./breadcrumb-item-P5pdq_gE.js";
13
+ import { t as SigveloSpinner } from "./spinner-C04Dmc0H.js";
14
+ import { t as SigveloButton } from "./button-5k_aL_gD.js";
15
+ import { t as SigveloButtonGroup } from "./button-group-BydvJTQy.js";
16
+ import { t as SigveloCallout } from "./callout-B8zTf8Go.js";
17
+ import { t as SigveloCard } from "./card-DIg1-X2G.js";
18
+ import { t as SigveloCarouselItem } from "./carousel-item-B5-X31Ha.js";
19
+ import { t as SigveloCarousel } from "./carousel-Bktu7wrD.js";
20
+ import { t as SigveloCheckbox } from "./checkbox-D6r7PVPj.js";
21
+ import { t as SigveloCheckboxGroup } from "./checkbox-group-CLvNAO_F.js";
22
+ import { SigveloCopy } from "./components/copy/copy.js";
23
+ import { t as SigveloTooltip } from "./tooltip-DbyoPFNe.js";
24
+ import { t as SigveloSlider } from "./slider-B90Il7x3.js";
25
+ import { t as SigveloTextField } from "./text-field-inpJfp0A.js";
26
+ import { t as SigveloColorPicker } from "./color-picker-adwOmtRl.js";
27
+ import { t as SigveloColorInput } from "./color-input-DPIxi9wR.js";
28
+ import { t as SigveloComboboxItem } from "./combobox-item-yM6tDrGG.js";
29
+ import { t as SigveloCombobox } from "./combobox-B6al50UG.js";
30
+ import { t as SigveloComparison } from "./comparison-CyqKrCN-.js";
31
+ import { t as SigveloDate } from "./date-CJPmOdi9.js";
32
+ import { n as SigveloRowSelectEvent, t as SigveloDataTable } from "./data-table-CITa8DSn.js";
33
+ import { t as SigveloDivider } from "./divider-9vNsfHW8.js";
34
+ import { t as SigveloDropdownItem } from "./dropdown-item-i77cRuN6.js";
35
+ import { t as SigveloDropdown } from "./dropdown-BXSKpVX9.js";
36
+ import { t as SigveloEmptyState } from "./empty-state-BLWjtKUo.js";
37
+ import { t as SigveloEmptyResult } from "./empty-result-B2ln1yFL.js";
38
+ import { t as SigveloExpander } from "./expander-Bwvxj6Oa.js";
39
+ import { t as SigveloField } from "./field-BEyS909F.js";
40
+ import { t as SigveloFileInput } from "./file-input-BEumLJjg.js";
41
+ import { n as SigveloFilterChangeEvent, t as SigveloFilterBar } from "./filter-bar-Dcs67aXo.js";
42
+ import { t as SigveloFormSection } from "./form-section-BchPetkj.js";
43
+ import { t as SigveloInclude } from "./include-qNUh_6kT.js";
44
+ import { t as SigveloInfiniteScroller } from "./infinite-scroller-BmmtnWNt.js";
45
+ import { t as SigveloIntersectionObserver } from "./intersection-observer-B6TciOAQ.js";
46
+ import { t as SigveloListboxItem } from "./listbox-item-CwD9s3VY.js";
47
+ import { t as SigveloListbox } from "./listbox-C3XXRWGX.js";
48
+ import { t as SigveloLoremIpsum } from "./lorem-ipsum-B2x3V-v8.js";
49
+ import { t as SigveloMeter } from "./meter-BIDyjwFp.js";
50
+ import { t as SigveloMetric } from "./metric-DbuOcDp_.js";
51
+ import { t as SigveloMetricGrid } from "./metric-grid-C2Pb0Zl3.js";
52
+ import { t as SigveloMutationObserver } from "./mutation-observer-DS8EBuOp.js";
53
+ import { t as SigveloNavicon } from "./navicon-_yMHY27-.js";
54
+ import { t as SigveloNumber } from "./number-BNtNXNF3.js";
55
+ import { t as SigveloNumberField } from "./number-field-BQHB7UYo.js";
56
+ import { t as SigveloPagination } from "./pagination-DuKPuzdb.js";
57
+ import { t as SigveloPopover } from "./popover-DJBrJ0za.js";
58
+ import { t as SigveloPreviewCard } from "./preview-card-C7H1FPfd.js";
59
+ import { t as SigveloProgress } from "./progress-DzVk260j.js";
60
+ import { t as SigveloRadioItem } from "./radio-item-DIrUStAX.js";
61
+ import { t as SigveloRadio } from "./radio-BtDG9xJM.js";
62
+ import { t as SigveloRandomContent } from "./random-content-BwiirXdG.js";
63
+ import { t as SigveloRating } from "./rating-C1BcJDIO.js";
64
+ import { t as SigveloResizeObserver } from "./resize-observer-DcrLhddo.js";
65
+ import { t as SigveloScrollArea } from "./scroll-area-COc1857S.js";
66
+ import { t as SigveloScroller } from "./scroller-LYgBVyfY.js";
67
+ import { t as SigveloSearchList } from "./search-list-Clmrg8EV.js";
68
+ import { t as SigveloSelect } from "./select-DLIaRnA4.js";
69
+ import { t as SigveloSelectionSummary } from "./selection-summary-BVnNJ8Lw.js";
70
+ import { t as SigveloShare } from "./share-bsgXZCl7.js";
71
+ import { t as SigveloSlideActivator } from "./slide-activator-DlxQt9R9.js";
72
+ import { t as SigveloSparkline } from "./sparkline-CcpTaJ_Z.js";
73
+ import { t as SigveloSplitter } from "./splitter-MnD4In9H.js";
74
+ import { t as SigveloSwitch } from "./switch-CPaEKbog.js";
75
+ import { t as SigveloTab } from "./tab-C-FtuNmh.js";
76
+ import { t as SigveloTabPanel } from "./tab-panel-BaBl6eep.js";
77
+ import { t as SigveloTabList } from "./tab-list-B_Ye_Oj9.js";
78
+ import { t as SigveloTextArea } from "./text-area-Czixaz-_.js";
79
+ import { t as SigveloTextMask } from "./text-mask-DDEurj90.js";
80
+ import { t as SigveloTimedContent } from "./timed-content-pvEP4l5V.js";
81
+ import { t as SigveloToastItem } from "./toast-item-IS8IFUEg.js";
82
+ import { t as SigveloTransitionGroup } from "./transition-group-3hnAnwSd.js";
83
+ import { t as SigveloToast } from "./toast-BnZaIg6Z.js";
84
+ import { t as SigveloToggleIcon } from "./toggle-icon-4oLDeEt4.js";
85
+ import { t as SigveloToggleTag } from "./toggle-tag-1sfTFJtg.js";
86
+ import { t as SigveloToolbar } from "./toolbar-CEZ0-F-X.js";
87
+ import { t as SigveloZoomableFrame } from "./zoomable-frame-Cldvj5sE.js";
88
+ import "./components/index.js";
89
+ import { allDefined } from "@mcp-b/wc-support/utilities/defined";
90
+ import { getLibraryPath, setLibraryPath } from "@mcp-b/wc-support/utilities/library";
91
+ import { discoverElements, preventTurboFouce, startLoader, stopLoader } from "@mcp-b/wc-support/utilities/loader";
92
+ export { SigveloAccordion, SigveloAccordionItem, SigveloActionBar, SigveloAlertDialog, SigveloAvatar, SigveloBadge, SigveloBreadcrumb, SigveloBreadcrumbItem, SigveloButton, SigveloButtonGroup, SigveloCallout, SigveloCard, SigveloCarousel, SigveloCarouselItem, SigveloCheckbox, SigveloCheckboxGroup, SigveloColorInput, SigveloColorPicker, SigveloCombobox, SigveloComboboxItem, SigveloComparison, SigveloCopy, SigveloDataTable, SigveloDate, SigveloDialog, SigveloDivider, SigveloDropdown, SigveloDropdownItem, SigveloEmptyResult, SigveloEmptyState, SigveloExpander, SigveloField, SigveloFileInput, SigveloFilterBar, SigveloFilterChangeEvent, SigveloFormSection, SigveloIcon, SigveloInclude, SigveloInfiniteScroller, SigveloIntersectionObserver, SigveloListbox, SigveloListboxItem, SigveloLoremIpsum, SigveloMeter, SigveloMetric, SigveloMetricGrid, SigveloMutationObserver, SigveloNavicon, SigveloNumber, SigveloNumberField, SigveloPagination, SigveloPopover, SigveloPreviewCard, SigveloProgress, SigveloRadio, SigveloRadioItem, SigveloRandomContent, SigveloRating, SigveloResizeObserver, SigveloRowSelectEvent, SigveloScrollArea, SigveloScroller, SigveloSearchList, SigveloSelect, SigveloSelectionSummary, SigveloShare, SigveloSlideActivator, SigveloSlider, SigveloSparkline, SigveloSpinner, SigveloSplitter, SigveloSwitch, SigveloTab, SigveloTabList, SigveloTabPanel, SigveloTextArea, SigveloTextField, SigveloTextMask, SigveloTimedContent, SigveloToast, SigveloToastItem, SigveloToggleIcon, SigveloToggleTag, SigveloToolbar, SigveloTooltip, SigveloTransitionGroup, SigveloZoomableFrame, allDefined, discoverElements, getLibraryPath, preventTurboFouce, registerIconLibrary, setLibraryPath, startLoader, stopLoader, unregisterIconLibrary };
@@ -0,0 +1,285 @@
1
+ import { Localize } from "./utilities/localize.js";
2
+ import { t as __decorate } from "./decorate-DcF3lt7P.js";
3
+ import "./spinner-C04Dmc0H.js";
4
+ import { css, html } from "lit";
5
+ import { property, query, state } from "lit/decorators.js";
6
+ import hostStyles from "@mcp-b/wc-support/styles/host.styles";
7
+ import { SigveloElement } from "@mcp-b/wc-support/base/sigvelo-element";
8
+ import { SigveloLoadMoreEvent } from "@mcp-b/wc-support/events/load";
9
+ //#region src/components/infinite-scroller/infinite-scroller.styles.ts
10
+ var infinite_scroller_styles_default = css`
11
+ :host {
12
+ display: flex;
13
+ position: relative;
14
+ flex-direction: column;
15
+ width: 100%;
16
+ max-height: 25rem;
17
+ overflow-y: auto;
18
+ gap: 0;
19
+ border: var(--sigvelo-border-style) var(--sigvelo-border-width)
20
+ var(--sigvelo-color-neutral-border-subtle);
21
+ border-radius: var(--sigvelo-radius-md);
22
+ background-color: var(--sigvelo-color-surface);
23
+ box-shadow: var(--sigvelo-elevation-hairline);
24
+ scrollbar-color: var(--sigvelo-color-neutral-bg) transparent;
25
+ scrollbar-width: thin;
26
+ -webkit-overflow-scrolling: touch;
27
+ }
28
+
29
+ :host(:focus) {
30
+ outline: none;
31
+ }
32
+
33
+ :host(:focus-visible) {
34
+ outline: var(--sigvelo-border-style) calc(var(--sigvelo-border-width) + 1px)
35
+ var(--sigvelo-color-focus);
36
+ outline-offset: var(--sigvelo-border-width);
37
+ }
38
+
39
+ sigvelo-spinner {
40
+ margin-inline: auto;
41
+ margin-block: 1rem;
42
+ }
43
+
44
+ ::slotted(*:focus) {
45
+ outline: none;
46
+ }
47
+
48
+ ::slotted(*:focus-visible) {
49
+ outline: var(--sigvelo-focus-ring);
50
+ outline-offset: calc(-1 * var(--sigvelo-focus-width));
51
+ }
52
+ `;
53
+ //#endregion
54
+ //#region src/components/infinite-scroller/infinite-scroller.ts
55
+ /**
56
+ * <sigvelo-infinite-scroller>
57
+ *
58
+ * @summary Provides an accessible container for continuously loading content feeds.
59
+ * @tag sigvelo-infinite-scroller
60
+ * @documentation https://design-system.sigvelo.com/docs/components/infinite-scroller
61
+ * @status stable
62
+ * @since 1.0
63
+ *
64
+ * @dependency sigvelo-spinner
65
+ *
66
+ * @slot - The default slot for feed items. Each item should have role="article" and be focusable.
67
+ *
68
+ * @event sigvelo-load-more - Emitted when scrolling reaches the threshold and more items should be loaded.
69
+ *
70
+ * @cssstate loading - Applied when the infinite scroller is loading more content.
71
+ * @cssstate complete - Applied when the infinite scroller has no more content to load.
72
+ *
73
+ * @example Default
74
+ * Infinite scrollers load new content automatically as users scroll down a feed. Instead of clicking "Next" buttons, content continuously appears as they approach the bottom. Infinite scroller follows the ARIA APG Infinite Scrolling Feed pattern for accessibility.
75
+ *
76
+ * ```html
77
+ * <sigvelo-infinite-scroller id="infinite__overview">
78
+ * <div class="item">Item 1</div>
79
+ * <div class="item">Item 2</div>
80
+ * <div class="item">Item 3</div>
81
+ * <div class="item">Item 4</div>
82
+ * <div class="item">Item 5</div>
83
+ * <div class="item">Item 6</div>
84
+ * <div class="item">Item 7</div>
85
+ * <div class="item">Item 8</div>
86
+ * <div class="item">Item 9</div>
87
+ * <div class="item">Item 10</div>
88
+ * <div class="item">Item 11</div>
89
+ * <div class="item">Item 12</div>
90
+ * <div class="item">Item 13</div>
91
+ * <div class="item">Item 14</div>
92
+ * <div class="item">Item 15</div>
93
+ * <div class="item">Item 16</div>
94
+ * <div class="item">Item 17</div>
95
+ * <div class="item">Item 18</div>
96
+ * <div class="item">Item 19</div>
97
+ * <div class="item">Item 20</div>
98
+ * </sigvelo-infinite-scroller>
99
+ *
100
+ * <script>
101
+ * const infiniteScroll = document.getElementById('infinite__overview');
102
+ * let count = infiniteScroll.querySelectorAll('.item').length;
103
+ *
104
+ * infiniteScroll.addEventListener('sigvelo-load-more', async event => {
105
+ * // Simulate fetching content from a server
106
+ * setTimeout(() => {
107
+ * for (let i = 0; i < 20; i++) {
108
+ * const item = document.createElement('div');
109
+ * item.classList.add('item');
110
+ * item.textContent = `Item ${++count}`;
111
+ * infiniteScroll.append(item);
112
+ * }
113
+ *
114
+ * // We'll pretend there's nothing more to load after 100
115
+ * if (count >= 100) {
116
+ * infiniteScroll.complete();
117
+ * return;
118
+ * }
119
+ * }, 300);
120
+ * });
121
+ * <\/script>
122
+ *
123
+ * <style>
124
+ * #infinite__overview {
125
+ * .item {
126
+ * padding: 1rem 1.5rem;
127
+ *
128
+ * &:not(:last-child) {
129
+ * border-bottom: solid 1px var(--sigvelo-color-neutral-border-subtle);
130
+ * }
131
+ * }
132
+ * }
133
+ * </style>
134
+ * ```
135
+ *
136
+ * @example Providing initial content
137
+ * You can slot just about any content you want into an infinite scroller container. The component watches the scroll position and dispatches the `sigvelo-load-more` event when users get close to the bottom.
138
+ *
139
+ * ```html
140
+ * <sigvelo-infinite-scroller label="News Feed">
141
+ * <!-- Initial content -->
142
+ * <article class="feed-item">First item</article>
143
+ * <article class="feed-item">Second item</article>
144
+ * <article class="feed-item">Third item</article>
145
+ * ...
146
+ * </sigvelo-infinite-scroller>
147
+ * ```
148
+ *
149
+ * @example Loading more content
150
+ * In your code, listen for the `sigvelo-load-more` event. This is your cue to asynchronously load more content, e.g. from the server, and append it to the container. If no more content is available, call the component's `complete()` method to disable further loading.
151
+ *
152
+ * ```js
153
+ * const infiniteScroll = document.querySelector('sigvelo-infinite-scroll');
154
+ * let currentPage = 1;
155
+ *
156
+ * infiniteScroll.addEventListener('sigvelo-load-more', async () => {
157
+ * try {
158
+ * // Fetch new data from your API
159
+ * const response = await fetch(`/api/posts?page=${currentPage}`);
160
+ * const posts = await response.json();
161
+ *
162
+ * // Append posts to the feed
163
+ * posts.forEach(post => {
164
+ * const item = document.createElement('article');
165
+ * item.className = 'feed-item';
166
+ * item.innerHTML = `<h3>${post.title}</h3><p>${post.excerpt}</p>`;
167
+ * infiniteScroll.appendChild(item);
168
+ * });
169
+ *
170
+ * currentPage++;
171
+ *
172
+ * // Stop loading when no more content is available
173
+ * if (posts.length === 0) {
174
+ * infiniteScroll.complete();
175
+ * }
176
+ * } catch (error) {
177
+ * console.error('Failed to load more items:', error);
178
+ * }
179
+ * });
180
+ * ```
181
+ *
182
+ * To reenable loading, append additional items to the container or perform any DOM action that results in a `slotchange`.
183
+ *
184
+ * **Note:** When the container is empty initially or if the items don't cause the container to scroll, the `sigvelo-load-more` event will be dispatched immediately to request more items. This behavior allows the entire feed to load, regardless of content or screen size.
185
+ */
186
+ var SigveloInfiniteScroller = class extends SigveloElement {
187
+ constructor(..._args) {
188
+ super(..._args);
189
+ this.isLoading = false;
190
+ this.isComplete = false;
191
+ this.contentCheckFrameId = null;
192
+ this.localize = new Localize(this);
193
+ this.thresholdInPixels = 0;
194
+ this.thresholdInPercent = 0;
195
+ this.label = "";
196
+ this.threshold = "20%";
197
+ this.handleScroll = () => {
198
+ if (this.isComplete || this.isLoading) return;
199
+ if (this.checkScrollThreshold()) {
200
+ this.isLoading = true;
201
+ this.dispatchEvent(new SigveloLoadMoreEvent());
202
+ }
203
+ };
204
+ }
205
+ static {
206
+ this.styles = [hostStyles, infinite_scroller_styles_default];
207
+ }
208
+ connectedCallback() {
209
+ super.connectedCallback();
210
+ this.setAttribute("role", "feed");
211
+ this.parseThreshold();
212
+ this.addEventListener("scroll", this.handleScroll);
213
+ }
214
+ disconnectedCallback() {
215
+ super.disconnectedCallback();
216
+ this.removeEventListener("scroll", this.handleScroll);
217
+ if (this.contentCheckFrameId) cancelAnimationFrame(this.contentCheckFrameId);
218
+ }
219
+ updated(changedProperties) {
220
+ if (changedProperties.has("label")) this.setAttribute("aria-label", this.label || this.localize.term("feed"));
221
+ if (changedProperties.has("threshold")) this.parseThreshold();
222
+ if (changedProperties.has("isLoading")) this.customStates.set("loading", this.isLoading);
223
+ if (changedProperties.has("isComplete")) this.customStates.set("complete", this.isComplete);
224
+ }
225
+ parseThreshold() {
226
+ const val = this.threshold;
227
+ if (val.endsWith("%")) {
228
+ this.thresholdInPixels = 0;
229
+ this.thresholdInPercent = parseFloat(val) / 100;
230
+ } else {
231
+ this.thresholdInPixels = parseFloat(val);
232
+ this.thresholdInPercent = 0;
233
+ }
234
+ }
235
+ checkScrollThreshold() {
236
+ const scrollPosition = this.scrollTop + this.clientHeight;
237
+ const threshold = this.thresholdInPercent !== 0 ? this.clientHeight * this.thresholdInPercent : this.thresholdInPixels;
238
+ return scrollPosition >= this.scrollHeight - threshold;
239
+ }
240
+ handleSlotChange() {
241
+ this.defaultSlot.assignedElements({ flatten: true }).forEach((el) => {
242
+ if (el instanceof HTMLElement) {
243
+ if (!el.hasAttribute("role")) el.setAttribute("role", "article");
244
+ if (!el.hasAttribute("tabindex")) el.setAttribute("tabindex", "0");
245
+ }
246
+ });
247
+ this.isLoading = false;
248
+ this.scheduleContentCheck();
249
+ }
250
+ isScrollable() {
251
+ return this.scrollHeight > this.clientHeight;
252
+ }
253
+ scheduleContentCheck() {
254
+ if (this.contentCheckFrameId) cancelAnimationFrame(this.contentCheckFrameId);
255
+ this.contentCheckFrameId = requestAnimationFrame(() => {
256
+ if (this.isComplete || this.isLoading) return;
257
+ if (!this.isScrollable() || this.checkScrollThreshold()) {
258
+ this.isLoading = true;
259
+ this.dispatchEvent(new SigveloLoadMoreEvent());
260
+ }
261
+ });
262
+ }
263
+ /**
264
+ * Mark the feed as completed, preventing further load events. Changing content in the default slot will reset this
265
+ * and re-enable infinite scrolling.
266
+ */
267
+ complete() {
268
+ this.isComplete = true;
269
+ this.isLoading = false;
270
+ }
271
+ render() {
272
+ return html`
273
+ <slot @slotchange=${this.handleSlotChange}></slot>
274
+ ${!this.isComplete ? html` <sigvelo-spinner></sigvelo-spinner> ` : ""}
275
+ `;
276
+ }
277
+ };
278
+ __decorate([query("slot:not([name])")], SigveloInfiniteScroller.prototype, "defaultSlot", void 0);
279
+ __decorate([state()], SigveloInfiniteScroller.prototype, "isLoading", void 0);
280
+ __decorate([state()], SigveloInfiniteScroller.prototype, "isComplete", void 0);
281
+ __decorate([property()], SigveloInfiniteScroller.prototype, "label", void 0);
282
+ __decorate([property()], SigveloInfiniteScroller.prototype, "threshold", void 0);
283
+ customElements.define("sigvelo-infinite-scroller", SigveloInfiniteScroller);
284
+ //#endregion
285
+ export { SigveloInfiniteScroller as t };
@@ -0,0 +1,174 @@
1
+ import { CSSResultGroup, PropertyValues } from "lit";
2
+ import { SigveloElement } from "@mcp-b/wc-support/base/sigvelo-element";
3
+
4
+ //#region src/components/infinite-scroller/infinite-scroller.d.ts
5
+ /**
6
+ * <sigvelo-infinite-scroller>
7
+ *
8
+ * @summary Provides an accessible container for continuously loading content feeds.
9
+ * @tag sigvelo-infinite-scroller
10
+ * @documentation https://design-system.sigvelo.com/docs/components/infinite-scroller
11
+ * @status stable
12
+ * @since 1.0
13
+ *
14
+ * @dependency sigvelo-spinner
15
+ *
16
+ * @slot - The default slot for feed items. Each item should have role="article" and be focusable.
17
+ *
18
+ * @event sigvelo-load-more - Emitted when scrolling reaches the threshold and more items should be loaded.
19
+ *
20
+ * @cssstate loading - Applied when the infinite scroller is loading more content.
21
+ * @cssstate complete - Applied when the infinite scroller has no more content to load.
22
+ *
23
+ * @example Default
24
+ * Infinite scrollers load new content automatically as users scroll down a feed. Instead of clicking "Next" buttons, content continuously appears as they approach the bottom. Infinite scroller follows the ARIA APG Infinite Scrolling Feed pattern for accessibility.
25
+ *
26
+ * ```html
27
+ * <sigvelo-infinite-scroller id="infinite__overview">
28
+ * <div class="item">Item 1</div>
29
+ * <div class="item">Item 2</div>
30
+ * <div class="item">Item 3</div>
31
+ * <div class="item">Item 4</div>
32
+ * <div class="item">Item 5</div>
33
+ * <div class="item">Item 6</div>
34
+ * <div class="item">Item 7</div>
35
+ * <div class="item">Item 8</div>
36
+ * <div class="item">Item 9</div>
37
+ * <div class="item">Item 10</div>
38
+ * <div class="item">Item 11</div>
39
+ * <div class="item">Item 12</div>
40
+ * <div class="item">Item 13</div>
41
+ * <div class="item">Item 14</div>
42
+ * <div class="item">Item 15</div>
43
+ * <div class="item">Item 16</div>
44
+ * <div class="item">Item 17</div>
45
+ * <div class="item">Item 18</div>
46
+ * <div class="item">Item 19</div>
47
+ * <div class="item">Item 20</div>
48
+ * </sigvelo-infinite-scroller>
49
+ *
50
+ * <script>
51
+ * const infiniteScroll = document.getElementById('infinite__overview');
52
+ * let count = infiniteScroll.querySelectorAll('.item').length;
53
+ *
54
+ * infiniteScroll.addEventListener('sigvelo-load-more', async event => {
55
+ * // Simulate fetching content from a server
56
+ * setTimeout(() => {
57
+ * for (let i = 0; i < 20; i++) {
58
+ * const item = document.createElement('div');
59
+ * item.classList.add('item');
60
+ * item.textContent = `Item ${++count}`;
61
+ * infiniteScroll.append(item);
62
+ * }
63
+ *
64
+ * // We'll pretend there's nothing more to load after 100
65
+ * if (count >= 100) {
66
+ * infiniteScroll.complete();
67
+ * return;
68
+ * }
69
+ * }, 300);
70
+ * });
71
+ * </script>
72
+ *
73
+ * <style>
74
+ * #infinite__overview {
75
+ * .item {
76
+ * padding: 1rem 1.5rem;
77
+ *
78
+ * &:not(:last-child) {
79
+ * border-bottom: solid 1px var(--sigvelo-color-neutral-border-subtle);
80
+ * }
81
+ * }
82
+ * }
83
+ * </style>
84
+ * ```
85
+ *
86
+ * @example Providing initial content
87
+ * You can slot just about any content you want into an infinite scroller container. The component watches the scroll position and dispatches the `sigvelo-load-more` event when users get close to the bottom.
88
+ *
89
+ * ```html
90
+ * <sigvelo-infinite-scroller label="News Feed">
91
+ * <!-- Initial content -->
92
+ * <article class="feed-item">First item</article>
93
+ * <article class="feed-item">Second item</article>
94
+ * <article class="feed-item">Third item</article>
95
+ * ...
96
+ * </sigvelo-infinite-scroller>
97
+ * ```
98
+ *
99
+ * @example Loading more content
100
+ * In your code, listen for the `sigvelo-load-more` event. This is your cue to asynchronously load more content, e.g. from the server, and append it to the container. If no more content is available, call the component's `complete()` method to disable further loading.
101
+ *
102
+ * ```js
103
+ * const infiniteScroll = document.querySelector('sigvelo-infinite-scroll');
104
+ * let currentPage = 1;
105
+ *
106
+ * infiniteScroll.addEventListener('sigvelo-load-more', async () => {
107
+ * try {
108
+ * // Fetch new data from your API
109
+ * const response = await fetch(`/api/posts?page=${currentPage}`);
110
+ * const posts = await response.json();
111
+ *
112
+ * // Append posts to the feed
113
+ * posts.forEach(post => {
114
+ * const item = document.createElement('article');
115
+ * item.className = 'feed-item';
116
+ * item.innerHTML = `<h3>${post.title}</h3><p>${post.excerpt}</p>`;
117
+ * infiniteScroll.appendChild(item);
118
+ * });
119
+ *
120
+ * currentPage++;
121
+ *
122
+ * // Stop loading when no more content is available
123
+ * if (posts.length === 0) {
124
+ * infiniteScroll.complete();
125
+ * }
126
+ * } catch (error) {
127
+ * console.error('Failed to load more items:', error);
128
+ * }
129
+ * });
130
+ * ```
131
+ *
132
+ * To reenable loading, append additional items to the container or perform any DOM action that results in a `slotchange`.
133
+ *
134
+ * **Note:** When the container is empty initially or if the items don't cause the container to scroll, the `sigvelo-load-more` event will be dispatched immediately to request more items. This behavior allows the entire feed to load, regardless of content or screen size.
135
+ */
136
+ declare class SigveloInfiniteScroller extends SigveloElement {
137
+ static styles: CSSResultGroup;
138
+ defaultSlot: HTMLSlotElement;
139
+ isLoading: boolean;
140
+ isComplete: boolean;
141
+ private contentCheckFrameId;
142
+ private localize;
143
+ private thresholdInPixels;
144
+ private thresholdInPercent;
145
+ /** An accessible label for the feed. */
146
+ label: string;
147
+ /**
148
+ * The scroll threshold at which to trigger loading more items. Accepts percentages (e.g., "20%") or pixels
149
+ * (e.g., "200px").
150
+ */
151
+ threshold: string;
152
+ connectedCallback(): void;
153
+ disconnectedCallback(): void;
154
+ updated(changedProperties: PropertyValues<this>): void;
155
+ private parseThreshold;
156
+ private checkScrollThreshold;
157
+ private handleScroll;
158
+ private handleSlotChange;
159
+ private isScrollable;
160
+ private scheduleContentCheck;
161
+ /**
162
+ * Mark the feed as completed, preventing further load events. Changing content in the default slot will reset this
163
+ * and re-enable infinite scrolling.
164
+ */
165
+ complete(): void;
166
+ render(): import("lit-html").TemplateResult<1>;
167
+ }
168
+ declare global {
169
+ interface HTMLElementTagNameMap {
170
+ "sigvelo-infinite-scroller": SigveloInfiniteScroller;
171
+ }
172
+ }
173
+ //#endregion
174
+ export { SigveloInfiniteScroller as t };