@class-kit/vue 0.1.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 (541) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/LICENSE +3 -0
  3. package/README.md +86 -0
  4. package/dist/components/affix.cjs +132 -0
  5. package/dist/components/affix.cjs.map +1 -0
  6. package/dist/components/affix.d.ts +2 -0
  7. package/dist/components/affix.d.ts.map +1 -0
  8. package/dist/components/affix.js +130 -0
  9. package/dist/components/affix.js.map +1 -0
  10. package/dist/components/backtop.cjs +180 -0
  11. package/dist/components/backtop.cjs.map +1 -0
  12. package/dist/components/backtop.d.ts +2 -0
  13. package/dist/components/backtop.d.ts.map +1 -0
  14. package/dist/components/backtop.js +178 -0
  15. package/dist/components/backtop.js.map +1 -0
  16. package/dist/components/badge.cjs +84 -0
  17. package/dist/components/badge.cjs.map +1 -0
  18. package/dist/components/badge.d.ts +2 -0
  19. package/dist/components/badge.d.ts.map +1 -0
  20. package/dist/components/badge.js +82 -0
  21. package/dist/components/badge.js.map +1 -0
  22. package/dist/components/barcode.cjs +122 -0
  23. package/dist/components/barcode.cjs.map +1 -0
  24. package/dist/components/barcode.d.ts +2 -0
  25. package/dist/components/barcode.d.ts.map +1 -0
  26. package/dist/components/barcode.js +120 -0
  27. package/dist/components/barcode.js.map +1 -0
  28. package/dist/components/breadcrumb.cjs +76 -0
  29. package/dist/components/breadcrumb.cjs.map +1 -0
  30. package/dist/components/breadcrumb.d.ts +2 -0
  31. package/dist/components/breadcrumb.d.ts.map +1 -0
  32. package/dist/components/breadcrumb.js +74 -0
  33. package/dist/components/breadcrumb.js.map +1 -0
  34. package/dist/components/button.cjs +104 -0
  35. package/dist/components/button.cjs.map +1 -0
  36. package/dist/components/button.d.ts +2 -0
  37. package/dist/components/button.d.ts.map +1 -0
  38. package/dist/components/button.js +102 -0
  39. package/dist/components/button.js.map +1 -0
  40. package/dist/components/calendar.cjs +173 -0
  41. package/dist/components/calendar.cjs.map +1 -0
  42. package/dist/components/calendar.d.ts +2 -0
  43. package/dist/components/calendar.d.ts.map +1 -0
  44. package/dist/components/calendar.js +171 -0
  45. package/dist/components/calendar.js.map +1 -0
  46. package/dist/components/canvas-editor.cjs +450 -0
  47. package/dist/components/canvas-editor.cjs.map +1 -0
  48. package/dist/components/canvas-editor.d.ts +2 -0
  49. package/dist/components/canvas-editor.d.ts.map +1 -0
  50. package/dist/components/canvas-editor.js +448 -0
  51. package/dist/components/canvas-editor.js.map +1 -0
  52. package/dist/components/canvas-image.cjs +124 -0
  53. package/dist/components/canvas-image.cjs.map +1 -0
  54. package/dist/components/canvas-image.d.ts +2 -0
  55. package/dist/components/canvas-image.d.ts.map +1 -0
  56. package/dist/components/canvas-image.js +122 -0
  57. package/dist/components/canvas-image.js.map +1 -0
  58. package/dist/components/chat-virtual-list.cjs +625 -0
  59. package/dist/components/chat-virtual-list.cjs.map +1 -0
  60. package/dist/components/chat-virtual-list.d.ts +2 -0
  61. package/dist/components/chat-virtual-list.d.ts.map +1 -0
  62. package/dist/components/chat-virtual-list.js +623 -0
  63. package/dist/components/chat-virtual-list.js.map +1 -0
  64. package/dist/components/checkbox.cjs +195 -0
  65. package/dist/components/checkbox.cjs.map +1 -0
  66. package/dist/components/checkbox.d.ts +2 -0
  67. package/dist/components/checkbox.d.ts.map +1 -0
  68. package/dist/components/checkbox.js +193 -0
  69. package/dist/components/checkbox.js.map +1 -0
  70. package/dist/components/checked.cjs +196 -0
  71. package/dist/components/checked.cjs.map +1 -0
  72. package/dist/components/checked.d.ts +2 -0
  73. package/dist/components/checked.d.ts.map +1 -0
  74. package/dist/components/checked.js +194 -0
  75. package/dist/components/checked.js.map +1 -0
  76. package/dist/components/color-picker.cjs +364 -0
  77. package/dist/components/color-picker.cjs.map +1 -0
  78. package/dist/components/color-picker.d.ts +2 -0
  79. package/dist/components/color-picker.d.ts.map +1 -0
  80. package/dist/components/color-picker.js +362 -0
  81. package/dist/components/color-picker.js.map +1 -0
  82. package/dist/components/comic-reader.cjs +166 -0
  83. package/dist/components/comic-reader.cjs.map +1 -0
  84. package/dist/components/comic-reader.d.ts +2 -0
  85. package/dist/components/comic-reader.d.ts.map +1 -0
  86. package/dist/components/comic-reader.js +164 -0
  87. package/dist/components/comic-reader.js.map +1 -0
  88. package/dist/components/config-provider.cjs +55 -0
  89. package/dist/components/config-provider.cjs.map +1 -0
  90. package/dist/components/config-provider.d.ts +2 -0
  91. package/dist/components/config-provider.d.ts.map +1 -0
  92. package/dist/components/config-provider.js +53 -0
  93. package/dist/components/config-provider.js.map +1 -0
  94. package/dist/components/config-table.cjs +697 -0
  95. package/dist/components/config-table.cjs.map +1 -0
  96. package/dist/components/config-table.d.ts +2 -0
  97. package/dist/components/config-table.d.ts.map +1 -0
  98. package/dist/components/config-table.js +695 -0
  99. package/dist/components/config-table.js.map +1 -0
  100. package/dist/components/countdown.cjs +122 -0
  101. package/dist/components/countdown.cjs.map +1 -0
  102. package/dist/components/countdown.d.ts +2 -0
  103. package/dist/components/countdown.d.ts.map +1 -0
  104. package/dist/components/countdown.js +120 -0
  105. package/dist/components/countdown.js.map +1 -0
  106. package/dist/components/danmaku.cjs +116 -0
  107. package/dist/components/danmaku.cjs.map +1 -0
  108. package/dist/components/danmaku.d.ts +2 -0
  109. package/dist/components/danmaku.d.ts.map +1 -0
  110. package/dist/components/danmaku.js +114 -0
  111. package/dist/components/danmaku.js.map +1 -0
  112. package/dist/components/date-picker.cjs +350 -0
  113. package/dist/components/date-picker.cjs.map +1 -0
  114. package/dist/components/date-picker.d.ts +2 -0
  115. package/dist/components/date-picker.d.ts.map +1 -0
  116. package/dist/components/date-picker.js +348 -0
  117. package/dist/components/date-picker.js.map +1 -0
  118. package/dist/components/date-range-picker.cjs +428 -0
  119. package/dist/components/date-range-picker.cjs.map +1 -0
  120. package/dist/components/date-range-picker.d.ts +2 -0
  121. package/dist/components/date-range-picker.d.ts.map +1 -0
  122. package/dist/components/date-range-picker.js +426 -0
  123. package/dist/components/date-range-picker.js.map +1 -0
  124. package/dist/components/design-effect.cjs +121 -0
  125. package/dist/components/design-effect.cjs.map +1 -0
  126. package/dist/components/design-effect.d.ts +2 -0
  127. package/dist/components/design-effect.d.ts.map +1 -0
  128. package/dist/components/design-effect.js +119 -0
  129. package/dist/components/design-effect.js.map +1 -0
  130. package/dist/components/drag-drop-board.cjs +399 -0
  131. package/dist/components/drag-drop-board.cjs.map +1 -0
  132. package/dist/components/drag-drop-board.d.ts +2 -0
  133. package/dist/components/drag-drop-board.d.ts.map +1 -0
  134. package/dist/components/drag-drop-board.js +397 -0
  135. package/dist/components/drag-drop-board.js.map +1 -0
  136. package/dist/components/draggable.cjs +193 -0
  137. package/dist/components/draggable.cjs.map +1 -0
  138. package/dist/components/draggable.d.ts +2 -0
  139. package/dist/components/draggable.d.ts.map +1 -0
  140. package/dist/components/draggable.js +191 -0
  141. package/dist/components/draggable.js.map +1 -0
  142. package/dist/components/ellipsis-text.cjs +176 -0
  143. package/dist/components/ellipsis-text.cjs.map +1 -0
  144. package/dist/components/ellipsis-text.d.ts +2 -0
  145. package/dist/components/ellipsis-text.d.ts.map +1 -0
  146. package/dist/components/ellipsis-text.js +174 -0
  147. package/dist/components/ellipsis-text.js.map +1 -0
  148. package/dist/components/empty.cjs +124 -0
  149. package/dist/components/empty.cjs.map +1 -0
  150. package/dist/components/empty.d.ts +2 -0
  151. package/dist/components/empty.d.ts.map +1 -0
  152. package/dist/components/empty.js +122 -0
  153. package/dist/components/empty.js.map +1 -0
  154. package/dist/components/field.cjs +265 -0
  155. package/dist/components/field.cjs.map +1 -0
  156. package/dist/components/field.d.ts +2 -0
  157. package/dist/components/field.d.ts.map +1 -0
  158. package/dist/components/field.js +263 -0
  159. package/dist/components/field.js.map +1 -0
  160. package/dist/components/file-preview.cjs +392 -0
  161. package/dist/components/file-preview.cjs.map +1 -0
  162. package/dist/components/file-preview.d.ts +3 -0
  163. package/dist/components/file-preview.d.ts.map +1 -0
  164. package/dist/components/file-preview.js +390 -0
  165. package/dist/components/file-preview.js.map +1 -0
  166. package/dist/components/floating-ball.cjs +203 -0
  167. package/dist/components/floating-ball.cjs.map +1 -0
  168. package/dist/components/floating-ball.d.ts +2 -0
  169. package/dist/components/floating-ball.d.ts.map +1 -0
  170. package/dist/components/floating-ball.js +201 -0
  171. package/dist/components/floating-ball.js.map +1 -0
  172. package/dist/components/form.cjs +146 -0
  173. package/dist/components/form.cjs.map +1 -0
  174. package/dist/components/form.d.ts +3 -0
  175. package/dist/components/form.d.ts.map +1 -0
  176. package/dist/components/form.js +141 -0
  177. package/dist/components/form.js.map +1 -0
  178. package/dist/components/gradient-text.cjs +103 -0
  179. package/dist/components/gradient-text.cjs.map +1 -0
  180. package/dist/components/gradient-text.d.ts +2 -0
  181. package/dist/components/gradient-text.d.ts.map +1 -0
  182. package/dist/components/gradient-text.js +101 -0
  183. package/dist/components/gradient-text.js.map +1 -0
  184. package/dist/components/input.cjs +264 -0
  185. package/dist/components/input.cjs.map +1 -0
  186. package/dist/components/input.d.ts +2 -0
  187. package/dist/components/input.d.ts.map +1 -0
  188. package/dist/components/input.js +262 -0
  189. package/dist/components/input.js.map +1 -0
  190. package/dist/components/lazy-image.cjs +203 -0
  191. package/dist/components/lazy-image.cjs.map +1 -0
  192. package/dist/components/lazy-image.d.ts +3 -0
  193. package/dist/components/lazy-image.d.ts.map +1 -0
  194. package/dist/components/lazy-image.js +201 -0
  195. package/dist/components/lazy-image.js.map +1 -0
  196. package/dist/components/live-room.cjs +644 -0
  197. package/dist/components/live-room.cjs.map +1 -0
  198. package/dist/components/live-room.d.ts +2 -0
  199. package/dist/components/live-room.d.ts.map +1 -0
  200. package/dist/components/live-room.js +642 -0
  201. package/dist/components/live-room.js.map +1 -0
  202. package/dist/components/loading.cjs +105 -0
  203. package/dist/components/loading.cjs.map +1 -0
  204. package/dist/components/loading.d.ts +2 -0
  205. package/dist/components/loading.d.ts.map +1 -0
  206. package/dist/components/loading.js +103 -0
  207. package/dist/components/loading.js.map +1 -0
  208. package/dist/components/marquee.cjs +267 -0
  209. package/dist/components/marquee.cjs.map +1 -0
  210. package/dist/components/marquee.d.ts +2 -0
  211. package/dist/components/marquee.d.ts.map +1 -0
  212. package/dist/components/marquee.js +265 -0
  213. package/dist/components/marquee.js.map +1 -0
  214. package/dist/components/masonry-virtual-list.cjs +241 -0
  215. package/dist/components/masonry-virtual-list.cjs.map +1 -0
  216. package/dist/components/masonry-virtual-list.d.ts +2 -0
  217. package/dist/components/masonry-virtual-list.d.ts.map +1 -0
  218. package/dist/components/masonry-virtual-list.js +239 -0
  219. package/dist/components/masonry-virtual-list.js.map +1 -0
  220. package/dist/components/modal.cjs +337 -0
  221. package/dist/components/modal.cjs.map +1 -0
  222. package/dist/components/modal.d.ts +2 -0
  223. package/dist/components/modal.d.ts.map +1 -0
  224. package/dist/components/modal.js +335 -0
  225. package/dist/components/modal.js.map +1 -0
  226. package/dist/components/multi-column-picker.cjs +284 -0
  227. package/dist/components/multi-column-picker.cjs.map +1 -0
  228. package/dist/components/multi-column-picker.d.ts +2 -0
  229. package/dist/components/multi-column-picker.d.ts.map +1 -0
  230. package/dist/components/multi-column-picker.js +282 -0
  231. package/dist/components/multi-column-picker.js.map +1 -0
  232. package/dist/components/novel-reader.cjs +401 -0
  233. package/dist/components/novel-reader.cjs.map +1 -0
  234. package/dist/components/novel-reader.d.ts +2 -0
  235. package/dist/components/novel-reader.d.ts.map +1 -0
  236. package/dist/components/novel-reader.js +399 -0
  237. package/dist/components/novel-reader.js.map +1 -0
  238. package/dist/components/number-input.cjs +399 -0
  239. package/dist/components/number-input.cjs.map +1 -0
  240. package/dist/components/number-input.d.ts +2 -0
  241. package/dist/components/number-input.d.ts.map +1 -0
  242. package/dist/components/number-input.js +397 -0
  243. package/dist/components/number-input.js.map +1 -0
  244. package/dist/components/pagination.cjs +144 -0
  245. package/dist/components/pagination.cjs.map +1 -0
  246. package/dist/components/pagination.d.ts +2 -0
  247. package/dist/components/pagination.d.ts.map +1 -0
  248. package/dist/components/pagination.js +142 -0
  249. package/dist/components/pagination.js.map +1 -0
  250. package/dist/components/password-input.cjs +344 -0
  251. package/dist/components/password-input.cjs.map +1 -0
  252. package/dist/components/password-input.d.ts +2 -0
  253. package/dist/components/password-input.d.ts.map +1 -0
  254. package/dist/components/password-input.js +342 -0
  255. package/dist/components/password-input.js.map +1 -0
  256. package/dist/components/popconfirm.cjs +198 -0
  257. package/dist/components/popconfirm.cjs.map +1 -0
  258. package/dist/components/popconfirm.d.ts +2 -0
  259. package/dist/components/popconfirm.d.ts.map +1 -0
  260. package/dist/components/popconfirm.js +196 -0
  261. package/dist/components/popconfirm.js.map +1 -0
  262. package/dist/components/popup.cjs +391 -0
  263. package/dist/components/popup.cjs.map +1 -0
  264. package/dist/components/popup.d.ts +2 -0
  265. package/dist/components/popup.d.ts.map +1 -0
  266. package/dist/components/popup.js +389 -0
  267. package/dist/components/popup.js.map +1 -0
  268. package/dist/components/progress-bar.cjs +276 -0
  269. package/dist/components/progress-bar.cjs.map +1 -0
  270. package/dist/components/progress-bar.d.ts +2 -0
  271. package/dist/components/progress-bar.d.ts.map +1 -0
  272. package/dist/components/progress-bar.js +274 -0
  273. package/dist/components/progress-bar.js.map +1 -0
  274. package/dist/components/qr-code.cjs +144 -0
  275. package/dist/components/qr-code.cjs.map +1 -0
  276. package/dist/components/qr-code.d.ts +2 -0
  277. package/dist/components/qr-code.d.ts.map +1 -0
  278. package/dist/components/qr-code.js +142 -0
  279. package/dist/components/qr-code.js.map +1 -0
  280. package/dist/components/radio-group.cjs +210 -0
  281. package/dist/components/radio-group.cjs.map +1 -0
  282. package/dist/components/radio-group.d.ts +3 -0
  283. package/dist/components/radio-group.d.ts.map +1 -0
  284. package/dist/components/radio-group.js +208 -0
  285. package/dist/components/radio-group.js.map +1 -0
  286. package/dist/components/rating.cjs +251 -0
  287. package/dist/components/rating.cjs.map +1 -0
  288. package/dist/components/rating.d.ts +2 -0
  289. package/dist/components/rating.d.ts.map +1 -0
  290. package/dist/components/rating.js +249 -0
  291. package/dist/components/rating.js.map +1 -0
  292. package/dist/components/rolling-number.cjs +99 -0
  293. package/dist/components/rolling-number.cjs.map +1 -0
  294. package/dist/components/rolling-number.d.ts +2 -0
  295. package/dist/components/rolling-number.d.ts.map +1 -0
  296. package/dist/components/rolling-number.js +97 -0
  297. package/dist/components/rolling-number.js.map +1 -0
  298. package/dist/components/select.cjs +475 -0
  299. package/dist/components/select.cjs.map +1 -0
  300. package/dist/components/select.d.ts +3 -0
  301. package/dist/components/select.d.ts.map +1 -0
  302. package/dist/components/select.js +473 -0
  303. package/dist/components/select.js.map +1 -0
  304. package/dist/components/signature.cjs +372 -0
  305. package/dist/components/signature.cjs.map +1 -0
  306. package/dist/components/signature.d.ts +2 -0
  307. package/dist/components/signature.d.ts.map +1 -0
  308. package/dist/components/signature.js +370 -0
  309. package/dist/components/signature.js.map +1 -0
  310. package/dist/components/skeleton.cjs +102 -0
  311. package/dist/components/skeleton.cjs.map +1 -0
  312. package/dist/components/skeleton.d.ts +2 -0
  313. package/dist/components/skeleton.d.ts.map +1 -0
  314. package/dist/components/skeleton.js +100 -0
  315. package/dist/components/skeleton.js.map +1 -0
  316. package/dist/components/slide-captcha.cjs +418 -0
  317. package/dist/components/slide-captcha.cjs.map +1 -0
  318. package/dist/components/slide-captcha.d.ts +2 -0
  319. package/dist/components/slide-captcha.d.ts.map +1 -0
  320. package/dist/components/slide-captcha.js +416 -0
  321. package/dist/components/slide-captcha.js.map +1 -0
  322. package/dist/components/swiper.cjs +441 -0
  323. package/dist/components/swiper.cjs.map +1 -0
  324. package/dist/components/swiper.d.ts +2 -0
  325. package/dist/components/swiper.d.ts.map +1 -0
  326. package/dist/components/swiper.js +439 -0
  327. package/dist/components/swiper.js.map +1 -0
  328. package/dist/components/switch.cjs +214 -0
  329. package/dist/components/switch.cjs.map +1 -0
  330. package/dist/components/switch.d.ts +2 -0
  331. package/dist/components/switch.d.ts.map +1 -0
  332. package/dist/components/switch.js +212 -0
  333. package/dist/components/switch.js.map +1 -0
  334. package/dist/components/table.cjs +695 -0
  335. package/dist/components/table.cjs.map +1 -0
  336. package/dist/components/table.d.ts +2 -0
  337. package/dist/components/table.d.ts.map +1 -0
  338. package/dist/components/table.js +693 -0
  339. package/dist/components/table.js.map +1 -0
  340. package/dist/components/tabs.cjs +330 -0
  341. package/dist/components/tabs.cjs.map +1 -0
  342. package/dist/components/tabs.d.ts +3 -0
  343. package/dist/components/tabs.d.ts.map +1 -0
  344. package/dist/components/tabs.js +328 -0
  345. package/dist/components/tabs.js.map +1 -0
  346. package/dist/components/tag.cjs +151 -0
  347. package/dist/components/tag.cjs.map +1 -0
  348. package/dist/components/tag.d.ts +2 -0
  349. package/dist/components/tag.d.ts.map +1 -0
  350. package/dist/components/tag.js +149 -0
  351. package/dist/components/tag.js.map +1 -0
  352. package/dist/components/textarea.cjs +266 -0
  353. package/dist/components/textarea.cjs.map +1 -0
  354. package/dist/components/textarea.d.ts +2 -0
  355. package/dist/components/textarea.d.ts.map +1 -0
  356. package/dist/components/textarea.js +264 -0
  357. package/dist/components/textarea.js.map +1 -0
  358. package/dist/components/tilt-card.cjs +221 -0
  359. package/dist/components/tilt-card.cjs.map +1 -0
  360. package/dist/components/tilt-card.d.ts +2 -0
  361. package/dist/components/tilt-card.d.ts.map +1 -0
  362. package/dist/components/tilt-card.js +219 -0
  363. package/dist/components/tilt-card.js.map +1 -0
  364. package/dist/components/timeline.cjs +87 -0
  365. package/dist/components/timeline.cjs.map +1 -0
  366. package/dist/components/timeline.d.ts +2 -0
  367. package/dist/components/timeline.d.ts.map +1 -0
  368. package/dist/components/timeline.js +85 -0
  369. package/dist/components/timeline.js.map +1 -0
  370. package/dist/components/toast.cjs +186 -0
  371. package/dist/components/toast.cjs.map +1 -0
  372. package/dist/components/toast.d.ts +2 -0
  373. package/dist/components/toast.d.ts.map +1 -0
  374. package/dist/components/toast.js +183 -0
  375. package/dist/components/toast.js.map +1 -0
  376. package/dist/components/tooltip.cjs +210 -0
  377. package/dist/components/tooltip.cjs.map +1 -0
  378. package/dist/components/tooltip.d.ts +2 -0
  379. package/dist/components/tooltip.d.ts.map +1 -0
  380. package/dist/components/tooltip.js +208 -0
  381. package/dist/components/tooltip.js.map +1 -0
  382. package/dist/components/typewriter-text.cjs +180 -0
  383. package/dist/components/typewriter-text.cjs.map +1 -0
  384. package/dist/components/typewriter-text.d.ts +2 -0
  385. package/dist/components/typewriter-text.d.ts.map +1 -0
  386. package/dist/components/typewriter-text.js +178 -0
  387. package/dist/components/typewriter-text.js.map +1 -0
  388. package/dist/components/upload.cjs +273 -0
  389. package/dist/components/upload.cjs.map +1 -0
  390. package/dist/components/upload.d.ts +2 -0
  391. package/dist/components/upload.d.ts.map +1 -0
  392. package/dist/components/upload.js +271 -0
  393. package/dist/components/upload.js.map +1 -0
  394. package/dist/components/verification-code.cjs +242 -0
  395. package/dist/components/verification-code.cjs.map +1 -0
  396. package/dist/components/verification-code.d.ts +2 -0
  397. package/dist/components/verification-code.d.ts.map +1 -0
  398. package/dist/components/verification-code.js +240 -0
  399. package/dist/components/verification-code.js.map +1 -0
  400. package/dist/components/video-detail-transition.cjs +637 -0
  401. package/dist/components/video-detail-transition.cjs.map +1 -0
  402. package/dist/components/video-detail-transition.d.ts +2 -0
  403. package/dist/components/video-detail-transition.d.ts.map +1 -0
  404. package/dist/components/video-detail-transition.js +635 -0
  405. package/dist/components/video-detail-transition.js.map +1 -0
  406. package/dist/components/video-player.cjs +384 -0
  407. package/dist/components/video-player.cjs.map +1 -0
  408. package/dist/components/video-player.d.ts +2 -0
  409. package/dist/components/video-player.d.ts.map +1 -0
  410. package/dist/components/video-player.js +382 -0
  411. package/dist/components/video-player.js.map +1 -0
  412. package/dist/components/virtual-list.cjs +503 -0
  413. package/dist/components/virtual-list.cjs.map +1 -0
  414. package/dist/components/virtual-list.d.ts +2 -0
  415. package/dist/components/virtual-list.d.ts.map +1 -0
  416. package/dist/components/virtual-list.js +501 -0
  417. package/dist/components/virtual-list.js.map +1 -0
  418. package/dist/components/virtual-select.cjs +538 -0
  419. package/dist/components/virtual-select.cjs.map +1 -0
  420. package/dist/components/virtual-select.d.ts +3 -0
  421. package/dist/components/virtual-select.d.ts.map +1 -0
  422. package/dist/components/virtual-select.js +536 -0
  423. package/dist/components/virtual-select.js.map +1 -0
  424. package/dist/components/virtual-table.cjs +696 -0
  425. package/dist/components/virtual-table.cjs.map +1 -0
  426. package/dist/components/virtual-table.d.ts +2 -0
  427. package/dist/components/virtual-table.d.ts.map +1 -0
  428. package/dist/components/virtual-table.js +694 -0
  429. package/dist/components/virtual-table.js.map +1 -0
  430. package/dist/import-transform-BiXH181o.js +144 -0
  431. package/dist/import-transform-BiXH181o.js.map +1 -0
  432. package/dist/import-transform-DLby8nRN.js +142 -0
  433. package/dist/import-transform-DLby8nRN.js.map +1 -0
  434. package/dist/import-transform.d.ts +6 -0
  435. package/dist/import-transform.d.ts.map +1 -0
  436. package/dist/index.cjs +11361 -0
  437. package/dist/index.cjs.map +1 -0
  438. package/dist/index.d.ts +6649 -0
  439. package/dist/index.d.ts.map +1 -0
  440. package/dist/index.js +11070 -0
  441. package/dist/index.js.map +1 -0
  442. package/dist/styles/base.css +455 -0
  443. package/dist/styles/components/affix.css +15 -0
  444. package/dist/styles/components/backtop.css +67 -0
  445. package/dist/styles/components/badge.css +33 -0
  446. package/dist/styles/components/barcode.css +33 -0
  447. package/dist/styles/components/breadcrumb.css +15 -0
  448. package/dist/styles/components/button.css +156 -0
  449. package/dist/styles/components/calendar.css +174 -0
  450. package/dist/styles/components/canvas-editor.css +327 -0
  451. package/dist/styles/components/canvas-image.css +40 -0
  452. package/dist/styles/components/chat-virtual-list.css +108 -0
  453. package/dist/styles/components/checkbox.css +318 -0
  454. package/dist/styles/components/checked.css +318 -0
  455. package/dist/styles/components/color-picker.css +377 -0
  456. package/dist/styles/components/comic-reader.css +135 -0
  457. package/dist/styles/components/config-provider.css +12 -0
  458. package/dist/styles/components/config-table.css +458 -0
  459. package/dist/styles/components/countdown.css +14 -0
  460. package/dist/styles/components/danmaku.css +56 -0
  461. package/dist/styles/components/date-picker.css +381 -0
  462. package/dist/styles/components/date-range-picker.css +454 -0
  463. package/dist/styles/components/design-effect.css +285 -0
  464. package/dist/styles/components/drag-drop-board.css +87 -0
  465. package/dist/styles/components/draggable.css +37 -0
  466. package/dist/styles/components/ellipsis-text.css +59 -0
  467. package/dist/styles/components/empty.css +168 -0
  468. package/dist/styles/components/field.css +221 -0
  469. package/dist/styles/components/file-preview.css +216 -0
  470. package/dist/styles/components/floating-ball.css +33 -0
  471. package/dist/styles/components/form.css +221 -0
  472. package/dist/styles/components/gradient-text.css +54 -0
  473. package/dist/styles/components/input.css +221 -0
  474. package/dist/styles/components/lazy-image.css +79 -0
  475. package/dist/styles/components/live-room.css +226 -0
  476. package/dist/styles/components/loading.css +98 -0
  477. package/dist/styles/components/marquee.css +281 -0
  478. package/dist/styles/components/masonry-virtual-list.css +29 -0
  479. package/dist/styles/components/modal.css +164 -0
  480. package/dist/styles/components/multi-column-picker.css +97 -0
  481. package/dist/styles/components/novel-reader.css +1163 -0
  482. package/dist/styles/components/number-input.css +221 -0
  483. package/dist/styles/components/pagination.css +43 -0
  484. package/dist/styles/components/password-input.css +289 -0
  485. package/dist/styles/components/popconfirm.css +156 -0
  486. package/dist/styles/components/popup.css +216 -0
  487. package/dist/styles/components/progress-bar.css +79 -0
  488. package/dist/styles/components/qr-code.css +62 -0
  489. package/dist/styles/components/radio-group.css +318 -0
  490. package/dist/styles/components/rating.css +260 -0
  491. package/dist/styles/components/rolling-number.css +37 -0
  492. package/dist/styles/components/select.css +342 -0
  493. package/dist/styles/components/signature.css +286 -0
  494. package/dist/styles/components/skeleton.css +70 -0
  495. package/dist/styles/components/slide-captcha.css +420 -0
  496. package/dist/styles/components/swiper.css +199 -0
  497. package/dist/styles/components/switch.css +294 -0
  498. package/dist/styles/components/table.css +458 -0
  499. package/dist/styles/components/tabs.css +156 -0
  500. package/dist/styles/components/tag.css +90 -0
  501. package/dist/styles/components/textarea.css +204 -0
  502. package/dist/styles/components/tilt-card.css +114 -0
  503. package/dist/styles/components/timeline.css +116 -0
  504. package/dist/styles/components/toast.css +204 -0
  505. package/dist/styles/components/tooltip.css +137 -0
  506. package/dist/styles/components/typewriter-text.css +95 -0
  507. package/dist/styles/components/upload.css +246 -0
  508. package/dist/styles/components/verification-code.css +240 -0
  509. package/dist/styles/components/video-detail-transition.css +169 -0
  510. package/dist/styles/components/video-player.css +93 -0
  511. package/dist/styles/components/virtual-list.css +206 -0
  512. package/dist/styles/components/virtual-select.css +472 -0
  513. package/dist/styles/components/virtual-table.css +458 -0
  514. package/dist/styles/components.css +8377 -0
  515. package/dist/styles/themes/amber.css +19 -0
  516. package/dist/styles/themes/emerald.css +19 -0
  517. package/dist/styles/themes/liquid-glass.css +55 -0
  518. package/dist/styles/themes/minimal.css +19 -0
  519. package/dist/styles/themes/rose.css +19 -0
  520. package/dist/styles/themes/sky.css +19 -0
  521. package/dist/styles/themes/violet.css +19 -0
  522. package/dist/styles.css +8377 -0
  523. package/dist/vite.cjs +27 -0
  524. package/dist/vite.cjs.map +1 -0
  525. package/dist/vite.d.ts +11 -0
  526. package/dist/vite.d.ts.map +1 -0
  527. package/dist/vite.js +22 -0
  528. package/dist/vite.js.map +1 -0
  529. package/dist/webpack-loader.cjs +18 -0
  530. package/dist/webpack-loader.cjs.map +1 -0
  531. package/dist/webpack-loader.d.ts +9 -0
  532. package/dist/webpack-loader.d.ts.map +1 -0
  533. package/dist/webpack-loader.js +14 -0
  534. package/dist/webpack-loader.js.map +1 -0
  535. package/dist/webpack.cjs +45 -0
  536. package/dist/webpack.cjs.map +1 -0
  537. package/dist/webpack.d.ts +21 -0
  538. package/dist/webpack.d.ts.map +1 -0
  539. package/dist/webpack.js +38 -0
  540. package/dist/webpack.js.map +1 -0
  541. package/package.json +104 -0
