@smallwei/avue 3.8.1 → 3.8.3

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 (376) hide show
  1. package/README.md +206 -86
  2. package/dist/avue.js +37301 -0
  3. package/dist/avue.js.map +1 -0
  4. package/dist/avue.min.js +6 -0
  5. package/dist/avue.min.mjs +2 -0
  6. package/dist/avue.mjs +2 -0
  7. package/dist/index.css +1 -0
  8. package/es/avue.min.mjs +2 -0
  9. package/es/avue.min.ts +2 -0
  10. package/es/avue.mjs +2 -0
  11. package/es/avue.ts +2 -0
  12. package/es/core/create.mjs +8 -0
  13. package/es/core/create.ts +16 -0
  14. package/es/core/dataformat.mjs +184 -0
  15. package/es/core/dataformat.ts +190 -0
  16. package/es/core/detail.mjs +74 -0
  17. package/es/core/detail.ts +81 -0
  18. package/es/core/dic.mjs +213 -0
  19. package/es/core/dic.ts +235 -0
  20. package/es/core/locale.mjs +8 -0
  21. package/es/core/locale.ts +9 -0
  22. package/es/core/packages.mjs +61 -0
  23. package/es/core/packages.ts +62 -0
  24. package/es/core/slot.mjs +32 -0
  25. package/es/core/slot.ts +30 -0
  26. package/es/global/variable.mjs +80 -0
  27. package/es/global/variable.ts +84 -0
  28. package/es/icon.mjs +9 -0
  29. package/es/icon.ts +11 -0
  30. package/es/index.mjs +127 -0
  31. package/es/index.ts +177 -0
  32. package/es/locale/browser/en.mjs +288 -0
  33. package/es/locale/browser/zh-cn.mjs +288 -0
  34. package/es/locale/browser/zh.mjs +288 -0
  35. package/es/locale/index.mjs +141 -0
  36. package/es/locale/index.ts +196 -0
  37. package/es/locale/lang/en.mjs +282 -0
  38. package/es/locale/lang/en.ts +282 -0
  39. package/es/locale/lang/zh-cn.mjs +282 -0
  40. package/es/locale/lang/zh-cn.ts +282 -0
  41. package/es/locale/lang/zh.mjs +282 -0
  42. package/es/locale/lang/zh.ts +282 -0
  43. package/es/packages/core/common/event.mjs +58 -0
  44. package/es/packages/core/common/event.ts +56 -0
  45. package/es/packages/core/common/init.mjs +134 -0
  46. package/es/packages/core/common/init.ts +133 -0
  47. package/es/packages/core/common/props.mjs +239 -0
  48. package/es/packages/core/common/props.ts +240 -0
  49. package/es/packages/core/components/dialog-form/index.mjs +29 -0
  50. package/es/packages/core/components/dialog-form/index.ts +29 -0
  51. package/es/packages/core/components/dialog-form/index.vue +108 -0
  52. package/es/packages/core/components/form/custom.mjs +41 -0
  53. package/es/packages/core/components/form/custom.ts +41 -0
  54. package/es/packages/core/components/form/index.vue +176 -0
  55. package/es/packages/core/components/icon/index.vue +37 -0
  56. package/es/packages/core/components/image-preview/index.mjs +34 -0
  57. package/es/packages/core/components/image-preview/index.ts +37 -0
  58. package/es/packages/core/components/image-preview/index.vue +215 -0
  59. package/es/packages/core/directive/contextmenu.mjs +92 -0
  60. package/es/packages/core/directive/contextmenu.ts +103 -0
  61. package/es/packages/core/directive/permission.mjs +19 -0
  62. package/es/packages/core/directive/permission.ts +18 -0
  63. package/es/packages/data/box/index.vue +66 -0
  64. package/es/packages/data/card/index.vue +62 -0
  65. package/es/packages/data/cardText/index.vue +56 -0
  66. package/es/packages/data/countdown/index.vue +81 -0
  67. package/es/packages/data/dashboard/index.vue +72 -0
  68. package/es/packages/data/display/index.vue +63 -0
  69. package/es/packages/data/icons/index.vue +68 -0
  70. package/es/packages/data/imgText/index.vue +72 -0
  71. package/es/packages/data/list/index.vue +69 -0
  72. package/es/packages/data/notice/index.vue +63 -0
  73. package/es/packages/data/operaText/index.vue +62 -0
  74. package/es/packages/data/panel/index.vue +62 -0
  75. package/es/packages/data/pay/index.vue +92 -0
  76. package/es/packages/data/price/index.vue +55 -0
  77. package/es/packages/data/product/index.vue +106 -0
  78. package/es/packages/data/profile/index.vue +91 -0
  79. package/es/packages/data/progress/index.vue +64 -0
  80. package/es/packages/data/rank/index.vue +92 -0
  81. package/es/packages/data/rotate/index.vue +69 -0
  82. package/es/packages/data/statistic/index.vue +71 -0
  83. package/es/packages/data/tabs/index.vue +64 -0
  84. package/es/packages/data/task/index.vue +82 -0
  85. package/es/packages/data/weather/index.vue +103 -0
  86. package/es/packages/element-plus/array/index.vue +115 -0
  87. package/es/packages/element-plus/article/index.vue +73 -0
  88. package/es/packages/element-plus/card/index.vue +103 -0
  89. package/es/packages/element-plus/cascader/index.vue +132 -0
  90. package/es/packages/element-plus/chat/index.vue +513 -0
  91. package/es/packages/element-plus/checkbox/index.vue +84 -0
  92. package/es/packages/element-plus/comment/index.vue +76 -0
  93. package/es/packages/element-plus/count-up/index.vue +107 -0
  94. package/es/packages/element-plus/crud/column/column-default.vue +128 -0
  95. package/es/packages/element-plus/crud/column/column-dynamic.vue +86 -0
  96. package/es/packages/element-plus/crud/column/column-menu.vue +267 -0
  97. package/es/packages/element-plus/crud/column/column-slot.vue +348 -0
  98. package/es/packages/element-plus/crud/column/column.vue +119 -0
  99. package/es/packages/element-plus/crud/column/menu.vue +78 -0
  100. package/es/packages/element-plus/crud/config.mjs +74 -0
  101. package/es/packages/element-plus/crud/config.ts +74 -0
  102. package/es/packages/element-plus/crud/dialog/dialog-column.vue +102 -0
  103. package/es/packages/element-plus/crud/dialog/dialog-excel.vue +204 -0
  104. package/es/packages/element-plus/crud/dialog/dialog-filter.vue +159 -0
  105. package/es/packages/element-plus/crud/dialog/dialog-form.vue +352 -0
  106. package/es/packages/element-plus/crud/grid/index.vue +271 -0
  107. package/es/packages/element-plus/crud/grid/item.vue +39 -0
  108. package/es/packages/element-plus/crud/index.vue +1018 -0
  109. package/es/packages/element-plus/crud/menu/header-menu.vue +175 -0
  110. package/es/packages/element-plus/crud/menu/header-search.vue +228 -0
  111. package/es/packages/element-plus/crud/menu/table-page.vue +108 -0
  112. package/es/packages/element-plus/date/index.vue +81 -0
  113. package/es/packages/element-plus/draggable/index.vue +444 -0
  114. package/es/packages/element-plus/dynamic/index.vue +353 -0
  115. package/es/packages/element-plus/flow/index.vue +339 -0
  116. package/es/packages/element-plus/flow/node.vue +84 -0
  117. package/es/packages/element-plus/form/config.mjs +6 -0
  118. package/es/packages/element-plus/form/config.ts +6 -0
  119. package/es/packages/element-plus/form/index.vue +954 -0
  120. package/es/packages/element-plus/form/menu.vue +63 -0
  121. package/es/packages/element-plus/group/index.vue +90 -0
  122. package/es/packages/element-plus/input/index.vue +1264 -0
  123. package/es/packages/element-plus/input-color/index.vue +70 -0
  124. package/es/packages/element-plus/input-cron/index.vue +363 -0
  125. package/es/packages/element-plus/input-icon/index.vue +143 -0
  126. package/es/packages/element-plus/input-map/index.vue +311 -0
  127. package/es/packages/element-plus/input-number/index.vue +91 -0
  128. package/es/packages/element-plus/input-table/index.vue +279 -0
  129. package/es/packages/element-plus/input-tag/index.vue +79 -0
  130. package/es/packages/element-plus/input-tree/index.vue +194 -0
  131. package/es/packages/element-plus/license/index.vue +155 -0
  132. package/es/packages/element-plus/login/index.vue +203 -0
  133. package/es/packages/element-plus/mention/index.vue +117 -0
  134. package/es/packages/element-plus/radio/index.vue +38 -0
  135. package/es/packages/element-plus/rate/index.vue +51 -0
  136. package/es/packages/element-plus/search/index.vue +129 -0
  137. package/es/packages/element-plus/select/index.vue +292 -0
  138. package/es/packages/element-plus/sign/index.vue +230 -0
  139. package/es/packages/element-plus/slider/index.vue +66 -0
  140. package/es/packages/element-plus/switch/index.vue +72 -0
  141. package/es/packages/element-plus/tabs/index.vue +62 -0
  142. package/es/packages/element-plus/text-ellipsis/index.vue +104 -0
  143. package/es/packages/element-plus/time/index.vue +81 -0
  144. package/es/packages/element-plus/title/index.vue +30 -0
  145. package/es/packages/element-plus/tree/index.vue +460 -0
  146. package/es/packages/element-plus/upload/index.vue +728 -0
  147. package/es/packages/element-plus/verify/index.vue +62 -0
  148. package/es/packages/element-plus/video/index.vue +90 -0
  149. package/es/plugin/ali/index.mjs +4 -0
  150. package/es/plugin/ali/index.ts +6 -0
  151. package/es/plugin/clipboard/index.mjs +61 -0
  152. package/es/plugin/clipboard/index.ts +67 -0
  153. package/es/plugin/export/_blob.mjs +151 -0
  154. package/es/plugin/export/_blob.ts +176 -0
  155. package/es/plugin/export/_export2Excel.mjs +141 -0
  156. package/es/plugin/export/_export2Excel.ts +166 -0
  157. package/es/plugin/export/index.mjs +263 -0
  158. package/es/plugin/export/index.ts +274 -0
  159. package/es/plugin/logs/index.mjs +46 -0
  160. package/es/plugin/logs/index.ts +66 -0
  161. package/es/plugin/print/index.mjs +145 -0
  162. package/es/plugin/print/index.ts +155 -0
  163. package/es/plugin/qiniu/index.mjs +78 -0
  164. package/es/plugin/qiniu/index.ts +88 -0
  165. package/es/plugin/screenshot/index.mjs +8 -0
  166. package/es/plugin/screenshot/index.ts +9 -0
  167. package/es/plugin/video/index.mjs +52 -0
  168. package/es/plugin/video/index.ts +60 -0
  169. package/es/plugin/watermark/index.mjs +114 -0
  170. package/es/plugin/watermark/index.ts +127 -0
  171. package/es/plugin/watermark/watermark.mjs +109 -0
  172. package/es/plugin/watermark/watermark.ts +121 -0
  173. package/es/ui/data/index.mjs +49 -0
  174. package/es/ui/data/index.ts +51 -0
  175. package/es/ui/element-plus/index.mjs +87 -0
  176. package/es/ui/element-plus/index.ts +89 -0
  177. package/es/ui/index.mjs +4 -0
  178. package/es/ui/index.ts +6 -0
  179. package/es/utils/bem.mjs +29 -0
  180. package/es/utils/bem.ts +36 -0
  181. package/es/utils/mock.mjs +137 -0
  182. package/es/utils/mock.ts +151 -0
  183. package/es/utils/util.mjs +370 -0
  184. package/es/utils/util.ts +392 -0
  185. package/es/utils/validate.mjs +18 -0
  186. package/es/utils/validate.ts +23 -0
  187. package/es/version.mjs +1 -0
  188. package/es/version.ts +1 -0
  189. package/lib/avue.js +11 -31398
  190. package/lib/avue.min.js +11 -6
  191. package/lib/avue.min.ts +2 -0
  192. package/lib/avue.ts +2 -0
  193. package/lib/core/create.js +14 -0
  194. package/lib/core/create.ts +16 -0
  195. package/lib/core/dataformat.js +194 -0
  196. package/lib/core/dataformat.ts +190 -0
  197. package/lib/core/detail.js +81 -0
  198. package/lib/core/detail.ts +81 -0
  199. package/lib/core/dic.js +220 -0
  200. package/lib/core/dic.ts +235 -0
  201. package/lib/core/locale.js +10 -0
  202. package/lib/core/locale.ts +9 -0
  203. package/lib/core/packages.js +66 -0
  204. package/lib/core/packages.ts +62 -0
  205. package/lib/core/slot.js +34 -0
  206. package/lib/core/slot.ts +30 -0
  207. package/lib/global/variable.js +83 -0
  208. package/lib/global/variable.ts +84 -0
  209. package/lib/icon.js +44 -0
  210. package/lib/icon.ts +11 -0
  211. package/lib/index.css +1 -1
  212. package/lib/index.js +134 -0
  213. package/lib/index.ts +177 -0
  214. package/lib/locale/browser/en.js +288 -0
  215. package/lib/locale/browser/zh-cn.js +288 -0
  216. package/lib/locale/browser/zh.js +288 -0
  217. package/lib/locale/index.js +153 -47
  218. package/lib/locale/index.ts +196 -0
  219. package/lib/locale/lang/en.js +284 -100
  220. package/lib/locale/lang/en.ts +282 -0
  221. package/lib/locale/lang/zh-cn.js +284 -0
  222. package/lib/locale/lang/zh-cn.ts +282 -0
  223. package/lib/locale/lang/zh.js +284 -100
  224. package/lib/locale/lang/zh.ts +282 -0
  225. package/lib/packages/core/common/event.js +61 -0
  226. package/lib/packages/core/common/event.ts +56 -0
  227. package/lib/packages/core/common/init.js +140 -0
  228. package/lib/packages/core/common/init.ts +133 -0
  229. package/lib/packages/core/common/props.js +245 -0
  230. package/lib/packages/core/common/props.ts +240 -0
  231. package/lib/packages/core/components/dialog-form/index.js +35 -0
  232. package/lib/packages/core/components/dialog-form/index.ts +29 -0
  233. package/lib/packages/core/components/dialog-form/index.vue +108 -0
  234. package/lib/packages/core/components/form/custom.js +43 -0
  235. package/lib/packages/core/components/form/custom.ts +41 -0
  236. package/lib/packages/core/components/form/index.vue +176 -0
  237. package/lib/packages/core/components/icon/index.vue +37 -0
  238. package/lib/packages/core/components/image-preview/index.js +40 -0
  239. package/lib/packages/core/components/image-preview/index.ts +37 -0
  240. package/lib/packages/core/components/image-preview/index.vue +215 -0
  241. package/lib/packages/core/directive/contextmenu.js +94 -0
  242. package/lib/packages/core/directive/contextmenu.ts +103 -0
  243. package/lib/packages/core/directive/permission.js +21 -0
  244. package/lib/packages/core/directive/permission.ts +18 -0
  245. package/lib/packages/data/box/index.vue +66 -0
  246. package/lib/packages/data/card/index.vue +62 -0
  247. package/lib/packages/data/cardText/index.vue +56 -0
  248. package/lib/packages/data/countdown/index.vue +81 -0
  249. package/lib/packages/data/dashboard/index.vue +72 -0
  250. package/lib/packages/data/display/index.vue +63 -0
  251. package/lib/packages/data/icons/index.vue +68 -0
  252. package/lib/packages/data/imgText/index.vue +72 -0
  253. package/lib/packages/data/list/index.vue +69 -0
  254. package/lib/packages/data/notice/index.vue +63 -0
  255. package/lib/packages/data/operaText/index.vue +62 -0
  256. package/lib/packages/data/panel/index.vue +62 -0
  257. package/lib/packages/data/pay/index.vue +92 -0
  258. package/lib/packages/data/price/index.vue +55 -0
  259. package/lib/packages/data/product/index.vue +106 -0
  260. package/lib/packages/data/profile/index.vue +91 -0
  261. package/lib/packages/data/progress/index.vue +64 -0
  262. package/lib/packages/data/rank/index.vue +92 -0
  263. package/lib/packages/data/rotate/index.vue +69 -0
  264. package/lib/packages/data/statistic/index.vue +71 -0
  265. package/lib/packages/data/tabs/index.vue +64 -0
  266. package/lib/packages/data/task/index.vue +82 -0
  267. package/lib/packages/data/weather/index.vue +103 -0
  268. package/lib/packages/element-plus/array/index.vue +115 -0
  269. package/lib/packages/element-plus/article/index.vue +73 -0
  270. package/lib/packages/element-plus/card/index.vue +103 -0
  271. package/lib/packages/element-plus/cascader/index.vue +132 -0
  272. package/lib/packages/element-plus/chat/index.vue +513 -0
  273. package/lib/packages/element-plus/checkbox/index.vue +84 -0
  274. package/lib/packages/element-plus/comment/index.vue +76 -0
  275. package/lib/packages/element-plus/count-up/index.vue +107 -0
  276. package/lib/packages/element-plus/crud/column/column-default.vue +128 -0
  277. package/lib/packages/element-plus/crud/column/column-dynamic.vue +86 -0
  278. package/lib/packages/element-plus/crud/column/column-menu.vue +267 -0
  279. package/lib/packages/element-plus/crud/column/column-slot.vue +348 -0
  280. package/lib/packages/element-plus/crud/column/column.vue +119 -0
  281. package/lib/packages/element-plus/crud/column/menu.vue +78 -0
  282. package/lib/packages/element-plus/crud/config.js +76 -0
  283. package/lib/packages/element-plus/crud/config.ts +74 -0
  284. package/lib/packages/element-plus/crud/dialog/dialog-column.vue +102 -0
  285. package/lib/packages/element-plus/crud/dialog/dialog-excel.vue +204 -0
  286. package/lib/packages/element-plus/crud/dialog/dialog-filter.vue +159 -0
  287. package/lib/packages/element-plus/crud/dialog/dialog-form.vue +352 -0
  288. package/lib/packages/element-plus/crud/grid/index.vue +271 -0
  289. package/lib/packages/element-plus/crud/grid/item.vue +39 -0
  290. package/lib/packages/element-plus/crud/index.vue +1018 -0
  291. package/lib/packages/element-plus/crud/menu/header-menu.vue +175 -0
  292. package/lib/packages/element-plus/crud/menu/header-search.vue +228 -0
  293. package/lib/packages/element-plus/crud/menu/table-page.vue +108 -0
  294. package/lib/packages/element-plus/date/index.vue +81 -0
  295. package/lib/packages/element-plus/draggable/index.vue +444 -0
  296. package/lib/packages/element-plus/dynamic/index.vue +353 -0
  297. package/lib/packages/element-plus/flow/index.vue +339 -0
  298. package/lib/packages/element-plus/flow/node.vue +84 -0
  299. package/lib/packages/element-plus/form/config.js +8 -0
  300. package/lib/packages/element-plus/form/config.ts +6 -0
  301. package/lib/packages/element-plus/form/index.vue +954 -0
  302. package/lib/packages/element-plus/form/menu.vue +63 -0
  303. package/lib/packages/element-plus/group/index.vue +90 -0
  304. package/lib/packages/element-plus/input/index.vue +1264 -0
  305. package/lib/packages/element-plus/input-color/index.vue +70 -0
  306. package/lib/packages/element-plus/input-cron/index.vue +363 -0
  307. package/lib/packages/element-plus/input-icon/index.vue +143 -0
  308. package/lib/packages/element-plus/input-map/index.vue +311 -0
  309. package/lib/packages/element-plus/input-number/index.vue +91 -0
  310. package/lib/packages/element-plus/input-table/index.vue +279 -0
  311. package/lib/packages/element-plus/input-tag/index.vue +79 -0
  312. package/lib/packages/element-plus/input-tree/index.vue +194 -0
  313. package/lib/packages/element-plus/license/index.vue +155 -0
  314. package/lib/packages/element-plus/login/index.vue +203 -0
  315. package/lib/packages/element-plus/mention/index.vue +117 -0
  316. package/lib/packages/element-plus/radio/index.vue +38 -0
  317. package/lib/packages/element-plus/rate/index.vue +51 -0
  318. package/lib/packages/element-plus/search/index.vue +129 -0
  319. package/lib/packages/element-plus/select/index.vue +292 -0
  320. package/lib/packages/element-plus/sign/index.vue +230 -0
  321. package/lib/packages/element-plus/slider/index.vue +66 -0
  322. package/lib/packages/element-plus/switch/index.vue +72 -0
  323. package/lib/packages/element-plus/tabs/index.vue +62 -0
  324. package/lib/packages/element-plus/text-ellipsis/index.vue +104 -0
  325. package/lib/packages/element-plus/time/index.vue +81 -0
  326. package/lib/packages/element-plus/title/index.vue +30 -0
  327. package/lib/packages/element-plus/tree/index.vue +460 -0
  328. package/lib/packages/element-plus/upload/index.vue +728 -0
  329. package/lib/packages/element-plus/verify/index.vue +62 -0
  330. package/lib/packages/element-plus/video/index.vue +90 -0
  331. package/lib/plugin/ali/index.js +8 -0
  332. package/lib/plugin/ali/index.ts +6 -0
  333. package/lib/plugin/clipboard/index.js +64 -0
  334. package/lib/plugin/clipboard/index.ts +67 -0
  335. package/lib/plugin/export/_blob.js +151 -0
  336. package/lib/plugin/export/_blob.ts +176 -0
  337. package/lib/plugin/export/_export2Excel.js +145 -0
  338. package/lib/plugin/export/_export2Excel.ts +166 -0
  339. package/lib/plugin/export/index.js +268 -0
  340. package/lib/plugin/export/index.ts +274 -0
  341. package/lib/plugin/logs/index.js +48 -0
  342. package/lib/plugin/logs/index.ts +66 -0
  343. package/lib/plugin/print/index.js +147 -0
  344. package/lib/plugin/print/index.ts +155 -0
  345. package/lib/plugin/qiniu/index.js +82 -0
  346. package/lib/plugin/qiniu/index.ts +88 -0
  347. package/lib/plugin/screenshot/index.js +14 -0
  348. package/lib/plugin/screenshot/index.ts +9 -0
  349. package/lib/plugin/video/index.js +55 -0
  350. package/lib/plugin/video/index.ts +60 -0
  351. package/lib/plugin/watermark/index.js +121 -0
  352. package/lib/plugin/watermark/index.ts +127 -0
  353. package/lib/plugin/watermark/watermark.js +111 -0
  354. package/lib/plugin/watermark/watermark.ts +121 -0
  355. package/lib/ui/data/index.js +54 -0
  356. package/lib/ui/data/index.ts +51 -0
  357. package/lib/ui/element-plus/index.js +92 -0
  358. package/lib/ui/element-plus/index.ts +89 -0
  359. package/lib/ui/index.js +9 -0
  360. package/lib/ui/index.ts +6 -0
  361. package/lib/utils/bem.js +31 -0
  362. package/lib/utils/bem.ts +36 -0
  363. package/lib/utils/mock.js +142 -0
  364. package/lib/utils/mock.ts +151 -0
  365. package/lib/utils/util.js +403 -0
  366. package/lib/utils/util.ts +392 -0
  367. package/lib/utils/validate.js +21 -0
  368. package/lib/utils/validate.ts +23 -0
  369. package/lib/version.js +4 -0
  370. package/lib/version.ts +1 -0
  371. package/package.json +24 -11
  372. package/types/index.d.ts +141 -0
  373. package/types/shims-aliases.d.ts +4 -0
  374. package/types/shims-vue.d.ts +6 -0
  375. package/lib/avue.js.map +0 -1
  376. package/lib/locale/format.js +0 -44
