@sugarat/easypicker2-client 2.7.0-beta.0 → 2.7.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 (165) hide show
  1. package/dist/assets/{data-analysis-c8lgg0AB.js → data-analysis-CVdTnsNg.js} +2 -2
  2. package/dist/assets/{data-analysis-c8lgg0AB.js.map → data-analysis-CVdTnsNg.js.map} +1 -1
  3. package/dist/assets/{data-analysis-legacy-CW8BY_nY.js → data-analysis-legacy-CrjrJgyN.js} +2 -2
  4. package/dist/assets/{data-analysis-legacy-CW8BY_nY.js.map → data-analysis-legacy-CrjrJgyN.js.map} +1 -1
  5. package/dist/assets/{data-board-CfWZjPIl.js → data-board-CKaKy1IB.js} +2 -2
  6. package/dist/assets/{data-board-CfWZjPIl.js.map → data-board-CKaKy1IB.js.map} +1 -1
  7. package/dist/assets/{data-board-legacy-DDytbRz4.js → data-board-legacy-DfESxuEd.js} +2 -2
  8. package/dist/assets/{data-board-legacy-DDytbRz4.js.map → data-board-legacy-DfESxuEd.js.map} +1 -1
  9. package/dist/assets/{el-date-picker-CI8bdk_f.js → el-date-picker-cVKa-X4K.js} +2 -2
  10. package/dist/assets/{el-date-picker-CI8bdk_f.js.map → el-date-picker-cVKa-X4K.js.map} +1 -1
  11. package/dist/assets/{el-date-picker-legacy-CSDTG-yp.js → el-date-picker-legacy-CJ2heCkq.js} +2 -2
  12. package/dist/assets/{el-date-picker-legacy-CSDTG-yp.js.map → el-date-picker-legacy-CJ2heCkq.js.map} +1 -1
  13. package/dist/assets/{el-dialog-C8bI9VGw.js → el-dialog-U5Zmt3t3.js} +2 -2
  14. package/dist/assets/{el-dialog-C8bI9VGw.js.map → el-dialog-U5Zmt3t3.js.map} +1 -1
  15. package/dist/assets/{el-dialog-legacy-DfEb6k1B.js → el-dialog-legacy-u4KST5yo.js} +2 -2
  16. package/dist/assets/{el-dialog-legacy-DfEb6k1B.js.map → el-dialog-legacy-u4KST5yo.js.map} +1 -1
  17. package/dist/assets/{el-dropdown-item-febUKGk9.js → el-dropdown-item-flwUs2cH.js} +2 -2
  18. package/dist/assets/{el-dropdown-item-febUKGk9.js.map → el-dropdown-item-flwUs2cH.js.map} +1 -1
  19. package/dist/assets/{el-dropdown-item-legacy-Bi1TbzqG.js → el-dropdown-item-legacy-B2fmSGnI.js} +2 -2
  20. package/dist/assets/{el-dropdown-item-legacy-Bi1TbzqG.js.map → el-dropdown-item-legacy-B2fmSGnI.js.map} +1 -1
  21. package/dist/assets/{el-form-item-SCs-OERV.js → el-form-item-B08Ira7l.js} +2 -2
  22. package/dist/assets/{el-form-item-SCs-OERV.js.map → el-form-item-B08Ira7l.js.map} +1 -1
  23. package/dist/assets/{el-form-item-legacy-CNxAgkUf.js → el-form-item-legacy-CcX_hnMk.js} +2 -2
  24. package/dist/assets/{el-form-item-legacy-CNxAgkUf.js.map → el-form-item-legacy-CcX_hnMk.js.map} +1 -1
  25. package/dist/assets/{el-loading-DSlXrliU.js → el-loading-BMbhg8vq.js} +2 -2
  26. package/dist/assets/{el-loading-DSlXrliU.js.map → el-loading-BMbhg8vq.js.map} +1 -1
  27. package/dist/assets/{el-loading-legacy-CbNNE-qk.js → el-loading-legacy-CRJF51cp.js} +2 -2
  28. package/dist/assets/{el-loading-legacy-CbNNE-qk.js.map → el-loading-legacy-CRJF51cp.js.map} +1 -1
  29. package/dist/assets/{el-pagination-nfYZbPTI.js → el-pagination-D4Wuvfl8.js} +2 -2
  30. package/dist/assets/{el-pagination-nfYZbPTI.js.map → el-pagination-D4Wuvfl8.js.map} +1 -1
  31. package/dist/assets/{el-pagination-legacy-CeTPKkkI.js → el-pagination-legacy-C2E-fHif.js} +2 -2
  32. package/dist/assets/{el-pagination-legacy-CeTPKkkI.js.map → el-pagination-legacy-C2E-fHif.js.map} +1 -1
  33. package/dist/assets/{el-progress-BRTU4m5q.js → el-progress-ChbdZpVl.js} +2 -2
  34. package/dist/assets/{el-progress-BRTU4m5q.js.map → el-progress-ChbdZpVl.js.map} +1 -1
  35. package/dist/assets/{el-progress-legacy-B6EwNV6c.js → el-progress-legacy-zjlCtRh2.js} +2 -2
  36. package/dist/assets/{el-progress-legacy-B6EwNV6c.js.map → el-progress-legacy-zjlCtRh2.js.map} +1 -1
  37. package/dist/assets/{el-select-uDoCZCn5.js → el-select-DP5UYxt3.js} +2 -2
  38. package/dist/assets/{el-select-uDoCZCn5.js.map → el-select-DP5UYxt3.js.map} +1 -1
  39. package/dist/assets/{el-select-legacy-BFhy033s.js → el-select-legacy-D4o92tvp.js} +2 -2
  40. package/dist/assets/{el-select-legacy-BFhy033s.js.map → el-select-legacy-D4o92tvp.js.map} +1 -1
  41. package/dist/assets/{el-switch-B8IyK6ZR.js → el-switch-DAReoFaC.js} +2 -2
  42. package/dist/assets/{el-switch-B8IyK6ZR.js.map → el-switch-DAReoFaC.js.map} +1 -1
  43. package/dist/assets/{el-switch-legacy-LBGoMV4l.js → el-switch-legacy-D1AVOg2z.js} +2 -2
  44. package/dist/assets/{el-switch-legacy-LBGoMV4l.js.map → el-switch-legacy-D1AVOg2z.js.map} +1 -1
  45. package/dist/assets/{el-tab-pane-fWqYc0uG.js → el-tab-pane-6kk7HB4E.js} +2 -2
  46. package/dist/assets/{el-tab-pane-fWqYc0uG.js.map → el-tab-pane-6kk7HB4E.js.map} +1 -1
  47. package/dist/assets/{el-tab-pane-legacy-ChZdms4s.js → el-tab-pane-legacy-7aEB8qvn.js} +2 -2
  48. package/dist/assets/{el-tab-pane-legacy-ChZdms4s.js.map → el-tab-pane-legacy-7aEB8qvn.js.map} +1 -1
  49. package/dist/assets/{el-table-column-C3qC7HsW.js → el-table-column-DsGlAuX3.js} +2 -2
  50. package/dist/assets/{el-table-column-C3qC7HsW.js.map → el-table-column-DsGlAuX3.js.map} +1 -1
  51. package/dist/assets/{el-table-column-legacy-Wp8N0Zxv.js → el-table-column-legacy-C8A33Lav.js} +2 -2
  52. package/dist/assets/{el-table-column-legacy-Wp8N0Zxv.js.map → el-table-column-legacy-C8A33Lav.js.map} +1 -1
  53. package/dist/assets/index-BG1GuMIu.css +1 -0
  54. package/dist/assets/{index-CAbIiez7.js → index-BK3KKBAN.js} +2 -2
  55. package/dist/assets/{index-CAbIiez7.js.map → index-BK3KKBAN.js.map} +1 -1
  56. package/dist/assets/index-BMZu8UZ6.js +2 -0
  57. package/dist/assets/{index-E_UelRIx.js.map → index-BMZu8UZ6.js.map} +1 -1
  58. package/dist/assets/{index-B621FN6u.js → index-BVM3WMNO.js} +2 -2
  59. package/dist/assets/{index-B621FN6u.js.map → index-BVM3WMNO.js.map} +1 -1
  60. package/dist/assets/{index-D2jrbKvI.js → index-BdVQjSN6.js} +2 -2
  61. package/dist/assets/{index-D2jrbKvI.js.map → index-BdVQjSN6.js.map} +1 -1
  62. package/dist/assets/{index-Cbj5Qf1k.js → index-BnQi1XPn.js} +2 -2
  63. package/dist/assets/{index-Cbj5Qf1k.js.map → index-BnQi1XPn.js.map} +1 -1
  64. package/dist/assets/{index-DVHa0g7s.js → index-Caxtv5sl.js} +2 -2
  65. package/dist/assets/{index-DVHa0g7s.js.map → index-Caxtv5sl.js.map} +1 -1
  66. package/dist/assets/index-CeKw5v7N.js +2 -0
  67. package/dist/assets/index-CeKw5v7N.js.map +1 -0
  68. package/dist/assets/{index-CcPY3ZJk.js → index-D-JYypPJ.js} +2 -2
  69. package/dist/assets/{index-CcPY3ZJk.js.map → index-D-JYypPJ.js.map} +1 -1
  70. package/dist/assets/{index-DvM_o_Iw.js → index-D6LMez3u.js} +2 -2
  71. package/dist/assets/{index-DvM_o_Iw.js.map → index-D6LMez3u.js.map} +1 -1
  72. package/dist/assets/{index-AYz8tt3l.js → index-DcmA3tsY.js} +2 -2
  73. package/dist/assets/{index-AYz8tt3l.js.map → index-DcmA3tsY.js.map} +1 -1
  74. package/dist/assets/{index-UJqXhonq.js → index-Dczz94WX.js} +2 -2
  75. package/dist/assets/{index-UJqXhonq.js.map → index-Dczz94WX.js.map} +1 -1
  76. package/dist/assets/{index-BAFXwCno.js → index-DjTj_2YG.js} +2 -2
  77. package/dist/assets/{index-BAFXwCno.js.map → index-DjTj_2YG.js.map} +1 -1
  78. package/dist/assets/{index-Bp9D-Hzs.js → index-DkbS1z1O.js} +2 -2
  79. package/dist/assets/{index-Bp9D-Hzs.js.map → index-DkbS1z1O.js.map} +1 -1
  80. package/dist/assets/{index-BN8Mg9Y5.js → index-ITkwOdUc.js} +2 -2
  81. package/dist/assets/{index-BN8Mg9Y5.js.map → index-ITkwOdUc.js.map} +1 -1
  82. package/dist/assets/index-XNFQHmLL.css +1 -0
  83. package/dist/assets/{index-DIARiZcJ.js → index-ggQcjFPK.js} +2 -2
  84. package/dist/assets/{index-DIARiZcJ.js.map → index-ggQcjFPK.js.map} +1 -1
  85. package/dist/assets/{index-Lsr6KH3b.js → index-jSHW6lhR.js} +2 -2
  86. package/dist/assets/{index-Lsr6KH3b.js.map → index-jSHW6lhR.js.map} +1 -1
  87. package/dist/assets/{index-legacy-3jO8hk9z.js → index-legacy-2f3kE3Xe.js} +2 -2
  88. package/dist/assets/{index-legacy-3jO8hk9z.js.map → index-legacy-2f3kE3Xe.js.map} +1 -1
  89. package/dist/assets/{index-legacy-Bziat01y.js → index-legacy-6cMsZS3c.js} +2 -2
  90. package/dist/assets/{index-legacy-Bziat01y.js.map → index-legacy-6cMsZS3c.js.map} +1 -1
  91. package/dist/assets/{index-legacy-8ekXefFL.js → index-legacy-8BA9X4aO.js} +2 -2
  92. package/dist/assets/{index-legacy-8ekXefFL.js.map → index-legacy-8BA9X4aO.js.map} +1 -1
  93. package/dist/assets/{index-legacy-D93ANJJU.js → index-legacy-B4s89tRC.js} +2 -2
  94. package/dist/assets/{index-legacy-D93ANJJU.js.map → index-legacy-B4s89tRC.js.map} +1 -1
  95. package/dist/assets/{index-legacy-DiTQKLfl.js → index-legacy-BFfoAOF1.js} +2 -2
  96. package/dist/assets/{index-legacy-DiTQKLfl.js.map → index-legacy-BFfoAOF1.js.map} +1 -1
  97. package/dist/assets/{index-legacy-BaUX-zxP.js → index-legacy-BLKO-78a.js} +8 -13
  98. package/dist/assets/index-legacy-BLKO-78a.js.map +1 -0
  99. package/dist/assets/{index-legacy-BA8TBope.js → index-legacy-BezkAR3b.js} +2 -2
  100. package/dist/assets/{index-legacy-BA8TBope.js.map → index-legacy-BezkAR3b.js.map} +1 -1
  101. package/dist/assets/{index-legacy-GmcnXr6o.js → index-legacy-BqL3XK76.js} +2 -2
  102. package/dist/assets/{index-legacy-GmcnXr6o.js.map → index-legacy-BqL3XK76.js.map} +1 -1
  103. package/dist/assets/{index-legacy-BzCDv5Tg.js → index-legacy-CRq_O11N.js} +2 -2
  104. package/dist/assets/{index-legacy-BzCDv5Tg.js.map → index-legacy-CRq_O11N.js.map} +1 -1
  105. package/dist/assets/{index-legacy-Bwwm9nit.js → index-legacy-CUZgiMNa.js} +2 -2
  106. package/dist/assets/{index-legacy-Bwwm9nit.js.map → index-legacy-CUZgiMNa.js.map} +1 -1
  107. package/dist/assets/{index-legacy-DTtXpYbD.js → index-legacy-CW0OHQkF.js} +2 -2
  108. package/dist/assets/{index-legacy-DTtXpYbD.js.map → index-legacy-CW0OHQkF.js.map} +1 -1
  109. package/dist/assets/{index-legacy-D-yT7UP7.js → index-legacy-CqVgmAMA.js} +2 -2
  110. package/dist/assets/{index-legacy-D-yT7UP7.js.map → index-legacy-CqVgmAMA.js.map} +1 -1
  111. package/dist/assets/{index-legacy-D14E8pOh.js → index-legacy-CslCZVZ0.js} +2 -2
  112. package/dist/assets/{index-legacy-D14E8pOh.js.map → index-legacy-CslCZVZ0.js.map} +1 -1
  113. package/dist/assets/index-legacy-DD6zMGGT.js +2 -0
  114. package/dist/assets/{index-legacy-B8pZsXYp.js.map → index-legacy-DD6zMGGT.js.map} +1 -1
  115. package/dist/assets/{index-legacy-B865ACt-.js → index-legacy-DVOM8HaY.js} +2 -2
  116. package/dist/assets/{index-legacy-B865ACt-.js.map → index-legacy-DVOM8HaY.js.map} +1 -1
  117. package/dist/assets/{index-legacy-z4MDfS45.js → index-legacy-DasH54g3.js} +2 -2
  118. package/dist/assets/{index-legacy-z4MDfS45.js.map → index-legacy-DasH54g3.js.map} +1 -1
  119. package/dist/assets/{index-legacy-D8QuGa98.js → index-legacy-DcKfHHls.js} +2 -2
  120. package/dist/assets/{index-legacy-D8QuGa98.js.map → index-legacy-DcKfHHls.js.map} +1 -1
  121. package/dist/assets/index-legacy-Dt4Eky4l.js +2 -0
  122. package/dist/assets/index-legacy-Dt4Eky4l.js.map +1 -0
  123. package/dist/assets/{index-legacy-DqLKrBdr.js → index-legacy-bElvuK5I.js} +2 -2
  124. package/dist/assets/{index-legacy-DqLKrBdr.js.map → index-legacy-bElvuK5I.js.map} +1 -1
  125. package/dist/assets/{index-legacy-BWGaTIeh.js → index-legacy-pP3Pmgbs.js} +2 -2
  126. package/dist/assets/{index-legacy-BWGaTIeh.js.map → index-legacy-pP3Pmgbs.js.map} +1 -1
  127. package/dist/assets/{index-WblpVXQj.js → index-mKO4gpWB.js} +2 -2
  128. package/dist/assets/{index-WblpVXQj.js.map → index-mKO4gpWB.js.map} +1 -1
  129. package/dist/assets/{index-CYU98hsF.js → index-my4zFbcM.js} +2 -2
  130. package/dist/assets/{index-CYU98hsF.js.map → index-my4zFbcM.js.map} +1 -1
  131. package/dist/assets/{index-C1FTaXL2.js → index-q94vR-7W.js} +2 -2
  132. package/dist/assets/{index-C1FTaXL2.js.map → index-q94vR-7W.js.map} +1 -1
  133. package/dist/assets/index-yrncPnXk.js +36 -0
  134. package/dist/assets/index-yrncPnXk.js.map +1 -0
  135. package/dist/assets/{isEqual-a1R5cOCU.js → isEqual-DdkrQbjH.js} +2 -2
  136. package/dist/assets/{isEqual-a1R5cOCU.js.map → isEqual-DdkrQbjH.js.map} +1 -1
  137. package/dist/assets/{isEqual-legacy-D_cb03Zv.js → isEqual-legacy-4dmPHJnc.js} +2 -2
  138. package/dist/assets/{isEqual-legacy-D_cb03Zv.js.map → isEqual-legacy-4dmPHJnc.js.map} +1 -1
  139. package/dist/assets/{refresh-Bz5ULfz9.js → refresh-CCIG6-IB.js} +2 -2
  140. package/dist/assets/{refresh-Bz5ULfz9.js.map → refresh-CCIG6-IB.js.map} +1 -1
  141. package/dist/assets/{refresh-legacy-NT5iEzmI.js → refresh-legacy-CchIU9Mh.js} +2 -2
  142. package/dist/assets/{refresh-legacy-NT5iEzmI.js.map → refresh-legacy-CchIU9Mh.js.map} +1 -1
  143. package/dist/assets/{tip-BCCd4P_x.js → tip-BM0xMiq8.js} +2 -2
  144. package/dist/assets/{tip-BCCd4P_x.js.map → tip-BM0xMiq8.js.map} +1 -1
  145. package/dist/assets/{tip-legacy-Cm2JPa4-.js → tip-legacy-DpAPUNpm.js} +2 -2
  146. package/dist/assets/{tip-legacy-Cm2JPa4-.js.map → tip-legacy-DpAPUNpm.js.map} +1 -1
  147. package/dist/assets/validator-DG4_rB-x.js +2 -0
  148. package/dist/assets/{validator-BESrcCvQ.js.map → validator-DG4_rB-x.js.map} +1 -1
  149. package/dist/assets/validator-legacy-CN5REdqi.js +2 -0
  150. package/dist/assets/{validator-legacy-xarmcLjs.js.map → validator-legacy-CN5REdqi.js.map} +1 -1
  151. package/dist/index.html +2 -2
  152. package/package.json +3 -3
  153. package/dist/assets/index-BYEN2QaU.css +0 -1
  154. package/dist/assets/index-C0TTJR9g.js +0 -2
  155. package/dist/assets/index-C0TTJR9g.js.map +0 -1
  156. package/dist/assets/index-CvlaXQXr.js +0 -40
  157. package/dist/assets/index-CvlaXQXr.js.map +0 -1
  158. package/dist/assets/index-CwmiY_sv.css +0 -1
  159. package/dist/assets/index-E_UelRIx.js +0 -2
  160. package/dist/assets/index-legacy-B8pZsXYp.js +0 -2
  161. package/dist/assets/index-legacy-BaUX-zxP.js.map +0 -1
  162. package/dist/assets/index-legacy-DZC-JuD-.js +0 -2
  163. package/dist/assets/index-legacy-DZC-JuD-.js.map +0 -1
  164. package/dist/assets/validator-BESrcCvQ.js +0 -2
  165. package/dist/assets/validator-legacy-xarmcLjs.js +0 -2
