@smallwei/avue 3.8.2 → 3.8.4

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 (374) hide show
  1. package/README.md +206 -86
  2. package/dist/avue.js +37302 -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 +109 -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 -35880
  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.js +134 -0
  212. package/lib/index.ts +177 -0
  213. package/lib/locale/browser/en.js +288 -0
  214. package/lib/locale/browser/zh-cn.js +288 -0
  215. package/lib/locale/browser/zh.js +288 -0
  216. package/lib/locale/index.js +153 -47
  217. package/lib/locale/index.ts +196 -0
  218. package/lib/locale/lang/en.js +284 -100
  219. package/lib/locale/lang/en.ts +282 -0
  220. package/lib/locale/lang/zh-cn.js +284 -0
  221. package/lib/locale/lang/zh-cn.ts +282 -0
  222. package/lib/locale/lang/zh.js +284 -100
  223. package/lib/locale/lang/zh.ts +282 -0
  224. package/lib/packages/core/common/event.js +61 -0
  225. package/lib/packages/core/common/event.ts +56 -0
  226. package/lib/packages/core/common/init.js +140 -0
  227. package/lib/packages/core/common/init.ts +133 -0
  228. package/lib/packages/core/common/props.js +245 -0
  229. package/lib/packages/core/common/props.ts +240 -0
  230. package/lib/packages/core/components/dialog-form/index.js +35 -0
  231. package/lib/packages/core/components/dialog-form/index.ts +29 -0
  232. package/lib/packages/core/components/dialog-form/index.vue +108 -0
  233. package/lib/packages/core/components/form/custom.js +43 -0
  234. package/lib/packages/core/components/form/custom.ts +41 -0
  235. package/lib/packages/core/components/form/index.vue +176 -0
  236. package/lib/packages/core/components/icon/index.vue +37 -0
  237. package/lib/packages/core/components/image-preview/index.js +40 -0
  238. package/lib/packages/core/components/image-preview/index.ts +37 -0
  239. package/lib/packages/core/components/image-preview/index.vue +215 -0
  240. package/lib/packages/core/directive/contextmenu.js +94 -0
  241. package/lib/packages/core/directive/contextmenu.ts +103 -0
  242. package/lib/packages/core/directive/permission.js +21 -0
  243. package/lib/packages/core/directive/permission.ts +18 -0
  244. package/lib/packages/data/box/index.vue +66 -0
  245. package/lib/packages/data/card/index.vue +62 -0
  246. package/lib/packages/data/cardText/index.vue +56 -0
  247. package/lib/packages/data/countdown/index.vue +81 -0
  248. package/lib/packages/data/dashboard/index.vue +72 -0
  249. package/lib/packages/data/display/index.vue +63 -0
  250. package/lib/packages/data/icons/index.vue +68 -0
  251. package/lib/packages/data/imgText/index.vue +72 -0
  252. package/lib/packages/data/list/index.vue +69 -0
  253. package/lib/packages/data/notice/index.vue +63 -0
  254. package/lib/packages/data/operaText/index.vue +62 -0
  255. package/lib/packages/data/panel/index.vue +62 -0
  256. package/lib/packages/data/pay/index.vue +92 -0
  257. package/lib/packages/data/price/index.vue +55 -0
  258. package/lib/packages/data/product/index.vue +106 -0
  259. package/lib/packages/data/profile/index.vue +91 -0
  260. package/lib/packages/data/progress/index.vue +64 -0
  261. package/lib/packages/data/rank/index.vue +92 -0
  262. package/lib/packages/data/rotate/index.vue +69 -0
  263. package/lib/packages/data/statistic/index.vue +71 -0
  264. package/lib/packages/data/tabs/index.vue +64 -0
  265. package/lib/packages/data/task/index.vue +82 -0
  266. package/lib/packages/data/weather/index.vue +103 -0
  267. package/lib/packages/element-plus/array/index.vue +115 -0
  268. package/lib/packages/element-plus/article/index.vue +73 -0
  269. package/lib/packages/element-plus/card/index.vue +103 -0
  270. package/lib/packages/element-plus/cascader/index.vue +132 -0
  271. package/lib/packages/element-plus/chat/index.vue +513 -0
  272. package/lib/packages/element-plus/checkbox/index.vue +84 -0
  273. package/lib/packages/element-plus/comment/index.vue +76 -0
  274. package/lib/packages/element-plus/count-up/index.vue +109 -0
  275. package/lib/packages/element-plus/crud/column/column-default.vue +128 -0
  276. package/lib/packages/element-plus/crud/column/column-dynamic.vue +86 -0
  277. package/lib/packages/element-plus/crud/column/column-menu.vue +267 -0
  278. package/lib/packages/element-plus/crud/column/column-slot.vue +348 -0
  279. package/lib/packages/element-plus/crud/column/column.vue +119 -0
  280. package/lib/packages/element-plus/crud/column/menu.vue +78 -0
  281. package/lib/packages/element-plus/crud/config.js +76 -0
  282. package/lib/packages/element-plus/crud/config.ts +74 -0
  283. package/lib/packages/element-plus/crud/dialog/dialog-column.vue +102 -0
  284. package/lib/packages/element-plus/crud/dialog/dialog-excel.vue +204 -0
  285. package/lib/packages/element-plus/crud/dialog/dialog-filter.vue +159 -0
  286. package/lib/packages/element-plus/crud/dialog/dialog-form.vue +352 -0
  287. package/lib/packages/element-plus/crud/grid/index.vue +271 -0
  288. package/lib/packages/element-plus/crud/grid/item.vue +39 -0
  289. package/lib/packages/element-plus/crud/index.vue +1018 -0
  290. package/lib/packages/element-plus/crud/menu/header-menu.vue +175 -0
  291. package/lib/packages/element-plus/crud/menu/header-search.vue +228 -0
  292. package/lib/packages/element-plus/crud/menu/table-page.vue +108 -0
  293. package/lib/packages/element-plus/date/index.vue +81 -0
  294. package/lib/packages/element-plus/draggable/index.vue +444 -0
  295. package/lib/packages/element-plus/dynamic/index.vue +353 -0
  296. package/lib/packages/element-plus/flow/index.vue +339 -0
  297. package/lib/packages/element-plus/flow/node.vue +84 -0
  298. package/lib/packages/element-plus/form/config.js +8 -0
  299. package/lib/packages/element-plus/form/config.ts +6 -0
  300. package/lib/packages/element-plus/form/index.vue +954 -0
  301. package/lib/packages/element-plus/form/menu.vue +63 -0
  302. package/lib/packages/element-plus/group/index.vue +90 -0
  303. package/lib/packages/element-plus/input/index.vue +1264 -0
  304. package/lib/packages/element-plus/input-color/index.vue +70 -0
  305. package/lib/packages/element-plus/input-cron/index.vue +363 -0
  306. package/lib/packages/element-plus/input-icon/index.vue +143 -0
  307. package/lib/packages/element-plus/input-map/index.vue +311 -0
  308. package/lib/packages/element-plus/input-number/index.vue +91 -0
  309. package/lib/packages/element-plus/input-table/index.vue +279 -0
  310. package/lib/packages/element-plus/input-tag/index.vue +79 -0
  311. package/lib/packages/element-plus/input-tree/index.vue +194 -0
  312. package/lib/packages/element-plus/license/index.vue +155 -0
  313. package/lib/packages/element-plus/login/index.vue +203 -0
  314. package/lib/packages/element-plus/mention/index.vue +117 -0
  315. package/lib/packages/element-plus/radio/index.vue +38 -0
  316. package/lib/packages/element-plus/rate/index.vue +51 -0
  317. package/lib/packages/element-plus/search/index.vue +129 -0
  318. package/lib/packages/element-plus/select/index.vue +292 -0
  319. package/lib/packages/element-plus/sign/index.vue +230 -0
  320. package/lib/packages/element-plus/slider/index.vue +66 -0
  321. package/lib/packages/element-plus/switch/index.vue +72 -0
  322. package/lib/packages/element-plus/tabs/index.vue +62 -0
  323. package/lib/packages/element-plus/text-ellipsis/index.vue +104 -0
  324. package/lib/packages/element-plus/time/index.vue +81 -0
  325. package/lib/packages/element-plus/title/index.vue +30 -0
  326. package/lib/packages/element-plus/tree/index.vue +460 -0
  327. package/lib/packages/element-plus/upload/index.vue +728 -0
  328. package/lib/packages/element-plus/verify/index.vue +62 -0
  329. package/lib/packages/element-plus/video/index.vue +90 -0
  330. package/lib/plugin/ali/index.js +8 -0
  331. package/lib/plugin/ali/index.ts +6 -0
  332. package/lib/plugin/clipboard/index.js +64 -0
  333. package/lib/plugin/clipboard/index.ts +67 -0
  334. package/lib/plugin/export/_blob.js +151 -0
  335. package/lib/plugin/export/_blob.ts +176 -0
  336. package/lib/plugin/export/_export2Excel.js +145 -0
  337. package/lib/plugin/export/_export2Excel.ts +166 -0
  338. package/lib/plugin/export/index.js +268 -0
  339. package/lib/plugin/export/index.ts +274 -0
  340. package/lib/plugin/logs/index.js +48 -0
  341. package/lib/plugin/logs/index.ts +66 -0
  342. package/lib/plugin/print/index.js +147 -0
  343. package/lib/plugin/print/index.ts +155 -0
  344. package/lib/plugin/qiniu/index.js +82 -0
  345. package/lib/plugin/qiniu/index.ts +88 -0
  346. package/lib/plugin/screenshot/index.js +14 -0
  347. package/lib/plugin/screenshot/index.ts +9 -0
  348. package/lib/plugin/video/index.js +55 -0
  349. package/lib/plugin/video/index.ts +60 -0
  350. package/lib/plugin/watermark/index.js +121 -0
  351. package/lib/plugin/watermark/index.ts +127 -0
  352. package/lib/plugin/watermark/watermark.js +111 -0
  353. package/lib/plugin/watermark/watermark.ts +121 -0
  354. package/lib/ui/data/index.js +54 -0
  355. package/lib/ui/data/index.ts +51 -0
  356. package/lib/ui/element-plus/index.js +92 -0
  357. package/lib/ui/element-plus/index.ts +89 -0
  358. package/lib/ui/index.js +9 -0
  359. package/lib/ui/index.ts +6 -0
  360. package/lib/utils/bem.js +31 -0
  361. package/lib/utils/bem.ts +36 -0
  362. package/lib/utils/mock.js +142 -0
  363. package/lib/utils/mock.ts +151 -0
  364. package/lib/utils/util.js +403 -0
  365. package/lib/utils/util.ts +392 -0
  366. package/lib/utils/validate.js +21 -0
  367. package/lib/utils/validate.ts +23 -0
  368. package/lib/version.js +4 -0
  369. package/lib/version.ts +1 -0
  370. package/package.json +20 -10
  371. package/types/index.d.ts +139 -47
  372. package/types/shims-aliases.d.ts +4 -0
  373. package/lib/avue.js.map +0 -1
  374. package/lib/locale/format.js +0 -44