@@ -0,0 +1,623 @@
1
+ import { defineComponent, ref, watch, h, computed, onMounted, onBeforeUnmount } from 'vue';
2
+ import { ChatVirtualListController, VirtualListController, getClassComponentsLocale, configureClassComponents } from '@class-kit/core';
3
+
4
+ function resolveClassKitThemeName(theme) {
5
+ if (typeof theme === "string")
6
+ return theme;
7
+ return theme?.name ?? "minimal";
8
+ }
9
+ defineComponent({
10
+ name: "ClassConfigProvider",
11
+ props: {
12
+ class: {
13
+ type: String,
14
+ default: "",
15
+ },
16
+ locale: {
17
+ type: Object,
18
+ default: undefined,
19
+ },
20
+ style: {
21
+ type: [String, Object, Array],
22
+ default: undefined,
23
+ },
24
+ theme: {
25
+ type: [String, Object],
26
+ default: "minimal",
27
+ },
28
+ },
29
+ setup(props, { slots }) {
30
+ const version = ref(0);
31
+ const applyConfig = () => {
32
+ configureClassComponents({
33
+ locale: props.locale,
34
+ theme: props.theme,
35
+ });
36
+ version.value += 1;
37
+ };
38
+ watch(() => [props.locale, props.theme], applyConfig, {
39
+ deep: true,
40
+ immediate: true,
41
+ });
42
+ return () => h("div", {
43
+ class: ["cc-config-provider", props.class].filter(Boolean),
44
+ "data-cc-theme": resolveClassKitThemeName(props.theme),
45
+ style: props.style,
46
+ }, [
47
+ h("div", { key: version.value, class: "cc-config-provider__content" }, slots.default?.()),
48
+ ]);
49
+ },
50
+ });
51
+ const ClassChatVirtualList = /*#__PURE__*/ defineComponent({
52
+ name: "ClassChatVirtualList",
53
+ inheritAttrs: false,
54
+ props: {
55
+ data: {
56
+ type: Array,
57
+ required: true,
58
+ },
59
+ getKey: {
60
+ type: Function,
61
+ required: true,
62
+ },
63
+ estimateSize: {
64
+ type: [Number, Function],
65
+ default: 72,
66
+ },
67
+ height: {
68
+ type: [Number, String],
69
+ default: 420,
70
+ },
71
+ topBuffer: {
72
+ type: Number,
73
+ default: 10,
74
+ },
75
+ bottomBuffer: {
76
+ type: Number,
77
+ default: 8,
78
+ },
79
+ topThreshold: {
80
+ type: Number,
81
+ default: 96,
82
+ },
83
+ bottomThreshold: {
84
+ type: Number,
85
+ default: 64,
86
+ },
87
+ defaultStickToBottom: {
88
+ type: Boolean,
89
+ default: true,
90
+ },
91
+ enablePullUp: {
92
+ type: Boolean,
93
+ default: false,
94
+ },
95
+ stickToBottomOnAppend: {
96
+ type: Boolean,
97
+ default: true,
98
+ },
99
+ stickToBottomOnUpdate: {
100
+ type: Boolean,
101
+ default: true,
102
+ },
103
+ className: {
104
+ type: String,
105
+ default: "cc-chat-virtual-list",
106
+ },
107
+ viewportClass: {
108
+ type: String,
109
+ default: "cc-chat-virtual-list__viewport",
110
+ },
111
+ listClass: {
112
+ type: String,
113
+ default: "cc-chat-virtual-list__inner",
114
+ },
115
+ pullUpClass: {
116
+ type: String,
117
+ default: "cc-chat-virtual-list__pull-up",
118
+ },
119
+ topLoadingClass: {
120
+ type: String,
121
+ default: "cc-chat-virtual-list__top-loading",
122
+ },
123
+ topLoadingContent: {
124
+ type: String,
125
+ default: "正在加载历史消息...",
126
+ },
127
+ pullUpLoading: {
128
+ type: Boolean,
129
+ default: false,
130
+ },
131
+ pullUpMinDuration: {
132
+ type: Number,
133
+ default: 420,
134
+ },
135
+ pullUpThreshold: {
136
+ type: Number,
137
+ default: 48,
138
+ },
139
+ appendScrollBehavior: {
140
+ type: String,
141
+ default: "smooth",
142
+ },
143
+ itemClass: {
144
+ type: String,
145
+ default: "cc-chat-virtual-list__item",
146
+ },
147
+ onReachTop: Function,
148
+ },
149
+ emits: ["rangeChange", "reachTop", "pullUp"],
150
+ setup(props, { attrs, emit, expose, slots }) {
151
+ const viewportRef = ref(null);
152
+ const pullUpRef = ref(null);
153
+ const viewportHeight = ref(0);
154
+ const scrollOffset = ref(0);
155
+ const revision = ref(0);
156
+ const pullUpPending = ref(false);
157
+ const observers = new Map();
158
+ const previousKeys = ref([]);
159
+ const previousTotal = ref(0);
160
+ const previousScrollTop = ref(0);
161
+ const reachTopLocked = ref(false);
162
+ const didInitialStick = ref(false);
163
+ const topLoadingPending = ref(false);
164
+ const pendingPrependAnchor = ref(null);
165
+ let bottomFrame;
166
+ let bottomTimer;
167
+ let prependFrame;
168
+ let prependTimer;
169
+ let topLoadingFallbackTimer;
170
+ let topLoadingMutationPending = false;
171
+ let topLoadingPromisePending = false;
172
+ const chatController = new ChatVirtualListController({
173
+ bottomThreshold: props.bottomThreshold,
174
+ topThreshold: props.topThreshold,
175
+ });
176
+ const listController = new VirtualListController({
177
+ count: props.data.length,
178
+ estimateSize: props.estimateSize,
179
+ overscanAfter: props.bottomBuffer,
180
+ overscanBefore: props.topBuffer,
181
+ pullUpThreshold: props.pullUpThreshold,
182
+ });
183
+ const visibleRange = computed(() => {
184
+ revision.value;
185
+ return listController.getRange(scrollOffset.value, viewportHeight.value);
186
+ });
187
+ const forceUpdate = () => {
188
+ revision.value += 1;
189
+ };
190
+ const getKeys = () => props.data.map((item, index) => props.getKey(item, index));
191
+ const scrollToBottom = (behavior = "auto") => {
192
+ const viewport = viewportRef.value;
193
+ if (!viewport)
194
+ return false;
195
+ const getTarget = () => chatController.getBottomScrollTop(listController.getTotalSize(), viewport.clientHeight, viewport.scrollHeight);
196
+ const applyScroll = (nextBehavior) => {
197
+ const top = getTarget();
198
+ if (nextBehavior === "smooth") {
199
+ viewport.scrollTo({ behavior: nextBehavior, top });
200
+ }
201
+ else {
202
+ viewport.scrollTop = top;
203
+ }
204
+ scrollOffset.value = top;
205
+ previousScrollTop.value = top;
206
+ };
207
+ applyScroll(behavior);
208
+ if (bottomFrame !== undefined)
209
+ window.cancelAnimationFrame(bottomFrame);
210
+ if (bottomTimer !== undefined)
211
+ window.clearTimeout(bottomTimer);
212
+ bottomFrame = window.requestAnimationFrame(() => {
213
+ applyScroll(behavior === "smooth" ? "smooth" : "auto");
214
+ if (behavior === "smooth") {
215
+ bottomTimer = window.setTimeout(() => applyScroll("auto"), 280);
216
+ }
217
+ else {
218
+ bottomFrame = window.requestAnimationFrame(() => applyScroll("auto"));
219
+ }
220
+ });
221
+ return true;
222
+ };
223
+ const exposed = {
224
+ scrollToBottom,
225
+ };
226
+ expose(exposed);
227
+ const releaseTopLoadingLock = () => {
228
+ topLoadingMutationPending = false;
229
+ topLoadingPromisePending = false;
230
+ topLoadingPending.value = false;
231
+ if (topLoadingFallbackTimer !== undefined) {
232
+ window.clearTimeout(topLoadingFallbackTimer);
233
+ topLoadingFallbackTimer = undefined;
234
+ }
235
+ };
236
+ const maybeReleaseTopLoadingLock = () => {
237
+ if (topLoadingMutationPending ||
238
+ topLoadingPromisePending ||
239
+ pendingPrependAnchor.value)
240
+ return;
241
+ releaseTopLoadingLock();
242
+ };
243
+ const clearPendingPrependAnchor = () => {
244
+ pendingPrependAnchor.value = null;
245
+ if (prependTimer !== undefined) {
246
+ window.clearTimeout(prependTimer);
247
+ prependTimer = undefined;
248
+ }
249
+ maybeReleaseTopLoadingLock();
250
+ };
251
+ const scheduleTopLoadingFallback = () => {
252
+ if (topLoadingFallbackTimer !== undefined) {
253
+ window.clearTimeout(topLoadingFallbackTimer);
254
+ }
255
+ topLoadingFallbackTimer = window.setTimeout(() => {
256
+ topLoadingMutationPending = false;
257
+ maybeReleaseTopLoadingLock();
258
+ }, 1600);
259
+ };
260
+ const triggerReachTop = () => {
261
+ if (reachTopLocked.value)
262
+ return;
263
+ reachTopLocked.value = true;
264
+ if (!props.onReachTop) {
265
+ emit("reachTop");
266
+ return;
267
+ }
268
+ topLoadingPending.value = true;
269
+ topLoadingMutationPending = true;
270
+ let result;
271
+ try {
272
+ result = props.onReachTop();
273
+ }
274
+ catch (error) {
275
+ topLoadingMutationPending = false;
276
+ maybeReleaseTopLoadingLock();
277
+ throw error;
278
+ }
279
+ if (!result || typeof result.then !== "function") {
280
+ scheduleTopLoadingFallback();
281
+ window.requestAnimationFrame(maybeReleaseTopLoadingLock);
282
+ return;
283
+ }
284
+ topLoadingPromisePending = true;
285
+ void Promise.resolve(result)
286
+ .catch(() => undefined)
287
+ .then(() => {
288
+ topLoadingPromisePending = false;
289
+ scheduleTopLoadingFallback();
290
+ window.requestAnimationFrame(maybeReleaseTopLoadingLock);
291
+ });
292
+ };
293
+ watch(() => [
294
+ props.data.length,
295
+ props.estimateSize,
296
+ props.topBuffer,
297
+ props.bottomBuffer,
298
+ props.pullUpThreshold,
299
+ viewportHeight.value,
300
+ ], () => {
301
+ const viewport = viewportRef.value;
302
+ const keys = getKeys();
303
+ const oldTotal = previousTotal.value;
304
+ const oldScrollTop = viewport?.scrollTop ?? previousScrollTop.value;
305
+ const wasNearBottom = chatController.isNearBottom(oldScrollTop, viewport?.clientHeight ?? viewportHeight.value, oldTotal, viewport?.scrollHeight ?? oldTotal);
306
+ const prependCount = chatController.detectPrependCount(previousKeys.value, keys);
307
+ const previousAnchor = (() => {
308
+ if (!viewport || previousKeys.value.length === 0)
309
+ return null;
310
+ const previousRange = listController.getRange(oldScrollTop, viewport.clientHeight || viewportHeight.value);
311
+ const anchorItem = previousRange.items.find((item) => item.end > oldScrollTop) ??
312
+ previousRange.items[0];
313
+ if (!anchorItem)
314
+ return null;
315
+ const anchorKey = previousKeys.value[anchorItem.index];
316
+ return anchorKey === undefined
317
+ ? null
318
+ : {
319
+ key: anchorKey,
320
+ offset: anchorItem.start - oldScrollTop,
321
+ };
322
+ })();
323
+ const appendedCount = prependCount === 0
324
+ ? chatController.detectAppendCount(previousKeys.value, keys)
325
+ : 0;
326
+ const keysChanged = previousKeys.value.length !== keys.length ||
327
+ previousKeys.value.some((key, index) => !Object.is(key, keys[index]));
328
+ listController.updateOptions({
329
+ count: props.data.length,
330
+ estimateSize: props.estimateSize,
331
+ overscanAfter: props.bottomBuffer,
332
+ overscanBefore: props.topBuffer,
333
+ pullUpThreshold: props.pullUpThreshold,
334
+ });
335
+ if (prependCount > 0)
336
+ listController.shiftMeasurements(prependCount);
337
+ const nextTotal = listController.getTotalSize();
338
+ if (viewport) {
339
+ let bottomScrollScheduled = false;
340
+ if (!didInitialStick.value && props.defaultStickToBottom) {
341
+ scrollToBottom("auto");
342
+ bottomScrollScheduled = true;
343
+ didInitialStick.value = true;
344
+ }
345
+ else if (prependCount > 0) {
346
+ const anchorIndex = previousAnchor
347
+ ? keys.findIndex((key) => Object.is(key, previousAnchor.key))
348
+ : -1;
349
+ const nextScrollTop = anchorIndex >= 0
350
+ ? Math.max(0, listController.getItem(anchorIndex).start -
351
+ previousAnchor.offset)
352
+ : chatController.getPrependCompensatedScrollTop(oldScrollTop, oldTotal, nextTotal);
353
+ viewport.scrollTop = nextScrollTop;
354
+ scrollOffset.value = nextScrollTop;
355
+ previousScrollTop.value = nextScrollTop;
356
+ pendingPrependAnchor.value = previousAnchor
357
+ ? {
358
+ anchorKey: previousAnchor.key,
359
+ anchorOffset: previousAnchor.offset,
360
+ measuredKeys: new Set(),
361
+ prependKeys: new Set(keys.slice(0, prependCount)),
362
+ }
363
+ : null;
364
+ if (prependFrame !== undefined)
365
+ window.cancelAnimationFrame(prependFrame);
366
+ if (prependTimer !== undefined)
367
+ window.clearTimeout(prependTimer);
368
+ prependFrame = window.requestAnimationFrame(() => {
369
+ prependFrame = window.requestAnimationFrame(() => {
370
+ prependTimer = window.setTimeout(() => {
371
+ clearPendingPrependAnchor();
372
+ }, 1200);
373
+ });
374
+ });
375
+ }
376
+ else if (props.stickToBottomOnAppend &&
377
+ appendedCount > 0 &&
378
+ wasNearBottom) {
379
+ scrollToBottom(props.appendScrollBehavior);
380
+ bottomScrollScheduled = true;
381
+ }
382
+ else if (props.stickToBottomOnAppend && wasNearBottom) {
383
+ scrollToBottom("auto");
384
+ bottomScrollScheduled = true;
385
+ }
386
+ else if (props.stickToBottomOnUpdate && wasNearBottom) {
387
+ scrollToBottom("auto");
388
+ bottomScrollScheduled = true;
389
+ }
390
+ if (!bottomScrollScheduled)
391
+ scrollOffset.value = viewport.scrollTop;
392
+ }
393
+ previousKeys.value = keys;
394
+ previousTotal.value = nextTotal;
395
+ if (topLoadingMutationPending && keysChanged) {
396
+ topLoadingMutationPending = false;
397
+ maybeReleaseTopLoadingLock();
398
+ }
399
+ forceUpdate();
400
+ }, { immediate: true });
401
+ watch(() => [props.bottomThreshold, props.topThreshold], () => {
402
+ chatController.updateOptions({
403
+ bottomThreshold: props.bottomThreshold,
404
+ topThreshold: props.topThreshold,
405
+ });
406
+ });
407
+ watch(() => [visibleRange.value.startIndex, visibleRange.value.endIndex], ([startIndex, endIndex]) => {
408
+ emit("rangeChange", { endIndex, startIndex });
409
+ }, { immediate: true });
410
+ const updateViewportHeight = () => {
411
+ viewportHeight.value = viewportRef.value?.clientHeight ?? 0;
412
+ };
413
+ const triggerPullUp = () => {
414
+ if (!props.enablePullUp || props.pullUpLoading || pullUpPending.value)
415
+ return;
416
+ pullUpPending.value = true;
417
+ const started = Date.now();
418
+ const done = () => {
419
+ const rest = Math.max(0, props.pullUpMinDuration - (Date.now() - started));
420
+ window.setTimeout(() => {
421
+ pullUpPending.value = false;
422
+ }, rest);
423
+ };
424
+ emit("pullUp", done);
425
+ };
426
+ const preventWhileTopLoading = (event) => {
427
+ if (!topLoadingPending.value)
428
+ return;
429
+ event.preventDefault();
430
+ };
431
+ const preventScrollKeys = (event) => {
432
+ if (!topLoadingPending.value)
433
+ return;
434
+ if (event.key === "ArrowUp" ||
435
+ event.key === "ArrowDown" ||
436
+ event.key === "PageUp" ||
437
+ event.key === "PageDown" ||
438
+ event.key === "Home" ||
439
+ event.key === "End" ||
440
+ event.key === " ") {
441
+ event.preventDefault();
442
+ }
443
+ };
444
+ onMounted(() => {
445
+ updateViewportHeight();
446
+ const viewport = viewportRef.value;
447
+ viewport?.addEventListener("wheel", preventWhileTopLoading, {
448
+ passive: false,
449
+ });
450
+ viewport?.addEventListener("touchmove", preventWhileTopLoading, {
451
+ passive: false,
452
+ });
453
+ viewport?.addEventListener("keydown", preventScrollKeys);
454
+ if (typeof ResizeObserver === "undefined" || !viewportRef.value)
455
+ return;
456
+ const observer = new ResizeObserver(updateViewportHeight);
457
+ observer.observe(viewportRef.value);
458
+ observers.set("__viewport", observer);
459
+ if (typeof IntersectionObserver !== "undefined") {
460
+ const pullObserver = new IntersectionObserver(([entry]) => {
461
+ if (entry?.isIntersecting)
462
+ triggerPullUp();
463
+ }, {
464
+ root: viewportRef.value,
465
+ rootMargin: `0px 0px ${props.pullUpThreshold}px 0px`,
466
+ threshold: 0.01,
467
+ });
468
+ if (pullUpRef.value) {
469
+ pullObserver.observe(pullUpRef.value);
470
+ observers.set("__pull_up", pullObserver);
471
+ }
472
+ }
473
+ });
474
+ onBeforeUnmount(() => {
475
+ const viewport = viewportRef.value;
476
+ viewport?.removeEventListener("wheel", preventWhileTopLoading);
477
+ viewport?.removeEventListener("touchmove", preventWhileTopLoading);
478
+ viewport?.removeEventListener("keydown", preventScrollKeys);
479
+ if (bottomFrame !== undefined)
480
+ window.cancelAnimationFrame(bottomFrame);
481
+ if (bottomTimer !== undefined)
482
+ window.clearTimeout(bottomTimer);
483
+ if (prependFrame !== undefined)
484
+ window.cancelAnimationFrame(prependFrame);
485
+ if (prependTimer !== undefined)
486
+ window.clearTimeout(prependTimer);
487
+ if (topLoadingFallbackTimer !== undefined)
488
+ window.clearTimeout(topLoadingFallbackTimer);
489
+ observers.forEach((observer) => observer.disconnect());
490
+ observers.clear();
491
+ });
492
+ const observeItem = (index, key, element) => {
493
+ observers.get(key)?.disconnect();
494
+ observers.delete(key);
495
+ if (!(element instanceof HTMLElement))
496
+ return;
497
+ const measure = () => {
498
+ const viewport = viewportRef.value;
499
+ const oldTotal = listController.getTotalSize();
500
+ const oldItem = listController.getItem(index);
501
+ const oldScrollTop = viewport?.scrollTop ?? 0;
502
+ if (!listController.measure(index, element.offsetHeight))
503
+ return;
504
+ const nextTotal = listController.getTotalSize();
505
+ if (viewport) {
506
+ const nearBottom = chatController.isNearBottom(oldScrollTop, viewport.clientHeight, oldTotal, viewport.scrollHeight);
507
+ const pendingAnchor = pendingPrependAnchor.value;
508
+ if (pendingAnchor) {
509
+ if (pendingAnchor.prependKeys.has(key))
510
+ pendingAnchor.measuredKeys.add(key);
511
+ const keys = getKeys();
512
+ const anchorIndex = keys.findIndex((itemKey) => Object.is(itemKey, pendingAnchor.anchorKey));
513
+ if (anchorIndex >= 0) {
514
+ const anchorItem = listController.getItem(anchorIndex);
515
+ const nextItem = listController.getItem(index);
516
+ const delta = nextItem.size - oldItem.size;
517
+ viewport.scrollTop = Math.max(0, index < anchorIndex && delta !== 0
518
+ ? oldScrollTop + delta
519
+ : anchorItem.start - pendingAnchor.anchorOffset);
520
+ scrollOffset.value = viewport.scrollTop;
521
+ previousScrollTop.value = viewport.scrollTop;
522
+ }
523
+ if (pendingAnchor.measuredKeys.size >= pendingAnchor.prependKeys.size) {
524
+ clearPendingPrependAnchor();
525
+ }
526
+ }
527
+ else if (props.stickToBottomOnUpdate && nearBottom) {
528
+ scrollToBottom("auto");
529
+ }
530
+ else if (oldItem.start < oldScrollTop) {
531
+ const nextItem = listController.getItem(index);
532
+ const delta = nextItem.size - oldItem.size;
533
+ if (delta !== 0) {
534
+ viewport.scrollTop = Math.max(0, oldScrollTop + delta);
535
+ scrollOffset.value = viewport.scrollTop;
536
+ }
537
+ }
538
+ }
539
+ previousTotal.value = nextTotal;
540
+ forceUpdate();
541
+ };
542
+ measure();
543
+ if (typeof ResizeObserver === "undefined")
544
+ return;
545
+ const observer = new ResizeObserver(measure);
546
+ observer.observe(element);
547
+ observers.set(key, observer);
548
+ };
549
+ return () => {
550
+ const range = visibleRange.value;
551
+ const resolvedHeight = typeof props.height === "number" ? `${props.height}px` : props.height;
552
+ const keys = getKeys();
553
+ return h("div", {
554
+ ...attrs,
555
+ class: props.className,
556
+ "data-top-loading": topLoadingPending.value ? "true" : undefined,
557
+ style: { "--cc-chat-virtual-list-height": resolvedHeight },
558
+ }, [
559
+ h("div", {
560
+ "aria-hidden": topLoadingPending.value ? undefined : "true",
561
+ class: props.topLoadingClass,
562
+ "data-active": topLoadingPending.value ? "true" : "false",
563
+ role: topLoadingPending.value ? "status" : undefined,
564
+ }, slots.topLoading?.({ loading: topLoadingPending.value }) ??
565
+ props.topLoadingContent),
566
+ h("div", {
567
+ class: props.viewportClass,
568
+ "data-top-loading": topLoadingPending.value ? "true" : undefined,
569
+ ref: viewportRef,
570
+ onScroll: (event) => {
571
+ const nextScrollTop = event.currentTarget
572
+ .scrollTop;
573
+ const viewport = event.currentTarget;
574
+ previousScrollTop.value = nextScrollTop;
575
+ scrollOffset.value = nextScrollTop;
576
+ if (listController.shouldTriggerPullUp(nextScrollTop, viewport.clientHeight))
577
+ triggerPullUp();
578
+ if (chatController.isNearTop(nextScrollTop)) {
579
+ triggerReachTop();
580
+ }
581
+ else {
582
+ reachTopLocked.value = false;
583
+ }
584
+ },
585
+ }, [
586
+ h("div", {
587
+ class: props.listClass,
588
+ style: { height: `${range.totalSize}px` },
589
+ }, range.items.map((item) => {
590
+ const key = keys[item.index] ?? item.key;
591
+ return h("div", {
592
+ class: props.itemClass,
593
+ key,
594
+ ref: (element) => observeItem(item.index, key, element),
595
+ style: { transform: `translateY(${item.start}px)` },
596
+ }, slots.default?.({
597
+ data: props.data[item.index],
598
+ index: item.index,
599
+ item,
600
+ }));
601
+ })),
602
+ props.enablePullUp
603
+ ? h("div", {
604
+ class: props.pullUpClass,
605
+ "data-loading": props.pullUpLoading || pullUpPending.value,
606
+ ref: pullUpRef,
607
+ }, slots.pullUp?.({
608
+ loading: props.pullUpLoading || pullUpPending.value,
609
+ }) ??
610
+ (props.pullUpLoading || pullUpPending.value
611
+ ? getClassComponentsLocale()
612
+ .virtualListPullUpLoadingText
613
+ : getClassComponentsLocale()
614
+ .virtualListPullUpReadyText))
615
+ : null,
616
+ ]),
617
+ ]);
618
+ };
619
+ },
620
+ });
621
+
622
+ export { ClassChatVirtualList };
623
+ //# sourceMappingURL=chat-virtual-list.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chat-virtual-list.js","sources":["../../src/index.ts"],"names":[],"mappings":"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"}