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
@@ -0,0 +1,248 @@
1
+ // src/components/modal/modal.tsx
2
+ import {
3
+ defineComponent,
4
+ ref,
5
+ computed,
6
+ watch,
7
+ Transition,
8
+ PropType
9
+ } from 'vue'
10
+ import VButton from '../button'
11
+ import type { ModalProps } from './types'
12
+
13
+ export type { ModalProps }
14
+
15
+ const prefixCls = 'dpzvc3-modal'
16
+
17
+ export default defineComponent({
18
+ name: 'Dpzvc3Modal',
19
+
20
+ props: {
21
+ modelValue: {
22
+ type: Boolean,
23
+ default: false
24
+ },
25
+ maskClosable: {
26
+ type: Boolean,
27
+ default: true
28
+ },
29
+ title: String,
30
+ width: {
31
+ type: String,
32
+ default: '70%'
33
+ },
34
+ okText: {
35
+ type: String,
36
+ default: '确定'
37
+ },
38
+ cancleText: {
39
+ type: String,
40
+ default: '取消'
41
+ },
42
+ loading: {
43
+ type: Boolean,
44
+ default: false
45
+ },
46
+ styles: {
47
+ type: Object as PropType<Record<string, any>>,
48
+ default: () => ({})
49
+ },
50
+ showHead: {
51
+ type: Boolean,
52
+ default: true
53
+ },
54
+ footerHide: {
55
+ type: Boolean,
56
+ default: false
57
+ },
58
+ body: String
59
+ },
60
+
61
+ emits: [
62
+ 'update:modelValue',
63
+ 'on-ok',
64
+ 'on-cancle'
65
+ ],
66
+
67
+ setup(props: ModalProps, { emit, slots }) {
68
+ const visible = ref(!!props.modelValue)
69
+ const isHead = ref(!!props.showHead)
70
+ const buttonLoading = ref(false)
71
+
72
+ const getWrapperStyle = computed(() => ({
73
+ width: props.width,
74
+ ...(props.styles || {})
75
+ }))
76
+
77
+ /* watch props */
78
+ watch(
79
+ () => props.modelValue,
80
+ val => (visible.value = !!val)
81
+ )
82
+
83
+ watch(
84
+ () => props.showHead,
85
+ val => (isHead.value = !!val)
86
+ )
87
+
88
+ /* methods */
89
+ const close = () => {
90
+ emit('update:modelValue', false)
91
+ emit('on-cancle')
92
+ }
93
+
94
+ const mask = () => {
95
+ if (props.maskClosable && !buttonLoading.value) {
96
+ close()
97
+ }
98
+ }
99
+
100
+ const ok = () => {
101
+ if (props.loading) {
102
+ buttonLoading.value = true
103
+ } else {
104
+ emit('update:modelValue', false)
105
+ }
106
+ emit('on-ok')
107
+ }
108
+
109
+ return () => (
110
+ <>
111
+ {/* mask */}
112
+ <Transition name="dpzvc3-ani-fade"
113
+ v-slots={{
114
+ default: () =>visible.value && (
115
+ <div
116
+ class="dpzvc3-modal-mask"
117
+ onClick={mask}
118
+ onTouchstart={(e:any) => e.preventDefault()}
119
+ onTouchmove={(e:any) => e.preventDefault()}
120
+ onTouchend={(e:any) => e.preventDefault()}
121
+ />)
122
+ }}
123
+ />
124
+ {/* </Transition> */}
125
+ {/* <Transition
126
+ name="dpzvc3-ani-fade"
127
+ v-slots={{
128
+ default: () =>
129
+ mask.value && visible.value && (
130
+ <div
131
+ class={`${prefixCls}-mask`}
132
+ onClick={close}
133
+ onTouchMove={(e:any) => e.preventDefault()}
134
+ />
135
+ )
136
+ }}
137
+ /> */}
138
+
139
+
140
+ {/* modal */}
141
+ <Transition name="dpzvc3-ani-scale"
142
+ v-slots={{
143
+ default: () =>visible.value && (
144
+ <div
145
+ class={prefixCls}
146
+ style={getWrapperStyle.value}
147
+ >
148
+ {/* header */}
149
+ {isHead.value && (
150
+ <div class={`${prefixCls}-header`}>
151
+ {slots.header ? (
152
+ slots.header()
153
+ ) : (
154
+ <div class={`${prefixCls}-header-inner ellipse-fir`}>
155
+ {props.title}
156
+ </div>
157
+ )}
158
+ </div>
159
+ )}
160
+
161
+ {/* body */}
162
+ <div class={`${prefixCls}-body`}>
163
+ {slots.body ? slots.body() : props.body}
164
+ </div>
165
+
166
+ {/* footer */}
167
+ {!props.footerHide && (
168
+ <div class={`${prefixCls}-footer`}>
169
+ {slots.footer ? (
170
+ slots.footer()
171
+ ) : (
172
+ <>
173
+ {props.cancleText && (
174
+ <VButton type="primary" onClick={close}>
175
+ {props.cancleText}
176
+ </VButton>
177
+ )}
178
+ <VButton
179
+ type="normal"
180
+ loading={buttonLoading.value}
181
+ onClick={ok}
182
+ >
183
+ {props.okText}
184
+ </VButton>
185
+ </>
186
+ )}
187
+ </div>
188
+ )}
189
+ </div>
190
+ )
191
+ }}
192
+
193
+ />
194
+ </>
195
+ )
196
+ }
197
+ })
198
+
199
+ // {/* <Transition name="dpzvc3-ani-scale"> */}
200
+ // {visible.value && (
201
+ // <div
202
+ // class={prefixCls}
203
+ // style={getWrapperStyle.value}
204
+ // >
205
+ // {/* header */}
206
+ // {isHead.value && (
207
+ // <div class={`${prefixCls}-header`}>
208
+ // {slots.header ? (
209
+ // slots.header()
210
+ // ) : (
211
+ // <div class={`${prefixCls}-header-inner ellipse-fir`}>
212
+ // {props.title}
213
+ // </div>
214
+ // )}
215
+ // </div>
216
+ // )}
217
+
218
+ // {/* body */}
219
+ // <div class={`${prefixCls}-body`}>
220
+ // {slots.body ? slots.body() : props.body}
221
+ // </div>
222
+
223
+ // {/* footer */}
224
+ // {!props.footerHide && (
225
+ // <div class={`${prefixCls}-footer`}>
226
+ // {slots.footer ? (
227
+ // slots.footer()
228
+ // ) : (
229
+ // <>
230
+ // {props.cancleText && (
231
+ // <VButton type="primary" onClick={close}>
232
+ // {props.cancleText}
233
+ // </VButton>
234
+ // )}
235
+ // <VButton
236
+ // type="normal"
237
+ // loading={buttonLoading.value}
238
+ // onClick={ok}
239
+ // >
240
+ // {props.okText}
241
+ // </VButton>
242
+ // </>
243
+ // )}
244
+ // </div>
245
+ // )}
246
+ // </div>
247
+ // )}
248
+ // {/* </Transition> */}
@@ -0,0 +1,51 @@
1
+ // src/components/modal/types.ts
2
+ export type ModalProps ={
3
+ modelValue?: boolean
4
+ maskClosable?: boolean
5
+ title?: string
6
+ width?: string
7
+ okText?: string
8
+ cancleText?: string
9
+ loading?: boolean
10
+ styles?: Record<string, any>
11
+ showHead?: boolean
12
+ footerHide?: boolean
13
+ body?: string
14
+ }
15
+ // modal函数调用 传参数与modal props类型声明合并
16
+ export type MergeOptions<T = ModalProps> = {
17
+ [K in keyof T]: T[K]
18
+ } & {
19
+ onOk?: () => void
20
+ onCancle?: () => void
21
+ onRemove?: () => void
22
+ showCancle?: boolean,
23
+ buttonLoading?: boolean,
24
+ }
25
+
26
+ // modal实例
27
+ export type ModalInstance = {
28
+ confirm: (options: MergeOptions) => DefaultProps
29
+ remove: () => void,
30
+ info: (props: MergeOptions) => DefaultProps
31
+ }
32
+ //开启
33
+ export type DefaultProps = {
34
+ show: (options: MergeOptions) => any,
35
+ remove: () => void,
36
+ component: MergeOptions
37
+ } | null
38
+ // visible: false,
39
+ // modelValue: false,
40
+ // width: '70%',
41
+ // body: '',
42
+ // title: '',
43
+ // okText: '确定',
44
+ // cancleText: '取消',
45
+ // loading: false,
46
+ // buttonLoading: false,
47
+ // showCancle: true,
48
+ // showHead: true,
49
+ // onOk: () => {},
50
+ // onCancle: () => {},
51
+ // onRemove: () => {}
@@ -0,0 +1,143 @@
1
+ import { defineComponent, ref, computed, watch, onMounted, PropType } from 'vue'
2
+
3
+ const prefixCls = 'dpzvc3-number'
4
+
5
+ import { NumberProps, NumberEmits } from './types' // 引入类型
6
+ export type { NumberProps } from './types' // 导出类型
7
+ export default defineComponent({
8
+ name: 'Dpzvc3Number',
9
+ props: {
10
+ modelValue: [Number, String],
11
+ min: { type: [Number, String], default: -Infinity },
12
+ max: { type: [Number, String], default: Infinity },
13
+ step: { type: Number, default: 1 },
14
+ width: { type: Number, default: 60 },
15
+ height: { type: Number, default: 35 },
16
+ numberStyle: { type: Object, default: () => ({}) },
17
+ containerStyle: { type: Object, default: () => ({}) }
18
+ }, // 强制使用类型as unknown as Record<keyof NumberProps, any>
19
+ emits: ['update:modelValue', 'input', 'on-input'] as NumberEmits[],
20
+ setup(props, { emit, slots }) {
21
+ const currentValue = ref(props.modelValue)
22
+ const upDisabled = ref(false)
23
+ const downDisabled = ref(false)
24
+
25
+ const classes = computed(() => [prefixCls])
26
+ const reduceClasses = computed(() => [
27
+ `${prefixCls}-changevalue`,
28
+ 'left',
29
+ { disabled: downDisabled.value }
30
+ ])
31
+ const addtionClasses = computed(() => [
32
+ `${prefixCls}-changevalue`,
33
+ 'right',
34
+ { disabled: upDisabled.value }
35
+ ])
36
+ const wrapperClasses = computed(() => [`${prefixCls}-wrapper`])
37
+ const getChangeStyle = computed(() => ({
38
+ width: `${props.height}px`,
39
+ height: `${props.height}px`,
40
+ lineHeight: `${props.height}px`
41
+ }))
42
+ const inputStyle = computed(() => ({
43
+ ...props.numberStyle,
44
+ width: `${props.width}px`,
45
+ height: `${props.height}px`
46
+ }))
47
+
48
+ // 改变值时计算按钮状态
49
+ const changeVal = (val: number | string) => {
50
+ const numberVal = Number(val)
51
+ if (!isNaN(numberVal) || numberVal === 0) {
52
+ upDisabled.value = numberVal + props.step > Number(props.max)
53
+ downDisabled.value = numberVal - props.step < Number(props.min)
54
+ } else {
55
+ upDisabled.value = true
56
+ downDisabled.value = true
57
+ }
58
+ }
59
+
60
+ const setValue = (val: number) => {
61
+ currentValue.value = val
62
+ emit('input', val)
63
+ emit('update:modelValue', val)
64
+ }
65
+
66
+ const changeInput = (e: Event) => {
67
+ const target = e.target as HTMLInputElement
68
+ let val = Number(target.value.trim())
69
+ if (val < Number(props.min)) val = Number(props.min)
70
+ if (val > Number(props.max)) val = Number(props.max)
71
+ setValue(val)
72
+ target.value = String(currentValue.value)
73
+ emit('on-input', e)
74
+ emit('update:modelValue', val)
75
+ }
76
+
77
+ const change = (type: 'add' | 'reduce', disabled: boolean) => {
78
+ if (disabled) return
79
+ let val = Number(currentValue.value)
80
+ if (isNaN(val)) return
81
+ if (type === 'reduce') val -= props.step
82
+ else val += props.step
83
+ if (val < Number(props.min)) val = Number(props.min)
84
+ if (val > Number(props.max)) val = Number(props.max)
85
+ setValue(val)
86
+ }
87
+
88
+ watch(() => props.modelValue, val => {
89
+ currentValue.value = val
90
+ })
91
+
92
+ watch(currentValue, val => {
93
+ changeVal(val!)
94
+ })
95
+
96
+ onMounted(() => {
97
+ changeVal(currentValue.value!)
98
+ })
99
+
100
+ return () => (
101
+ <div class={classes.value} style={props.containerStyle}>
102
+ {/* 减按钮 */}
103
+ <div
104
+ class={reduceClasses.value}
105
+ style={getChangeStyle.value}
106
+ onClick={() => change('reduce', downDisabled.value)}
107
+ >
108
+ {slots.reduce ? slots.reduce() : '-'}
109
+ </div>
110
+
111
+ {/* 输入框 */}
112
+ <div class={wrapperClasses.value}>
113
+ <input
114
+ type="number"
115
+ style={inputStyle.value}
116
+ min={props.min}
117
+ max={props.max}
118
+ step={props.step}
119
+ value={currentValue.value}
120
+ autocomplete="off"
121
+ onInput={changeInput}
122
+ onFocus={changeInput}
123
+ onBlur={changeInput}
124
+ onChange={changeInput}
125
+ onKeyup={(e: KeyboardEvent) => {
126
+ if (e.key === 'ArrowUp') change('add', upDisabled.value)
127
+ if (e.key === 'ArrowDown') change('reduce', downDisabled.value)
128
+ }}
129
+ />
130
+ </div>
131
+
132
+ {/* 加按钮 */}
133
+ <div
134
+ class={addtionClasses.value}
135
+ style={getChangeStyle.value}
136
+ onClick={() => change('add', upDisabled.value)}
137
+ >
138
+ {slots.add ? slots.add() : '+'}
139
+ </div>
140
+ </div>
141
+ )
142
+ }
143
+ })
@@ -0,0 +1,10 @@
1
+ import type { App } from 'vue'
2
+ import Number from './Number'
3
+ Number.install = (app: App): void => {
4
+ app.component('Number', Number); // 注册全局组件
5
+ }
6
+ type IWithInstall<T> = T & { install(app: App): void };
7
+ const _Number=Number as IWithInstall<typeof Number>;
8
+ export default _Number
9
+ // export default Number
10
+ export type { NumberProps } from './types'
@@ -0,0 +1,13 @@
1
+ // Number/types.ts
2
+ export interface NumberProps {
3
+ modelValue?: number | string
4
+ min?: number | string
5
+ max?: number | string
6
+ step?: number
7
+ width?: number
8
+ height?: number
9
+ numberStyle?: Record<string, any>
10
+ containerStyle?: Record<string, any>
11
+ }
12
+
13
+ export type NumberEmits = 'update:modelValue' | 'input' | 'on-input'
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Created by admin on 2025/11/19.
3
+ */
4
+ import type { App } from 'vue'
5
+ import Picker from './picker'
6
+ Picker.install = (app: App): void => {
7
+ app.component('Picker', Picker); // 注册全局组件
8
+ }
9
+ type IWithInstall<T> = T & { install(app: App): void };
10
+ const _Picker=Picker as IWithInstall<typeof Picker>;
11
+ export default _Picker
12
+ export type { PickerProps } from './types'
@@ -0,0 +1,112 @@
1
+ // src/components/picker/picker.tsx
2
+ import { defineComponent, ref, computed, watch, provide, PropType } from 'vue'
3
+ import Popup from '../popup'
4
+ import AreaPicker from './area-picker/area-picker.vue'
5
+ import DatePicker from './date-picker/date-picker.vue'
6
+ import NormalPicker from './normal-picker/normal-picker.vue'
7
+ import type { PickerProps } from './types'
8
+
9
+ export type { PickerProps }
10
+
11
+ const prefixCls = 'dpzvc3-picker'
12
+ const LIST = ['DatePicker', 'AreaPicker', 'NormalPicker']
13
+
14
+ export default defineComponent({
15
+ name: 'Dpzvc3Picker',
16
+ components: { Popup, AreaPicker, DatePicker, NormalPicker },
17
+ props: {
18
+ type: {
19
+ type: String as PropType<PickerProps['type']>,
20
+ default: 'DatePicker',
21
+ validator: (val: string) => LIST.includes(val)
22
+ },
23
+ modelValue: { type: Boolean, default: false },
24
+ /** AreaPicker props */
25
+ addressValue: String,
26
+ styles: { type: Object as PropType<Record<string, any>>, default: () => ({}) },
27
+ valueSeparator: { type: String, default: '/' },
28
+ /** DatePicker props */
29
+ dateValue: String,
30
+ year: { type: [Boolean, Array] as PropType<boolean | any[]>, default: true },
31
+ month: { type: [Boolean, Array] as PropType<boolean | any[]>, default: true },
32
+ day: { type: [Boolean, Array] as PropType<boolean | any[]>, default: true },
33
+ /** NormalPicker props */
34
+ list: { type: Array as PropType<any[]>, default: () => [] },
35
+ initArr: { type: Array as PropType<any[]>, default: () => [] }
36
+ },
37
+ emits: ['update:modelValue', 'sure', 'cancle', 'normal-change'],
38
+ setup(props, { emit, slots }) {
39
+ const visible = ref(props.modelValue)
40
+
41
+ watch(() => props.modelValue, val => {
42
+ visible.value = val
43
+ })
44
+
45
+ watch(visible, val => {
46
+ emit('update:modelValue', val)
47
+ })
48
+
49
+ const wrapperClass = computed(() => [`${prefixCls}-wrapper`])
50
+ const contentClass = computed(() => [`${prefixCls}-content`])
51
+
52
+ const onOk = (val: any) => {
53
+ emit('update:modelValue', false)
54
+ emit('sure', val)
55
+ }
56
+
57
+ const onFail = () => {
58
+ emit('update:modelValue', false)
59
+ emit('cancle')
60
+ }
61
+
62
+ const onNormalChange = (val: any) => {
63
+ emit('normal-change', val)
64
+ }
65
+
66
+ provide('DpzVc3Picker', {
67
+ pickerOnOk: onOk,
68
+ pickeronFail: onFail,
69
+ pickerOnNormalChange: onNormalChange
70
+ })
71
+
72
+ return () => (
73
+ <Popup v-model={visible.value} height="284px" position="bottom">
74
+ <div class={wrapperClass.value}>
75
+ <div class={contentClass.value}>
76
+ {props.type === 'AreaPicker' && (
77
+ <AreaPicker
78
+ styles={props.styles}
79
+ address-value={props.addressValue}
80
+ value-separator={props.valueSeparator}
81
+ onOk={onOk}
82
+ onFail={onFail}
83
+ />
84
+ )}
85
+
86
+ {props.type === 'DatePicker' && (
87
+ <DatePicker
88
+ year={props.year}
89
+ month={props.month}
90
+ day={props.day}
91
+ date-value={props.dateValue}
92
+ value-separator={props.valueSeparator}
93
+ onOk={onOk}
94
+ onFail={onFail}
95
+ />
96
+ )}
97
+
98
+ {props.type === 'NormalPicker' && (
99
+ <NormalPicker
100
+ list={props.list}
101
+ init-arr={props.initArr}
102
+ onOk={onOk}
103
+ onFail={onFail}
104
+ onScroll={onNormalChange}
105
+ />
106
+ )}
107
+ </div>
108
+ </div>
109
+ </Popup>
110
+ )
111
+ }
112
+ })
@@ -0,0 +1,17 @@
1
+ // src/components/picker/types.ts
2
+ export interface PickerProps {
3
+ type?: 'DatePicker' | 'AreaPicker' | 'NormalPicker'
4
+ modelValue?: boolean
5
+ /** AreaPicker */
6
+ addressValue?: string
7
+ styles?: Record<string, any>
8
+ valueSeparator?: string
9
+ /** DatePicker */
10
+ year?: boolean | any[]
11
+ month?: boolean | any[]
12
+ day?: boolean | any[]
13
+ dateValue?: string
14
+ /** NormalPicker */
15
+ list?: any[]
16
+ initArr?: any[]
17
+ }
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Created by admin on 2025/11/19.
3
+ */
4
+ import type { App } from 'vue'
5
+ import Popup from './popup'
6
+ Popup.install = (app: App): void => {
7
+ app.component('Popup', Popup); // 注册全局组件
8
+ }
9
+ type IWithInstall<T> = T & { install(app: App): void };
10
+ const _Popup=Popup as IWithInstall<typeof Popup>;
11
+ export default _Popup
12
+ export type { PopupProps } from './types'
@@ -0,0 +1,16 @@
1
+ // src/components/popup/popup.d.ts
2
+
3
+ import type { App } from 'vue'
4
+ import type { PopupProps } from './types' // 引入同级 types.ts 中的 BadgeProps
5
+
6
+ /** Badge 组件实例类型,带 install 方法 */
7
+ declare const Popup: {
8
+ /** Vue 组件本身 */
9
+ new (): any
10
+ /** props 类型引用 */
11
+ __props?: PopupProps
12
+ /** install 方法,用于全量注册 */
13
+ install(app: App): void
14
+ }
15
+
16
+ export default Badge