@@ -1,2 +1,2 @@
1
- System.register(["./index-legacy-BaUX-zxP.js","./el-dialog-legacy-DfEb6k1B.js","./tip-legacy-Cm2JPa4-.js","./el-form-item-legacy-CNxAgkUf.js","./el-select-legacy-BFhy033s.js"],(function(e,l){"use strict";var a,o,r,i,d,t,n,s,u,c,p,b,v,m,f,h,g,_,x,y,k,w,V,z,C,S,E,L,B,R,U,I,G,j,$,F,M,N,D,K,Q,T,A,q,H,O,P,J,Y,Z,W,X,ee,le,ae,oe,re,ie,de,te,ne;return{setters:[e=>{a=e.J,o=e.aF,r=e.aK,i=e.aU,d=e.aG,t=e.M,n=e.aH,s=e.r,u=e.aj,c=e.O,p=e.az,b=e.aN,v=e.N,m=e.d,f=e.Q,h=e.a,g=e.c,_=e.b,x=e.a8,y=e.c6,k=e.k,w=e.bu,V=e.H,z=e.T,C=e.e,S=e.t,E=e.aT,L=e.au,B=e.aD,R=e.at,U=e.aL,I=e.c7,G=e.o,j=e.ai,$=e.Z,F=e.bO,M=e.$,N=e.aV,D=e.Y,K=e.aE,Q=e._,T=e.D,A=e.a7,q=e.ab,H=e.c8,O=e.E,P=e.j,J=e.w,Y=e.x,Z=e.v,W=e.a6,X=e.C,ee=e.S,le=e.F},e=>{ae=e.u,oe=e.E},e=>{re=e.E},e=>{ie=e.E,de=e.a},e=>{te=e.E,ne=e.a}],execute:function(){var l=document.createElement("style");l.textContent='@charset "UTF-8";.el-radio-group{display:inline-flex;align-items:center;flex-wrap:wrap;font-size:0}.el-radio{--el-radio-font-size:var(--el-font-size-base);--el-radio-text-color:var(--el-text-color-regular);--el-radio-font-weight:var(--el-font-weight-primary);--el-radio-input-height:14px;--el-radio-input-width:14px;--el-radio-input-border-radius:var(--el-border-radius-circle);--el-radio-input-bg-color:var(--el-fill-color-blank);--el-radio-input-border:var(--el-border);--el-radio-input-border-color:var(--el-border-color);--el-radio-input-border-color-hover:var(--el-color-primary)}.el-radio{color:var(--el-radio-text-color);font-weight:var(--el-radio-font-weight);position:relative;cursor:pointer;display:inline-flex;align-items:center;white-space:nowrap;outline:0;font-size:var(--el-font-size-base);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;margin-right:32px;height:32px}.el-radio.el-radio--large{height:40px}.el-radio.el-radio--small{height:24px}.el-radio.is-bordered{padding:0 15px 0 9px;border-radius:var(--el-border-radius-base);border:var(--el-border);box-sizing:border-box}.el-radio.is-bordered.is-checked{border-color:var(--el-color-primary)}.el-radio.is-bordered.is-disabled{cursor:not-allowed;border-color:var(--el-border-color-lighter)}.el-radio.is-bordered.el-radio--large{padding:0 19px 0 11px;border-radius:var(--el-border-radius-base)}.el-radio.is-bordered.el-radio--large .el-radio__label{font-size:var(--el-font-size-base)}.el-radio.is-bordered.el-radio--large .el-radio__inner{height:14px;width:14px}.el-radio.is-bordered.el-radio--small{padding:0 11px 0 7px;border-radius:var(--el-border-radius-base)}.el-radio.is-bordered.el-radio--small .el-radio__label{font-size:12px}.el-radio.is-bordered.el-radio--small .el-radio__inner{height:12px;width:12px}.el-radio:last-child{margin-right:0}.el-radio__input{white-space:nowrap;cursor:pointer;outline:0;display:inline-flex;position:relative;vertical-align:middle}.el-radio__input.is-disabled .el-radio__inner{background-color:var(--el-disabled-bg-color);border-color:var(--el-disabled-border-color);cursor:not-allowed}.el-radio__input.is-disabled .el-radio__inner:after{cursor:not-allowed;background-color:var(--el-disabled-bg-color)}.el-radio__input.is-disabled .el-radio__inner+.el-radio__label{cursor:not-allowed}.el-radio__input.is-disabled.is-checked .el-radio__inner{background-color:var(--el-disabled-bg-color);border-color:var(--el-disabled-border-color)}.el-radio__input.is-disabled.is-checked .el-radio__inner:after{background-color:var(--el-text-color-placeholder)}.el-radio__input.is-disabled+span.el-radio__label{color:var(--el-text-color-placeholder);cursor:not-allowed}.el-radio__input.is-checked .el-radio__inner{border-color:var(--el-color-primary);background:var(--el-color-primary)}.el-radio__input.is-checked .el-radio__inner:after{transform:translate(-50%,-50%) scale(1)}.el-radio__input.is-checked+.el-radio__label{color:var(--el-color-primary)}.el-radio__input.is-focus .el-radio__inner{border-color:var(--el-radio-input-border-color-hover)}.el-radio__inner{border:var(--el-radio-input-border);border-radius:var(--el-radio-input-border-radius);width:var(--el-radio-input-width);height:var(--el-radio-input-height);background-color:var(--el-radio-input-bg-color);position:relative;cursor:pointer;display:inline-block;box-sizing:border-box}.el-radio__inner:hover{border-color:var(--el-radio-input-border-color-hover)}.el-radio__inner:after{width:4px;height:4px;border-radius:var(--el-radio-input-border-radius);background-color:var(--el-color-white);content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) scale(0);transition:transform .15s ease-in}.el-radio__original{opacity:0;outline:0;position:absolute;z-index:-1;top:0;left:0;right:0;bottom:0;margin:0}.el-radio__original:focus-visible+.el-radio__inner{outline:2px solid var(--el-radio-input-border-color-hover);outline-offset:1px;border-radius:var(--el-radio-input-border-radius)}.el-radio:focus:not(:focus-visible):not(.is-focus):not(:active):not(.is-disabled) .el-radio__inner{box-shadow:0 0 2px 2px var(--el-radio-input-border-color-hover)}.el-radio__label{font-size:var(--el-radio-font-size);padding-left:8px}.el-radio.el-radio--large .el-radio__label{font-size:14px}.el-radio.el-radio--large .el-radio__inner{width:14px;height:14px}.el-radio.el-radio--small .el-radio__label{font-size:12px}.el-radio.el-radio--small .el-radio__inner{width:12px;height:12px}[data-v-73d07e05] div.el-form-item>label{font-weight:700}[data-v-73d07e05] div.el-form-item>label:before{content:"* ";color:red}[data-v-73d07e05] div.el-form-item__content>.el-select{flex:1}.fixed-text[data-v-73d07e05]{background-color:#f5f7fa;padding:0 10px;width:100%;text-align:left}\n',document.head.appendChild(l);const se=Symbol("radioGroupKey"),ue=a({size:o,disabled:Boolean,label:{type:[String,Number,Boolean],default:""}}),ce=a({...ue,modelValue:{type:[String,Number,Boolean],default:""},name:{type:String,default:""},border:Boolean}),pe={[r]:e=>i(e)||d(e)||t(e),[n]:e=>i(e)||d(e)||t(e)},be=(e,l)=>{const a=s(),o=u(se,void 0),i=c((()=>!!o)),d=c({get:()=>i.value?o.modelValue:e.modelValue,set(d){i.value?o.changeEvent(d):l&&l(r,d),a.value.checked=e.modelValue===e.label}}),t=p(c((()=>null==o?void 0:o.size))),n=b(c((()=>null==o?void 0:o.disabled))),v=s(!1),m=c((()=>n.value||i.value&&d.value!==e.label?-1:0));return{radioRef:a,isGroup:i,radioGroup:o,focus:v,size:t,disabled:n,tabIndex:m,modelValue:d}},ve=["value","name","disabled"];var me=v(m({name:"ElRadio",props:ce,emits:pe,setup(e,{emit:l}){const a=e,o=f("radio"),{radioRef:r,radioGroup:i,focus:d,size:t,disabled:n,modelValue:s}=be(a,l);function u(){L((()=>l("change",s.value)))}return(e,l)=>{var a;return h(),g("label",{class:V([k(o).b(),k(o).is("disabled",k(n)),k(o).is("focus",k(d)),k(o).is("bordered",e.border),k(o).is("checked",k(s)===e.label),k(o).m(k(t))])},[_("span",{class:V([k(o).e("input"),k(o).is("disabled",k(n)),k(o).is("checked",k(s)===e.label)])},[x(_("input",{ref_key:"radioRef",ref:r,"onUpdate:modelValue":l[0]||(l[0]=e=>w(s)?s.value=e:null),class:V(k(o).e("original")),value:e.label,name:e.name||(null==(a=k(i))?void 0:a.name),disabled:k(n),type:"radio",onFocus:l[1]||(l[1]=e=>d.value=!0),onBlur:l[2]||(l[2]=e=>d.value=!1),onChange:u},null,42,ve),[[y,k(s)]]),_("span",{class:V(k(o).e("inner"))},null,2)],2),_("span",{class:V(k(o).e("label")),onKeydown:l[3]||(l[3]=E((()=>{}),["stop"]))},[z(e.$slots,"default",{},(()=>[C(S(e.label),1)]))],34)],2)}}}),[["__file","/home/runner/work/element-plus/element-plus/packages/components/radio/src/radio.vue"]]);const fe=a({...ue,name:{type:String,default:""}}),he=["value","name","disabled"];var ge=v(m({name:"ElRadioButton",props:fe,setup(e){const l=e,a=f("radio"),{radioRef:o,focus:r,size:i,disabled:d,modelValue:t,radioGroup:n}=be(l),s=c((()=>({backgroundColor:(null==n?void 0:n.fill)||"",borderColor:(null==n?void 0:n.fill)||"",boxShadow:(null==n?void 0:n.fill)?`-1px 0 0 0 ${n.fill}`:"",color:(null==n?void 0:n.textColor)||""})));return(e,l)=>{var u;return h(),g("label",{class:V([k(a).b("button"),k(a).is("active",k(t)===e.label),k(a).is("disabled",k(d)),k(a).is("focus",k(r)),k(a).bm("button",k(i))])},[x(_("input",{ref_key:"radioRef",ref:o,"onUpdate:modelValue":l[0]||(l[0]=e=>w(t)?t.value=e:null),class:V(k(a).be("button","original-radio")),value:e.label,type:"radio",name:e.name||(null==(u=k(n))?void 0:u.name),disabled:k(d),onFocus:l[1]||(l[1]=e=>r.value=!0),onBlur:l[2]||(l[2]=e=>r.value=!1)},null,42,he),[[y,k(t)]]),_("span",{class:V(k(a).be("button","inner")),style:B(k(t)===e.label?k(s):{}),onKeydown:l[3]||(l[3]=E((()=>{}),["stop"]))},[z(e.$slots,"default",{},(()=>[C(S(e.label),1)]))],38)],2)}}}),[["__file","/home/runner/work/element-plus/element-plus/packages/components/radio/src/radio-button.vue"]]);const _e=a({id:{type:String,default:void 0},size:o,disabled:Boolean,modelValue:{type:[String,Number,Boolean],default:""},fill:{type:String,default:""},label:{type:String,default:void 0},textColor:{type:String,default:""},name:{type:String,default:void 0},validateEvent:{type:Boolean,default:!0}}),xe=["id","aria-label","aria-labelledby"];var ye=v(m({name:"ElRadioGroup",props:_e,emits:pe,setup(e,{emit:l}){const a=e,o=f("radio"),i=R(),d=s(),{formItem:t}=U(),{inputId:n,isLabeledByFormItem:u}=I(a,{formItemContext:t});G((()=>{const e=d.value.querySelectorAll("[type=radio]"),l=e[0];!Array.from(e).some((e=>e.checked))&&l&&(l.tabIndex=0)}));const p=c((()=>a.name||i.value));return j(se,$({...F(a),changeEvent:e=>{l(r,e),L((()=>l("change",e)))},name:p})),M((()=>a.modelValue),(()=>{a.validateEvent&&(null==t||t.validate("change").catch((e=>N())))})),(e,l)=>(h(),g("div",{id:k(n),ref_key:"radioGroupRef",ref:d,class:V(k(o).b("group")),role:"radiogroup","aria-label":k(u)?void 0:e.label||"radio-group","aria-labelledby":k(u)?k(t).labelId:void 0},[z(e.$slots,"default")],10,xe))}}),[["__file","/home/runner/work/element-plus/element-plus/packages/components/radio/src/radio-group.vue"]]);const ke=e("b",D(me,{RadioButton:ge,RadioGroup:ye})),we=e("a",K(ye));e("E",K(ge));const Ve=Q({name:"QrCode",props:{value:String},data:()=>({src:"",srcList:[]}),watch:{value(e){e&&(this.src=this.createEwm(e),this.srcList=[this.src])}},methods:{createEwm:(e,l)=>new AraleQRCode({text:e,size:400,foreground:"#000",...l}).toDataURL("image/png")},mounted(){this.value&&(this.src=this.createEwm(this.value),this.srcList=[this.src])}},[["render",function(e,l,a,o,r,i){const d=re;return h(),T(d,{style:{width:"150px",height:"150px"},src:r.src,"preview-src-list":r.srcList},null,8,["src","preview-src-list"])}]]),ze=m({name:"LinkDialog",components:{QrCode:Ve},props:{title:{type:String,default:"链接面板"},value:{type:Boolean},link:{type:String,default:""},download:{type:Boolean,default:!0}},emits:["update:value"],setup(e,l){const a=s(""),o=s(!1),r=ae();return A((()=>{a.value=e.link})),A((()=>{o.value=e.value,o.value&&e.download&&setTimeout((()=>{O.success("如未自动开始下载,请复制链接到浏览器中执行下载")}),200)})),{shareLink:a,createShortLink:()=>{H(a.value).then((e=>{a.value=e,O.success("短链生成成功")}))},copyLink:()=>{q(a.value)},handleClose:()=>{l.emit("update:value",!1)},showModel:o,isMobile:r}}}),Ce={style:{"margin-top":"10px","text-align":"center"}};e("L",Q(ze,[["render",function(e,l,a,o,r,i){const d=Y,t=Z,n=Ve,s=oe;return h(),g("div",null,[P(s,{modelValue:e.showModel,"onUpdate:modelValue":l[1]||(l[1]=l=>e.showModel=l),fullscreen:e.isMobile,title:e.title,center:"",onClose:e.handleClose},{default:J((()=>[_("div",null,[P(t,{modelValue:e.shareLink,"onUpdate:modelValue":l[0]||(l[0]=l=>e.shareLink=l),placeholder:"生成的链接"},{prepend:J((()=>[P(d,{type:"primary",onClick:e.createShortLink},{default:J((()=>[C(" 生成短链 ")])),_:1},8,["onClick"])])),append:J((()=>[P(d,{type:"primary",onClick:e.copyLink},{default:J((()=>[C(" 复制 ")])),_:1},8,["onClick"])])),_:1},8,["modelValue"])]),_("div",Ce,[P(n,{value:e.shareLink},null,8,["value"])])])),_:1},8,["modelValue","fullscreen","title","onClose"])])}]]));const Se={key:0,class:"fixed-text"},Ee=m({__name:"index",props:{infos:{},disabled:{type:Boolean},labelPosition:{}},setup(e){const{value:l}=W(),a=c((()=>l.value.maxInputLength));return(e,l)=>{const o=Z,r=ke,i=we,d=te,t=ne,n=ie,s=de;return h(),T(s,{disabled:e.disabled,"label-position":e.labelPosition||"top"},{default:J((()=>[(h(!0),g(le,null,X(e.infos,((e,l)=>(h(),T(n,{key:l,class:"ellipsis",label:"text"===e.type?"":e.text},{default:J((()=>["text"===e.type?(h(),g("div",Se,S(e.text),1)):ee("",!0),"input"===e.type?(h(),T(o,{key:1,modelValue:e.value,"onUpdate:modelValue":l=>e.value=l,maxlength:a.value,clearable:"","show-word-limit":"",placeholder:`请输入 ${e.text}`},null,8,["modelValue","onUpdate:modelValue","maxlength","placeholder"])):ee("",!0),"radio"===e.type?(h(),T(i,{key:2,modelValue:e.value,"onUpdate:modelValue":l=>e.value=l},{default:J((()=>[(h(!0),g(le,null,X(e.children,((e,l)=>(h(),T(r,{key:l,label:e.text},{default:J((()=>[C(S(e.text),1)])),_:2},1032,["label"])))),128))])),_:2},1032,["modelValue","onUpdate:modelValue"])):ee("",!0),"select"===e.type?(h(),T(t,{key:3,modelValue:e.value,"onUpdate:modelValue":l=>e.value=l,"default-first-option":"",clearable:"",filterable:"",placeholder:`请选择 ${e.text}`},{default:J((()=>[(h(!0),g(le,null,X(e.children,((e,l)=>(h(),T(d,{key:l,label:e.text,value:e.text},null,8,["label","value"])))),128))])),_:2},1032,["modelValue","onUpdate:modelValue","placeholder"])):ee("",!0)])),_:2},1032,["label"])))),128))])),_:1},8,["disabled","label-position"])}}});e("I",Q(Ee,[["__scopeId","data-v-73d07e05"]]))}}}));
2
- //# sourceMappingURL=index-legacy-BWGaTIeh.js.map
1
+ System.register(["./index-legacy-BLKO-78a.js","./el-dialog-legacy-u4KST5yo.js","./tip-legacy-DpAPUNpm.js","./el-form-item-legacy-CcX_hnMk.js","./el-select-legacy-D4o92tvp.js"],(function(e,l){"use strict";var a,o,r,i,d,t,n,s,u,c,p,b,v,m,f,h,g,_,x,y,k,w,V,z,C,S,E,L,B,R,U,I,G,j,$,F,M,N,D,K,Q,T,A,q,H,O,P,J,Y,Z,W,X,ee,le,ae,oe,re,ie,de,te,ne;return{setters:[e=>{a=e.J,o=e.aF,r=e.aK,i=e.aU,d=e.aG,t=e.M,n=e.aH,s=e.r,u=e.aj,c=e.O,p=e.az,b=e.aN,v=e.N,m=e.d,f=e.Q,h=e.a,g=e.c,_=e.b,x=e.a8,y=e.c6,k=e.k,w=e.bu,V=e.H,z=e.T,C=e.e,S=e.t,E=e.aT,L=e.au,B=e.aD,R=e.at,U=e.aL,I=e.c7,G=e.o,j=e.ai,$=e.Z,F=e.bO,M=e.$,N=e.aV,D=e.Y,K=e.aE,Q=e._,T=e.D,A=e.a7,q=e.ab,H=e.c8,O=e.E,P=e.j,J=e.w,Y=e.x,Z=e.v,W=e.a6,X=e.C,ee=e.S,le=e.F},e=>{ae=e.u,oe=e.E},e=>{re=e.E},e=>{ie=e.E,de=e.a},e=>{te=e.E,ne=e.a}],execute:function(){var l=document.createElement("style");l.textContent='@charset "UTF-8";.el-radio-group{display:inline-flex;align-items:center;flex-wrap:wrap;font-size:0}.el-radio{--el-radio-font-size:var(--el-font-size-base);--el-radio-text-color:var(--el-text-color-regular);--el-radio-font-weight:var(--el-font-weight-primary);--el-radio-input-height:14px;--el-radio-input-width:14px;--el-radio-input-border-radius:var(--el-border-radius-circle);--el-radio-input-bg-color:var(--el-fill-color-blank);--el-radio-input-border:var(--el-border);--el-radio-input-border-color:var(--el-border-color);--el-radio-input-border-color-hover:var(--el-color-primary)}.el-radio{color:var(--el-radio-text-color);font-weight:var(--el-radio-font-weight);position:relative;cursor:pointer;display:inline-flex;align-items:center;white-space:nowrap;outline:0;font-size:var(--el-font-size-base);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;margin-right:32px;height:32px}.el-radio.el-radio--large{height:40px}.el-radio.el-radio--small{height:24px}.el-radio.is-bordered{padding:0 15px 0 9px;border-radius:var(--el-border-radius-base);border:var(--el-border);box-sizing:border-box}.el-radio.is-bordered.is-checked{border-color:var(--el-color-primary)}.el-radio.is-bordered.is-disabled{cursor:not-allowed;border-color:var(--el-border-color-lighter)}.el-radio.is-bordered.el-radio--large{padding:0 19px 0 11px;border-radius:var(--el-border-radius-base)}.el-radio.is-bordered.el-radio--large .el-radio__label{font-size:var(--el-font-size-base)}.el-radio.is-bordered.el-radio--large .el-radio__inner{height:14px;width:14px}.el-radio.is-bordered.el-radio--small{padding:0 11px 0 7px;border-radius:var(--el-border-radius-base)}.el-radio.is-bordered.el-radio--small .el-radio__label{font-size:12px}.el-radio.is-bordered.el-radio--small .el-radio__inner{height:12px;width:12px}.el-radio:last-child{margin-right:0}.el-radio__input{white-space:nowrap;cursor:pointer;outline:0;display:inline-flex;position:relative;vertical-align:middle}.el-radio__input.is-disabled .el-radio__inner{background-color:var(--el-disabled-bg-color);border-color:var(--el-disabled-border-color);cursor:not-allowed}.el-radio__input.is-disabled .el-radio__inner:after{cursor:not-allowed;background-color:var(--el-disabled-bg-color)}.el-radio__input.is-disabled .el-radio__inner+.el-radio__label{cursor:not-allowed}.el-radio__input.is-disabled.is-checked .el-radio__inner{background-color:var(--el-disabled-bg-color);border-color:var(--el-disabled-border-color)}.el-radio__input.is-disabled.is-checked .el-radio__inner:after{background-color:var(--el-text-color-placeholder)}.el-radio__input.is-disabled+span.el-radio__label{color:var(--el-text-color-placeholder);cursor:not-allowed}.el-radio__input.is-checked .el-radio__inner{border-color:var(--el-color-primary);background:var(--el-color-primary)}.el-radio__input.is-checked .el-radio__inner:after{transform:translate(-50%,-50%) scale(1)}.el-radio__input.is-checked+.el-radio__label{color:var(--el-color-primary)}.el-radio__input.is-focus .el-radio__inner{border-color:var(--el-radio-input-border-color-hover)}.el-radio__inner{border:var(--el-radio-input-border);border-radius:var(--el-radio-input-border-radius);width:var(--el-radio-input-width);height:var(--el-radio-input-height);background-color:var(--el-radio-input-bg-color);position:relative;cursor:pointer;display:inline-block;box-sizing:border-box}.el-radio__inner:hover{border-color:var(--el-radio-input-border-color-hover)}.el-radio__inner:after{width:4px;height:4px;border-radius:var(--el-radio-input-border-radius);background-color:var(--el-color-white);content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) scale(0);transition:transform .15s ease-in}.el-radio__original{opacity:0;outline:0;position:absolute;z-index:-1;top:0;left:0;right:0;bottom:0;margin:0}.el-radio__original:focus-visible+.el-radio__inner{outline:2px solid var(--el-radio-input-border-color-hover);outline-offset:1px;border-radius:var(--el-radio-input-border-radius)}.el-radio:focus:not(:focus-visible):not(.is-focus):not(:active):not(.is-disabled) .el-radio__inner{box-shadow:0 0 2px 2px var(--el-radio-input-border-color-hover)}.el-radio__label{font-size:var(--el-radio-font-size);padding-left:8px}.el-radio.el-radio--large .el-radio__label{font-size:14px}.el-radio.el-radio--large .el-radio__inner{width:14px;height:14px}.el-radio.el-radio--small .el-radio__label{font-size:12px}.el-radio.el-radio--small .el-radio__inner{width:12px;height:12px}[data-v-73d07e05] div.el-form-item>label{font-weight:700}[data-v-73d07e05] div.el-form-item>label:before{content:"* ";color:red}[data-v-73d07e05] div.el-form-item__content>.el-select{flex:1}.fixed-text[data-v-73d07e05]{background-color:#f5f7fa;padding:0 10px;width:100%;text-align:left}\n',document.head.appendChild(l);const se=Symbol("radioGroupKey"),ue=a({size:o,disabled:Boolean,label:{type:[String,Number,Boolean],default:""}}),ce=a({...ue,modelValue:{type:[String,Number,Boolean],default:""},name:{type:String,default:""},border:Boolean}),pe={[r]:e=>i(e)||d(e)||t(e),[n]:e=>i(e)||d(e)||t(e)},be=(e,l)=>{const a=s(),o=u(se,void 0),i=c((()=>!!o)),d=c({get:()=>i.value?o.modelValue:e.modelValue,set(d){i.value?o.changeEvent(d):l&&l(r,d),a.value.checked=e.modelValue===e.label}}),t=p(c((()=>null==o?void 0:o.size))),n=b(c((()=>null==o?void 0:o.disabled))),v=s(!1),m=c((()=>n.value||i.value&&d.value!==e.label?-1:0));return{radioRef:a,isGroup:i,radioGroup:o,focus:v,size:t,disabled:n,tabIndex:m,modelValue:d}},ve=["value","name","disabled"];var me=v(m({name:"ElRadio",props:ce,emits:pe,setup(e,{emit:l}){const a=e,o=f("radio"),{radioRef:r,radioGroup:i,focus:d,size:t,disabled:n,modelValue:s}=be(a,l);function u(){L((()=>l("change",s.value)))}return(e,l)=>{var a;return h(),g("label",{class:V([k(o).b(),k(o).is("disabled",k(n)),k(o).is("focus",k(d)),k(o).is("bordered",e.border),k(o).is("checked",k(s)===e.label),k(o).m(k(t))])},[_("span",{class:V([k(o).e("input"),k(o).is("disabled",k(n)),k(o).is("checked",k(s)===e.label)])},[x(_("input",{ref_key:"radioRef",ref:r,"onUpdate:modelValue":l[0]||(l[0]=e=>w(s)?s.value=e:null),class:V(k(o).e("original")),value:e.label,name:e.name||(null==(a=k(i))?void 0:a.name),disabled:k(n),type:"radio",onFocus:l[1]||(l[1]=e=>d.value=!0),onBlur:l[2]||(l[2]=e=>d.value=!1),onChange:u},null,42,ve),[[y,k(s)]]),_("span",{class:V(k(o).e("inner"))},null,2)],2),_("span",{class:V(k(o).e("label")),onKeydown:l[3]||(l[3]=E((()=>{}),["stop"]))},[z(e.$slots,"default",{},(()=>[C(S(e.label),1)]))],34)],2)}}}),[["__file","/home/runner/work/element-plus/element-plus/packages/components/radio/src/radio.vue"]]);const fe=a({...ue,name:{type:String,default:""}}),he=["value","name","disabled"];var ge=v(m({name:"ElRadioButton",props:fe,setup(e){const l=e,a=f("radio"),{radioRef:o,focus:r,size:i,disabled:d,modelValue:t,radioGroup:n}=be(l),s=c((()=>({backgroundColor:(null==n?void 0:n.fill)||"",borderColor:(null==n?void 0:n.fill)||"",boxShadow:(null==n?void 0:n.fill)?`-1px 0 0 0 ${n.fill}`:"",color:(null==n?void 0:n.textColor)||""})));return(e,l)=>{var u;return h(),g("label",{class:V([k(a).b("button"),k(a).is("active",k(t)===e.label),k(a).is("disabled",k(d)),k(a).is("focus",k(r)),k(a).bm("button",k(i))])},[x(_("input",{ref_key:"radioRef",ref:o,"onUpdate:modelValue":l[0]||(l[0]=e=>w(t)?t.value=e:null),class:V(k(a).be("button","original-radio")),value:e.label,type:"radio",name:e.name||(null==(u=k(n))?void 0:u.name),disabled:k(d),onFocus:l[1]||(l[1]=e=>r.value=!0),onBlur:l[2]||(l[2]=e=>r.value=!1)},null,42,he),[[y,k(t)]]),_("span",{class:V(k(a).be("button","inner")),style:B(k(t)===e.label?k(s):{}),onKeydown:l[3]||(l[3]=E((()=>{}),["stop"]))},[z(e.$slots,"default",{},(()=>[C(S(e.label),1)]))],38)],2)}}}),[["__file","/home/runner/work/element-plus/element-plus/packages/components/radio/src/radio-button.vue"]]);const _e=a({id:{type:String,default:void 0},size:o,disabled:Boolean,modelValue:{type:[String,Number,Boolean],default:""},fill:{type:String,default:""},label:{type:String,default:void 0},textColor:{type:String,default:""},name:{type:String,default:void 0},validateEvent:{type:Boolean,default:!0}}),xe=["id","aria-label","aria-labelledby"];var ye=v(m({name:"ElRadioGroup",props:_e,emits:pe,setup(e,{emit:l}){const a=e,o=f("radio"),i=R(),d=s(),{formItem:t}=U(),{inputId:n,isLabeledByFormItem:u}=I(a,{formItemContext:t});G((()=>{const e=d.value.querySelectorAll("[type=radio]"),l=e[0];!Array.from(e).some((e=>e.checked))&&l&&(l.tabIndex=0)}));const p=c((()=>a.name||i.value));return j(se,$({...F(a),changeEvent:e=>{l(r,e),L((()=>l("change",e)))},name:p})),M((()=>a.modelValue),(()=>{a.validateEvent&&(null==t||t.validate("change").catch((e=>N())))})),(e,l)=>(h(),g("div",{id:k(n),ref_key:"radioGroupRef",ref:d,class:V(k(o).b("group")),role:"radiogroup","aria-label":k(u)?void 0:e.label||"radio-group","aria-labelledby":k(u)?k(t).labelId:void 0},[z(e.$slots,"default")],10,xe))}}),[["__file","/home/runner/work/element-plus/element-plus/packages/components/radio/src/radio-group.vue"]]);const ke=e("b",D(me,{RadioButton:ge,RadioGroup:ye})),we=e("a",K(ye));e("E",K(ge));const Ve=Q({name:"QrCode",props:{value:String},data:()=>({src:"",srcList:[]}),watch:{value(e){e&&(this.src=this.createEwm(e),this.srcList=[this.src])}},methods:{createEwm:(e,l)=>new AraleQRCode({text:e,size:400,foreground:"#000",...l}).toDataURL("image/png")},mounted(){this.value&&(this.src=this.createEwm(this.value),this.srcList=[this.src])}},[["render",function(e,l,a,o,r,i){const d=re;return h(),T(d,{style:{width:"150px",height:"150px"},src:r.src,"preview-src-list":r.srcList},null,8,["src","preview-src-list"])}]]),ze=m({name:"LinkDialog",components:{QrCode:Ve},props:{title:{type:String,default:"链接面板"},value:{type:Boolean},link:{type:String,default:""},download:{type:Boolean,default:!0}},emits:["update:value"],setup(e,l){const a=s(""),o=s(!1),r=ae();return A((()=>{a.value=e.link})),A((()=>{o.value=e.value,o.value&&e.download&&setTimeout((()=>{O.success("如未自动开始下载,请复制链接到浏览器中执行下载")}),200)})),{shareLink:a,createShortLink:()=>{H(a.value).then((e=>{a.value=e,O.success("短链生成成功")}))},copyLink:()=>{q(a.value)},handleClose:()=>{l.emit("update:value",!1)},showModel:o,isMobile:r}}}),Ce={style:{"margin-top":"10px","text-align":"center"}};e("L",Q(ze,[["render",function(e,l,a,o,r,i){const d=Y,t=Z,n=Ve,s=oe;return h(),g("div",null,[P(s,{modelValue:e.showModel,"onUpdate:modelValue":l[1]||(l[1]=l=>e.showModel=l),fullscreen:e.isMobile,title:e.title,center:"",onClose:e.handleClose},{default:J((()=>[_("div",null,[P(t,{modelValue:e.shareLink,"onUpdate:modelValue":l[0]||(l[0]=l=>e.shareLink=l),placeholder:"生成的链接"},{prepend:J((()=>[P(d,{type:"primary",onClick:e.createShortLink},{default:J((()=>[C(" 生成短链 ")])),_:1},8,["onClick"])])),append:J((()=>[P(d,{type:"primary",onClick:e.copyLink},{default:J((()=>[C(" 复制 ")])),_:1},8,["onClick"])])),_:1},8,["modelValue"])]),_("div",Ce,[P(n,{value:e.shareLink},null,8,["value"])])])),_:1},8,["modelValue","fullscreen","title","onClose"])])}]]));const Se={key:0,class:"fixed-text"},Ee=m({__name:"index",props:{infos:{},disabled:{type:Boolean},labelPosition:{}},setup(e){const{value:l}=W(),a=c((()=>l.value.maxInputLength));return(e,l)=>{const o=Z,r=ke,i=we,d=te,t=ne,n=ie,s=de;return h(),T(s,{disabled:e.disabled,"label-position":e.labelPosition||"top"},{default:J((()=>[(h(!0),g(le,null,X(e.infos,((e,l)=>(h(),T(n,{key:l,class:"ellipsis",label:"text"===e.type?"":e.text},{default:J((()=>["text"===e.type?(h(),g("div",Se,S(e.text),1)):ee("",!0),"input"===e.type?(h(),T(o,{key:1,modelValue:e.value,"onUpdate:modelValue":l=>e.value=l,maxlength:a.value,clearable:"","show-word-limit":"",placeholder:`请输入 ${e.text}`},null,8,["modelValue","onUpdate:modelValue","maxlength","placeholder"])):ee("",!0),"radio"===e.type?(h(),T(i,{key:2,modelValue:e.value,"onUpdate:modelValue":l=>e.value=l},{default:J((()=>[(h(!0),g(le,null,X(e.children,((e,l)=>(h(),T(r,{key:l,label:e.text},{default:J((()=>[C(S(e.text),1)])),_:2},1032,["label"])))),128))])),_:2},1032,["modelValue","onUpdate:modelValue"])):ee("",!0),"select"===e.type?(h(),T(t,{key:3,modelValue:e.value,"onUpdate:modelValue":l=>e.value=l,"default-first-option":"",clearable:"",filterable:"",placeholder:`请选择 ${e.text}`},{default:J((()=>[(h(!0),g(le,null,X(e.children,((e,l)=>(h(),T(d,{key:l,label:e.text,value:e.text},null,8,["label","value"])))),128))])),_:2},1032,["modelValue","onUpdate:modelValue","placeholder"])):ee("",!0)])),_:2},1032,["label"])))),128))])),_:1},8,["disabled","label-position"])}}});e("I",Q(Ee,[["__scopeId","data-v-73d07e05"]]))}}}));
2
+ //# sourceMappingURL=index-legacy-pP3Pmgbs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-legacy-BWGaTIeh.js","sources":["../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/tokens/radio.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/radio/src/radio.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/radio/src/use-radio.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/radio/src/radio2.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/radio/src/radio-button.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/radio/src/radio-button2.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/radio/src/radio-group.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/radio/src/radio-group2.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/radio/index.mjs","../../src/components/QrCode.vue","../../src/components/linkDialog.vue","../../src/components/InfosForm/index.vue"],"sourcesContent":["const radioGroupKey = Symbol(\"radioGroupKey\");\n\nexport { radioGroupKey };\n//# sourceMappingURL=radio.mjs.map\n","import '../../../utils/index.mjs';\nimport '../../../constants/index.mjs';\nimport '../../../hooks/index.mjs';\nimport { buildProps } from '../../../utils/vue/props/runtime.mjs';\nimport { useSizeProp } from '../../../hooks/use-common-props/index.mjs';\nimport { UPDATE_MODEL_EVENT, CHANGE_EVENT } from '../../../constants/event.mjs';\nimport { isString } from '@vue/shared';\nimport { isNumber, isBoolean } from '@vueuse/core';\n\nconst radioPropsBase = buildProps({\n size: useSizeProp,\n disabled: Boolean,\n label: {\n type: [String, Number, Boolean],\n default: \"\"\n }\n});\nconst radioProps = buildProps({\n ...radioPropsBase,\n modelValue: {\n type: [String, Number, Boolean],\n default: \"\"\n },\n name: {\n type: String,\n default: \"\"\n },\n border: Boolean\n});\nconst radioEmits = {\n [UPDATE_MODEL_EVENT]: (val) => isString(val) || isNumber(val) || isBoolean(val),\n [CHANGE_EVENT]: (val) => isString(val) || isNumber(val) || isBoolean(val)\n};\n\nexport { radioEmits, radioProps, radioPropsBase };\n//# sourceMappingURL=radio.mjs.map\n","import { ref, inject, computed } from 'vue';\nimport '../../../constants/index.mjs';\nimport '../../../tokens/index.mjs';\nimport '../../../hooks/index.mjs';\nimport { radioGroupKey } from '../../../tokens/radio.mjs';\nimport { UPDATE_MODEL_EVENT } from '../../../constants/event.mjs';\nimport { useSize, useDisabled } from '../../../hooks/use-common-props/index.mjs';\n\nconst useRadio = (props, emit) => {\n const radioRef = ref();\n const radioGroup = inject(radioGroupKey, void 0);\n const isGroup = computed(() => !!radioGroup);\n const modelValue = computed({\n get() {\n return isGroup.value ? radioGroup.modelValue : props.modelValue;\n },\n set(val) {\n if (isGroup.value) {\n radioGroup.changeEvent(val);\n } else {\n emit && emit(UPDATE_MODEL_EVENT, val);\n }\n radioRef.value.checked = props.modelValue === props.label;\n }\n });\n const size = useSize(computed(() => radioGroup == null ? void 0 : radioGroup.size));\n const disabled = useDisabled(computed(() => radioGroup == null ? void 0 : radioGroup.disabled));\n const focus = ref(false);\n const tabIndex = computed(() => {\n return disabled.value || isGroup.value && modelValue.value !== props.label ? -1 : 0;\n });\n return {\n radioRef,\n isGroup,\n radioGroup,\n focus,\n size,\n disabled,\n tabIndex,\n modelValue\n };\n};\n\nexport { useRadio };\n//# sourceMappingURL=use-radio.mjs.map\n","import { defineComponent, nextTick, openBlock, createElementBlock, normalizeClass, unref, createElementVNode, withDirectives, isRef, vModelRadio, withModifiers, renderSlot, createTextVNode, toDisplayString } from 'vue';\nimport '../../../hooks/index.mjs';\nimport { radioProps, radioEmits } from './radio.mjs';\nimport { useRadio } from './use-radio.mjs';\nimport _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';\nimport { useNamespace } from '../../../hooks/use-namespace/index.mjs';\n\nconst _hoisted_1 = [\"value\", \"name\", \"disabled\"];\nconst __default__ = {\n name: \"ElRadio\"\n};\nconst _sfc_main = /* @__PURE__ */ defineComponent({\n ...__default__,\n props: radioProps,\n emits: radioEmits,\n setup(__props, { emit }) {\n const props = __props;\n const ns = useNamespace(\"radio\");\n const { radioRef, radioGroup, focus, size, disabled, modelValue } = useRadio(props, emit);\n function handleChange() {\n nextTick(() => emit(\"change\", modelValue.value));\n }\n return (_ctx, _cache) => {\n var _a;\n return openBlock(), createElementBlock(\"label\", {\n class: normalizeClass([\n unref(ns).b(),\n unref(ns).is(\"disabled\", unref(disabled)),\n unref(ns).is(\"focus\", unref(focus)),\n unref(ns).is(\"bordered\", _ctx.border),\n unref(ns).is(\"checked\", unref(modelValue) === _ctx.label),\n unref(ns).m(unref(size))\n ])\n }, [\n createElementVNode(\"span\", {\n class: normalizeClass([\n unref(ns).e(\"input\"),\n unref(ns).is(\"disabled\", unref(disabled)),\n unref(ns).is(\"checked\", unref(modelValue) === _ctx.label)\n ])\n }, [\n withDirectives(createElementVNode(\"input\", {\n ref_key: \"radioRef\",\n ref: radioRef,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event) => isRef(modelValue) ? modelValue.value = $event : null),\n class: normalizeClass(unref(ns).e(\"original\")),\n value: _ctx.label,\n name: _ctx.name || ((_a = unref(radioGroup)) == null ? void 0 : _a.name),\n disabled: unref(disabled),\n type: \"radio\",\n onFocus: _cache[1] || (_cache[1] = ($event) => focus.value = true),\n onBlur: _cache[2] || (_cache[2] = ($event) => focus.value = false),\n onChange: handleChange\n }, null, 42, _hoisted_1), [\n [vModelRadio, unref(modelValue)]\n ]),\n createElementVNode(\"span\", {\n class: normalizeClass(unref(ns).e(\"inner\"))\n }, null, 2)\n ], 2),\n createElementVNode(\"span\", {\n class: normalizeClass(unref(ns).e(\"label\")),\n onKeydown: _cache[3] || (_cache[3] = withModifiers(() => {\n }, [\"stop\"]))\n }, [\n renderSlot(_ctx.$slots, \"default\", {}, () => [\n createTextVNode(toDisplayString(_ctx.label), 1)\n ])\n ], 34)\n ], 2);\n };\n }\n});\nvar Radio = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"__file\", \"/home/runner/work/element-plus/element-plus/packages/components/radio/src/radio.vue\"]]);\n\nexport { Radio as default };\n//# sourceMappingURL=radio2.mjs.map\n","import '../../../utils/index.mjs';\nimport { radioPropsBase } from './radio.mjs';\nimport { buildProps } from '../../../utils/vue/props/runtime.mjs';\n\nconst radioButtonProps = buildProps({\n ...radioPropsBase,\n name: {\n type: String,\n default: \"\"\n }\n});\n\nexport { radioButtonProps };\n//# sourceMappingURL=radio-button.mjs.map\n","import { defineComponent, computed, openBlock, createElementBlock, normalizeClass, unref, withDirectives, createElementVNode, isRef, vModelRadio, normalizeStyle, withModifiers, renderSlot, createTextVNode, toDisplayString } from 'vue';\nimport '../../../hooks/index.mjs';\nimport { useRadio } from './use-radio.mjs';\nimport { radioButtonProps } from './radio-button.mjs';\nimport _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';\nimport { useNamespace } from '../../../hooks/use-namespace/index.mjs';\n\nconst _hoisted_1 = [\"value\", \"name\", \"disabled\"];\nconst __default__ = {\n name: \"ElRadioButton\"\n};\nconst _sfc_main = /* @__PURE__ */ defineComponent({\n ...__default__,\n props: radioButtonProps,\n setup(__props) {\n const props = __props;\n const ns = useNamespace(\"radio\");\n const { radioRef, focus, size, disabled, modelValue, radioGroup } = useRadio(props);\n const activeStyle = computed(() => {\n return {\n backgroundColor: (radioGroup == null ? void 0 : radioGroup.fill) || \"\",\n borderColor: (radioGroup == null ? void 0 : radioGroup.fill) || \"\",\n boxShadow: (radioGroup == null ? void 0 : radioGroup.fill) ? `-1px 0 0 0 ${radioGroup.fill}` : \"\",\n color: (radioGroup == null ? void 0 : radioGroup.textColor) || \"\"\n };\n });\n return (_ctx, _cache) => {\n var _a;\n return openBlock(), createElementBlock(\"label\", {\n class: normalizeClass([\n unref(ns).b(\"button\"),\n unref(ns).is(\"active\", unref(modelValue) === _ctx.label),\n unref(ns).is(\"disabled\", unref(disabled)),\n unref(ns).is(\"focus\", unref(focus)),\n unref(ns).bm(\"button\", unref(size))\n ])\n }, [\n withDirectives(createElementVNode(\"input\", {\n ref_key: \"radioRef\",\n ref: radioRef,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event) => isRef(modelValue) ? modelValue.value = $event : null),\n class: normalizeClass(unref(ns).be(\"button\", \"original-radio\")),\n value: _ctx.label,\n type: \"radio\",\n name: _ctx.name || ((_a = unref(radioGroup)) == null ? void 0 : _a.name),\n disabled: unref(disabled),\n onFocus: _cache[1] || (_cache[1] = ($event) => focus.value = true),\n onBlur: _cache[2] || (_cache[2] = ($event) => focus.value = false)\n }, null, 42, _hoisted_1), [\n [vModelRadio, unref(modelValue)]\n ]),\n createElementVNode(\"span\", {\n class: normalizeClass(unref(ns).be(\"button\", \"inner\")),\n style: normalizeStyle(unref(modelValue) === _ctx.label ? unref(activeStyle) : {}),\n onKeydown: _cache[3] || (_cache[3] = withModifiers(() => {\n }, [\"stop\"]))\n }, [\n renderSlot(_ctx.$slots, \"default\", {}, () => [\n createTextVNode(toDisplayString(_ctx.label), 1)\n ])\n ], 38)\n ], 2);\n };\n }\n});\nvar RadioButton = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"__file\", \"/home/runner/work/element-plus/element-plus/packages/components/radio/src/radio-button.vue\"]]);\n\nexport { RadioButton as default };\n//# sourceMappingURL=radio-button2.mjs.map\n","import '../../../utils/index.mjs';\nimport '../../../hooks/index.mjs';\nimport { radioEmits } from './radio.mjs';\nimport { buildProps } from '../../../utils/vue/props/runtime.mjs';\nimport { useSizeProp } from '../../../hooks/use-common-props/index.mjs';\n\nconst radioGroupProps = buildProps({\n id: {\n type: String,\n default: void 0\n },\n size: useSizeProp,\n disabled: Boolean,\n modelValue: {\n type: [String, Number, Boolean],\n default: \"\"\n },\n fill: {\n type: String,\n default: \"\"\n },\n label: {\n type: String,\n default: void 0\n },\n textColor: {\n type: String,\n default: \"\"\n },\n name: {\n type: String,\n default: void 0\n },\n validateEvent: {\n type: Boolean,\n default: true\n }\n});\nconst radioGroupEmits = radioEmits;\n\nexport { radioGroupEmits, radioGroupProps };\n//# sourceMappingURL=radio-group.mjs.map\n","import { defineComponent, ref, nextTick, onMounted, computed, provide, reactive, toRefs, watch, openBlock, createElementBlock, unref, normalizeClass, renderSlot } from 'vue';\nimport '../../../constants/index.mjs';\nimport '../../../tokens/index.mjs';\nimport '../../../hooks/index.mjs';\nimport '../../../utils/index.mjs';\nimport { radioGroupProps, radioGroupEmits } from './radio-group.mjs';\nimport _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';\nimport { useNamespace } from '../../../hooks/use-namespace/index.mjs';\nimport { useId } from '../../../hooks/use-id/index.mjs';\nimport { useFormItem, useFormItemInputId } from '../../../hooks/use-form-item/index.mjs';\nimport { UPDATE_MODEL_EVENT } from '../../../constants/event.mjs';\nimport { radioGroupKey } from '../../../tokens/radio.mjs';\nimport { debugWarn } from '../../../utils/error.mjs';\n\nconst _hoisted_1 = [\"id\", \"aria-label\", \"aria-labelledby\"];\nconst __default__ = {\n name: \"ElRadioGroup\"\n};\nconst _sfc_main = /* @__PURE__ */ defineComponent({\n ...__default__,\n props: radioGroupProps,\n emits: radioGroupEmits,\n setup(__props, { emit }) {\n const props = __props;\n const ns = useNamespace(\"radio\");\n const radioId = useId();\n const radioGroupRef = ref();\n const { formItem } = useFormItem();\n const { inputId: groupId, isLabeledByFormItem } = useFormItemInputId(props, {\n formItemContext: formItem\n });\n const changeEvent = (value) => {\n emit(UPDATE_MODEL_EVENT, value);\n nextTick(() => emit(\"change\", value));\n };\n onMounted(() => {\n const radios = radioGroupRef.value.querySelectorAll(\"[type=radio]\");\n const firstLabel = radios[0];\n if (!Array.from(radios).some((radio) => radio.checked) && firstLabel) {\n firstLabel.tabIndex = 0;\n }\n });\n const name = computed(() => {\n return props.name || radioId.value;\n });\n provide(radioGroupKey, reactive({\n ...toRefs(props),\n changeEvent,\n name\n }));\n watch(() => props.modelValue, () => {\n if (props.validateEvent) {\n formItem == null ? void 0 : formItem.validate(\"change\").catch((err) => debugWarn(err));\n }\n });\n return (_ctx, _cache) => {\n return openBlock(), createElementBlock(\"div\", {\n id: unref(groupId),\n ref_key: \"radioGroupRef\",\n ref: radioGroupRef,\n class: normalizeClass(unref(ns).b(\"group\")),\n role: \"radiogroup\",\n \"aria-label\": !unref(isLabeledByFormItem) ? _ctx.label || \"radio-group\" : void 0,\n \"aria-labelledby\": unref(isLabeledByFormItem) ? unref(formItem).labelId : void 0\n }, [\n renderSlot(_ctx.$slots, \"default\")\n ], 10, _hoisted_1);\n };\n }\n});\nvar RadioGroup = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"__file\", \"/home/runner/work/element-plus/element-plus/packages/components/radio/src/radio-group.vue\"]]);\n\nexport { RadioGroup as default };\n//# sourceMappingURL=radio-group2.mjs.map\n","import '../../utils/index.mjs';\nimport Radio from './src/radio2.mjs';\nimport RadioButton from './src/radio-button2.mjs';\nimport RadioGroup from './src/radio-group2.mjs';\nexport { radioEmits, radioProps, radioPropsBase } from './src/radio.mjs';\nexport { radioGroupEmits, radioGroupProps } from './src/radio-group.mjs';\nexport { radioButtonProps } from './src/radio-button.mjs';\nimport { withInstall, withNoopInstall } from '../../utils/vue/install.mjs';\n\nconst ElRadio = withInstall(Radio, {\n RadioButton,\n RadioGroup\n});\nconst ElRadioGroup = withNoopInstall(RadioGroup);\nconst ElRadioButton = withNoopInstall(RadioButton);\n\nexport { ElRadio, ElRadioButton, ElRadioGroup, ElRadio as default };\n//# sourceMappingURL=index.mjs.map\n","<template>\n <el-image style=\"width: 150px; height: 150px\" :src=\"src\" :preview-src-list=\"srcList\"/>\n</template>\n<script>\nexport default {\n name: 'QrCode',\n props: {\n value: String,\n },\n data() {\n return {\n src: '',\n srcList: [],\n }\n },\n watch: {\n value(to) {\n if (!to) {\n return\n }\n this.src = this.createEwm(to)\n this.srcList = [this.src]\n },\n },\n methods: {\n createEwm(text, config) {\n // eslint-disable-next-line no-undef\n const canvasImg = new AraleQRCode({\n text,\n size: 400,\n foreground: '#000',\n ...config,\n })\n return canvasImg.toDataURL('image/png')\n },\n },\n mounted() {\n if (this.value) {\n this.src = this.createEwm(this.value)\n this.srcList = [this.src]\n }\n },\n}\n</script>\n","<script lang=\"ts\">\nimport { ElMessage } from 'element-plus'\nimport { defineComponent, ref, watchEffect } from 'vue'\nimport QrCode from '@components/QrCode.vue'\nimport { copyRes, getShortUrl } from '@/utils/stringUtil'\nimport { useIsMobile } from '@/composables'\n\nexport default defineComponent({\n name: 'LinkDialog',\n components: {\n QrCode,\n },\n props: {\n title: {\n type: String,\n default: '链接面板',\n },\n value: {\n type: Boolean,\n },\n link: {\n type: String,\n default: '',\n },\n download: {\n type: Boolean,\n default: true,\n },\n },\n emits: ['update:value'],\n setup(props, context) {\n const shareLink = ref('')\n const showModel = ref(false)\n const isMobile = useIsMobile()\n const copyLink = () => {\n copyRes(shareLink.value)\n }\n watchEffect(() => {\n shareLink.value = props.link\n })\n watchEffect(() => {\n showModel.value = props.value\n if (showModel.value && props.download) {\n setTimeout(() => {\n ElMessage.success('如未自动开始下载,请复制链接到浏览器中执行下载')\n }, 200)\n }\n })\n const handleClose = () => {\n context.emit('update:value', false)\n }\n const createShortLink = () => {\n getShortUrl(shareLink.value).then((v) => {\n shareLink.value = v\n ElMessage.success('短链生成成功')\n })\n }\n\n return {\n shareLink,\n createShortLink,\n copyLink,\n handleClose,\n showModel,\n isMobile,\n }\n },\n})\n</script>\n\n<template>\n <div>\n <el-dialog\n v-model=\"showModel\"\n :fullscreen=\"isMobile\"\n :title=\"title\"\n center\n @close=\"handleClose\"\n >\n <!-- 链接 -->\n <div>\n <el-input v-model=\"shareLink\" placeholder=\"生成的链接\">\n <template #prepend>\n <el-button type=\"primary\" @click=\"createShortLink\">\n 生成短链\n </el-button>\n </template>\n <template #append>\n <el-button type=\"primary\" @click=\"copyLink\">\n 复制\n </el-button>\n </template>\n </el-input>\n </div>\n <!-- 二维码 -->\n <div style=\"margin-top: 10px; text-align: center\">\n <QrCode :value=\"shareLink\" />\n </div>\n <!-- <template #footer>\n <span class=\"dialog-footer\">\n <el-button type=\"primary\" @click=\"$emit('update:value',false)\">关闭</el-button>\n </span>\n </template> -->\n </el-dialog>\n </div>\n</template>\n","<script setup lang=\"ts\">\nimport { computed } from 'vue'\nimport { useSiteConfig } from '@/composables'\n\ndefineProps<{\n infos: InfoItem[]\n disabled: boolean\n labelPosition?: 'left' | 'right' | 'top'\n}>()\n\nconst { value: siteConfig } = useSiteConfig()\nconst maxInputLength = computed(() => siteConfig.value.maxInputLength)\n</script>\n\n<template>\n <el-form :disabled=\"disabled\" :label-position=\"labelPosition || 'top'\">\n <el-form-item\n v-for=\"(info, idx) in infos\"\n :key=\"idx\"\n class=\"ellipsis\"\n :label=\"info.type === 'text' ? '' : info.text\"\n >\n <div v-if=\"info.type === 'text'\" class=\"fixed-text\">\n {{ info.text }}\n </div>\n <el-input\n v-if=\"info.type === 'input'\"\n v-model=\"info.value\"\n :maxlength=\"maxInputLength\"\n clearable\n show-word-limit\n :placeholder=\"`请输入 ${info.text}`\"\n />\n <el-radio-group v-if=\"info.type === 'radio'\" v-model=\"info.value\">\n <el-radio\n v-for=\"(r, idx) in info.children\"\n :key=\"idx\"\n :label=\"r.text\"\n >\n {{ r.text }}\n </el-radio>\n </el-radio-group>\n <el-select\n v-if=\"info.type === 'select'\"\n v-model=\"info.value\"\n default-first-option\n clearable\n filterable\n :placeholder=\"`请选择 ${info.text}`\"\n >\n <el-option\n v-for=\"(r, idx) in info.children\"\n :key=\"idx\"\n :label=\"r.text\"\n :value=\"r.text\"\n />\n </el-select>\n </el-form-item>\n </el-form>\n</template>\n\n<style scoped lang=\"scss\">\n:deep(div.el-form-item > label) {\n font-weight: bold;\n &::before {\n content: '* ';\n color: red;\n }\n}\n\n:deep(div.el-form-item__content > .el-select) {\n flex: 1;\n}\n.fixed-text {\n background-color: #f5f7fa;\n padding: 0 10px;\n width: 100%;\n text-align: left;\n}\n</style>\n"],"names":["radioGroupKey","Symbol","radioPropsBase","buildProps","size","useSizeProp","disabled","Boolean","label","type","String","Number","default","radioProps","modelValue","name","border","radioEmits","UPDATE_MODEL_EVENT","val","isString","isNumber","isBoolean","CHANGE_EVENT","useRadio","props","emit","radioRef","ref","radioGroup","inject","isGroup","computed","get","value","set","changeEvent","checked","useSize","useDisabled","focus","tabIndex","_hoisted_1","Radio","_export_sfc","defineComponent","emits","setup","__props","ns","useNamespace","handleChange","nextTick","_ctx","_cache","_a","openBlock","createElementBlock","class","normalizeClass","unref","b","is","m","createElementVNode","e","withDirectives","ref_key","$event","isRef","onFocus","onBlur","onChange","vModelRadio","onKeydown","withModifiers","renderSlot","$slots","createTextVNode","toDisplayString","radioButtonProps","RadioButton","activeStyle","backgroundColor","fill","borderColor","boxShadow","color","textColor","bm","be","style","normalizeStyle","radioGroupProps","id","validateEvent","RadioGroup","radioId","useId","radioGroupRef","formItem","useFormItem","inputId","groupId","isLabeledByFormItem","useFormItemInputId","formItemContext","onMounted","radios","querySelectorAll","firstLabel","Array","from","some","radio","provide","reactive","toRefs","watch","validate","catch","err","debugWarn","role","labelId","ElRadio","exports","withInstall","ElRadioGroup","withNoopInstall","data","src","srcList","to","this","createEwm","methods","text","config","AraleQRCode","foreground","toDataURL","mounted","_createBlock","_component_el_image","width","height","$data","_sfc_main$1","components","QrCode","title","link","download","context","shareLink","showModel","isMobile","useIsMobile","watchEffect","setTimeout","ElMessage","success","createShortLink","getShortUrl","then","v","copyLink","copyRes","handleClose","__unplugin_components_3","_openBlock","_createElementBlock","_createVNode","_component_el_dialog","fullscreen","onClose","_withCtx","_createElementVNode","_component_el_input","placeholder","prepend","onClick","_createTextVNode","append","siteConfig","useSiteConfig","maxInputLength"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8]}
1
+ {"version":3,"file":"index-legacy-pP3Pmgbs.js","sources":["../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/tokens/radio.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/radio/src/radio.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/radio/src/use-radio.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/radio/src/radio2.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/radio/src/radio-button.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/radio/src/radio-button2.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/radio/src/radio-group.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/radio/src/radio-group2.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/components/radio/index.mjs","../../src/components/QrCode.vue","../../src/components/linkDialog.vue","../../src/components/InfosForm/index.vue"],"sourcesContent":["const radioGroupKey = Symbol(\"radioGroupKey\");\n\nexport { radioGroupKey };\n//# sourceMappingURL=radio.mjs.map\n","import '../../../utils/index.mjs';\nimport '../../../constants/index.mjs';\nimport '../../../hooks/index.mjs';\nimport { buildProps } from '../../../utils/vue/props/runtime.mjs';\nimport { useSizeProp } from '../../../hooks/use-common-props/index.mjs';\nimport { UPDATE_MODEL_EVENT, CHANGE_EVENT } from '../../../constants/event.mjs';\nimport { isString } from '@vue/shared';\nimport { isNumber, isBoolean } from '@vueuse/core';\n\nconst radioPropsBase = buildProps({\n size: useSizeProp,\n disabled: Boolean,\n label: {\n type: [String, Number, Boolean],\n default: \"\"\n }\n});\nconst radioProps = buildProps({\n ...radioPropsBase,\n modelValue: {\n type: [String, Number, Boolean],\n default: \"\"\n },\n name: {\n type: String,\n default: \"\"\n },\n border: Boolean\n});\nconst radioEmits = {\n [UPDATE_MODEL_EVENT]: (val) => isString(val) || isNumber(val) || isBoolean(val),\n [CHANGE_EVENT]: (val) => isString(val) || isNumber(val) || isBoolean(val)\n};\n\nexport { radioEmits, radioProps, radioPropsBase };\n//# sourceMappingURL=radio.mjs.map\n","import { ref, inject, computed } from 'vue';\nimport '../../../constants/index.mjs';\nimport '../../../tokens/index.mjs';\nimport '../../../hooks/index.mjs';\nimport { radioGroupKey } from '../../../tokens/radio.mjs';\nimport { UPDATE_MODEL_EVENT } from '../../../constants/event.mjs';\nimport { useSize, useDisabled } from '../../../hooks/use-common-props/index.mjs';\n\nconst useRadio = (props, emit) => {\n const radioRef = ref();\n const radioGroup = inject(radioGroupKey, void 0);\n const isGroup = computed(() => !!radioGroup);\n const modelValue = computed({\n get() {\n return isGroup.value ? radioGroup.modelValue : props.modelValue;\n },\n set(val) {\n if (isGroup.value) {\n radioGroup.changeEvent(val);\n } else {\n emit && emit(UPDATE_MODEL_EVENT, val);\n }\n radioRef.value.checked = props.modelValue === props.label;\n }\n });\n const size = useSize(computed(() => radioGroup == null ? void 0 : radioGroup.size));\n const disabled = useDisabled(computed(() => radioGroup == null ? void 0 : radioGroup.disabled));\n const focus = ref(false);\n const tabIndex = computed(() => {\n return disabled.value || isGroup.value && modelValue.value !== props.label ? -1 : 0;\n });\n return {\n radioRef,\n isGroup,\n radioGroup,\n focus,\n size,\n disabled,\n tabIndex,\n modelValue\n };\n};\n\nexport { useRadio };\n//# sourceMappingURL=use-radio.mjs.map\n","import { defineComponent, nextTick, openBlock, createElementBlock, normalizeClass, unref, createElementVNode, withDirectives, isRef, vModelRadio, withModifiers, renderSlot, createTextVNode, toDisplayString } from 'vue';\nimport '../../../hooks/index.mjs';\nimport { radioProps, radioEmits } from './radio.mjs';\nimport { useRadio } from './use-radio.mjs';\nimport _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';\nimport { useNamespace } from '../../../hooks/use-namespace/index.mjs';\n\nconst _hoisted_1 = [\"value\", \"name\", \"disabled\"];\nconst __default__ = {\n name: \"ElRadio\"\n};\nconst _sfc_main = /* @__PURE__ */ defineComponent({\n ...__default__,\n props: radioProps,\n emits: radioEmits,\n setup(__props, { emit }) {\n const props = __props;\n const ns = useNamespace(\"radio\");\n const { radioRef, radioGroup, focus, size, disabled, modelValue } = useRadio(props, emit);\n function handleChange() {\n nextTick(() => emit(\"change\", modelValue.value));\n }\n return (_ctx, _cache) => {\n var _a;\n return openBlock(), createElementBlock(\"label\", {\n class: normalizeClass([\n unref(ns).b(),\n unref(ns).is(\"disabled\", unref(disabled)),\n unref(ns).is(\"focus\", unref(focus)),\n unref(ns).is(\"bordered\", _ctx.border),\n unref(ns).is(\"checked\", unref(modelValue) === _ctx.label),\n unref(ns).m(unref(size))\n ])\n }, [\n createElementVNode(\"span\", {\n class: normalizeClass([\n unref(ns).e(\"input\"),\n unref(ns).is(\"disabled\", unref(disabled)),\n unref(ns).is(\"checked\", unref(modelValue) === _ctx.label)\n ])\n }, [\n withDirectives(createElementVNode(\"input\", {\n ref_key: \"radioRef\",\n ref: radioRef,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event) => isRef(modelValue) ? modelValue.value = $event : null),\n class: normalizeClass(unref(ns).e(\"original\")),\n value: _ctx.label,\n name: _ctx.name || ((_a = unref(radioGroup)) == null ? void 0 : _a.name),\n disabled: unref(disabled),\n type: \"radio\",\n onFocus: _cache[1] || (_cache[1] = ($event) => focus.value = true),\n onBlur: _cache[2] || (_cache[2] = ($event) => focus.value = false),\n onChange: handleChange\n }, null, 42, _hoisted_1), [\n [vModelRadio, unref(modelValue)]\n ]),\n createElementVNode(\"span\", {\n class: normalizeClass(unref(ns).e(\"inner\"))\n }, null, 2)\n ], 2),\n createElementVNode(\"span\", {\n class: normalizeClass(unref(ns).e(\"label\")),\n onKeydown: _cache[3] || (_cache[3] = withModifiers(() => {\n }, [\"stop\"]))\n }, [\n renderSlot(_ctx.$slots, \"default\", {}, () => [\n createTextVNode(toDisplayString(_ctx.label), 1)\n ])\n ], 34)\n ], 2);\n };\n }\n});\nvar Radio = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"__file\", \"/home/runner/work/element-plus/element-plus/packages/components/radio/src/radio.vue\"]]);\n\nexport { Radio as default };\n//# sourceMappingURL=radio2.mjs.map\n","import '../../../utils/index.mjs';\nimport { radioPropsBase } from './radio.mjs';\nimport { buildProps } from '../../../utils/vue/props/runtime.mjs';\n\nconst radioButtonProps = buildProps({\n ...radioPropsBase,\n name: {\n type: String,\n default: \"\"\n }\n});\n\nexport { radioButtonProps };\n//# sourceMappingURL=radio-button.mjs.map\n","import { defineComponent, computed, openBlock, createElementBlock, normalizeClass, unref, withDirectives, createElementVNode, isRef, vModelRadio, normalizeStyle, withModifiers, renderSlot, createTextVNode, toDisplayString } from 'vue';\nimport '../../../hooks/index.mjs';\nimport { useRadio } from './use-radio.mjs';\nimport { radioButtonProps } from './radio-button.mjs';\nimport _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';\nimport { useNamespace } from '../../../hooks/use-namespace/index.mjs';\n\nconst _hoisted_1 = [\"value\", \"name\", \"disabled\"];\nconst __default__ = {\n name: \"ElRadioButton\"\n};\nconst _sfc_main = /* @__PURE__ */ defineComponent({\n ...__default__,\n props: radioButtonProps,\n setup(__props) {\n const props = __props;\n const ns = useNamespace(\"radio\");\n const { radioRef, focus, size, disabled, modelValue, radioGroup } = useRadio(props);\n const activeStyle = computed(() => {\n return {\n backgroundColor: (radioGroup == null ? void 0 : radioGroup.fill) || \"\",\n borderColor: (radioGroup == null ? void 0 : radioGroup.fill) || \"\",\n boxShadow: (radioGroup == null ? void 0 : radioGroup.fill) ? `-1px 0 0 0 ${radioGroup.fill}` : \"\",\n color: (radioGroup == null ? void 0 : radioGroup.textColor) || \"\"\n };\n });\n return (_ctx, _cache) => {\n var _a;\n return openBlock(), createElementBlock(\"label\", {\n class: normalizeClass([\n unref(ns).b(\"button\"),\n unref(ns).is(\"active\", unref(modelValue) === _ctx.label),\n unref(ns).is(\"disabled\", unref(disabled)),\n unref(ns).is(\"focus\", unref(focus)),\n unref(ns).bm(\"button\", unref(size))\n ])\n }, [\n withDirectives(createElementVNode(\"input\", {\n ref_key: \"radioRef\",\n ref: radioRef,\n \"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event) => isRef(modelValue) ? modelValue.value = $event : null),\n class: normalizeClass(unref(ns).be(\"button\", \"original-radio\")),\n value: _ctx.label,\n type: \"radio\",\n name: _ctx.name || ((_a = unref(radioGroup)) == null ? void 0 : _a.name),\n disabled: unref(disabled),\n onFocus: _cache[1] || (_cache[1] = ($event) => focus.value = true),\n onBlur: _cache[2] || (_cache[2] = ($event) => focus.value = false)\n }, null, 42, _hoisted_1), [\n [vModelRadio, unref(modelValue)]\n ]),\n createElementVNode(\"span\", {\n class: normalizeClass(unref(ns).be(\"button\", \"inner\")),\n style: normalizeStyle(unref(modelValue) === _ctx.label ? unref(activeStyle) : {}),\n onKeydown: _cache[3] || (_cache[3] = withModifiers(() => {\n }, [\"stop\"]))\n }, [\n renderSlot(_ctx.$slots, \"default\", {}, () => [\n createTextVNode(toDisplayString(_ctx.label), 1)\n ])\n ], 38)\n ], 2);\n };\n }\n});\nvar RadioButton = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"__file\", \"/home/runner/work/element-plus/element-plus/packages/components/radio/src/radio-button.vue\"]]);\n\nexport { RadioButton as default };\n//# sourceMappingURL=radio-button2.mjs.map\n","import '../../../utils/index.mjs';\nimport '../../../hooks/index.mjs';\nimport { radioEmits } from './radio.mjs';\nimport { buildProps } from '../../../utils/vue/props/runtime.mjs';\nimport { useSizeProp } from '../../../hooks/use-common-props/index.mjs';\n\nconst radioGroupProps = buildProps({\n id: {\n type: String,\n default: void 0\n },\n size: useSizeProp,\n disabled: Boolean,\n modelValue: {\n type: [String, Number, Boolean],\n default: \"\"\n },\n fill: {\n type: String,\n default: \"\"\n },\n label: {\n type: String,\n default: void 0\n },\n textColor: {\n type: String,\n default: \"\"\n },\n name: {\n type: String,\n default: void 0\n },\n validateEvent: {\n type: Boolean,\n default: true\n }\n});\nconst radioGroupEmits = radioEmits;\n\nexport { radioGroupEmits, radioGroupProps };\n//# sourceMappingURL=radio-group.mjs.map\n","import { defineComponent, ref, nextTick, onMounted, computed, provide, reactive, toRefs, watch, openBlock, createElementBlock, unref, normalizeClass, renderSlot } from 'vue';\nimport '../../../constants/index.mjs';\nimport '../../../tokens/index.mjs';\nimport '../../../hooks/index.mjs';\nimport '../../../utils/index.mjs';\nimport { radioGroupProps, radioGroupEmits } from './radio-group.mjs';\nimport _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';\nimport { useNamespace } from '../../../hooks/use-namespace/index.mjs';\nimport { useId } from '../../../hooks/use-id/index.mjs';\nimport { useFormItem, useFormItemInputId } from '../../../hooks/use-form-item/index.mjs';\nimport { UPDATE_MODEL_EVENT } from '../../../constants/event.mjs';\nimport { radioGroupKey } from '../../../tokens/radio.mjs';\nimport { debugWarn } from '../../../utils/error.mjs';\n\nconst _hoisted_1 = [\"id\", \"aria-label\", \"aria-labelledby\"];\nconst __default__ = {\n name: \"ElRadioGroup\"\n};\nconst _sfc_main = /* @__PURE__ */ defineComponent({\n ...__default__,\n props: radioGroupProps,\n emits: radioGroupEmits,\n setup(__props, { emit }) {\n const props = __props;\n const ns = useNamespace(\"radio\");\n const radioId = useId();\n const radioGroupRef = ref();\n const { formItem } = useFormItem();\n const { inputId: groupId, isLabeledByFormItem } = useFormItemInputId(props, {\n formItemContext: formItem\n });\n const changeEvent = (value) => {\n emit(UPDATE_MODEL_EVENT, value);\n nextTick(() => emit(\"change\", value));\n };\n onMounted(() => {\n const radios = radioGroupRef.value.querySelectorAll(\"[type=radio]\");\n const firstLabel = radios[0];\n if (!Array.from(radios).some((radio) => radio.checked) && firstLabel) {\n firstLabel.tabIndex = 0;\n }\n });\n const name = computed(() => {\n return props.name || radioId.value;\n });\n provide(radioGroupKey, reactive({\n ...toRefs(props),\n changeEvent,\n name\n }));\n watch(() => props.modelValue, () => {\n if (props.validateEvent) {\n formItem == null ? void 0 : formItem.validate(\"change\").catch((err) => debugWarn(err));\n }\n });\n return (_ctx, _cache) => {\n return openBlock(), createElementBlock(\"div\", {\n id: unref(groupId),\n ref_key: \"radioGroupRef\",\n ref: radioGroupRef,\n class: normalizeClass(unref(ns).b(\"group\")),\n role: \"radiogroup\",\n \"aria-label\": !unref(isLabeledByFormItem) ? _ctx.label || \"radio-group\" : void 0,\n \"aria-labelledby\": unref(isLabeledByFormItem) ? unref(formItem).labelId : void 0\n }, [\n renderSlot(_ctx.$slots, \"default\")\n ], 10, _hoisted_1);\n };\n }\n});\nvar RadioGroup = /* @__PURE__ */ _export_sfc(_sfc_main, [[\"__file\", \"/home/runner/work/element-plus/element-plus/packages/components/radio/src/radio-group.vue\"]]);\n\nexport { RadioGroup as default };\n//# sourceMappingURL=radio-group2.mjs.map\n","import '../../utils/index.mjs';\nimport Radio from './src/radio2.mjs';\nimport RadioButton from './src/radio-button2.mjs';\nimport RadioGroup from './src/radio-group2.mjs';\nexport { radioEmits, radioProps, radioPropsBase } from './src/radio.mjs';\nexport { radioGroupEmits, radioGroupProps } from './src/radio-group.mjs';\nexport { radioButtonProps } from './src/radio-button.mjs';\nimport { withInstall, withNoopInstall } from '../../utils/vue/install.mjs';\n\nconst ElRadio = withInstall(Radio, {\n RadioButton,\n RadioGroup\n});\nconst ElRadioGroup = withNoopInstall(RadioGroup);\nconst ElRadioButton = withNoopInstall(RadioButton);\n\nexport { ElRadio, ElRadioButton, ElRadioGroup, ElRadio as default };\n//# sourceMappingURL=index.mjs.map\n","<template>\n <el-image style=\"width: 150px; height: 150px\" :src=\"src\" :preview-src-list=\"srcList\"/>\n</template>\n<script>\nexport default {\n name: 'QrCode',\n props: {\n value: String,\n },\n data() {\n return {\n src: '',\n srcList: [],\n }\n },\n watch: {\n value(to) {\n if (!to) {\n return\n }\n this.src = this.createEwm(to)\n this.srcList = [this.src]\n },\n },\n methods: {\n createEwm(text, config) {\n // eslint-disable-next-line no-undef\n const canvasImg = new AraleQRCode({\n text,\n size: 400,\n foreground: '#000',\n ...config,\n })\n return canvasImg.toDataURL('image/png')\n },\n },\n mounted() {\n if (this.value) {\n this.src = this.createEwm(this.value)\n this.srcList = [this.src]\n }\n },\n}\n</script>\n","<script lang=\"ts\">\nimport { ElMessage } from 'element-plus'\nimport { defineComponent, ref, watchEffect } from 'vue'\nimport QrCode from '@components/QrCode.vue'\nimport { copyRes, getShortUrl } from '@/utils/stringUtil'\nimport { useIsMobile } from '@/composables'\n\nexport default defineComponent({\n name: 'LinkDialog',\n components: {\n QrCode,\n },\n props: {\n title: {\n type: String,\n default: '链接面板',\n },\n value: {\n type: Boolean,\n },\n link: {\n type: String,\n default: '',\n },\n download: {\n type: Boolean,\n default: true,\n },\n },\n emits: ['update:value'],\n setup(props, context) {\n const shareLink = ref('')\n const showModel = ref(false)\n const isMobile = useIsMobile()\n const copyLink = () => {\n copyRes(shareLink.value)\n }\n watchEffect(() => {\n shareLink.value = props.link\n })\n watchEffect(() => {\n showModel.value = props.value\n if (showModel.value && props.download) {\n setTimeout(() => {\n ElMessage.success('如未自动开始下载,请复制链接到浏览器中执行下载')\n }, 200)\n }\n })\n const handleClose = () => {\n context.emit('update:value', false)\n }\n const createShortLink = () => {\n getShortUrl(shareLink.value).then((v) => {\n shareLink.value = v\n ElMessage.success('短链生成成功')\n })\n }\n\n return {\n shareLink,\n createShortLink,\n copyLink,\n handleClose,\n showModel,\n isMobile,\n }\n },\n})\n</script>\n\n<template>\n <div>\n <el-dialog\n v-model=\"showModel\"\n :fullscreen=\"isMobile\"\n :title=\"title\"\n center\n @close=\"handleClose\"\n >\n <!-- 链接 -->\n <div>\n <el-input v-model=\"shareLink\" placeholder=\"生成的链接\">\n <template #prepend>\n <el-button type=\"primary\" @click=\"createShortLink\">\n 生成短链\n </el-button>\n </template>\n <template #append>\n <el-button type=\"primary\" @click=\"copyLink\">\n 复制\n </el-button>\n </template>\n </el-input>\n </div>\n <!-- 二维码 -->\n <div style=\"margin-top: 10px; text-align: center\">\n <QrCode :value=\"shareLink\" />\n </div>\n <!-- <template #footer>\n <span class=\"dialog-footer\">\n <el-button type=\"primary\" @click=\"$emit('update:value',false)\">关闭</el-button>\n </span>\n </template> -->\n </el-dialog>\n </div>\n</template>\n","<script setup lang=\"ts\">\nimport { computed } from 'vue'\nimport { useSiteConfig } from '@/composables'\n\ndefineProps<{\n infos: InfoItem[]\n disabled: boolean\n labelPosition?: 'left' | 'right' | 'top'\n}>()\n\nconst { value: siteConfig } = useSiteConfig()\nconst maxInputLength = computed(() => siteConfig.value.maxInputLength)\n</script>\n\n<template>\n <el-form :disabled=\"disabled\" :label-position=\"labelPosition || 'top'\">\n <el-form-item\n v-for=\"(info, idx) in infos\"\n :key=\"idx\"\n class=\"ellipsis\"\n :label=\"info.type === 'text' ? '' : info.text\"\n >\n <div v-if=\"info.type === 'text'\" class=\"fixed-text\">\n {{ info.text }}\n </div>\n <el-input\n v-if=\"info.type === 'input'\"\n v-model=\"info.value\"\n :maxlength=\"maxInputLength\"\n clearable\n show-word-limit\n :placeholder=\"`请输入 ${info.text}`\"\n />\n <el-radio-group v-if=\"info.type === 'radio'\" v-model=\"info.value\">\n <el-radio\n v-for=\"(r, idx) in info.children\"\n :key=\"idx\"\n :label=\"r.text\"\n >\n {{ r.text }}\n </el-radio>\n </el-radio-group>\n <el-select\n v-if=\"info.type === 'select'\"\n v-model=\"info.value\"\n default-first-option\n clearable\n filterable\n :placeholder=\"`请选择 ${info.text}`\"\n >\n <el-option\n v-for=\"(r, idx) in info.children\"\n :key=\"idx\"\n :label=\"r.text\"\n :value=\"r.text\"\n />\n </el-select>\n </el-form-item>\n </el-form>\n</template>\n\n<style scoped lang=\"scss\">\n:deep(div.el-form-item > label) {\n font-weight: bold;\n &::before {\n content: '* ';\n color: red;\n }\n}\n\n:deep(div.el-form-item__content > .el-select) {\n flex: 1;\n}\n.fixed-text {\n background-color: #f5f7fa;\n padding: 0 10px;\n width: 100%;\n text-align: left;\n}\n</style>\n"],"names":["radioGroupKey","Symbol","radioPropsBase","buildProps","size","useSizeProp","disabled","Boolean","label","type","String","Number","default","radioProps","modelValue","name","border","radioEmits","UPDATE_MODEL_EVENT","val","isString","isNumber","isBoolean","CHANGE_EVENT","useRadio","props","emit","radioRef","ref","radioGroup","inject","isGroup","computed","get","value","set","changeEvent","checked","useSize","useDisabled","focus","tabIndex","_hoisted_1","Radio","_export_sfc","defineComponent","emits","setup","__props","ns","useNamespace","handleChange","nextTick","_ctx","_cache","_a","openBlock","createElementBlock","class","normalizeClass","unref","b","is","m","createElementVNode","e","withDirectives","ref_key","$event","isRef","onFocus","onBlur","onChange","vModelRadio","onKeydown","withModifiers","renderSlot","$slots","createTextVNode","toDisplayString","radioButtonProps","RadioButton","activeStyle","backgroundColor","fill","borderColor","boxShadow","color","textColor","bm","be","style","normalizeStyle","radioGroupProps","id","validateEvent","RadioGroup","radioId","useId","radioGroupRef","formItem","useFormItem","inputId","groupId","isLabeledByFormItem","useFormItemInputId","formItemContext","onMounted","radios","querySelectorAll","firstLabel","Array","from","some","radio","provide","reactive","toRefs","watch","validate","catch","err","debugWarn","role","labelId","ElRadio","exports","withInstall","ElRadioGroup","withNoopInstall","data","src","srcList","to","this","createEwm","methods","text","config","AraleQRCode","foreground","toDataURL","mounted","_createBlock","_component_el_image","width","height","$data","_sfc_main$1","components","QrCode","title","link","download","context","shareLink","showModel","isMobile","useIsMobile","watchEffect","setTimeout","ElMessage","success","createShortLink","getShortUrl","then","v","copyLink","copyRes","handleClose","__unplugin_components_3","_openBlock","_createElementBlock","_createVNode","_component_el_dialog","fullscreen","onClose","_withCtx","_createElementVNode","_component_el_input","placeholder","prepend","onClick","_createTextVNode","append","siteConfig","useSiteConfig","maxInputLength"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8]}
@@ -1,2 +1,2 @@
1
- import{d as r,_ as d,i as F,a as i,c as f,b as u,j as c,w as e,e as t,B as s,p as o,f as n}from"./index-CvlaXQXr.js";const A=r({setup(){return{}}}),l=a=>(o("data-v-57f0136c"),a=a(),n(),a),v={class:"about"},p={class:"panel"},B=l(()=>u("img",{class:"logo",src:"https://img.cdn.sugarat.top/easypicker/EasyPicker.png"},null,-1)),D=l(()=>u("div",{class:"panel"},[u("h1",null,"简介"),u("p",null,"在线文件收取助手,帮助用户快速的完成一对多的文件收取")],-1)),h={class:"panel"},g=s('<h1 data-v-57f0136c>诞生背景</h1><p data-v-57f0136c>校园学习或者工作场景中会有以下几个场景:</p><ul data-v-57f0136c><li data-v-57f0136c><strong data-v-57f0136c>电子文件:</strong> 班委向同学收取各种实验电子报告</li><li data-v-57f0136c><strong data-v-57f0136c>图片:</strong> 收取各种截图证明/活动照片</li><li data-v-57f0136c>...</li></ul><p data-v-57f0136c>目前最广泛的收取方式为,通过邮箱,QQ,微信等通讯工具传递</p><p data-v-57f0136c>弊端显而易见,不方便整理统计。还占用电脑/手机内存</p><p data-v-57f0136c>为了解决这个问题,此项目应运而生</p><p data-v-57f0136c>当然<span data-v-57f0136c><strong data-v-57f0136c>市面上也有几款类似的办公工具</strong></span> ,功能及使用方式都差不多</p><p data-v-57f0136c>本项目<strong data-v-57f0136c>是 <a href="https://github.com/ATQQ/easypicker2-client" data-v-57f0136c>开源</a> 的</strong></p>',8),C=s('<div class="panel" data-v-57f0136c><h1 data-v-57f0136c>现有功能 <span style="color:grey;font-size:0.8rem;" data-v-57f0136c>(用户关心的)</span></h1><h2 data-v-57f0136c>收集任务</h2><ul data-v-57f0136c><li data-v-57f0136c><strong data-v-57f0136c>分类管理: </strong> 收集任务支持分类管理</li><li data-v-57f0136c><strong data-v-57f0136c>设置DDL(截止日期): </strong> 任务截止后不可再提交文件</li><li data-v-57f0136c><strong data-v-57f0136c>限制提交人员: </strong> 非指定的人员(姓名),无法提交文件</li><li data-v-57f0136c><strong data-v-57f0136c>设置模板文件: </strong> 提交者可直接在提交页面下载此文件</li><li data-v-57f0136c><strong data-v-57f0136c>自动重命名: </strong> 提交的文件按填写表单信息进行自动重名(如:姓名-工号.后缀)</li></ul><h2 data-v-57f0136c>文件相关</h2><ul data-v-57f0136c><li data-v-57f0136c><strong data-v-57f0136c>上传(提交): </strong>单个/多个</li><li data-v-57f0136c><strong data-v-57f0136c>下载: </strong>单个/多个/按收集任务</li><li data-v-57f0136c><strong data-v-57f0136c>撤回: </strong>用户可以撤回自己提交的文件</li><li data-v-57f0136c><strong data-v-57f0136c>分享: </strong>用户可以将文件下载链接分享给朋友</li><li data-v-57f0136c><strong data-v-57f0136c>模板下载: </strong> 下载任务发布者设置的模板文件</li><li data-v-57f0136c><strong data-v-57f0136c>导出: </strong> 导出提交记录</li></ul></div><div class="panel" data-v-57f0136c><h1 data-v-57f0136c>相关链接</h1><h2 data-v-57f0136c>应用链接相关</h2><ul data-v-57f0136c><li data-v-57f0136c><a href="https://docs.ep.sugarat.top" target="_blank" rel="noopener noreferrer" data-v-57f0136c>私有化部署</a></li><li data-v-57f0136c><a target="_blank" href="https://ep.sugarat.top" data-v-57f0136c>Easypicker1.0</a></li><li data-v-57f0136c><a target="_blank" href="https://ep2.sugarat.top" data-v-57f0136c>Easypicker2.0</a></li></ul><h2 data-v-57f0136c>应用源代码 <span style="color:grey;font-size:0.8rem;" data-v-57f0136c>(开发者需要的)</span></h2><ul data-v-57f0136c><li data-v-57f0136c><a target="_blank" href="https://github.com/ATQQ/EasyPicker-webpack" data-v-57f0136c>Easypicker1.0-客户端</a></li><li data-v-57f0136c><a target="_blank" href="https://github.com/ATQQ/easypicker-server" data-v-57f0136c>Easypicker1.0-服务端</a></li></ul><ul data-v-57f0136c><li data-v-57f0136c><a target="_blank" href="https://github.com/ATQQ/easypicker2-client" data-v-57f0136c>Easypicker2.0-客户端</a></li><li data-v-57f0136c><a target="_blank" href="https://github.com/ATQQ/easypicker2-server" data-v-57f0136c>Easypicker2.0-服务端</a></li></ul><ul data-v-57f0136c><li data-v-57f0136c><a target="_blank" href="https://github.com/ATQQ/vite-vue3-template" data-v-57f0136c>Easypicker2.0-客户端模板仓库</a></li><li data-v-57f0136c><a target="_blank" href="https://github.com/ATQQ/node-server" data-v-57f0136c>Easypicker2.0-服务端模板仓库</a></li></ul><h2 data-v-57f0136c>作者 <span style="color:grey;font-size:0.8rem;" data-v-57f0136c>(夹带私货)</span></h2><ul data-v-57f0136c><li data-v-57f0136c><a target="_blank" href="https://sugarat.top" data-v-57f0136c>博客</a></li><li data-v-57f0136c><a target="_blank" href="https://github.com/ATQQ" data-v-57f0136c>GitHub</a></li><li data-v-57f0136c><a target="_blank" href="https://juejin.cn/user/1028798615918983" data-v-57f0136c>掘金</a></li></ul></div>',2);function _(a,k,b,m,y,Q){const E=F("router-link");return i(),f("div",v,[u("main",null,[u("div",p,[c(E,{to:"/"},{default:e(()=>[B]),_:1})]),D,u("div",h,[g,u("p",null,[t("如有私有化的需求,可自行部署使用(也可 "),c(E,{to:"/author"},{default:e(()=>[t("联系作者")]),_:1}),t(" 提供帮助)")])]),C])])}const x=d(A,[["render",_],["__scopeId","data-v-57f0136c"]]);export{x as default};
2
- //# sourceMappingURL=index-WblpVXQj.js.map
1
+ import{d as r,_ as d,i as F,a as i,c as f,b as u,j as c,w as e,e as t,B as s,p as o,f as n}from"./index-yrncPnXk.js";const A=r({setup(){return{}}}),l=a=>(o("data-v-57f0136c"),a=a(),n(),a),v={class:"about"},p={class:"panel"},B=l(()=>u("img",{class:"logo",src:"https://img.cdn.sugarat.top/easypicker/EasyPicker.png"},null,-1)),D=l(()=>u("div",{class:"panel"},[u("h1",null,"简介"),u("p",null,"在线文件收取助手,帮助用户快速的完成一对多的文件收取")],-1)),h={class:"panel"},g=s('<h1 data-v-57f0136c>诞生背景</h1><p data-v-57f0136c>校园学习或者工作场景中会有以下几个场景:</p><ul data-v-57f0136c><li data-v-57f0136c><strong data-v-57f0136c>电子文件:</strong> 班委向同学收取各种实验电子报告</li><li data-v-57f0136c><strong data-v-57f0136c>图片:</strong> 收取各种截图证明/活动照片</li><li data-v-57f0136c>...</li></ul><p data-v-57f0136c>目前最广泛的收取方式为,通过邮箱,QQ,微信等通讯工具传递</p><p data-v-57f0136c>弊端显而易见,不方便整理统计。还占用电脑/手机内存</p><p data-v-57f0136c>为了解决这个问题,此项目应运而生</p><p data-v-57f0136c>当然<span data-v-57f0136c><strong data-v-57f0136c>市面上也有几款类似的办公工具</strong></span> ,功能及使用方式都差不多</p><p data-v-57f0136c>本项目<strong data-v-57f0136c>是 <a href="https://github.com/ATQQ/easypicker2-client" data-v-57f0136c>开源</a> 的</strong></p>',8),C=s('<div class="panel" data-v-57f0136c><h1 data-v-57f0136c>现有功能 <span style="color:grey;font-size:0.8rem;" data-v-57f0136c>(用户关心的)</span></h1><h2 data-v-57f0136c>收集任务</h2><ul data-v-57f0136c><li data-v-57f0136c><strong data-v-57f0136c>分类管理: </strong> 收集任务支持分类管理</li><li data-v-57f0136c><strong data-v-57f0136c>设置DDL(截止日期): </strong> 任务截止后不可再提交文件</li><li data-v-57f0136c><strong data-v-57f0136c>限制提交人员: </strong> 非指定的人员(姓名),无法提交文件</li><li data-v-57f0136c><strong data-v-57f0136c>设置模板文件: </strong> 提交者可直接在提交页面下载此文件</li><li data-v-57f0136c><strong data-v-57f0136c>自动重命名: </strong> 提交的文件按填写表单信息进行自动重名(如:姓名-工号.后缀)</li></ul><h2 data-v-57f0136c>文件相关</h2><ul data-v-57f0136c><li data-v-57f0136c><strong data-v-57f0136c>上传(提交): </strong>单个/多个</li><li data-v-57f0136c><strong data-v-57f0136c>下载: </strong>单个/多个/按收集任务</li><li data-v-57f0136c><strong data-v-57f0136c>撤回: </strong>用户可以撤回自己提交的文件</li><li data-v-57f0136c><strong data-v-57f0136c>分享: </strong>用户可以将文件下载链接分享给朋友</li><li data-v-57f0136c><strong data-v-57f0136c>模板下载: </strong> 下载任务发布者设置的模板文件</li><li data-v-57f0136c><strong data-v-57f0136c>导出: </strong> 导出提交记录</li></ul></div><div class="panel" data-v-57f0136c><h1 data-v-57f0136c>相关链接</h1><h2 data-v-57f0136c>应用链接相关</h2><ul data-v-57f0136c><li data-v-57f0136c><a href="https://docs.ep.sugarat.top" target="_blank" rel="noopener noreferrer" data-v-57f0136c>私有化部署</a></li><li data-v-57f0136c><a target="_blank" href="https://ep.sugarat.top" data-v-57f0136c>Easypicker1.0</a></li><li data-v-57f0136c><a target="_blank" href="https://ep2.sugarat.top" data-v-57f0136c>Easypicker2.0</a></li></ul><h2 data-v-57f0136c>应用源代码 <span style="color:grey;font-size:0.8rem;" data-v-57f0136c>(开发者需要的)</span></h2><ul data-v-57f0136c><li data-v-57f0136c><a target="_blank" href="https://github.com/ATQQ/EasyPicker-webpack" data-v-57f0136c>Easypicker1.0-客户端</a></li><li data-v-57f0136c><a target="_blank" href="https://github.com/ATQQ/easypicker-server" data-v-57f0136c>Easypicker1.0-服务端</a></li></ul><ul data-v-57f0136c><li data-v-57f0136c><a target="_blank" href="https://github.com/ATQQ/easypicker2-client" data-v-57f0136c>Easypicker2.0-客户端</a></li><li data-v-57f0136c><a target="_blank" href="https://github.com/ATQQ/easypicker2-server" data-v-57f0136c>Easypicker2.0-服务端</a></li></ul><ul data-v-57f0136c><li data-v-57f0136c><a target="_blank" href="https://github.com/ATQQ/vite-vue3-template" data-v-57f0136c>Easypicker2.0-客户端模板仓库</a></li><li data-v-57f0136c><a target="_blank" href="https://github.com/ATQQ/node-server" data-v-57f0136c>Easypicker2.0-服务端模板仓库</a></li></ul><h2 data-v-57f0136c>作者 <span style="color:grey;font-size:0.8rem;" data-v-57f0136c>(夹带私货)</span></h2><ul data-v-57f0136c><li data-v-57f0136c><a target="_blank" href="https://sugarat.top" data-v-57f0136c>博客</a></li><li data-v-57f0136c><a target="_blank" href="https://github.com/ATQQ" data-v-57f0136c>GitHub</a></li><li data-v-57f0136c><a target="_blank" href="https://juejin.cn/user/1028798615918983" data-v-57f0136c>掘金</a></li></ul></div>',2);function _(a,k,b,m,y,Q){const E=F("router-link");return i(),f("div",v,[u("main",null,[u("div",p,[c(E,{to:"/"},{default:e(()=>[B]),_:1})]),D,u("div",h,[g,u("p",null,[t("如有私有化的需求,可自行部署使用(也可 "),c(E,{to:"/author"},{default:e(()=>[t("联系作者")]),_:1}),t(" 提供帮助)")])]),C])])}const x=d(A,[["render",_],["__scopeId","data-v-57f0136c"]]);export{x as default};
2
+ //# sourceMappingURL=index-mKO4gpWB.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-WblpVXQj.js","sources":["../../src/pages/about/index.vue"],"sourcesContent":["<template>\n <div class=\"about\">\n <main>\n <div class=\"panel\">\n <router-link to=\"/\">\n <img class=\"logo\" src=\"https://img.cdn.sugarat.top/easypicker/EasyPicker.png\">\n </router-link>\n </div>\n <div class=\"panel\">\n <h1>简介</h1>\n <p>在线文件收取助手,帮助用户快速的完成一对多的文件收取</p>\n </div>\n <div class=\"panel\">\n <h1>诞生背景</h1>\n <p>校园学习或者工作场景中会有以下几个场景:</p>\n <ul>\n <li><strong>电子文件:</strong> 班委向同学收取各种实验电子报告</li>\n <li><strong>图片:</strong> 收取各种截图证明/活动照片</li>\n <li>...</li>\n </ul>\n <p>目前最广泛的收取方式为,通过邮箱,QQ,微信等通讯工具传递</p>\n <p>弊端显而易见,不方便整理统计。还占用电脑/手机内存</p>\n <p>为了解决这个问题,此项目应运而生</p>\n <p>当然<span><strong>市面上也有几款类似的办公工具</strong></span> ,功能及使用方式都差不多</p>\n <p>本项目<strong>是 <a href=\"https://github.com/ATQQ/easypicker2-client\">开源</a> 的</strong> </p>\n <p>如有私有化的需求,可自行部署使用(也可 <router-link to=\"/author\">联系作者</router-link> 提供帮助)</p>\n </div>\n <div class=\"panel\">\n <h1>现有功能 <span style=\"color:grey;font-size:0.8rem;\">(用户关心的)</span></h1>\n <h2>收集任务</h2>\n <ul>\n <li><strong>分类管理: </strong> 收集任务支持分类管理</li>\n <li><strong>设置DDL(截止日期): </strong> 任务截止后不可再提交文件</li>\n <li><strong>限制提交人员: </strong> 非指定的人员(姓名),无法提交文件</li>\n <li><strong>设置模板文件: </strong> 提交者可直接在提交页面下载此文件</li>\n <li><strong>自动重命名: </strong> 提交的文件按填写表单信息进行自动重名(如:姓名-工号.后缀)</li>\n </ul>\n <h2>文件相关</h2>\n <ul>\n <li><strong>上传(提交): </strong>单个/多个</li>\n <li><strong>下载: </strong>单个/多个/按收集任务</li>\n <li><strong>撤回: </strong>用户可以撤回自己提交的文件</li>\n <li><strong>分享: </strong>用户可以将文件下载链接分享给朋友</li>\n <li><strong>模板下载: </strong> 下载任务发布者设置的模板文件</li>\n <li><strong>导出: </strong> 导出提交记录</li>\n </ul>\n </div>\n <div class=\"panel\">\n <h1>相关链接</h1>\n <h2>应用链接相关</h2>\n <ul>\n <li><a href=\"https://docs.ep.sugarat.top\" target=\"_blank\" rel=\"noopener noreferrer\">私有化部署</a></li>\n <li><a target=\"_blank\" href=\"https://ep.sugarat.top\">Easypicker1.0</a></li>\n <li><a target=\"_blank\" href=\"https://ep2.sugarat.top\">Easypicker2.0</a></li>\n </ul>\n <h2>应用源代码 <span style=\"color:grey;font-size:0.8rem;\">(开发者需要的)</span></h2>\n <ul>\n <li><a target=\"_blank\" href=\"https://github.com/ATQQ/EasyPicker-webpack\">Easypicker1.0-客户端</a></li>\n <li><a target=\"_blank\" href=\"https://github.com/ATQQ/easypicker-server\">Easypicker1.0-服务端</a></li>\n </ul>\n <ul>\n <li><a target=\"_blank\" href=\"https://github.com/ATQQ/easypicker2-client\">Easypicker2.0-客户端</a></li>\n <li><a target=\"_blank\" href=\"https://github.com/ATQQ/easypicker2-server\">Easypicker2.0-服务端</a></li>\n </ul>\n <ul>\n <li><a target=\"_blank\" href=\"https://github.com/ATQQ/vite-vue3-template\">Easypicker2.0-客户端模板仓库</a></li>\n <li><a target=\"_blank\" href=\"https://github.com/ATQQ/node-server\">Easypicker2.0-服务端模板仓库</a></li>\n </ul>\n <h2>作者 <span style=\"color:grey;font-size:0.8rem;\">(夹带私货)</span></h2>\n <ul>\n <li><a target=\"_blank\" href=\"https://sugarat.top\">博客</a></li>\n <li><a target=\"_blank\" href=\"https://github.com/ATQQ\">GitHub</a></li>\n <li><a target=\"_blank\" href=\"https://juejin.cn/user/1028798615918983\">掘金</a></li>\n </ul>\n </div>\n <!-- <div class=\"panel\">\n <h1>开发计划</h1>\n <h2>...未完待续</h2>\n </div>\n <div class=\"panel\">\n <h1>涉及技术</h1>\n <h2>...未完待续</h2>\n </div> -->\n </main>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent } from 'vue'\n\nexport default defineComponent({\n setup() {\n return {\n\n }\n },\n})\n</script>\n<style lang=\"scss\" scoped>\nh1,\nh2,\nh3,\nh4 {\n font-weight: 500;\n}\n.about {\n background-image: linear-gradient(120deg, #a1c4fd 0%, #c2e9fb 100%);\n min-height: 100vh;\n}\nmain {\n max-width: 860px;\n margin: 0 auto;\n padding: 20px;\n .panel {\n position: relative;\n margin: 0 auto 10px;\n padding: 16px 20px;\n width: 100%;\n overflow: hidden;\n border-radius: 0.25rem;\n box-shadow: #eee;\n box-sizing: border-box;\n transition: all 0.3s;\n background-color: #fff;\n }\n .logo{\n width: 100%;\n max-width: 520px;\n margin: 0 auto;\n display: block;\n }\n h1 {\n font-size: 1.6rem;\n margin-bottom: 10px;\n }\n h2{\n font-size: 1.3rem;\n margin-bottom: 12px;\n }\n ul,ol{\n margin-left: 20px;\n font-size: 15px;\n margin-bottom: 1em;\n }\n p{\n font-size: 15px;\n margin-bottom: 1em;\n }\n a{\n color: #409eff;\n }\n}\n</style>\n"],"names":["_sfc_main","defineComponent","_withScopeId","n","_pushScopeId","_popScopeId","_hoisted_2","_hoisted_3","_createElementVNode","_hoisted_4","_hoisted_5","_resolveComponent","_openBlock","_createElementBlock","_hoisted_1","_createVNode","_component_router_link","_withCtx","_hoisted_6","_createTextVNode"],"mappings":"qHAyFA,MAAAA,EAAeC,EAAgB,CAC7B,OAAQ,CACN,MAAO,EAGT,CACF,CAAC,EA5FgBC,EAAAC,IAAKC,EAAQ,iBAAA,EAAAD,EAAAA,IAAAE,IAAAF,qBAELG,EAAY,CAAA,MAAA,SAAIC,EAAwDL,EAAA,IAAAM,EAAA,MAAA,CAAA,MAAA,8EAKjFC,EAAAP,EAAG,IAA0BM,EAAA,MAAA,CAAA,MAAA,SAAA,CAAAA,EAAA,KAAA,KAAA,IAAA,EAEfA,EAAA,IAAA,KAAA,4BAAA,QAZ9BE,EAAA,CAAA,MAAA,uoHACIC,EAmFM,aAAA,SAjFEC,EAIM,EAAAC,EAAA,MAAAC,EAAA,CADYN,EAAA,OAAA,KAAA,CAAAA,EAN9B,MAKkGF,EAAA,CAAAS,EAA9EC,EAA8E,CAAA,GAAA,GAAA,EAAA,CAAA,QAAAC,EAAA,IAAA,CALlGV,CAAA,CAAA,KAQY,CAAA,CAAA,CAIA,EAAAE,IAaI,MAA6EC,EAAA,CAAAQ,EAAVV,EAAA,IAAA,KAAA,CAAAW,EAzBnF,sBAyBqE,EAAAJ,EAzBrEC,EAyBqE,CAAA,GAAA,SAAA,EAAA,CAAA,QAAAC,EAAA,IAAA,CAzBrEE,EAAA,MAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,aA2BY,CAAA,CAAA,CAAA"}
1
+ {"version":3,"file":"index-mKO4gpWB.js","sources":["../../src/pages/about/index.vue"],"sourcesContent":["<template>\n <div class=\"about\">\n <main>\n <div class=\"panel\">\n <router-link to=\"/\">\n <img class=\"logo\" src=\"https://img.cdn.sugarat.top/easypicker/EasyPicker.png\">\n </router-link>\n </div>\n <div class=\"panel\">\n <h1>简介</h1>\n <p>在线文件收取助手,帮助用户快速的完成一对多的文件收取</p>\n </div>\n <div class=\"panel\">\n <h1>诞生背景</h1>\n <p>校园学习或者工作场景中会有以下几个场景:</p>\n <ul>\n <li><strong>电子文件:</strong> 班委向同学收取各种实验电子报告</li>\n <li><strong>图片:</strong> 收取各种截图证明/活动照片</li>\n <li>...</li>\n </ul>\n <p>目前最广泛的收取方式为,通过邮箱,QQ,微信等通讯工具传递</p>\n <p>弊端显而易见,不方便整理统计。还占用电脑/手机内存</p>\n <p>为了解决这个问题,此项目应运而生</p>\n <p>当然<span><strong>市面上也有几款类似的办公工具</strong></span> ,功能及使用方式都差不多</p>\n <p>本项目<strong>是 <a href=\"https://github.com/ATQQ/easypicker2-client\">开源</a> 的</strong> </p>\n <p>如有私有化的需求,可自行部署使用(也可 <router-link to=\"/author\">联系作者</router-link> 提供帮助)</p>\n </div>\n <div class=\"panel\">\n <h1>现有功能 <span style=\"color:grey;font-size:0.8rem;\">(用户关心的)</span></h1>\n <h2>收集任务</h2>\n <ul>\n <li><strong>分类管理: </strong> 收集任务支持分类管理</li>\n <li><strong>设置DDL(截止日期): </strong> 任务截止后不可再提交文件</li>\n <li><strong>限制提交人员: </strong> 非指定的人员(姓名),无法提交文件</li>\n <li><strong>设置模板文件: </strong> 提交者可直接在提交页面下载此文件</li>\n <li><strong>自动重命名: </strong> 提交的文件按填写表单信息进行自动重名(如:姓名-工号.后缀)</li>\n </ul>\n <h2>文件相关</h2>\n <ul>\n <li><strong>上传(提交): </strong>单个/多个</li>\n <li><strong>下载: </strong>单个/多个/按收集任务</li>\n <li><strong>撤回: </strong>用户可以撤回自己提交的文件</li>\n <li><strong>分享: </strong>用户可以将文件下载链接分享给朋友</li>\n <li><strong>模板下载: </strong> 下载任务发布者设置的模板文件</li>\n <li><strong>导出: </strong> 导出提交记录</li>\n </ul>\n </div>\n <div class=\"panel\">\n <h1>相关链接</h1>\n <h2>应用链接相关</h2>\n <ul>\n <li><a href=\"https://docs.ep.sugarat.top\" target=\"_blank\" rel=\"noopener noreferrer\">私有化部署</a></li>\n <li><a target=\"_blank\" href=\"https://ep.sugarat.top\">Easypicker1.0</a></li>\n <li><a target=\"_blank\" href=\"https://ep2.sugarat.top\">Easypicker2.0</a></li>\n </ul>\n <h2>应用源代码 <span style=\"color:grey;font-size:0.8rem;\">(开发者需要的)</span></h2>\n <ul>\n <li><a target=\"_blank\" href=\"https://github.com/ATQQ/EasyPicker-webpack\">Easypicker1.0-客户端</a></li>\n <li><a target=\"_blank\" href=\"https://github.com/ATQQ/easypicker-server\">Easypicker1.0-服务端</a></li>\n </ul>\n <ul>\n <li><a target=\"_blank\" href=\"https://github.com/ATQQ/easypicker2-client\">Easypicker2.0-客户端</a></li>\n <li><a target=\"_blank\" href=\"https://github.com/ATQQ/easypicker2-server\">Easypicker2.0-服务端</a></li>\n </ul>\n <ul>\n <li><a target=\"_blank\" href=\"https://github.com/ATQQ/vite-vue3-template\">Easypicker2.0-客户端模板仓库</a></li>\n <li><a target=\"_blank\" href=\"https://github.com/ATQQ/node-server\">Easypicker2.0-服务端模板仓库</a></li>\n </ul>\n <h2>作者 <span style=\"color:grey;font-size:0.8rem;\">(夹带私货)</span></h2>\n <ul>\n <li><a target=\"_blank\" href=\"https://sugarat.top\">博客</a></li>\n <li><a target=\"_blank\" href=\"https://github.com/ATQQ\">GitHub</a></li>\n <li><a target=\"_blank\" href=\"https://juejin.cn/user/1028798615918983\">掘金</a></li>\n </ul>\n </div>\n <!-- <div class=\"panel\">\n <h1>开发计划</h1>\n <h2>...未完待续</h2>\n </div>\n <div class=\"panel\">\n <h1>涉及技术</h1>\n <h2>...未完待续</h2>\n </div> -->\n </main>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent } from 'vue'\n\nexport default defineComponent({\n setup() {\n return {\n\n }\n },\n})\n</script>\n<style lang=\"scss\" scoped>\nh1,\nh2,\nh3,\nh4 {\n font-weight: 500;\n}\n.about {\n background-image: linear-gradient(120deg, #a1c4fd 0%, #c2e9fb 100%);\n min-height: 100vh;\n}\nmain {\n max-width: 860px;\n margin: 0 auto;\n padding: 20px;\n .panel {\n position: relative;\n margin: 0 auto 10px;\n padding: 16px 20px;\n width: 100%;\n overflow: hidden;\n border-radius: 0.25rem;\n box-shadow: #eee;\n box-sizing: border-box;\n transition: all 0.3s;\n background-color: #fff;\n }\n .logo{\n width: 100%;\n max-width: 520px;\n margin: 0 auto;\n display: block;\n }\n h1 {\n font-size: 1.6rem;\n margin-bottom: 10px;\n }\n h2{\n font-size: 1.3rem;\n margin-bottom: 12px;\n }\n ul,ol{\n margin-left: 20px;\n font-size: 15px;\n margin-bottom: 1em;\n }\n p{\n font-size: 15px;\n margin-bottom: 1em;\n }\n a{\n color: #409eff;\n }\n}\n</style>\n"],"names":["_sfc_main","defineComponent","_withScopeId","n","_pushScopeId","_popScopeId","_hoisted_2","_hoisted_3","_createElementVNode","_hoisted_4","_hoisted_5","_resolveComponent","_openBlock","_createElementBlock","_hoisted_1","_createVNode","_component_router_link","_withCtx","_hoisted_6","_createTextVNode"],"mappings":"qHAyFA,MAAAA,EAAeC,EAAgB,CAC7B,OAAQ,CACN,MAAO,EAGT,CACF,CAAC,EA5FgBC,EAAAC,IAAKC,EAAQ,iBAAA,EAAAD,EAAAA,IAAAE,IAAAF,qBAELG,EAAY,CAAA,MAAA,SAAIC,EAAwDL,EAAA,IAAAM,EAAA,MAAA,CAAA,MAAA,8EAKjFC,EAAAP,EAAG,IAA0BM,EAAA,MAAA,CAAA,MAAA,SAAA,CAAAA,EAAA,KAAA,KAAA,IAAA,EAEfA,EAAA,IAAA,KAAA,4BAAA,QAZ9BE,EAAA,CAAA,MAAA,uoHACIC,EAmFM,aAAA,SAjFEC,EAIM,EAAAC,EAAA,MAAAC,EAAA,CADYN,EAAA,OAAA,KAAA,CAAAA,EAN9B,MAKkGF,EAAA,CAAAS,EAA9EC,EAA8E,CAAA,GAAA,GAAA,EAAA,CAAA,QAAAC,EAAA,IAAA,CALlGV,CAAA,CAAA,KAQY,CAAA,CAAA,CAIA,EAAAE,IAaI,MAA6EC,EAAA,CAAAQ,EAAVV,EAAA,IAAA,KAAA,CAAAW,EAzBnF,sBAyBqE,EAAAJ,EAzBrEC,EAyBqE,CAAA,GAAA,SAAA,EAAA,CAAA,QAAAC,EAAA,IAAA,CAzBrEE,EAAA,MAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,aA2BY,CAAA,CAAA,CAAA"}
@@ -1,2 +1,2 @@
1
- import{d as R,u as V,O as J,Z as B,r as y,c_ as j,o as z,bs as g,i as $,a as s,c as r,b as o,j as i,w as u,e as c,F as b,C as A,t as v,D as f,k as F,E as m,y as I,x as M,v as L,_ as T}from"./index-CvlaXQXr.js";import{E as U}from"./el-switch-B8IyK6ZR.js";import"./validator-BESrcCvQ.js";const Z={class:"user"},q={class:"panel"},G={class:"routes"},H={class:"title"},K={class:"path"},P={class:"config-btn"},Q={class:"config-panel"},W=R({__name:"index",setup(X){const w=V(),C=J(()=>w.options.routes.filter(e=>{var t;return(t=e.meta)==null?void 0:t.allowDisabled})),h=B([]);function k(e){g.addDisabledRoute(e.path,!e.disabled).then(()=>{e.disabled=!e.disabled,m.success("切换成功")})}const n=y(!1),{value:p,updateValue:x}=j(),d=y("");function S(){n.value=!0,d.value=JSON.stringify(p.value,null,2)}async function E(){try{const e=JSON.parse(d.value);p.value=e,await x(),n.value=!1,m.success("保存成功")}catch(e){return m.error("JSON 格式错误")}}return z(()=>{for(const e of C.value)g.checkDisabledRoute(e.path).then(t=>{var l;h.push({path:e.path,name:e.name.toString(),title:e.meta.title,disabled:!!((l=t.data)!=null&&l.status)})})}),(e,t)=>{const l=I,D=U,_=M,N=$("json-viewer"),O=L;return s(),r("div",Z,[o("div",q,[i(l,null,{default:u(()=>[c("禁用路由管理")]),_:1}),o("ul",G,[(s(!0),r(b,null,A(h,a=>(s(),r("li",{key:a.name},[i(D,{"model-value":!a.disabled,style:{"--el-switch-on-color":"#13ce66","--el-switch-off-color":"#ff4949"},onChange:Y=>k(a)},null,8,["model-value","onChange"]),o("span",H,v(a.title),1),o("span",K,v(a.path)+v(a.path==="/register"?" 关闭后将同时禁用注册功能":""),1)]))),128))]),i(l,null,{default:u(()=>[c("全局配置管理(JSON)")]),_:1}),o("div",P,[n.value?(s(),r(b,{key:1},[i(_,{size:"small",type:"danger",onClick:t[0]||(t[0]=a=>n.value=!1)},{default:u(()=>[c(" 取消 ")]),_:1}),i(_,{size:"small",type:"success",onClick:E},{default:u(()=>[c(" 保存 ")]),_:1})],64)):(s(),f(_,{key:0,size:"small",type:"primary",onClick:S},{default:u(()=>[c(" 更新 ")]),_:1}))]),o("div",Q,[n.value?(s(),f(O,{key:1,modelValue:d.value,"onUpdate:modelValue":t[1]||(t[1]=a=>d.value=a),autosize:{minRows:2,maxRows:30},type:"textarea"},null,8,["modelValue"])):(s(),f(N,{key:0,value:F(p),"expand-depth":5,copyable:"",boxed:"",sort:""},null,8,["value"]))])])])}}}),se=T(W,[["__scopeId","data-v-1e07da88"]]);export{se as default};
2
- //# sourceMappingURL=index-CYU98hsF.js.map
1
+ import{d as R,u as V,O as J,Z as B,r as y,c_ as j,o as z,bs as g,i as $,a as s,c as r,b as o,j as i,w as u,e as c,F as b,C as A,t as v,D as f,k as F,E as m,y as I,x as M,v as L,_ as T}from"./index-yrncPnXk.js";import{E as U}from"./el-switch-DAReoFaC.js";import"./validator-DG4_rB-x.js";const Z={class:"user"},q={class:"panel"},G={class:"routes"},H={class:"title"},K={class:"path"},P={class:"config-btn"},Q={class:"config-panel"},W=R({__name:"index",setup(X){const w=V(),C=J(()=>w.options.routes.filter(e=>{var t;return(t=e.meta)==null?void 0:t.allowDisabled})),h=B([]);function k(e){g.addDisabledRoute(e.path,!e.disabled).then(()=>{e.disabled=!e.disabled,m.success("切换成功")})}const n=y(!1),{value:p,updateValue:x}=j(),d=y("");function S(){n.value=!0,d.value=JSON.stringify(p.value,null,2)}async function E(){try{const e=JSON.parse(d.value);p.value=e,await x(),n.value=!1,m.success("保存成功")}catch(e){return m.error("JSON 格式错误")}}return z(()=>{for(const e of C.value)g.checkDisabledRoute(e.path).then(t=>{var l;h.push({path:e.path,name:e.name.toString(),title:e.meta.title,disabled:!!((l=t.data)!=null&&l.status)})})}),(e,t)=>{const l=I,D=U,_=M,N=$("json-viewer"),O=L;return s(),r("div",Z,[o("div",q,[i(l,null,{default:u(()=>[c("禁用路由管理")]),_:1}),o("ul",G,[(s(!0),r(b,null,A(h,a=>(s(),r("li",{key:a.name},[i(D,{"model-value":!a.disabled,style:{"--el-switch-on-color":"#13ce66","--el-switch-off-color":"#ff4949"},onChange:Y=>k(a)},null,8,["model-value","onChange"]),o("span",H,v(a.title),1),o("span",K,v(a.path)+v(a.path==="/register"?" 关闭后将同时禁用注册功能":""),1)]))),128))]),i(l,null,{default:u(()=>[c("全局配置管理(JSON)")]),_:1}),o("div",P,[n.value?(s(),r(b,{key:1},[i(_,{size:"small",type:"danger",onClick:t[0]||(t[0]=a=>n.value=!1)},{default:u(()=>[c(" 取消 ")]),_:1}),i(_,{size:"small",type:"success",onClick:E},{default:u(()=>[c(" 保存 ")]),_:1})],64)):(s(),f(_,{key:0,size:"small",type:"primary",onClick:S},{default:u(()=>[c(" 更新 ")]),_:1}))]),o("div",Q,[n.value?(s(),f(O,{key:1,modelValue:d.value,"onUpdate:modelValue":t[1]||(t[1]=a=>d.value=a),autosize:{minRows:2,maxRows:30},type:"textarea"},null,8,["modelValue"])):(s(),f(N,{key:0,value:F(p),"expand-depth":5,copyable:"",boxed:"",sort:""},null,8,["value"]))])])])}}}),se=T(W,[["__scopeId","data-v-1e07da88"]]);export{se as default};
2
+ //# sourceMappingURL=index-my4zFbcM.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-CYU98hsF.js","sources":["../../src/pages/dashboard/manage/config/index.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { ElMessage } from 'element-plus'\nimport { computed, onMounted, reactive, ref } from 'vue'\nimport { useRouter } from 'vue-router'\nimport { SuperOverviewApi } from '@/apis'\nimport { useSiteAllConfig } from '@/composables'\n\nconst $router = useRouter()\nconst routes = computed(() =>\n $router.options.routes.filter(v => v.meta?.allowDisabled),\n)\nconst showRoutes = reactive<\n {\n path: string\n name: string\n title: string\n disabled: boolean\n }[]\n>([])\n\nfunction handleChangeRoute(r: (typeof showRoutes)[0]) {\n SuperOverviewApi.addDisabledRoute(r.path, !r.disabled).then(() => {\n r.disabled = !r.disabled\n ElMessage.success('切换成功')\n })\n}\n\nconst editConfig = ref(false)\nconst { value: jsonData, updateValue: updateJsonData } = useSiteAllConfig()\n\nconst editJSON = ref('')\n\nfunction handleEditConfig() {\n editConfig.value = true\n editJSON.value = JSON.stringify(jsonData.value, null, 2)\n}\nasync function handleSaveConfig() {\n try {\n const data = JSON.parse(editJSON.value)\n jsonData.value = data\n await updateJsonData()\n editConfig.value = false\n ElMessage.success('保存成功')\n }\n catch (e) {\n return ElMessage.error('JSON 格式错误')\n }\n}\nonMounted(() => {\n for (const r of routes.value) {\n SuperOverviewApi.checkDisabledRoute(r.path).then((v) => {\n showRoutes.push({\n path: r.path,\n name: r.name.toString(),\n title: r.meta.title,\n disabled: !!v.data?.status,\n })\n })\n }\n})\n</script>\n\n<template>\n <div class=\"user\">\n <div class=\"panel\">\n <el-divider>禁用路由管理</el-divider>\n <ul class=\"routes\">\n <li v-for=\"r in showRoutes\" :key=\"r.name\">\n <el-switch\n :model-value=\"!r.disabled\" style=\"\n --el-switch-on-color: #13ce66;\n --el-switch-off-color: #ff4949;\n \" @change=\"handleChangeRoute(r)\"\n />\n <span class=\"title\">{{ r.title }}</span>\n <span class=\"path\">{{ r.path }}{{ r.path === '/register' ? ' 关闭后将同时禁用注册功能' : '' }}</span>\n </li>\n </ul>\n <el-divider>全局配置管理(JSON)</el-divider>\n <div class=\"config-btn\">\n <el-button v-if=\"!editConfig\" size=\"small\" type=\"primary\" @click=\"handleEditConfig\">\n 更新\n </el-button>\n <template v-else>\n <el-button size=\"small\" type=\"danger\" @click=\"editConfig = false\">\n 取消\n </el-button>\n <el-button size=\"small\" type=\"success\" @click=\"handleSaveConfig\">\n 保存\n </el-button>\n </template>\n </div>\n <div class=\"config-panel\">\n <json-viewer\n v-if=\"!editConfig\"\n :value=\"jsonData\"\n :expand-depth=\"5\"\n copyable\n boxed\n sort\n />\n <!-- TODO: JSON editor -->\n <el-input\n v-else\n v-model=\"editJSON\"\n :autosize=\"{ minRows: 2, maxRows: 30 }\"\n type=\"textarea\"\n />\n </div>\n </div>\n </div>\n</template>\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\n.routes {\n max-width: 500px;\n margin: 0 auto;\n\n li {\n display: flex;\n padding: 20px;\n align-items: center;\n\n .title {\n font-weight: bold;\n margin: 0 10px;\n }\n }\n}\n.config-btn {\n text-align: center;\n}\n.config-panel {\n max-width: 500px;\n margin: 0 auto;\n}\n</style>\n"],"names":["$router","useRouter","routes","computed","v","_a","showRoutes","reactive","handleChangeRoute","r","SuperOverviewApi","ElMessage","editConfig","ref","jsonData","updateJsonData","useSiteAllConfig","editJSON","handleEditConfig","handleSaveConfig","data","onMounted"],"mappings":"0cAOA,MAAMA,EAAUC,IACVC,EAASC,EAAS,IACtBH,EAAQ,QAAQ,OAAO,OAAYI,GAAA,OAAA,OAAAC,EAAAD,EAAE,OAAF,YAAAC,EAAQ,cAAa,CAAA,EAEpDC,EAAaC,EAOjB,CAAA,CAAE,EAEJ,SAASC,EAAkBC,EAA2B,CACnCC,EAAA,iBAAiBD,EAAE,KAAM,CAACA,EAAE,QAAQ,EAAE,KAAK,IAAM,CAC9DA,EAAA,SAAW,CAACA,EAAE,SAChBE,EAAU,QAAQ,MAAM,CAAA,CACzB,CACH,CAEM,MAAAC,EAAaC,EAAI,EAAK,EACtB,CAAE,MAAOC,EAAU,YAAaC,CAAA,EAAmBC,IAEnDC,EAAWJ,EAAI,EAAE,EAEvB,SAASK,GAAmB,CAC1BN,EAAW,MAAQ,GACnBK,EAAS,MAAQ,KAAK,UAAUH,EAAS,MAAO,KAAM,CAAC,CACzD,CACA,eAAeK,GAAmB,CAC5B,GAAA,CACF,MAAMC,EAAO,KAAK,MAAMH,EAAS,KAAK,EACtCH,EAAS,MAAQM,EACjB,MAAML,EAAe,EACrBH,EAAW,MAAQ,GACnBD,EAAU,QAAQ,MAAM,QAEnB,EAAG,CACD,OAAAA,EAAU,MAAM,WAAW,CACpC,CACF,CACA,OAAAU,EAAU,IAAM,CACH,UAAAZ,KAAKP,EAAO,MACrBQ,EAAiB,mBAAmBD,EAAE,IAAI,EAAE,KAAML,GAAM,OACtDE,EAAW,KAAK,CACd,KAAMG,EAAE,KACR,KAAMA,EAAE,KAAK,SAAS,EACtB,MAAOA,EAAE,KAAK,MACd,SAAU,CAAC,GAACJ,EAAAD,EAAE,OAAF,MAAAC,EAAQ,OAAA,CACrB,CAAA,CACF,CACH,CACD"}
1
+ {"version":3,"file":"index-my4zFbcM.js","sources":["../../src/pages/dashboard/manage/config/index.vue"],"sourcesContent":["<script lang=\"ts\" setup>\nimport { ElMessage } from 'element-plus'\nimport { computed, onMounted, reactive, ref } from 'vue'\nimport { useRouter } from 'vue-router'\nimport { SuperOverviewApi } from '@/apis'\nimport { useSiteAllConfig } from '@/composables'\n\nconst $router = useRouter()\nconst routes = computed(() =>\n $router.options.routes.filter(v => v.meta?.allowDisabled),\n)\nconst showRoutes = reactive<\n {\n path: string\n name: string\n title: string\n disabled: boolean\n }[]\n>([])\n\nfunction handleChangeRoute(r: (typeof showRoutes)[0]) {\n SuperOverviewApi.addDisabledRoute(r.path, !r.disabled).then(() => {\n r.disabled = !r.disabled\n ElMessage.success('切换成功')\n })\n}\n\nconst editConfig = ref(false)\nconst { value: jsonData, updateValue: updateJsonData } = useSiteAllConfig()\n\nconst editJSON = ref('')\n\nfunction handleEditConfig() {\n editConfig.value = true\n editJSON.value = JSON.stringify(jsonData.value, null, 2)\n}\nasync function handleSaveConfig() {\n try {\n const data = JSON.parse(editJSON.value)\n jsonData.value = data\n await updateJsonData()\n editConfig.value = false\n ElMessage.success('保存成功')\n }\n catch (e) {\n return ElMessage.error('JSON 格式错误')\n }\n}\nonMounted(() => {\n for (const r of routes.value) {\n SuperOverviewApi.checkDisabledRoute(r.path).then((v) => {\n showRoutes.push({\n path: r.path,\n name: r.name.toString(),\n title: r.meta.title,\n disabled: !!v.data?.status,\n })\n })\n }\n})\n</script>\n\n<template>\n <div class=\"user\">\n <div class=\"panel\">\n <el-divider>禁用路由管理</el-divider>\n <ul class=\"routes\">\n <li v-for=\"r in showRoutes\" :key=\"r.name\">\n <el-switch\n :model-value=\"!r.disabled\" style=\"\n --el-switch-on-color: #13ce66;\n --el-switch-off-color: #ff4949;\n \" @change=\"handleChangeRoute(r)\"\n />\n <span class=\"title\">{{ r.title }}</span>\n <span class=\"path\">{{ r.path }}{{ r.path === '/register' ? ' 关闭后将同时禁用注册功能' : '' }}</span>\n </li>\n </ul>\n <el-divider>全局配置管理(JSON)</el-divider>\n <div class=\"config-btn\">\n <el-button v-if=\"!editConfig\" size=\"small\" type=\"primary\" @click=\"handleEditConfig\">\n 更新\n </el-button>\n <template v-else>\n <el-button size=\"small\" type=\"danger\" @click=\"editConfig = false\">\n 取消\n </el-button>\n <el-button size=\"small\" type=\"success\" @click=\"handleSaveConfig\">\n 保存\n </el-button>\n </template>\n </div>\n <div class=\"config-panel\">\n <json-viewer\n v-if=\"!editConfig\"\n :value=\"jsonData\"\n :expand-depth=\"5\"\n copyable\n boxed\n sort\n />\n <!-- TODO: JSON editor -->\n <el-input\n v-else\n v-model=\"editJSON\"\n :autosize=\"{ minRows: 2, maxRows: 30 }\"\n type=\"textarea\"\n />\n </div>\n </div>\n </div>\n</template>\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\n.routes {\n max-width: 500px;\n margin: 0 auto;\n\n li {\n display: flex;\n padding: 20px;\n align-items: center;\n\n .title {\n font-weight: bold;\n margin: 0 10px;\n }\n }\n}\n.config-btn {\n text-align: center;\n}\n.config-panel {\n max-width: 500px;\n margin: 0 auto;\n}\n</style>\n"],"names":["$router","useRouter","routes","computed","v","_a","showRoutes","reactive","handleChangeRoute","r","SuperOverviewApi","ElMessage","editConfig","ref","jsonData","updateJsonData","useSiteAllConfig","editJSON","handleEditConfig","handleSaveConfig","data","onMounted"],"mappings":"0cAOA,MAAMA,EAAUC,IACVC,EAASC,EAAS,IACtBH,EAAQ,QAAQ,OAAO,OAAYI,GAAA,OAAA,OAAAC,EAAAD,EAAE,OAAF,YAAAC,EAAQ,cAAa,CAAA,EAEpDC,EAAaC,EAOjB,CAAA,CAAE,EAEJ,SAASC,EAAkBC,EAA2B,CACnCC,EAAA,iBAAiBD,EAAE,KAAM,CAACA,EAAE,QAAQ,EAAE,KAAK,IAAM,CAC9DA,EAAA,SAAW,CAACA,EAAE,SAChBE,EAAU,QAAQ,MAAM,CAAA,CACzB,CACH,CAEM,MAAAC,EAAaC,EAAI,EAAK,EACtB,CAAE,MAAOC,EAAU,YAAaC,CAAA,EAAmBC,IAEnDC,EAAWJ,EAAI,EAAE,EAEvB,SAASK,GAAmB,CAC1BN,EAAW,MAAQ,GACnBK,EAAS,MAAQ,KAAK,UAAUH,EAAS,MAAO,KAAM,CAAC,CACzD,CACA,eAAeK,GAAmB,CAC5B,GAAA,CACF,MAAMC,EAAO,KAAK,MAAMH,EAAS,KAAK,EACtCH,EAAS,MAAQM,EACjB,MAAML,EAAe,EACrBH,EAAW,MAAQ,GACnBD,EAAU,QAAQ,MAAM,QAEnB,EAAG,CACD,OAAAA,EAAU,MAAM,WAAW,CACpC,CACF,CACA,OAAAU,EAAU,IAAM,CACH,UAAAZ,KAAKP,EAAO,MACrBQ,EAAiB,mBAAmBD,EAAE,IAAI,EAAE,KAAML,GAAM,OACtDE,EAAW,KAAK,CACd,KAAMG,EAAE,KACR,KAAMA,EAAE,KAAK,SAAS,EACtB,MAAOA,EAAE,KAAK,MACd,SAAU,CAAC,GAACJ,EAAAD,EAAE,OAAF,MAAAC,EAAQ,OAAA,CACrB,CAAA,CACF,CACH,CACD"}
@@ -1,2 +1,2 @@
1
- import{a4 as b,g as D,d as S,a as s,c as a,b as e,Z as Y,r as z,O as F,o as Q,j as r,w as n,k as E,H as j,a8 as N,a9 as T,e as _,F as k,C as M,t as g,D as m,S as q,E as O,I as U,x as H,v as P,p as R,f as Z,_ as G}from"./index-CvlaXQXr.js";import{E as J,a as K}from"./el-form-item-SCs-OERV.js";import{T as w}from"./tip-BCCd4P_x.js";import{r as W}from"./refresh-Bz5ULfz9.js";import"./isEqual-a1R5cOCU.js";import"./index-BAFXwCno.js";function X(){return b.get("/config/service/overview")}function ee(){return b.get("/config/service/config")}function te(i){return b.put("/config/service/config",i)}const $={getServiceOverview:X,getServiceConfig:ee,updateCfg:te},se=S({name:"CloseBold"}),ae={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},oe=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),ne=[oe];function le(i,p,c,h,f,v){return s(),a("svg",ae,ne)}var re=D(se,[["render",le]]);const ie=S({name:"Select"}),ce={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},de=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),ue=[de];function _e(i,p,c,h,f,v){return s(),a("svg",ce,ue)}var pe=D(ie,[["render",_e]]);const B=i=>(R("data-v-9638922a"),i=i(),Z(),i),fe={class:"user"},ge={class:"panel"},me=B(()=>e("span",null,"服务概况",-1)),he={class:"service-list"},ve=["src","alt"],ye={key:2},ke={class:"error-panel"},Me=B(()=>e("h1",null,"错误信息",-1)),we={class:"error"},xe=B(()=>e("h1",null,"服务相关配置",-1)),Ce={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"},Ee={class:"config-container"},$e={class:"flex",style:{flex:"1"}},be=S({__name:"index",setup(i){const p=Y([{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:"短信服务"}]),c=z(!1),h=F(()=>p.filter(o=>o.errMsg));function f(){c.value||(c.value=!0,$.getServiceOverview().then(o=>{const{data:y}=o;p.forEach(d=>{const{status:u,errMsg:x}=y[d.key];d.status=u,d.errMsg=x}),O.success("服务状态刷新完成"),c.value=!1}))}const v=z([]);function L(){$.getServiceConfig().then(o=>{o.data.forEach(y=>{y.data.forEach(d=>{d.disabled=!0})}),v.value=o.data})}function V(o){$.updateCfg(o).then(()=>{o.disabled=!0,O.success("更新成功"),f()})}return Q(()=>{f(),L()}),(o,y)=>{const d=U,u=H,x=P,A=J,I=K;return s(),a("div",fe,[e("div",ge,[e("div",null,[e("h1",null,[me,r(d,{class:j({loading:c.value}),style:{cursor:"pointer","margin-left":"10px"},onClick:f},{default:n(()=>[r(E(W))]),_:1},8,["class"]),N(e("span",null,"数据加载中...",512),[[T,c.value]])]),r(w,null,{default:n(()=>[_("查看各个服务的运行情况")]),_:1}),e("div",he,[(s(!0),a(k,null,M(p,t=>(s(),a("div",{key:t.key,class:"service-item"},[e("img",{src:t.logo,alt:t.name},null,8,ve),e("p",null,[r(w,null,{default:n(()=>[_(g(t.des),1)]),_:2},1024)]),t.status?(s(),m(u,{key:0,type:"success",size:"small",icon:E(pe),circle:""},null,8,["icon"])):(s(),m(u,{key:1,type:"danger",size:"small",icon:E(re),circle:""},null,8,["icon"])),!t.status&&t.error?(s(),a("p",ye,[r(w,null,{default:n(()=>[_(g(t.error),1)]),_:2},1024)])):q("",!0)]))),128))])]),N(e("div",ke,[Me,(s(!0),a(k,null,M(h.value,t=>(s(),a("p",{key:t.key},[e("strong",null,g(t.name)+":",1),e("span",we,g(t.errMsg),1)]))),128))],512),[[T,h.value.length]]),e("div",null,[xe,r(w,null,{default:n(()=>[_(" 在此面板,配置服务器运行相关参数 "),e("a",Ce,[r(u,{type:"primary",link:""},{default:n(()=>[_("配置手册?")]),_:1})])]),_:1})]),e("div",Ee,[(s(!0),a(k,null,M(v.value,t=>(s(),a("div",{key:t.title,class:"config-panel"},[e("h2",null,g(t.title),1),r(I,{"label-position":"right","label-width":"100px",style:{"max-width":"400px",margin:"0 auto"}},{default:n(()=>[(s(!0),a(k,null,M(t.data,l=>(s(),m(A,{key:l.key,"label-width":"auto",label:l.label||l.key},{default:n(()=>[e("div",$e,[r(x,{modelValue:l.value,"onUpdate:modelValue":C=>l.value=C,disabled:l.disabled},null,8,["modelValue","onUpdate:modelValue","disabled"]),l.disabled?(s(),m(u,{key:0,type:"primary",text:"",onClick:C=>l.disabled=!1},{default:n(()=>[_(" 更新 ")]),_:2},1032,["onClick"])):(s(),m(u,{key:1,type:"success",text:"",onClick:C=>V(l)},{default:n(()=>[_(" 完成 ")]),_:2},1032,["onClick"]))])]),_:2},1032,["label"]))),128))]),_:2},1024)]))),128))])])])}}}),De=G(be,[["__scopeId","data-v-9638922a"]]);export{De as default};
2
- //# sourceMappingURL=index-C1FTaXL2.js.map
1
+ import{a4 as b,g as D,d as S,a as s,c as a,b as e,Z as Y,r as z,O as F,o as Q,j as r,w as n,k as E,H as j,a8 as N,a9 as T,e as _,F as k,C as M,t as g,D as m,S as q,E as O,I as U,x as H,v as P,p as R,f as Z,_ as G}from"./index-yrncPnXk.js";import{E as J,a as K}from"./el-form-item-B08Ira7l.js";import{T as w}from"./tip-BM0xMiq8.js";import{r as W}from"./refresh-CCIG6-IB.js";import"./isEqual-DdkrQbjH.js";import"./index-DjTj_2YG.js";function X(){return b.get("/config/service/overview")}function ee(){return b.get("/config/service/config")}function te(i){return b.put("/config/service/config",i)}const $={getServiceOverview:X,getServiceConfig:ee,updateCfg:te},se=S({name:"CloseBold"}),ae={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},oe=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),ne=[oe];function le(i,p,c,h,f,v){return s(),a("svg",ae,ne)}var re=D(se,[["render",le]]);const ie=S({name:"Select"}),ce={viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg"},de=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),ue=[de];function _e(i,p,c,h,f,v){return s(),a("svg",ce,ue)}var pe=D(ie,[["render",_e]]);const B=i=>(R("data-v-9638922a"),i=i(),Z(),i),fe={class:"user"},ge={class:"panel"},me=B(()=>e("span",null,"服务概况",-1)),he={class:"service-list"},ve=["src","alt"],ye={key:2},ke={class:"error-panel"},Me=B(()=>e("h1",null,"错误信息",-1)),we={class:"error"},xe=B(()=>e("h1",null,"服务相关配置",-1)),Ce={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"},Ee={class:"config-container"},$e={class:"flex",style:{flex:"1"}},be=S({__name:"index",setup(i){const p=Y([{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:"短信服务"}]),c=z(!1),h=F(()=>p.filter(o=>o.errMsg));function f(){c.value||(c.value=!0,$.getServiceOverview().then(o=>{const{data:y}=o;p.forEach(d=>{const{status:u,errMsg:x}=y[d.key];d.status=u,d.errMsg=x}),O.success("服务状态刷新完成"),c.value=!1}))}const v=z([]);function L(){$.getServiceConfig().then(o=>{o.data.forEach(y=>{y.data.forEach(d=>{d.disabled=!0})}),v.value=o.data})}function V(o){$.updateCfg(o).then(()=>{o.disabled=!0,O.success("更新成功"),f()})}return Q(()=>{f(),L()}),(o,y)=>{const d=U,u=H,x=P,A=J,I=K;return s(),a("div",fe,[e("div",ge,[e("div",null,[e("h1",null,[me,r(d,{class:j({loading:c.value}),style:{cursor:"pointer","margin-left":"10px"},onClick:f},{default:n(()=>[r(E(W))]),_:1},8,["class"]),N(e("span",null,"数据加载中...",512),[[T,c.value]])]),r(w,null,{default:n(()=>[_("查看各个服务的运行情况")]),_:1}),e("div",he,[(s(!0),a(k,null,M(p,t=>(s(),a("div",{key:t.key,class:"service-item"},[e("img",{src:t.logo,alt:t.name},null,8,ve),e("p",null,[r(w,null,{default:n(()=>[_(g(t.des),1)]),_:2},1024)]),t.status?(s(),m(u,{key:0,type:"success",size:"small",icon:E(pe),circle:""},null,8,["icon"])):(s(),m(u,{key:1,type:"danger",size:"small",icon:E(re),circle:""},null,8,["icon"])),!t.status&&t.error?(s(),a("p",ye,[r(w,null,{default:n(()=>[_(g(t.error),1)]),_:2},1024)])):q("",!0)]))),128))])]),N(e("div",ke,[Me,(s(!0),a(k,null,M(h.value,t=>(s(),a("p",{key:t.key},[e("strong",null,g(t.name)+":",1),e("span",we,g(t.errMsg),1)]))),128))],512),[[T,h.value.length]]),e("div",null,[xe,r(w,null,{default:n(()=>[_(" 在此面板,配置服务器运行相关参数 "),e("a",Ce,[r(u,{type:"primary",link:""},{default:n(()=>[_("配置手册?")]),_:1})])]),_:1})]),e("div",Ee,[(s(!0),a(k,null,M(v.value,t=>(s(),a("div",{key:t.title,class:"config-panel"},[e("h2",null,g(t.title),1),r(I,{"label-position":"right","label-width":"100px",style:{"max-width":"400px",margin:"0 auto"}},{default:n(()=>[(s(!0),a(k,null,M(t.data,l=>(s(),m(A,{key:l.key,"label-width":"auto",label:l.label||l.key},{default:n(()=>[e("div",$e,[r(x,{modelValue:l.value,"onUpdate:modelValue":C=>l.value=C,disabled:l.disabled},null,8,["modelValue","onUpdate:modelValue","disabled"]),l.disabled?(s(),m(u,{key:0,type:"primary",text:"",onClick:C=>l.disabled=!1},{default:n(()=>[_(" 更新 ")]),_:2},1032,["onClick"])):(s(),m(u,{key:1,type:"success",text:"",onClick:C=>V(l)},{default:n(()=>[_(" 完成 ")]),_:2},1032,["onClick"]))])]),_:2},1032,["label"]))),128))]),_:2},1024)]))),128))])])])}}}),De=G(be,[["__scopeId","data-v-9638922a"]]);export{De as default};
2
+ //# sourceMappingURL=index-q94vR-7W.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-C1FTaXL2.js","sources":["../../src/apis/modules/config.ts","../../node_modules/.pnpm/@element-plus+icons-vue@1.1.4_vue@3.4.31_typescript@4.9.5_/node_modules/@element-plus/icons-vue/dist/es/close-bold.mjs","../../node_modules/.pnpm/@element-plus+icons-vue@1.1.4_vue@3.4.31_typescript@4.9.5_/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","<script lang=\"ts\" setup>\nimport { ElMessage } from 'element-plus'\nimport { computed, onMounted, reactive, ref } from 'vue'\nimport { CloseBold, Refresh, Select } from '@element-plus/icons-vue'\nimport Tip from '../tasks/components/infoPanel/tip.vue'\nimport { ConfigServiceAPI } from '@/apis'\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])\n\nconst loading = ref(false)\nconst showErrorList = computed(() => serviceList.filter(item => item.errMsg))\nfunction refreshStatus() {\n if (loading.value)\n 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([])\nfunction 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}\nfunction 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})\n</script>\n\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 style=\"cursor: pointer; margin-left: 10px\"\n @click=\"refreshStatus\"\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 </Tip>\n </div>\n <div class=\"config-container\">\n <div\n v-for=\"serverItem in serverConfig\"\n :key=\"serverItem.title\"\n class=\"config-panel\"\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 v-for=\"cfgItem in serverItem.data\"\n :key=\"cfgItem.key\"\n label-width=\"auto\"\n :label=\"cfgItem.label || cfgItem.key\"\n >\n <div class=\"flex\" style=\"flex: 1\">\n <el-input\n v-model=\"cfgItem.value\"\n :disabled=\"cfgItem.disabled\"\n />\n <el-button\n v-if=\"cfgItem.disabled\"\n type=\"primary\"\n text\n @click=\"cfgItem.disabled = false\"\n >\n 更新\n </el-button>\n <el-button\n v-else\n type=\"success\"\n text\n @click=\"updateCfg(cfgItem)\"\n >\n 完成\n </el-button>\n </div>\n </el-form-item>\n </el-form>\n </div>\n </div>\n </div>\n </div>\n</template>\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","loading","ref","showErrorList","computed","item","refreshStatus","v","status","errMsg","ElMessage","serverConfig","onMounted"],"mappings":"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","x_google_ignoreList":[1,2]}
1
+ {"version":3,"file":"index-q94vR-7W.js","sources":["../../src/apis/modules/config.ts","../../node_modules/.pnpm/@element-plus+icons-vue@1.1.4_vue@3.4.31_typescript@4.9.5_/node_modules/@element-plus/icons-vue/dist/es/close-bold.mjs","../../node_modules/.pnpm/@element-plus+icons-vue@1.1.4_vue@3.4.31_typescript@4.9.5_/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","<script lang=\"ts\" setup>\nimport { ElMessage } from 'element-plus'\nimport { computed, onMounted, reactive, ref } from 'vue'\nimport { CloseBold, Refresh, Select } from '@element-plus/icons-vue'\nimport Tip from '../tasks/components/infoPanel/tip.vue'\nimport { ConfigServiceAPI } from '@/apis'\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])\n\nconst loading = ref(false)\nconst showErrorList = computed(() => serviceList.filter(item => item.errMsg))\nfunction refreshStatus() {\n if (loading.value)\n 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([])\nfunction 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}\nfunction 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})\n</script>\n\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 style=\"cursor: pointer; margin-left: 10px\"\n @click=\"refreshStatus\"\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 </Tip>\n </div>\n <div class=\"config-container\">\n <div\n v-for=\"serverItem in serverConfig\"\n :key=\"serverItem.title\"\n class=\"config-panel\"\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 v-for=\"cfgItem in serverItem.data\"\n :key=\"cfgItem.key\"\n label-width=\"auto\"\n :label=\"cfgItem.label || cfgItem.key\"\n >\n <div class=\"flex\" style=\"flex: 1\">\n <el-input\n v-model=\"cfgItem.value\"\n :disabled=\"cfgItem.disabled\"\n />\n <el-button\n v-if=\"cfgItem.disabled\"\n type=\"primary\"\n text\n @click=\"cfgItem.disabled = false\"\n >\n 更新\n </el-button>\n <el-button\n v-else\n type=\"success\"\n text\n @click=\"updateCfg(cfgItem)\"\n >\n 完成\n </el-button>\n </div>\n </el-form-item>\n </el-form>\n </div>\n </div>\n </div>\n </div>\n</template>\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","loading","ref","showErrorList","computed","item","refreshStatus","v","status","errMsg","ElMessage","serverConfig","onMounted"],"mappings":"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","x_google_ignoreList":[1,2]}