@sugarat/easypicker2-client 2.4.3 → 2.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (293) hide show
  1. package/dist/assets/aria-bc8e8b0f.js +2 -0
  2. package/dist/assets/aria-bc8e8b0f.js.map +1 -0
  3. package/dist/assets/aria-legacy.af0825d3.js +2 -0
  4. package/dist/assets/data-analysis-3ce8c1c1.js +2 -0
  5. package/dist/assets/data-analysis-3ce8c1c1.js.map +1 -0
  6. package/dist/assets/data-analysis-legacy.985137a1.js +2 -0
  7. package/dist/assets/data-board-fc2c2ec1.js +2 -0
  8. package/dist/assets/data-board-fc2c2ec1.js.map +1 -0
  9. package/dist/assets/data-board-legacy.33116f7c.js +2 -0
  10. package/dist/assets/el-date-picker-b377a533.js +2 -0
  11. package/dist/assets/el-date-picker-b377a533.js.map +1 -0
  12. package/dist/assets/el-date-picker-cf2e83b6.css +1 -0
  13. package/dist/assets/el-date-picker-legacy.127f0787.js +2 -0
  14. package/dist/assets/el-dialog-25bd2fb8.css +1 -0
  15. package/dist/assets/el-dialog-5b7bce58.js +2 -0
  16. package/dist/assets/el-dialog-5b7bce58.js.map +1 -0
  17. package/dist/assets/el-dialog-legacy.e6ef2c86.js +2 -0
  18. package/dist/assets/el-dropdown-item-0c6ddabc.css +1 -0
  19. package/dist/assets/el-dropdown-item-e0275106.js +2 -0
  20. package/dist/assets/el-dropdown-item-e0275106.js.map +1 -0
  21. package/dist/assets/el-dropdown-item-legacy.4888d114.js +2 -0
  22. package/dist/assets/el-form-item-3aad794a.css +1 -0
  23. package/dist/assets/el-form-item-c0658f70.js +2 -0
  24. package/dist/assets/el-form-item-c0658f70.js.map +1 -0
  25. package/dist/assets/el-form-item-legacy.a8e8784e.js +2 -0
  26. package/dist/assets/el-loading-c8798044.js +2 -0
  27. package/dist/assets/el-loading-c8798044.js.map +1 -0
  28. package/dist/assets/el-loading-d0f2d079.css +1 -0
  29. package/dist/assets/el-loading-legacy.534bd799.js +2 -0
  30. package/dist/assets/el-pagination-bf7c736d.css +1 -0
  31. package/dist/assets/el-pagination-dabcccbb.js +2 -0
  32. package/dist/assets/el-pagination-dabcccbb.js.map +1 -0
  33. package/dist/assets/el-pagination-legacy.7d2ae10d.js +2 -0
  34. package/dist/assets/el-progress-54b274cd.js +2 -0
  35. package/dist/assets/el-progress-54b274cd.js.map +1 -0
  36. package/dist/assets/el-progress-63aabe3a.css +1 -0
  37. package/dist/assets/el-progress-legacy.07ca6502.js +2 -0
  38. package/dist/assets/el-select-6be23320.css +1 -0
  39. package/dist/assets/el-select-f81a7377.js +2 -0
  40. package/dist/assets/el-select-f81a7377.js.map +1 -0
  41. package/dist/assets/el-select-legacy.94fad7fa.js +2 -0
  42. package/dist/assets/el-switch-9eba6fd0.js +2 -0
  43. package/dist/assets/el-switch-9eba6fd0.js.map +1 -0
  44. package/dist/assets/el-switch-aeab2c6b.css +1 -0
  45. package/dist/assets/el-switch-legacy.490534be.js +2 -0
  46. package/dist/assets/el-tab-pane-4a1bb4c7.css +1 -0
  47. package/dist/assets/el-tab-pane-89bdd69b.js +2 -0
  48. package/dist/assets/el-tab-pane-89bdd69b.js.map +1 -0
  49. package/dist/assets/el-tab-pane-legacy.cfdbc441.js +2 -0
  50. package/dist/assets/el-table-column-6716308a.js +21 -0
  51. package/dist/assets/el-table-column-6716308a.js.map +1 -0
  52. package/dist/assets/el-table-column-6c2089f9.css +1 -0
  53. package/dist/assets/el-table-column-legacy.49685e5a.js +24 -0
  54. package/dist/assets/index-01e33329.css +1 -0
  55. package/dist/assets/index-0b0f29ec.js +2 -0
  56. package/dist/assets/index-0b0f29ec.js.map +1 -0
  57. package/dist/assets/index-17c6005d.css +1 -0
  58. package/dist/assets/index-20019c57.js +2 -0
  59. package/dist/assets/index-20019c57.js.map +1 -0
  60. package/dist/assets/index-247f2c67.css +1 -0
  61. package/dist/assets/index-248e88e2.js +2 -0
  62. package/dist/assets/index-248e88e2.js.map +1 -0
  63. package/dist/assets/index-3091894a.css +1 -0
  64. package/dist/assets/index-37e15bc6.css +1 -0
  65. package/dist/assets/index-39637d43.js +2 -0
  66. package/dist/assets/index-39637d43.js.map +1 -0
  67. package/dist/assets/index-3f82ab7a.css +1 -0
  68. package/dist/assets/index-4c81cf78.css +1 -0
  69. package/dist/assets/index-5099f123.js +2 -0
  70. package/dist/assets/index-5099f123.js.map +1 -0
  71. package/dist/assets/index-57513f17.css +1 -0
  72. package/dist/assets/index-76f31e30.css +1 -0
  73. package/dist/assets/index-76ff9b9b.css +1 -0
  74. package/dist/assets/index-8557974a.js +2 -0
  75. package/dist/assets/index-8557974a.js.map +1 -0
  76. package/dist/assets/index-85fcd87a.css +1 -0
  77. package/dist/assets/index-867d07e4.js +2 -0
  78. package/dist/assets/index-867d07e4.js.map +1 -0
  79. package/dist/assets/index-8f353d3b.js +2 -0
  80. package/dist/assets/index-8f353d3b.js.map +1 -0
  81. package/dist/assets/index-8f7abc30.js +2 -0
  82. package/dist/assets/index-8f7abc30.js.map +1 -0
  83. package/dist/assets/index-8fbd06a5.js +2 -0
  84. package/dist/assets/index-8fbd06a5.js.map +1 -0
  85. package/dist/assets/index-93c733b3.css +1 -0
  86. package/dist/assets/index-98b55468.css +1 -0
  87. package/dist/assets/index-9e6bd406.js +2 -0
  88. package/dist/assets/index-9e6bd406.js.map +1 -0
  89. package/dist/assets/index-a880597c.css +1 -0
  90. package/dist/assets/index-acdbf3b6.js +2 -0
  91. package/dist/assets/index-acdbf3b6.js.map +1 -0
  92. package/dist/assets/index-b3e58b02.js +2 -0
  93. package/dist/assets/index-b3e58b02.js.map +1 -0
  94. package/dist/assets/index-c13133c5.js +2 -0
  95. package/dist/assets/index-c13133c5.js.map +1 -0
  96. package/dist/assets/index-c1d6836c.js +2 -0
  97. package/dist/assets/index-c1d6836c.js.map +1 -0
  98. package/dist/assets/index-d26aeed5.css +1 -0
  99. package/dist/assets/index-d98be3e4.js +19 -0
  100. package/dist/assets/index-d98be3e4.js.map +1 -0
  101. package/dist/assets/index-d9db6cc1.js +2 -0
  102. package/dist/assets/index-d9db6cc1.js.map +1 -0
  103. package/dist/assets/index-da51da36.css +1 -0
  104. package/dist/assets/index-e0ef7135.js +2 -0
  105. package/dist/assets/index-e0ef7135.js.map +1 -0
  106. package/dist/assets/index-e7d8a83e.css +1 -0
  107. package/dist/assets/index-ebf625c9.js +2 -0
  108. package/dist/assets/index-ebf625c9.js.map +1 -0
  109. package/dist/assets/index-eda7d85a.js +2 -0
  110. package/dist/assets/index-eda7d85a.js.map +1 -0
  111. package/dist/assets/index-fdc557f8.js +2 -0
  112. package/dist/assets/index-fdc557f8.js.map +1 -0
  113. package/dist/assets/index-legacy.0c570346.js +2 -0
  114. package/dist/assets/index-legacy.24edddf9.js +2 -0
  115. package/dist/assets/index-legacy.31681402.js +2 -0
  116. package/dist/assets/index-legacy.3e6b32cf.js +2 -0
  117. package/dist/assets/index-legacy.4edc099d.js +2 -0
  118. package/dist/assets/index-legacy.614df679.js +2 -0
  119. package/dist/assets/index-legacy.6420d0ab.js +2 -0
  120. package/dist/assets/index-legacy.679e5ce1.js +2 -0
  121. package/dist/assets/index-legacy.7b42e0cb.js +2 -0
  122. package/dist/assets/index-legacy.7bafa2e6.js +2 -0
  123. package/dist/assets/index-legacy.7ff3d773.js +2 -0
  124. package/dist/assets/index-legacy.84e0eca9.js +2 -0
  125. package/dist/assets/index-legacy.9ca64f8c.js +2 -0
  126. package/dist/assets/index-legacy.a4371211.js +2 -0
  127. package/dist/assets/index-legacy.acb8b137.js +23 -0
  128. package/dist/assets/index-legacy.bc3790f6.js +2 -0
  129. package/dist/assets/index-legacy.d0e21cb1.js +2 -0
  130. package/dist/assets/index-legacy.daf56c8f.js +2 -0
  131. package/dist/assets/index-legacy.e12feae0.js +2 -0
  132. package/dist/assets/index-legacy.e7f8790c.js +2 -0
  133. package/dist/assets/index-legacy.f84efe08.js +2 -0
  134. package/dist/assets/isEqual-82bb65ad.js +2 -0
  135. package/dist/assets/isEqual-82bb65ad.js.map +1 -0
  136. package/dist/assets/isEqual-legacy.dbaa2a6e.js +2 -0
  137. package/dist/assets/other-8d7ba6a0.js +2 -0
  138. package/dist/assets/other-8d7ba6a0.js.map +1 -0
  139. package/dist/assets/other-legacy.39078796.js +2 -0
  140. package/dist/assets/polyfills-legacy.99e38685.js +4 -0
  141. package/dist/assets/refresh-f2c4c532.js +2 -0
  142. package/dist/assets/refresh-f2c4c532.js.map +1 -0
  143. package/dist/assets/refresh-legacy.0ee83ca1.js +2 -0
  144. package/dist/assets/tip-3d272885.js +2 -0
  145. package/dist/assets/tip-3d272885.js.map +1 -0
  146. package/dist/assets/tip-9cb18ee8.css +1 -0
  147. package/dist/assets/tip-legacy.dee89e85.js +2 -0
  148. package/dist/assets/validator-d4ea1237.js +2 -0
  149. package/dist/assets/validator-d4ea1237.js.map +1 -0
  150. package/dist/assets/validator-legacy.ecd1e5dd.js +2 -0
  151. package/{index.html → dist/index.html} +8 -1
  152. package/package.json +30 -19
  153. package/.env +0 -6
  154. package/.env.production +0 -3
  155. package/.env.test +0 -4
  156. package/.eslintignore +0 -0
  157. package/.eslintrc.json +0 -57
  158. package/.github/workflows/main.yml +0 -61
  159. package/.prettierrc.js +0 -9
  160. package/auto-imports.d.ts +0 -6
  161. package/components.d.ts +0 -56
  162. package/docker/ep_backup/easypicker2.sql +0 -214
  163. package/docker/ep_backup/mongodb/easypicker2/action.bson +0 -0
  164. package/docker/ep_backup/mongodb/easypicker2/action.metadata.json +0 -1
  165. package/docker/ep_backup/mongodb/easypicker2/log.bson +0 -0
  166. package/docker/ep_backup/mongodb/easypicker2/log.metadata.json +0 -1
  167. package/docker/ep_backup/user-config.json +0 -176
  168. package/docs/.env +0 -1
  169. package/docs/.env.production +0 -2
  170. package/docs/.vitepress/config.ts +0 -204
  171. package/docs/.vitepress/theme/bg.png +0 -0
  172. package/docs/.vitepress/theme/index.scss +0 -41
  173. package/docs/.vitepress/theme/index.ts +0 -5
  174. package/docs/author.md +0 -24
  175. package/docs/auto-imports.d.ts +0 -6
  176. package/docs/components.d.ts +0 -17
  177. package/docs/deploy/design/api.md +0 -3
  178. package/docs/deploy/design/db.md +0 -3
  179. package/docs/deploy/design/index.md +0 -3
  180. package/docs/deploy/design/shell.md +0 -9
  181. package/docs/deploy/faq.md +0 -86
  182. package/docs/deploy/index.md +0 -9
  183. package/docs/deploy/local.md +0 -275
  184. package/docs/deploy/online-new.md +0 -610
  185. package/docs/deploy/online.md +0 -683
  186. package/docs/deploy/qiniu.md +0 -183
  187. package/docs/index.md +0 -40
  188. package/docs/introduction/about/code.md +0 -26
  189. package/docs/introduction/about/index.md +0 -33
  190. package/docs/introduction/feature/index.md +0 -3
  191. package/docs/plan/log.md +0 -346
  192. package/docs/plan/todo.md +0 -127
  193. package/docs/plan/wish.md +0 -29
  194. package/docs/praise/index.md +0 -45
  195. package/docs/public/robots.txt +0 -2
  196. package/docs/src/apis/ajax.ts +0 -66
  197. package/docs/src/apis/index.ts +0 -1
  198. package/docs/src/apis/modules/wish.ts +0 -20
  199. package/docs/src/components/Avatar.vue +0 -60
  200. package/docs/src/components/Home.vue +0 -85
  201. package/docs/src/components/Picture.vue +0 -13
  202. package/docs/src/components/Praise.vue +0 -52
  203. package/docs/src/components/WishBtn.vue +0 -98
  204. package/docs/src/components/WishPanel.vue +0 -170
  205. package/docs/src/components/callme/index.vue +0 -72
  206. package/docs/vite.config.ts +0 -42
  207. package/public/favicon.ico +0 -0
  208. package/public/logo.png +0 -0
  209. package/scripts/deploy/docs.mjs +0 -24
  210. package/scripts/deploy/prod.mjs +0 -24
  211. package/scripts/deploy/test.mjs +0 -26
  212. package/src/@types/ajax.d.ts +0 -5
  213. package/src/@types/api.d.ts +0 -305
  214. package/src/@types/lib.d.ts +0 -26
  215. package/src/@types/page.d.ts +0 -18
  216. package/src/App.vue +0 -36
  217. package/src/apis/ajax.ts +0 -72
  218. package/src/apis/index.ts +0 -20
  219. package/src/apis/modules/action.ts +0 -17
  220. package/src/apis/modules/category.ts +0 -20
  221. package/src/apis/modules/config.ts +0 -19
  222. package/src/apis/modules/file.ts +0 -150
  223. package/src/apis/modules/people.ts +0 -81
  224. package/src/apis/modules/public.ts +0 -49
  225. package/src/apis/modules/super/overview.ts +0 -56
  226. package/src/apis/modules/super/user.ts +0 -62
  227. package/src/apis/modules/task.ts +0 -67
  228. package/src/apis/modules/user.ts +0 -56
  229. package/src/apis/modules/wish.ts +0 -31
  230. package/src/assets/i/EasyPicker.png +0 -0
  231. package/src/assets/logo.png +0 -0
  232. package/src/assets/styles/app.css +0 -69
  233. package/src/components/HomeFooter/index.vue +0 -134
  234. package/src/components/HomeHeader/index.vue +0 -156
  235. package/src/components/InfosForm/index.vue +0 -73
  236. package/src/components/MessageList/index.vue +0 -155
  237. package/src/components/MessagePanel/index.vue +0 -46
  238. package/src/components/Praise/index.vue +0 -102
  239. package/src/components/QrCode.vue +0 -44
  240. package/src/components/linkDialog.vue +0 -104
  241. package/src/components/loginPanel.vue +0 -92
  242. package/src/constants/index.ts +0 -83
  243. package/src/env.d.ts +0 -8
  244. package/src/main.ts +0 -19
  245. package/src/pages/404/index.vue +0 -59
  246. package/src/pages/about/index.vue +0 -152
  247. package/src/pages/callme/index.vue +0 -155
  248. package/src/pages/dashboard/config/index.vue +0 -304
  249. package/src/pages/dashboard/files/index.vue +0 -1152
  250. package/src/pages/dashboard/index.vue +0 -335
  251. package/src/pages/dashboard/manage/config/index.vue +0 -97
  252. package/src/pages/dashboard/manage/index.vue +0 -105
  253. package/src/pages/dashboard/manage/overview/index.vue +0 -486
  254. package/src/pages/dashboard/manage/user/index.vue +0 -678
  255. package/src/pages/dashboard/manage/wish/index.vue +0 -257
  256. package/src/pages/dashboard/tasks/components/CategoryPanel.vue +0 -208
  257. package/src/pages/dashboard/tasks/components/CreateTask.vue +0 -93
  258. package/src/pages/dashboard/tasks/components/TaskInfo.vue +0 -129
  259. package/src/pages/dashboard/tasks/components/infoPanel/ddl.vue +0 -96
  260. package/src/pages/dashboard/tasks/components/infoPanel/file.vue +0 -175
  261. package/src/pages/dashboard/tasks/components/infoPanel/info.vue +0 -467
  262. package/src/pages/dashboard/tasks/components/infoPanel/people.vue +0 -566
  263. package/src/pages/dashboard/tasks/components/infoPanel/template.vue +0 -146
  264. package/src/pages/dashboard/tasks/components/infoPanel/tip.vue +0 -55
  265. package/src/pages/dashboard/tasks/components/infoPanel/tipInfo.vue +0 -196
  266. package/src/pages/dashboard/tasks/index.vue +0 -302
  267. package/src/pages/dashboard/tasks/public.ts +0 -32
  268. package/src/pages/disabled/index.vue +0 -47
  269. package/src/pages/feedback/index.vue +0 -5
  270. package/src/pages/home/index.vue +0 -72
  271. package/src/pages/login/index.vue +0 -270
  272. package/src/pages/register/index.vue +0 -211
  273. package/src/pages/reset/index.vue +0 -186
  274. package/src/pages/task/index.vue +0 -895
  275. package/src/pages/wish/index.vue +0 -152
  276. package/src/router/Interceptor/index.ts +0 -112
  277. package/src/router/index.ts +0 -13
  278. package/src/router/routes/index.ts +0 -197
  279. package/src/shims-vue.d.ts +0 -6
  280. package/src/store/index.ts +0 -17
  281. package/src/store/modules/category.ts +0 -44
  282. package/src/store/modules/public.ts +0 -27
  283. package/src/store/modules/task.ts +0 -55
  284. package/src/store/modules/user.ts +0 -57
  285. package/src/utils/elementUI.ts +0 -8
  286. package/src/utils/networkUtil.ts +0 -236
  287. package/src/utils/other.ts +0 -25
  288. package/src/utils/regExp.ts +0 -11
  289. package/src/utils/stringUtil.ts +0 -241
  290. package/tsconfig.json +0 -24
  291. package/vite.config.ts +0 -55
  292. /package/{docs/public → dist}/favicon.ico +0 -0
  293. /package/{docs/public → dist}/logo.png +0 -0