@@ -0,0 +1,220 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.sendDic = exports.loadLocalDic = exports.loadDic = exports.loadCascaderDic = void 0;
4
+ const util_js_1 = require("../utils/util.js");
5
+ const validate_js_1 = require("../utils/validate.js");
6
+ const variable_js_1 = require("../global/variable.js");
7
+ const key = 'key';
8
+ function getDataType(list = [], props = {}, type) {
9
+ const valueKey = props.value || variable_js_1.DIC_PROPS.value;
10
+ const childrenKey = props.children || variable_js_1.DIC_PROPS.children;
11
+ list.forEach((ele) => {
12
+ ele[valueKey] = (0, util_js_1.detailDataType)(ele[valueKey], type);
13
+ if (ele[childrenKey])
14
+ getDataType(ele[childrenKey], props, type);
15
+ });
16
+ return list;
17
+ }
18
+ function getResData(data, props, dataType) {
19
+ const bind = props.res;
20
+ let res = data;
21
+ const deep = data.data;
22
+ if (bind) {
23
+ res = (0, util_js_1.getAsVal)(res, bind);
24
+ }
25
+ else if (deep) {
26
+ res = Array.isArray(deep) ? deep : [deep];
27
+ }
28
+ if (dataType)
29
+ res = getDataType(res, props, dataType);
30
+ return res;
31
+ }
32
+ const loadCascaderDic = (columnOption, safe) => {
33
+ return new Promise((resolve) => {
34
+ const list = [];
35
+ const result = {};
36
+ const columnList = columnOption.filter((ele) => ele.parentProp);
37
+ safe.data.forEach((ele, index) => {
38
+ if (!safe.cascaderDIC[index])
39
+ safe.cascaderDIC[index] = {};
40
+ columnList.forEach((column) => {
41
+ if (column.hide !== true && column.dicFlag !== false) {
42
+ list.push(new Promise((resolve) => {
43
+ if (ele[column.parentProp]) {
44
+ (0, exports.sendDic)({
45
+ url: column.dicUrl,
46
+ props: column.props,
47
+ method: column.dicMethod,
48
+ headers: column.dicHeaders,
49
+ formatter: column.dicFormatter,
50
+ query: column.dicQuery,
51
+ dataType: column.dataType,
52
+ form: ele,
53
+ value: ele[column.parentProp],
54
+ }, safe).then((res) => {
55
+ const obj = {
56
+ prop: column.prop,
57
+ data: res,
58
+ index,
59
+ };
60
+ safe.cascaderDIC[index][obj.prop] = obj.data;
61
+ resolve(obj);
62
+ });
63
+ }
64
+ else {
65
+ const obj = {
66
+ prop: column.prop,
67
+ data: [],
68
+ index,
69
+ };
70
+ safe.cascaderDIC[index][obj.prop] = obj.data;
71
+ resolve(obj);
72
+ }
73
+ }));
74
+ }
75
+ });
76
+ });
77
+ Promise.all(list).then((data) => {
78
+ data.forEach((ele) => {
79
+ if (!result[ele.index])
80
+ result[ele.index] = {};
81
+ result[ele.index][ele.prop] = ele.data;
82
+ });
83
+ resolve(result);
84
+ });
85
+ });
86
+ };
87
+ exports.loadCascaderDic = loadCascaderDic;
88
+ const loadDic = (option, safe) => {
89
+ return new Promise((resolve) => {
90
+ const list = [];
91
+ const result = {};
92
+ let notList = [];
93
+ const nameList = [];
94
+ const column = option.column || [];
95
+ column.forEach((ele) => {
96
+ const url = ele.dicUrl;
97
+ const prop = ele.prop;
98
+ const parentProp = ele.parentProp;
99
+ notList = notList.concat(ele.cascader || []);
100
+ const flag = ele.dicFlag === false || ele.lazy === true || notList.includes(prop);
101
+ if (url && !parentProp && !flag) {
102
+ list.push(new Promise((resolve) => {
103
+ (0, exports.sendDic)({
104
+ url,
105
+ name: prop,
106
+ method: ele.dicMethod,
107
+ headers: ele.dicHeaders,
108
+ formatter: ele.dicFormatter,
109
+ props: ele.props,
110
+ dataType: ele.dataType,
111
+ query: ele.dicQuery,
112
+ }, safe).then((res) => {
113
+ safe.DIC[prop] = res;
114
+ resolve(res);
115
+ });
116
+ }));
117
+ nameList.push(prop);
118
+ }
119
+ });
120
+ Promise.all(list).then((res) => {
121
+ nameList.forEach((ele, index) => {
122
+ result[ele] = res[index];
123
+ });
124
+ resolve(result);
125
+ });
126
+ });
127
+ };
128
+ exports.loadDic = loadDic;
129
+ const loadLocalDic = (option, safe) => {
130
+ const columnData = {};
131
+ const optionData = option.dicData || {};
132
+ option.column.forEach((ele) => {
133
+ const dic = ele.dicData;
134
+ const prop = ele.prop;
135
+ if (dic instanceof Function) {
136
+ const dicResult = dic(ele);
137
+ if (dicResult instanceof Promise) {
138
+ dicResult.then((res) => {
139
+ safe.DIC[prop] = getDataType(res, ele.props, ele.dataType);
140
+ });
141
+ }
142
+ else {
143
+ columnData[prop] = getDataType(dicResult, ele.props, ele.dataType);
144
+ }
145
+ }
146
+ else if (dic instanceof Array) {
147
+ columnData[prop] = getDataType(dic, ele.props, ele.dataType);
148
+ }
149
+ });
150
+ const result = { ...optionData, ...columnData };
151
+ Object.keys(result).forEach((ele) => {
152
+ safe.DIC[ele] = result[ele];
153
+ });
154
+ return result;
155
+ };
156
+ exports.loadLocalDic = loadLocalDic;
157
+ const sendDic = (params, safe) => {
158
+ let { url, query, method, props, formatter, headers, value, column = {}, form = {}, dataType, } = params;
159
+ url = column.dicUrl || url;
160
+ method = (column.dicMethod || method || 'get').toLowerCase();
161
+ headers = column.dicHeaders || headers || {};
162
+ query = column.dicQuery || query || {};
163
+ formatter = column.dicFormatter || formatter;
164
+ props = column.props || props || {};
165
+ const list = url.match(/[^\{\}]+(?=\})/g) || [];
166
+ list.forEach((ele) => {
167
+ let result = ele === key ? value : form[ele];
168
+ if ((0, validate_js_1.validatenull)(result))
169
+ result = '';
170
+ url = url.replace(`{{${ele}}}`, result);
171
+ });
172
+ const getKey = (data) => {
173
+ const result = {};
174
+ Object.keys(data).forEach((ele) => {
175
+ const eleKey = data[ele];
176
+ if (typeof eleKey === 'string' && eleKey.match(/\{{|}}/g)) {
177
+ const prop = eleKey.replace(/\{{|}}/g, '');
178
+ result[ele] = prop == key ? value : form[prop];
179
+ }
180
+ else {
181
+ result[ele] = eleKey;
182
+ }
183
+ });
184
+ return result;
185
+ };
186
+ return new Promise((resolve, reject) => {
187
+ if (!url)
188
+ resolve([]);
189
+ const callback = (res) => {
190
+ let currentList = [];
191
+ res = res.data || {};
192
+ if (typeof formatter === 'function') {
193
+ currentList = formatter(res, form);
194
+ }
195
+ else {
196
+ currentList = getResData(res, props, dataType);
197
+ }
198
+ resolve(currentList);
199
+ };
200
+ const getData = () => {
201
+ const data = getKey(query);
202
+ if (method == 'get')
203
+ return { params: data };
204
+ return { data };
205
+ };
206
+ safe
207
+ .$axios(Object.assign({
208
+ url,
209
+ method,
210
+ headers: getKey(headers),
211
+ }, getData()))
212
+ .then(function (res) {
213
+ callback(res);
214
+ })
215
+ .catch((err) => {
216
+ reject(err);
217
+ });
218
+ });
219
+ };
220
+ exports.sendDic = sendDic;
@@ -0,0 +1,235 @@
1
+ import { detailDataType, getAsVal } from '../utils/util';
2
+ import { validatenull } from '../utils/validate';
3
+ import { DIC_PROPS } from '../global/variable';
4
+
5
+ const key = 'key';
6
+
7
+ function getDataType(list: Record<string, any>[] = [], props: Record<string, any> = {}, type: any) {
8
+ const valueKey = props.value || DIC_PROPS.value;
9
+ const childrenKey = props.children || DIC_PROPS.children;
10
+ list.forEach((ele) => {
11
+ ele[valueKey] = detailDataType(ele[valueKey], type);
12
+ if (ele[childrenKey]) getDataType(ele[childrenKey], props, type);
13
+ });
14
+ return list;
15
+ }
16
+
17
+ function getResData(data: any, props: Record<string, any>, dataType: any) {
18
+ const bind = props.res;
19
+ let res = data;
20
+ const deep = data.data;
21
+ if (bind) {
22
+ res = getAsVal(res, bind);
23
+ } else if (deep) {
24
+ res = Array.isArray(deep) ? deep : [deep];
25
+ }
26
+ if (dataType) res = getDataType(res, props, dataType);
27
+ return res;
28
+ }
29
+
30
+ export const loadCascaderDic = (columnOption: Record<string, any>[], safe: any) => {
31
+ return new Promise<Record<string, any>>((resolve) => {
32
+ const list: Promise<any>[] = [];
33
+ const result: Record<string, any> = {};
34
+ const columnList = columnOption.filter((ele) => ele.parentProp);
35
+ safe.data.forEach((ele: any, index: number) => {
36
+ if (!safe.cascaderDIC[index]) safe.cascaderDIC[index] = {};
37
+ columnList.forEach((column) => {
38
+ if (column.hide !== true && column.dicFlag !== false) {
39
+ list.push(
40
+ new Promise((resolve) => {
41
+ if (ele[column.parentProp]) {
42
+ sendDic(
43
+ {
44
+ url: column.dicUrl,
45
+ props: column.props,
46
+ method: column.dicMethod,
47
+ headers: column.dicHeaders,
48
+ formatter: column.dicFormatter,
49
+ query: column.dicQuery,
50
+ dataType: column.dataType,
51
+ form: ele,
52
+ value: ele[column.parentProp],
53
+ },
54
+ safe
55
+ ).then((res) => {
56
+ const obj = {
57
+ prop: column.prop,
58
+ data: res,
59
+ index,
60
+ };
61
+ safe.cascaderDIC[index][obj.prop] = obj.data;
62
+ resolve(obj);
63
+ });
64
+ } else {
65
+ const obj = {
66
+ prop: column.prop,
67
+ data: [],
68
+ index,
69
+ };
70
+ safe.cascaderDIC[index][obj.prop] = obj.data;
71
+ resolve(obj);
72
+ }
73
+ })
74
+ );
75
+ }
76
+ });
77
+ });
78
+ Promise.all(list).then((data: any[]) => {
79
+ data.forEach((ele) => {
80
+ if (!result[ele.index]) result[ele.index] = {};
81
+ result[ele.index][ele.prop] = ele.data;
82
+ });
83
+ resolve(result);
84
+ });
85
+ });
86
+ };
87
+
88
+ export const loadDic = (option: Record<string, any>, safe: any) => {
89
+ return new Promise<Record<string, any>>((resolve) => {
90
+ const list: Promise<any>[] = [];
91
+ const result: Record<string, any> = {};
92
+ let notList: string[] = [];
93
+ const nameList: string[] = [];
94
+ const column = option.column || [];
95
+ column.forEach((ele: any) => {
96
+ const url = ele.dicUrl;
97
+ const prop = ele.prop;
98
+ const parentProp = ele.parentProp;
99
+ notList = notList.concat(ele.cascader || []);
100
+ const flag = ele.dicFlag === false || ele.lazy === true || notList.includes(prop);
101
+ if (url && !parentProp && !flag) {
102
+ list.push(
103
+ new Promise((resolve) => {
104
+ sendDic(
105
+ {
106
+ url,
107
+ name: prop,
108
+ method: ele.dicMethod,
109
+ headers: ele.dicHeaders,
110
+ formatter: ele.dicFormatter,
111
+ props: ele.props,
112
+ dataType: ele.dataType,
113
+ query: ele.dicQuery,
114
+ },
115
+ safe
116
+ ).then((res) => {
117
+ safe.DIC[prop] = res;
118
+ resolve(res);
119
+ });
120
+ })
121
+ );
122
+ nameList.push(prop);
123
+ }
124
+ });
125
+ Promise.all(list).then((res: any[]) => {
126
+ nameList.forEach((ele, index) => {
127
+ result[ele] = res[index];
128
+ });
129
+ resolve(result);
130
+ });
131
+ });
132
+ };
133
+
134
+ export const loadLocalDic = (option: Record<string, any>, safe: any) => {
135
+ const columnData: Record<string, any> = {};
136
+ const optionData = option.dicData || {};
137
+ option.column.forEach((ele: any) => {
138
+ const dic = ele.dicData;
139
+ const prop = ele.prop;
140
+ if (dic instanceof Function) {
141
+ const dicResult = dic(ele);
142
+ if (dicResult instanceof Promise) {
143
+ dicResult.then((res: any[]) => {
144
+ safe.DIC[prop] = getDataType(res, ele.props, ele.dataType);
145
+ });
146
+ } else {
147
+ columnData[prop] = getDataType(dicResult, ele.props, ele.dataType);
148
+ }
149
+ } else if (dic instanceof Array) {
150
+ columnData[prop] = getDataType(dic, ele.props, ele.dataType);
151
+ }
152
+ });
153
+ const result = { ...optionData, ...columnData };
154
+ Object.keys(result).forEach((ele) => {
155
+ safe.DIC[ele] = result[ele];
156
+ });
157
+ return result;
158
+ };
159
+
160
+ export const sendDic = (params: Record<string, any>, safe: any) => {
161
+ let {
162
+ url,
163
+ query,
164
+ method,
165
+ props,
166
+ formatter,
167
+ headers,
168
+ value,
169
+ column = {},
170
+ form = {},
171
+ dataType,
172
+ } = params;
173
+ url = column.dicUrl || url;
174
+ method = (column.dicMethod || method || 'get').toLowerCase();
175
+ headers = column.dicHeaders || headers || {};
176
+ query = column.dicQuery || query || {};
177
+ formatter = column.dicFormatter || formatter;
178
+ props = column.props || props || {};
179
+ const list = url.match(/[^\{\}]+(?=\})/g) || [];
180
+ list.forEach((ele: string) => {
181
+ let result = ele === key ? value : form[ele];
182
+ if (validatenull(result)) result = '';
183
+ url = url.replace(`{{${ele}}}`, result);
184
+ });
185
+
186
+ const getKey = (data: Record<string, any>) => {
187
+ const result: Record<string, any> = {};
188
+ Object.keys(data).forEach((ele) => {
189
+ const eleKey = data[ele];
190
+ if (typeof eleKey === 'string' && eleKey.match(/\{{|}}/g)) {
191
+ const prop = eleKey.replace(/\{{|}}/g, '');
192
+ result[ele] = prop == key ? value : form[prop];
193
+ } else {
194
+ result[ele] = eleKey;
195
+ }
196
+ });
197
+ return result;
198
+ };
199
+
200
+ return new Promise<any[]>((resolve, reject) => {
201
+ if (!url) resolve([]);
202
+ const callback = (res: any) => {
203
+ let currentList: any[] = [];
204
+ res = res.data || {};
205
+ if (typeof formatter === 'function') {
206
+ currentList = formatter(res, form);
207
+ } else {
208
+ currentList = getResData(res, props, dataType);
209
+ }
210
+ resolve(currentList);
211
+ };
212
+ const getData = () => {
213
+ const data = getKey(query);
214
+ if (method == 'get') return { params: data };
215
+ return { data };
216
+ };
217
+ safe
218
+ .$axios(
219
+ Object.assign(
220
+ {
221
+ url,
222
+ method,
223
+ headers: getKey(headers),
224
+ },
225
+ getData()
226
+ )
227
+ )
228
+ .then(function (res: any) {
229
+ callback(res);
230
+ })
231
+ .catch((err: any) => {
232
+ reject(err);
233
+ });
234
+ });
235
+ };
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const index_js_1 = require("../locale/index.js");
4
+ exports.default = {
5
+ methods: {
6
+ t(...args) {
7
+ return index_js_1.t.apply(this, args);
8
+ },
9
+ },
10
+ };
@@ -0,0 +1,9 @@
1
+ import { t } from '../locale/index';
2
+
3
+ export default {
4
+ methods: {
5
+ t(...args: any[]) {
6
+ return t.apply(this, args);
7
+ },
8
+ },
9
+ };
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const index_js_1 = __importDefault(require("../plugin/logs/index.js"));
7
+ const list = {
8
+ AliOSS: {
9
+ url: 'https://cdn.staticfile.org/ali-oss/6.17.1/aliyun-oss-sdk.min.js',
10
+ title: '阿里云图片上传,需要引入 OSS 的 SDK',
11
+ github: 'https://github.com/ali-sdk/ali-oss/',
12
+ },
13
+ Map: {
14
+ url: 'https://webapi.amap.com/maps?v=1.4.11&key=xxxxx&plugin=AMap.PlaceSearch,https://webapi.amap.com/ui/1.0/main.js?v=1.0.11',
15
+ title: '地图组件,需要引入高德 SDK',
16
+ },
17
+ MapUi: {
18
+ url: 'https://webapi.amap.com/ui/1.0/main.js?v=1.0.11',
19
+ title: '地图组件,需要引入高德 UI SDK',
20
+ },
21
+ Sortable: {
22
+ url: 'https://cdn.staticfile.org/Sortable/1.10.0-rc2/Sortable.min.js',
23
+ title: '拖拽功能,需要引入 SortableJS',
24
+ github: 'https://github.com/SortableJS/Sortable',
25
+ },
26
+ Screenshot: {
27
+ url: 'https://cdn.staticfile.org/html2canvas/0.5.0-beta4/html2canvas.min.js',
28
+ title: '需要引入 html2canvas 依赖包',
29
+ github: 'https://github.com/niklasvh/html2canvas/',
30
+ },
31
+ COS: {
32
+ url: 'https://avuejs.com/cdn/cos-js-sdk-v5.min.js',
33
+ title: '腾讯云图片上传,需要引入 COS',
34
+ },
35
+ CryptoJS: {
36
+ url: 'https://avuejs.com/cdn/CryptoJS.js',
37
+ title: '七牛云图片上传,需要引入 CryptoJS',
38
+ },
39
+ 'file-saver': {
40
+ url: 'https://cdn.staticfile.org/FileSaver.js/2014-11-29/FileSaver.min.js',
41
+ title: '需要引入文件操作包',
42
+ github: 'https://github.com/eligrey/FileSaver.js',
43
+ },
44
+ xlsx: {
45
+ url: 'https://cdn.staticfile.org/xlsx/0.18.2/xlsx.full.min.js',
46
+ title: '需要引入 Excel 操作包',
47
+ github: 'https://github.com/protobi/js-xlsx',
48
+ },
49
+ mock: {
50
+ url: 'https://cdn.staticfile.org/Mock.js/1.0.1-beta3/mock-min.js',
51
+ title: '需要引入 Mock 模拟数据包',
52
+ github: 'https://github.com/Colingo/mock',
53
+ },
54
+ };
55
+ exports.default = (() => {
56
+ return {
57
+ logs(name) {
58
+ const obj = list[name];
59
+ if (!obj)
60
+ return;
61
+ index_js_1.default.capsule(name, obj.title, 'warning');
62
+ index_js_1.default.warning('CDN:' + (obj.url || '-'));
63
+ index_js_1.default.warning('GITHUB:' + (obj.github || '-'));
64
+ },
65
+ };
66
+ })();
@@ -0,0 +1,62 @@
1
+ import $Log from '../plugin/logs/index';
2
+
3
+ const list: Record<string, { url: string; title: string; github?: string }> = {
4
+ AliOSS: {
5
+ url: 'https://cdn.staticfile.org/ali-oss/6.17.1/aliyun-oss-sdk.min.js',
6
+ title: '阿里云图片上传,需要引入 OSS 的 SDK',
7
+ github: 'https://github.com/ali-sdk/ali-oss/',
8
+ },
9
+ Map: {
10
+ url: 'https://webapi.amap.com/maps?v=1.4.11&key=xxxxx&plugin=AMap.PlaceSearch,https://webapi.amap.com/ui/1.0/main.js?v=1.0.11',
11
+ title: '地图组件,需要引入高德 SDK',
12
+ },
13
+ MapUi: {
14
+ url: 'https://webapi.amap.com/ui/1.0/main.js?v=1.0.11',
15
+ title: '地图组件,需要引入高德 UI SDK',
16
+ },
17
+ Sortable: {
18
+ url: 'https://cdn.staticfile.org/Sortable/1.10.0-rc2/Sortable.min.js',
19
+ title: '拖拽功能,需要引入 SortableJS',
20
+ github: 'https://github.com/SortableJS/Sortable',
21
+ },
22
+ Screenshot: {
23
+ url: 'https://cdn.staticfile.org/html2canvas/0.5.0-beta4/html2canvas.min.js',
24
+ title: '需要引入 html2canvas 依赖包',
25
+ github: 'https://github.com/niklasvh/html2canvas/',
26
+ },
27
+ COS: {
28
+ url: 'https://avuejs.com/cdn/cos-js-sdk-v5.min.js',
29
+ title: '腾讯云图片上传,需要引入 COS',
30
+ },
31
+ CryptoJS: {
32
+ url: 'https://avuejs.com/cdn/CryptoJS.js',
33
+ title: '七牛云图片上传,需要引入 CryptoJS',
34
+ },
35
+ 'file-saver': {
36
+ url: 'https://cdn.staticfile.org/FileSaver.js/2014-11-29/FileSaver.min.js',
37
+ title: '需要引入文件操作包',
38
+ github: 'https://github.com/eligrey/FileSaver.js',
39
+ },
40
+ xlsx: {
41
+ url: 'https://cdn.staticfile.org/xlsx/0.18.2/xlsx.full.min.js',
42
+ title: '需要引入 Excel 操作包',
43
+ github: 'https://github.com/protobi/js-xlsx',
44
+ },
45
+ mock: {
46
+ url: 'https://cdn.staticfile.org/Mock.js/1.0.1-beta3/mock-min.js',
47
+ title: '需要引入 Mock 模拟数据包',
48
+ github: 'https://github.com/Colingo/mock',
49
+ },
50
+ };
51
+
52
+ export default (() => {
53
+ return {
54
+ logs(name: string) {
55
+ const obj = list[name];
56
+ if (!obj) return;
57
+ $Log.capsule(name, obj.title, 'warning');
58
+ $Log.warning('CDN:' + (obj.url || '-'));
59
+ $Log.warning('GITHUB:' + (obj.github || '-'));
60
+ },
61
+ };
62
+ })();
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.default = {
4
+ methods: {
5
+ getSlotName(item = {}, type = 'D', slot) {
6
+ const result = {
7
+ F: '-form',
8
+ H: '-header',
9
+ E: '-error',
10
+ L: '-label',
11
+ S: '-search',
12
+ T: '-type',
13
+ D: '',
14
+ };
15
+ const name = item.prop + result[type];
16
+ if (slot)
17
+ return slot[name];
18
+ return name;
19
+ },
20
+ getSlotList(list = [], slot, propList) {
21
+ const propNames = propList.map((ele) => ele.prop);
22
+ return Object.keys(slot).filter((ele) => {
23
+ let result = false;
24
+ if (!propNames.includes(ele)) {
25
+ list.forEach((name) => {
26
+ if (ele.includes(name))
27
+ result = true;
28
+ });
29
+ }
30
+ return result;
31
+ });
32
+ },
33
+ },
34
+ };
@@ -0,0 +1,30 @@
1
+ export default {
2
+ methods: {
3
+ getSlotName(item: Record<string, any> = {}, type = 'D', slot?: Record<string, any>) {
4
+ const result: Record<string, string> = {
5
+ F: '-form',
6
+ H: '-header',
7
+ E: '-error',
8
+ L: '-label',
9
+ S: '-search',
10
+ T: '-type',
11
+ D: '',
12
+ };
13
+ const name = item.prop + result[type];
14
+ if (slot) return slot[name];
15
+ return name;
16
+ },
17
+ getSlotList(list: string[] = [], slot: Record<string, any>, propList: Array<Record<string, any>>) {
18
+ const propNames = propList.map((ele) => ele.prop);
19
+ return Object.keys(slot).filter((ele) => {
20
+ let result = false;
21
+ if (!propNames.includes(ele)) {
22
+ list.forEach((name) => {
23
+ if (ele.includes(name)) result = true;
24
+ });
25
+ }
26
+ return result;
27
+ });
28
+ },
29
+ },
30
+ };