@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,186 @@
1
+ 'use strict';
2
+
3
+ var vue = require('vue');
4
+ var core = require('@class-kit/core');
5
+
6
+ const defaultToastManager = /*#__PURE__*/ new core.ToastManager();
7
+ function resolveClassKitThemeName(theme) {
8
+ if (typeof theme === "string")
9
+ return theme;
10
+ return theme?.name ?? "minimal";
11
+ }
12
+ vue.defineComponent({
13
+ name: "ClassConfigProvider",
14
+ props: {
15
+ class: {
16
+ type: String,
17
+ default: "",
18
+ },
19
+ locale: {
20
+ type: Object,
21
+ default: undefined,
22
+ },
23
+ style: {
24
+ type: [String, Object, Array],
25
+ default: undefined,
26
+ },
27
+ theme: {
28
+ type: [String, Object],
29
+ default: "minimal",
30
+ },
31
+ },
32
+ setup(props, { slots }) {
33
+ const version = vue.ref(0);
34
+ const applyConfig = () => {
35
+ core.configureClassComponents({
36
+ locale: props.locale,
37
+ theme: props.theme,
38
+ });
39
+ version.value += 1;
40
+ };
41
+ vue.watch(() => [props.locale, props.theme], applyConfig, {
42
+ deep: true,
43
+ immediate: true,
44
+ });
45
+ return () => vue.h("div", {
46
+ class: ["cc-config-provider", props.class].filter(Boolean),
47
+ "data-cc-theme": resolveClassKitThemeName(props.theme),
48
+ style: props.style,
49
+ }, [
50
+ vue.h("div", { key: version.value, class: "cc-config-provider__content" }, slots.default?.()),
51
+ ]);
52
+ },
53
+ });
54
+ function resolveAnimation(animation, fallbackName) {
55
+ if (animation === false) {
56
+ return {
57
+ duration: 0,
58
+ easing: "ease",
59
+ enabled: false,
60
+ name: "none",
61
+ };
62
+ }
63
+ return {
64
+ duration: animation?.duration ?? 180,
65
+ easing: animation?.easing ?? "cubic-bezier(0.22, 0.8, 0.28, 1)",
66
+ enabled: animation?.enabled ?? true,
67
+ name: animation?.name ?? fallbackName,
68
+ };
69
+ }
70
+ function animationStyle(animation) {
71
+ return {
72
+ "--cc-animation-duration": `${animation.enabled ? animation.duration : 0}ms`,
73
+ "--cc-animation-easing": animation.easing,
74
+ };
75
+ }
76
+ const ClassToastViewport = /*#__PURE__*/ vue.defineComponent({
77
+ name: "ClassToastViewport",
78
+ inheritAttrs: false,
79
+ props: {
80
+ animation: {
81
+ type: [Object, Boolean],
82
+ default: undefined,
83
+ },
84
+ manager: Object,
85
+ position: {
86
+ type: String,
87
+ default: "top-right",
88
+ },
89
+ className: {
90
+ type: String,
91
+ default: "cc-toast-viewport",
92
+ },
93
+ },
94
+ setup(props, { attrs, slots }) {
95
+ const manager = props.manager ?? defaultToastManager;
96
+ const items = vue.shallowRef(manager.getToasts());
97
+ const getVisibleItems = (source) => source.filter((item) => item.position === props.position);
98
+ const renderedItems = vue.shallowRef(getVisibleItems(items.value).map((item) => ({ item, state: "enter" })));
99
+ let timer;
100
+ let frame = 0;
101
+ const syncRenderedItems = (nextItems) => {
102
+ if (frame)
103
+ cancelAnimationFrame(frame);
104
+ const currentIds = new Set(renderedItems.value.map(({ item }) => item.id));
105
+ const incomingIds = new Set(nextItems.map((item) => item.id));
106
+ const enteringIds = nextItems
107
+ .filter((item) => !currentIds.has(item.id))
108
+ .map((item) => item.id);
109
+ const next = nextItems.map((item) => ({
110
+ item,
111
+ state: currentIds.has(item.id) ? "enter" : "exit",
112
+ }));
113
+ const exiting = renderedItems.value
114
+ .filter(({ item }) => !incomingIds.has(item.id))
115
+ .map(({ item }) => ({ item, state: "exit" }));
116
+ renderedItems.value = [...next, ...exiting];
117
+ if (enteringIds.length) {
118
+ frame = requestAnimationFrame(() => {
119
+ renderedItems.value = renderedItems.value.map((entry) => enteringIds.includes(entry.item.id)
120
+ ? { ...entry, state: "enter" }
121
+ : entry);
122
+ });
123
+ }
124
+ if (!exiting.length)
125
+ return;
126
+ const motion = resolveAnimation(props.animation, "slide");
127
+ if (timer)
128
+ clearTimeout(timer);
129
+ if (!motion.enabled || motion.duration <= 0) {
130
+ renderedItems.value = renderedItems.value.filter((entry) => entry.state !== "exit");
131
+ return;
132
+ }
133
+ timer = setTimeout(() => {
134
+ renderedItems.value = renderedItems.value.filter((entry) => entry.state !== "exit");
135
+ }, motion.duration);
136
+ };
137
+ const unsubscribe = manager.subscribe((nextItems) => {
138
+ items.value = nextItems;
139
+ syncRenderedItems(getVisibleItems(nextItems));
140
+ });
141
+ vue.watch(() => props.position, () => syncRenderedItems(getVisibleItems(items.value)));
142
+ vue.onBeforeUnmount(() => {
143
+ if (timer)
144
+ clearTimeout(timer);
145
+ if (frame)
146
+ cancelAnimationFrame(frame);
147
+ unsubscribe();
148
+ });
149
+ return () => {
150
+ const motion = resolveAnimation(props.animation, "slide");
151
+ return vue.h("div", {
152
+ ...attrs,
153
+ "aria-live": "polite",
154
+ class: [props.className, `cc-toast-viewport--${props.position}`],
155
+ role: "status",
156
+ style: animationStyle(motion),
157
+ }, renderedItems.value.map(({ item, state }) => slots.default
158
+ ? slots.default({
159
+ item,
160
+ dismiss: () => manager.dismiss(item.id),
161
+ state,
162
+ })
163
+ : vue.h("article", {
164
+ class: `cc-toast cc-toast--${item.tone}`,
165
+ "data-animation": motion.name,
166
+ "data-state": state,
167
+ key: item.id,
168
+ }, [
169
+ item.title
170
+ ? vue.h("strong", { class: "cc-toast__title" }, item.title)
171
+ : null,
172
+ vue.h("span", { class: "cc-toast__message" }, item.message),
173
+ vue.h("button", {
174
+ "aria-label": "Dismiss toast",
175
+ class: "cc-toast__close",
176
+ type: "button",
177
+ onClick: () => manager.dismiss(item.id),
178
+ }, "x"),
179
+ ])));
180
+ };
181
+ },
182
+ });
183
+
184
+ exports.ClassToastViewport = ClassToastViewport;
185
+ exports.defaultToastManager = defaultToastManager;
186
+ //# sourceMappingURL=toast.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toast.cjs","sources":["../../src/index.ts"],"names":["ToastManager","defineComponent","ref","configureClassComponents","watch","h","shallowRef","onBeforeUnmount"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { ClassToastViewport, defaultToastManager } from "../index";
2
+ //# sourceMappingURL=toast.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toast.d.ts","sourceRoot":"","sources":["../../src/components/toast.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC"}
@@ -0,0 +1,183 @@
1
+ import { defineComponent, ref, watch, h, shallowRef, onBeforeUnmount } from 'vue';
2
+ import { ToastManager, configureClassComponents } from '@class-kit/core';
3
+
4
+ const defaultToastManager = /*#__PURE__*/ new ToastManager();
5
+ function resolveClassKitThemeName(theme) {
6
+ if (typeof theme === "string")
7
+ return theme;
8
+ return theme?.name ?? "minimal";
9
+ }
10
+ defineComponent({
11
+ name: "ClassConfigProvider",
12
+ props: {
13
+ class: {
14
+ type: String,
15
+ default: "",
16
+ },
17
+ locale: {
18
+ type: Object,
19
+ default: undefined,
20
+ },
21
+ style: {
22
+ type: [String, Object, Array],
23
+ default: undefined,
24
+ },
25
+ theme: {
26
+ type: [String, Object],
27
+ default: "minimal",
28
+ },
29
+ },
30
+ setup(props, { slots }) {
31
+ const version = ref(0);
32
+ const applyConfig = () => {
33
+ configureClassComponents({
34
+ locale: props.locale,
35
+ theme: props.theme,
36
+ });
37
+ version.value += 1;
38
+ };
39
+ watch(() => [props.locale, props.theme], applyConfig, {
40
+ deep: true,
41
+ immediate: true,
42
+ });
43
+ return () => h("div", {
44
+ class: ["cc-config-provider", props.class].filter(Boolean),
45
+ "data-cc-theme": resolveClassKitThemeName(props.theme),
46
+ style: props.style,
47
+ }, [
48
+ h("div", { key: version.value, class: "cc-config-provider__content" }, slots.default?.()),
49
+ ]);
50
+ },
51
+ });
52
+ function resolveAnimation(animation, fallbackName) {
53
+ if (animation === false) {
54
+ return {
55
+ duration: 0,
56
+ easing: "ease",
57
+ enabled: false,
58
+ name: "none",
59
+ };
60
+ }
61
+ return {
62
+ duration: animation?.duration ?? 180,
63
+ easing: animation?.easing ?? "cubic-bezier(0.22, 0.8, 0.28, 1)",
64
+ enabled: animation?.enabled ?? true,
65
+ name: animation?.name ?? fallbackName,
66
+ };
67
+ }
68
+ function animationStyle(animation) {
69
+ return {
70
+ "--cc-animation-duration": `${animation.enabled ? animation.duration : 0}ms`,
71
+ "--cc-animation-easing": animation.easing,
72
+ };
73
+ }
74
+ const ClassToastViewport = /*#__PURE__*/ defineComponent({
75
+ name: "ClassToastViewport",
76
+ inheritAttrs: false,
77
+ props: {
78
+ animation: {
79
+ type: [Object, Boolean],
80
+ default: undefined,
81
+ },
82
+ manager: Object,
83
+ position: {
84
+ type: String,
85
+ default: "top-right",
86
+ },
87
+ className: {
88
+ type: String,
89
+ default: "cc-toast-viewport",
90
+ },
91
+ },
92
+ setup(props, { attrs, slots }) {
93
+ const manager = props.manager ?? defaultToastManager;
94
+ const items = shallowRef(manager.getToasts());
95
+ const getVisibleItems = (source) => source.filter((item) => item.position === props.position);
96
+ const renderedItems = shallowRef(getVisibleItems(items.value).map((item) => ({ item, state: "enter" })));
97
+ let timer;
98
+ let frame = 0;
99
+ const syncRenderedItems = (nextItems) => {
100
+ if (frame)
101
+ cancelAnimationFrame(frame);
102
+ const currentIds = new Set(renderedItems.value.map(({ item }) => item.id));
103
+ const incomingIds = new Set(nextItems.map((item) => item.id));
104
+ const enteringIds = nextItems
105
+ .filter((item) => !currentIds.has(item.id))
106
+ .map((item) => item.id);
107
+ const next = nextItems.map((item) => ({
108
+ item,
109
+ state: currentIds.has(item.id) ? "enter" : "exit",
110
+ }));
111
+ const exiting = renderedItems.value
112
+ .filter(({ item }) => !incomingIds.has(item.id))
113
+ .map(({ item }) => ({ item, state: "exit" }));
114
+ renderedItems.value = [...next, ...exiting];
115
+ if (enteringIds.length) {
116
+ frame = requestAnimationFrame(() => {
117
+ renderedItems.value = renderedItems.value.map((entry) => enteringIds.includes(entry.item.id)
118
+ ? { ...entry, state: "enter" }
119
+ : entry);
120
+ });
121
+ }
122
+ if (!exiting.length)
123
+ return;
124
+ const motion = resolveAnimation(props.animation, "slide");
125
+ if (timer)
126
+ clearTimeout(timer);
127
+ if (!motion.enabled || motion.duration <= 0) {
128
+ renderedItems.value = renderedItems.value.filter((entry) => entry.state !== "exit");
129
+ return;
130
+ }
131
+ timer = setTimeout(() => {
132
+ renderedItems.value = renderedItems.value.filter((entry) => entry.state !== "exit");
133
+ }, motion.duration);
134
+ };
135
+ const unsubscribe = manager.subscribe((nextItems) => {
136
+ items.value = nextItems;
137
+ syncRenderedItems(getVisibleItems(nextItems));
138
+ });
139
+ watch(() => props.position, () => syncRenderedItems(getVisibleItems(items.value)));
140
+ onBeforeUnmount(() => {
141
+ if (timer)
142
+ clearTimeout(timer);
143
+ if (frame)
144
+ cancelAnimationFrame(frame);
145
+ unsubscribe();
146
+ });
147
+ return () => {
148
+ const motion = resolveAnimation(props.animation, "slide");
149
+ return h("div", {
150
+ ...attrs,
151
+ "aria-live": "polite",
152
+ class: [props.className, `cc-toast-viewport--${props.position}`],
153
+ role: "status",
154
+ style: animationStyle(motion),
155
+ }, renderedItems.value.map(({ item, state }) => slots.default
156
+ ? slots.default({
157
+ item,
158
+ dismiss: () => manager.dismiss(item.id),
159
+ state,
160
+ })
161
+ : h("article", {
162
+ class: `cc-toast cc-toast--${item.tone}`,
163
+ "data-animation": motion.name,
164
+ "data-state": state,
165
+ key: item.id,
166
+ }, [
167
+ item.title
168
+ ? h("strong", { class: "cc-toast__title" }, item.title)
169
+ : null,
170
+ h("span", { class: "cc-toast__message" }, item.message),
171
+ h("button", {
172
+ "aria-label": "Dismiss toast",
173
+ class: "cc-toast__close",
174
+ type: "button",
175
+ onClick: () => manager.dismiss(item.id),
176
+ }, "x"),
177
+ ])));
178
+ };
179
+ },
180
+ });
181
+
182
+ export { ClassToastViewport, defaultToastManager };
183
+ //# sourceMappingURL=toast.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toast.js","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,210 @@
1
+ 'use strict';
2
+
3
+ var vue = require('vue');
4
+ var core = require('@class-kit/core');
5
+
6
+ let tooltipIdSeed = 0;
7
+ function resolveClassKitThemeName(theme) {
8
+ if (typeof theme === "string")
9
+ return theme;
10
+ return theme?.name ?? "minimal";
11
+ }
12
+ vue.defineComponent({
13
+ name: "ClassConfigProvider",
14
+ props: {
15
+ class: {
16
+ type: String,
17
+ default: "",
18
+ },
19
+ locale: {
20
+ type: Object,
21
+ default: undefined,
22
+ },
23
+ style: {
24
+ type: [String, Object, Array],
25
+ default: undefined,
26
+ },
27
+ theme: {
28
+ type: [String, Object],
29
+ default: "minimal",
30
+ },
31
+ },
32
+ setup(props, { slots }) {
33
+ const version = vue.ref(0);
34
+ const applyConfig = () => {
35
+ core.configureClassComponents({
36
+ locale: props.locale,
37
+ theme: props.theme,
38
+ });
39
+ version.value += 1;
40
+ };
41
+ vue.watch(() => [props.locale, props.theme], applyConfig, {
42
+ deep: true,
43
+ immediate: true,
44
+ });
45
+ return () => vue.h("div", {
46
+ class: ["cc-config-provider", props.class].filter(Boolean),
47
+ "data-cc-theme": resolveClassKitThemeName(props.theme),
48
+ style: props.style,
49
+ }, [
50
+ vue.h("div", { key: version.value, class: "cc-config-provider__content" }, slots.default?.()),
51
+ ]);
52
+ },
53
+ });
54
+ function resolveAnimation(animation, fallbackName) {
55
+ if (animation === false) {
56
+ return {
57
+ duration: 0,
58
+ easing: "ease",
59
+ enabled: false,
60
+ name: "none",
61
+ };
62
+ }
63
+ return {
64
+ duration: animation?.duration ?? 180,
65
+ easing: animation?.easing ?? "cubic-bezier(0.22, 0.8, 0.28, 1)",
66
+ enabled: animation?.enabled ?? true,
67
+ name: animation?.name ?? fallbackName,
68
+ };
69
+ }
70
+ function animationStyle(animation) {
71
+ return {
72
+ "--cc-animation-duration": `${animation.enabled ? animation.duration : 0}ms`,
73
+ "--cc-animation-easing": animation.easing,
74
+ };
75
+ }
76
+ const ClassTooltip = /*#__PURE__*/ vue.defineComponent({
77
+ name: "ClassTooltip",
78
+ inheritAttrs: false,
79
+ props: {
80
+ content: {
81
+ type: String,
82
+ required: true,
83
+ },
84
+ animation: {
85
+ type: [Object, Boolean],
86
+ default: undefined,
87
+ },
88
+ placement: {
89
+ type: String,
90
+ default: "top",
91
+ },
92
+ trigger: {
93
+ type: String,
94
+ default: "hover",
95
+ },
96
+ autoAdjust: {
97
+ type: Boolean,
98
+ default: true,
99
+ },
100
+ closeOnEsc: {
101
+ type: Boolean,
102
+ default: true,
103
+ },
104
+ closeOnOutsideClick: {
105
+ type: Boolean,
106
+ default: true,
107
+ },
108
+ className: String,
109
+ },
110
+ setup(props, { attrs, slots }) {
111
+ const rootRef = vue.ref(null);
112
+ const contentRef = vue.ref(null);
113
+ const contentId = `cc-tooltip-${++tooltipIdSeed}`;
114
+ const controller = new core.TooltipController();
115
+ const open = vue.ref(controller.isOpen());
116
+ const safePlacement = vue.ref(props.placement);
117
+ const updatePlacement = () => {
118
+ if (!props.autoAdjust || !rootRef.value || !contentRef.value) {
119
+ safePlacement.value = props.placement;
120
+ return;
121
+ }
122
+ safePlacement.value = core.getSafeTooltipPlacement(rootRef.value.getBoundingClientRect(), contentRef.value.getBoundingClientRect(), props.placement);
123
+ };
124
+ vue.watch(open, (nextOpen) => {
125
+ if (nextOpen)
126
+ requestAnimationFrame(updatePlacement);
127
+ });
128
+ vue.watch(open, (nextOpen, _previous, onCleanup) => {
129
+ if (!nextOpen ||
130
+ props.trigger !== "click" ||
131
+ typeof document === "undefined")
132
+ return;
133
+ const handlePointerDown = (event) => {
134
+ if (!props.closeOnOutsideClick ||
135
+ rootRef.value?.contains(event.target))
136
+ return;
137
+ controller.close();
138
+ };
139
+ const handleKeydown = (event) => {
140
+ if (!props.closeOnEsc || event.key !== "Escape")
141
+ return;
142
+ event.preventDefault();
143
+ controller.close();
144
+ };
145
+ document.addEventListener("pointerdown", handlePointerDown, true);
146
+ document.addEventListener("keydown", handleKeydown, true);
147
+ onCleanup(() => {
148
+ document.removeEventListener("pointerdown", handlePointerDown, true);
149
+ document.removeEventListener("keydown", handleKeydown, true);
150
+ });
151
+ });
152
+ const unsubscribe = controller.subscribe((state) => {
153
+ open.value = state.open;
154
+ });
155
+ vue.onBeforeUnmount(() => {
156
+ unsubscribe();
157
+ controller.destroy();
158
+ });
159
+ vue.watch(() => props.placement, () => updatePlacement());
160
+ return () => {
161
+ const motion = resolveAnimation(props.animation, "fade");
162
+ const openEvents = props.trigger === "click"
163
+ ? {
164
+ onClick: () => {
165
+ controller.toggle();
166
+ },
167
+ }
168
+ : {
169
+ onBlur: () => {
170
+ controller.close();
171
+ },
172
+ onFocus: () => {
173
+ controller.open();
174
+ },
175
+ onMouseenter: () => {
176
+ controller.open();
177
+ },
178
+ onMouseleave: () => {
179
+ controller.close();
180
+ },
181
+ };
182
+ return vue.h("span", {
183
+ ...attrs,
184
+ ...openEvents,
185
+ "aria-describedby": open.value ? contentId : undefined,
186
+ class: [
187
+ "cc-tooltip",
188
+ `cc-tooltip--${safePlacement.value}`,
189
+ props.className,
190
+ ],
191
+ "data-animation": motion.name,
192
+ "data-open": open.value,
193
+ ref: rootRef,
194
+ style: animationStyle(motion),
195
+ tabindex: props.trigger === "click" ? 0 : undefined,
196
+ }, [
197
+ slots.default?.(),
198
+ vue.h("span", {
199
+ class: "cc-tooltip__content",
200
+ id: contentId,
201
+ ref: contentRef,
202
+ role: "tooltip",
203
+ }, props.content),
204
+ ]);
205
+ };
206
+ },
207
+ });
208
+
209
+ exports.ClassTooltip = ClassTooltip;
210
+ //# sourceMappingURL=tooltip.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tooltip.cjs","sources":["../../src/index.ts"],"names":["defineComponent","ref","configureClassComponents","watch","h","TooltipController","getSafeTooltipPlacement","onBeforeUnmount"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { ClassTooltip } from "../index";
2
+ //# sourceMappingURL=tooltip.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tooltip.d.ts","sourceRoot":"","sources":["../../src/components/tooltip.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC"}