@@ -0,0 +1,2 @@
1
+ export * from "../es/avue.min.mjs";
2
+ export { default } from "../es/avue.min.mjs";
package/dist/avue.mjs ADDED
@@ -0,0 +1,2 @@
1
+ export * from "../es/avue.mjs";
2
+ export { default } from "../es/avue.mjs";
package/dist/index.css ADDED
@@ -0,0 +1 @@
1
+ @charset "UTF-8";.avue-article__body,.avue-comment__body{font-family:Segoe UI,Lucida Grande,Helvetica,Arial,Microsoft YaHei,FreeSans,Arimo,Droid Sans,wenquanyi micro hei,Hiragino Sans GB,Hiragino Sans GB W3,FontAwesome,sans-serif}.avue-article__title{margin-bottom:15px;font-size:32px;line-height:32px;font-weight:400}.avue-article__meta{display:block;margin-bottom:20px;font-size:12px;color:#999}.avue-article__lead{color:#666;font-size:14px;line-height:22px;border:1px solid #dedede;border-radius:2px;background:#f9f9f9;padding:10px}.avue-article__body{padding-top:10px;background:#fff;color:#333;font-size:14px}.avue-article blockquote{margin:0;font-family:Georgia,Times New Roman,Times,Kai,Kaiti SC,KaiTi,BiauKai,FontAwesome,serif;padding:1px 0 1px 15px;border-left:4px solid #ddd}.avue-crud{margin:0 auto;width:100%}.avue-crud .el-card+.el-card{margin-top:8px}.avue-crud .el-button.is-text{margin-left:4px;padding-left:4px;padding-right:4px}.avue-crud--card .el-card{border:none}.avue-crud--card .el-card__body{padding:0}.avue-crud--card .el-card+.el-card{margin-top:0}.avue-crud .el-table .el-form-item{margin-bottom:0;display:inline-block;width:100%}.avue-crud .el-table .el-form-item__label{position:absolute;left:2px}.avue-crud .el-table .el-form-item__content{line-height:inherit;font-size:inherit}.avue-crud .el-table .el-form-item__content .el-tooltip__trigger{width:100%}.avue-crud .el-table .el-form-item__error{width:100%;text-align:left;position:relative}.avue-crud .el-dropdown+.el-button{margin-left:10px}.avue-crud .el-checkbox:last-of-type{margin-right:0}.avue-crud__img>*{height:50px;margin-right:8px;-o-object-fit:contain;object-fit:contain;font-size:50px}.avue-crud__column .el-checkbox{margin-bottom:10px;cursor:move}.avue-crud__header{display:flex;justify-content:space-between;position:relative;width:100%;min-height:40px;height:auto;overflow:hidden;margin-bottom:5px;background-color:#fff}.avue-crud__search .el-card__body{padding-bottom:5px}.avue-crud__search .el-form-item--medium.el-form-item{margin-bottom:22px}.avue-crud .el-table--small .avue-crud__color{width:30px;height:30px}.avue-crud .el-table--small .avue-crud__icon{font-size:30px}.avue-crud th{word-break:break-word;color:rgba(0,0,0,.85);background-color:#fafafa}.avue-crud table td{line-height:26px}.avue-crud--indeterminate .is-indeterminate .el-checkbox__inner{background-color:#fff;border-color:#dcdfe6}.avue-crud .el-table th.el-table__cell{word-break:break-word;color:rgba(0,0,0,.85);background-color:#fafafa}.avue-crud__color{margin:0 auto;width:40px;height:40px;border-radius:5px;display:block}.avue-crud__ghost{cursor:move;opacity:.4}.is-always-shadow+.avue-crud__pagination{padding:0}.avue-crud__pagination{position:relative;padding:20px 0}.avue-crud__pagination .el-pagination{justify-content:flex-end}.avue-crud__form{padding:0 8px}.avue-crud__empty{padding:60px 0}.avue-crud__title{font-weight:700;margin-bottom:20px;display:flex;align-items:center;justify-content:space-between;font-size:22px}.avue-crud__tip{padding:4px 10px 6px;width:100%;margin-bottom:10px;border:1px solid #d9ecff;background-color:#ecf5ff;color:#409eff;font-size:12px;border-radius:3px}.avue-crud__tip-name{margin-right:10px}.avue-crud__tip-count{padding:0 1px;font-size:16px;font-weight:700}.avue-crud__tip-button{cursor:pointer;font-size:12px;font-weight:700}.avue-crud__filter-item{margin-bottom:12px;display:flex;align-items:center;justify-content:center}.avue-crud__filter-menu{padding:0 5px;margin-bottom:20px}.avue-crud__filter-label{margin:0 5px;width:120px!important}.avue-crud__filter-symbol{margin:0 5px;width:80px!important}.avue-crud__filter-value{margin:0 5px;width:150px!important}.avue-crud__filter-value .el-date-editor.el-input,.avue-crud__filter-value .el-date-editor.el-input__inner{width:100%}.avue-crud__filter-icon{margin-left:10px}.avue-crud__dialog__header{position:relative;display:flex;align-items:center;justify-content:space-between}.avue-crud__dialog__menu{position:absolute;right:25px;z-index:1}.avue-crud__dialog__menu i{color:#909399;font-size:14px;cursor:pointer}.avue-crud__dialog__menu i:hover{color:#409eff}.avue-crud__dialog--fullscreen{max-width:inherit;max-height:inherit}.avue-crud__dialog .el-dialog__headerbtn{top:5px}.avue-crud__dialog .el-dialog__body{padding:20px 20px 5px 10px}.avue-crud__grid{overflow-y:auto}.avue-crud__grid .el-switch{height:22px}.avue-crud__grid .el-switch__core{height:16px}.avue-crud__grid .el-switch__action{height:14px}.avue-crud__grid .el-col{padding:10px 10px 10px 0;box-sizing:border-box}.avue-crud__grid__content{border-radius:8px;overflow:hidden;position:relative;display:flex;flex-wrap:wrap;padding:20px 20px 10px;background-size:cover;border:1px solid #fafafa}.avue-crud__grid__item{box-sizing:border-box;padding-right:5px;margin-bottom:3px;width:50%;line-height:20px;font-size:12px;color:#666;display:flex;align-items:flex-start}.avue-crud__grid__label{position:relative;margin-right:10px;font-weight:450;color:#333;flex:0 0 auto;white-space:nowrap}.avue-crud__grid__label::after{position:absolute;right:-3px;content:":"}.avue-crud__grid__value{display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.avue-crud__grid .menu .avue-crud__grid__label,.avue-crud__grid .title .avue-crud__grid__label,.avue-crud__grid__hide{display:none}.avue-crud__grid .overHidden{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.avue-crud__grid .menu .el-button,.avue-crud__grid .title .el-button{font-size:12px}.avue-crud__grid .row{width:100%}.avue-crud__grid .selection{width:inherit;position:absolute;top:-2px;right:-8px}.avue-crud__grid .index{width:inherit;position:absolute;right:20px;top:18px}.avue-crud__grid .index:before{content:"No";margin-right:2px;font-weight:700}.avue-crud__grid .title{width:80%;margin-bottom:12px}.avue-crud__grid .title .avue-crud__grid__value{font-size:16px;font-weight:700;line-height:22px;color:#333}.avue-crud__grid .menu{margin-top:8px;width:100%;justify-content:flex-end;text-align:right}.avue-crud__ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;display:inline-block}.avue-crud .el-table__body-wrapper tr td.el-table-fixed-column--left,.avue-crud .el-table__body-wrapper tr td.el-table-fixed-column--right,.avue-crud .el-table__body-wrapper tr th.el-table-fixed-column--left,.avue-crud .el-table__body-wrapper tr th.el-table-fixed-column--right,.avue-crud .el-table__footer-wrapper tr td.el-table-fixed-column--left,.avue-crud .el-table__footer-wrapper tr td.el-table-fixed-column--right,.avue-crud .el-table__footer-wrapper tr th.el-table-fixed-column--left,.avue-crud .el-table__footer-wrapper tr th.el-table-fixed-column--right,.avue-crud .el-table__header-wrapper tr td.el-table-fixed-column--left,.avue-crud .el-table__header-wrapper tr td.el-table-fixed-column--right,.avue-crud .el-table__header-wrapper tr th.el-table-fixed-column--left,.avue-crud .el-table__header-wrapper tr th.el-table-fixed-column--right{background-color:#fff}.avue-card__item{margin-bottom:16px;border:1px solid #e8e8e8;background-color:#fff;box-sizing:border-box;color:rgba(0,0,0,.65);font-size:14px;font-variant:tabular-nums;line-height:1.5;list-style:none;font-feature-settings:"tnum";cursor:pointer;height:200px}.avue-card__item:hover{border-color:rgba(0,0,0,.09);box-shadow:0 2px 8px rgba(0,0,0,.09)}.avue-card__item--add{border:1px dashed #d9d9d9;width:100%;color:rgba(0,0,0,.45);background-color:#fff;border-radius:2px;display:flex;align-items:center;justify-content:center;font-size:16px}.avue-card__item--add i{margin-right:10px}.avue-card__item--add:hover{color:#40a9ff;background-color:#fff;border-color:#40a9ff}.avue-card__body{display:flex;padding:24px}.avue-card__detail{flex:1}.avue-card__avatar{width:48px;height:48px;border-radius:48px;overflow:hidden;margin-right:12px}.avue-card__avatar img{width:100%;height:100%}.avue-card__title{color:rgba(0,0,0,.85);margin-bottom:12px;font-size:16px}.avue-card__title:hover{color:#1890ff}.avue-card__info{color:rgba(0,0,0,.45);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;height:64px}.avue-card__menu{display:flex;justify-content:space-around;height:50px;background:#f7f9fa;color:rgba(0,0,0,.45);text-align:center;line-height:50px}.avue-card__menu:hover{color:#1890ff}.avue-comment{margin-bottom:30px;display:flex;align-items:flex-start}.avue-comment--reverse{flex-direction:row-reverse}.avue-comment--reverse .avue-comment__main:after,.avue-comment--reverse .avue-comment__main:before{left:auto;right:-8px;border-width:8px 0 8px 8px}.avue-comment--reverse .avue-comment__main:before{border-left-color:#dedede}.avue-comment--reverse .avue-comment__main:after{border-left-color:#f8f8f8;margin-right:1px;margin-left:auto}.avue-comment__avatar{width:48px;height:48px;border-radius:50%;border:1px solid transparent;box-sizing:border-box;vertical-align:middle}.avue-comment__header{padding:5px 15px;background:#f8f8f8;border-bottom:1px solid #eee;display:flex;align-items:center;justify-content:space-between}.avue-comment__author{font-weight:700;font-size:14px;color:#999}.avue-comment__main{flex:1;margin:0 20px;position:relative;border:1px solid #dedede;border-radius:2px}.avue-comment__main:after,.avue-comment__main:before{position:absolute;top:10px;left:-8px;right:100%;width:0;height:0;display:block;content:" ";border-color:transparent;border-style:solid solid outset;border-width:8px 8px 8px 0;pointer-events:none}.avue-comment__main:before{border-right-color:#dedede;z-index:1}.avue-comment__main:after{border-right-color:#f8f8f8;margin-left:1px;z-index:2}.avue-comment__body{padding:15px;overflow:hidden;background:#fff;color:#333;font-size:14px}.avue-comment blockquote{margin:0;font-family:Georgia,Times New Roman,Times,Kai,Kaiti SC,KaiTi,BiauKai,FontAwesome,serif;padding:1px 0 1px 15px;border-left:4px solid #ddd}.avue-chat{box-shadow:1px 2px 10px #eee;position:relative;background-color:#fcfcfc}.avue-chat li,.avue-chat ul{padding:0;margin:0}.avue-chat li{list-style:none;cursor:pointer}.avue-chat .web__content{height:100%;display:flex}.avue-chat .web__main{height:calc(100% - 200px);padding:15px 15px 20px;overflow-x:hidden;overflow-y:auto;box-sizing:border-box}.avue-chat .web__logo{background-color:#409eff;display:flex;padding:15px 12px;margin:0 auto;vertical-align:middle}.avue-chat .web__logo-img{margin-top:3px;width:35px;height:35px;border-radius:100%;box-shadow:0 3px 3px 0 rgba(0,0,0,.1)}.avue-chat .web__logo-info{margin-left:10px}.avue-chat .web__logo-name{position:relative;margin-top:5px;font-size:13px}.avue-chat .web__logo-dept{margin-top:1px;font-size:12px}.avue-chat .web__logo-dept,.avue-chat .web__logo-name{color:#fff;margin:0;padding:0;width:175px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.avue-chat .web__main-item{position:relative;font-size:0;margin-bottom:10px;padding-left:60px;min-height:68px}.avue-chat .web__main-text,.avue-chat .web__main-user{display:inline-block;vertical-align:top;font-size:14px}.avue-chat .web__main-user{position:absolute;left:3px}.avue-chat .web__main-user img{width:40px;height:40px;border-radius:100%}.avue-chat .web__main-user cite{position:absolute;left:60px;top:-2px;width:500px;line-height:24px;font-size:12px;white-space:nowrap;color:#999;text-align:left;font-style:normal}.avue-chat .web__main-user cite i{padding-left:15px;font-style:normal}.avue-chat .web__main-text{position:relative;line-height:22px;margin-top:25px;padding:8px 15px;background-color:#f3f3f3;border-radius:3px;border:1px solid #f0f0f0;color:#000;word-break:break-all}.avue-chat .web__main-arrow{top:6px;left:-8px;position:absolute;display:block;width:0;height:0;border-color:transparent #ebeef5 transparent transparent;border-style:solid;border-width:8px 8px 8px 0}.avue-chat .web__main-arrow::after{content:" ";top:-7px;left:1px;position:absolute;display:block;width:0;height:0;border-color:transparent #fff transparent transparent;border-style:solid;border-width:7px 7px 7px 0}.avue-chat .web__main-item--mine .web__main-text .web__main-arrow{left:auto;right:-5px;border-color:transparent transparent transparent #409eff;border-style:solid;border-width:8px 0 8px 8px}.avue-chat .web__main-item--mine .web__main-text .web__main-arrow::after{left:auto;right:-2px;border-color:transparent transparent transparent #409eff;border-style:solid;border-width:7px 0 7px 7px}.avue-chat .web__main-list{margin:10px 0}.avue-chat .web__main-list li{height:30px;color:#409eff;line-height:30px}.avue-chat .web__main-item--mine{text-align:right;padding-left:0;padding-right:60px}.avue-chat .web__main-item--mine .web__main-user{left:auto;right:3px}.avue-chat .web__main-item--mine .web__main-user cite{left:auto;right:60px;text-align:right}.avue-chat .web__main-item--mine .web__main-user cite i{padding-left:0;padding-right:15px}.avue-chat .web__main-item--mine .web__main-text{margin-left:0;text-align:left;background-color:#409eff;color:#fff}.avue-chat .web__footer{box-shadow:0 -1px 0 0 rgba(0,0,0,.04),0 -2px 0 0 rgba(0,0,0,.01);position:absolute;left:0;bottom:0;width:100%;background-color:#fff}.avue-chat .web__msg{padding:10px;height:auto;overflow:hidden}.avue-chat .web__msg--file,.avue-chat .web__msg--img,.avue-chat .web__msg--video{position:relative;max-width:250px;min-width:200px;width:100%;margin:10px 0;border:1px solid #eee;overflow:hidden;border-radius:5px;cursor:pointer;display:block}.avue-chat .web__msg--file{height:140px;background-color:#fff}.avue-chat .web__msg--file span{box-sizing:border-box;padding:3px 5px;color:#333;display:flex;align-items:center;width:100%;justify-content:center;height:calc(100% - 80px);overflow:hidden;font-size:13px;text-align:center}.avue-chat .web__msg--file h2{margin:0;width:100%;text-align:center;line-height:80px;background-color:#409EFF;color:#fff}.avue-chat .web__msg--map{height:160px}.avue-chat .web__msg-input{display:block;width:100%;height:60px;overflow-x:hidden;overflow-y:auto;box-sizing:border-box;resize:none;outline:0;background-color:#fff;border:0;word-break:break-all;font-size:13px;line-height:17px;-webkit-appearance:none}.avue-chat .web__msg-submit{float:right;display:block;outline:0;cursor:pointer;text-align:center}.avue-chat .web__tools{padding:8px 10px 0;box-sizing:border-box}.avue-chat .web__tools i{margin-right:12px;font-size:20px;color:#888a91}.avue-chat .web__tools i:hover{color:#76b1f9}.avue-draggable{padding:10px;position:absolute;cursor:move;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;-moz-user-select:none;user-select:none}.avue-draggable__focus{opacity:0;position:absolute!important;top:0;left:0;z-index:-1024}.avue-draggable__mask{width:100%;height:100%;border:0;position:absolute;top:0;right:0;bottom:0;left:0;z-index:1}.avue-draggable--active{cursor:move;border:1px dashed #09f;background-color:rgba(115,170,229,.5)}.avue-draggable--move{opacity:.6;background-color:rgba(115,170,229,.5)}.avue-draggable--click{cursor:pointer}.avue-draggable__line--left{position:absolute;border-top:1px dashed #09f;width:10000px;height:0;top:0;transform:translateX(-100%)}.avue-draggable__line--top{position:absolute;border-left:1px dashed #09f;width:0;height:10000px;left:0;transform:translateY(-100%)}.avue-draggable__line--label{top:-5px;left:-8px;position:absolute;padding:5px;transform:translate(-100%,-100%);color:#09f;font-size:18px;white-space:nowrap;cursor:move}.avue-draggable__menu,.avue-image-preview .el-image-viewer__close svg,.avue-image-preview__file a{color:#fff}.avue-draggable__menu{position:absolute;top:0;left:0;background-color:#409EFF;font-size:25px;z-index:9999;cursor:pointer}.avue-draggable__range{position:absolute;width:10px;height:10px;border-radius:100%;z-index:9999;background-color:#09f}.avue-draggable__range--left,.avue-draggable__range--right{top:50%;transform:translateY(-50%)}.avue-draggable__range--left:hover,.avue-draggable__range--right:hover{cursor:ew-resize}.avue-draggable__range--left{left:-6px}.avue-draggable__range--right{right:-6px}.avue-draggable__range--bottom,.avue-draggable__range--top{left:50%;transform:translateX(-50%)}.avue-draggable__range--bottom:hover,.avue-draggable__range--top:hover{cursor:ns-resize}.avue-draggable__range--top{top:-6px}.avue-draggable__range--bottom{bottom:-6px}.avue-draggable__range--bottom-right:hover,.avue-draggable__range--top-left:hover{cursor:nwse-resize}.avue-draggable__range--bottom-left:hover,.avue-draggable__range--top-right:hover{cursor:nesw-resize}.avue-draggable__range--top-right{top:-6px;right:-6px}.avue-draggable__range--top-left{top:-6px;left:-6px}.avue-draggable__range--bottom-right{bottom:-6px;right:-6px}.avue-draggable__range--bottom-left{bottom:-6px;left:-6px}.avue-img--center{display:flex;align-items:center;justify-content:center}.avue-img--fullscreen .el-dialog__body{height:100%}.avue-image-preview{position:fixed;top:0;left:0;width:100%;height:100%;transition:all .5s;z-index:9998}.avue-image-preview svg{width:22px}.avue-image-preview .el-image-viewer__btn{z-index:1024}.avue-image-preview img{transition:all .5s;cursor:pointer}.avue-image-preview__file{text-align:center}.avue-image-preview__file i{cursor:pointer;font-size:80px}.avue-image-preview__mask{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.5)}.avue-image-preview__box{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.avue-image-preview__box .el-carousel{width:90%;height:100%}.avue-image-preview__box .el-carousel__container{height:100%}.avue-image-preview__box .el-carousel__item{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.avue-image-preview .el-image-viewer__actions{width:400px}.avue-image-preview .el-image-viewer__actions__inner{gap:15px}.avue-image-preview .el-image-viewer__actions__inner .viewer-icon{cursor:pointer;transition:all .2s}.avue-input__code-item,.avue-input__ip-segment,.avue-input__mac-segment{text-align:center;transition:border-color .2s;outline:0}.avue-image-preview .el-image-viewer__actions__inner .viewer-icon:hover{transform:scale(1.2);color:#409EFF}.avue-input__phone{display:flex!important;flex-direction:row!important;align-items:center;gap:8px;width:100%}.avue-input__phone .el-select{flex-shrink:0;width:120px!important}.avue-input__phone .el-input{flex:1;min-width:0}.avue-input__phone-code .el-input__inner{text-align:center}.avue-input__currency .el-input__inner{text-align:right;font-variant-numeric:tabular-nums}.avue-input__currency .el-input-group__append,.avue-input__currency .el-input-group__prepend{padding:0 12px;font-weight:500}.avue-input__bank-card .el-input__inner{letter-spacing:2px;font-family:"Courier New",Courier,monospace}.avue-input__bank-card-type{font-size:12px;color:#909399;padding-right:8px}.avue-input__id-card .el-input__inner{letter-spacing:1px;text-transform:uppercase}.avue-input__id-card--invalid .el-input__wrapper{box-shadow:0 0 0 1px #f56c6c inset}.avue-input__id-card-info{cursor:pointer;padding-right:8px;font-weight:700}.avue-input__email-valid{padding-right:8px;font-weight:700}.avue-input__code{display:flex;gap:8px;justify-content:flex-start}.avue-input__code-item{width:42px;height:42px;font-size:20px;font-weight:700;border:1px solid #dcdfe6;border-radius:4px}.avue-input__code-item:focus{border-color:#409eff}.avue-input__code-item.is-disabled{background-color:#f5f7fa;color:#c0c4cc;cursor:not-allowed}.avue-input__plate{display:flex;gap:8px;align-items:center;width:100%}.avue-input__plate-province{flex-shrink:0}.avue-input__plate-number{flex:1}.avue-input__plate-number .el-input__inner{text-transform:uppercase;letter-spacing:2px}.avue-input__ip{display:flex;align-items:center;gap:2px}.avue-input__ip-segment{width:50px;height:32px;font-family:"Courier New",Courier,monospace;border:1px solid #dcdfe6;border-radius:4px}.avue-input__ip-segment:focus{border-color:#409eff}.avue-input__ip-segment.is-disabled{background-color:#f5f7fa;color:#c0c4cc;cursor:not-allowed}.avue-input__ip-dot{font-size:20px;font-weight:700;color:#606266;padding:0 2px}.avue-input__mac{display:flex;align-items:center;gap:2px}.avue-input__mac-segment{width:36px;height:32px;font-family:"Courier New",Courier,monospace;text-transform:uppercase;border:1px solid #dcdfe6;border-radius:4px}.avue-input__mac-segment:focus{border-color:#409eff}.avue-input__mac-segment.is-disabled{background-color:#f5f7fa;color:#c0c4cc;cursor:not-allowed}.avue-input__mac-sep{font-size:14px;color:#606266;padding:0 1px}.avue-input__uscc-valid{padding-right:8px;font-weight:700}.avue-input-number .el-input__inner{text-align:left}.avue-input-tree__desc{float:right;color:#8492a6;font-size:13px}.avue-input-tree__item{padding:0;height:auto;line-height:normal}.avue-input-table__crud .avue-crud__pagination{padding:10px 0 2px 10px;margin:0}.avue-input-table .el-table__row.disabled{color:#ccc}.amap-icon img,.amap-marker-content img{width:25px;height:34px}.avue-input-map__marker{position:absolute;top:-20px;right:-118px;color:#fff;padding:4px 10px;box-shadow:1px 1px 1px rgba(10,10,10,.2);white-space:nowrap;font-size:12px;font-family:"";background-color:#25a5f7;border-radius:3px}.avue-input-map__content{position:relative;padding-top:40px}.avue-input-map__content-input{left:0;top:0;position:absolute;z-index:1}.avue-input-map__content-box{position:relative}.avue-input-map__content-container{width:100%;height:450px}.avue-input-map__content-result{display:block!important;position:absolute;top:0;right:-8px;width:250px;height:450px;overflow-y:auto}.avue-input-icon{display:flex;flex-wrap:wrap;justify-content:space-around}.avue-input-icon__item{text-align:center;width:60px;padding:10px 20px 0;transition:all .2s}.avue-input-icon__item p{font-size:12px;margin-top:5px}.avue-input-icon__item:hover{transform:scale(1.4)}.avue-input-icon__item--active{transform:scale(1.4);color:#409EFF}.avue-input-icon__list{display:flex;flex-wrap:wrap}.avue-input-icon__filter{text-align:right}.avue-input-icon__filter .el-input{width:250px}.avue-upload--upload .el-upload--picture-img{display:inline-block}.avue-upload--upload .el-upload-list{margin-top:-6px}.avue-upload--picture-img .el-upload.is-drag{width:148px}.avue-upload--picture-img .el-upload-dragger{padding:0}.avue-upload--picture-card .el-upload-dragger{display:flex;align-items:center;justify-content:center}.avue-upload--list .el-upload{background-color:#fbfdff;border:1px dashed #c0ccda;border-radius:6px;cursor:pointer;position:relative;overflow:hidden}.avue-upload--list .el-upload:hover{border-color:#409eff}.avue-upload__progress{margin-top:10px}.avue-upload__dialog .el-dialog__header{display:none}.avue-upload__dialog .el-dialog__body{padding:10px;display:flex;justify-content:center}.avue-upload__menu{position:absolute;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1024}.avue-form,.avue-form__group .el-col{position:relative}.avue-upload__menu i{color:#fff;margin:0 8px;font-size:20px}.avue-upload__avatar{font-size:28px;color:#8c939d;width:148px;height:148px;display:flex;align-items:center;justify-content:center;line-height:148px;text-align:center}.avue-form{margin:0 auto;box-sizing:border-box}.avue-form__item--top{display:flex;flex-direction:column;margin-right:20px;box-sizing:border-box}.avue-form__item--top .el-form-item__label{width:100%!important;text-align:left!important}.avue-form__item--top .el-form-item__content{margin-left:0!important}.avue-form__item--left .el-form-item__label{text-align:left!important}.avue-form__menu{padding:5px 10px 0;box-sizing:border-box}.avue-form__menu--center{text-align:center}.avue-form__menu--center .el-button{margin:0 5px}.avue-form__menu--left{text-align:left}.avue-form__menu--right{text-align:right}.avue-form__tabs{padding:0 10px;box-sizing:border-box}.avue-form__group{align-items:flex-start;flex-wrap:wrap;height:auto}.avue-form__group--flex{display:flex}.avue-form__line{display:inline-block;height:100%}.avue-form__row--block{width:100%;display:block}.avue-form__row--cursor{cursor:pointer}.avue-form__option{position:absolute;right:0;top:-10px;z-index:999}.avue-flow,.avue-flow__node{position:relative}.avue-form__option i{color:#666}.avue-form__option i+i{margin-left:10px}.el-drawer .avue-form{padding:0 20px}.field-desc{font-size:12px;color:#696969}.avue-flow .avue-draggable{padding:0}.avue-flow__node{display:flex;flex-direction:column;width:200px;height:80px;border-radius:5px;box-shadow:"#66a6e0 0px 0px 12px 0px";border:1px solid #eee;box-sizing:border-box;overflow:hidden}.avue-flow__node--active{border-width:2px;border-color:#f56c6c}.avue-flow__node .el-icon{margin:0 2px;display:inline-block}.avue-checkbox .el-checkbox+.el-checkbox,.avue-radio .el-radio+.el-radio{margin-left:0}.avue-checkbox .el-checkbox,.avue-radio .el-radio{margin-right:10px}.avue-flow__node-drag{position:absolute;left:0;top:0;width:15px;height:15px;z-index:1024}.avue-flow__node-header{flex:1;background-color:#66a6e0}.avue-flow__node-body{display:flex;align-items:center;justify-content:center;flex:1.5;text-align:center;background:#fff}.avue-date .el-date-editor.el-input,.avue-date .el-date-editor.el-input__inner{width:100%}.avue-date__group{display:flex;align-items:center}.avue-date__radio .el-radio-button:last-child .el-radio-button__inner{border-radius:0;border-right:0}.avue-date__date{width:300px}.avue-date__date .el-date-editor{border-top-left-radius:0;border-bottom-left-radius:0}.avue-select .sortable-ghost{opacity:.8;color:#fff!important;background:#409EFF!important}.avue-select .el-tag{cursor:pointer}.avue-select__desc{float:right;color:#8492a6;font-size:13px}.el-select-dropdown .avue-select__check{box-sizing:border-box;text-align:right;width:100%;padding-right:20px}.avue-group{width:100%}.avue-group .el-collapse,.avue-group .el-collapse-item__wrap{border-color:#fff}.avue-group .el-collapse-item__header{width:100%;height:inherit;border:none;border-bottom:1px solid #eee;margin-bottom:20px}.avue-group .el-collapse-item__content,.avue-group .van-collapse-item__content{padding-bottom:0}.avue-group .van-collapse-item__content{padding:0 2px}.avue-group .van-hairline--top-bottom::after,.avue-group .van-hairline-unset--top-bottom::after,.avue-group--arrow .el-collapse-item__arrow,.avue-group--arrow .van-icon-arrow{display:none}.avue-group .van-collapse-item__title{padding:0 10px;display:flex;align-items:center}.avue-group .van-collapse-item__title::after{left:0!important}.avue-group--none{margin:0!important;border:none!important}.avue-group--header>.el-collapse>.el-collapse-item>.el-collapse-item__header,.avue-group--header>.el-collapse>.el-collapse-item>div>.el-collapse-item__header{display:none}.avue-group--collapse .el-collapse-item__arrow,.avue-group--collapse .el-collapse-item__header{display:flex!important}.avue-group__item{margin-bottom:10px;background-color:#fff;border-bottom:1px solid #eee;border-radius:5px;box-sizing:border-box}.avue-group__item:last-child{border-bottom:none}.avue-group__header{width:100%;display:flex;align-items:center;height:50px;line-height:50px;box-sizing:border-box}.avue-group__icon{margin-right:8px;font-size:20px;color:rgba(0,0,0,.85)}.avue-group__title{font-size:16px;font-weight:500;color:rgba(0,0,0,.85)}.avue-tree{position:relative;height:100%}.avue-tree__menu{width:200px;position:fixed;z-index:1024;flex-wrap:wrap;background-color:#fff}.avue-tree__item,.avue-video{position:relative;overflow:hidden}.avue-tree__item{height:34px;line-height:34px;outline:0;padding:0 10px;white-space:nowrap;text-overflow:ellipsis;width:100%;color:#666}.avue-tree__item:hover{cursor:pointer;color:#409eff}.avue-tree__filter{margin-bottom:5px;display:flex;align-items:center}.avue-tree__content{padding:5px 0;height:calc(100% - 32px)}.avue-title p{font-weight:700;font-size:18px;margin:5px 10px}.avue-search{padding:0 20px}.avue-search__item{padding:20px 0 10px;display:flex;align-items:flex-start;border-bottom:1px dashed #e8e8e8}.avue-search__item:last-child{border-bottom:none}.avue-search__tags{padding:0 12px;margin-right:24px;margin-bottom:12px;font-size:14px;color:rgba(0,0,0,.65);cursor:pointer;white-space:nowrap;display:inline-block}.avue-search__tags:hover{color:#1890ff}.avue-search__tags--active{color:#fff;background-color:#1890ff;border-radius:5px}.avue-search__tags--active:hover{opacity:.85;color:#fff}.avue-search__title{margin:0;padding:0 20px;width:120px;font-size:14px;text-align:right;display:inline-block;box-sizing:border-box}.avue-search__content{width:calc(100% - 190px);display:inline-block}.avue-search__content .el-tag{margin-right:10px;margin-bottom:10px}.avue-sign{padding:5px}.avue-sign__canvas{border:1px solid #ccc}.avue-video{width:500px}.avue-video__border span{position:absolute;width:30px;height:30px;border-width:4px;color:#0073eb;border-style:solid}.avue-video__border span:nth-child(1){left:15px;top:15px;border-right:0;border-bottom:0}.avue-video__border span:nth-child(2){right:15px;top:15px;border-left:0;border-bottom:0}.avue-video__border span:nth-child(3){bottom:15px;left:15px;border-right:0;border-top:0}.avue-video__border span:nth-child(4){bottom:15px;right:15px;border-left:0;border-top:0}.avue-video__img{width:100px;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}.avue-video__main{width:100%}.avue-dynamic__item{margin-bottom:10px;width:100%;display:flex;align-items:center}.avue-dynamic__header{padding-left:40px}.avue-dynamic__row{position:relative;border-top:1px dashed #eee;padding-top:13px}.avue-dynamic__row:first-child{border-top:0}.avue-dynamic__menu{position:absolute;right:0;z-index:1024}.avue-dynamic__input{margin-right:8px;width:100%}.avue-dynamic__button{margin-bottom:0!important}.avue-verify__item{padding:5px 10px;display:inline-block;margin:0 4px;box-sizing:border-box;border:1px solid #e1e1e1;font-size:64px;text-align:center}.avue-text-ellipsis__more{padding:0 2px}.avue-login .el-form-item{margin-bottom:18px}.avue-login .el-input-group__append{padding:0;overflow:hidden}.avue-login__send{min-width:150px;box-sizing:border-box}.avue-login__send:hover{color:#C0C4CC!important;border-color:#EBEEF5!important;background-color:#F5F7FA!important}.avue-login__submit{width:100%}.avue-array__item{margin-bottom:5px}.avue-array__input{display:flex}.avue-array__input .el-input{flex:auto}.avue-array__input .el-button{margin-left:5px}.avue-input-cron__container{padding:10px 0}.avue-input-cron__tab{padding:15px}.avue-input-cron__option{margin-bottom:15px;display:flex;align-items:center;flex-wrap:wrap}.avue-input-cron__option .el-radio{margin-right:10px}.avue-input-cron__inline{display:inline-flex;align-items:center;gap:8px;margin-left:10px;color:#606266}.avue-input-cron__specify{margin-top:10px;padding:15px;background:#f5f7fa;border-radius:4px;max-height:200px;overflow-y:auto}.avue-input-cron__specify .el-checkbox{margin-right:15px;margin-bottom:8px;width:60px}.avue-input-cron__result{margin-top:20px;padding:15px;background:#f5f7fa;border-radius:4px}.avue-input-cron__expression{display:flex;align-items:center;margin-bottom:15px}.avue-input-cron__label{font-weight:500;color:#303133;margin-right:10px;white-space:nowrap}.avue-input-cron__preview{display:flex;align-items:flex-start}.avue-input-cron__times{list-style:none;margin:0;padding:0}.avue-input-cron__times li{padding:4px 0;color:#606266;font-family:"Courier New",Courier,monospace}.avue-input-cron__times li::before{content:"→";margin-right:8px;color:#409eff}.avue-data-tabs .item{position:relative;margin:15px;padding:12px;height:160px;border-radius:4px;box-sizing:border-box;overflow:hidden;color:#fff}.avue-data-tabs .item a{color:#fff}.avue-data-tabs .item-header{position:relative}.avue-data-tabs .item-header>p{color:#fff;margin:0;font-size:14px}.avue-data-tabs .item-header>span{position:absolute;right:0;top:0;padding:2px 8px;border-radius:4px;font-size:12px;background:rgba(255,255,255,.3)}.avue-data-tabs .item-body .h2{color:#fff;margin:0;font-size:32px;line-height:60px;font-weight:700}.avue-data-tabs .item-footer{padding-top:8px;line-height:20px}.avue-data-tabs .item-footer>span{font-size:10px}.avue-data-tabs .item-footer>p{color:#fff;margin:0;font-size:12px}.avue-data-tabs .item-tip{display:flex;align-items:center;justify-content:center;position:absolute;width:80px;height:80px;bottom:10px;right:10px;border:2px solid #fff;border-radius:100%;font-size:48px;transform:rotate(-40deg);opacity:.1}.avue-data-cardText .item{padding:20px 25px;margin:10px 20px;background:#F8F8F8;border-radius:6px;box-shadow:2px 2px 20px #ccc}.data-box .item,.data-card .item{position:relative;border-radius:5px;overflow:hidden}.avue-data-cardText .item-header{color:#000;font-weight:700}.avue-data-cardText .item-content{margin-top:8PX;font-size:14px;line-height:22px;color:#333}.avue-data-cardText .item-footer{margin-top:20px;display:flex;justify-content:space-between;font-size:12px;color:#999}.data-box .item{margin:0 auto 10px;width:96%;height:100px;box-sizing:border-box}.data-box .item:hover .item-text{top:0}.data-box .item a{display:flex}.data-box .item-icon{width:100px;height:100px;color:#fff;text-align:center;line-height:100px;align-items:center;justify-content:center;display:flex}.data-box .item-icon i{font-size:48px!important}.data-box .item-info{border-radius:0 5px 5px 0;border:1px solid #eee;border-left:none;background-color:#fff;flex:1;display:flex;justify-content:center;flex-direction:column}.data-box .item-info .title{font-size:30px;line-height:40px;text-align:center}.data-box .item-info .info{color:#999;font-size:14px;text-align:center}.data-progress .item{margin:10px}.data-progress .item-header{margin-bottom:10px;display:flex;align-items:center;justify-content:space-between}.data-progress .item-count{line-height:26px;font-size:26px;color:#666}.data-progress .item-title{color:#999;font-size:14px}.data-icons .item{display:flex;align-items:center;justify-content:center;width:90%;margin:10px 15px}.data-icons .item-icon{margin-top:3px;margin-right:0!important;text-align:center}.data-icons .item-icon>i{font-size:46px!important}.data-icons .item-info{text-align:center;padding:10px 0}.data-icons .item-info>span{display:block;padding:5px 0;color:#999;font-size:12px}.data-icons .item-info .count{font-size:20px;line-height:25px}.data-icons .item--easy{flex-direction:column}.data-icons .item--easy>.item-icon{margin:0}.data-icons .item--easy>.item-info{margin-top:-15px}.data-icons .item--easy>.item-info>span{font-size:14px}.data-card .item{margin:0 auto 50px;width:230px;height:340px;border-color:#fff;border-width:1px;border-style:solid}.data-card .item:hover .item-text{top:0}.data-card .item-img{width:100%;border-radius:5px 5px 0 0}.data-card .item-text{position:absolute;top:150px;padding:20px 15px;width:100%;height:340px;overflow:auto;box-sizing:border-box;border-radius:0 0 5px 5px;opacity:.9;transition:top .4s}.data-card .item-text>p{font-size:12px;line-height:25px;text-indent:2em}.avue-data-display .item{display:flex;align-items:center;flex-direction:column;margin:5px 0;text-align:center}.avue-data-display .count{display:block;margin:8px 0 15px;font-weight:700;font-size:32px;color:#15A0FF}.avue-data-display .title{line-height:32px;color:#999}.avue-data-display .splitLine{display:block;margin:0 auto;width:24px;height:1px;background:#9B9B9B}.avue-data-imgtext .item{position:relative;height:340px;width:240px;margin:10px auto 50px;border-radius:5px;box-shadow:2px 2px 20px #ccc}.avue-data-imgtext .item-header img{width:100%;height:170px;border-radius:5px 5px 0 0}.avue-data-imgtext .item-content{padding:10px 15px;color:#333!important}.avue-data-imgtext .item-content span{font-size:20px}.avue-data-imgtext .item-content:hover span{color:#1890ff}.avue-data-imgtext .item-content p{font-size:14px;height:60px;margin:6px 0;overflow:hidden}.avue-data-imgtext .item-footer{padding:10px 15px;position:relative}.avue-data-imgtext .item-footer img{height:20px;width:20px;border-radius:50%}.avue-data-imgtext .item-footer div{display:inline-block}.avue-data-imgtext .item-footer div li,.avue-data-imgtext .item-footer div ul{padding:0;margin:0 0 0 -8px;list-style:none;display:inline-block;border:2px solid #fff;border-radius:50%}.avue-data-imgtext .item-footer div:nth-child(1){font-size:14px;color:#ccc!important}.avue-data-imgtext .item-footer div:nth-child(2){position:absolute;right:15px}.avue-data-operatext .item{margin:5px 10px;box-sizing:border-box;position:relative;border-radius:3px;background:#fff;box-shadow:0 1px 1px rgba(0,0,0,.1)}.avue-data-operatext .item a{color:#333}.avue-data-operatext .item-header{padding:20px 20px 60px;border-top-right-radius:3px;border-top-left-radius:3px;color:#fff;background-position:center center}.avue-data-operatext .item-title{margin-top:0;margin-bottom:5px;font-size:25px;font-weight:300;text-shadow:0 1px 1px rgba(0,0,0,.2);display:block}.avue-data-operatext .item-subtitle{font-size:14px;font-weight:400}.avue-data-operatext .item-content{border-top:1px solid #f4f4f4;padding:10px 10px 20px;background-color:#fff;border-radius:0 0 3px 3px}.avue-data-operatext .item-img{margin:-60px auto 5px;width:90px;height:90px;border-radius:100%;overflow:hidden;border:4px solid #fff}.avue-data-operatext .item-img img{width:100%;height:100%}.avue-data-operatext .item-list{display:flex;flex-wrap:wrap}.avue-data-operatext .item-row{box-sizing:border-box;width:33.33%;text-align:center}.avue-data-operatext .item-label{margin-bottom:5px;display:block;font-weight:600;font-size:16px}.avue-data-operatext .item-value{display:block;font-weight:300;text-transform:uppercase}.avue-data-rotate .item{margin:5px 10px;box-sizing:border-box;position:relative;color:#fff;border-radius:3px}.avue-data-rotate .item-box{padding:10px 20px}.avue-data-rotate .item-count{margin-bottom:5px;font-size:38px;white-space:nowrap;font-weight:300;display:block}.avue-data-rotate .item-title{font-size:15px}.avue-data-rotate .item-icon{transition:all .3s linear;position:absolute;top:20px;right:20px;font-size:65px;color:rgba(0,0,0,.15)}.avue-data-rotate .item-icon:hover{font-size:70px}.avue-data-rotate .item-more{position:relative;text-align:center;padding:3px 0;color:#fff;color:rgba(255,255,255,.8);display:block;z-index:10;font-size:14px;letter-spacing:2px;background:rgba(0,0,0,.1);text-decoration:none}.avue-data-pay .item{margin:0 auto;padding-bottom:16px;width:80%;position:relative;border-radius:4px;background-color:#fff;min-height:670px;box-shadow:1px 2px 10px #eee}.avue-data-pay .top{width:100%;height:6px;position:absolute;top:0;left:0;border-radius:4px 4px 0 0}.avue-data-pay .header{margin-bottom:40px;text-align:center}.avue-data-pay .title{text-align:center;padding:20px 0 10px;font-size:20px;font-weight:200}.avue-data-pay .money span{margin-right:5px;font-size:14px}.avue-data-pay .money .b{margin-right:2px;font-size:20px;font-weight:700}.avue-data-pay .money s{margin-right:3px;font-size:12px}.avue-data-pay .money em{font-size:14px;font-style:normal}.avue-data-pay .img{width:50px}.avue-data-pay .line{width:60%;height:1px;background:hsla(0,0%,59%,.1);margin:20px auto}.avue-data-pay .btn{display:block;width:120px;height:32px;line-height:32px;margin:0 auto;text-align:center;border-radius:32px;color:#fff;cursor:pointer;transition:opacity .2s ease-in-out}.avue-data-pay .list-item{list-style:none;padding-left:20px;margin-bottom:12px;color:#666;font-size:14px}.avue-data-pay .list-item a{color:#666}.avue-data-pay .list-item-icon{color:#515a6e;margin-right:8px}.avue-data-pay .list-item--link{font-size:12px;color:#2d8cf0}.avue-data-pay .list-item--no,.avue-data-pay .list-item--no+span{color:#c5c8ce}.data-price .item{margin:0 20px;text-align:center;box-shadow:2px 3px 15px #eee}.data-price .item:hover{border:1px solid #00a680}.data-price .item:hover .body{color:#fff;background-color:#00a680}.data-price .item:hover .body::after{border-top-color:#00a680}.data-price .item:hover .list{color:#00a680}.data-price .item:hover .price{color:#fff}.data-price .item .title{height:80px;line-height:80px;font-size:18px;color:#333}.data-price .item .body,.data-price .item .price{margin:0 0 50px;line-height:120px;height:120px;color:#6b6b6b}.data-price .item .price{padding:0 8px;font-size:42px}.data-price .item .append{font-size:16px}.data-price .item .body{position:relative;padding:0;background-color:#f4f4f4;font-size:42px}.data-price .item .body::before{content:"¥";font-size:16px;font-weight:400}.data-price .item .body::after{content:"";position:absolute;display:block;width:0;height:0;bottom:-15px;left:50%;transform:translateX(-50%);border-color:#f4f4f4 transparent transparent;border-style:solid;border-width:20px 30px 0}.data-price .item .list{padding-bottom:30px;color:#666;font-size:14px}.avue-data-panel .item{padding:0 30px;margin:0 20px;cursor:pointer;height:108px;font-size:12px;position:relative;overflow:hidden;color:#666;background:#fff;box-shadow:4px 4px 40px rgba(0,0,0,.05);border-color:rgba(0,0,0,.05);display:flex;align-items:center;justify-content:space-between}.avue-data-panel .item-icon{font-size:52px}.avue-data-panel .item-info{text-align:center}.avue-data-panel .item-title{line-height:18px;color:rgba(0,0,0,.45);font-size:16px;margin-bottom:12px}.data-statistic__item,.data-weather__item{margin-bottom:20px;padding:20px;cursor:pointer}.avue-data-panel .item-count{font-size:20px}.data-statistic__item{background:#fff;border-radius:8px;display:flex;align-items:center;border:1px solid #ebeef5;transition:all .3s}.data-statistic__icon,.data-weather__item{border-radius:12px;background:linear-gradient(135deg,#667eea 0,#764ba2 100%)}.data-statistic__item:hover{box-shadow:0 4px 12px rgba(0,0,0,.1);transform:translateY(-2px)}.data-statistic__icon{width:60px;height:60px;display:flex;align-items:center;justify-content:center;margin-right:16px;color:#fff}.data-statistic__content{flex:1}.data-statistic__title{font-size:14px;color:#909399;margin-bottom:8px}.data-statistic__value{font-size:28px;font-weight:600;color:#303133;line-height:1.2}.data-statistic__prefix,.data-statistic__suffix{font-size:16px;font-weight:400;color:#606266}.data-statistic__trend{margin-top:8px;font-size:13px;color:#909399}.data-statistic__trend-icon.is-up{color:#67c23a}.data-statistic__trend-icon.is-down{color:#f56c6c}.data-statistic__trend-value{margin-left:4px;font-weight:500}.data-statistic__trend-text{margin-left:8px}.data-weather__item{color:#fff;transition:transform .3s}.data-weather__item:hover{transform:scale(1.02)}.data-weather__header{display:flex;justify-content:space-between;margin-bottom:15px}.data-weather__city{font-size:18px;font-weight:600}.data-weather__date{font-size:13px;opacity:.8}.data-weather__body{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.data-weather__temp-value{font-size:48px;font-weight:300}.data-weather__temp-unit{font-size:24px;vertical-align:top}.data-weather__footer{display:flex;justify-content:space-between;opacity:.9}.data-weather__range{margin-top:10px;font-size:14px;opacity:.8}.data-rank{background:#fff;border-radius:8px;padding:20px;border:1px solid #ebeef5}.data-rank__header{margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid #ebeef5}.data-rank__title{font-size:16px;font-weight:600;color:#303133}.data-rank__item{display:flex;align-items:center;padding:12px 0;border-bottom:1px solid #f5f7fa;cursor:pointer;transition:background .2s}.data-rank__item:hover{background:#f5f7fa}.data-rank__item:last-child{border-bottom:none}.data-rank__index{width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;color:#909399;margin-right:12px}.data-rank__index.is-first,.data-rank__index.is-second,.data-rank__index.is-third{font-size:20px}.data-rank__avatar{width:40px;height:40px;border-radius:50%;overflow:hidden;margin-right:12px}.data-rank__avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.data-rank__info{flex:1;min-width:0}.data-rank__name{font-size:14px;font-weight:500;color:#303133}.data-rank__desc{font-size:12px;color:#909399;margin-top:4px}.data-rank__value{font-size:16px;font-weight:600;color:#409eff;margin-right:12px}.data-rank__unit{font-size:12px;font-weight:400;color:#909399}.data-rank__bar{width:100px}.data-profile__item{background:#fff;border-radius:12px;padding:24px;margin-bottom:20px;text-align:center;border:1px solid #ebeef5;position:relative;overflow:hidden;transition:all .3s}.data-profile__item:hover{box-shadow:0 8px 24px rgba(0,0,0,.12)}.data-profile__cover{position:absolute;top:0;left:0;right:0;height:80px;background-size:cover;background-position:center}.data-profile__avatar{width:80px;height:80px;border-radius:50%;margin:0 auto 16px;overflow:hidden;border:4px solid #fff;box-shadow:0 4px 12px rgba(0,0,0,.15);position:relative;z-index:1;background:linear-gradient(135deg,#667eea 0,#764ba2 100%)}.data-profile__avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.data-profile__avatar-text{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:#fff;font-size:32px;font-weight:600}.data-profile__name{font-size:18px;font-weight:600;color:#303133;margin-bottom:4px}.data-profile__title{font-size:14px;color:#409eff;margin-bottom:8px}.data-profile__desc{font-size:13px;color:#909399;margin-bottom:12px}.data-profile__tags{margin-bottom:16px}.data-profile__tags .el-tag{margin:0 4px 4px 0}.data-profile__contact{text-align:left;padding:12px;background:#f5f7fa;border-radius:8px;margin-bottom:16px}.data-profile__contact-item{font-size:13px;color:#606266;margin-bottom:8px}.data-profile__contact-item:last-child{margin-bottom:0}.data-profile__contact-icon{margin-right:8px}.data-profile__stats{display:flex;justify-content:center;padding:16px 0;border-top:1px solid #ebeef5;margin-top:16px}.data-profile__stat{flex:1;text-align:center}.data-profile__stat-value{font-size:20px;font-weight:600;color:#303133}.data-profile__stat-label{font-size:12px;color:#909399;margin-top:4px}.data-profile__actions{margin-top:16px}.data-product__item{background:#fff;border-radius:12px;overflow:hidden;margin-bottom:20px;border:1px solid #ebeef5;cursor:pointer;transition:all .3s}.data-product__item:hover{box-shadow:0 8px 24px rgba(0,0,0,.12);transform:translateY(-4px)}.data-product__img{position:relative;padding-top:100%;overflow:hidden}.data-product__img img{position:absolute;top:0;left:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .3s}.data-product__img:hover img{transform:scale(1.05)}.data-product__tag{position:absolute;top:10px;left:10px;padding:4px 8px;font-size:12px;color:#fff;border-radius:4px}.data-product__content{padding:16px}.data-product__name{font-size:14px;font-weight:500;color:#303133;margin-bottom:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.data-product__desc{font-size:12px;color:#909399;margin-bottom:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.data-product__rating{display:flex;align-items:center;margin-bottom:8px}.data-product__rating-value{font-size:14px;color:#f7ba2a;margin-left:8px}.data-product__rating-count{font-size:12px;color:#909399;margin-left:4px}.data-product__price{margin-bottom:8px}.data-product__price-current{font-size:20px;font-weight:600;color:#f56c6c}.data-product__price-symbol{font-size:14px}.data-product__price-original{font-size:14px;color:#c0c4cc;text-decoration:line-through;margin-left:8px}.data-product__discount{display:inline-block;padding:2px 6px;font-size:12px;color:#f56c6c;background:#fef0f0;border-radius:4px;margin-left:8px}.data-product__info{font-size:12px;color:#909399;margin-bottom:12px}.data-product__info span{margin-right:12px}.data-product__actions{display:flex;gap:8px}.data-countdown__item{border-radius:12px;padding:24px;margin-bottom:20px;color:#fff;text-align:center}.data-countdown__title{font-size:16px;margin-bottom:16px;opacity:.9}.data-countdown__timer{display:flex;align-items:center;justify-content:center;gap:8px}.data-countdown__block{display:flex;flex-direction:column;align-items:center}.data-countdown__number{font-size:36px;font-weight:600;background:rgba(255,255,255,.2);padding:8px 16px;border-radius:8px;min-width:60px}.data-countdown__label{font-size:12px;margin-top:8px;opacity:.8}.data-countdown__separator{font-size:32px;font-weight:700;margin-bottom:20px}.data-countdown__desc{margin-top:16px;font-size:14px;opacity:.8}.data-notice{background:#fff;border-radius:8px;padding:20px;border:1px solid #ebeef5}.data-notice__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #ebeef5}.data-notice__title{font-size:16px;font-weight:600;color:#303133}.data-notice__more{font-size:14px;color:#409eff;cursor:pointer}.data-notice__more:hover{opacity:.8}.data-notice__item{display:flex;align-items:flex-start;padding:12px 0;border-bottom:1px solid #f5f7fa;cursor:pointer;transition:background .2s}.data-notice__item:hover{background:#f5f7fa}.data-notice__item:last-child{border-bottom:none}.data-notice__tag{padding:2px 8px;font-size:12px;color:#fff;border-radius:4px;margin-right:12px;flex-shrink:0}.data-notice__content{flex:1;min-width:0}.data-notice__text{font-size:14px;color:#303133;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.data-notice__date{font-size:12px;color:#909399;margin-top:4px}.data-task{background:#fff;border-radius:8px;padding:20px;border:1px solid #ebeef5}.data-task__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.data-list__header,.data-task__progress{margin-bottom:16px}.data-task__title{font-size:16px;font-weight:600;color:#303133}.data-task__count{font-size:14px;color:#909399}.data-task__item{display:flex;align-items:flex-start;padding:12px 0;border-bottom:1px solid #f5f7fa}.data-task__item:last-child{border-bottom:none}.data-task__item.is-completed .data-task__text{text-decoration:line-through;color:#c0c4cc}.data-task__content{flex:1;margin-left:12px}.data-task__text{font-size:14px;color:#303133}.data-task__meta{display:flex;align-items:center;gap:8px;margin-top:4px}.data-task__deadline{font-size:12px;color:#909399}.data-list{background:#fff;border-radius:8px;padding:20px;border:1px solid #ebeef5}.data-list__header{display:flex;justify-content:space-between;align-items:center;padding-bottom:12px;border-bottom:1px solid #ebeef5}.data-list__title{font-size:16px;font-weight:600;color:#303133}.data-list__item{display:flex;align-items:center;padding:16px 0;border-bottom:1px solid #f5f7fa;cursor:pointer;transition:background .2s}.data-list__item:hover{background:#f5f7fa;margin:0 -20px;padding:16px 20px}.data-list__item:last-child{border-bottom:none}.data-list__avatar{width:48px;height:48px;border-radius:8px;overflow:hidden;background:#f5f7fa;display:flex;align-items:center;justify-content:center;flex-shrink:0}.data-list__avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.data-list__avatar i{font-size:24px;color:#909399}.data-list__body{flex:1;margin-left:16px;min-width:0}.data-list__title-row{display:flex;align-items:center;gap:8px}.data-list__name{font-size:14px;font-weight:500;color:#303133}.data-list__desc{font-size:13px;color:#909399;margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.data-list__extra{text-align:right;margin-left:16px}.data-list__value{font-size:16px;font-weight:600;color:#303133}.data-list__label{display:block;font-size:12px;color:#909399;margin-top:4px}.data-list__action{margin-left:16px}.data-dashboard__item{background:#fff;border-radius:8px;padding:20px;margin-bottom:20px;border:1px solid #ebeef5}.data-dashboard__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.data-dashboard__title{font-size:14px;color:#909399}.data-dashboard__value{font-size:28px;font-weight:600;color:#303133;margin-bottom:16px}.data-dashboard__unit{font-size:14px;font-weight:400;color:#909399;margin-left:4px}.data-dashboard__chart{display:flex;align-items:flex-end;height:40px;gap:4px;margin-bottom:12px}.data-dashboard__bar{flex:1;border-radius:2px;min-height:4px;transition:height .3s}.data-dashboard__footer{display:flex;justify-content:space-between;font-size:12px;color:#909399;padding-top:12px;border-top:1px solid #f5f7fa}.avue--detail .avue-checkbox__all,.avue--detail .el-form-item.is-required:not(.is-no-asterisk) .el-form-item__label-wrap>.el-form-item__label:before,.avue--detail .el-form-item.is-required:not(.is-no-asterisk)>.el-form-item__label:before,.avue--detail .el-icon.avue-upload__avatar,.avue--detail .el-input-number__decrease,.avue--detail .el-input-number__increase,.avue--detail .el-input__prefix,.avue--detail .el-input__suffix,.avue--detail .el-select__suffix,.avue--detail .el-upload.el-upload--picture,.avue--detail .el-upload.el-upload--picture-card,.avue--detail .el-upload.el-upload--text,.avue--detail .el-upload__tip,.avue-canvas{display:none}[class^=avue-data-] a,[class^=data-] a{text-decoration:none}body{font-family:Chinese Quote,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol}*{outline:0}.avue--detail .hover-row td{background-color:#fff!important}.avue--detail .avue-group__header{border-bottom:1px solid #eee;padding-left:10px}.avue--detail .el-select__wrapper.is-disabled{background-color:transparent;box-shadow:none!important}.avue--detail .el-collapse-item__header{margin-bottom:0}.avue--detail .el-input.is-disabled .el-input__inner,.avue--detail .el-range-editor.is-disabled,.avue--detail .el-range-editor.is-disabled input,.avue--detail .el-textarea.is-disabled .el-textarea__inner{color:#606266;background-color:#fff;padding-left:0;box-shadow:none;-webkit-text-fill-color:inherit}.avue--detail .el-input-group__append,.avue--detail .el-input-group__prepend{background-color:transparent;border:none;box-shadow:none}.avue--detail .el-input__inner,.avue--detail .el-textarea__inner{border:none}.avue--detail .el-input__inner::-webkit-input-placeholder,.avue--detail .el-textarea__inner::-webkit-input-placeholder{color:transparent!important}.avue--detail .el-input__inner::-moz-placeholder,.avue--detail .el-textarea__inner::-moz-placeholder{color:transparent!important}.avue--detail .el-input__inner::-ms-input-placeholder,.avue--detail .el-textarea__inner::-ms-input-placeholder{color:transparent!important}.avue--detail .el-checkbox__input.is-disabled.is-checked .el-checkbox__inner{background-color:#409EFF;border-color:#409EFF}.avue--detail .el-checkbox__input.is-disabled.is-checked .el-checkbox__inner::after{border-color:#fff}.avue--detail .el-radio__input.is-disabled.is-checked .el-radio__inner{background-color:#409EFF;border-color:#409EFF}.avue--detail .el-radio__input.is-disabled.is-checked .el-radio__inner::after{background-color:#fff}.avue--detail .el-checkbox__input.is-disabled+span.el-checkbox__label,.avue--detail .el-radio__input.is-disabled+span.el-radio__label,.avue--detail .el-select__wrapper.is-disabled .el-select__selected-item{color:#606266}.avue--detail .el-row{border-top:1px solid #ebeef5;border-left:1px solid #ebeef5}.avue--detail .el-col{margin:0!important;padding:0!important;border-bottom:1px solid #ebeef5;border-right:1px solid #ebeef5}.avue--detail .el-form-item{margin-bottom:0;background:#fafafa}.avue--detail .el-form-item__label{padding-right:20px;color:#909399;box-sizing:border-box;background:#fafafa}.avue--detail .el-tag{margin-left:0!important;margin-right:6px!important}.avue--detail .avue-crud{margin:10px 0}.avue--detail .el-form-item__content{border-left:1px solid #ebeef5;padding:0 20px;box-sizing:border-box;background-color:#fff}.avue--detail .el-input.is-disabled .el-input__wrapper{box-shadow:none;background-color:#fff}.avue--detail .avue-upload--picture-img,.avue--detail .el-upload-list--picture-card{padding-top:10px}.avue--detail .avue-upload--picture-img .el-upload.el-upload--text{display:inline-block}.avue--detail__column .el-form-item{background-color:#fff}.avue--detail__column .el-form-item__label{padding-right:12px}.avue--detail__column .el-form-item__content{padding-left:0;border-left:none}.avue-icon{display:flex;align-items:center;justify-content:center}.avue-icon i,.avue-icon svg{width:20px;height:20px;font-size:20px}.avue-icon--small i,.avue-icon--small svg{font-size:15px;width:15px;height:15px}.avue-dialog{min-height:180px;border-radius:2px;max-height:calc(100% - 200px);max-width:calc(100% - 100px);display:flex;padding:0;flex-direction:column}.el-dialog.is-fullscreen,.el-drawer{max-width:initial;max-height:initial}.avue-dialog .el-dialog__header{padding:16px}.avue-dialog .el-dialog__header,.avue-dialog .el-drawer__header{border-bottom:1px solid #f0f0f0}.avue-dialog .el-dialog__title,.avue-dialog .el-drawer__header{color:rgba(0,0,0,.85);font-weight:500;word-wrap:break-word}.avue-dialog .el-dialog__body{padding:20px 20px 60px;flex:1;overflow:scroll}.avue-dialog .el-dialog__footer{padding:10px 20px 20px}.avue-dialog .el-drawer{position:absolute;right:0;top:0;display:flex;flex-direction:column}.avue-dialog .el-drawer__header{margin:0;padding:16px 10px 16px 24px}.avue-dialog .el-drawer__body{padding-bottom:60px}.avue-dialog__footer{z-index:2;display:block;padding:10px 16px;box-sizing:border-box;border-top:1px solid #f0f0f0;width:100%;position:absolute;left:0;bottom:0;background-color:#fff;text-align:right}.avue-dialog__footer--left{text-align:left}.avue-dialog__footer--center{text-align:center}.avue-dialog--none .el-dialog__body{padding-bottom:20px}.el-drawer{left:initial;transform:initial}.el-drawer .avue-crud__dialog__menu{margin-top:5px}.el-drawer .avue-crud__dialog__menu i{font-size:16px}.avue-form .avue-cascader,.avue-form .avue-date .el-input,.avue-form .avue-input-number,.avue-form .avue-input-tree,.avue-form .avue-select,.avue-form .avue-time .el-input,.avue-form .el-form-item__content>div{width:100%}.avue-form .avue-date .el-date-editor,.avue-form .avue-time .el-date-editor{width:100%;box-sizing:border-box}.el-upload--picture-card .el-upload-dragger,.el-upload--picture-img .el-upload-dragger{width:inherit;height:inherit;background-color:inherit}@media screen and (max-width:992px){.avue-crud .avue-crud__menu{display:block}.avue-crud .avue-crud__left,.avue-crud .avue-crud__right{margin:5px 0;width:100%}.avue-crud .avue-crud__right{text-align:right}}
@@ -0,0 +1,2 @@
1
+ export * from './index.mjs';
2
+ export { default } from './index.mjs';
package/es/avue.min.ts ADDED
@@ -0,0 +1,2 @@
1
+ export * from './index';
2
+ export { default } from './index';
package/es/avue.mjs ADDED
@@ -0,0 +1,2 @@
1
+ export * from './index.mjs';
2
+ export { default } from './index.mjs';
package/es/avue.ts ADDED
@@ -0,0 +1,2 @@
1
+ export * from './index';
2
+ export { default } from './index';
@@ -0,0 +1,8 @@
1
+ import bem from '../utils/bem.mjs';
2
+ import { KEY_COMPONENT_NAME } from '../global/variable.mjs';
3
+ export default function create(sfc) {
4
+ sfc.name = KEY_COMPONENT_NAME + sfc.name;
5
+ sfc.mixins = sfc.mixins || [];
6
+ sfc.mixins.push(bem);
7
+ return sfc;
8
+ }
@@ -0,0 +1,16 @@
1
+ import bem from '../utils/bem';
2
+ import { KEY_COMPONENT_NAME } from '../global/variable';
3
+
4
+ type SfcComponent = {
5
+ name: string;
6
+ mixins?: any[];
7
+ [key: string]: any;
8
+ };
9
+
10
+ export default function create<S extends SfcComponent>(sfc: S): S {
11
+ sfc.name = KEY_COMPONENT_NAME + sfc.name;
12
+ sfc.mixins = sfc.mixins || [];
13
+ sfc.mixins.push(bem);
14
+
15
+ return sfc;
16
+ }
@@ -0,0 +1,184 @@
1
+ import { validatenull } from '../utils/validate.mjs';
2
+ import { KEY_COMPONENT_NAME, DIC_SPLIT, ARRAY_LIST, DATE_LIST, INPUT_LIST, ARRAY_VALUE_LIST, MULTIPLE_LIST, SELECT_LIST, RANGE_LIST, } from '../global/variable.mjs';
3
+ import { detailDataType, findObject, createObj } from '../utils/util.mjs';
4
+ import { t } from '../locale/index.mjs';
5
+ let count = 0;
6
+ export const calcCascader = (list = []) => {
7
+ list.forEach((ele) => {
8
+ const cascader = ele.cascader;
9
+ if (!validatenull(cascader)) {
10
+ const parentProp = ele.prop;
11
+ cascader.forEach((citem) => {
12
+ const column = findObject(list, citem);
13
+ if (column)
14
+ column.parentProp = parentProp;
15
+ });
16
+ }
17
+ });
18
+ return list;
19
+ };
20
+ export const calcCount = (ele, spanDefault = 12, init = false) => {
21
+ const spanAll = 24;
22
+ if (init)
23
+ count = 0;
24
+ const currentSpan = (ele.span || spanDefault) + (ele.offset || 0);
25
+ count += currentSpan;
26
+ if (ele.row && count < spanAll) {
27
+ ele.count = spanAll - count;
28
+ count = 0;
29
+ }
30
+ else if (count >= spanAll) {
31
+ count = 0;
32
+ }
33
+ return ele;
34
+ };
35
+ export const initVal = (value, safe) => {
36
+ let { type, multiple, dataType, separator = DIC_SPLIT, alone, emitPath, range } = safe;
37
+ let list = value;
38
+ if ((MULTIPLE_LIST.includes(type) && multiple == true) ||
39
+ (ARRAY_VALUE_LIST.includes(type) && emitPath !== false) ||
40
+ (RANGE_LIST.includes(type) && range == true)) {
41
+ if (!Array.isArray(list)) {
42
+ if (validatenull(list)) {
43
+ list = [];
44
+ }
45
+ else {
46
+ if (dataType == 'json') {
47
+ list = JSON.parse(list);
48
+ }
49
+ else {
50
+ list = (list + '').split(separator) || [];
51
+ }
52
+ }
53
+ }
54
+ list.forEach((ele, index) => {
55
+ list[index] = detailDataType(ele, dataType);
56
+ });
57
+ if (ARRAY_LIST.includes(type) && validatenull(list) && alone)
58
+ list = [''];
59
+ }
60
+ else {
61
+ list = detailDataType(list, dataType);
62
+ }
63
+ return list;
64
+ };
65
+ export const getSearchType = (column) => {
66
+ const type = column.type;
67
+ const range = column.searchRange;
68
+ let result = type;
69
+ if (column.searchType)
70
+ return column.searchType;
71
+ if (['radio', 'checkbox', 'switch'].includes(type)) {
72
+ result = 'select';
73
+ }
74
+ else if (DATE_LIST.includes(type)) {
75
+ const rangeKey = 'range';
76
+ if (range) {
77
+ if (!type.includes(rangeKey)) {
78
+ result = type + rangeKey;
79
+ }
80
+ else {
81
+ result = type;
82
+ }
83
+ }
84
+ else
85
+ result = type.replace(rangeKey, '');
86
+ }
87
+ else if (['textarea'].includes(type)) {
88
+ result = 'input';
89
+ }
90
+ return result;
91
+ };
92
+ export const getComponent = (type, component) => {
93
+ let result = type || 'input';
94
+ if (!validatenull(component)) {
95
+ return component;
96
+ }
97
+ else if (ARRAY_LIST.includes(type || '')) {
98
+ result = 'array';
99
+ }
100
+ else if (['time', 'timerange'].includes(type || '')) {
101
+ result = 'time';
102
+ }
103
+ else if (DATE_LIST.includes(type || '')) {
104
+ result = 'date';
105
+ }
106
+ else if ([
107
+ 'password',
108
+ 'textarea',
109
+ 'search',
110
+ 'phone',
111
+ 'currency',
112
+ 'bankCard',
113
+ 'bank-card',
114
+ 'idCard',
115
+ 'id-card',
116
+ 'email',
117
+ 'code',
118
+ 'plate',
119
+ 'ip',
120
+ 'mac',
121
+ 'uscc',
122
+ ].includes(type || '')) {
123
+ result = 'input';
124
+ }
125
+ else if (type === 'cron') {
126
+ result = 'input-cron';
127
+ }
128
+ else if (INPUT_LIST.includes(type || '')) {
129
+ result = 'input-' + type;
130
+ }
131
+ return KEY_COMPONENT_NAME + result;
132
+ };
133
+ export const formInitVal = (list = []) => {
134
+ let tableForm = {};
135
+ list.forEach((ele) => {
136
+ if (['rate', 'slider', 'number'].includes(ele.type) ||
137
+ ele.dataType === 'number' ||
138
+ (ele.type == 'select' && ele.virtualize == true)) {
139
+ tableForm[ele.prop] = undefined;
140
+ }
141
+ else if ((ARRAY_VALUE_LIST.includes(ele.type) &&
142
+ ele.emitPath !== false &&
143
+ ele.dataType != 'json') ||
144
+ (MULTIPLE_LIST.includes(ele.type) && ele.multiple) ||
145
+ ele.dataType === 'array') {
146
+ tableForm[ele.prop] = [];
147
+ }
148
+ else if (RANGE_LIST.includes(ele.type) && ele.range == true) {
149
+ tableForm[ele.prop] = [0, 0];
150
+ }
151
+ else {
152
+ tableForm[ele.prop] = '';
153
+ }
154
+ if (ele.bind) {
155
+ tableForm = createObj(tableForm, ele.bind);
156
+ }
157
+ if (!validatenull(ele.value)) {
158
+ tableForm[ele.prop] = ele.value;
159
+ }
160
+ });
161
+ return tableForm;
162
+ };
163
+ export const getPlaceholder = function (column, type) {
164
+ const placeholder = column.placeholder;
165
+ const label = column.label;
166
+ if (type === 'search') {
167
+ const searchPlaceholder = column.searchPlaceholder;
168
+ if (!validatenull(searchPlaceholder)) {
169
+ return searchPlaceholder;
170
+ }
171
+ else {
172
+ return label;
173
+ }
174
+ }
175
+ else if (validatenull(placeholder)) {
176
+ if (SELECT_LIST.includes(column.type)) {
177
+ return `${t('tip.select')} ${label}`;
178
+ }
179
+ else {
180
+ return `${t('tip.input')} ${label}`;
181
+ }
182
+ }
183
+ return placeholder;
184
+ };
@@ -0,0 +1,190 @@
1
+ import { validatenull } from '../utils/validate';
2
+ import {
3
+ KEY_COMPONENT_NAME,
4
+ DIC_SPLIT,
5
+ ARRAY_LIST,
6
+ DATE_LIST,
7
+ INPUT_LIST,
8
+ ARRAY_VALUE_LIST,
9
+ MULTIPLE_LIST,
10
+ SELECT_LIST,
11
+ RANGE_LIST,
12
+ } from '../global/variable';
13
+ import { detailDataType, findObject, createObj } from '../utils/util';
14
+ import { t } from '../locale/index';
15
+
16
+ let count = 0;
17
+
18
+ export const calcCascader = (list: Record<string, any>[] = []) => {
19
+ list.forEach((ele) => {
20
+ const cascader = ele.cascader;
21
+ if (!validatenull(cascader)) {
22
+ const parentProp = ele.prop;
23
+ cascader.forEach((citem: string) => {
24
+ const column = findObject(list, citem);
25
+ if (column) column.parentProp = parentProp;
26
+ });
27
+ }
28
+ });
29
+ return list;
30
+ };
31
+
32
+ export const calcCount = (
33
+ ele: Record<string, any>,
34
+ spanDefault = 12,
35
+ init = false
36
+ ) => {
37
+ const spanAll = 24;
38
+ if (init) count = 0;
39
+ const currentSpan = (ele.span || spanDefault) + (ele.offset || 0);
40
+ count += currentSpan;
41
+ if (ele.row && count < spanAll) {
42
+ ele.count = spanAll - count;
43
+ count = 0;
44
+ } else if (count >= spanAll) {
45
+ count = 0;
46
+ }
47
+ return ele;
48
+ };
49
+
50
+ export const initVal = (value: any, safe: Record<string, any>) => {
51
+ let { type, multiple, dataType, separator = DIC_SPLIT, alone, emitPath, range } = safe;
52
+ let list = value;
53
+ if (
54
+ (MULTIPLE_LIST.includes(type) && multiple == true) ||
55
+ (ARRAY_VALUE_LIST.includes(type) && emitPath !== false) ||
56
+ (RANGE_LIST.includes(type) && range == true)
57
+ ) {
58
+ if (!Array.isArray(list)) {
59
+ if (validatenull(list)) {
60
+ list = [];
61
+ } else {
62
+ if (dataType == 'json') {
63
+ list = JSON.parse(list);
64
+ } else {
65
+ list = (list + '').split(separator) || [];
66
+ }
67
+ }
68
+ }
69
+ list.forEach((ele: any, index: number) => {
70
+ list[index] = detailDataType(ele, dataType);
71
+ });
72
+ if (ARRAY_LIST.includes(type) && validatenull(list) && alone) list = [''];
73
+ } else {
74
+ list = detailDataType(list, dataType);
75
+ }
76
+ return list;
77
+ };
78
+
79
+ export const getSearchType = (column: Record<string, any>) => {
80
+ const type = column.type;
81
+ const range = column.searchRange;
82
+ let result = type;
83
+ if (column.searchType) return column.searchType;
84
+ if (['radio', 'checkbox', 'switch'].includes(type)) {
85
+ result = 'select';
86
+ } else if (DATE_LIST.includes(type)) {
87
+ const rangeKey = 'range';
88
+ if (range) {
89
+ if (!type.includes(rangeKey)) {
90
+ result = type + rangeKey;
91
+ } else {
92
+ result = type;
93
+ }
94
+ } else result = type.replace(rangeKey, '');
95
+ } else if (['textarea'].includes(type)) {
96
+ result = 'input';
97
+ }
98
+ return result;
99
+ };
100
+
101
+ export const getComponent = (type?: string, component?: string) => {
102
+ let result = type || 'input';
103
+ if (!validatenull(component)) {
104
+ return component;
105
+ } else if (ARRAY_LIST.includes(type || '')) {
106
+ result = 'array';
107
+ } else if (['time', 'timerange'].includes(type || '')) {
108
+ result = 'time';
109
+ } else if (DATE_LIST.includes(type || '')) {
110
+ result = 'date';
111
+ } else if (
112
+ [
113
+ 'password',
114
+ 'textarea',
115
+ 'search',
116
+ 'phone',
117
+ 'currency',
118
+ 'bankCard',
119
+ 'bank-card',
120
+ 'idCard',
121
+ 'id-card',
122
+ 'email',
123
+ 'code',
124
+ 'plate',
125
+ 'ip',
126
+ 'mac',
127
+ 'uscc',
128
+ ].includes(type || '')
129
+ ) {
130
+ result = 'input';
131
+ } else if (type === 'cron') {
132
+ result = 'input-cron';
133
+ } else if (INPUT_LIST.includes(type || '')) {
134
+ result = 'input-' + type;
135
+ }
136
+ return KEY_COMPONENT_NAME + result;
137
+ };
138
+
139
+ export const formInitVal = (list: Record<string, any>[] = []) => {
140
+ let tableForm: Record<string, any> = {};
141
+ list.forEach((ele) => {
142
+ if (
143
+ ['rate', 'slider', 'number'].includes(ele.type) ||
144
+ ele.dataType === 'number' ||
145
+ (ele.type == 'select' && ele.virtualize == true)
146
+ ) {
147
+ tableForm[ele.prop] = undefined;
148
+ } else if (
149
+ (ARRAY_VALUE_LIST.includes(ele.type) &&
150
+ ele.emitPath !== false &&
151
+ ele.dataType != 'json') ||
152
+ (MULTIPLE_LIST.includes(ele.type) && ele.multiple) ||
153
+ ele.dataType === 'array'
154
+ ) {
155
+ tableForm[ele.prop] = [];
156
+ } else if (RANGE_LIST.includes(ele.type) && ele.range == true) {
157
+ tableForm[ele.prop] = [0, 0];
158
+ } else {
159
+ tableForm[ele.prop] = '';
160
+ }
161
+ if (ele.bind) {
162
+ tableForm = createObj(tableForm, ele.bind);
163
+ }
164
+ if (!validatenull(ele.value)) {
165
+ tableForm[ele.prop] = ele.value;
166
+ }
167
+ });
168
+ return tableForm;
169
+ };
170
+
171
+ export const getPlaceholder = function (column: Record<string, any>, type?: string) {
172
+ const placeholder = column.placeholder;
173
+ const label = column.label;
174
+ if (type === 'search') {
175
+ const searchPlaceholder = column.searchPlaceholder;
176
+ if (!validatenull(searchPlaceholder)) {
177
+ return searchPlaceholder;
178
+ } else {
179
+ return label;
180
+ }
181
+ } else if (validatenull(placeholder)) {
182
+ if (SELECT_LIST.includes(column.type)) {
183
+ return `${t('tip.select')} ${label}`;
184
+ } else {
185
+ return `${t('tip.input')} ${label}`;
186
+ }
187
+ }
188
+
189
+ return placeholder;
190
+ };
@@ -0,0 +1,74 @@
1
+ import { validatenull } from '../utils/validate.mjs';
2
+ import { getPasswordChar, getDicValue, getAsVal, detailDataType } from '../utils/util.mjs';
3
+ import { DIC_SPLIT, DIC_SHOW_SPLIT, DATE_LIST, MULTIPLE_LIST, ARRAY_VALUE_LIST, } from '../global/variable.mjs';
4
+ import dayjs from 'dayjs';
5
+ export const detail = (row = {}, column = {}, option = {}, dic = []) => {
6
+ let result = row[column.prop];
7
+ const type = column.type;
8
+ const separator = column.separator;
9
+ if (column.bind)
10
+ result = getAsVal(row, column.bind);
11
+ if (!validatenull(result)) {
12
+ const selectFlag = MULTIPLE_LIST.includes(column.type) && column.multiple;
13
+ const arrayFlag = ARRAY_VALUE_LIST.includes(column.type) && column.emitPath !== false;
14
+ if ((selectFlag || arrayFlag) && !Array.isArray(result) && !column.dataType)
15
+ column.dataType = 'string';
16
+ if (column.dataType) {
17
+ if (selectFlag || arrayFlag) {
18
+ if (!Array.isArray(result)) {
19
+ if (column.dataType == 'json') {
20
+ result = JSON.parse(result);
21
+ }
22
+ else {
23
+ result = result.split(separator || DIC_SPLIT);
24
+ }
25
+ }
26
+ result.forEach((ele, index) => {
27
+ result[index] = detailDataType(ele, column.dataType);
28
+ });
29
+ }
30
+ else {
31
+ result = detailDataType(result, column.dataType);
32
+ }
33
+ }
34
+ if (type === 'password') {
35
+ result = getPasswordChar(result, '*');
36
+ }
37
+ else if (DATE_LIST.includes(type) && column.format) {
38
+ const format = column.format;
39
+ const formatValue = dayjs().format('YYYY-MM-DD');
40
+ if (['dates', 'years', 'months'].includes(type)) {
41
+ if (typeof result === 'string') {
42
+ result = result.split(',');
43
+ }
44
+ if (Array.isArray(result)) {
45
+ result = result.map((date) => dayjs(date).format(format)).join(column.separator || ',');
46
+ }
47
+ }
48
+ else if (type.indexOf('range') !== -1) {
49
+ let [date1 = '', date2 = ''] = result;
50
+ if (type === 'timerange') {
51
+ date1 = `${formatValue} ${date1}`;
52
+ date2 = `${formatValue} ${date2}`;
53
+ }
54
+ result = [dayjs(date1).format(format), dayjs(date2).format(format)].join(column.separator || '~');
55
+ }
56
+ else {
57
+ if (type === 'time') {
58
+ result = `${formatValue} ${result}`;
59
+ }
60
+ result = dayjs(result).format(format);
61
+ }
62
+ }
63
+ }
64
+ if (!validatenull(dic)) {
65
+ result = getDicValue(dic, result, column.props || option.props);
66
+ }
67
+ if (typeof column.formatter === 'function') {
68
+ result = column.formatter(row, row[column.prop], result, column);
69
+ }
70
+ else if (Array.isArray(result) && !validatenull(dic)) {
71
+ result = result.join(separator || DIC_SHOW_SPLIT);
72
+ }
73
+ return result;
74
+ };