@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,263 @@
1
+ import { defineComponent, ref, watch, h, inject, shallowRef, onMounted, onBeforeUnmount } from 'vue';
2
+ import { getClassComponentsLocale, configureClassComponents } from '@class-kit/core';
3
+
4
+ const formSymbol = /*#__PURE__*/ Symbol("ClassComponentsForm");
5
+ const formInteractivitySymbol = /*#__PURE__*/ Symbol("ClassComponentsFormInteractivity");
6
+ const classIconPaths = {
7
+ chevronDown: ["M6 9l6 6 6-6"],
8
+ chevronLeft: ["M15 18l-6-6 6-6"],
9
+ chevronRight: ["M9 18l6-6-6-6"],
10
+ chevronUp: ["M18 15l-6-6-6 6"],
11
+ check: ["M20 6 9 17l-5-5"],
12
+ settings: [
13
+ "M12 15.5A3.5 3.5 0 1 0 12 8a3.5 3.5 0 0 0 0 7.5Z",
14
+ "M19.4 15a1.8 1.8 0 0 0 .36 1.98l.04.04a2.18 2.18 0 0 1-3.08 3.08l-.04-.04a1.8 1.8 0 0 0-1.98-.36 1.8 1.8 0 0 0-1 1.62V21a2.2 2.2 0 0 1-4.4 0v-.06a1.8 1.8 0 0 0-1-1.62 1.8 1.8 0 0 0-1.98.36l-.04.04A2.18 2.18 0 0 1 3.2 16.64l.04-.04A1.8 1.8 0 0 0 3.6 14.6a1.8 1.8 0 0 0-1.62-1H2a2.2 2.2 0 0 1 0-4.4h.06a1.8 1.8 0 0 0 1.62-1 1.8 1.8 0 0 0-.36-1.98l-.04-.04A2.18 2.18 0 0 1 6.36 3.1l.04.04a1.8 1.8 0 0 0 1.98.36h.08A1.8 1.8 0 0 0 9.4 1.88V1.8a2.2 2.2 0 0 1 4.4 0v.06a1.8 1.8 0 0 0 1 1.62 1.8 1.8 0 0 0 1.98-.36l.04-.04A2.18 2.18 0 0 1 19.9 6.16l-.04.04a1.8 1.8 0 0 0-.36 1.98v.08a1.8 1.8 0 0 0 1.62.94h.08a2.2 2.2 0 0 1 0 4.4h-.06A1.8 1.8 0 0 0 19.4 15Z",
15
+ ],
16
+ star: [
17
+ "M12 2l3.09 6.26 6.91 1-5 4.87 1.18 6.87L12 17.77 5.82 21 7 14.13l-5-4.87 6.91-1L12 2Z",
18
+ ],
19
+ x: ["M18 6 6 18", "M6 6l12 12"],
20
+ };
21
+ function classIcon(name, className = "cc-icon") {
22
+ return h("svg", {
23
+ "aria-hidden": "true",
24
+ class: className,
25
+ fill: "none",
26
+ focusable: "false",
27
+ viewBox: "0 0 24 24",
28
+ }, classIconPaths[name].map((d) => h("path", {
29
+ d,
30
+ "stroke-linecap": "round",
31
+ "stroke-linejoin": "round",
32
+ "stroke-width": 2,
33
+ stroke: "currentColor",
34
+ })));
35
+ }
36
+ function resolveClassKitThemeName(theme) {
37
+ if (typeof theme === "string")
38
+ return theme;
39
+ return theme?.name ?? "minimal";
40
+ }
41
+ defineComponent({
42
+ name: "ClassConfigProvider",
43
+ props: {
44
+ class: {
45
+ type: String,
46
+ default: "",
47
+ },
48
+ locale: {
49
+ type: Object,
50
+ default: undefined,
51
+ },
52
+ style: {
53
+ type: [String, Object, Array],
54
+ default: undefined,
55
+ },
56
+ theme: {
57
+ type: [String, Object],
58
+ default: "minimal",
59
+ },
60
+ },
61
+ setup(props, { slots }) {
62
+ const version = ref(0);
63
+ const applyConfig = () => {
64
+ configureClassComponents({
65
+ locale: props.locale,
66
+ theme: props.theme,
67
+ });
68
+ version.value += 1;
69
+ };
70
+ watch(() => [props.locale, props.theme], applyConfig, {
71
+ deep: true,
72
+ immediate: true,
73
+ });
74
+ return () => h("div", {
75
+ class: ["cc-config-provider", props.class].filter(Boolean),
76
+ "data-cc-theme": resolveClassKitThemeName(props.theme),
77
+ style: props.style,
78
+ }, [
79
+ h("div", { key: version.value, class: "cc-config-provider__content" }, slots.default?.()),
80
+ ]);
81
+ },
82
+ });
83
+ function optionalBooleanProp() {
84
+ return { type: Boolean, default: undefined };
85
+ }
86
+ function useFormInteractivity() {
87
+ return inject(formInteractivitySymbol, {
88
+ disabled: ref(false),
89
+ readOnly: ref(false),
90
+ });
91
+ }
92
+ function resolveFieldInteractivity(form, disabled, readOnly) {
93
+ const resolvedDisabled = disabled ?? form.disabled.value;
94
+ return {
95
+ disabled: resolvedDisabled,
96
+ readOnly: !resolvedDisabled && (readOnly ?? form.readOnly.value),
97
+ };
98
+ }
99
+ function createEmptyFormState() {
100
+ return {
101
+ dirty: false,
102
+ errors: {},
103
+ fields: {},
104
+ submitCount: 0,
105
+ submitted: false,
106
+ submitting: false,
107
+ touched: false,
108
+ valid: true,
109
+ validating: false,
110
+ values: {},
111
+ };
112
+ }
113
+ function useOptionalField(name, options = {}) {
114
+ const form = inject(formSymbol, null);
115
+ const state = shallowRef(form?.getState() ?? createEmptyFormState());
116
+ const value = ref((name ? form?.getValue(name) : undefined) ?? options.initialValue ?? "");
117
+ let unsubscribeForm;
118
+ let unsubscribeField;
119
+ onMounted(() => {
120
+ if (!form || !name)
121
+ return;
122
+ unsubscribeForm = form.subscribe((nextState) => {
123
+ state.value = nextState;
124
+ });
125
+ unsubscribeField = form.registerField(name, options);
126
+ value.value = (form.getValue(name) ?? "");
127
+ });
128
+ onBeforeUnmount(() => {
129
+ unsubscribeField?.();
130
+ unsubscribeForm?.();
131
+ });
132
+ watch(() => (name ? state.value.fields[name]?.value : undefined), (nextValue) => {
133
+ if (!form || !name)
134
+ return;
135
+ value.value = (nextValue ?? "");
136
+ });
137
+ return {
138
+ value,
139
+ state,
140
+ setValue: async (nextValue) => {
141
+ if (form && name)
142
+ await form.setValue(name, nextValue);
143
+ else
144
+ value.value = nextValue;
145
+ },
146
+ blur: async () => {
147
+ if (form && name)
148
+ await form.blur(name);
149
+ },
150
+ };
151
+ }
152
+ function renderError(errors, errorId) {
153
+ return errors.length > 0
154
+ ? h("span", { class: "cc-field__error", id: errorId, role: "alert" }, errors[0])
155
+ : null;
156
+ }
157
+ const ClassInput = /*#__PURE__*/ defineComponent({
158
+ name: "ClassInput",
159
+ inheritAttrs: false,
160
+ props: {
161
+ name: String,
162
+ label: String,
163
+ type: {
164
+ type: String,
165
+ default: "text",
166
+ },
167
+ placeholder: String,
168
+ clearable: {
169
+ type: Boolean,
170
+ default: true,
171
+ },
172
+ clearIcon: {
173
+ type: null,
174
+ default: () => classIcon("x"),
175
+ },
176
+ clearLabel: {
177
+ type: String,
178
+ default: () => getClassComponentsLocale().inputClearLabel,
179
+ },
180
+ disabled: optionalBooleanProp(),
181
+ readOnly: optionalBooleanProp(),
182
+ readonly: optionalBooleanProp(),
183
+ fieldClass: {
184
+ type: String,
185
+ default: "cc-field",
186
+ },
187
+ labelClass: {
188
+ type: String,
189
+ default: "cc-field__label",
190
+ },
191
+ controlClass: {
192
+ type: String,
193
+ default: "cc-field__control",
194
+ },
195
+ rules: Array,
196
+ },
197
+ setup(props, { attrs }) {
198
+ const formInteractivity = useFormInteractivity();
199
+ const field = useOptionalField(props.name, {
200
+ rules: props.rules,
201
+ });
202
+ return () => {
203
+ const fieldState = props.name
204
+ ? field.state.value.fields[props.name]
205
+ : undefined;
206
+ const errors = fieldState?.errors ?? [];
207
+ const invalid = errors.length > 0;
208
+ const errorId = `${props.name}-error`;
209
+ const interactivity = resolveFieldInteractivity(formInteractivity, props.disabled, props.readOnly ?? props.readonly);
210
+ const canClear = props.clearable &&
211
+ field.value.value !== "" &&
212
+ !interactivity.disabled &&
213
+ !interactivity.readOnly;
214
+ return h("div", {
215
+ class: props.fieldClass,
216
+ "data-disabled": interactivity.disabled,
217
+ "data-readonly": interactivity.readOnly,
218
+ }, [
219
+ props.label
220
+ ? h("span", { class: props.labelClass, id: `${props.name}-label` }, props.label)
221
+ : null,
222
+ h("span", { class: "cc-field__control-wrap" }, [
223
+ h("input", {
224
+ ...attrs,
225
+ "aria-describedby": invalid ? errorId : undefined,
226
+ "aria-invalid": invalid,
227
+ class: [
228
+ props.controlClass,
229
+ canClear ? "cc-field__control--clearable" : "",
230
+ ],
231
+ "data-readonly": interactivity.readOnly,
232
+ disabled: interactivity.disabled,
233
+ name: props.name,
234
+ placeholder: props.placeholder,
235
+ readonly: interactivity.readOnly,
236
+ type: props.type,
237
+ value: field.value.value,
238
+ onBlur: () => void field.blur(),
239
+ onInput: (event) => {
240
+ if (interactivity.readOnly)
241
+ return;
242
+ const target = event.target;
243
+ void field.setValue(target.value);
244
+ },
245
+ }),
246
+ canClear
247
+ ? h("button", {
248
+ "aria-label": props.clearLabel,
249
+ class: "cc-field__clear",
250
+ type: "button",
251
+ onClick: () => void field.setValue(""),
252
+ }, props.clearIcon)
253
+ : null,
254
+ ]),
255
+ renderError(errors, errorId),
256
+ ]);
257
+ };
258
+ },
259
+ });
260
+ const ClassField = ClassInput;
261
+
262
+ export { ClassField };
263
+ //# sourceMappingURL=field.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"field.js","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,392 @@
1
+ 'use strict';
2
+
3
+ var vue = require('vue');
4
+ var core = require('@class-kit/core');
5
+
6
+ function resolveClassKitThemeName(theme) {
7
+ if (typeof theme === "string")
8
+ return theme;
9
+ return theme?.name ?? "minimal";
10
+ }
11
+ vue.defineComponent({
12
+ name: "ClassConfigProvider",
13
+ props: {
14
+ class: {
15
+ type: String,
16
+ default: "",
17
+ },
18
+ locale: {
19
+ type: Object,
20
+ default: undefined,
21
+ },
22
+ style: {
23
+ type: [String, Object, Array],
24
+ default: undefined,
25
+ },
26
+ theme: {
27
+ type: [String, Object],
28
+ default: "minimal",
29
+ },
30
+ },
31
+ setup(props, { slots }) {
32
+ const version = vue.ref(0);
33
+ const applyConfig = () => {
34
+ core.configureClassComponents({
35
+ locale: props.locale,
36
+ theme: props.theme,
37
+ });
38
+ version.value += 1;
39
+ };
40
+ vue.watch(() => [props.locale, props.theme], applyConfig, {
41
+ deep: true,
42
+ immediate: true,
43
+ });
44
+ return () => vue.h("div", {
45
+ class: ["cc-config-provider", props.class].filter(Boolean),
46
+ "data-cc-theme": resolveClassKitThemeName(props.theme),
47
+ style: props.style,
48
+ }, [
49
+ vue.h("div", { key: version.value, class: "cc-config-provider__content" }, slots.default?.()),
50
+ ]);
51
+ },
52
+ });
53
+ async function importOptionalLibrary(name) {
54
+ try {
55
+ return await new Function("name", "return import(name)")(name);
56
+ }
57
+ catch {
58
+ return null;
59
+ }
60
+ }
61
+ function getGlobalLibrary(name) {
62
+ const record = globalThis;
63
+ return record[name] ?? null;
64
+ }
65
+ async function renderExcelFileWithExternalLibrary(file) {
66
+ const xlsx = getGlobalLibrary("XLSX") ?? (await importOptionalLibrary("xlsx"));
67
+ if (!xlsx)
68
+ throw new Error("Excel local preview requires xlsx. Install it or load it from CDN.");
69
+ const workbook = xlsx.read(await file.arrayBuffer(), { type: "array" });
70
+ const sheetName = workbook.SheetNames?.[0];
71
+ const sheet = sheetName ? workbook.Sheets[sheetName] : undefined;
72
+ if (!sheet)
73
+ return '<div class="cc-file-preview__local-empty">Empty workbook</div>';
74
+ return xlsx.utils.sheet_to_html(sheet, { editable: false });
75
+ }
76
+ async function renderWordFileWithExternalLibrary(file) {
77
+ const mammoth = getGlobalLibrary("mammoth") ?? (await importOptionalLibrary("mammoth"));
78
+ if (!mammoth)
79
+ throw new Error("Word local preview requires mammoth. Install it or load it from CDN.");
80
+ const result = await mammoth.convertToHtml({
81
+ arrayBuffer: await file.arrayBuffer(),
82
+ });
83
+ return (result.value ||
84
+ '<div class="cc-file-preview__local-empty">Empty document</div>');
85
+ }
86
+ const ClassFilePreview = /*#__PURE__*/ vue.defineComponent({
87
+ name: "ClassFilePreview",
88
+ inheritAttrs: false,
89
+ props: {
90
+ src: { type: String, default: "" },
91
+ currentPage: Number,
92
+ file: Object,
93
+ fileName: String,
94
+ height: { type: [Number, String], default: 520 },
95
+ localUnsupportedText: String,
96
+ pageCount: Number,
97
+ renderLocalExcel: Function,
98
+ renderLocalPpt: Function,
99
+ renderLocalWord: Function,
100
+ title: String,
101
+ type: String,
102
+ viewerBaseUrl: String,
103
+ className: { type: String, default: "cc-file-preview" },
104
+ },
105
+ emits: ["pageChange", "update:currentPage"],
106
+ setup(props, { attrs, emit }) {
107
+ const innerPage = vue.ref(props.currentPage ?? 1);
108
+ const objectUrl = vue.ref("");
109
+ const localContent = vue.ref("");
110
+ const localError = vue.ref("");
111
+ const previewLoading = vue.ref(true);
112
+ let previewLoadingTimer;
113
+ const showPreviewLoading = () => {
114
+ previewLoading.value = true;
115
+ if (previewLoadingTimer)
116
+ clearTimeout(previewLoadingTimer);
117
+ previewLoadingTimer = setTimeout(() => {
118
+ previewLoading.value = false;
119
+ }, 900);
120
+ };
121
+ const hidePreviewLoading = (delay = 140) => {
122
+ if (previewLoadingTimer)
123
+ clearTimeout(previewLoadingTimer);
124
+ previewLoadingTimer = setTimeout(() => {
125
+ previewLoading.value = false;
126
+ }, delay);
127
+ };
128
+ vue.watch(() => props.file, (file, _oldFile, onCleanup) => {
129
+ if (objectUrl.value) {
130
+ URL.revokeObjectURL(objectUrl.value);
131
+ objectUrl.value = "";
132
+ }
133
+ if (!file)
134
+ return;
135
+ const nextUrl = URL.createObjectURL(file);
136
+ objectUrl.value = nextUrl;
137
+ onCleanup(() => URL.revokeObjectURL(nextUrl));
138
+ }, { immediate: true });
139
+ vue.watch(() => props.currentPage, (value) => {
140
+ if (typeof value === "number")
141
+ innerPage.value = value;
142
+ showPreviewLoading();
143
+ });
144
+ vue.watch(() => [
145
+ props.src,
146
+ props.fileName,
147
+ props.pageCount,
148
+ props.type,
149
+ props.viewerBaseUrl,
150
+ props.file,
151
+ ], showPreviewLoading);
152
+ vue.watch(() => [
153
+ props.file,
154
+ props.type,
155
+ props.fileName,
156
+ props.renderLocalExcel,
157
+ props.renderLocalPpt,
158
+ props.renderLocalWord,
159
+ ], async () => {
160
+ const file = props.file;
161
+ if (!file) {
162
+ localContent.value = "";
163
+ localError.value = "";
164
+ return;
165
+ }
166
+ const state = new core.FilePreviewController({
167
+ currentPage: props.currentPage ?? innerPage.value,
168
+ fileName: props.fileName ?? file.name,
169
+ pageCount: props.pageCount,
170
+ src: objectUrl.value || props.src || "",
171
+ type: props.type,
172
+ viewerBaseUrl: props.viewerBaseUrl,
173
+ }).getState();
174
+ if (state.type !== "excel" &&
175
+ state.type !== "ppt" &&
176
+ state.type !== "word") {
177
+ localContent.value = "";
178
+ localError.value = "";
179
+ return;
180
+ }
181
+ showPreviewLoading();
182
+ localContent.value = "";
183
+ localError.value = "";
184
+ try {
185
+ const renderer = state.type === "excel"
186
+ ? (props.renderLocalExcel ?? renderExcelFileWithExternalLibrary)
187
+ : state.type === "word"
188
+ ? (props.renderLocalWord ?? renderWordFileWithExternalLibrary)
189
+ : props.renderLocalPpt;
190
+ if (!renderer)
191
+ throw new Error("PPT/PPTX 本地预览需要传入 renderLocalPpt,或先转换成 PDF 文件后按 PDF 预览。");
192
+ localContent.value = await renderer(file, state);
193
+ hidePreviewLoading();
194
+ }
195
+ catch (error) {
196
+ localError.value =
197
+ error instanceof Error ? error.message : String(error);
198
+ previewLoading.value = false;
199
+ }
200
+ }, { immediate: true });
201
+ vue.onMounted(showPreviewLoading);
202
+ vue.onBeforeUnmount(() => {
203
+ if (previewLoadingTimer)
204
+ clearTimeout(previewLoadingTimer);
205
+ if (objectUrl.value)
206
+ URL.revokeObjectURL(objectUrl.value);
207
+ });
208
+ return () => {
209
+ const activePage = props.currentPage ?? innerPage.value;
210
+ const controller = new core.FilePreviewController({
211
+ currentPage: activePage,
212
+ fileName: props.fileName ?? props.file?.name,
213
+ pageCount: props.pageCount,
214
+ src: objectUrl.value || props.src || "",
215
+ type: props.type,
216
+ viewerBaseUrl: props.viewerBaseUrl,
217
+ });
218
+ const state = controller.getState();
219
+ const isLocalOfficeFile = Boolean(props.file &&
220
+ (state.type === "excel" ||
221
+ state.type === "ppt" ||
222
+ state.type === "word"));
223
+ const commitPage = (page) => {
224
+ showPreviewLoading();
225
+ const next = controller.goTo(page);
226
+ if (props.currentPage === undefined)
227
+ innerPage.value = next.currentPage;
228
+ emit("update:currentPage", next.currentPage);
229
+ emit("pageChange", next.currentPage);
230
+ };
231
+ const canPage = state.mode === "pdf" && Boolean(state.pageCount && state.pageCount > 1);
232
+ const canPrevious = canPage && state.currentPage > 1;
233
+ const canNext = canPage &&
234
+ state.pageCount !== undefined &&
235
+ state.currentPage < state.pageCount;
236
+ const inheritedStyle = attrs.style;
237
+ return vue.h("div", {
238
+ ...attrs,
239
+ class: props.className,
240
+ "data-mode": state.mode,
241
+ "data-type": state.type,
242
+ style: [
243
+ inheritedStyle,
244
+ {
245
+ "--cc-file-preview-height": typeof props.height === "number"
246
+ ? `${props.height}px`
247
+ : props.height,
248
+ },
249
+ ],
250
+ }, [
251
+ vue.h("div", { class: "cc-file-preview__toolbar" }, [
252
+ vue.h("div", { class: "cc-file-preview__meta" }, [
253
+ vue.h("span", { class: "cc-file-preview__badge" }, state.type.toUpperCase()),
254
+ vue.h("strong", null, props.title ?? state.title),
255
+ vue.h("small", null, state.mode === "office"
256
+ ? "Office viewer"
257
+ : state.mode === "pdf"
258
+ ? "PDF preview"
259
+ : "Unsupported file"),
260
+ ]),
261
+ vue.h("div", { class: "cc-file-preview__actions" }, [
262
+ canPage
263
+ ? vue.h("span", { class: "cc-file-preview__pager" }, [
264
+ vue.h("button", {
265
+ disabled: !canPrevious,
266
+ type: "button",
267
+ onClick: () => commitPage(state.currentPage - 1),
268
+ }, "上一页"),
269
+ vue.h("span", null, `${state.currentPage} / ${state.pageCount}`),
270
+ vue.h("button", {
271
+ disabled: !canNext,
272
+ type: "button",
273
+ onClick: () => commitPage(state.currentPage + 1),
274
+ }, "下一页"),
275
+ ])
276
+ : null,
277
+ state.src
278
+ ? vue.h("a", { href: state.src, rel: "noreferrer", target: "_blank" }, "打开源文件")
279
+ : null,
280
+ ]),
281
+ ]),
282
+ vue.h("div", {
283
+ class: "cc-file-preview__body",
284
+ "data-loading": state.mode !== "unsupported" && previewLoading.value,
285
+ }, [
286
+ state.mode === "unsupported" || !state.src
287
+ ? vue.h("div", { class: "cc-file-preview__empty" }, [
288
+ vue.h("strong", null, "暂不支持预览该文件"),
289
+ vue.h("span", null, "请检查文件类型,或通过“打开源文件”在新窗口查看。"),
290
+ ])
291
+ : isLocalOfficeFile
292
+ ? vue.h("div", { class: "cc-file-preview__local" }, [
293
+ localError.value
294
+ ? vue.h("div", { class: "cc-file-preview__empty" }, [
295
+ vue.h("strong", null, "本地预览依赖未就绪"),
296
+ vue.h("span", null, props.localUnsupportedText ?? localError.value),
297
+ ])
298
+ : vue.h("div", {
299
+ class: "cc-file-preview__local-html",
300
+ innerHTML: localContent.value,
301
+ }),
302
+ vue.h("div", {
303
+ "aria-hidden": "true",
304
+ class: "cc-file-preview__skeleton",
305
+ }, [
306
+ vue.h(ClassLoading, {
307
+ className: "cc-loading cc-file-preview__loading",
308
+ text: core.getClassComponentsLocale().loadingText,
309
+ }),
310
+ ]),
311
+ ])
312
+ : [
313
+ vue.h("iframe", {
314
+ class: "cc-file-preview__frame",
315
+ key: state.previewUrl,
316
+ src: state.previewUrl,
317
+ title: props.title ?? state.title,
318
+ onLoad: () => hidePreviewLoading(),
319
+ }),
320
+ vue.h("div", {
321
+ "aria-hidden": "true",
322
+ class: "cc-file-preview__skeleton",
323
+ }, [
324
+ vue.h(ClassLoading, {
325
+ className: "cc-loading cc-file-preview__loading",
326
+ text: core.getClassComponentsLocale().loadingText,
327
+ }),
328
+ ]),
329
+ ],
330
+ ]),
331
+ state.mode === "office"
332
+ ? vue.h("p", { class: "cc-file-preview__hint" }, props.file
333
+ ? "本地 Word/Excel 预览依赖用户项目安装或外链加载 mammoth/xlsx;PPT/PPTX 建议转换成 PDF 或传入自定义 renderLocalPpt。"
334
+ : "Word、Excel、PPT 预览依赖在线 viewer,文件地址需要可被 viewer 服务访问;组件不内置第三方解析库。")
335
+ : null,
336
+ ]);
337
+ };
338
+ },
339
+ });
340
+ function renderDefaultLoadingIndicator() {
341
+ return vue.h("svg", {
342
+ class: "cc-loading__bolt",
343
+ focusable: "false",
344
+ viewBox: "0 0 96 96",
345
+ }, [
346
+ vue.h("ellipse", {
347
+ class: "cc-loading__bolt-shadow",
348
+ cx: "51",
349
+ cy: "74",
350
+ rx: "28",
351
+ ry: "8",
352
+ }),
353
+ vue.h("path", {
354
+ class: "cc-loading__bolt-side",
355
+ d: "M54 8 26 48h20L34 82l39-46H51L65 8Z",
356
+ }),
357
+ vue.h("path", {
358
+ class: "cc-loading__bolt-face",
359
+ d: "M48 6 20 46h20L28 80l39-46H45L59 6Z",
360
+ }),
361
+ vue.h("path", {
362
+ class: "cc-loading__bolt-highlight",
363
+ d: "M48 14 31 39h17L39 62l18-24H43l10-24Z",
364
+ }),
365
+ ]);
366
+ }
367
+ const ClassLoading = /*#__PURE__*/ vue.defineComponent({
368
+ name: "ClassLoading",
369
+ props: {
370
+ className: String,
371
+ text: {
372
+ type: String,
373
+ default: () => core.getClassComponentsLocale().loadingText,
374
+ },
375
+ },
376
+ setup(props, { attrs, slots }) {
377
+ return () => vue.h("div", {
378
+ ...attrs,
379
+ "aria-live": "polite",
380
+ class: ["cc-loading", props.className],
381
+ role: "status",
382
+ }, [
383
+ vue.h("span", { "aria-hidden": "true", class: "cc-loading__indicator" }, slots.indicator?.() ?? renderDefaultLoadingIndicator()),
384
+ props.text
385
+ ? vue.h("span", { class: "cc-loading__text" }, props.text)
386
+ : null,
387
+ ]);
388
+ },
389
+ });
390
+
391
+ exports.ClassFilePreview = ClassFilePreview;
392
+ //# sourceMappingURL=file-preview.cjs.map