dpzvc3-ui 3.0.6 → 3.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 (478) hide show
  1. package/dist/dpzvc3.esm.js +7641 -10423
  2. package/dist/dpzvc3.esm.js.map +1 -1
  3. package/dist/dpzvc3.esm.min.js +1 -1
  4. package/dist/dpzvc3.esm.min.js.map +1 -1
  5. package/dist/dpzvc3.js +6646 -8258
  6. package/dist/dpzvc3.js.map +1 -1
  7. package/dist/dpzvc3.min.js +1 -1
  8. package/dist/dpzvc3.min.js.map +1 -1
  9. package/dist/styles/components/radioBox.css +1 -1
  10. package/dist/styles/components/rater.css +1 -0
  11. package/dist/styles/dpzvc3.css +1 -1
  12. package/dist/types/components/Indicator/types.d.ts +16 -0
  13. package/dist/types/components/Indicator/types.d.ts.map +1 -0
  14. package/dist/types/components/Prompt/types.d.ts +37 -0
  15. package/dist/types/components/Prompt/types.d.ts.map +1 -0
  16. package/dist/types/components/Text/index.d.ts +12 -0
  17. package/dist/types/components/Text/index.d.ts.map +1 -0
  18. package/dist/types/components/Text/textBar.d.ts +84 -0
  19. package/dist/types/components/Text/textBar.d.ts.map +1 -0
  20. package/dist/types/components/Text/types.d.ts +13 -0
  21. package/dist/types/components/Text/types.d.ts.map +1 -0
  22. package/dist/types/components/actionSheet/actionSheet.d.ts +42 -0
  23. package/dist/types/components/actionSheet/actionSheet.d.ts.map +1 -0
  24. package/dist/types/components/actionSheet/index.d.ts +7 -0
  25. package/dist/types/components/actionSheet/index.d.ts.map +1 -0
  26. package/dist/types/components/actionSheet/types.d.ts +11 -0
  27. package/dist/types/components/actionSheet/types.d.ts.map +1 -0
  28. package/dist/types/components/badge/badge.d.ts +51 -0
  29. package/dist/types/components/badge/badge.d.ts.map +1 -0
  30. package/dist/types/components/badge/index.d.ts +12 -0
  31. package/dist/types/components/badge/index.d.ts.map +1 -0
  32. package/dist/types/components/badge/types.d.ts +8 -0
  33. package/dist/types/components/badge/types.d.ts.map +1 -0
  34. package/dist/types/components/button/button.d.ts +103 -0
  35. package/dist/types/components/button/button.d.ts.map +1 -0
  36. package/dist/types/components/button/index.d.ts +12 -0
  37. package/dist/types/components/button/index.d.ts.map +1 -0
  38. package/dist/types/components/button/types.d.ts +13 -0
  39. package/dist/types/components/button/types.d.ts.map +1 -0
  40. package/dist/types/components/card/card.d.ts +18 -0
  41. package/dist/types/components/card/card.d.ts.map +1 -0
  42. package/dist/types/components/card/index.d.ts +12 -0
  43. package/dist/types/components/card/index.d.ts.map +1 -0
  44. package/dist/types/components/card/types.d.ts +4 -0
  45. package/dist/types/components/card/types.d.ts.map +1 -0
  46. package/dist/types/components/cell/cell.d.ts +24 -0
  47. package/dist/types/components/cell/cell.d.ts.map +1 -0
  48. package/dist/types/components/cell/index.d.ts +12 -0
  49. package/dist/types/components/cell/index.d.ts.map +1 -0
  50. package/dist/types/components/cell/types.d.ts +8 -0
  51. package/dist/types/components/cell/types.d.ts.map +1 -0
  52. package/dist/types/components/cellSwipe/cellSwipe.d.ts +37 -0
  53. package/dist/types/components/cellSwipe/cellSwipe.d.ts.map +1 -0
  54. package/dist/types/components/cellSwipe/index.d.ts +12 -0
  55. package/dist/types/components/cellSwipe/index.d.ts.map +1 -0
  56. package/dist/types/components/cellSwipe/types.d.ts +15 -0
  57. package/dist/types/components/cellSwipe/types.d.ts.map +1 -0
  58. package/dist/types/components/checkBox/checkbox-group.d.ts +38 -0
  59. package/dist/types/components/checkBox/checkbox-group.d.ts.map +1 -0
  60. package/dist/types/components/checkBox/checkbox.d.ts +36 -0
  61. package/dist/types/components/checkBox/checkbox.d.ts.map +1 -0
  62. package/dist/types/components/checkBox/index.d.ts +14 -0
  63. package/dist/types/components/checkBox/index.d.ts.map +1 -0
  64. package/dist/types/components/checkBox/types.d.ts +22 -0
  65. package/dist/types/components/checkBox/types.d.ts.map +1 -0
  66. package/dist/types/components/header/header.d.ts +47 -0
  67. package/dist/types/components/header/header.d.ts.map +1 -0
  68. package/dist/types/components/header/index.d.ts +12 -0
  69. package/dist/types/components/header/index.d.ts.map +1 -0
  70. package/dist/types/components/header/types.d.ts +7 -0
  71. package/dist/types/components/header/types.d.ts.map +1 -0
  72. package/dist/types/components/loadMore/index.d.ts +12 -0
  73. package/dist/types/components/loadMore/index.d.ts.map +1 -0
  74. package/dist/types/components/loadMore/loadMore.d.ts +150 -0
  75. package/dist/types/components/loadMore/loadMore.d.ts.map +1 -0
  76. package/dist/types/components/loadMore/types.d.ts +23 -0
  77. package/dist/types/components/loadMore/types.d.ts.map +1 -0
  78. package/dist/types/components/message/types.d.ts +32 -0
  79. package/dist/types/components/message/types.d.ts.map +1 -0
  80. package/dist/types/components/modal/types.d.ts +33 -0
  81. package/dist/types/components/modal/types.d.ts.map +1 -0
  82. package/dist/types/components/number/Number.d.ts +77 -0
  83. package/dist/types/components/number/Number.d.ts.map +1 -0
  84. package/dist/types/components/number/index.d.ts +9 -0
  85. package/dist/types/components/number/index.d.ts.map +1 -0
  86. package/dist/types/components/number/types.d.ts +12 -0
  87. package/dist/types/components/number/types.d.ts.map +1 -0
  88. package/dist/types/components/picker/index.d.ts +12 -0
  89. package/dist/types/components/picker/index.d.ts.map +1 -0
  90. package/dist/types/components/picker/picker.d.ts +237 -0
  91. package/dist/types/components/picker/picker.d.ts.map +1 -0
  92. package/dist/types/components/picker/types.d.ts +17 -0
  93. package/dist/types/components/picker/types.d.ts.map +1 -0
  94. package/dist/types/components/popup/index.d.ts +12 -0
  95. package/dist/types/components/popup/index.d.ts.map +1 -0
  96. package/dist/types/components/popup/popup.d.ts +71 -0
  97. package/dist/types/components/popup/popup.d.ts.map +1 -0
  98. package/dist/types/components/popup/types.d.ts +10 -0
  99. package/dist/types/components/popup/types.d.ts.map +1 -0
  100. package/dist/types/components/progress/index.d.ts +12 -0
  101. package/dist/types/components/progress/index.d.ts.map +1 -0
  102. package/dist/types/components/progress/progress.d.ts +36 -0
  103. package/dist/types/components/progress/progress.d.ts.map +1 -0
  104. package/dist/types/components/progress/types.d.ts +9 -0
  105. package/dist/types/components/progress/types.d.ts.map +1 -0
  106. package/dist/types/components/radioBox/index.d.ts +14 -0
  107. package/dist/types/components/radioBox/index.d.ts.map +1 -0
  108. package/dist/types/components/radioBox/radiobox-group.d.ts +31 -0
  109. package/dist/types/components/radioBox/radiobox-group.d.ts.map +1 -0
  110. package/dist/types/components/radioBox/radiobox.d.ts +38 -0
  111. package/dist/types/components/radioBox/radiobox.d.ts.map +1 -0
  112. package/dist/types/components/radioBox/types.d.ts +18 -0
  113. package/dist/types/components/radioBox/types.d.ts.map +1 -0
  114. package/dist/types/components/rater/index.d.ts +12 -0
  115. package/dist/types/components/rater/index.d.ts.map +1 -0
  116. package/dist/types/components/rater/raters.d.ts +83 -0
  117. package/dist/types/components/rater/raters.d.ts.map +1 -0
  118. package/dist/types/components/rater/types.d.ts +11 -0
  119. package/dist/types/components/rater/types.d.ts.map +1 -0
  120. package/dist/types/components/slideBar/index.d.ts +12 -0
  121. package/dist/types/components/slideBar/index.d.ts.map +1 -0
  122. package/dist/types/components/slideBar/slideBar.d.ts +46 -0
  123. package/dist/types/components/slideBar/slideBar.d.ts.map +1 -0
  124. package/dist/types/components/slideBar/types.d.ts +19 -0
  125. package/dist/types/components/slideBar/types.d.ts.map +1 -0
  126. package/dist/types/components/spinner/index.d.ts +12 -0
  127. package/dist/types/components/spinner/index.d.ts.map +1 -0
  128. package/dist/types/components/spinner/spinner.d.ts +36 -0
  129. package/dist/types/components/spinner/spinner.d.ts.map +1 -0
  130. package/dist/types/components/spinner/types.d.ts +7 -0
  131. package/dist/types/components/spinner/types.d.ts.map +1 -0
  132. package/dist/types/components/swipe/index.d.ts +12 -0
  133. package/dist/types/components/swipe/index.d.ts.map +1 -0
  134. package/dist/types/components/swipe/swipe.d.ts +99 -0
  135. package/dist/types/components/swipe/swipe.d.ts.map +1 -0
  136. package/dist/types/components/swipe/types.d.ts +20 -0
  137. package/dist/types/components/swipe/types.d.ts.map +1 -0
  138. package/dist/types/components/switchbar/index.d.ts +12 -0
  139. package/dist/types/components/switchbar/index.d.ts.map +1 -0
  140. package/dist/types/components/switchbar/switchbar.d.ts +38 -0
  141. package/dist/types/components/switchbar/switchbar.d.ts.map +1 -0
  142. package/dist/types/components/switchbar/types.d.ts +6 -0
  143. package/dist/types/components/switchbar/types.d.ts.map +1 -0
  144. package/dist/types/components/tab/index.d.ts +12 -0
  145. package/dist/types/components/tab/index.d.ts.map +1 -0
  146. package/dist/types/components/tab/tab.d.ts +54 -0
  147. package/dist/types/components/tab/tab.d.ts.map +1 -0
  148. package/dist/types/components/tab/types.d.ts +14 -0
  149. package/dist/types/components/tab/types.d.ts.map +1 -0
  150. package/dist/types/components/toTop/index.d.ts +12 -0
  151. package/dist/types/components/toTop/index.d.ts.map +1 -0
  152. package/dist/types/components/toTop/toTop.d.ts +18 -0
  153. package/dist/types/components/toTop/toTop.d.ts.map +1 -0
  154. package/dist/types/components/toTop/types.d.ts +7 -0
  155. package/dist/types/components/toTop/types.d.ts.map +1 -0
  156. package/dist/types/components/upload/index.d.ts +12 -0
  157. package/dist/types/components/upload/index.d.ts.map +1 -0
  158. package/dist/types/components/upload/types.d.ts +9 -0
  159. package/dist/types/components/upload/types.d.ts.map +1 -0
  160. package/dist/types/components/upload/upload.d.ts +19 -0
  161. package/dist/types/components/upload/upload.d.ts.map +1 -0
  162. package/dist/types/index.d.ts +157 -0
  163. package/dist/types/lib/MegaPixImage.d.ts +9 -0
  164. package/dist/types/lib/MegaPixImage.d.ts.map +1 -0
  165. package/dist/types/lib/lib.d.ts +3 -0
  166. package/dist/types/lib/lib.d.ts.map +1 -0
  167. package/dist/types/utils/util.d.ts +31 -0
  168. package/dist/types/utils/util.d.ts.map +1 -0
  169. package/dist-prod/91.05c8ec5277a15f939b0f.js +3 -0
  170. package/dist-prod/{91.e2fdec39667928bf57b9.js.map → 91.05c8ec5277a15f939b0f.js.map} +1 -1
  171. package/dist-prod/actionsheet.0d67b6b08a62cf9360be.chunk.js +2 -0
  172. package/dist-prod/actionsheet.0d67b6b08a62cf9360be.chunk.js.map +1 -0
  173. package/dist-prod/badge.16ab5c05734fe1530701.chunk.js +2 -0
  174. package/dist-prod/badge.16ab5c05734fe1530701.chunk.js.map +1 -0
  175. package/dist-prod/button.39ac33aa7aaccc24b6a1.chunk.js +2 -0
  176. package/dist-prod/button.39ac33aa7aaccc24b6a1.chunk.js.map +1 -0
  177. package/dist-prod/card.16ed7eafe471bcc60ec6.chunk.js +2 -0
  178. package/dist-prod/card.16ed7eafe471bcc60ec6.chunk.js.map +1 -0
  179. package/dist-prod/cell.70ff74fba57e27df7f5a.chunk.js +2 -0
  180. package/dist-prod/cell.70ff74fba57e27df7f5a.chunk.js.map +1 -0
  181. package/dist-prod/cellswipe.f3ec62abd60729d8bc5a.chunk.js +2 -0
  182. package/dist-prod/cellswipe.f3ec62abd60729d8bc5a.chunk.js.map +1 -0
  183. package/dist-prod/checkbox.05c63a947ac98293c9f2.chunk.js +2 -0
  184. package/dist-prod/checkbox.05c63a947ac98293c9f2.chunk.js.map +1 -0
  185. package/dist-prod/guide.24f1968a568f20fbc84b.chunk.js +2 -0
  186. package/dist-prod/guide.24f1968a568f20fbc84b.chunk.js.map +1 -0
  187. package/dist-prod/header.eb10433dd892738ee95a.chunk.js +2 -0
  188. package/dist-prod/header.eb10433dd892738ee95a.chunk.js.map +1 -0
  189. package/dist-prod/index.html +1 -1
  190. package/dist-prod/indicator.0c09e3f238791cb478e0.chunk.js +2 -0
  191. package/dist-prod/indicator.0c09e3f238791cb478e0.chunk.js.map +1 -0
  192. package/dist-prod/loadmore.9bad88767cc43603f473.chunk.js +2 -0
  193. package/dist-prod/loadmore.9bad88767cc43603f473.chunk.js.map +1 -0
  194. package/dist-prod/main.662ad15361e7f3d20234.js +2 -0
  195. package/dist-prod/main.662ad15361e7f3d20234.js.map +1 -0
  196. package/dist-prod/message.de17fea3de4daa70bab4.chunk.js +2 -0
  197. package/dist-prod/message.de17fea3de4daa70bab4.chunk.js.map +1 -0
  198. package/dist-prod/modal.f9ec857acd9fbdf53f3b.chunk.js +2 -0
  199. package/dist-prod/modal.f9ec857acd9fbdf53f3b.chunk.js.map +1 -0
  200. package/dist-prod/picker.bca059ef59e3c42a401f.chunk.js +2 -0
  201. package/dist-prod/picker.bca059ef59e3c42a401f.chunk.js.map +1 -0
  202. package/dist-prod/popup.538422c7e188363a468d.chunk.js +2 -0
  203. package/dist-prod/popup.538422c7e188363a468d.chunk.js.map +1 -0
  204. package/dist-prod/progress.240de4b633002f573030.chunk.js +2 -0
  205. package/dist-prod/progress.240de4b633002f573030.chunk.js.map +1 -0
  206. package/dist-prod/prompt.dcda0b05ea02d59106b7.chunk.js +2 -0
  207. package/dist-prod/prompt.dcda0b05ea02d59106b7.chunk.js.map +1 -0
  208. package/dist-prod/radiobox.7c10f77aba5ae04b2e5c.chunk.js +2 -0
  209. package/dist-prod/radiobox.7c10f77aba5ae04b2e5c.chunk.js.map +1 -0
  210. package/dist-prod/rater.d46ae462c598c458e5a8.chunk.js +2 -0
  211. package/dist-prod/rater.d46ae462c598c458e5a8.chunk.js.map +1 -0
  212. package/dist-prod/slidebar.833e75b9eb0abef92453.chunk.js +2 -0
  213. package/dist-prod/slidebar.833e75b9eb0abef92453.chunk.js.map +1 -0
  214. package/dist-prod/spinner.6afb4f84cc29f0e2f8eb.chunk.js +2 -0
  215. package/dist-prod/spinner.6afb4f84cc29f0e2f8eb.chunk.js.map +1 -0
  216. package/dist-prod/swipe.3fe6ee6638765ec52d94.chunk.js +2 -0
  217. package/dist-prod/swipe.3fe6ee6638765ec52d94.chunk.js.map +1 -0
  218. package/dist-prod/switchbar.f24c76a03120f1bd961a.chunk.js +2 -0
  219. package/dist-prod/switchbar.f24c76a03120f1bd961a.chunk.js.map +1 -0
  220. package/dist-prod/tab.29f19483f699b7811259.chunk.js +2 -0
  221. package/dist-prod/tab.29f19483f699b7811259.chunk.js.map +1 -0
  222. package/dist-prod/text.a6e4251f772d23843e2b.chunk.js +2 -0
  223. package/dist-prod/text.a6e4251f772d23843e2b.chunk.js.map +1 -0
  224. package/dist-prod/totop.713c5ab7f7dbcffbf2a3.chunk.js +2 -0
  225. package/dist-prod/totop.713c5ab7f7dbcffbf2a3.chunk.js.map +1 -0
  226. package/dist-prod/upload.0638581e551ed9afaba2.chunk.js +2 -0
  227. package/dist-prod/upload.0638581e551ed9afaba2.chunk.js.map +1 -0
  228. package/package.json +12 -3
  229. package/src/components/Indicator/Indicator.tsx +67 -0
  230. package/src/components/Indicator/index.ts +111 -0
  231. package/src/components/Indicator/types.ts +15 -0
  232. package/src/components/Text/index.ts +14 -0
  233. package/src/components/Text/textBar.tsx +104 -0
  234. package/src/components/Text/types.ts +13 -0
  235. package/src/components/actionSheet/actionSheet.d.ts +16 -0
  236. package/src/components/actionSheet/actionSheet.tsx +86 -0
  237. package/src/components/{action-sheet/index.js → actionSheet/index.ts} +1 -0
  238. package/src/components/actionSheet/types.ts +10 -0
  239. package/src/components/badge/{badge.vue → badge.tsx} +31 -31
  240. package/src/components/badge/index.ts +12 -0
  241. package/src/components/badge/types.ts +8 -0
  242. package/src/components/button/{button.vue → button.tsx} +46 -52
  243. package/src/components/button/index.ts +13 -0
  244. package/src/components/button/types.ts +13 -0
  245. package/src/components/card/card.d.ts +16 -0
  246. package/src/components/card/card.tsx +38 -0
  247. package/src/components/card/index.ts +12 -0
  248. package/src/components/card/types.ts +3 -0
  249. package/src/components/cell/cell.tsx +89 -0
  250. package/src/components/cell/index.ts +12 -0
  251. package/src/components/cell/types.ts +8 -0
  252. package/src/components/cellSwipe/cellSwipe.tsx +188 -0
  253. package/src/components/cellSwipe/index.ts +13 -0
  254. package/src/components/cellSwipe/types.ts +17 -0
  255. package/src/components/checkBox/checkbox-group.tsx +75 -0
  256. package/src/components/checkBox/checkbox.tsx +107 -0
  257. package/src/components/checkBox/index.ts +29 -0
  258. package/src/components/checkBox/types.ts +32 -0
  259. package/src/components/header/header.tsx +119 -0
  260. package/src/components/header/index.ts +13 -0
  261. package/src/components/header/types.ts +7 -0
  262. package/src/components/loadMore/index.ts +14 -0
  263. package/src/components/loadMore/loadMore.tsx +265 -0
  264. package/src/components/loadMore/types.ts +26 -0
  265. package/src/components/message/confirm.ts +104 -0
  266. package/src/components/message/{index.js → index.ts} +20 -18
  267. package/src/components/message/message.tsx +100 -0
  268. package/src/components/message/messageGroup.tsx +59 -0
  269. package/src/components/message/types.ts +48 -0
  270. package/src/components/modal/{confirm.js → confirm.ts} +8 -7
  271. package/src/components/modal/index.ts +68 -0
  272. package/src/components/modal/modal.tsx +248 -0
  273. package/src/components/modal/types.ts +51 -0
  274. package/src/components/number/Number.tsx +143 -0
  275. package/src/components/number/index.ts +10 -0
  276. package/src/components/number/types.ts +13 -0
  277. package/src/components/picker/index.ts +12 -0
  278. package/src/components/picker/picker.tsx +112 -0
  279. package/src/components/picker/types.ts +17 -0
  280. package/src/components/popup/index.ts +12 -0
  281. package/src/components/popup/popup.d.ts +16 -0
  282. package/src/components/popup/popup.tsx +68 -0
  283. package/src/components/popup/types.ts +9 -0
  284. package/src/components/progress/index.ts +12 -0
  285. package/src/components/progress/progress.tsx +81 -0
  286. package/src/components/progress/types.ts +9 -0
  287. package/src/components/prompt/{confirm.js → confirm.ts} +27 -14
  288. package/src/components/prompt/index.ts +50 -0
  289. package/src/components/prompt/prompt.tsx +161 -0
  290. package/src/components/prompt/types.ts +45 -0
  291. package/src/components/radioBox/index.ts +34 -0
  292. package/src/components/radioBox/radiobox-group.tsx +66 -0
  293. package/src/components/radioBox/radiobox.tsx +115 -0
  294. package/src/components/radioBox/types.ts +24 -0
  295. package/src/components/rater/index.ts +12 -0
  296. package/src/components/rater/rater.d.ts +16 -0
  297. package/src/components/rater/raters.tsx +101 -0
  298. package/src/components/rater/types.ts +10 -0
  299. package/src/components/slideBar/index.ts +13 -0
  300. package/src/components/slideBar/slideBar.tsx +288 -0
  301. package/src/components/slideBar/types.ts +20 -0
  302. package/src/components/spinner/index.ts +13 -0
  303. package/src/components/spinner/spinner.tsx +85 -0
  304. package/src/components/spinner/types.ts +20 -0
  305. package/src/components/swipe/index.ts +13 -0
  306. package/src/components/swipe/swipe.tsx +292 -0
  307. package/src/components/swipe/types.ts +21 -0
  308. package/src/components/switchbar/index.ts +13 -0
  309. package/src/components/switchbar/switchbar.tsx +58 -0
  310. package/src/components/switchbar/types.ts +6 -0
  311. package/src/components/tab/index.ts +12 -0
  312. package/src/components/tab/tab.tsx +71 -0
  313. package/src/components/tab/types.ts +15 -0
  314. package/src/components/toTop/index.ts +13 -0
  315. package/src/components/toTop/toTop.tsx +54 -0
  316. package/src/components/toTop/types.ts +7 -0
  317. package/src/components/upload/index.ts +13 -0
  318. package/src/components/upload/types.ts +9 -0
  319. package/src/components/upload/upload.tsx +180 -0
  320. package/src/index.ts +175 -0
  321. package/src/lib/MegaPixImage.js +1 -0
  322. package/src/{main.js → main.ts} +4 -2
  323. package/src/shims-vue.d.ts +37 -0
  324. package/src/styles/components/radioBox.less +5 -1
  325. package/src/styles/components/rater.less +16 -0
  326. package/src/styles/index.less +1 -0
  327. package/src/types/index.d.ts +157 -0
  328. package/src/types/js-shims.d.ts +36 -0
  329. package/src/utils/test.ts +2 -0
  330. package/src/utils/util.ts +168 -0
  331. package/src/utils/{util.js → util1.js} +2 -2
  332. package/src/views/ActionSheet.vue +7 -7
  333. package/src/views/Badge/Badge.less +12 -0
  334. package/src/views/Badge/Badge.tsx +23 -0
  335. package/src/views/Badge.vue +4 -2
  336. package/src/views/Button.vue +17 -17
  337. package/src/views/Card.vue +2 -1
  338. package/src/views/Cell.vue +6 -5
  339. package/src/views/CellSwipe.vue +51 -39
  340. package/src/views/CheckBox.vue +7 -6
  341. package/src/views/Header.vue +8 -7
  342. package/src/views/Indicator.vue +15 -15
  343. package/src/views/LoadMore.vue +13 -10
  344. package/src/views/Message.vue +14 -14
  345. package/src/views/Modal.vue +10 -10
  346. package/src/views/Picker.vue +19 -17
  347. package/src/views/Popup.vue +47 -41
  348. package/src/views/Progress.vue +8 -6
  349. package/src/views/Prompt.vue +5 -5
  350. package/src/views/RadioBox.vue +6 -4
  351. package/src/views/Rater.vue +7 -3
  352. package/src/views/SlideBar.vue +9 -5
  353. package/src/views/Spinner.vue +17 -5
  354. package/src/views/Swipe.vue +5 -3
  355. package/src/views/SwitchBar.vue +6 -4
  356. package/src/views/Tab.vue +8 -6
  357. package/src/views/Text.vue +14 -10
  358. package/src/views/ToTop.vue +19 -5
  359. package/src/views/Upload.vue +8 -4
  360. package/tsconfig.build.json +30 -0
  361. package/tsconfig.json +39 -0
  362. package/webpack.base.config.js +22 -2
  363. package/webpack.dev.config.js +2 -1
  364. package/webpack.dist.dev.config.js +3 -2
  365. package/webpack.dist.prod.config.js +3 -2
  366. package/webpack.prod.config.js +2 -1
  367. package/dist-prod/91.e2fdec39667928bf57b9.js +0 -3
  368. package/dist-prod/actionsheet.e2f7c32d0120f5147a4f.chunk.js +0 -2
  369. package/dist-prod/actionsheet.e2f7c32d0120f5147a4f.chunk.js.map +0 -1
  370. package/dist-prod/badge.6038c4ccc54ffb56a645.chunk.js +0 -2
  371. package/dist-prod/badge.6038c4ccc54ffb56a645.chunk.js.map +0 -1
  372. package/dist-prod/button.28b491339fbba29c3f16.chunk.js +0 -2
  373. package/dist-prod/button.28b491339fbba29c3f16.chunk.js.map +0 -1
  374. package/dist-prod/card.3ad847f07bebc1391125.chunk.js +0 -2
  375. package/dist-prod/card.3ad847f07bebc1391125.chunk.js.map +0 -1
  376. package/dist-prod/cell.8920796a9ebd2d84bbd3.chunk.js +0 -2
  377. package/dist-prod/cell.8920796a9ebd2d84bbd3.chunk.js.map +0 -1
  378. package/dist-prod/cellswipe.04240414bed39e28e7b9.chunk.js +0 -2
  379. package/dist-prod/cellswipe.04240414bed39e28e7b9.chunk.js.map +0 -1
  380. package/dist-prod/checkbox.87403976981ee0f64f4a.chunk.js +0 -2
  381. package/dist-prod/checkbox.87403976981ee0f64f4a.chunk.js.map +0 -1
  382. package/dist-prod/guide.5195c74796a7a0e37f7b.chunk.js +0 -2
  383. package/dist-prod/guide.5195c74796a7a0e37f7b.chunk.js.map +0 -1
  384. package/dist-prod/header.e3cecc6d60f801c1c105.chunk.js +0 -2
  385. package/dist-prod/header.e3cecc6d60f801c1c105.chunk.js.map +0 -1
  386. package/dist-prod/indicator.6b0c7a91ca254c3586e8.chunk.js +0 -2
  387. package/dist-prod/indicator.6b0c7a91ca254c3586e8.chunk.js.map +0 -1
  388. package/dist-prod/loadmore.ba86c35311fc68ee215b.chunk.js +0 -2
  389. package/dist-prod/loadmore.ba86c35311fc68ee215b.chunk.js.map +0 -1
  390. package/dist-prod/main.717f5c8b51911571fb82.js +0 -2
  391. package/dist-prod/main.717f5c8b51911571fb82.js.map +0 -1
  392. package/dist-prod/message.e57fa263a214006f7191.chunk.js +0 -2
  393. package/dist-prod/message.e57fa263a214006f7191.chunk.js.map +0 -1
  394. package/dist-prod/modal.1172c8ba7d90503fc8e8.chunk.js +0 -2
  395. package/dist-prod/modal.1172c8ba7d90503fc8e8.chunk.js.map +0 -1
  396. package/dist-prod/picker.4ff114161c5c3f8df57a.chunk.js +0 -2
  397. package/dist-prod/picker.4ff114161c5c3f8df57a.chunk.js.map +0 -1
  398. package/dist-prod/popup.8f92c027932e4d47fa59.chunk.js +0 -2
  399. package/dist-prod/popup.8f92c027932e4d47fa59.chunk.js.map +0 -1
  400. package/dist-prod/progress.1e0d785044aecadc5615.chunk.js +0 -2
  401. package/dist-prod/progress.1e0d785044aecadc5615.chunk.js.map +0 -1
  402. package/dist-prod/prompt.c2b442c3dd0e6d8319bc.chunk.js +0 -2
  403. package/dist-prod/prompt.c2b442c3dd0e6d8319bc.chunk.js.map +0 -1
  404. package/dist-prod/radiobox.479703c69b75d473e85d.chunk.js +0 -2
  405. package/dist-prod/radiobox.479703c69b75d473e85d.chunk.js.map +0 -1
  406. package/dist-prod/rater.939e0e7e770728f684c3.chunk.js +0 -2
  407. package/dist-prod/rater.939e0e7e770728f684c3.chunk.js.map +0 -1
  408. package/dist-prod/slidebar.d7ad5de495550613661f.chunk.js +0 -2
  409. package/dist-prod/slidebar.d7ad5de495550613661f.chunk.js.map +0 -1
  410. package/dist-prod/spinner.f20e3bd8cec27d26afe0.chunk.js +0 -2
  411. package/dist-prod/spinner.f20e3bd8cec27d26afe0.chunk.js.map +0 -1
  412. package/dist-prod/swipe.75b7d741be73c0064982.chunk.js +0 -2
  413. package/dist-prod/swipe.75b7d741be73c0064982.chunk.js.map +0 -1
  414. package/dist-prod/switchbar.56d03d96c275ff4c65a1.chunk.js +0 -2
  415. package/dist-prod/switchbar.56d03d96c275ff4c65a1.chunk.js.map +0 -1
  416. package/dist-prod/tab.4c391211c41b7d12b585.chunk.js +0 -2
  417. package/dist-prod/tab.4c391211c41b7d12b585.chunk.js.map +0 -1
  418. package/dist-prod/text.ee2804ba87e6a460aa7d.chunk.js +0 -2
  419. package/dist-prod/text.ee2804ba87e6a460aa7d.chunk.js.map +0 -1
  420. package/dist-prod/totop.c6f9dce152bb6abe5cb2.chunk.js +0 -2
  421. package/dist-prod/totop.c6f9dce152bb6abe5cb2.chunk.js.map +0 -1
  422. package/dist-prod/upload.a9b44c8a72fe70980a1e.chunk.js +0 -2
  423. package/dist-prod/upload.a9b44c8a72fe70980a1e.chunk.js.map +0 -1
  424. package/src/components/Indicator/index.js +0 -86
  425. package/src/components/Text/Number.vue +0 -167
  426. package/src/components/Text/index.js +0 -7
  427. package/src/components/Text/textBar.vue +0 -122
  428. package/src/components/action-sheet/actionSheet.vue +0 -98
  429. package/src/components/badge/index.js +0 -5
  430. package/src/components/button/index.js +0 -5
  431. package/src/components/card/card.vue +0 -49
  432. package/src/components/card/index.js +0 -5
  433. package/src/components/cell/cell.vue +0 -113
  434. package/src/components/cell/index.js +0 -5
  435. package/src/components/cell-swipe/cell-swipe.vue +0 -168
  436. package/src/components/cell-swipe/index.js +0 -5
  437. package/src/components/checkBox/checkbox-group.vue +0 -74
  438. package/src/components/checkBox/checkbox.vue +0 -117
  439. package/src/components/checkBox/index.js +0 -8
  440. package/src/components/header/header.vue +0 -131
  441. package/src/components/header/index.js +0 -5
  442. package/src/components/loadMore/index.js +0 -5
  443. package/src/components/loadMore/loadmore.vue +0 -258
  444. package/src/components/message/confirm.js +0 -60
  445. package/src/components/message/message.vue +0 -137
  446. package/src/components/message/messageGroup.vue +0 -82
  447. package/src/components/modal/index.js +0 -52
  448. package/src/components/modal/modal.vue +0 -138
  449. package/src/components/picker/index.js +0 -5
  450. package/src/components/picker/picker.vue +0 -111
  451. package/src/components/popup/index.js +0 -5
  452. package/src/components/popup/popup.vue +0 -91
  453. package/src/components/progress/index.js +0 -5
  454. package/src/components/progress/progress.vue +0 -86
  455. package/src/components/prompt/index.js +0 -53
  456. package/src/components/prompt/prompt.vue +0 -125
  457. package/src/components/radioBox/index.js +0 -8
  458. package/src/components/rater/index.js +0 -5
  459. package/src/components/rater/rater.vue +0 -118
  460. package/src/components/slideBar/index.js +0 -6
  461. package/src/components/slideBar/slideBar.vue +0 -225
  462. package/src/components/spinner/index.js +0 -5
  463. package/src/components/spinner/spinner.vue +0 -78
  464. package/src/components/swipe/index.js +0 -5
  465. package/src/components/swipe/swipe.vue +0 -289
  466. package/src/components/switchbar/index.js +0 -5
  467. package/src/components/switchbar/switchbar.vue +0 -79
  468. package/src/components/tab/index.js +0 -6
  469. package/src/components/tab/tab.vue +0 -89
  470. package/src/components/toTop/index.js +0 -5
  471. package/src/components/toTop/topTop.vue +0 -78
  472. package/src/components/upload/index.js +0 -5
  473. package/src/components/upload/upload.vue +0 -166
  474. package/src/index.js +0 -149
  475. /package/dist-prod/{91.e2fdec39667928bf57b9.js.LICENSE.txt → 91.05c8ec5277a15f939b0f.js.LICENSE.txt} +0 -0
  476. /package/src/components/radioBox/{radiobox-group.vue → radiobox-group1.vue} +0 -0
  477. /package/src/components/radioBox/{radiobox.vue → radiobox1.vue} +0 -0
  478. /package/src/{router.js → router.ts} +0 -0