@@ -0,0 +1,2 @@
1
+ import{a4 as $,g as V,d as S,f as s,c as o,a as e,Z as Q,h as j,r as N,O as T,o as q,j as r,w as n,H as U,a7 as O,a8 as D,F as y,C as k,E as L,I as H,p as P,e as R,k as E,b as _,t as f,D as m,S as Z,x as G,v as J,_ as K}from"./index-d98be3e4.js";import{E as W,a as X}from"./el-form-item-c0658f70.js";import{T as M}from"./tip-3d272885.js";import{r as ee}from"./refresh-f2c4c532.js";import"./isEqual-82bb65ad.js";import"./index-eda7d85a.js";function te(){return $.get("/config/service/overview")}function se(){return $.get("/config/service/config")}function oe(c){return $.put("/config/service/config",c)}const b={getServiceOverview:te,getServiceConfig:se,updateCfg:oe},ae=S({name:"CloseBold"}),ne={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},le=e("path",{fill:"currentColor",d:"M195.2 195.2a64 64 0 0 1 90.496 0L512 421.504 738.304 195.2a64 64 0 0 1 90.496 90.496L602.496 512 828.8 738.304a64 64 0 0 1-90.496 90.496L512 602.496 285.696 828.8a64 64 0 0 1-90.496-90.496L421.504 512 195.2 285.696a64 64 0 0 1 0-90.496z"},null,-1),re=[le];function ce(c,p,x,i,h,g){return s(),o("svg",ne,re)}var ie=V(ae,[["render",ce]]);const de=S({name:"Select"}),ue={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},_e=e("path",{fill:"currentColor",d:"M77.248 415.04a64 64 0 0 1 90.496 0l226.304 226.304L846.528 188.8a64 64 0 1 1 90.56 90.496l-543.04 543.04-316.8-316.8a64 64 0 0 1 0-90.496z"},null,-1),pe=[_e];function ge(c,p,x,i,h,g){return s(),o("svg",ue,pe)}var fe=V(de,[["render",ge]]);const B=c=>(P("data-v-72be12a2"),c=c(),R(),c),me={class:"user"},he={class:"panel"},ve=B(()=>e("span",null,"服务概况",-1)),ye={class:"service-list"},ke=["src","alt"],Me={key:2},xe={class:"error-panel"},we=B(()=>e("h1",null,"错误信息",-1)),Ce={class:"error"},Ee=B(()=>e("h1",null,"服务相关配置",-1)),be={href:"https://docs.ep.sugarat.top/deploy/online-new.html#_5-%E6%9C%80%E5%90%8E%E6%9B%B4%E6%96%B0%E9%85%8D%E7%BD%AE"},$e={class:"config-container"},Se={class:"flex",style:{flex:"1"}},Be=S({__name:"index",setup(c){const p=Q([{name:"MySQL",key:"mysql",logo:"https://img.cdn.sugarat.top/mdImg/MTY1NzM1OTAyMjIwNA==657359022204",status:!1,des:"存储用户数据",errMsg:""},{name:"七牛云",key:"qiniu",logo:"https://img.cdn.sugarat.top/mdImg/MTY1NzM1ODcyODM0Mg==657358728342",status:!1,des:"文件存储"},{name:"MongoDB",key:"mongodb",logo:"https://img.cdn.sugarat.top/mdImg/MTY1NzM1OTA4OTc3Nw==657359089777",status:!1,des:"用户数据与日志"},{name:"Redis",key:"redis",logo:"https://img.cdn.sugarat.top/mdImg/MTY1NzM1ODgyNzM1MA==657358827350",status:!1,des:"持久化缓存数据",error:"确保安装redis,且监听端口6379"},{name:"腾讯云",key:"tx",logo:"https://img.cdn.sugarat.top/mdImg/MTY1NzM1OTE1MzQzOQ==657359153439",status:!1,des:"短信服务"}]),x=j(),i=N(!1),h=T(()=>p.filter(a=>a.errMsg)),g=()=>{i.value||(i.value=!0,b.getServiceOverview().then(a=>{const{data:v}=a;p.forEach(d=>{const{status:u,errMsg:w}=v[d.key];d.status=u,d.errMsg=w}),L.success("服务状态刷新完成"),i.value=!1}))},z=N([]),A=()=>{b.getServiceConfig().then(a=>{a.data.forEach(v=>{v.data.forEach(d=>{d.disabled=!0})}),z.value=a.data})},I=a=>{b.updateCfg(a).then(()=>{a.disabled=!0,L.success("更新成功"),g()})};return q(()=>{g(),A()}),T(()=>x.getters["public/isMobile"]),(a,v)=>{const d=H,u=G,w=J,Y=W,F=X;return s(),o("div",me,[e("div",he,[e("div",null,[e("h1",null,[ve,r(d,{class:U({loading:i.value}),onClick:g,style:{cursor:"pointer","margin-left":"10px"}},{default:n(()=>[r(E(ee))]),_:1},8,["class"]),O(e("span",null,"数据加载中...",512),[[D,i.value]])]),r(M,null,{default:n(()=>[_("查看各个服务的运行情况")]),_:1}),e("div",ye,[(s(!0),o(y,null,k(p,t=>(s(),o("div",{key:t.key,class:"service-item"},[e("img",{src:t.logo,alt:t.name},null,8,ke),e("p",null,[r(M,null,{default:n(()=>[_(f(t.des),1)]),_:2},1024)]),t.status?(s(),m(u,{key:0,type:"success",size:"small",icon:E(fe),circle:""},null,8,["icon"])):(s(),m(u,{key:1,type:"danger",size:"small",icon:E(ie),circle:""},null,8,["icon"])),!t.status&&t.error?(s(),o("p",Me,[r(M,null,{default:n(()=>[_(f(t.error),1)]),_:2},1024)])):Z("",!0)]))),128))])]),O(e("div",xe,[we,(s(!0),o(y,null,k(h.value,t=>(s(),o("p",{key:t.key},[e("strong",null,f(t.name)+":",1),e("span",Ce,f(t.errMsg),1)]))),128))],512),[[D,h.value.length]]),e("div",null,[Ee,r(M,null,{default:n(()=>[_(" 在此面板,配置服务器运行相关参数 "),e("a",be,[r(u,{type:"primary",link:""},{default:n(()=>[_("配置手册?")]),_:1})])]),_:1})]),e("div",$e,[(s(!0),o(y,null,k(z.value,t=>(s(),o("div",{class:"config-panel",key:t.title},[e("h2",null,f(t.title),1),r(F,{"label-position":"right","label-width":"100px",style:{"max-width":"400px",margin:"0 auto"}},{default:n(()=>[(s(!0),o(y,null,k(t.data,l=>(s(),m(Y,{"label-width":"auto",label:l.label||l.key,key:l.key},{default:n(()=>[e("div",Se,[r(w,{disabled:l.disabled,modelValue:l.value,"onUpdate:modelValue":C=>l.value=C},null,8,["disabled","modelValue","onUpdate:modelValue"]),l.disabled?(s(),m(u,{key:0,onClick:C=>l.disabled=!1,type:"primary",text:""},{default:n(()=>[_("更新")]),_:2},1032,["onClick"])):(s(),m(u,{key:1,onClick:C=>I(l),type:"success",text:""},{default:n(()=>[_("完成")]),_:2},1032,["onClick"]))])]),_:2},1032,["label"]))),128))]),_:2},1024)]))),128))])])])}}});const Ve=K(Be,[["__scopeId","data-v-72be12a2"]]);export{Ve as default};
2
+ //# sourceMappingURL=index-d9db6cc1.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-d9db6cc1.js","sources":["../../src/apis/modules/config.ts","../../node_modules/.pnpm/@element-plus+icons-vue@1.1.4_vue@3.3.4/node_modules/@element-plus/icons-vue/dist/es/close-bold.mjs","../../node_modules/.pnpm/@element-plus+icons-vue@1.1.4_vue@3.3.4/node_modules/@element-plus/icons-vue/dist/es/select.mjs","../../src/pages/dashboard/config/index.vue"],"sourcesContent":["import ajax from '../ajax'\n\nfunction getServiceOverview(): ConfigServiceAPITypes.getServiceOverview {\n return ajax.get('/config/service/overview')\n}\n\nfunction getServiceConfig(): ConfigServiceAPITypes.getServiceConfig {\n return ajax.get('/config/service/config')\n}\n\nfunction updateCfg(data: ConfigServiceAPITypes.ServiceConfigItem) {\n return ajax.put('/config/service/config', data)\n}\n\nexport default {\n getServiceOverview,\n getServiceConfig,\n updateCfg\n}\n","import { defineComponent, openBlock, createElementBlock, createElementVNode } from 'vue';\nimport _export_sfc from './_virtual/plugin-vue_export-helper.mjs';\n\nconst _sfc_main = defineComponent({\n name: \"CloseBold\"\n});\nconst _hoisted_1 = {\n viewBox: \"0 0 1024 1024\",\n xmlns: \"http://www.w3.org/2000/svg\"\n};\nconst _hoisted_2 = /* @__PURE__ */ createElementVNode(\"path\", {\n fill: \"currentColor\",\n d: \"M195.2 195.2a64 64 0 0 1 90.496 0L512 421.504 738.304 195.2a64 64 0 0 1 90.496 90.496L602.496 512 828.8 738.304a64 64 0 0 1-90.496 90.496L512 602.496 285.696 828.8a64 64 0 0 1-90.496-90.496L421.504 512 195.2 285.696a64 64 0 0 1 0-90.496z\"\n}, null, -1);\nconst _hoisted_3 = [\n _hoisted_2\n];\nfunction _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {\n return openBlock(), createElementBlock(\"svg\", _hoisted_1, _hoisted_3);\n}\nvar closeBold = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"render\", _sfc_render]]);\n\nexport { closeBold as default };\n","import { defineComponent, openBlock, createElementBlock, createElementVNode } from 'vue';\nimport _export_sfc from './_virtual/plugin-vue_export-helper.mjs';\n\nconst _sfc_main = defineComponent({\n name: \"Select\"\n});\nconst _hoisted_1 = {\n viewBox: \"0 0 1024 1024\",\n xmlns: \"http://www.w3.org/2000/svg\"\n};\nconst _hoisted_2 = /* @__PURE__ */ createElementVNode(\"path\", {\n fill: \"currentColor\",\n d: \"M77.248 415.04a64 64 0 0 1 90.496 0l226.304 226.304L846.528 188.8a64 64 0 1 1 90.56 90.496l-543.04 543.04-316.8-316.8a64 64 0 0 1 0-90.496z\"\n}, null, -1);\nconst _hoisted_3 = [\n _hoisted_2\n];\nfunction _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {\n return openBlock(), createElementBlock(\"svg\", _hoisted_1, _hoisted_3);\n}\nvar select = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"render\", _sfc_render]]);\n\nexport { select as default };\n","<template>\n <div class=\"user\">\n <div class=\"panel\">\n <!-- 服务概况 -->\n <div>\n <h1>\n <span>服务概况</span>\n <el-icon\n :class=\"{\n loading\n }\"\n @click=\"refreshStatus\"\n style=\"cursor: pointer; margin-left: 10px\"\n >\n <Refresh />\n </el-icon>\n <span v-show=\"loading\">数据加载中...</span>\n </h1>\n <Tip>查看各个服务的运行情况</Tip>\n <div class=\"service-list\">\n <div\n v-for=\"service in serviceList\"\n :key=\"service.key\"\n class=\"service-item\"\n >\n <img :src=\"service.logo\" :alt=\"service.name\" />\n <!-- <p>{{ service.name }}</p> -->\n <p>\n <Tip>{{ service.des }}</Tip>\n </p>\n <el-button\n v-if=\"service.status\"\n type=\"success\"\n size=\"small\"\n :icon=\"Select\"\n circle\n />\n <el-button\n v-else\n type=\"danger\"\n size=\"small\"\n :icon=\"CloseBold\"\n circle\n />\n <p v-if=\"!service.status && service.error\">\n <Tip>{{ service.error }}</Tip>\n </p>\n </div>\n </div>\n </div>\n <div v-show=\"showErrorList.length\" class=\"error-panel\">\n <h1>错误信息</h1>\n <p v-for=\"err in showErrorList\" :key=\"err.key\">\n <strong>{{ err.name }}:</strong>\n <span class=\"error\">{{ err.errMsg }}</span>\n </p>\n </div>\n <div>\n <h1>服务相关配置</h1>\n <Tip>\n 在此面板,配置服务器运行相关参数\n <a\n href=\"https://docs.ep.sugarat.top/deploy/online-new.html#_5-%E6%9C%80%E5%90%8E%E6%9B%B4%E6%96%B0%E9%85%8D%E7%BD%AE\"\n >\n <el-button type=\"primary\" link>配置手册?</el-button></a\n >\n </Tip>\n </div>\n <div class=\"config-container\">\n <div\n class=\"config-panel\"\n v-for=\"serverItem in serverConfig\"\n :key=\"serverItem.title\"\n >\n <h2>\n {{ serverItem.title }}\n </h2>\n <el-form\n :label-position=\"'right'\"\n label-width=\"100px\"\n style=\"max-width: 400px; margin: 0 auto\"\n >\n <el-form-item\n :label-width=\"'auto'\"\n v-for=\"cfgItem in serverItem.data\"\n :label=\"cfgItem.label || cfgItem.key\"\n :key=\"cfgItem.key\"\n >\n <div class=\"flex\" style=\"flex: 1\">\n <el-input\n :disabled=\"cfgItem.disabled\"\n v-model=\"cfgItem.value\"\n />\n <el-button\n v-if=\"cfgItem.disabled\"\n @click=\"cfgItem.disabled = false\"\n type=\"primary\"\n text\n >更新</el-button\n >\n <el-button\n v-else\n @click=\"updateCfg(cfgItem)\"\n type=\"success\"\n text\n >完成</el-button\n >\n </div>\n </el-form-item>\n </el-form>\n </div>\n </div>\n </div>\n </div>\n</template>\n<script lang=\"ts\" setup>\nimport { ElMessage } from 'element-plus'\nimport { computed, onMounted, reactive, ref } from 'vue'\nimport { useStore } from 'vuex'\nimport { Select, CloseBold, Refresh } from '@element-plus/icons-vue'\nimport { ConfigServiceAPI } from '@/apis'\nimport Tip from '../tasks/components/infoPanel/tip.vue'\n\nconst serviceList = reactive([\n {\n name: 'MySQL',\n key: 'mysql',\n logo: 'https://img.cdn.sugarat.top/mdImg/MTY1NzM1OTAyMjIwNA==657359022204',\n status: false,\n des: '存储用户数据',\n errMsg: ''\n },\n {\n name: '七牛云',\n key: 'qiniu',\n logo: 'https://img.cdn.sugarat.top/mdImg/MTY1NzM1ODcyODM0Mg==657358728342',\n status: false,\n des: '文件存储'\n },\n {\n name: 'MongoDB',\n key: 'mongodb',\n logo: 'https://img.cdn.sugarat.top/mdImg/MTY1NzM1OTA4OTc3Nw==657359089777',\n status: false,\n des: '用户数据与日志'\n },\n {\n name: 'Redis',\n key: 'redis',\n logo: 'https://img.cdn.sugarat.top/mdImg/MTY1NzM1ODgyNzM1MA==657358827350',\n status: false,\n des: '持久化缓存数据',\n error: '确保安装redis,且监听端口6379'\n },\n {\n name: '腾讯云',\n key: 'tx',\n logo: 'https://img.cdn.sugarat.top/mdImg/MTY1NzM1OTE1MzQzOQ==657359153439',\n status: false,\n des: '短信服务'\n }\n])\nconst $store = useStore()\nconst loading = ref(false)\nconst showErrorList = computed(() => serviceList.filter((item) => item.errMsg))\nconst refreshStatus = () => {\n if (loading.value) return\n loading.value = true\n ConfigServiceAPI.getServiceOverview().then((v) => {\n const { data } = v\n serviceList.forEach((item) => {\n const { status, errMsg } = data[item.key]\n item.status = status\n item.errMsg = errMsg\n })\n ElMessage.success('服务状态刷新完成')\n loading.value = false\n })\n}\n\nconst serverConfig = ref([])\nconst getServiceConfig = () => {\n ConfigServiceAPI.getServiceConfig().then((v) => {\n // console.log(v.data)\n v.data.forEach((v) => {\n v.data.forEach((v) => {\n v.disabled = true\n })\n })\n serverConfig.value = v.data\n })\n}\nconst updateCfg = (item: ConfigServiceAPITypes.ServiceConfigItem) => {\n ConfigServiceAPI.updateCfg(item).then(() => {\n item.disabled = true\n ElMessage.success('更新成功')\n refreshStatus()\n })\n}\nonMounted(() => {\n refreshStatus()\n getServiceConfig()\n})\nconst isMobile = computed(() => $store.getters['public/isMobile'])\n</script>\n\n<style scoped lang=\"scss\">\n@media screen and (max-width: 700px) {\n .user {\n margin-top: 40px !important;\n }\n}\n\n.user {\n margin: 0 auto;\n}\n\n.panel {\n max-width: 1256px;\n padding: 1em;\n background-color: #fff;\n margin: 10px auto;\n box-sizing: border-box;\n box-shadow: 0 2px 12px 0 rgb(0 0 0 / 10%);\n border-radius: 4px;\n}\n\nh1 {\n margin: 0;\n padding: 10px 0;\n font-size: 20px;\n font-weight: bold;\n text-align: center;\n display: flex;\n justify-content: center;\n align-items: center;\n}\n\n.service-list {\n display: flex;\n flex-wrap: wrap;\n justify-content: space-around;\n}\n\n.service-item {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n margin: 10px;\n min-width: 120px;\n\n img {\n width: 80px;\n }\n\n p {\n text-align: center;\n padding-top: 10px;\n font-size: 14px;\n }\n}\n\n@keyframes rotate {\n 0% {\n transform: rotate(0deg);\n }\n\n 100% {\n transform: rotate(360deg);\n }\n}\n\n.loading {\n margin-left: 10px;\n animation: rotate 1s linear infinite;\n}\n\n.error-panel {\n padding: 0 20px;\n\n p {\n .error {\n color: red;\n }\n\n margin-bottom: 10px;\n }\n}\n\n.config-container {\n display: flex;\n justify-content: space-around;\n flex-wrap: wrap;\n}\n\n.config-panel {\n h2 {\n text-align: center;\n font-size: 16px;\n margin-bottom: 10px;\n }\n}\n</style>\n"],"names":["getServiceOverview","ajax","getServiceConfig","updateCfg","data","ConfigServiceAPI","_sfc_main","defineComponent","_hoisted_1","_hoisted_2","createElementVNode","_hoisted_3","_sfc_render","_ctx","_cache","$props","$setup","$data","$options","openBlock","createElementBlock","closeBold","_export_sfc","select","serviceList","reactive","$store","useStore","loading","ref","showErrorList","computed","item","refreshStatus","v","status","errMsg","ElMessage","serverConfig","v2","v3","onMounted"],"mappings":"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","x_google_ignoreList":[1,2]}
@@ -0,0 +1 @@
1
+ .not-found[data-v-bb4c1a74]{font-family:Avenir,Helvetica,Arial,sans-serif;background-image:linear-gradient(to top,#30cfd0 0%,#330867 100%);min-height:100vh}h1[data-v-bb4c1a74],h2[data-v-bb4c1a74],h3[data-v-bb4c1a74],a[data-v-bb4c1a74]{color:#f0f8ff;text-align:center;font-weight:lighter}a[data-v-bb4c1a74]{margin-left:10px;border-bottom:2px solid aliceblue;cursor:pointer}h1[data-v-bb4c1a74]{font-size:48px;padding-top:10%}h2[data-v-bb4c1a74]{font-size:30px;padding-top:2vh}h3[data-v-bb4c1a74]{font-size:28px;padding-top:1vh}
@@ -0,0 +1,2 @@
1
+ import{d as _,r as n,u as r,o as d,c as u,a as t,b as p,t as i,p as v,e as f,f as h,_ as m}from"./index-d98be3e4.js";const c=e=>(v("data-v-7bc5f813"),e=e(),f(),e),x={class:"not-found"},I=c(()=>t("h1",null,"404 Not Found",-1)),b=c(()=>t("h2",null,"糟糕页面走丢了",-1)),S=_({__name:"index",setup(e){const o=n(3),a=n(null),s=r(),l=()=>{clearInterval(a.value),s.replace("/")};return d(()=>{a.value=setInterval(()=>{o.value===1&&(clearInterval(a.value),s.replace("/")),o.value-=1},1e3)}),(k,y)=>(h(),u("div",x,[I,b,t("h3",null,[p(i(o.value)+"s后",1),t("a",{onClick:l},"回到首页")])]))}});const N=m(S,[["__scopeId","data-v-7bc5f813"]]);export{N as default};
2
+ //# sourceMappingURL=index-e0ef7135.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-e0ef7135.js","sources":["../../src/pages/404/index.vue"],"sourcesContent":["<template>\n <div class=\"not-found\">\n <h1>404 Not Found</h1>\n <h2>糟糕页面走丢了</h2>\n <h3>{{ time }}s后<a @click=\"handleToHome\">回到首页</a></h3>\n </div>\n</template>\n<script lang=\"ts\" setup>\nimport { onMounted, ref } from 'vue'\nimport { useRouter } from 'vue-router'\n\nconst time = ref(3)\nconst timer = ref(null)\nconst router = useRouter()\nconst handleToHome = () => {\n clearInterval(timer.value)\n router.replace('/')\n}\nonMounted(() => {\n timer.value = setInterval(() => {\n if (time.value === 1) {\n clearInterval(timer.value)\n router.replace('/')\n }\n time.value -= 1\n }, 1000)\n})\n</script>\n<style lang=\"scss\" scoped>\n.not-found {\n font-family: 'Avenir', Helvetica, Arial, sans-serif;\n background-image: linear-gradient(to top, #30cfd0 0%, #330867 100%);\n min-height: 100vh;\n}\nh1,\nh2,\nh3,\na {\n color: aliceblue;\n text-align: center;\n font-weight: lighter;\n}\na {\n margin-left: 10px;\n border-bottom: 2px solid aliceblue;\n}\nh1 {\n font-size: 48px;\n padding-top: 10%;\n}\nh2 {\n font-size: 30px;\n padding-top: 2vh;\n}\nh3 {\n font-size: 28px;\n padding-top: 1vh;\n}\n</style>\n"],"names":["time","ref","timer","router","useRouter","handleToHome","onMounted"],"mappings":"kSAWA,MAAAA,EAAAC,EAAA,CAAA,EACAC,EAAAD,EAAA,IAAA,EACAE,EAAAC,IACAC,EAAA,IAAA,CACE,cAAAH,EAAA,KAAA,EACAC,EAAA,QAAA,GAAA,CAAkB,EAEpB,OAAAG,EAAA,IAAA,CACEJ,EAAA,MAAA,YAAA,IAAA,CACEF,EAAA,QAAA,IACE,cAAAE,EAAA,KAAA,EACAC,EAAA,QAAA,GAAA,GAEFH,EAAA,OAAA,CAAc,EAAA,GAAA,CACT,CAAA"}
@@ -0,0 +1 @@
1
+ @media screen and (max-width: 700px){.user[data-v-72be12a2]{margin-top:40px!important}}.user[data-v-72be12a2]{margin:0 auto}.panel[data-v-72be12a2]{max-width:1256px;padding:1em;background-color:#fff;margin:10px auto;box-sizing:border-box;box-shadow:0 2px 12px rgba(0,0,0,.1);border-radius:4px}h1[data-v-72be12a2]{margin:0;padding:10px 0;font-size:20px;font-weight:700;text-align:center;display:flex;justify-content:center;align-items:center}.service-list[data-v-72be12a2]{display:flex;flex-wrap:wrap;justify-content:space-around}.service-item[data-v-72be12a2]{display:flex;flex-direction:column;justify-content:center;align-items:center;margin:10px;min-width:120px}.service-item img[data-v-72be12a2]{width:80px}.service-item p[data-v-72be12a2]{text-align:center;padding-top:10px;font-size:14px}@keyframes rotate-72be12a2{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading[data-v-72be12a2]{margin-left:10px;animation:rotate-72be12a2 1s linear infinite}.error-panel[data-v-72be12a2]{padding:0 20px}.error-panel p[data-v-72be12a2]{margin-bottom:10px}.error-panel p .error[data-v-72be12a2]{color:red}.config-container[data-v-72be12a2]{display:flex;justify-content:space-around;flex-wrap:wrap}.config-panel h2[data-v-72be12a2]{text-align:center;font-size:16px;margin-bottom:10px}
@@ -0,0 +1,2 @@
1
+ import{g as He,d as Ee,f as s,c,a as l,h as Ge,O as v,u as Je,a1 as qe,Z as E,r as h,$ as Ke,bU as Ye,o as Ze,aU as we,E as u,bd as Qe,i as Xe,j as d,w as i,F,C as se,a7 as le,t as k,k as M,S as g,a8 as ke,D as y,af as oe,a5 as xe,bV as et,ab as j,a9 as tt,ae as be,y as at,x as st,bW as lt,aY as ot,P as nt,b as r,a3 as it,a_ as rt,s as ut,aW as $e,v as dt,I as ct,p as pt,e as mt,_ as vt}from"./index-d98be3e4.js";import{v as ft}from"./el-loading-c8798044.js";import{E as _t,a as ht}from"./el-progress-54b274cd.js";import{a as gt,E as yt}from"./el-form-item-c0658f70.js";import{T as U,E as wt}from"./tip-3d272885.js";import{I as kt,L as xt}from"./index-867d07e4.js";import{E as Ne}from"./index-c13133c5.js";import"./index-eda7d85a.js";import"./isEqual-82bb65ad.js";import"./el-dialog-5b7bce58.js";import"./el-select-f81a7377.js";import"./validator-d4ea1237.js";import"./aria-bc8e8b0f.js";const bt=Ee({name:"UploadFilled"}),$t={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},Nt=l("path",{fill:"currentColor",d:"M544 864V672h128L512 480 352 672h128v192H320v-1.6c-5.376.32-10.496 1.6-16 1.6A240 240 0 0 1 64 624c0-123.136 93.12-223.488 212.608-237.248A239.808 239.808 0 0 1 512 192a239.872 239.872 0 0 1 235.456 194.752c119.488 13.76 212.48 114.112 212.48 237.248a240 240 0 0 1-240 240c-5.376 0-10.56-1.28-16-1.6v1.6H544z"},null,-1),Et=[Nt];function Ft(D,ne,G,ie,re,B){return s(),c("svg",$t,Et)}var Ut=He(bt,[["render",Ft]]);const S=D=>(pt("data-v-d8054f3d"),D=D(),mt(),D),St={class:"task-panel"},zt={class:"pc-nav"},Ct={class:"nav"},Tt={class:"logo"},It=S(()=>l("img",{style:{height:"40px",width:"170px"},src:"https://img.cdn.sugarat.top/easypicker/EasyPicker.png",alt:"logo"},null,-1)),Lt=["onClick"],Vt={key:0,"element-loading-text":"Loading...",class:"panel tc"},Mt={class:"name"},Dt={key:0,style:{color:"red"}},Bt={class:"tip-wrapper"},Wt={class:"ddl"},Pt={key:0},Rt={key:4},Ot={class:"infos"},jt={key:0},At={class:"infos"},Ht=S(()=>l("div",{class:"el-upload__text"},[r(" 将文件拖于此处 or "),l("em",null,"直接选择文件")],-1)),Gt={class:"p10"},Jt={class:"p10"},qt={class:"p10 option-tips"},Kt={style:{color:"red"}},Yt={style:{color:"red"}},Zt=S(()=>l("br",null,null,-1)),Qt=S(()=>l("br",null,null,-1)),Xt=S(()=>l("br",null,null,-1)),ea=S(()=>l("strong",null,"选择大文件后需要等待一会儿才展示处理",-1)),ta=S(()=>l("br",null,null,-1)),aa={class:"withdraw"},sa={key:1,class:"panel tc"},la={class:"name"},oa={style:{"padding-top":"20px"}},na=Ee({__name:"index",setup(D){const ne=Ge(),G=v(()=>ne.getters["public/isMobile"]),ie=Je(),re=qe(),B=E([{title:"我也要收集",path:"https://docs.ep.sugarat.top/"}]),Fe=t=>{if(B[t].path.startsWith("http")){window.location.href=B[t].path;return}ie.push({path:B[t].path})},z=E({name:"",category:""}),o=E({bindField:""}),f=v(()=>rt(o.format)),p=h(""),A=h(0),W=v(()=>A.value<=0),Ue=v(()=>{let t=~~(A.value/1e3),e=~~(t/(60*60));const a=~~(e/24);e%=24;const n=~~(t%3600/60);return t%=60,"剩余".concat(a,"天").concat(e,"时").concat(n,"分").concat(t,"秒")}),J=(t=!0)=>{if(o!=null&&o.ddl){const e=new Date(o.ddl);A.value=e.getTime()-Date.now()}else A.value=0;t&&setTimeout(()=>{J()},1e3)},C=v(()=>{if(o!=null&&o.ddl){const t=new Date(o.ddl);return ut(t)}return""}),_=E([]),$=h([]),q=h(),K=v(()=>$.value.filter(t=>t.status==="uploading").length>0),Se=t=>t.status==="uploading"||t.status==="success"?Ne.confirm("不影响已经上传成功的,正在上传的将取消上传","确定从列表移除文件吗?").then(()=>(t.status==="uploading"&&(u.info("取消".concat(t.name,"的上传")),t.subscription.unsubscribe()),!0)).catch(()=>!1):!0,Y=v(()=>_.every(t=>t.value)),T=v(()=>o.bindField.trim()||"姓名"),ue=v(()=>_.find(t=>t.text===T.value)),ze=v(()=>o.people&&!ue.value),x=E({peopleName:""}),de=(t,e,a)=>{if(!e){const n="请输入".concat(T.value);a(new Error(n)),u.error(n);return}$e.checkPeopleIsExist(p.value,e).then(n=>{n.data.exist||u.error("你不在此次提交名单中,如有疑问请联系管理员"),a(n.data.exist?void 0:new Error("你不在此次提交名单中,如有疑问请联系管理员"))})},ce=h(),Ce=E({peopleName:[{validator:de,trigger:"blur"}]}),Z=()=>{var t;if(ue.value){const e=(t=_.find(a=>a.text===T.value))==null?void 0:t.value;return x.peopleName=e||"",new Promise(a=>{de(null,e,a)}).then(a=>!a)}return ce.value.validate(e=>e)},Te=()=>{const t=$.value;for(const e of t)if(!e.md5)u.info("文件(".concat(e.name,")的唯一指纹还在计算中,再等待一会儿再点击上传")),setTimeout(()=>{u.info("文件越大计算时间越长(1G通常需要20s)")},100);else if(e.status==="ready"){e.status="uploading";let{name:a}=e;const n=a;o.rewrite&&(a=_.map(R=>R.value).join(f.value.splitChar||"-")+oe(a)),a=lt(a);const te="easypicker2/".concat(p.value,"/").concat(e.md5,"/").concat(a);j.getUploadToken().then(R=>{ot(R.data.token,e.raw,te,{success(O){const{fsize:H}=O;j.addFile({originName:n,name:a,taskKey:p.value,taskName:z.name,size:H,hash:e.md5,info:JSON.stringify(_),people:x.peopleName}).then(()=>{e.status="success",u.success("文件:".concat(e.name,"提交成功")),o.people&&$e.updatePeopleStatus(p.value,a,x.peopleName,e.md5)})},process(O,H,ae){e.percentage=Math.floor(O),e.subscription=ae}})})}},Ie=async()=>{if(!Y.value){u.warning("请先完成必要信息的填写");return}o.people&&!await Z()||Te()},Le=v(()=>{for(const t of $.value)if(t.status==="ready")return!0;return!1}),Ve=v(()=>{for(const t of $.value)if(["success","ready"].includes(t.status))return!0;return!1}),I=h(0),Me=t=>{const{name:e}=t;if(f.value.format.length&&f.value.status){const a=oe(e);if(!f.value.format.find(n=>a.endsWith(n))){u.error("".concat(e," 格式不符合要求")),q.value.handleRemove(t);return}}if(f.value.size&&f.value.size<t.size){u.error("".concat(e," 大小").concat(xe(t.size)," 不符合要求")),q.value.handleRemove(t);return}I.value+=1,et(t.raw).then(a=>{t.md5=a,I.value-=1})},pe=v(()=>f.value.limit||10),De=()=>{u.warning("一次提交最多只能选择".concat(pe.value,"个文件,请移除已经上传成功的或刷新页面"))},Q=h(!1),me=h(""),Be=()=>{const t=$.value;for(const e of t)if(!e.md5)u.info("文件(".concat(e.name,")的唯一指纹还在计算中,再等待一会儿再点击上传")),setTimeout(()=>{u.info("文件越大计算时间越长(1G通常需要20s)")},100);else if(!["fail","uploading"].includes(e.status)){let{name:a}=e;o.rewrite&&(a=_.map(n=>n.value).join(f.value.splitChar||"-")+oe(a)),j.withdrawFile({taskKey:p.value,taskName:z.name,filename:a,hash:e.md5,info:JSON.stringify(_),peopleName:x.peopleName}).then(()=>{u.success("文件:".concat(e.name,"撤回成功")),e.name+=" - (已撤回 ✅ )",e.status="fail"}).catch(()=>{u.error("撤回失败: 没有文件:".concat(e.name,"对应提交记录"))})}},ve=()=>{j.getTemplateUrl(o.template,p.value).then(t=>{Q.value=!0;const{link:e}=t.data;me.value=e,tt(e,o.template)}).catch(()=>{u.warning("文件已从服务器上移除,请联系管理员重新上传")})},P=h(!1),We=async()=>{if(!Y.value){u.warning("请先完成必要信息的填写");return}o.people&&!await Z()||Be()},Pe=async()=>{if(!Y.value){u.warning("请先完成必要信息的填写,需和提交时信息完全一致");return}o.people&&!await Z()||j.checkSubmitStatus(p.value,_,x.peopleName).then(t=>{t.data.isSubmit?u.success("已经提交过啦"):u.warning("还未提交过哟")})},X=h(!1),ee=h(!1),fe=(t=[],e=[])=>t.length!==e.length?!1:t.every((a,n)=>a.type===e[n].type&&a.text===e[n].text&&fe(a.children,e[n].children)),_e=(t=!1)=>{we.getTaskMoreInfo(p.value).then(e=>{Object.assign(o,e.data),fe(_,be(o.info))||(_.splice(0,_.length),_.push(...be(o.info)),t&&u.success("表单信息有更新")),J(!1),X.value=!1})},he=()=>{ee.value=!0},ge=()=>{ee.value&&!K.value&&(ee.value=!1,_e(!0))},Re=v(()=>W.value?C.value:C.value+Ue.value),N=E({text:"",imgs:[]}),w=h([]);Ke(()=>o.tip,()=>{try{const t=JSON.parse(o.tip);N.imgs=t.imgs,N.text=t.text||"",w.value=N.imgs.map(e=>({...e,url:"https://img.cdn.sugarat.top/mdImg/MTY3NzkxMDI1NTU1Nw==20140524124237518.gif"})),w.value.length&&nt.getTipImageUrl(p.value,w.value.map(e=>({uid:e.uid,name:e.name}))).then(e=>{e.data.forEach((a,n)=>{w.value[n].url=a.cover,Object.assign(w.value[n],{preview:a.preview})})})}catch(t){N.text="",N.imgs=[],w.value=[]}});const L=Ye("disabledUpload",!1);return Ze(()=>{p.value=re.params.key,p.value&&(X.value=!0,we.getTaskInfo(p.value).then(t=>{Object.assign(z,t.data),L.value=!!t.data.limitUpload,L.value&&Ne.alert("任务存储空间容量已达到上限,已经无法进行上传,请联系发起人扩容空间")}).catch(t=>{t.code===4001&&(u.error("任务不存在"),p.value="",z.name="任务不存在")}),_e(),J()),window.addEventListener("blur",he),window.addEventListener("focus",ge)}),Qe(()=>{window.removeEventListener("blur",he),window.removeEventListener("focus",ge)}),(t,e)=>{const a=Xe("router-link"),n=at,te=wt,R=ht,O=dt,H=yt,ae=gt,b=st,Oe=ct,je=_t,Ae=ft;return s(),c("div",St,[l("div",zt,[l("div",Ct,[l("div",Tt,[d(a,{to:"/"},{default:i(()=>[It]),_:1})]),l("nav",null,[(s(!0),c(F,null,se(B,(m,V)=>(s(),c("div",{class:"nav-item",key:V,onClick:ye=>Fe(V)},k(m.title),9,Lt))),128))])])]),p.value?le((s(),c("div",Vt,[l("h1",Mt,k(z.name),1),M(L)?(s(),c("h2",Dt,"任务存储空间容量已达到上限,已经无法进行上传,请联系发起人扩容空间")):g("",!0),N.text&&(!C.value||!W.value)?(s(),c(F,{key:1},[d(n,null,{default:i(()=>[r("⚠️ 注意事项 ⚠️")]),_:1}),d(U,null,{default:i(()=>[l("div",Bt,[(s(!0),c(F,null,se(N.text.split("\n"),(m,V)=>(s(),c("p",{key:V},k(m.replace(/\s/g," ")),1))),128))])]),_:1})],64)):g("",!0),w.value.length&&(!C.value||!W.value)?(s(!0),c(F,{key:2},se(w.value,(m,V)=>(s(),y(te,{"hide-on-click-modal":"",key:m.uid,style:{width:"100px",height:"100px",margin:"10px"},src:m.url,"zoom-rate":1.2,"preview-src-list":w.value.map(ye=>ye.preview),"initial-index":V,fit:"contain"},null,8,["src","preview-src-list","initial-index"]))),128)):g("",!0),C.value?(s(),c(F,{key:3},[d(n,null,{default:i(()=>[r("截止时间")]),_:1}),l("h2",Wt,k(Re.value),1),W.value?(s(),c("div",Pt,[d(R,{description:"已经结束啦!"})])):g("",!0)],64)):g("",!0),!C.value||!W.value?(s(),c("div",Rt,[d(n,null,{default:i(()=>[r("必要信息填写")]),_:1}),l("div",Ot,[le(l("div",null,[d(U,null,{default:i(()=>[r("“"+k(T.value)+"”在参与名单里才能正常提交",1)]),_:1})],512),[[ke,o.people]]),ze.value?(s(),c("div",jt,[l("div",At,[d(ae,{ref_key:"validModalRef",ref:ce,rules:Ce,"status-icon":"",model:x,disabled:K.value,"label-position":"top"},{default:i(()=>[d(H,{prop:"peopleName",label:T.value},{default:i(()=>[d(O,{maxlength:14,clearable:"","show-word-limit":"",placeholder:"请输入 ".concat(T.value),modelValue:x.peopleName,"onUpdate:modelValue":e[0]||(e[0]=m=>x.peopleName=m)},null,8,["placeholder","modelValue"])]),_:1},8,["label"])]),_:1},8,["rules","model","disabled"])])])):g("",!0),d(kt,{infos:_,disabled:K.value},null,8,["infos","disabled"])]),d(je,{style:{"max-width":"400px",margin:"0 auto"},drag:!G.value,action:"",ref_key:"fileUpload",ref:q,"on-change":Me,"before-remove":Se,"on-exceed":De,"auto-upload":!1,multiple:"",limit:pe.value,"file-list":$.value,"onUpdate:fileList":e[1]||(e[1]=m=>$.value=m)},{tip:i(()=>[le(l("div",Gt,[d(U,null,{default:i(()=>[r("还有 "+k(I.value)+" 个文件正在生成校验信息,请稍等(1G通常需要20s)",1)]),_:1})],512),[[ke,!!I.value]])]),default:i(()=>[G.value?(s(),y(b,{key:0,type:"primary"},{default:i(()=>[r("选择文件")]),_:1})):(s(),c(F,{key:1},[d(Oe,{class:"el-icon--upload"},{default:i(()=>[d(M(Ut))]),_:1}),Ht],64))]),_:1},8,["drag","limit","file-list"]),l("div",Jt,[P.value?(s(),y(b,{key:0,size:"default",onClick:We,type:"warning",disabled:!Ve.value||!!I.value},{default:i(()=>[r("一键撤回")]),_:1},8,["disabled"])):M(L)?g("",!0):(s(),y(b,{key:1,size:"default",onClick:Ie,type:"success",disabled:!Le.value||!!I.value},{default:i(()=>[r("提交文件")]),_:1},8,["disabled"])),d(b,{onClick:Pe,size:"default"},{default:i(()=>[r("查询提交情况")]),_:1})]),l("div",qt,[f.value.status&&f.value.format.length?(s(),y(U,{key:0},{default:i(()=>[r("限制格式为: "),l("span",Kt,k(f.value.format.join(", ")),1)]),_:1})):g("",!0),f.value.size?(s(),y(U,{key:1},{default:i(()=>[r("限制文件大小不超过: "),l("span",Yt,k(M(xe)(f.value.size)),1)]),_:1})):g("",!0),P.value?(s(),y(U,{key:2},{default:i(()=>[r("① 须保证选择的文件与提交时的文件一致"),Zt,r(" ② 填写表单信息一致 "),Qt,r(" ③ 完全一模一样的文件的提交记录(内容md5+命名),将会一次性全部撤回")]),_:1})):(s(),y(U,{key:3},{default:i(()=>[r("① 选择完文件,点击 ”提交文件“即可 "),Xt,r(" ② "),ea,o.template&&!M(L)?(s(),c(F,{key:0},[ta,r(" ③ "),l("strong",null,[d(b,{type:"primary",text:"",style:{color:"#85ce61"},size:"small",onClick:ve},{default:i(()=>[r("右下角可 “查看提交示例” ")]),_:1})])],64)):g("",!0)]),_:1}))]),l("div",aa,[o.template&&!M(L)?(s(),y(b,{key:0,type:"primary",text:"",style:{color:"#85ce61"},size:"small",onClick:ve},{default:i(()=>[r("查看提交示例")]),_:1})):g("",!0),P.value?(s(),y(b,{key:1,onClick:e[2]||(e[2]=m=>P.value=!1),size:"small",type:"primary",text:""},{default:i(()=>[r("正常提交")]),_:1})):(s(),y(b,{key:2,size:"small",onClick:e[3]||(e[3]=m=>P.value=!0),type:"primary",text:""},{default:i(()=>[r("我要撤回")]),_:1}))])])):g("",!0)])),[[Ae,X.value]]):(s(),c("div",sa,[l("h1",la,k(z.name),1)])),d(xt,{value:Q.value,"onUpdate:value":e[4]||(e[4]=m=>Q.value=m),title:"示例文件下载链接",link:me.value},null,8,["value","link"]),l("div",oa,[d(it,{type:"task"})])])}}});const wa=vt(na,[["__scopeId","data-v-d8054f3d"]]);export{wa as default};
2
+ //# sourceMappingURL=index-ebf625c9.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-ebf625c9.js","sources":["../../node_modules/.pnpm/@element-plus+icons-vue@1.1.4_vue@3.3.4/node_modules/@element-plus/icons-vue/dist/es/upload-filled.mjs","../../src/pages/task/index.vue"],"sourcesContent":["import { defineComponent, openBlock, createElementBlock, createElementVNode } from 'vue';\nimport _export_sfc from './_virtual/plugin-vue_export-helper.mjs';\n\nconst _sfc_main = defineComponent({\n name: \"UploadFilled\"\n});\nconst _hoisted_1 = {\n viewBox: \"0 0 1024 1024\",\n xmlns: \"http://www.w3.org/2000/svg\"\n};\nconst _hoisted_2 = /* @__PURE__ */ createElementVNode(\"path\", {\n fill: \"currentColor\",\n d: \"M544 864V672h128L512 480 352 672h128v192H320v-1.6c-5.376.32-10.496 1.6-16 1.6A240 240 0 0 1 64 624c0-123.136 93.12-223.488 212.608-237.248A239.808 239.808 0 0 1 512 192a239.872 239.872 0 0 1 235.456 194.752c119.488 13.76 212.48 114.112 212.48 237.248a240 240 0 0 1-240 240c-5.376 0-10.56-1.28-16-1.6v1.6H544z\"\n}, null, -1);\nconst _hoisted_3 = [\n _hoisted_2\n];\nfunction _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {\n return openBlock(), createElementBlock(\"svg\", _hoisted_1, _hoisted_3);\n}\nvar uploadFilled = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"render\", _sfc_render]]);\n\nexport { uploadFilled as default };\n","<template>\n <div class=\"task-panel\">\n <div class=\"pc-nav\">\n <div class=\"nav\">\n <!-- LOGO -->\n <div class=\"logo\">\n <router-link to=\"/\">\n <img\n style=\"height: 40px; width: 170px\"\n src=\"https://img.cdn.sugarat.top/easypicker/EasyPicker.png\"\n alt=\"logo\"\n />\n </router-link>\n </div>\n <nav>\n <div\n class=\"nav-item\"\n v-for=\"(n, idx) in pcNavs\"\n :key=\"idx\"\n @click=\"handleNav(idx)\"\n >\n {{ n.title }}\n </div>\n </nav>\n </div>\n </div>\n <!-- 有效 -->\n <div\n v-loading=\"isLoadingData\"\n element-loading-text=\"Loading...\"\n class=\"panel tc\"\n v-if=\"k\"\n >\n <!-- 任务名 -->\n <h1 class=\"name\">\n {{ taskInfo.name }}\n </h1>\n <h2 v-if=\"disabledUpload\" style=\"color: red\">任务存储空间容量已达到上限,已经无法进行上传,请联系发起人扩容空间</h2>\n <!-- 提示信息 -->\n <!-- 时间截止了也不再展示 -->\n <template v-if=\"tipData.text && (ddlStr ? !isOver : true)\">\n <el-divider>⚠️ 注意事项 ⚠️</el-divider>\n <Tip>\n <div class=\"tip-wrapper\">\n <p v-for=\"(t, i) in tipData.text.split('\\n')\" :key=\"i\">\n {{ t.replace(/\\s/g, '&nbsp;') }}\n </p>\n </div>\n </Tip>\n </template>\n <template v-if=\"imageList.length && (ddlStr ? !isOver : true)\">\n <el-image\n hide-on-click-modal\n v-for=\"(img, idx) in imageList\"\n :key=\"img.uid\"\n style=\"width: 100px; height: 100px; margin: 10px\"\n :src=\"img.url\"\n :zoom-rate=\"1.2\"\n :preview-src-list=\"imageList.map((v) => v.preview)\"\n :initial-index=\"idx\"\n fit=\"contain\"\n />\n </template>\n <!-- 截止时间字符串 -->\n <template v-if=\"ddlStr\">\n <el-divider>截止时间</el-divider>\n <h2 class=\"ddl\">\n {{ timeInfo }}\n </h2>\n <div v-if=\"isOver\">\n <el-empty description=\"已经结束啦!\"> </el-empty>\n </div>\n </template>\n <!-- 未设置ddl 或者 设置了还未结束 -->\n <div v-if=\"!ddlStr || !isOver\">\n <el-divider>必要信息填写</el-divider>\n <div class=\"infos\">\n <div v-show=\"taskMoreInfo.people\">\n <Tip>“{{ limitBindField }}”在参与名单里才能正常提交</Tip>\n </div>\n <div v-if=\"showValidForm\">\n <div class=\"infos\">\n <el-form\n ref=\"validModalRef\"\n :rules=\"validModalRules\"\n status-icon\n :model=\"validModal\"\n :disabled=\"disableForm\"\n label-position=\"top\"\n >\n <el-form-item prop=\"peopleName\" :label=\"limitBindField\">\n <el-input\n :maxlength=\"14\"\n clearable\n show-word-limit\n :placeholder=\"`请输入 ${limitBindField}`\"\n v-model=\"validModal.peopleName\"\n ></el-input>\n </el-form-item>\n </el-form>\n </div>\n </div>\n <InfosForm :infos=\"infos\" :disabled=\"disableForm\"></InfosForm>\n </div>\n <el-upload\n style=\"max-width: 400px; margin: 0 auto\"\n :drag=\"!isMobile\"\n action=\"\"\n ref=\"fileUpload\"\n :on-change=\"handleChangeFile\"\n :before-remove=\"handleRemoveFile\"\n :on-exceed=\"handleExceed\"\n :auto-upload=\"false\"\n multiple\n :limit=\"limitUploadCount\"\n v-model:file-list=\"fileList\"\n >\n <el-button v-if=\"isMobile\" type=\"primary\">选择文件</el-button>\n <template v-else>\n <el-icon class=\"el-icon--upload\">\n <upload-filled />\n </el-icon>\n <div class=\"el-upload__text\">\n 将文件拖于此处 or <em>直接选择文件</em>\n </div>\n </template>\n <template #tip>\n <div class=\"p10\" v-show=\"!!calculateMd5Count\">\n <tip\n >还有\n {{ calculateMd5Count }}\n 个文件正在生成校验信息,请稍等(1G通常需要20s)</tip\n >\n </div>\n </template>\n </el-upload>\n <div class=\"p10\">\n <el-button\n v-if=\"isWithdraw\"\n size=\"default\"\n @click=\"startWithdraw\"\n type=\"warning\"\n :disabled=\"!allowWithdraw || !!calculateMd5Count\"\n >一键撤回</el-button\n >\n <el-button\n v-else-if=\"!disabledUpload\"\n size=\"default\"\n @click=\"submitUpload\"\n type=\"success\"\n :disabled=\"!allowUpload || !!calculateMd5Count\"\n >提交文件</el-button\n >\n <el-button @click=\"checkSubmitStatus\" size=\"default\"\n >查询提交情况</el-button\n >\n </div>\n <!-- 提示信息 -->\n <div class=\"p10 option-tips\">\n <tip v-if=\"formatData.status && formatData.format.length\"\n >限制格式为:\n <span style=\"color: red\">{{\n formatData.format.join(', ')\n }}</span></tip\n >\n <tip v-if=\"formatData.size\"\n >限制文件大小不超过:\n <span style=\"color: red\">{{\n formatSize(formatData.size)\n }}</span></tip\n >\n <template v-if=\"isWithdraw\">\n <tip\n >① 须保证选择的文件与提交时的文件一致<br />\n ② 填写表单信息一致 <br />\n ③\n 完全一模一样的文件的提交记录(内容md5+命名),将会一次性全部撤回</tip\n >\n </template>\n <template v-else>\n <tip\n >① 选择完文件,点击 ”提交文件“即可 <br />\n ② <strong>选择大文件后需要等待一会儿才展示处理</strong>\n <template v-if=\"taskMoreInfo.template && !disabledUpload\"\n ><br />\n ③\n <strong>\n <el-button\n type=\"primary\"\n text\n style=\"color: #85ce61\"\n size=\"small\"\n @click=\"downloadTemplate\"\n >右下角可 “查看提交示例”\n </el-button>\n </strong></template\n >\n </tip>\n </template>\n </div>\n <div class=\"withdraw\">\n <el-button\n type=\"primary\"\n text\n style=\"color: #85ce61\"\n v-if=\"taskMoreInfo.template && !disabledUpload\"\n size=\"small\"\n @click=\"downloadTemplate\"\n >查看提交示例</el-button\n >\n <el-button\n v-if=\"isWithdraw\"\n @click=\"isWithdraw = false\"\n size=\"small\"\n type=\"primary\"\n text\n >正常提交</el-button\n >\n <el-button\n v-else\n size=\"small\"\n @click=\"isWithdraw = true\"\n type=\"primary\"\n text\n >我要撤回</el-button\n >\n </div>\n </div>\n </div>\n <!-- 无效任务 -->\n <div class=\"panel tc\" v-else>\n <h1 class=\"name\">\n {{ taskInfo.name }}\n </h1>\n </div>\n <LinkDialog\n v-model:value=\"showLinkModel\"\n title=\"示例文件下载链接\"\n :link=\"templateLink\"\n ></LinkDialog>\n <div style=\"padding-top: 20px\">\n <home-footer type=\"task\"></home-footer>\n </div>\n </div>\n</template>\n<script lang=\"ts\" setup>\nimport { ElMessage, ElMessageBox } from 'element-plus'\nimport type { UploadUserFile, UploadInstance, FormInstance } from 'element-plus'\nimport { computed, onMounted, onUnmounted, reactive, ref, watch } from 'vue'\nimport { useRoute, useRouter } from 'vue-router'\nimport HomeFooter from '@components/HomeFooter/index.vue'\nimport LinkDialog from '@components/linkDialog.vue'\nimport { UploadFilled } from '@element-plus/icons-vue'\nimport { useStore } from 'vuex'\nimport {\n formatDate,\n formatSize,\n getFileMd5Hash,\n getFileSuffix,\n normalizeFileName,\n parseFileFormat,\n parseInfo\n} from '@/utils/stringUtil'\nimport { downLoadByUrl, qiniuUpload } from '@/utils/networkUtil'\nimport { FileApi, PeopleApi, PublicApi, TaskApi } from '@/apis'\nimport Tip from '../dashboard/tasks/components/infoPanel/tip.vue'\nimport InfosForm from '@/components/InfosForm/index.vue'\nimport { useLocalStorage } from '@vueuse/core'\nconst $store = useStore()\nconst isMobile = computed(() => $store.getters['public/isMobile'])\n// 顶部导航\nconst $router = useRouter()\nconst $route = useRoute()\nconst pcNavs = reactive([\n {\n title: '我也要收集',\n path: 'https://docs.ep.sugarat.top/'\n }\n])\nconst handleNav = (idx: number) => {\n if (pcNavs[idx].path.startsWith('http')) {\n window.location.href = pcNavs[idx].path\n return\n }\n $router.push({\n path: pcNavs[idx].path\n })\n}\n\n// 任务基本信息展示\nconst taskInfo = reactive<TaskApiTypes.TaskInfo>({\n name: '',\n category: ''\n})\nconst taskMoreInfo = reactive<Partial<TaskApiTypes.TaskInfo>>({\n bindField: ''\n})\nconst formatData = computed(() => parseFileFormat(taskMoreInfo.format))\nconst k = ref('')\n\n// 用于展示截止日期\nconst waitTime = ref(0)\n// 判断是否结束\nconst isOver = computed(() => waitTime.value <= 0)\nconst waitTimeStr = computed(() => {\n let seconds = ~~(waitTime.value / 1000)\n let hour = ~~(seconds / (60 * 60))\n const day = ~~(hour / 24)\n hour %= 24\n const minute = ~~((seconds % 3600) / 60)\n seconds %= 60\n return `剩余${day}天${hour}时${minute}分${seconds}秒`\n})\nconst refreshWaitTime = (loop = true) => {\n if (taskMoreInfo?.ddl) {\n const date = new Date(taskMoreInfo.ddl)\n waitTime.value = date.getTime() - Date.now()\n } else {\n waitTime.value = 0\n }\n if (loop) {\n setTimeout(() => {\n refreshWaitTime()\n }, 1000)\n }\n}\nconst ddlStr = computed(() => {\n if (taskMoreInfo?.ddl) {\n const date = new Date(taskMoreInfo.ddl)\n return formatDate(date)\n }\n return ''\n})\n\n// 必填信息\nconst infos = reactive<InfoItem[]>([])\n\n// 文件上传部分\n\n// 文件上传\nconst fileList = ref<(UploadUserFile & { md5: string; subscription: any })[]>(\n []\n)\nconst fileUpload = ref<UploadInstance>()\nconst disableForm = computed(\n () => fileList.value.filter((item) => item.status === 'uploading').length > 0\n)\nconst handleRemoveFile: any = (file: any) => {\n if (file.status === 'uploading' || file.status === 'success') {\n return ElMessageBox.confirm(\n '不影响已经上传成功的,正在上传的将取消上传',\n '确定从列表移除文件吗?'\n )\n .then(() => {\n if (file.status === 'uploading') {\n ElMessage.info(`取消${file.name}的上传`)\n // 取消上传\n file.subscription.unsubscribe() // 取消上传\n }\n return true\n })\n .catch(() => false)\n }\n return true\n}\n\n// 校验表单填写\nconst isWriteFinish = computed(() => infos.every((item) => item.value))\n// 提交文件\n\nconst limitBindField = computed(() => {\n return taskMoreInfo.bindField.trim() || '姓名'\n})\n\n// 身份核验表单\nconst isSameFieldName = computed(() =>\n infos.find((v) => v.text === limitBindField.value)\n)\nconst showValidForm = computed(\n () => taskMoreInfo.people && !isSameFieldName.value\n)\nconst validModal = reactive({\n peopleName: ''\n})\n\nconst validatePeopleName = (rule: any, value: any, callback: any) => {\n if (!value) {\n const message = `请输入${limitBindField.value}`\n callback(new Error(message))\n ElMessage.error(message)\n return\n }\n // 异步校验\n PeopleApi.checkPeopleIsExist(k.value, value).then((res) => {\n if (!res.data.exist) {\n ElMessage.error('你不在此次提交名单中,如有疑问请联系管理员')\n }\n callback(\n res.data.exist\n ? undefined\n : new Error('你不在此次提交名单中,如有疑问请联系管理员')\n )\n })\n}\n\nconst validModalRef = ref<FormInstance>()\nconst validModalRules = reactive({\n peopleName: [{ validator: validatePeopleName, trigger: 'blur' }]\n})\nconst confirmPeopleName = () => {\n // 处理表单必填项含有 limitBindField 的情况\n if (isSameFieldName.value) {\n const value = infos.find((v) => v.text === limitBindField.value)?.value\n validModal.peopleName = value || ''\n return new Promise((resolve) => {\n validatePeopleName(null, value, resolve)\n }).then((v) => !v)\n }\n return validModalRef.value.validate((isValid: boolean) => isValid)\n}\n\nconst startUpload = () => {\n const uploadFiles = fileList.value\n for (const file of uploadFiles) {\n if (!file.md5) {\n ElMessage.info(\n `文件(${file.name})的唯一指纹还在计算中,再等待一会儿再点击上传`\n )\n setTimeout(() => {\n ElMessage.info('文件越大计算时间越长(1G通常需要20s)')\n }, 100)\n } else if (file.status === 'ready') {\n // 开始上传\n file.status = 'uploading'\n let { name } = file\n const originName = name\n // 如果开启了自动重命名,这里重命名一下\n if (taskMoreInfo.rewrite) {\n name =\n infos.map((v) => v.value).join(formatData.value.splitChar || '-') +\n getFileSuffix(name)\n }\n // 替换不合法的字符\n name = normalizeFileName(name)\n const key = `easypicker2/${k.value}/${file.md5}/${name}`\n\n FileApi.getUploadToken().then((res) => {\n qiniuUpload(res.data.token, file.raw, key, {\n success(data: any) {\n const { fsize } = data\n FileApi.addFile({\n originName,\n name,\n taskKey: k.value,\n taskName: taskInfo.name,\n size: fsize,\n hash: file.md5,\n info: JSON.stringify(infos),\n people: validModal.peopleName\n }).then(() => {\n file.status = 'success'\n ElMessage.success(`文件:${file.name}提交成功`)\n if (taskMoreInfo.people) {\n // 无感知更新一下\n PeopleApi.updatePeopleStatus(\n k.value,\n name,\n validModal.peopleName,\n file.md5\n )\n }\n })\n },\n process(per: number, data: any, subscription: any) {\n file.percentage = Math.floor(per)\n // 挂载取消上传的方法\n file.subscription = subscription\n }\n })\n })\n }\n }\n}\n\nconst submitUpload = async () => {\n if (!isWriteFinish.value) {\n ElMessage.warning('请先完成必要信息的填写')\n return\n }\n\n if (taskMoreInfo.people) {\n const isValid = await confirmPeopleName()\n if (!isValid) {\n return\n }\n }\n startUpload()\n}\n\n// 是否允许上传\nconst allowUpload = computed(() => {\n for (const file of fileList.value) {\n if (file.status === 'ready') {\n return true\n }\n }\n return false\n})\n\n// 是否允许撤回\nconst allowWithdraw = computed(() => {\n for (const file of fileList.value) {\n if (['success', 'ready'].includes(file.status)) {\n return true\n }\n }\n return false\n})\n\n// 添加文件\n// 正在计算MD5值的文件个数\nconst calculateMd5Count = ref(0)\nconst handleChangeFile = (file: any) => {\n // 校验文件后缀名\n const { name } = file\n if (formatData.value.format.length && formatData.value.status) {\n const suffix = getFileSuffix(name)\n if (!formatData.value.format.find((v) => suffix.endsWith(v))) {\n ElMessage.error(`${name} 格式不符合要求`)\n fileUpload.value.handleRemove(file)\n return\n }\n }\n\n // 校验文件大小\n if (formatData.value.size && formatData.value.size < file.size) {\n ElMessage.error(`${name} 大小${formatSize(file.size)} 不符合要求`)\n fileUpload.value.handleRemove(file)\n return\n }\n\n calculateMd5Count.value += 1\n // 计算md5 hash\n getFileMd5Hash(file.raw).then((str) => {\n file.md5 = str\n calculateMd5Count.value -= 1\n })\n}\n\nconst limitUploadCount = computed(() => formatData.value.limit || 10)\nconst handleExceed = () => {\n ElMessage.warning(\n `一次提交最多只能选择${limitUploadCount.value}个文件,请移除已经上传成功的或刷新页面`\n )\n}\nconst showLinkModel = ref(false)\nconst templateLink = ref('')\nconst runWithdraw = () => {\n const uploadFiles = fileList.value\n for (const file of uploadFiles) {\n if (!file.md5) {\n ElMessage.info(\n `文件(${file.name})的唯一指纹还在计算中,再等待一会儿再点击上传`\n )\n setTimeout(() => {\n ElMessage.info('文件越大计算时间越长(1G通常需要20s)')\n }, 100)\n } else if (!['fail', 'uploading'].includes(file.status)) {\n // 准备开始撤回\n let { name } = file\n\n // 如果开启了自动重命名,这里重命名一下\n if (taskMoreInfo.rewrite) {\n name =\n infos.map((v) => v.value).join(formatData.value.splitChar || '-') +\n getFileSuffix(name)\n }\n\n FileApi.withdrawFile({\n taskKey: k.value,\n taskName: taskInfo.name,\n filename: name,\n hash: file.md5,\n info: JSON.stringify(infos),\n peopleName: validModal.peopleName\n })\n .then(() => {\n ElMessage.success(`文件:${file.name}撤回成功`)\n file.name += ' - (已撤回 ✅ )'\n file.status = 'fail'\n })\n .catch(() => {\n ElMessage.error(`撤回失败: 没有文件:${file.name}对应提交记录`)\n })\n }\n }\n}\nconst downloadTemplate = () => {\n FileApi.getTemplateUrl(taskMoreInfo.template, k.value)\n .then((res) => {\n showLinkModel.value = true\n const { link } = res.data\n templateLink.value = link\n downLoadByUrl(link, taskMoreInfo.template)\n })\n .catch(() => {\n ElMessage.warning('文件已从服务器上移除,请联系管理员重新上传')\n })\n}\n\n// 撤回相关逻辑\nconst isWithdraw = ref(false)\nconst startWithdraw = async () => {\n // 校验表单填写\n if (!isWriteFinish.value) {\n ElMessage.warning('请先完成必要信息的填写')\n return\n }\n if (taskMoreInfo.people) {\n const isValid = await confirmPeopleName()\n if (!isValid) {\n return\n }\n }\n runWithdraw()\n}\n\n// 查询提交情况\nconst checkSubmitStatus = async () => {\n // 校验表单填写\n if (!isWriteFinish.value) {\n ElMessage.warning('请先完成必要信息的填写,需和提交时信息完全一致')\n return\n }\n // 卡控人员限制\n if (taskMoreInfo.people) {\n const isValid = await confirmPeopleName()\n if (!isValid) {\n return\n }\n }\n FileApi.checkSubmitStatus(k.value, infos, validModal.peopleName).then(\n (res) => {\n if (res.data.isSubmit) {\n ElMessage.success('已经提交过啦')\n } else {\n ElMessage.warning('还未提交过哟')\n }\n }\n )\n}\nconst isLoadingData = ref(false)\nconst readyRefresh = ref(false)\nconst isEqualInfos = (a: InfoItem[] = [], b: InfoItem[] = []) => {\n if (a.length !== b.length) {\n return false\n }\n return a.every(\n (v, i) =>\n v.type === b[i].type &&\n v.text === b[i].text &&\n isEqualInfos(v.children, b[i].children)\n )\n}\nconst refreshTaskMoreInfo = (hot = false) => {\n TaskApi.getTaskMoreInfo(k.value).then((res) => {\n Object.assign(taskMoreInfo, res.data)\n if (!isEqualInfos(infos, parseInfo(taskMoreInfo.info))) {\n infos.splice(0, infos.length)\n infos.push(...parseInfo(taskMoreInfo.info))\n if (hot) {\n ElMessage.success('表单信息有更新')\n }\n }\n refreshWaitTime(false)\n isLoadingData.value = false\n })\n}\nconst handleBlur = () => {\n readyRefresh.value = true\n}\nconst handleFocus = () => {\n if (readyRefresh.value && !disableForm.value) {\n readyRefresh.value = false\n refreshTaskMoreInfo(true)\n }\n}\n\n// 展示的时间提示文案\nconst timeInfo = computed(() => {\n if (!isOver.value) {\n return ddlStr.value + waitTimeStr.value\n }\n return ddlStr.value\n})\n\n// tipImage\nconst tipData = reactive<{\n text: string\n imgs: {\n uid: number\n name: string\n }[]\n}>({\n text: '',\n imgs: []\n})\nconst imageList = ref<\n { name: string; uid: number; preview?: string; url: string }[]\n>([])\n\nwatch(\n () => taskMoreInfo.tip,\n () => {\n // 初始化\n try {\n const parseData = JSON.parse(taskMoreInfo.tip)\n tipData.imgs = parseData.imgs\n tipData.text = parseData.text || ''\n imageList.value = tipData.imgs.map((v) => {\n return {\n ...v,\n url: 'https://img.cdn.sugarat.top/mdImg/MTY3NzkxMDI1NTU1Nw==20140524124237518.gif'\n }\n })\n if (imageList.value.length) {\n // 异步填充url\n PublicApi.getTipImageUrl(\n k.value,\n imageList.value.map((v) => ({\n uid: v.uid,\n name: v.name\n }))\n ).then((v) => {\n v.data.forEach((url, idx) => {\n imageList.value[idx].url = url.cover\n Object.assign(imageList.value[idx], {\n preview: url.preview\n })\n })\n })\n }\n } catch {\n tipData.text = ''\n tipData.imgs = []\n imageList.value = []\n }\n }\n)\n\n// 禁用上传\nconst disabledUpload = useLocalStorage('disabledUpload', false)\n\nonMounted(() => {\n k.value = $route.params.key as string\n if (k.value) {\n isLoadingData.value = true\n TaskApi.getTaskInfo(k.value)\n .then((res) => {\n Object.assign(taskInfo, res.data)\n disabledUpload.value = !!res.data.limitUpload\n if(disabledUpload.value){\n ElMessageBox.alert('任务存储空间容量已达到上限,已经无法进行上传,请联系发起人扩容空间')\n }\n })\n .catch((err) => {\n if (err.code === 4001) {\n ElMessage.error('任务不存在')\n k.value = ''\n taskInfo.name = '任务不存在'\n }\n })\n refreshTaskMoreInfo()\n refreshWaitTime()\n }\n // 页面隐藏\n window.addEventListener('blur', handleBlur)\n\n // 页面展示\n window.addEventListener('focus', handleFocus)\n})\n\nonUnmounted(() => {\n // 页面隐藏\n window.removeEventListener('blur', handleBlur)\n // 页面展示\n window.removeEventListener('focus', handleFocus)\n})\n</script>\n<style scoped lang=\"scss\">\n.task-panel :deep(ul.el-upload-list) {\n border: 1px dashed #d4d4d4;\n padding: 10px;\n\n &::before {\n content: '此处展示选择文件列表';\n font-size: 12px;\n position: relative;\n bottom: 4px;\n }\n}\n\n.task-panel :deep(.el-upload-list__item-name) {\n display: block;\n overflow: hidden;\n max-width: 290px;\n text-overflow: ellipsis;\n word-break: keep-all;\n}\n\n.task-panel :deep(.is-ready .el-icon--close) {\n display: block;\n color: black;\n}\n\n.task-panel {\n background-color: #f3f6f8;\n padding-bottom: 1rem;\n position: relative;\n}\n\n.pc-nav {\n background-color: #fff;\n display: flex;\n padding: 10px;\n justify-content: space-between;\n align-items: center;\n\n .exit {\n cursor: pointer;\n }\n\n .nav {\n display: flex;\n\n nav {\n display: flex;\n align-items: center;\n\n .nav-item {\n font-size: 1rem;\n color: #595959;\n padding: 10px;\n cursor: pointer;\n\n &.active {\n color: #409eff !important;\n font-weight: 600;\n }\n }\n }\n\n .exit {\n color: #595959;\n }\n }\n\n .logo {\n width: 180px;\n margin: 0 10px;\n\n img {\n height: 40px;\n }\n }\n}\n\n.panel {\n max-width: 1024px;\n padding: 1em;\n background-color: #fff;\n margin: 10px auto;\n box-sizing: border-box;\n box-shadow: 0 2px 12px 0 rgb(0 0 0 / 10%);\n border-radius: 4px;\n\n .name {\n text-align: center;\n }\n\n .ddl {\n margin-top: 10px;\n color: #919191;\n font-size: 14px;\n }\n\n .infos {\n max-width: 460px;\n margin: auto;\n overflow: hidden;\n :deep(div.el-form-item > label) {\n font-weight: bold;\n &::before {\n content: '* ';\n color: red;\n }\n }\n }\n}\n\n.withdraw {\n text-align: right;\n}\n\n.tip-wrapper {\n line-height: 20px;\n text-align: left;\n word-break: break-all;\n // max-height: 100px;\n overflow: hidden;\n padding: 0 20px;\n color: #e6a23c;\n max-width: 320px;\n font-size: 14px;\n}\n</style>\n"],"names":["_sfc_main","defineComponent","_hoisted_1","_hoisted_2","createElementVNode","_hoisted_3","_sfc_render","_ctx","_cache","$props","$setup","$data","$options","openBlock","createElementBlock","uploadFilled","_export_sfc","$store","useStore","isMobile","computed","$router","useRouter","$route","useRoute","pcNavs","reactive","handleNav","idx","taskInfo","taskMoreInfo","formatData","parseFileFormat","k","ref","waitTime","isOver","waitTimeStr","seconds","hour","day","minute","refreshWaitTime","loop","date","ddlStr","formatDate","infos","fileList","fileUpload","disableForm","item","handleRemoveFile","file","ElMessageBox","ElMessage","isWriteFinish","limitBindField","isSameFieldName","v","showValidForm","validModal","validatePeopleName","rule","value","callback","message","PeopleApi","res","validModalRef","validModalRules","confirmPeopleName","_a","resolve","isValid","startUpload","uploadFiles","name","originName","getFileSuffix","normalizeFileName","key","FileApi","qiniuUpload","data","fsize","per","subscription","submitUpload","allowUpload","allowWithdraw","calculateMd5Count","handleChangeFile","suffix","formatSize","getFileMd5Hash","str","limitUploadCount","handleExceed","showLinkModel","templateLink","runWithdraw","downloadTemplate","link","downLoadByUrl","isWithdraw","startWithdraw","checkSubmitStatus","isLoadingData","readyRefresh","isEqualInfos","a","b","i","refreshTaskMoreInfo","hot","TaskApi","parseInfo","handleBlur","handleFocus","timeInfo","tipData","imageList","watch","parseData","PublicApi","url","e","disabledUpload","useLocalStorage","onMounted","err","onUnmounted"],"mappings":"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","x_google_ignoreList":[0]}
@@ -0,0 +1,2 @@
1
+ import{bM as s,bQ as p,cL as f,O as c,k as d,bL as g,r as w,bJ as y}from"./index-d98be3e4.js";const b=(t,o)=>{if(!s)return!1;const e={undefined:"overflow",true:"overflow-y",false:"overflow-x"}[String(o)],r=p(t,e);return["scroll","auto","overlay"].some(a=>r.includes(a))},N=(t,o)=>{if(!s)return;let e=t;for(;e;){if([window,document,document.documentElement].includes(e))return window;if(b(e,o))return e;e=e.parentNode}return e};let l;const D=t=>{var o;if(!s)return 0;if(l!==void 0)return l;const e=document.createElement("div");e.className="".concat(t,"-scrollbar__wrap"),e.style.visibility="hidden",e.style.width="100px",e.style.position="absolute",e.style.top="-9999px",document.body.appendChild(e);const r=e.offsetWidth;e.style.overflow="scroll";const a=document.createElement("div");a.style.width="100%",e.appendChild(a);const n=a.offsetWidth;return(o=e.parentNode)==null||o.removeChild(e),l=r-n,l};function x(t,o){if(!s)return;if(!o){t.scrollTop=0;return}const e=[];let r=o.offsetParent;for(;r!==null&&t!==r&&t.contains(r);)e.push(r),r=r.offsetParent;const a=o.offsetTop+e.reduce((m,h)=>m+h.offsetTop,0),n=a+o.offsetHeight,i=t.scrollTop,u=i+t.clientHeight;a<i?t.scrollTop=a:n>u&&(t.scrollTop=n-t.clientHeight)}var v={name:"en",el:{colorpicker:{confirm:"OK",clear:"Clear",defaultLabel:"color picker",description:"current color is {color}. press enter to select a new color."},datepicker:{now:"Now",today:"Today",cancel:"Cancel",clear:"Clear",confirm:"OK",dateTablePrompt:"Use the arrow keys and enter to select the day of the month",monthTablePrompt:"Use the arrow keys and enter to select the month",yearTablePrompt:"Use the arrow keys and enter to select the year",selectedDate:"Selected date",selectDate:"Select date",selectTime:"Select time",startDate:"Start Date",startTime:"Start Time",endDate:"End Date",endTime:"End Time",prevYear:"Previous Year",nextYear:"Next Year",prevMonth:"Previous Month",nextMonth:"Next Month",year:"",month1:"January",month2:"February",month3:"March",month4:"April",month5:"May",month6:"June",month7:"July",month8:"August",month9:"September",month10:"October",month11:"November",month12:"December",week:"week",weeks:{sun:"Sun",mon:"Mon",tue:"Tue",wed:"Wed",thu:"Thu",fri:"Fri",sat:"Sat"},weeksFull:{sun:"Sunday",mon:"Monday",tue:"Tuesday",wed:"Wednesday",thu:"Thursday",fri:"Friday",sat:"Saturday"},months:{jan:"Jan",feb:"Feb",mar:"Mar",apr:"Apr",may:"May",jun:"Jun",jul:"Jul",aug:"Aug",sep:"Sep",oct:"Oct",nov:"Nov",dec:"Dec"}},inputNumber:{decrease:"decrease number",increase:"increase number"},select:{loading:"Loading",noMatch:"No matching data",noData:"No data",placeholder:"Select"},dropdown:{toggleDropdown:"Toggle Dropdown"},cascader:{noMatch:"No matching data",loading:"Loading",placeholder:"Select",noData:"No data"},pagination:{goto:"Go to",pagesize:"/page",total:"Total {total}",pageClassifier:"",deprecationWarning:"Deprecated usages detected, please refer to the el-pagination documentation for more details"},dialog:{close:"Close this dialog"},drawer:{close:"Close this dialog"},messagebox:{title:"Message",confirm:"OK",cancel:"Cancel",error:"Illegal input",close:"Close this dialog"},upload:{deleteTip:"press delete to remove",delete:"Delete",preview:"Preview",continue:"Continue"},slider:{defaultLabel:"slider between {min} and {max}",defaultRangeStartLabel:"pick start value",defaultRangeEndLabel:"pick end value"},table:{emptyText:"No Data",confirmFilter:"Confirm",resetFilter:"Reset",clearFilter:"All",sumText:"Sum"},tree:{emptyText:"No Data"},transfer:{noMatch:"No matching data",noData:"No data",titles:["List 1","List 2"],filterPlaceholder:"Enter keyword",noCheckedFormat:"{total} items",hasCheckedFormat:"{checked}/{total} checked"},image:{error:"FAILED"},pageHeader:{title:"Back"},popconfirm:{confirmButtonText:"Yes",cancelButtonText:"No"}}};const T=t=>(o,e)=>S(o,e,d(t)),S=(t,o,e)=>y(e,t,t).replace(/\{(\w+)\}/g,(r,a)=>{var n;return"".concat((n=o==null?void 0:o[a])!=null?n:"{".concat(a,"}"))}),k=t=>{const o=c(()=>d(t).name),e=g(t)?t:w(t);return{lang:o,locale:e,t:T(t)}},M=()=>{const t=f("locale");return k(c(()=>t.value||v))};export{D as a,N as g,x as s,M as u};
2
+ //# sourceMappingURL=index-eda7d85a.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-eda7d85a.js","sources":["../../node_modules/.pnpm/element-plus@2.2.13_vue@3.3.4/node_modules/element-plus/es/utils/dom/scroll.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.3.4/node_modules/element-plus/es/locale/lang/en.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.3.4/node_modules/element-plus/es/hooks/use-locale/index.mjs"],"sourcesContent":["import { isClient } from '@vueuse/core';\nimport { getStyle } from './style.mjs';\n\nconst isScroll = (el, isVertical) => {\n if (!isClient)\n return false;\n const key = {\n undefined: \"overflow\",\n true: \"overflow-y\",\n false: \"overflow-x\"\n }[String(isVertical)];\n const overflow = getStyle(el, key);\n return [\"scroll\", \"auto\", \"overlay\"].some((s) => overflow.includes(s));\n};\nconst getScrollContainer = (el, isVertical) => {\n if (!isClient)\n return;\n let parent = el;\n while (parent) {\n if ([window, document, document.documentElement].includes(parent))\n return window;\n if (isScroll(parent, isVertical))\n return parent;\n parent = parent.parentNode;\n }\n return parent;\n};\nlet scrollBarWidth;\nconst getScrollBarWidth = (namespace) => {\n var _a;\n if (!isClient)\n return 0;\n if (scrollBarWidth !== void 0)\n return scrollBarWidth;\n const outer = document.createElement(\"div\");\n outer.className = `${namespace}-scrollbar__wrap`;\n outer.style.visibility = \"hidden\";\n outer.style.width = \"100px\";\n outer.style.position = \"absolute\";\n outer.style.top = \"-9999px\";\n document.body.appendChild(outer);\n const widthNoScroll = outer.offsetWidth;\n outer.style.overflow = \"scroll\";\n const inner = document.createElement(\"div\");\n inner.style.width = \"100%\";\n outer.appendChild(inner);\n const widthWithScroll = inner.offsetWidth;\n (_a = outer.parentNode) == null ? void 0 : _a.removeChild(outer);\n scrollBarWidth = widthNoScroll - widthWithScroll;\n return scrollBarWidth;\n};\nfunction scrollIntoView(container, selected) {\n if (!isClient)\n return;\n if (!selected) {\n container.scrollTop = 0;\n return;\n }\n const offsetParents = [];\n let pointer = selected.offsetParent;\n while (pointer !== null && container !== pointer && container.contains(pointer)) {\n offsetParents.push(pointer);\n pointer = pointer.offsetParent;\n }\n const top = selected.offsetTop + offsetParents.reduce((prev, curr) => prev + curr.offsetTop, 0);\n const bottom = top + selected.offsetHeight;\n const viewRectTop = container.scrollTop;\n const viewRectBottom = viewRectTop + container.clientHeight;\n if (top < viewRectTop) {\n container.scrollTop = top;\n } else if (bottom > viewRectBottom) {\n container.scrollTop = bottom - container.clientHeight;\n }\n}\n\nexport { getScrollBarWidth, getScrollContainer, isScroll, scrollIntoView };\n//# sourceMappingURL=scroll.mjs.map\n","var English = {\n name: \"en\",\n el: {\n colorpicker: {\n confirm: \"OK\",\n clear: \"Clear\",\n defaultLabel: \"color picker\",\n description: \"current color is {color}. press enter to select a new color.\"\n },\n datepicker: {\n now: \"Now\",\n today: \"Today\",\n cancel: \"Cancel\",\n clear: \"Clear\",\n confirm: \"OK\",\n dateTablePrompt: \"Use the arrow keys and enter to select the day of the month\",\n monthTablePrompt: \"Use the arrow keys and enter to select the month\",\n yearTablePrompt: \"Use the arrow keys and enter to select the year\",\n selectedDate: \"Selected date\",\n selectDate: \"Select date\",\n selectTime: \"Select time\",\n startDate: \"Start Date\",\n startTime: \"Start Time\",\n endDate: \"End Date\",\n endTime: \"End Time\",\n prevYear: \"Previous Year\",\n nextYear: \"Next Year\",\n prevMonth: \"Previous Month\",\n nextMonth: \"Next Month\",\n year: \"\",\n month1: \"January\",\n month2: \"February\",\n month3: \"March\",\n month4: \"April\",\n month5: \"May\",\n month6: \"June\",\n month7: \"July\",\n month8: \"August\",\n month9: \"September\",\n month10: \"October\",\n month11: \"November\",\n month12: \"December\",\n week: \"week\",\n weeks: {\n sun: \"Sun\",\n mon: \"Mon\",\n tue: \"Tue\",\n wed: \"Wed\",\n thu: \"Thu\",\n fri: \"Fri\",\n sat: \"Sat\"\n },\n weeksFull: {\n sun: \"Sunday\",\n mon: \"Monday\",\n tue: \"Tuesday\",\n wed: \"Wednesday\",\n thu: \"Thursday\",\n fri: \"Friday\",\n sat: \"Saturday\"\n },\n months: {\n jan: \"Jan\",\n feb: \"Feb\",\n mar: \"Mar\",\n apr: \"Apr\",\n may: \"May\",\n jun: \"Jun\",\n jul: \"Jul\",\n aug: \"Aug\",\n sep: \"Sep\",\n oct: \"Oct\",\n nov: \"Nov\",\n dec: \"Dec\"\n }\n },\n inputNumber: {\n decrease: \"decrease number\",\n increase: \"increase number\"\n },\n select: {\n loading: \"Loading\",\n noMatch: \"No matching data\",\n noData: \"No data\",\n placeholder: \"Select\"\n },\n dropdown: {\n toggleDropdown: \"Toggle Dropdown\"\n },\n cascader: {\n noMatch: \"No matching data\",\n loading: \"Loading\",\n placeholder: \"Select\",\n noData: \"No data\"\n },\n pagination: {\n goto: \"Go to\",\n pagesize: \"/page\",\n total: \"Total {total}\",\n pageClassifier: \"\",\n deprecationWarning: \"Deprecated usages detected, please refer to the el-pagination documentation for more details\"\n },\n dialog: {\n close: \"Close this dialog\"\n },\n drawer: {\n close: \"Close this dialog\"\n },\n messagebox: {\n title: \"Message\",\n confirm: \"OK\",\n cancel: \"Cancel\",\n error: \"Illegal input\",\n close: \"Close this dialog\"\n },\n upload: {\n deleteTip: \"press delete to remove\",\n delete: \"Delete\",\n preview: \"Preview\",\n continue: \"Continue\"\n },\n slider: {\n defaultLabel: \"slider between {min} and {max}\",\n defaultRangeStartLabel: \"pick start value\",\n defaultRangeEndLabel: \"pick end value\"\n },\n table: {\n emptyText: \"No Data\",\n confirmFilter: \"Confirm\",\n resetFilter: \"Reset\",\n clearFilter: \"All\",\n sumText: \"Sum\"\n },\n tree: {\n emptyText: \"No Data\"\n },\n transfer: {\n noMatch: \"No matching data\",\n noData: \"No data\",\n titles: [\"List 1\", \"List 2\"],\n filterPlaceholder: \"Enter keyword\",\n noCheckedFormat: \"{total} items\",\n hasCheckedFormat: \"{checked}/{total} checked\"\n },\n image: {\n error: \"FAILED\"\n },\n pageHeader: {\n title: \"Back\"\n },\n popconfirm: {\n confirmButtonText: \"Yes\",\n cancelButtonText: \"No\"\n }\n }\n};\n\nexport { English as default };\n//# sourceMappingURL=en.mjs.map\n","import { unref, computed, isRef, ref } from 'vue';\nimport { get } from 'lodash-unified';\nimport English from '../../locale/lang/en.mjs';\nimport { useGlobalConfig } from '../use-global-config/index.mjs';\n\nconst buildTranslator = (locale) => (path, option) => translate(path, option, unref(locale));\nconst translate = (path, option, locale) => get(locale, path, path).replace(/\\{(\\w+)\\}/g, (_, key) => {\n var _a;\n return `${(_a = option == null ? void 0 : option[key]) != null ? _a : `{${key}}`}`;\n});\nconst buildLocaleContext = (locale) => {\n const lang = computed(() => unref(locale).name);\n const localeRef = isRef(locale) ? locale : ref(locale);\n return {\n lang,\n locale: localeRef,\n t: buildTranslator(locale)\n };\n};\nconst useLocale = () => {\n const locale = useGlobalConfig(\"locale\");\n return buildLocaleContext(computed(() => locale.value || English));\n};\n\nexport { buildLocaleContext, buildTranslator, translate, useLocale };\n//# sourceMappingURL=index.mjs.map\n"],"names":["isScroll","el","isVertical","isClient","key","overflow","getStyle","s","getScrollContainer","parent","scrollBarWidth","getScrollBarWidth","namespace","_a","outer","widthNoScroll","inner","widthWithScroll","scrollIntoView","container","selected","offsetParents","pointer","top","prev","curr","bottom","viewRectTop","viewRectBottom","English","buildTranslator","locale","path","option","translate","unref","get","_","buildLocaleContext","lang","computed","localeRef","isRef","ref","useLocale","useGlobalConfig"],"mappings":"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","x_google_ignoreList":[0,1,2]}
@@ -0,0 +1,2 @@
1
+ import{d as a,a1 as c,c as n,a as o,t as _,k as d,p,e as i,f as l,_ as r}from"./index-d98be3e4.js";const u=e=>(p("data-v-bb4c1a74"),e=e(),i(),e),h={class:"not-found"},f=u(()=>o("h1",null,"EasyPicker | 轻取",-1)),m=a({__name:"index",setup(e){const t=c(),s=()=>{window.location.href="https://docs.ep.sugarat.top/"};return(x,b)=>(l(),n("div",h,[f,o("h2",null,_(d(t).query.title)+":已被网站管理员禁用",1),o("h3",null,[o("a",{onClick:s},"查看应用介绍")])]))}});const v=r(m,[["__scopeId","data-v-bb4c1a74"]]);export{v as default};
2
+ //# sourceMappingURL=index-fdc557f8.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-fdc557f8.js","sources":["../../src/pages/disabled/index.vue"],"sourcesContent":["<template>\n <div class=\"not-found\">\n <h1>EasyPicker | 轻取</h1>\n <h2>{{ $route.query.title }}:已被网站管理员禁用</h2>\n <h3><a @click=\"handleToHome\">查看应用介绍</a></h3>\n </div>\n</template>\n<script lang=\"ts\" setup>\nimport { useRoute } from 'vue-router'\n\nconst $route = useRoute()\nconst handleToHome = () => {\n window.location.href = 'https://docs.ep.sugarat.top/'\n}\n</script>\n<style lang=\"scss\" scoped>\n.not-found {\n font-family: 'Avenir', Helvetica, Arial, sans-serif;\n background-image: linear-gradient(to top, #30cfd0 0%, #330867 100%);\n min-height: 100vh;\n}\nh1,\nh2,\nh3,\na {\n color: aliceblue;\n text-align: center;\n font-weight: lighter;\n}\na {\n margin-left: 10px;\n border-bottom: 2px solid aliceblue;\n cursor: pointer;\n}\nh1 {\n font-size: 48px;\n padding-top: 10%;\n}\nh2 {\n font-size: 30px;\n padding-top: 2vh;\n}\nh3 {\n font-size: 28px;\n padding-top: 1vh;\n}\n</style>\n"],"names":["$route","useRoute","handleToHome"],"mappings":"+OAUA,MAAAA,EAAAC,IACAC,EAAA,IAAA,CACE,OAAA,SAAA,KAAA,8BAAuB"}
@@ -0,0 +1,2 @@
1
+ System.register(["./index-legacy.acb8b137.js"],(function(t,a){"use strict";var e,n,d,o,i,c,r,b,l,s;return{setters:[t=>{e=t.d,n=t.a1,d=t.c,o=t.a,i=t.t,c=t.k,r=t.p,b=t.e,l=t.f,s=t._}],execute:function(){var a=document.createElement("style");a.textContent=".not-found[data-v-bb4c1a74]{font-family:Avenir,Helvetica,Arial,sans-serif;background-image:linear-gradient(to top,#30cfd0 0%,#330867 100%);min-height:100vh}h1[data-v-bb4c1a74],h2[data-v-bb4c1a74],h3[data-v-bb4c1a74],a[data-v-bb4c1a74]{color:#f0f8ff;text-align:center;font-weight:lighter}a[data-v-bb4c1a74]{margin-left:10px;border-bottom:2px solid aliceblue;cursor:pointer}h1[data-v-bb4c1a74]{font-size:48px;padding-top:10%}h2[data-v-bb4c1a74]{font-size:30px;padding-top:2vh}h3[data-v-bb4c1a74]{font-size:28px;padding-top:1vh}\n",document.head.appendChild(a);const p={class:"not-found"},f=(t=>(r("data-v-bb4c1a74"),t=t(),b(),t))((()=>o("h1",null,"EasyPicker | 轻取",-1)));t("default",s(e({__name:"index",setup(t){const a=n(),e=()=>{window.location.href="https://docs.ep.sugarat.top/"};return(t,n)=>(l(),d("div",p,[f,o("h2",null,i(c(a).query.title)+":已被网站管理员禁用",1),o("h3",null,[o("a",{onClick:e},"查看应用介绍")])]))}}),[["__scopeId","data-v-bb4c1a74"]]))}}}));
2
+ //# sourceMappingURL=index-legacy.0c570346.js.map
@@ -0,0 +1,2 @@
1
+ System.register(["./index-legacy.acb8b137.js","./el-loading-legacy.534bd799.js","./el-progress-legacy.07ca6502.js","./el-form-item-legacy.a8e8784e.js","./tip-legacy.dee89e85.js","./index-legacy.e12feae0.js","./index-legacy.84e0eca9.js","./index-legacy.3e6b32cf.js","./isEqual-legacy.dbaa2a6e.js","./el-dialog-legacy.e6ef2c86.js","./el-select-legacy.94fad7fa.js","./validator-legacy.ecd1e5dd.js","./aria-legacy.af0825d3.js"],(function(e,a){"use strict";var l,t,i,n,s,d,o,u,r,p,v,c,f,m,g,h,y,x,k,w,b,_,z,j,N,$,E,C,U,T,I,S,L,F,M,O,D,P,V,W,A,G,J,R,q,B,H,K,Y,Z,Q,X,ee,ae,le,te,ie,ne,se;return{setters:[e=>{l=e.g,t=e.d,i=e.f,n=e.c,s=e.a,d=e.h,o=e.O,u=e.u,r=e.a1,p=e.Z,v=e.r,c=e.$,f=e.bU,m=e.o,g=e.aU,h=e.E,y=e.bd,x=e.i,k=e.j,w=e.w,b=e.F,_=e.C,z=e.a7,j=e.t,N=e.k,$=e.S,E=e.a8,C=e.D,U=e.af,T=e.a5,I=e.bV,S=e.ab,L=e.a9,F=e.ae,M=e.y,O=e.x,D=e.bW,P=e.aY,V=e.P,W=e.b,A=e.a3,G=e.a_,J=e.s,R=e.aW,q=e.v,B=e.I,H=e.p,K=e.e,Y=e._},e=>{Z=e.v},e=>{Q=e.E,X=e.a},e=>{ee=e.a,ae=e.E},e=>{le=e.T,te=e.E},e=>{ie=e.I,ne=e.L},e=>{se=e.E},null,null,null,null,null,null],execute:function(){var a=document.createElement("style");a.textContent='@charset "UTF-8";.task-panel[data-v-d8054f3d] ul.el-upload-list{border:1px dashed #d4d4d4;padding:10px}.task-panel[data-v-d8054f3d] ul.el-upload-list:before{content:"此处展示选择文件列表";font-size:12px;position:relative;bottom:4px}.task-panel[data-v-d8054f3d] .el-upload-list__item-name{display:block;overflow:hidden;max-width:290px;text-overflow:ellipsis;word-break:keep-all}.task-panel[data-v-d8054f3d] .is-ready .el-icon--close{display:block;color:#000}.task-panel[data-v-d8054f3d]{background-color:#f3f6f8;padding-bottom:1rem;position:relative}.pc-nav[data-v-d8054f3d]{background-color:#fff;display:flex;padding:10px;justify-content:space-between;align-items:center}.pc-nav .exit[data-v-d8054f3d]{cursor:pointer}.pc-nav .nav[data-v-d8054f3d]{display:flex}.pc-nav .nav nav[data-v-d8054f3d]{display:flex;align-items:center}.pc-nav .nav nav .nav-item[data-v-d8054f3d]{font-size:1rem;color:#595959;padding:10px;cursor:pointer}.pc-nav .nav nav .nav-item.active[data-v-d8054f3d]{color:#409eff!important;font-weight:600}.pc-nav .nav .exit[data-v-d8054f3d]{color:#595959}.pc-nav .logo[data-v-d8054f3d]{width:180px;margin:0 10px}.pc-nav .logo img[data-v-d8054f3d]{height:40px}.panel[data-v-d8054f3d]{max-width:1024px;padding:1em;background-color:#fff;margin:10px auto;box-sizing:border-box;box-shadow:0 2px 12px rgba(0,0,0,.1);border-radius:4px}.panel .name[data-v-d8054f3d]{text-align:center}.panel .ddl[data-v-d8054f3d]{margin-top:10px;color:#919191;font-size:14px}.panel .infos[data-v-d8054f3d]{max-width:460px;margin:auto;overflow:hidden}.panel .infos[data-v-d8054f3d] div.el-form-item>label{font-weight:700}.panel .infos[data-v-d8054f3d] div.el-form-item>label:before{content:"* ";color:red}.withdraw[data-v-d8054f3d]{text-align:right}.tip-wrapper[data-v-d8054f3d]{line-height:20px;text-align:left;word-break:break-all;overflow:hidden;padding:0 20px;color:#e6a23c;max-width:320px;font-size:14px}\n',document.head.appendChild(a);const de=t({name:"UploadFilled"}),oe={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},ue=[s("path",{fill:"currentColor",d:"M544 864V672h128L512 480 352 672h128v192H320v-1.6c-5.376.32-10.496 1.6-16 1.6A240 240 0 0 1 64 624c0-123.136 93.12-223.488 212.608-237.248A239.808 239.808 0 0 1 512 192a239.872 239.872 0 0 1 235.456 194.752c119.488 13.76 212.48 114.112 212.48 237.248a240 240 0 0 1-240 240c-5.376 0-10.56-1.28-16-1.6v1.6H544z"},null,-1)];var re=l(de,[["render",function(e,a,l,t,s,d){return i(),n("svg",oe,ue)}]]);const pe=e=>(H("data-v-d8054f3d"),e=e(),K(),e),ve={class:"task-panel"},ce={class:"pc-nav"},fe={class:"nav"},me={class:"logo"},ge=pe((()=>s("img",{style:{height:"40px",width:"170px"},src:"https://img.cdn.sugarat.top/easypicker/EasyPicker.png",alt:"logo"},null,-1))),he=["onClick"],ye={key:0,"element-loading-text":"Loading...",class:"panel tc"},xe={class:"name"},ke={key:0,style:{color:"red"}},we={class:"tip-wrapper"},be={class:"ddl"},_e={key:0},ze={key:4},je={class:"infos"},Ne={key:0},$e={class:"infos"},Ee=pe((()=>s("div",{class:"el-upload__text"},[W(" 将文件拖于此处 or "),s("em",null,"直接选择文件")],-1))),Ce={class:"p10"},Ue={class:"p10"},Te={class:"p10 option-tips"},Ie={style:{color:"red"}},Se={style:{color:"red"}},Le=pe((()=>s("br",null,null,-1))),Fe=pe((()=>s("br",null,null,-1))),Me=pe((()=>s("br",null,null,-1))),Oe=pe((()=>s("strong",null,"选择大文件后需要等待一会儿才展示处理",-1))),De=pe((()=>s("br",null,null,-1))),Pe={class:"withdraw"},Ve={key:1,class:"panel tc"},We={class:"name"},Ae={style:{"padding-top":"20px"}};e("default",Y(t({__name:"index",setup(e){const a=d(),l=o((()=>a.getters["public/isMobile"])),t=u(),H=r(),K=p([{title:"我也要收集",path:"https://docs.ep.sugarat.top/"}]),Y=p({name:"",category:""}),de=p({bindField:""}),oe=o((()=>G(de.format))),ue=v(""),pe=v(0),Ge=o((()=>pe.value<=0)),Je=o((()=>{let e=~~(pe.value/1e3),a=~~(e/3600);const l=~~(a/24);a%=24;const t=~~(e%3600/60);return e%=60,`剩余${l}天${a}时${t}分${e}秒`})),Re=(e=!0)=>{if(de?.ddl){const e=new Date(de.ddl);pe.value=e.getTime()-Date.now()}else pe.value=0;e&&setTimeout((()=>{Re()}),1e3)},qe=o((()=>{if(de?.ddl){const e=new Date(de.ddl);return J(e)}return""})),Be=p([]),He=v([]),Ke=v(),Ye=o((()=>He.value.filter((e=>"uploading"===e.status)).length>0)),Ze=e=>"uploading"!==e.status&&"success"!==e.status||se.confirm("不影响已经上传成功的,正在上传的将取消上传","确定从列表移除文件吗?").then((()=>("uploading"===e.status&&(h.info(`取消${e.name}的上传`),e.subscription.unsubscribe()),!0))).catch((()=>!1)),Qe=o((()=>Be.every((e=>e.value)))),Xe=o((()=>de.bindField.trim()||"姓名")),ea=o((()=>Be.find((e=>e.text===Xe.value)))),aa=o((()=>de.people&&!ea.value)),la=p({peopleName:""}),ta=(e,a,l)=>{if(!a){const e=`请输入${Xe.value}`;return l(new Error(e)),void h.error(e)}R.checkPeopleIsExist(ue.value,a).then((e=>{e.data.exist||h.error("你不在此次提交名单中,如有疑问请联系管理员"),l(e.data.exist?void 0:new Error("你不在此次提交名单中,如有疑问请联系管理员"))}))},ia=v(),na=p({peopleName:[{validator:ta,trigger:"blur"}]}),sa=()=>{if(ea.value){const e=Be.find((e=>e.text===Xe.value))?.value;return la.peopleName=e||"",new Promise((a=>{ta(0,e,a)})).then((e=>!e))}return ia.value.validate((e=>e))},da=async()=>{if(Qe.value){if(de.people&&!(await sa()))return;(()=>{const e=He.value;for(const a of e)if(a.md5){if("ready"===a.status){a.status="uploading";let{name:e}=a;const l=e;de.rewrite&&(e=Be.map((e=>e.value)).join(oe.value.splitChar||"-")+U(e)),e=D(e);const t=`easypicker2/${ue.value}/${a.md5}/${e}`;S.getUploadToken().then((i=>{P(i.data.token,a.raw,t,{success(t){const{fsize:i}=t;S.addFile({originName:l,name:e,taskKey:ue.value,taskName:Y.name,size:i,hash:a.md5,info:JSON.stringify(Be),people:la.peopleName}).then((()=>{a.status="success",h.success(`文件:${a.name}提交成功`),de.people&&R.updatePeopleStatus(ue.value,e,la.peopleName,a.md5)}))},process(e,l,t){a.percentage=Math.floor(e),a.subscription=t}})}))}}else h.info(`文件(${a.name})的唯一指纹还在计算中,再等待一会儿再点击上传`),setTimeout((()=>{h.info("文件越大计算时间越长(1G通常需要20s)")}),100)})()}else h.warning("请先完成必要信息的填写")},oa=o((()=>{for(const e of He.value)if("ready"===e.status)return!0;return!1})),ua=o((()=>{for(const e of He.value)if(["success","ready"].includes(e.status))return!0;return!1})),ra=v(0),pa=e=>{const{name:a}=e;if(oe.value.format.length&&oe.value.status){const l=U(a);if(!oe.value.format.find((e=>l.endsWith(e))))return h.error(`${a} 格式不符合要求`),void Ke.value.handleRemove(e)}if(oe.value.size&&oe.value.size<e.size)return h.error(`${a} 大小${T(e.size)} 不符合要求`),void Ke.value.handleRemove(e);ra.value+=1,I(e.raw).then((a=>{e.md5=a,ra.value-=1}))},va=o((()=>oe.value.limit||10)),ca=()=>{h.warning(`一次提交最多只能选择${va.value}个文件,请移除已经上传成功的或刷新页面`)},fa=v(!1),ma=v(""),ga=()=>{S.getTemplateUrl(de.template,ue.value).then((e=>{fa.value=!0;const{link:a}=e.data;ma.value=a,L(a,de.template)})).catch((()=>{h.warning("文件已从服务器上移除,请联系管理员重新上传")}))},ha=v(!1),ya=async()=>{if(Qe.value){if(de.people&&!(await sa()))return;(()=>{const e=He.value;for(const a of e)if(a.md5){if(!["fail","uploading"].includes(a.status)){let{name:e}=a;de.rewrite&&(e=Be.map((e=>e.value)).join(oe.value.splitChar||"-")+U(e)),S.withdrawFile({taskKey:ue.value,taskName:Y.name,filename:e,hash:a.md5,info:JSON.stringify(Be),peopleName:la.peopleName}).then((()=>{h.success(`文件:${a.name}撤回成功`),a.name+=" - (已撤回 ✅ )",a.status="fail"})).catch((()=>{h.error(`撤回失败: 没有文件:${a.name}对应提交记录`)}))}}else h.info(`文件(${a.name})的唯一指纹还在计算中,再等待一会儿再点击上传`),setTimeout((()=>{h.info("文件越大计算时间越长(1G通常需要20s)")}),100)})()}else h.warning("请先完成必要信息的填写")},xa=async()=>{if(Qe.value){if(de.people&&!(await sa()))return;S.checkSubmitStatus(ue.value,Be,la.peopleName).then((e=>{e.data.isSubmit?h.success("已经提交过啦"):h.warning("还未提交过哟")}))}else h.warning("请先完成必要信息的填写,需和提交时信息完全一致")},ka=v(!1),wa=v(!1),ba=(e=[],a=[])=>e.length===a.length&&e.every(((e,l)=>e.type===a[l].type&&e.text===a[l].text&&ba(e.children,a[l].children))),_a=(e=!1)=>{g.getTaskMoreInfo(ue.value).then((a=>{Object.assign(de,a.data),ba(Be,F(de.info))||(Be.splice(0,Be.length),Be.push(...F(de.info)),e&&h.success("表单信息有更新")),Re(!1),ka.value=!1}))},za=()=>{wa.value=!0},ja=()=>{wa.value&&!Ye.value&&(wa.value=!1,_a(!0))},Na=o((()=>Ge.value?qe.value:qe.value+Je.value)),$a=p({text:"",imgs:[]}),Ea=v([]);c((()=>de.tip),(()=>{try{const e=JSON.parse(de.tip);$a.imgs=e.imgs,$a.text=e.text||"",Ea.value=$a.imgs.map((e=>({...e,url:"https://img.cdn.sugarat.top/mdImg/MTY3NzkxMDI1NTU1Nw==20140524124237518.gif"}))),Ea.value.length&&V.getTipImageUrl(ue.value,Ea.value.map((e=>({uid:e.uid,name:e.name})))).then((e=>{e.data.forEach(((e,a)=>{Ea.value[a].url=e.cover,Object.assign(Ea.value[a],{preview:e.preview})}))}))}catch{$a.text="",$a.imgs=[],Ea.value=[]}}));const Ca=f("disabledUpload",!1);return m((()=>{ue.value=H.params.key,ue.value&&(ka.value=!0,g.getTaskInfo(ue.value).then((e=>{Object.assign(Y,e.data),Ca.value=!!e.data.limitUpload,Ca.value&&se.alert("任务存储空间容量已达到上限,已经无法进行上传,请联系发起人扩容空间")})).catch((e=>{4001===e.code&&(h.error("任务不存在"),ue.value="",Y.name="任务不存在")})),_a(),Re()),window.addEventListener("blur",za),window.addEventListener("focus",ja)})),y((()=>{window.removeEventListener("blur",za),window.removeEventListener("focus",ja)})),(e,a)=>{const d=x("router-link"),o=M,u=te,r=X,p=q,v=ae,c=ee,f=O,m=B,g=Q,h=Z;return i(),n("div",ve,[s("div",ce,[s("div",fe,[s("div",me,[k(d,{to:"/"},{default:w((()=>[ge])),_:1})]),s("nav",null,[(i(!0),n(b,null,_(K,((e,a)=>(i(),n("div",{class:"nav-item",key:a,onClick:e=>(e=>{K[e].path.startsWith("http")?window.location.href=K[e].path:t.push({path:K[e].path})})(a)},j(e.title),9,he)))),128))])])]),ue.value?z((i(),n("div",ye,[s("h1",xe,j(Y.name),1),N(Ca)?(i(),n("h2",ke,"任务存储空间容量已达到上限,已经无法进行上传,请联系发起人扩容空间")):$("",!0),!$a.text||qe.value&&Ge.value?$("",!0):(i(),n(b,{key:1},[k(o,null,{default:w((()=>[W("⚠️ 注意事项 ⚠️")])),_:1}),k(le,null,{default:w((()=>[s("div",we,[(i(!0),n(b,null,_($a.text.split("\n"),((e,a)=>(i(),n("p",{key:a},j(e.replace(/\s/g," ")),1)))),128))])])),_:1})],64)),!Ea.value.length||qe.value&&Ge.value?$("",!0):(i(!0),n(b,{key:2},_(Ea.value,((e,a)=>(i(),C(u,{"hide-on-click-modal":"",key:e.uid,style:{width:"100px",height:"100px",margin:"10px"},src:e.url,"zoom-rate":1.2,"preview-src-list":Ea.value.map((e=>e.preview)),"initial-index":a,fit:"contain"},null,8,["src","preview-src-list","initial-index"])))),128)),qe.value?(i(),n(b,{key:3},[k(o,null,{default:w((()=>[W("截止时间")])),_:1}),s("h2",be,j(Na.value),1),Ge.value?(i(),n("div",_e,[k(r,{description:"已经结束啦!"})])):$("",!0)],64)):$("",!0),qe.value&&Ge.value?$("",!0):(i(),n("div",ze,[k(o,null,{default:w((()=>[W("必要信息填写")])),_:1}),s("div",je,[z(s("div",null,[k(le,null,{default:w((()=>[W("“"+j(Xe.value)+"”在参与名单里才能正常提交",1)])),_:1})],512),[[E,de.people]]),aa.value?(i(),n("div",Ne,[s("div",$e,[k(c,{ref_key:"validModalRef",ref:ia,rules:na,"status-icon":"",model:la,disabled:Ye.value,"label-position":"top"},{default:w((()=>[k(v,{prop:"peopleName",label:Xe.value},{default:w((()=>[k(p,{maxlength:14,clearable:"","show-word-limit":"",placeholder:`请输入 ${Xe.value}`,modelValue:la.peopleName,"onUpdate:modelValue":a[0]||(a[0]=e=>la.peopleName=e)},null,8,["placeholder","modelValue"])])),_:1},8,["label"])])),_:1},8,["rules","model","disabled"])])])):$("",!0),k(ie,{infos:Be,disabled:Ye.value},null,8,["infos","disabled"])]),k(g,{style:{"max-width":"400px",margin:"0 auto"},drag:!l.value,action:"",ref_key:"fileUpload",ref:Ke,"on-change":pa,"before-remove":Ze,"on-exceed":ca,"auto-upload":!1,multiple:"",limit:va.value,"file-list":He.value,"onUpdate:fileList":a[1]||(a[1]=e=>He.value=e)},{tip:w((()=>[z(s("div",Ce,[k(le,null,{default:w((()=>[W("还有 "+j(ra.value)+" 个文件正在生成校验信息,请稍等(1G通常需要20s)",1)])),_:1})],512),[[E,!!ra.value]])])),default:w((()=>[l.value?(i(),C(f,{key:0,type:"primary"},{default:w((()=>[W("选择文件")])),_:1})):(i(),n(b,{key:1},[k(m,{class:"el-icon--upload"},{default:w((()=>[k(N(re))])),_:1}),Ee],64))])),_:1},8,["drag","limit","file-list"]),s("div",Ue,[ha.value?(i(),C(f,{key:0,size:"default",onClick:ya,type:"warning",disabled:!ua.value||!!ra.value},{default:w((()=>[W("一键撤回")])),_:1},8,["disabled"])):N(Ca)?$("",!0):(i(),C(f,{key:1,size:"default",onClick:da,type:"success",disabled:!oa.value||!!ra.value},{default:w((()=>[W("提交文件")])),_:1},8,["disabled"])),k(f,{onClick:xa,size:"default"},{default:w((()=>[W("查询提交情况")])),_:1})]),s("div",Te,[oe.value.status&&oe.value.format.length?(i(),C(le,{key:0},{default:w((()=>[W("限制格式为: "),s("span",Ie,j(oe.value.format.join(", ")),1)])),_:1})):$("",!0),oe.value.size?(i(),C(le,{key:1},{default:w((()=>[W("限制文件大小不超过: "),s("span",Se,j(N(T)(oe.value.size)),1)])),_:1})):$("",!0),ha.value?(i(),C(le,{key:2},{default:w((()=>[W("① 须保证选择的文件与提交时的文件一致"),Le,W(" ② 填写表单信息一致 "),Fe,W(" ③ 完全一模一样的文件的提交记录(内容md5+命名),将会一次性全部撤回")])),_:1})):(i(),C(le,{key:3},{default:w((()=>[W("① 选择完文件,点击 ”提交文件“即可 "),Me,W(" ② "),Oe,de.template&&!N(Ca)?(i(),n(b,{key:0},[De,W(" ③ "),s("strong",null,[k(f,{type:"primary",text:"",style:{color:"#85ce61"},size:"small",onClick:ga},{default:w((()=>[W("右下角可 “查看提交示例” ")])),_:1})])],64)):$("",!0)])),_:1}))]),s("div",Pe,[de.template&&!N(Ca)?(i(),C(f,{key:0,type:"primary",text:"",style:{color:"#85ce61"},size:"small",onClick:ga},{default:w((()=>[W("查看提交示例")])),_:1})):$("",!0),ha.value?(i(),C(f,{key:1,onClick:a[2]||(a[2]=e=>ha.value=!1),size:"small",type:"primary",text:""},{default:w((()=>[W("正常提交")])),_:1})):(i(),C(f,{key:2,size:"small",onClick:a[3]||(a[3]=e=>ha.value=!0),type:"primary",text:""},{default:w((()=>[W("我要撤回")])),_:1}))])]))])),[[h,ka.value]]):(i(),n("div",Ve,[s("h1",We,j(Y.name),1)])),k(ne,{value:fa.value,"onUpdate:value":a[4]||(a[4]=e=>fa.value=e),title:"示例文件下载链接",link:ma.value},null,8,["value","link"]),s("div",Ae,[k(A,{type:"task"})])])}}}),[["__scopeId","data-v-d8054f3d"]]))}}}));
2
+ //# sourceMappingURL=index-legacy.24edddf9.js.map
@@ -0,0 +1,2 @@
1
+ System.register(["./index-legacy.acb8b137.js"],(function(e,t){"use strict";var a,n,l,d,c,o,i,r,f,v,u,s;return{setters:[e=>{a=e.d,n=e.r,l=e.u,d=e.o,c=e.c,o=e.a,i=e.b,r=e.t,f=e.p,v=e.e,u=e.f,s=e._}],execute:function(){var t=document.createElement("style");t.textContent=".not-found[data-v-7bc5f813]{font-family:Avenir,Helvetica,Arial,sans-serif;background-image:linear-gradient(to top,#30cfd0 0%,#330867 100%);min-height:100vh}h1[data-v-7bc5f813],h2[data-v-7bc5f813],h3[data-v-7bc5f813],a[data-v-7bc5f813]{color:#f0f8ff;text-align:center;font-weight:lighter}a[data-v-7bc5f813]{margin-left:10px;border-bottom:2px solid aliceblue}h1[data-v-7bc5f813]{font-size:48px;padding-top:10%}h2[data-v-7bc5f813]{font-size:30px;padding-top:2vh}h3[data-v-7bc5f813]{font-size:28px;padding-top:1vh}\n",document.head.appendChild(t);const p=e=>(f("data-v-7bc5f813"),e=e(),v(),e),h={class:"not-found"},b=p((()=>o("h1",null,"404 Not Found",-1))),g=p((()=>o("h2",null,"糟糕页面走丢了",-1)));e("default",s(a({__name:"index",setup(e){const t=n(3),a=n(null),f=l(),v=()=>{clearInterval(a.value),f.replace("/")};return d((()=>{a.value=setInterval((()=>{1===t.value&&(clearInterval(a.value),f.replace("/")),t.value-=1}),1e3)})),(e,a)=>(u(),c("div",h,[b,g,o("h3",null,[i(r(t.value)+"s后",1),o("a",{onClick:v},"回到首页")])]))}}),[["__scopeId","data-v-7bc5f813"]]))}}}));
2
+ //# sourceMappingURL=index-legacy.31681402.js.map
@@ -0,0 +1,2 @@
1
+ System.register(["./index-legacy.acb8b137.js"],(function(e,t){"use strict";var o,a,r,n,l,s,c,i;return{setters:[e=>{o=e.bM,a=e.bQ,r=e.cL,n=e.O,l=e.k,s=e.bL,c=e.r,i=e.bJ}],execute:function(){e("s",(function(e,t){if(!o)return;if(!t)return void(e.scrollTop=0);const a=[];let r=t.offsetParent;for(;null!==r&&e!==r&&e.contains(r);)a.push(r),r=r.offsetParent;const n=t.offsetTop+a.reduce(((e,t)=>e+t.offsetTop),0),l=n+t.offsetHeight,s=e.scrollTop,c=s+e.clientHeight;n<s?e.scrollTop=n:l>c&&(e.scrollTop=l-e.clientHeight)}));const t=(e,t)=>{if(!o)return!1;const r={undefined:"overflow",true:"overflow-y",false:"overflow-x"}[String(t)],n=a(e,r);return["scroll","auto","overlay"].some((e=>n.includes(e)))};let d;e("g",((e,a)=>{if(!o)return;let r=e;for(;r;){if([window,document,document.documentElement].includes(r))return window;if(t(r,a))return r;r=r.parentNode}return r})),e("a",(e=>{var t;if(!o)return 0;if(void 0!==d)return d;const a=document.createElement("div");a.className=`${e}-scrollbar__wrap`,a.style.visibility="hidden",a.style.width="100px",a.style.position="absolute",a.style.top="-9999px",document.body.appendChild(a);const r=a.offsetWidth;a.style.overflow="scroll";const n=document.createElement("div");n.style.width="100%",a.appendChild(n);const l=n.offsetWidth;return null==(t=a.parentNode)||t.removeChild(a),d=r-l,d}));var u={name:"en",el:{colorpicker:{confirm:"OK",clear:"Clear",defaultLabel:"color picker",description:"current color is {color}. press enter to select a new color."},datepicker:{now:"Now",today:"Today",cancel:"Cancel",clear:"Clear",confirm:"OK",dateTablePrompt:"Use the arrow keys and enter to select the day of the month",monthTablePrompt:"Use the arrow keys and enter to select the month",yearTablePrompt:"Use the arrow keys and enter to select the year",selectedDate:"Selected date",selectDate:"Select date",selectTime:"Select time",startDate:"Start Date",startTime:"Start Time",endDate:"End Date",endTime:"End Time",prevYear:"Previous Year",nextYear:"Next Year",prevMonth:"Previous Month",nextMonth:"Next Month",year:"",month1:"January",month2:"February",month3:"March",month4:"April",month5:"May",month6:"June",month7:"July",month8:"August",month9:"September",month10:"October",month11:"November",month12:"December",week:"week",weeks:{sun:"Sun",mon:"Mon",tue:"Tue",wed:"Wed",thu:"Thu",fri:"Fri",sat:"Sat"},weeksFull:{sun:"Sunday",mon:"Monday",tue:"Tuesday",wed:"Wednesday",thu:"Thursday",fri:"Friday",sat:"Saturday"},months:{jan:"Jan",feb:"Feb",mar:"Mar",apr:"Apr",may:"May",jun:"Jun",jul:"Jul",aug:"Aug",sep:"Sep",oct:"Oct",nov:"Nov",dec:"Dec"}},inputNumber:{decrease:"decrease number",increase:"increase number"},select:{loading:"Loading",noMatch:"No matching data",noData:"No data",placeholder:"Select"},dropdown:{toggleDropdown:"Toggle Dropdown"},cascader:{noMatch:"No matching data",loading:"Loading",placeholder:"Select",noData:"No data"},pagination:{goto:"Go to",pagesize:"/page",total:"Total {total}",pageClassifier:"",deprecationWarning:"Deprecated usages detected, please refer to the el-pagination documentation for more details"},dialog:{close:"Close this dialog"},drawer:{close:"Close this dialog"},messagebox:{title:"Message",confirm:"OK",cancel:"Cancel",error:"Illegal input",close:"Close this dialog"},upload:{deleteTip:"press delete to remove",delete:"Delete",preview:"Preview",continue:"Continue"},slider:{defaultLabel:"slider between {min} and {max}",defaultRangeStartLabel:"pick start value",defaultRangeEndLabel:"pick end value"},table:{emptyText:"No Data",confirmFilter:"Confirm",resetFilter:"Reset",clearFilter:"All",sumText:"Sum"},tree:{emptyText:"No Data"},transfer:{noMatch:"No matching data",noData:"No data",titles:["List 1","List 2"],filterPlaceholder:"Enter keyword",noCheckedFormat:"{total} items",hasCheckedFormat:"{checked}/{total} checked"},image:{error:"FAILED"},pageHeader:{title:"Back"},popconfirm:{confirmButtonText:"Yes",cancelButtonText:"No"}}};const m=e=>(t,o)=>h(t,o,l(e)),h=(e,t,o)=>i(o,e,e).replace(/\{(\w+)\}/g,((e,o)=>{var a;return`${null!=(a=null==t?void 0:t[o])?a:`{${o}}`}`}));e("u",(()=>{const e=r("locale");return(e=>({lang:n((()=>l(e).name)),locale:s(e)?e:c(e),t:m(e)}))(n((()=>e.value||u)))}))}}}));
2
+ //# sourceMappingURL=index-legacy.3e6b32cf.js.map
@@ -0,0 +1,2 @@
1
+ System.register(["./index-legacy.acb8b137.js","./el-switch-legacy.490534be.js","./validator-legacy.ecd1e5dd.js"],(function(e,t){"use strict";var a,s,l,n,i,d,o,r,c,u,b,p,f,h,m,g,x,v,w,y;return{setters:[e=>{a=e.d,s=e.h,l=e.u,n=e.O,i=e.Z,d=e.o,o=e.bq,r=e.c,c=e.a,u=e.j,b=e.w,p=e.F,f=e.C,h=e.y,m=e.f,g=e.b,x=e.t,v=e.E,w=e._},e=>{y=e.E},null],execute:function(){var t=document.createElement("style");t.textContent="@media screen and (max-width: 700px){.user[data-v-6b254cbf]{margin-top:40px!important}}.user[data-v-6b254cbf]{margin:0 auto}.panel[data-v-6b254cbf]{max-width:1256px;padding:1em;background-color:#fff;margin:10px auto;box-sizing:border-box;box-shadow:0 2px 12px rgba(0,0,0,.1);border-radius:4px}.routes[data-v-6b254cbf]{max-width:500px;margin:0 auto}.routes li[data-v-6b254cbf]{display:flex;padding:20px;align-items:center}.routes li .title[data-v-6b254cbf]{font-weight:700;margin:0 10px}\n",document.head.appendChild(t);const _={class:"user"},C={class:"panel"},j={class:"routes"},k={class:"title"},D={class:"path"};e("default",w(a({__name:"index",setup(e){const t=s(),a=l(),w=n((()=>a.options.routes.filter((e=>e.meta?.allowDisabled)))),E=i([]);return d((()=>{for(const e of w.value)o.checkDisabledRoute(e.path).then((t=>{E.push({path:e.path,name:e.name.toString(),title:e.meta.title,disabled:!!t.data?.status})}))})),n((()=>t.getters["public/isMobile"])),(e,t)=>{const a=h,s=y;return m(),r("div",_,[c("div",C,[u(a,null,{default:b((()=>[g("禁用路由管理")])),_:1}),c("ul",j,[(m(!0),r(p,null,f(E,(e=>(m(),r("li",{key:e.name},[u(s,{onChange:t=>(e=>{o.addDisabledRoute(e.path,!e.disabled).then((()=>{e.disabled=!e.disabled,v.success("切换成功")}))})(e),value:!e.disabled,style:{"--el-switch-on-color":"#13ce66","--el-switch-off-color":"#ff4949"}},null,8,["onChange","value"]),c("span",k,x(e.title),1),c("span",D,x(e.path)+x("/register"===e.path?" 关闭后将同时禁用注册功能":""),1)])))),128))])])])}}}),[["__scopeId","data-v-6b254cbf"]]))}}}));
2
+ //# sourceMappingURL=index-legacy.4edc099d.js.map
@@ -0,0 +1,2 @@
1
+ System.register(["./index-legacy.acb8b137.js","./el-dialog-legacy.e6ef2c86.js","./el-dropdown-item-legacy.4888d114.js","./el-tab-pane-legacy.cfdbc441.js","./index-legacy.84e0eca9.js","./index-legacy.3e6b32cf.js","./aria-legacy.af0825d3.js","./validator-legacy.ecd1e5dd.js"],(function(e,t){"use strict";var a,l,o,n,i,r,p,s,d,c,v,u,f,b,g,h,m,x,w,y,k,_,C,z,A,M,V,j,H,E,S,B,L,U,$,I,N,R,O,T,W,D,P,Z,q,F,J,K,Q,X,Y,G,ee,te,ae,le;return{setters:[e=>{a=e.J,l=e.K,o=e.L,n=e.M,i=e.N,r=e.d,p=e.O,s=e.Q,d=e.r,c=e.k,v=e.R,u=e.f,f=e.D,b=e.w,g=e.c,h=e.H,m=e.t,x=e.S,w=e.T,y=e.b,k=e.V,_=e.W,C=e.X,z=e.Y,A=e.g,M=e.a,V=e.Z,j=e.$,H=e.h,E=e.F,S=e.C,B=e.s,L=e.j,U=e.a0,$=e.x,I=e._,N=e.a1,R=e.o,O=e.a2,T=e.u,W=e.U,D=e.i,P=e.E,Z=e.I,q=e.p,F=e.e,J=e.a3},e=>{K=e.E},e=>{Q=e.d,X=e.E,Y=e.a,G=e.b,ee=e.c},e=>{te=e.E,ae=e.a},e=>{le=e.E},null,null,null],execute:function(){var t=document.createElement("style");t.textContent=".el-popover{--el-popover-bg-color:var(--el-bg-color-overlay);--el-popover-font-size:var(--el-font-size-base);--el-popover-border-color:var(--el-border-color-lighter);--el-popover-padding:12px;--el-popover-padding-large:18px 20px;--el-popover-title-font-size:16px;--el-popover-title-text-color:var(--el-text-color-primary);--el-popover-border-radius:4px}.el-popover.el-popper{background:var(--el-popover-bg-color);min-width:150px;border-radius:var(--el-popover-border-radius);border:1px solid var(--el-popover-border-color);padding:var(--el-popover-padding);z-index:var(--el-index-popper);color:var(--el-text-color-regular);line-height:1.4;text-align:justify;font-size:var(--el-popover-font-size);box-shadow:var(--el-box-shadow-light);word-break:break-all;box-sizing:border-box}.el-popover.el-popper--plain{padding:var(--el-popover-padding-large)}.el-popover__title{color:var(--el-popover-title-text-color);font-size:var(--el-popover-title-font-size);line-height:1;margin-bottom:12px}.el-popover__reference:focus:hover,.el-popover__reference:focus:not(.focusing){outline-width:0}.el-popover.el-popper:focus,.el-popover.el-popper:focus:active{outline-width:0}.message-list[data-v-46eebd19]{list-style:none;max-height:500px;overflow-y:scroll}.message-list li[data-v-46eebd19]{border-bottom:1px solid #ddd;padding:10px;cursor:pointer}.message-list li.read[data-v-46eebd19]{opacity:.5}.message-list li.read[data-v-46eebd19]:hover{opacity:.9}.message-list li[data-v-46eebd19]:last-child{border-bottom:none}.message-list li p.text[data-v-46eebd19]{font-size:16px;display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical}.message-list li p.date[data-v-46eebd19]{font-size:14px;margin-top:4px}.empty[data-v-46eebd19]{text-align:center;padding:10px}.dialog-date[data-v-46eebd19]{font-size:14px;text-align:right;padding:10px;color:gray}.message-text{overflow-y:scroll;max-height:500px}.message-text ul,.message-text ol{list-style:none}.message-panel[data-v-9de070a6]{margin-right:10px}.dashboard[data-v-2108dc2b]{background-color:#fafafa}.pc-nav[data-v-2108dc2b]{background-color:#fff;display:flex;padding:10px;justify-content:space-between;align-items:center}.pc-nav .exit[data-v-2108dc2b]{cursor:pointer;display:flex;align-items:center}.pc-nav .exit .exit-info[data-v-2108dc2b]{display:flex;justify-content:center;align-items:center}.pc-nav .exit .exit-info>span[data-v-2108dc2b]{margin-right:5px;display:block;max-width:70px}.pc-nav .nav[data-v-2108dc2b]{display:flex}.pc-nav .nav nav[data-v-2108dc2b]{display:flex;align-items:center}.pc-nav .nav nav .nav-item[data-v-2108dc2b]{font-size:1rem;color:#595959;padding:10px;cursor:pointer;display:flex;align-items:center;justify-content:center}.pc-nav .nav nav .nav-item.active[data-v-2108dc2b]{color:#409eff!important;font-weight:600}.pc-nav .nav .exit[data-v-2108dc2b]{color:#595959}.pc-nav .logo[data-v-2108dc2b]{width:180px;margin:0 10px}.pc-nav .logo img[data-v-2108dc2b]{height:40px}#navActive[data-v-2108dc2b]{display:none;opacity:0}#navMenu[data-v-2108dc2b]{display:none}.mobile-message-bell[data-v-2108dc2b]{display:none;position:fixed;right:0;top:0}@media screen and (max-width: 700px){#navActive[data-v-2108dc2b]{display:block;position:fixed;left:0;top:0}.mobile-message-bell[data-v-2108dc2b]{display:block}#navMenu[data-v-2108dc2b]{cursor:pointer;display:block;position:absolute;left:10px;top:5px;font-size:2rem}.pc-nav[data-v-2108dc2b]{position:fixed;left:0;right:0;top:0;z-index:6}.pc-nav .nav[data-v-2108dc2b]{flex-wrap:wrap;width:100%}.pc-nav .nav .logo[data-v-2108dc2b]{width:100%;text-align:center}.pc-nav #navActive+nav[data-v-2108dc2b]{display:none}.pc-nav #navActive:checked+nav[data-v-2108dc2b]{display:flex;flex-direction:column;width:100%;position:absolute;z-index:1;background:#fff;left:0;top:50px}.pc-nav #navActive:checked+nav+.mask[data-v-2108dc2b]{display:block;position:fixed;left:0;right:0;bottom:0;top:50px;background-color:rgba(0,0,0,.5)}.pc-nav .exit[data-v-2108dc2b]{position:absolute;right:10px;top:20px}}\n",document.head.appendChild(t);const oe=a({trigger:l.trigger,placement:Q.placement,disabled:l.disabled,visible:o.visible,transition:o.transition,popperOptions:Q.popperOptions,tabindex:Q.tabindex,content:o.content,popperStyle:o.popperStyle,popperClass:o.popperClass,enterable:{...o.enterable,default:!0},effect:{...o.effect,default:"light"},teleported:o.teleported,title:String,width:{type:[String,Number],default:150},offset:{type:Number,default:void 0},showAfter:{type:Number,default:0},hideAfter:{type:Number,default:200},autoClose:{type:Number,default:0},showArrow:{type:Boolean,default:!0},persistent:{type:Boolean,default:!0},"onUpdate:visible":{type:Function}});var ne=i(r({name:"ElPopover",props:oe,emits:{"update:visible":e=>n(e),"before-enter":()=>!0,"before-leave":()=>!0,"after-enter":()=>!0,"after-leave":()=>!0},setup(e,{expose:t,emit:a}){const l=e,o=p((()=>l["onUpdate:visible"])),n=s("popover"),i=d(),r=p((()=>{var e;return null==(e=c(i))?void 0:e.popperRef})),C=p((()=>[{width:v(l.width)},l.popperStyle])),z=p((()=>[n.b(),l.popperClass,{[n.m("plain")]:!!l.content}])),A=p((()=>"el-fade-in-linear"===l.transition)),M=()=>{a("before-enter")},V=()=>{a("before-leave")},j=()=>{a("after-enter")},H=()=>{a("update:visible",!1),a("after-leave")};return t({popperRef:r,hide:()=>{var e;null==(e=i.value)||e.hide()}}),(e,t)=>(u(),f(c(_),k({ref_key:"tooltipRef",ref:i},e.$attrs,{trigger:e.trigger,placement:e.placement,disabled:e.disabled,visible:e.visible,transition:e.transition,"popper-options":e.popperOptions,tabindex:e.tabindex,content:e.content,offset:e.offset,"show-after":e.showAfter,"hide-after":e.hideAfter,"auto-close":e.autoClose,"show-arrow":e.showArrow,"aria-label":e.title,effect:e.effect,enterable:e.enterable,"popper-class":c(z),"popper-style":c(C),teleported:e.teleported,persistent:e.persistent,"gpu-acceleration":c(A),"onUpdate:visible":c(o),onBeforeShow:M,onBeforeHide:V,onShow:j,onHide:H}),{content:b((()=>[e.title?(u(),g("div",{key:0,class:h(c(n).e("title")),role:"title"},m(e.title),3)):x("v-if",!0),w(e.$slots,"default",{},(()=>[y(m(e.content),1)]))])),default:b((()=>[e.$slots.reference?w(e.$slots,"reference",{key:0}):x("v-if",!0)])),_:3},16,["trigger","placement","disabled","visible","transition","popper-options","tabindex","content","offset","show-after","hide-after","auto-close","show-arrow","aria-label","effect","enterable","popper-class","popper-style","teleported","persistent","gpu-acceleration","onUpdate:visible"]))}}),[["__file","/home/runner/work/element-plus/element-plus/packages/components/popover/src/popover.vue"]]);const ie=(e,t)=>{const a=t.arg||t.value,l=null==a?void 0:a.popperRef;l&&(l.triggerRef=e)},re=C({mounted(e,t){ie(e,t)},updated(e,t){ie(e,t)}},"popover"),pe=z(ne,{directive:re}),se=r({name:"Bell"}),de={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},ce=[M("path",{fill:"currentColor",d:"M512 64a64 64 0 0 1 64 64v64H448v-64a64 64 0 0 1 64-64z"},null,-1),M("path",{fill:"currentColor",d:"M256 768h512V448a256 256 0 1 0-512 0v320zm256-640a320 320 0 0 1 320 320v384H192V448a320 320 0 0 1 320-320z"},null,-1),M("path",{fill:"currentColor",d:"M96 768h832q32 0 32 32t-32 32H96q-32 0-32-32t32-32zm352 128h128a64 64 0 0 1-128 0z"},null,-1)];var ve=A(se,[["render",function(e,t,a,l,o,n){return u(),g("svg",de,ce)}]]);const ue=r({name:"Close"}),fe={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},be=[M("path",{fill:"currentColor",d:"M764.288 214.592 512 466.88 259.712 214.592a31.936 31.936 0 0 0-45.12 45.12L466.752 512 214.528 764.224a31.936 31.936 0 1 0 45.12 45.184L512 557.184l252.288 252.288a31.936 31.936 0 0 0 45.12-45.12L557.12 512.064l252.288-252.352a31.936 31.936 0 1 0-45.12-45.184z"},null,-1)];var ge=A(ue,[["render",function(e,t,a,l,o,n){return u(),g("svg",fe,be)}]]);const he=r({name:"Expand"}),me={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},xe=[M("path",{fill:"currentColor",d:"M128 192h768v128H128V192zm0 256h512v128H128V448zm0 256h768v128H128V704zm576-352 192 160-192 128V352z"},null,-1)];var we=A(he,[["render",function(e,t,a,l,o,n){return u(),g("svg",me,xe)}]]);const ye={key:0,class:"empty"},ke={class:"message-list"},_e=["onClick"],Ce={class:"text"},ze={class:"date"},Ae=["innerHTML"],Me={class:"dialog-date"},Ve=r({__name:"index",props:{data:{},autoShow:{type:Boolean}},setup(e){const t=e,a=V({show:!1,title:"系统消息",text:"内容"}),l=d(null),o=e=>{l.value=e,a.text=e.text,a.title=0===e.type?"【系统消息】":"【私信】",a.show=!0},n=()=>{l.value.read?a.show=!1:U.readMessage(l.value.id).then((()=>{l.value.read=!0,a.show=!1}))};j((()=>t.data.length),(()=>{if(!t.autoShow)return;const e=t.data.find((e=>!e.read));e&&o(e)}));const i=H(),r=p((()=>i.getters["public/isMobile"]));return(e,t)=>{const i=$,p=K;return u(),g(E,null,[e.data.length?x("",!0):(u(),g("div",ye,"暂无更多消息 ღ( ´・ᴗ・` )比心")),M("ul",ke,[(u(!0),g(E,null,S(e.data,(e=>(u(),g("li",{key:e.id,class:h({read:e.read}),onClick:t=>o(e)},[M("p",Ce,m(e.text),1),M("p",ze,m(c(B)(new Date(e.date))),1)],10,_e)))),128))]),L(p,{center:"","show-close":"","append-to-body":"",modelValue:a.show,"onUpdate:modelValue":t[1]||(t[1]=e=>a.show=e),"close-on-click-modal":!1,title:a.title,width:"30%",fullscreen:r.value},{footer:b((()=>[M("p",Me," 时间:"+m(c(B)(new Date(l.value.date))),1),M("span",null,[L(i,{type:"default",onClick:t[0]||(t[0]=()=>{a.show=!1})},{default:b((()=>[y(" 下次提醒 ")])),_:1}),L(i,{type:"primary",onClick:n},{default:b((()=>[y(" 确定 ")])),_:1})])])),default:b((()=>[M("div",{class:"message-text",innerHTML:a.text},null,8,Ae)])),_:1},8,["modelValue","title","fullscreen"])],64)}}}),je=I(Ve,[["__scopeId","data-v-46eebd19"]]),He={class:"message-panel"},Ee=I(r({__name:"index",setup(e){const t=d("all"),a=V([]),l=p((()=>a.filter((e=>!e.read)))),o=N();return R((()=>{"config"!==o.name&&U.getMessageList().then((e=>{a.push(...e.data)}))})),(e,o)=>{const n=$,i=O,r=te,p=ae,s=pe;return u(),g("div",He,[L(s,{placement:"bottom-end",width:375,trigger:"hover"},{reference:b((()=>[L(i,{value:l.value.length||"",max:99},{default:b((()=>[L(n,{icon:c(ve),circle:""},null,8,["icon"])])),_:1},8,["value"])])),default:b((()=>[M("div",null,[L(p,{modelValue:t.value,"onUpdate:modelValue":o[0]||(o[0]=e=>t.value=e)},{default:b((()=>[L(r,{label:`未读 ${l.value.length||""}`,name:"no"},{default:b((()=>[L(je,{"auto-show":"",data:l.value},null,8,["data"])])),_:1},8,["label"]),L(r,{label:`全部 ${a.length||""}`,name:"all"},{default:b((()=>[L(je,{data:a},null,8,["data"])])),_:1},8,["label"])])),_:1},8,["modelValue"])])])),_:1})])}}}),[["__scopeId","data-v-9de070a6"]]),Se=e=>(q("data-v-2108dc2b"),e=e(),F(),e),Be={class:"dashboard"},Le={class:"pc-nav"},Ue={class:"nav"},$e={class:"logo"},Ie=Se((()=>M("img",{src:"https://img.cdn.sugarat.top/easypicker/EasyPicker.png",alt:"logo"},null,-1))),Ne={key:0,type:"checkbox",id:"navActive"},Re={key:0,for:"navActive",class:"nav-item"},Oe=Se((()=>M("span",null,"Hello💐,",-1))),Te=["onClick"],We=Se((()=>M("span",{style:{"margin-right":"6px"}},"退出",-1))),De=Se((()=>M("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg","data-v-53d86618":""},[M("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M10.6667 2.55473C13.0212 3.58347 14.6667 5.93291 14.6667 8.66667C14.6667 12.3486 11.6819 15.3333 8 15.3333C4.3181 15.3333 1.33333 12.3486 1.33333 8.66667C1.33333 5.93291 2.97879 3.58347 5.33333 2.55473V4.04684C3.7392 4.969 2.66667 6.69259 2.66667 8.66667C2.66667 11.6122 5.05448 14 8 14C10.9455 14 13.3333 11.6122 13.3333 8.66667C13.3333 6.69259 12.2608 4.969 10.6667 4.04684V2.55473ZM7.33333 8.66667V1.33333C7.33333 1.14924 7.48257 1 7.66667 1H8.33333C8.51743 1 8.66667 1.14924 8.66667 1.33333V8.66667C8.66667 8.85076 8.51743 9 8.33333 9H7.66667C7.48257 9 7.33333 8.85076 7.33333 8.66667Z",fill:"#86909C","data-v-53d86618":""})],-1))),Pe=Se((()=>M("div",{class:"mask"},null,-1))),Ze={id:"navMenu"},qe={for:"navActive"},Fe={key:0,class:"flex fac"},Je=Se((()=>M("span",null,"Hello 💐,",-1))),Ke={class:"exit-info"},Qe={class:"ellipsis"};e("default",I(r({__name:"index",setup(e){const t=T(),a=H(),l=N(),o=p((()=>a.getters["public/isMobile"])),n=V([{title:"文件管理",path:"/dashboard/files"},{title:"任务管理",path:"/dashboard/tasks"}]),i=d(0);j((()=>l.path),(e=>{const t=n.findIndex((t=>e.startsWith(t.path)));-1!==t&&(i.value=t)}));const r=()=>{le.confirm("确认退出登录?","登出提示",{draggable:!0}).then((()=>{W.logout().finally((()=>{a.commit("user/setToken",null),t.replace({name:"home"})}))})).catch((()=>{P.info("取消")}))},s=d("World");return R((()=>{W.checkPower().then((e=>{const t=e.data?.power;if(s.value=e.data?.name,a.commit("user/setSuperAdmin",t),t){const e=[{title:"应用管理",path:"/dashboard/manage"},{title:"网站监控",path:"https://www.frontjs.com/app/87c1ef7667a513f313b4abb22a88dc78",isExternal:!0}];n.push(...e)}const o=e.data?.system;o&&(n.splice(0,n.length),n.push({title:"系统管理",path:"/dashboard/config"})),i.value=n.findIndex((e=>l.path.startsWith(e.path)))}))})),(e,a)=>{const l=D("router-link"),p=Z,d=G,v=ee,w=X,k=D("router-view");return u(),g("div",Be,[M("div",Le,[M("div",Ue,[M("div",$e,[L(l,{to:"/"},{default:b((()=>[Ie])),_:1})]),o.value?(u(),g("input",Ne)):x("",!0),M("nav",null,[o.value?(u(),g("label",Re,[Oe,y(" "+m(s.value),1)])):x("",!0),(u(!0),g(E,null,S(n,((e,a)=>(u(),g("label",{for:"navActive",class:h(["nav-item",{active:i.value===a}]),key:a,onClick:e=>(e=>{const a=n[e];a.isExternal||e===i.value||t.push({path:a.path}),a.isExternal&&window.open(a.path,"_blank")})(a)},m(e.title),11,Te)))),128)),o.value?(u(),g("label",{key:1,onClick:r,for:"navActive",class:"nav-item"},[We,L(p,{size:"16"},{default:b((()=>[De])),_:1})])):x("",!0)]),Pe]),M("span",Ze,[o.value?(u(),f(Ee,{key:0,class:"mobile-message-bell"})):x("",!0),M("label",qe,[L(p,{size:"32"},{default:b((()=>[L(c(we))])),_:1})])]),o.value?x("",!0):(u(),g("div",Fe,[L(Ee),Je,L(w,{class:"exit"},{dropdown:b((()=>[L(v,null,{default:b((()=>[L(d,{onClick:r,icon:c(ge)},{default:b((()=>[y("退出")])),_:1},8,["icon"])])),_:1})])),default:b((()=>[M("span",Ke,[M("span",Qe,m(s.value),1),L(p,null,{default:b((()=>[L(c(Y))])),_:1})])])),_:1})]))]),L(k),M("div",null,[L(J,{type:"dashboard"})])])}}}),[["__scopeId","data-v-2108dc2b"]]))}}}));
2
+ //# sourceMappingURL=index-legacy.614df679.js.map