@@ -1,50 +1,23 @@
1
- <template>
2
- <div
3
- :class="classes"
4
- :style="wrapperStyles"
5
- >
6
- <button
7
- :style="styles"
8
- :class="buttonClass"
9
- :disabled="disabled"
10
- @click.stop="handleClick"
11
- >
12
- <slot name="left">
13
- <span
14
- v-show="loadingValue"
15
- class="loading"
16
- >
17
- <Spinner
18
- type="blade"
19
- size="15"
20
- color="#ffffff"
21
- />
22
- </span>
23
- </slot>
24
- <slot><span>确定</span></slot>
25
- <slot name="right" />
26
- </button>
27
- </div>
28
- </template>
29
-
30
- <script>
31
- import { defineComponent, computed } from 'vue'
1
+ // src/components/button/button.tsx
2
+ import { defineComponent, computed, PropType } from 'vue'
32
3
  import Spinner from '../spinner'
4
+ import type { ButtonProps } from './types'
5
+
6
+ export type { ButtonProps }
33
7
 
34
8
  const prefixCls = 'dpzvc3-button'
35
9
 
36
10
  export default defineComponent({
37
11
  name: 'VButton',
38
- components: { Spinner },
39
12
  props: {
40
13
  type: {
41
- type: String,
14
+ type: String as PropType<ButtonProps['type']>,
42
15
  default: 'normal',
43
- validator: (val) =>
16
+ validator: (val: string) =>
44
17
  ['success', 'loading', 'normal', 'primary', 'warning', 'danger', 'text'].includes(val)
45
18
  },
46
19
  styles: {
47
- type: Object,
20
+ type: Object as PropType<ButtonProps['styles']>,
48
21
  default: () => ({})
49
22
  },
50
23
  circle: { type: Boolean, default: false },
@@ -54,10 +27,11 @@ export default defineComponent({
54
27
  height: { type: String, default: '40px' },
55
28
  loading: { type: Boolean, default: false },
56
29
  radius: { type: Boolean, default: true },
57
- border: { type: String, default: 'all' }
30
+ border: { type: String as PropType<ButtonProps['border']>, default: 'all' }
58
31
  },
59
- setup (props, { emit }) {
60
- // 外层容器类
32
+ emits: ['click'],
33
+ setup(props, { emit, slots }) {
34
+ /** 外层容器类 */
61
35
  const classes = computed(() => [
62
36
  prefixCls,
63
37
  {
@@ -66,14 +40,14 @@ export default defineComponent({
66
40
  }
67
41
  ])
68
42
 
69
- // 外层容器样式
43
+ /** 外层容器样式 */
70
44
  const wrapperStyles = computed(() => ({
71
45
  display: props.inline ? 'inline-block' : 'block',
72
46
  width: props.width,
73
47
  height: props.height
74
48
  }))
75
49
 
76
- // button 类
50
+ /** button 类 */
77
51
  const buttonClass = computed(() => [
78
52
  `${prefixCls}-btn`,
79
53
  [`dpzvc3-1px-${props.border}`],
@@ -90,22 +64,42 @@ export default defineComponent({
90
64
  }
91
65
  ])
92
66
 
93
- // 点击事件
94
- const handleClick = (e) => {
67
+ /** 点击事件 */
68
+ const handleClick = (e: MouseEvent) => {
95
69
  if (props.disabled || props.loading) return
96
70
  emit('click', e)
97
71
  }
98
72
 
99
- // 状态
73
+ /** loading 状态 */
100
74
  const loadingValue = computed(() => props.loading)
101
75
 
102
- return {
103
- classes,
104
- wrapperStyles,
105
- buttonClass,
106
- handleClick,
107
- loadingValue
108
- }
76
+ /** JSX 渲染 */
77
+ return () => (
78
+ <div class={classes.value} style={wrapperStyles.value}>
79
+ <button
80
+ class={buttonClass.value}
81
+ style={props.styles}
82
+ disabled={props.disabled}
83
+ onClick={handleClick}
84
+ >
85
+ {/* left slot */}
86
+ {slots.left ? (
87
+ slots.left()
88
+ ) : (
89
+ loadingValue.value && (
90
+ <span class="loading">
91
+ <Spinner type="blade" size={15} color="#ffffff" />
92
+ </span>
93
+ )
94
+ )}
95
+
96
+ {/* default slot */}
97
+ {slots.default ? slots.default() : <span>确定</span>}
98
+
99
+ {/* right slot */}
100
+ {slots.right?.()}
101
+ </button>
102
+ </div>
103
+ )
109
104
  }
110
- })
111
- </script>
105
+ })
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Created by admin on 2017/5/9.
3
+ */
4
+ import type { App } from 'vue'
5
+ import DpButton from './button'
6
+ DpButton.install = (app: App): void => {
7
+ app.component('DpButton', DpButton); // 注册全局组件
8
+ }
9
+ type IWithInstall<T> = T & { install(app: App): void };
10
+ const _DpButton=DpButton as IWithInstall<typeof DpButton>;
11
+ export default _DpButton
12
+ // export default DpButton
13
+ export type { ButtonProps } from './types'
@@ -0,0 +1,13 @@
1
+ // src/components/button/types.ts
2
+ export interface ButtonProps {
3
+ type?: 'success' | 'loading' | 'normal' | 'primary' | 'warning' | 'danger' | 'text'
4
+ styles?: Record<string, any>
5
+ circle?: boolean
6
+ disabled?: boolean
7
+ inline?: boolean
8
+ width?: string
9
+ height?: string
10
+ loading?: boolean
11
+ radius?: boolean
12
+ border?: 'all' | 'top' | 'bottom' | 'left' | 'right' | 'none'
13
+ }
@@ -0,0 +1,16 @@
1
+ // src/components/badge/badge.d.ts
2
+
3
+ import type { App } from 'vue'
4
+ import type { CardProps } from './types' // 引入同级 types.ts 中的 BadgeProps
5
+
6
+ /** Badge 组件实例类型,带 install 方法 */
7
+ declare const Card: {
8
+ /** Vue 组件本身 */
9
+ new (): any
10
+ /** props 类型引用 */
11
+ __props?: CardProps
12
+ /** install 方法,用于全量注册 */
13
+ install(app: App): void
14
+ }
15
+
16
+ export default Card
@@ -0,0 +1,38 @@
1
+ // src/components/card/card.tsx
2
+ import { defineComponent, computed, PropType } from 'vue'
3
+
4
+ // export type CardProps = {
5
+ // width?: string
6
+ // }
7
+ import type { CardProps } from './types'
8
+ export type { CardProps }
9
+
10
+ const prefixCls = 'dpzvc3-card'
11
+
12
+ export default defineComponent({
13
+ name: 'Dpzvc3Card',
14
+ props: {
15
+ width: { type: String as PropType<string>, default: '100%' }
16
+ },
17
+ setup(props, { slots }) {
18
+ const classes = computed(() => [prefixCls])
19
+ const headerClass = computed(() => [`${prefixCls}-header`, 'dpzvc3-1px-bottom'])
20
+ const contentClass = computed(() => [`${prefixCls}-content`])
21
+ const footerClass = computed(() => [`${prefixCls}-footer`, 'dpzvc3-1px-top'])
22
+ const cardWidth = computed(() => props.width)
23
+
24
+ return () => (
25
+ <div class={classes.value} style={{ width: cardWidth.value }}>
26
+ <div class={headerClass.value}>
27
+ {slots.header?.()}
28
+ </div>
29
+ <div class={contentClass.value}>
30
+ {slots.default ? slots.default() : <div class="main" />}
31
+ </div>
32
+ <div class={footerClass.value}>
33
+ {slots.footer?.()}
34
+ </div>
35
+ </div>
36
+ )
37
+ }
38
+ })
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Created by admin on 2017/7/7.
3
+ */
4
+ import type { App } from 'vue'
5
+ import Card from './card'
6
+ Card.install = (app: App): void => {
7
+ app.component('Card', Card); // 注册全局组件
8
+ }
9
+ type IWithInstall<T> = T & { install(app: App): void };
10
+ const _Card = Card as IWithInstall<typeof Card>;
11
+ export default _Card
12
+ export type { CardProps } from './types'
@@ -0,0 +1,3 @@
1
+ export type CardProps = {
2
+ width?: string
3
+ }
@@ -0,0 +1,89 @@
1
+ // src/components/cell/cell.tsx
2
+ import { defineComponent, computed,PropType} from 'vue'
3
+ import { useRouter } from 'vue-router'
4
+
5
+ import type { CellProps } from './types'
6
+ export type { CellProps }
7
+
8
+ const prefixCls = 'dpzvc3-cell'
9
+
10
+ export default defineComponent({
11
+ name: 'Dpzvc3Cell',
12
+ props: {
13
+ title: String,
14
+ value: null,
15
+ label: String,
16
+ link: String,
17
+ hasMask: Boolean
18
+ },
19
+ emits: ['touchstart', 'touchmove', 'touchend', 'click'],
20
+ setup(props, { emit, slots }) {
21
+ const router = useRouter()
22
+
23
+ const toLink = computed(() => {
24
+ if (!props.link) return ''
25
+ const resolved = router.resolve(props.link)
26
+ return resolved.matched.length ? resolved.href : props.link
27
+ })
28
+
29
+ const classes = computed(() => [prefixCls])
30
+ const maskClass = computed(() => [`${prefixCls}-mask`])
31
+ const leftClasses = computed(() => [`${prefixCls}-left`])
32
+ const rightClasses = computed(() => [`${prefixCls}-right`])
33
+ const wrapperClasses = computed(() => [`${prefixCls}-main`, 'dpzvc3-1px-top'])
34
+ const titleClass = computed(() => [`${prefixCls}-main-title`])
35
+ const valueClass = computed(() => [`${prefixCls}-main-value`])
36
+ const labelClass = computed(() => [`${prefixCls}-main-label`])
37
+
38
+ const handleClick = (e: MouseEvent) => {
39
+ if (props.link) {
40
+ router.push(props.link)
41
+ } else {
42
+ emit('click', e)
43
+ }
44
+ }
45
+
46
+ const cellTouchStart = (e: TouchEvent) => emit('touchstart', e)
47
+ const cellTouchMove = (e: TouchEvent) => emit('touchmove', e)
48
+ const cellTouchEnd = (e: TouchEvent) => emit('touchend', e)
49
+
50
+ return () => (
51
+ <div
52
+ href={toLink.value}
53
+ class={classes.value}
54
+ onClick={handleClick}
55
+ onTouchstart={cellTouchStart}
56
+ onTouchmove={cellTouchMove}
57
+ onTouchend={cellTouchEnd}
58
+ >
59
+ {props.hasMask && <span class={maskClass.value} />}
60
+
61
+ <div class={leftClasses.value}>
62
+ {slots.left?.()}
63
+ </div>
64
+
65
+ <div class={wrapperClasses.value}>
66
+ <div class={titleClass.value}>
67
+ {slots.icon?.()}
68
+ {slots.title ? (
69
+ slots.title()
70
+ ) : (
71
+ <>
72
+ <span>{props.title}</span>
73
+ <span class={labelClass.value}>{props.label}</span>
74
+ </>
75
+ )}
76
+ </div>
77
+
78
+ <div class={valueClass.value}>
79
+ {slots.value ? slots.value() : <span>{props.value}</span>}
80
+ </div>
81
+ </div>
82
+
83
+ <div class={rightClasses.value}>
84
+ {slots.right?.()}
85
+ </div>
86
+ </div>
87
+ )
88
+ }
89
+ })
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Created by admin on 2025/12/4.
3
+ */
4
+ import type { App } from 'vue'
5
+ import Cell from './cell'
6
+ Cell.install = (app: App): void => {
7
+ app.component('Cell', Cell); // 注册全局组件
8
+ }
9
+ type IWithInstall<T> = T & { install(app: App): void };
10
+ const _Cell=Cell as IWithInstall<typeof Cell>;
11
+ export default _Cell
12
+ export type { CellProps } from './types'
@@ -0,0 +1,8 @@
1
+ // src/components/cell/types.ts
2
+ export interface CellProps {
3
+ title?: string
4
+ value?: any
5
+ label?: string
6
+ link?: string
7
+ hasMask?: boolean
8
+ }
@@ -0,0 +1,188 @@
1
+ // src/components/cell-swipe/cell-swipe.tsx
2
+ import {
3
+ ref,
4
+ reactive,
5
+ watch,
6
+ nextTick,
7
+ onMounted,
8
+ defineComponent
9
+ } from 'vue'
10
+
11
+ import Cell from '../cell'
12
+ import type { CellSwipeProps, CellSwipeAction } from './types'
13
+
14
+ export type { CellSwipeProps }
15
+
16
+ const translate3d = (x: number) => `translate3d(${x}px,0,0)`
17
+
18
+ export default defineComponent({
19
+ name: 'Dpzvc3CellSwipe',
20
+ props: {
21
+ title: String,
22
+ value: null,
23
+ label: String,
24
+ link: String,
25
+ hasMask: Boolean,
26
+ left: {
27
+ type: Array as () => CellSwipeAction[],
28
+ default: () => []
29
+ },
30
+ right: {
31
+ type: Array as () => CellSwipeAction[],
32
+ default: () => []
33
+ }
34
+ },
35
+ setup(props) {
36
+ const cellRef = ref<any>(null)
37
+ const leftRef = ref<HTMLElement | null>(null)
38
+ const rightRef = ref<HTMLElement | null>(null)
39
+
40
+ const state = reactive({
41
+ translate: 0,
42
+ startX: 0,
43
+ currentX: 0,
44
+ direction: '' as 'left' | 'right' | '',
45
+ leftWidth: 0,
46
+ rightWidth: 0,
47
+ wrapper: null as HTMLElement | null,
48
+ leftEl: null as HTMLElement | null,
49
+ rightEl: null as HTMLElement | null
50
+ })
51
+
52
+ const swipe = (translate = 0) => {
53
+ state.translate = translate
54
+ state.wrapper && (state.wrapper.style.transform = translate3d(translate))
55
+ state.leftEl &&
56
+ (state.leftEl.style.transform = translate3d(-state.leftWidth + translate))
57
+ state.rightEl &&
58
+ (state.rightEl.style.transform = translate3d(state.rightWidth + translate))
59
+ }
60
+
61
+ const onTouchStart = (e: TouchEvent) => {
62
+ state.startX = e.touches[0].clientX
63
+ }
64
+
65
+ const onTouchMove = (e: TouchEvent) => {
66
+ e.preventDefault()
67
+ state.currentX = e.touches[0].clientX
68
+ const diff = state.currentX - state.startX
69
+ state.direction = diff < 0 ? 'left' : 'right'
70
+
71
+ if (state.direction === 'left') {
72
+ state.translate = Math.max(-state.rightWidth, diff)
73
+ } else {
74
+ state.translate = Math.min(state.leftWidth, diff)
75
+ }
76
+
77
+ nextTick(() => swipe(state.translate))
78
+ }
79
+
80
+ const onTouchEnd = () => {
81
+ if (
82
+ state.direction === 'right' &&
83
+ Math.abs(state.translate) > state.leftWidth / 2
84
+ ) {
85
+ swipe(state.leftWidth)
86
+ } else if (
87
+ state.direction === 'left' &&
88
+ Math.abs(state.translate) > state.rightWidth / 2
89
+ ) {
90
+ swipe(-state.rightWidth)
91
+ } else {
92
+ swipe(0)
93
+ }
94
+ }
95
+
96
+ watch(
97
+ () => props.left,
98
+ () => {
99
+ nextTick(() => {
100
+ state.leftWidth = leftRef.value?.offsetWidth || 0
101
+ swipe()
102
+ })
103
+ }
104
+ )
105
+
106
+ watch(
107
+ () => props.right,
108
+ () => {
109
+ nextTick(() => {
110
+ state.rightWidth = rightRef.value?.offsetWidth || 0
111
+ swipe()
112
+ })
113
+ }
114
+ )
115
+
116
+ onMounted(() => {
117
+ nextTick(() => {
118
+ if (!cellRef.value) return
119
+
120
+ const el = cellRef.value.$el as HTMLElement
121
+ state.wrapper = el.querySelector('.dpzvc3-cell-main')
122
+ state.leftEl = leftRef.value?.parentElement || null
123
+ state.rightEl = rightRef.value?.parentElement || null
124
+
125
+ state.leftWidth = state.leftEl?.offsetWidth || 0
126
+ state.rightWidth = state.rightEl?.offsetWidth || 0
127
+
128
+ state.leftEl &&
129
+ (state.leftEl.style.transform = translate3d(-state.leftWidth))
130
+ state.rightEl &&
131
+ (state.rightEl.style.transform = translate3d(state.rightWidth + 1))
132
+ state.wrapper && (state.wrapper.style.transform = translate3d(0))
133
+ })
134
+ })
135
+
136
+ return () => (
137
+ <Cell
138
+ ref={cellRef}
139
+ title={props.title}
140
+ value={props.value}
141
+ label={props.label}
142
+ link={props.link}
143
+ hasMask={props.hasMask}
144
+ onClick={() => swipe(0)}
145
+ onTouchstart={onTouchStart}
146
+ onTouchmove={onTouchMove}
147
+ onTouchend={onTouchEnd}
148
+ >
149
+ {{
150
+ left: () => (
151
+ <div ref={leftRef} class="dpzvc3-cell-swipe-group">
152
+ {props.left?.map((item, index) => (
153
+ <span
154
+ key={index}
155
+ class="dpzvc3-cell-swipe-btn"
156
+ style={item.style}
157
+ innerHTML={item.content}
158
+ onClick={(e: any) => {
159
+ e.stopPropagation()
160
+ item.handleClick?.()
161
+ swipe(0)
162
+ }}
163
+ />
164
+ ))}
165
+ </div>
166
+ ),
167
+ right: () => (
168
+ <div ref={rightRef} class="dpzvc3-cell-swipe-group">
169
+ {props.right?.map((item, index) => (
170
+ <span
171
+ key={index}
172
+ class="dpzvc3-cell-swipe-btn"
173
+ style={item.style}
174
+ innerHTML={item.content}
175
+ onClick={(e: any) => {
176
+ e.stopPropagation()
177
+ item.handleClick?.()
178
+ swipe(0)
179
+ }}
180
+ />
181
+ ))}
182
+ </div>
183
+ )
184
+ }}
185
+ </Cell>
186
+ )
187
+ }
188
+ })
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Created by admin on 2017/7/4.
3
+ */
4
+ import type { App } from 'vue'
5
+ import CellSwipe from './cellSwipe'
6
+ // export default CellSwipe
7
+ CellSwipe.install = (app: App): void => {
8
+ app.component('CellSwipe', CellSwipe); // 注册全局组件
9
+ }
10
+ type IWithInstall<T> = T & { install(app: App): void };
11
+ const _CellSwipe=CellSwipe as IWithInstall<typeof CellSwipe>;
12
+ export default _CellSwipe
13
+ export type { CellSwipeProps } from './types'
@@ -0,0 +1,17 @@
1
+ // src/components/cell-swipe/types.ts
2
+
3
+ export interface CellSwipeAction {
4
+ content?: string
5
+ style?: Record<string, string>
6
+ handleClick?: () => void
7
+ }
8
+
9
+ export interface CellSwipeProps {
10
+ title?: string
11
+ value?: any
12
+ label?: string
13
+ link?: string
14
+ hasMask?: boolean
15
+ left?: CellSwipeAction[]
16
+ right?: CellSwipeAction[]
17
+ }
@@ -0,0 +1,75 @@
1
+ // src/components/checkbox-group/CheckboxGroup.tsx
2
+ import { defineComponent, ref, watch, provide, PropType } from 'vue'
3
+ import type { CheckBoxGroupProps, CheckBoxGroupValue, CheckBoxGroupExpose, CheckBoxGroupInject } from './types'
4
+
5
+ const prefixCls = 'dpzvc3-checkBoxGroup'
6
+
7
+ export default defineComponent({
8
+ name: 'DpzVcCheckBoxGroup',
9
+
10
+ props: {
11
+ modelValue: {
12
+ type: Array as PropType<CheckBoxGroupValue>,
13
+ default: () => []
14
+ },
15
+ single: {
16
+ type: Boolean,
17
+ default: false
18
+ },
19
+ vertical: {
20
+ type: Boolean,
21
+ default: false
22
+ }
23
+ },
24
+
25
+ emits: ['update:modelValue', 'on-change'],
26
+
27
+ setup(props, { emit, slots, expose }) {
28
+ const currentValue = ref<CheckBoxGroupValue>([...props.modelValue])
29
+
30
+ /** 对外暴露给 checkbox 的方法 */
31
+ const toggleOption = (value: CheckBoxGroupValue) => {
32
+ let newValue: CheckBoxGroupValue = []
33
+
34
+ if (props.single) {
35
+ // 单选模式,只保留第一个
36
+ newValue = [value[0]]
37
+ } else {
38
+ newValue = [...value]
39
+ }
40
+
41
+ currentValue.value = newValue
42
+ emit('update:modelValue', newValue)
43
+ emit('on-change', newValue)
44
+ }
45
+
46
+ /** 提供给子组件注入 */
47
+ provide<CheckBoxGroupInject>('CheckBoxGroup', {
48
+ currentValue,
49
+ toggleOption,
50
+ single: props.single,
51
+ })
52
+
53
+ /** watch 外部 modelValue 同步 */
54
+ watch(
55
+ () => props.modelValue,
56
+ (val) => {
57
+ currentValue.value = [...val]
58
+ }
59
+ )
60
+
61
+ /** expose 给父组件通过 ref 调用 */
62
+ expose<CheckBoxGroupExpose>({
63
+ toggleOption
64
+ })
65
+
66
+ return () => (
67
+ <div class={[
68
+ prefixCls,
69
+ props.vertical ? `${prefixCls}-vertical` : ''
70
+ ]}>
71
+ {slots.default?.()}
72
+ </div>
73
+ )
74
+ }
75
+ })