@sugarat/easypicker2-client 2.7.1 → 2.7.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (174) hide show
  1. package/dist/assets/{data-analysis-B61f8OZD.js → data-analysis-Bnq_VWU8.js} +2 -2
  2. package/dist/assets/{data-analysis-B61f8OZD.js.map → data-analysis-Bnq_VWU8.js.map} +1 -1
  3. package/dist/assets/{data-analysis-legacy-sXkPNcPD.js → data-analysis-legacy-_KcR253K.js} +2 -2
  4. package/dist/assets/{data-analysis-legacy-sXkPNcPD.js.map → data-analysis-legacy-_KcR253K.js.map} +1 -1
  5. package/dist/assets/{data-board-BIN3HXKE.js → data-board-L3s5ouKd.js} +2 -2
  6. package/dist/assets/{data-board-BIN3HXKE.js.map → data-board-L3s5ouKd.js.map} +1 -1
  7. package/dist/assets/{data-board-legacy-mqcredpF.js → data-board-legacy-BFxWeFnQ.js} +2 -2
  8. package/dist/assets/{data-board-legacy-mqcredpF.js.map → data-board-legacy-BFxWeFnQ.js.map} +1 -1
  9. package/dist/assets/{el-date-picker-legacy-CACCtxzL.js → el-date-picker-legacy-Uk9x97L5.js} +2 -2
  10. package/dist/assets/{el-date-picker-legacy-CACCtxzL.js.map → el-date-picker-legacy-Uk9x97L5.js.map} +1 -1
  11. package/dist/assets/{el-date-picker-B-cvGosU.js → el-date-picker-mhY2RJMG.js} +2 -2
  12. package/dist/assets/{el-date-picker-B-cvGosU.js.map → el-date-picker-mhY2RJMG.js.map} +1 -1
  13. package/dist/assets/{el-dialog-C9wNxcPt.js → el-dialog-PRccau6N.js} +2 -2
  14. package/dist/assets/{el-dialog-C9wNxcPt.js.map → el-dialog-PRccau6N.js.map} +1 -1
  15. package/dist/assets/{el-dialog-legacy-CX7a77_4.js → el-dialog-legacy-BRLM43ZY.js} +2 -2
  16. package/dist/assets/{el-dialog-legacy-CX7a77_4.js.map → el-dialog-legacy-BRLM43ZY.js.map} +1 -1
  17. package/dist/assets/{el-dropdown-item-jbdZL0Yj.js → el-dropdown-item-Cr71teRg.js} +2 -2
  18. package/dist/assets/{el-dropdown-item-jbdZL0Yj.js.map → el-dropdown-item-Cr71teRg.js.map} +1 -1
  19. package/dist/assets/{el-dropdown-item-legacy-ChoB2YAN.js → el-dropdown-item-legacy-B0ufpHvy.js} +2 -2
  20. package/dist/assets/{el-dropdown-item-legacy-ChoB2YAN.js.map → el-dropdown-item-legacy-B0ufpHvy.js.map} +1 -1
  21. package/dist/assets/{el-form-item-BhAyaXPT.js → el-form-item-DOwM4Mv8.js} +2 -2
  22. package/dist/assets/{el-form-item-BhAyaXPT.js.map → el-form-item-DOwM4Mv8.js.map} +1 -1
  23. package/dist/assets/{el-form-item-legacy-DNwgpXzk.js → el-form-item-legacy-CvQy7syv.js} +2 -2
  24. package/dist/assets/{el-form-item-legacy-DNwgpXzk.js.map → el-form-item-legacy-CvQy7syv.js.map} +1 -1
  25. package/dist/assets/{el-loading-D5D_2rI_.js → el-loading-DNzUD85e.js} +2 -2
  26. package/dist/assets/{el-loading-D5D_2rI_.js.map → el-loading-DNzUD85e.js.map} +1 -1
  27. package/dist/assets/{el-loading-legacy-CCDpn-BT.js → el-loading-legacy-B3RLcjwN.js} +2 -2
  28. package/dist/assets/{el-loading-legacy-CCDpn-BT.js.map → el-loading-legacy-B3RLcjwN.js.map} +1 -1
  29. package/dist/assets/{el-pagination-DRV4WevC.js → el-pagination-iCicJonH.js} +2 -2
  30. package/dist/assets/{el-pagination-DRV4WevC.js.map → el-pagination-iCicJonH.js.map} +1 -1
  31. package/dist/assets/{el-pagination-legacy-CAxn6D5y.js → el-pagination-legacy-Bf-Bzx7n.js} +2 -2
  32. package/dist/assets/{el-pagination-legacy-CAxn6D5y.js.map → el-pagination-legacy-Bf-Bzx7n.js.map} +1 -1
  33. package/dist/assets/{el-progress-GDfl1hgb.js → el-progress-1hLO5hs0.js} +2 -2
  34. package/dist/assets/{el-progress-GDfl1hgb.js.map → el-progress-1hLO5hs0.js.map} +1 -1
  35. package/dist/assets/{el-progress-legacy-C5K3FqLs.js → el-progress-legacy-QmxDezwR.js} +2 -2
  36. package/dist/assets/{el-progress-legacy-C5K3FqLs.js.map → el-progress-legacy-QmxDezwR.js.map} +1 -1
  37. package/dist/assets/{el-select-B9z8VvNb.js → el-select-CVjQdC39.js} +2 -2
  38. package/dist/assets/{el-select-B9z8VvNb.js.map → el-select-CVjQdC39.js.map} +1 -1
  39. package/dist/assets/{el-select-legacy-BI1YK9Jv.js → el-select-legacy-DSGgSQYX.js} +2 -2
  40. package/dist/assets/{el-select-legacy-BI1YK9Jv.js.map → el-select-legacy-DSGgSQYX.js.map} +1 -1
  41. package/dist/assets/{el-switch-oOC_byJv.js → el-switch-B76QvbJN.js} +2 -2
  42. package/dist/assets/{el-switch-oOC_byJv.js.map → el-switch-B76QvbJN.js.map} +1 -1
  43. package/dist/assets/{el-switch-legacy-CG_sT4XS.js → el-switch-legacy-CHkEgavQ.js} +2 -2
  44. package/dist/assets/{el-switch-legacy-CG_sT4XS.js.map → el-switch-legacy-CHkEgavQ.js.map} +1 -1
  45. package/dist/assets/{el-tab-pane-NvGl_NI0.js → el-tab-pane-BhVByOfe.js} +2 -2
  46. package/dist/assets/{el-tab-pane-NvGl_NI0.js.map → el-tab-pane-BhVByOfe.js.map} +1 -1
  47. package/dist/assets/{el-tab-pane-legacy-usarmKVQ.js → el-tab-pane-legacy-DMdhUCHY.js} +2 -2
  48. package/dist/assets/{el-tab-pane-legacy-usarmKVQ.js.map → el-tab-pane-legacy-DMdhUCHY.js.map} +1 -1
  49. package/dist/assets/{el-table-column-legacy-BWpnrxZl.js → el-table-column-legacy-N_oU_-0P.js} +2 -2
  50. package/dist/assets/{el-table-column-legacy-BWpnrxZl.js.map → el-table-column-legacy-N_oU_-0P.js.map} +1 -1
  51. package/dist/assets/{el-table-column-JBAymLKS.js → el-table-column-tkbtgrcD.js} +2 -2
  52. package/dist/assets/{el-table-column-JBAymLKS.js.map → el-table-column-tkbtgrcD.js.map} +1 -1
  53. package/dist/assets/{index-Dj5caLYF.js → index-3yen43So.js} +2 -2
  54. package/dist/assets/{index-Dj5caLYF.js.map → index-3yen43So.js.map} +1 -1
  55. package/dist/assets/{index-CHIrZkSk.js → index-9zuSLjpa.js} +2 -2
  56. package/dist/assets/{index-CHIrZkSk.js.map → index-9zuSLjpa.js.map} +1 -1
  57. package/dist/assets/{index-MTuc20rr.js → index-B-6zRvEX.js} +2 -2
  58. package/dist/assets/{index-MTuc20rr.js.map → index-B-6zRvEX.js.map} +1 -1
  59. package/dist/assets/{index-DCwrZmag.js → index-BN1f1UM3.js} +2 -2
  60. package/dist/assets/{index-DCwrZmag.js.map → index-BN1f1UM3.js.map} +1 -1
  61. package/dist/assets/{index-Byzqqd86.js → index-BUmkgniE.js} +2 -2
  62. package/dist/assets/{index-Byzqqd86.js.map → index-BUmkgniE.js.map} +1 -1
  63. package/dist/assets/index-BbfnoqK6.js +2 -0
  64. package/dist/assets/index-BbfnoqK6.js.map +1 -0
  65. package/dist/assets/index-C3IckGNL.js +2 -0
  66. package/dist/assets/index-C3IckGNL.js.map +1 -0
  67. package/dist/assets/index-CYAf_OTx.js +40 -0
  68. package/dist/assets/index-CYAf_OTx.js.map +1 -0
  69. package/dist/assets/{index-B0mV367i.js → index-Cb6-p2hG.js} +2 -2
  70. package/dist/assets/{index-B0mV367i.js.map → index-Cb6-p2hG.js.map} +1 -1
  71. package/dist/assets/index-Cfg2jkVw.css +1 -0
  72. package/dist/assets/{index-BOep9MOB.css → index-CkMvb3wF.css} +1 -1
  73. package/dist/assets/{index-CKIiHmIf.js → index-Cl4G6EQO.js} +2 -2
  74. package/dist/assets/{index-CKIiHmIf.js.map → index-Cl4G6EQO.js.map} +1 -1
  75. package/dist/assets/index-CnbFxlpi.css +1 -0
  76. package/dist/assets/{index-C0niS8Vv.js → index-Cyb1OjRN.js} +2 -2
  77. package/dist/assets/{index-C0niS8Vv.js.map → index-Cyb1OjRN.js.map} +1 -1
  78. package/dist/assets/{index-Dxy6ycv8.js → index-D7aZxhM6.js} +2 -2
  79. package/dist/assets/{index-Dxy6ycv8.js.map → index-D7aZxhM6.js.map} +1 -1
  80. package/dist/assets/{index-DDGYm9L-.js → index-DI41wbky.js} +2 -2
  81. package/dist/assets/{index-DDGYm9L-.js.map → index-DI41wbky.js.map} +1 -1
  82. package/dist/assets/{index-Cno4i6lg.js → index-DcOjlpKI.js} +2 -2
  83. package/dist/assets/{index-Cno4i6lg.js.map → index-DcOjlpKI.js.map} +1 -1
  84. package/dist/assets/{index-bD-fr3vy.js → index-DjO-nUIS.js} +2 -2
  85. package/dist/assets/{index-bD-fr3vy.js.map → index-DjO-nUIS.js.map} +1 -1
  86. package/dist/assets/index-DnxF29eG.css +1 -0
  87. package/dist/assets/{index-BUF8Xxid.js → index-DrKX0cCg.js} +2 -2
  88. package/dist/assets/{index-BUF8Xxid.js.map → index-DrKX0cCg.js.map} +1 -1
  89. package/dist/assets/index-F3S0vKOW.js +2 -0
  90. package/dist/assets/{index-DEiWe2Bk.js.map → index-F3S0vKOW.js.map} +1 -1
  91. package/dist/assets/{index-DRHl9KU8.js → index-I78Ur1Md.js} +2 -2
  92. package/dist/assets/{index-DRHl9KU8.js.map → index-I78Ur1Md.js.map} +1 -1
  93. package/dist/assets/{index-fb67TYJ8.js → index-L0LtrfyP.js} +2 -2
  94. package/dist/assets/{index-fb67TYJ8.js.map → index-L0LtrfyP.js.map} +1 -1
  95. package/dist/assets/index-lTmxAqnX.js +2 -0
  96. package/dist/assets/index-lTmxAqnX.js.map +1 -0
  97. package/dist/assets/{index-legacy-2G5G7SiF.js → index-legacy-BJNK4MqF.js} +2 -2
  98. package/dist/assets/index-legacy-BJNK4MqF.js.map +1 -0
  99. package/dist/assets/{index-legacy-DC5-MYgp.js → index-legacy-BLlk8iq-.js} +13 -8
  100. package/dist/assets/index-legacy-BLlk8iq-.js.map +1 -0
  101. package/dist/assets/{index-legacy-DV-KwU0c.js → index-legacy-BmWYm3m_.js} +2 -2
  102. package/dist/assets/{index-legacy-DV-KwU0c.js.map → index-legacy-BmWYm3m_.js.map} +1 -1
  103. package/dist/assets/index-legacy-Bnp7569A.js +2 -0
  104. package/dist/assets/{index-legacy-DM_G6GXF.js.map → index-legacy-Bnp7569A.js.map} +1 -1
  105. package/dist/assets/{index-legacy-DmJc-LaA.js → index-legacy-CQ24Si-w.js} +2 -2
  106. package/dist/assets/{index-legacy-DmJc-LaA.js.map → index-legacy-CQ24Si-w.js.map} +1 -1
  107. package/dist/assets/{index-legacy-l7TP3X8w.js → index-legacy-CT1nF7s9.js} +2 -2
  108. package/dist/assets/{index-legacy-l7TP3X8w.js.map → index-legacy-CT1nF7s9.js.map} +1 -1
  109. package/dist/assets/{index-legacy-K0GPuvtR.js → index-legacy-CeVzo60P.js} +2 -2
  110. package/dist/assets/{index-legacy-K0GPuvtR.js.map → index-legacy-CeVzo60P.js.map} +1 -1
  111. package/dist/assets/index-legacy-Cf0w_PNA.js +2 -0
  112. package/dist/assets/index-legacy-Cf0w_PNA.js.map +1 -0
  113. package/dist/assets/{index-legacy-B1WwgC0S.js → index-legacy-DZSQUiaj.js} +2 -2
  114. package/dist/assets/{index-legacy-B1WwgC0S.js.map → index-legacy-DZSQUiaj.js.map} +1 -1
  115. package/dist/assets/{index-legacy-Dmi-DBK0.js → index-legacy-D_K0eXFb.js} +2 -2
  116. package/dist/assets/{index-legacy-Dmi-DBK0.js.map → index-legacy-D_K0eXFb.js.map} +1 -1
  117. package/dist/assets/{index-legacy-DUrsbgNe.js → index-legacy-Da3YyHW_.js} +2 -2
  118. package/dist/assets/{index-legacy-DUrsbgNe.js.map → index-legacy-Da3YyHW_.js.map} +1 -1
  119. package/dist/assets/{index-legacy-DiNZXmUs.js → index-legacy-Da4s_D85.js} +2 -2
  120. package/dist/assets/{index-legacy-DiNZXmUs.js.map → index-legacy-Da4s_D85.js.map} +1 -1
  121. package/dist/assets/{index-legacy-DP3Q6cDA.js → index-legacy-DhNaKknk.js} +2 -2
  122. package/dist/assets/{index-legacy-DP3Q6cDA.js.map → index-legacy-DhNaKknk.js.map} +1 -1
  123. package/dist/assets/{index-legacy-BN-W2P7-.js → index-legacy-Dm1CXog1.js} +2 -2
  124. package/dist/assets/{index-legacy-BN-W2P7-.js.map → index-legacy-Dm1CXog1.js.map} +1 -1
  125. package/dist/assets/{index-legacy-gQf30T09.js → index-legacy-DpNNn-Dy.js} +2 -2
  126. package/dist/assets/index-legacy-DpNNn-Dy.js.map +1 -0
  127. package/dist/assets/{index-legacy-BwpR0DP9.js → index-legacy-PkF4cKK9.js} +2 -2
  128. package/dist/assets/{index-legacy-BwpR0DP9.js.map → index-legacy-PkF4cKK9.js.map} +1 -1
  129. package/dist/assets/{index-legacy-BdJHr4yN.js → index-legacy-QHDmYAB8.js} +2 -2
  130. package/dist/assets/{index-legacy-BdJHr4yN.js.map → index-legacy-QHDmYAB8.js.map} +1 -1
  131. package/dist/assets/{index-legacy-BZb5uhBF.js → index-legacy-_M1-0586.js} +2 -2
  132. package/dist/assets/{index-legacy-BZb5uhBF.js.map → index-legacy-_M1-0586.js.map} +1 -1
  133. package/dist/assets/{index-legacy-Cbyz8WHA.js → index-legacy-m0dvnwGi.js} +2 -2
  134. package/dist/assets/{index-legacy-Cbyz8WHA.js.map → index-legacy-m0dvnwGi.js.map} +1 -1
  135. package/dist/assets/{index-legacy-Qibh5ehq.js → index-legacy-vRS79jKS.js} +2 -2
  136. package/dist/assets/{index-legacy-Qibh5ehq.js.map → index-legacy-vRS79jKS.js.map} +1 -1
  137. package/dist/assets/{isEqual-pN6Ih18F.js → isEqual-BHpVKj_X.js} +2 -2
  138. package/dist/assets/{isEqual-pN6Ih18F.js.map → isEqual-BHpVKj_X.js.map} +1 -1
  139. package/dist/assets/{isEqual-legacy-DVLZyo95.js → isEqual-legacy-BWUPR8bV.js} +2 -2
  140. package/dist/assets/{isEqual-legacy-DVLZyo95.js.map → isEqual-legacy-BWUPR8bV.js.map} +1 -1
  141. package/dist/assets/{refresh-BTQLK-UW.js → refresh-DPuuDO9h.js} +2 -2
  142. package/dist/assets/{refresh-BTQLK-UW.js.map → refresh-DPuuDO9h.js.map} +1 -1
  143. package/dist/assets/{refresh-legacy-Cv7RM_sm.js → refresh-legacy-DOts-8Wc.js} +2 -2
  144. package/dist/assets/{refresh-legacy-Cv7RM_sm.js.map → refresh-legacy-DOts-8Wc.js.map} +1 -1
  145. package/dist/assets/{tip-DQo-E_Pu.js → tip-CH7nBVXc.js} +2 -2
  146. package/dist/assets/{tip-DQo-E_Pu.js.map → tip-CH7nBVXc.js.map} +1 -1
  147. package/dist/assets/{tip-legacy-Ci60OMi9.js → tip-legacy-DiCk_qP1.js} +2 -2
  148. package/dist/assets/{tip-legacy-Ci60OMi9.js.map → tip-legacy-DiCk_qP1.js.map} +1 -1
  149. package/dist/assets/validator-BMr-jeUB.js +2 -0
  150. package/dist/assets/{validator-CZlzBDi2.js.map → validator-BMr-jeUB.js.map} +1 -1
  151. package/dist/assets/validator-legacy-CacjPWoF.js +2 -0
  152. package/dist/assets/{validator-legacy-D-pC1hkO.js.map → validator-legacy-CacjPWoF.js.map} +1 -1
  153. package/dist/index.html +2 -2
  154. package/package.json +3 -4
  155. package/dist/assets/index-1eHw6sEI.css +0 -1
  156. package/dist/assets/index-BG1GuMIu.css +0 -1
  157. package/dist/assets/index-BxsJs6HZ.js +0 -2
  158. package/dist/assets/index-BxsJs6HZ.js.map +0 -1
  159. package/dist/assets/index-ChQZKkse.css +0 -1
  160. package/dist/assets/index-D80lTVeV.js +0 -36
  161. package/dist/assets/index-D80lTVeV.js.map +0 -1
  162. package/dist/assets/index-DEiWe2Bk.js +0 -2
  163. package/dist/assets/index-DJnltRnr.js +0 -2
  164. package/dist/assets/index-DJnltRnr.js.map +0 -1
  165. package/dist/assets/index-DMIqQLOE.js +0 -2
  166. package/dist/assets/index-DMIqQLOE.js.map +0 -1
  167. package/dist/assets/index-legacy-2G5G7SiF.js.map +0 -1
  168. package/dist/assets/index-legacy-Chw6iyCz.js +0 -2
  169. package/dist/assets/index-legacy-Chw6iyCz.js.map +0 -1
  170. package/dist/assets/index-legacy-DC5-MYgp.js.map +0 -1
  171. package/dist/assets/index-legacy-DM_G6GXF.js +0 -2
  172. package/dist/assets/index-legacy-gQf30T09.js.map +0 -1
  173. package/dist/assets/validator-CZlzBDi2.js +0 -2
  174. package/dist/assets/validator-legacy-D-pC1hkO.js +0 -2
@@ -1 +1 @@
1
- {"version":3,"file":"index-Dxy6ycv8.js","sources":["../../src/apis/modules/wish.ts","../../src/pages/dashboard/manage/wish/index.vue"],"sourcesContent":["import { WishStatus } from '@/constants'\nimport ajax from '../ajax'\n\nfunction addWish(wish: Partial<WishApiTypes.Wish>): WishApiTypes.addWish {\n return ajax.post('/wish/add', wish)\n}\n\nfunction findAllWish(): WishApiTypes.allWishData {\n return ajax.get('/wish/all')\n}\n\nfunction updateWishStatus(\n id: string,\n status: WishStatus\n): WishApiTypes.updateWish {\n return ajax.put('/wish/update', { id, status })\n}\n\nfunction updateWishDes(\n id: string,\n title: string,\n des: string\n): WishApiTypes.updateWish {\n return ajax.put(`/wish/update/${id}`, { title, des })\n}\nexport default {\n addWish,\n findAllWish,\n updateWishStatus,\n updateWishDes\n}\n","<script lang=\"ts\" setup>\nimport { ElMessage } from 'element-plus'\nimport {\n computed,\n onMounted,\n reactive,\n ref,\n} from 'vue'\nimport { Search } from '@element-plus/icons-vue'\nimport { WishApi } from '@/apis'\nimport { formatDate } from '@/utils/stringUtil'\nimport { WishStatus } from '@/constants'\nimport { useIsMobile } from '@/composables'\n\nconst wishes = reactive<WishApiTypes.WishItem[]>([])\nfunction refreshWishes() {\n WishApi.findAllWish().then((v) => {\n wishes.splice(0, wishes.length, ...v.data)\n })\n}\n\n// 筛选状态\nconst filterLogType = ref(-1)\nconst searchWord = ref('')\nconst logTypeList = reactive([\n {\n label: '待审核',\n type: WishStatus.REVIEW,\n },\n {\n label: '待开始',\n type: WishStatus.WAIT,\n },\n {\n label: '关闭',\n type: WishStatus.CLOSE,\n },\n {\n label: '已上线',\n type: WishStatus.END,\n },\n {\n label: '开发中',\n type: WishStatus.START,\n },\n])\n\nconst filterWishes = computed(() => wishes\n .filter(v => v.status === filterLogType.value || filterLogType.value === -1)\n .filter((v) => {\n const {\n createDate,\n title,\n des,\n contact,\n } = v\n if (searchWord.value.length === 0)\n return true\n return `${formatDate(new Date(createDate))} ${title} ${des} ${contact}`.includes(searchWord.value)\n }))\n\n// 分页\nconst pageSize = ref(10)\nfunction handleSizeChange(v: number) {\n pageSize.value = v\n}\nconst pageCount = computed(() => {\n const t = Math.ceil(filterWishes.value.length / pageSize.value)\n return t\n})\nconst pageCurrent = ref(1)\nconst pageWishes = computed(() => {\n const start = (pageCurrent.value - 1) * pageSize.value\n const end = (pageCurrent.value) * pageSize.value\n return filterWishes.value.slice(start, end)\n})\nfunction handlePageChange(idx: number) {\n pageCurrent.value = idx\n}\n\n// 状态修改\nconst showWishStatusDialog = ref(false)\nconst selectWishId = ref('')\nconst selectStatus = ref(WishStatus.REVIEW)\nconst wishStatusList = logTypeList\nfunction handleChangeStatus(wishId: string, status: WishStatus) {\n selectWishId.value = wishId\n selectStatus.value = status\n showWishStatusDialog.value = true\n}\nfunction handleSaveStatus() {\n const wish = wishes.find(v => v.id === selectWishId.value)\n wish.status = selectStatus.value\n showWishStatusDialog.value = false\n WishApi\n .updateWishStatus(selectWishId.value, selectStatus.value)\n .then(() => {\n ElMessage.success('修改成功')\n })\n}\n\n// 描述信息修改\nconst formLabelWidth = '80px'\nconst desVisible = ref(false)\nconst formData = reactive({\n title: '',\n des: '',\n})\nfunction handleRewriteDes(id: string, title: string, des: string) {\n selectWishId.value = id\n formData.title = title\n formData.des = des\n desVisible.value = true\n}\nfunction handleUpdateWish() {\n const wish = wishes.find(v => v.id === selectWishId.value)\n WishApi\n .updateWishDes(selectWishId.value, formData.title, formData.des)\n .then(() => {\n desVisible.value = false\n wish.title = formData.title\n wish.des = formData.des\n ElMessage.success('修改成功')\n })\n}\nonMounted(() => {\n refreshWishes()\n})\n\nconst isMobile = useIsMobile()\n</script>\n\n<template>\n <div class=\"user\">\n <div class=\"panel\">\n <div class=\"p10 log-filter\">\n <span class=\"item\">\n <span class=\"label\">状态</span>\n <el-select v-model=\"filterLogType\" size=\"default\" placeholder=\"请选择筛选状态\">\n <el-option label=\"全部\" :value=\"-1\" />\n <el-option v-for=\"(item, idx) in logTypeList\" :key=\"idx\" :label=\"item.label\" :value=\"item.type\" />\n </el-select>\n </span>\n <span class=\"item\">\n <el-input v-model=\"searchWord\" size=\"default\" clearable placeholder=\"请输入要检索的内容\" :prefix-icon=\"Search\" />\n </span>\n </div>\n <el-table\n height=\"550\" stripe border :default-sort=\"{ prop: 'date', order: 'descending' }\" :data=\"pageWishes\"\n style=\"width: 100%\"\n >\n <el-table-column sortable prop=\"createDate\" label=\"提交时间\" width=\"190\">\n <template #default=\"scope\">\n {{ scope.row.createDate && formatDate(new Date(scope.row.createDate)) }}\n </template>\n </el-table-column>\n <el-table-column prop=\"title\" label=\"标题\" width=\"120\" />\n <el-table-column prop=\"des\" label=\"详细描述\" />\n <el-table-column prop=\"contact\" label=\"联系方式\" />\n <el-table-column prop=\"status\" label=\"状态\">\n <template #default=\"scope\">\n {{ logTypeList.find(v => v.type === scope.row.status).label }}\n </template>\n </el-table-column>\n <el-table-column fixed=\"right\" label=\"操作\" width=\"100\">\n <template #default=\"scope\">\n <div class=\"text-btn-list\">\n <el-button type=\"primary\" text size=\"small\" @click=\"handleChangeStatus(scope.row.id, scope.row.status)\">\n 修改状态\n </el-button>\n <el-button\n type=\"primary\" text size=\"small\"\n @click=\"handleRewriteDes(scope.row.id, scope.row.title, scope.row.des)\"\n >\n 修改描述\n </el-button>\n </div>\n </template>\n </el-table-column>\n </el-table>\n <div class=\"flex fc p10\">\n <el-pagination\n :current-page=\"pageCurrent\" background :page-count=\"pageCount\" :page-sizes=\"[10, 50, 100, 200]\"\n :page-size=\"pageSize\" :total=\"filterWishes.length\" layout=\"total, sizes, prev, pager, next, jumper\"\n @current-change=\"handlePageChange\" @size-change=\"handleSizeChange\"\n />\n </div>\n </div>\n <!-- 状态修改弹窗 -->\n <el-dialog v-model=\"showWishStatusDialog\" :fullscreen=\"isMobile\" center title=\"状态修改\">\n <div class=\"tc\">\n <el-select v-model=\"selectStatus\" placeholder=\"请选择新状态\">\n <el-option v-for=\"s in wishStatusList\" :key=\"s.type\" :label=\"s.label\" :value=\"s.type\" />\n </el-select>\n </div>\n <template #footer>\n <span class=\"dialog-footer\">\n <el-button @click=\"showWishStatusDialog = false\">取 消</el-button>\n <el-button type=\"primary\" @click=\"handleSaveStatus\">确 定</el-button>\n </span>\n </template>\n </el-dialog>\n\n <!-- 需求描述更新弹窗 -->\n <el-dialog v-model=\"desVisible\" title=\"需求信息\" :fullscreen=\"isMobile\">\n <el-form :model=\"formData\">\n <el-form-item label=\"需求\" :label-width=\"formLabelWidth\">\n <el-input v-model=\"formData.title\" placeholder=\"一句简单明了的话概括一下\" />\n </el-form-item>\n <el-form-item label=\"详细描述\" :label-width=\"formLabelWidth\">\n <el-input v-model=\"formData.des\" placeholder=\"用朴素的话语进一步描述你的需求\" type=\"textarea\" />\n </el-form-item>\n </el-form>\n <template #footer>\n <span class=\"dialog-footer\">\n <el-button @click=\"desVisible = false\">取 消</el-button>\n <el-button type=\"primary\" @click=\"handleUpdateWish\">确 定</el-button>\n </span>\n </template>\n </el-dialog>\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 .log-filter {\n justify-content: center;\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.log-filter {\n display: flex;\n flex-wrap: wrap;\n\n .item {\n margin-right: 10px;\n margin-bottom: 10px;\n\n .label {\n margin-right: 10px;\n font-size: 12px;\n }\n }\n}\n\n.text-btn-list {\n display: flex;\n flex-wrap: wrap;\n\n button {\n margin-left: 0;\n }\n}\n</style>\n"],"names":["addWish","wish","ajax","findAllWish","updateWishStatus","id","status","updateWishDes","title","des","WishApi","formLabelWidth","wishes","reactive","refreshWishes","v","filterLogType","ref","searchWord","logTypeList","WishStatus","filterWishes","computed","createDate","contact","formatDate","pageSize","handleSizeChange","pageCount","pageCurrent","pageWishes","start","end","handlePageChange","idx","showWishStatusDialog","selectWishId","selectStatus","wishStatusList","handleChangeStatus","wishId","handleSaveStatus","ElMessage","desVisible","formData","handleRewriteDes","handleUpdateWish","onMounted","isMobile","useIsMobile"],"mappings":"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"}
1
+ {"version":3,"file":"index-D7aZxhM6.js","sources":["../../src/apis/modules/wish.ts","../../src/pages/dashboard/manage/wish/index.vue"],"sourcesContent":["import { WishStatus } from '@/constants'\nimport ajax from '../ajax'\n\nfunction addWish(wish: Partial<WishApiTypes.Wish>): WishApiTypes.addWish {\n return ajax.post('/wish/add', wish)\n}\n\nfunction findAllWish(): WishApiTypes.allWishData {\n return ajax.get('/wish/all')\n}\n\nfunction updateWishStatus(\n id: string,\n status: WishStatus\n): WishApiTypes.updateWish {\n return ajax.put('/wish/update', { id, status })\n}\n\nfunction updateWishDes(\n id: string,\n title: string,\n des: string\n): WishApiTypes.updateWish {\n return ajax.put(`/wish/update/${id}`, { title, des })\n}\nexport default {\n addWish,\n findAllWish,\n updateWishStatus,\n updateWishDes\n}\n","<script lang=\"ts\" setup>\nimport { ElMessage } from 'element-plus'\nimport {\n computed,\n onMounted,\n reactive,\n ref,\n} from 'vue'\nimport { Search } from '@element-plus/icons-vue'\nimport { WishApi } from '@/apis'\nimport { formatDate } from '@/utils/stringUtil'\nimport { WishStatus } from '@/constants'\nimport { useIsMobile } from '@/composables'\n\nconst wishes = reactive<WishApiTypes.WishItem[]>([])\nfunction refreshWishes() {\n WishApi.findAllWish().then((v) => {\n wishes.splice(0, wishes.length, ...v.data)\n })\n}\n\n// 筛选状态\nconst filterLogType = ref(-1)\nconst searchWord = ref('')\nconst logTypeList = reactive([\n {\n label: '待审核',\n type: WishStatus.REVIEW,\n },\n {\n label: '待开始',\n type: WishStatus.WAIT,\n },\n {\n label: '关闭',\n type: WishStatus.CLOSE,\n },\n {\n label: '已上线',\n type: WishStatus.END,\n },\n {\n label: '开发中',\n type: WishStatus.START,\n },\n])\n\nconst filterWishes = computed(() => wishes\n .filter(v => v.status === filterLogType.value || filterLogType.value === -1)\n .filter((v) => {\n const {\n createDate,\n title,\n des,\n contact,\n } = v\n if (searchWord.value.length === 0)\n return true\n return `${formatDate(new Date(createDate))} ${title} ${des} ${contact}`.includes(searchWord.value)\n }))\n\n// 分页\nconst pageSize = ref(10)\nfunction handleSizeChange(v: number) {\n pageSize.value = v\n}\nconst pageCount = computed(() => {\n const t = Math.ceil(filterWishes.value.length / pageSize.value)\n return t\n})\nconst pageCurrent = ref(1)\nconst pageWishes = computed(() => {\n const start = (pageCurrent.value - 1) * pageSize.value\n const end = (pageCurrent.value) * pageSize.value\n return filterWishes.value.slice(start, end)\n})\nfunction handlePageChange(idx: number) {\n pageCurrent.value = idx\n}\n\n// 状态修改\nconst showWishStatusDialog = ref(false)\nconst selectWishId = ref('')\nconst selectStatus = ref(WishStatus.REVIEW)\nconst wishStatusList = logTypeList\nfunction handleChangeStatus(wishId: string, status: WishStatus) {\n selectWishId.value = wishId\n selectStatus.value = status\n showWishStatusDialog.value = true\n}\nfunction handleSaveStatus() {\n const wish = wishes.find(v => v.id === selectWishId.value)\n wish.status = selectStatus.value\n showWishStatusDialog.value = false\n WishApi\n .updateWishStatus(selectWishId.value, selectStatus.value)\n .then(() => {\n ElMessage.success('修改成功')\n })\n}\n\n// 描述信息修改\nconst formLabelWidth = '80px'\nconst desVisible = ref(false)\nconst formData = reactive({\n title: '',\n des: '',\n})\nfunction handleRewriteDes(id: string, title: string, des: string) {\n selectWishId.value = id\n formData.title = title\n formData.des = des\n desVisible.value = true\n}\nfunction handleUpdateWish() {\n const wish = wishes.find(v => v.id === selectWishId.value)\n WishApi\n .updateWishDes(selectWishId.value, formData.title, formData.des)\n .then(() => {\n desVisible.value = false\n wish.title = formData.title\n wish.des = formData.des\n ElMessage.success('修改成功')\n })\n}\nonMounted(() => {\n refreshWishes()\n})\n\nconst isMobile = useIsMobile()\n</script>\n\n<template>\n <div class=\"user\">\n <div class=\"panel\">\n <div class=\"p10 log-filter\">\n <span class=\"item\">\n <span class=\"label\">状态</span>\n <el-select v-model=\"filterLogType\" size=\"default\" placeholder=\"请选择筛选状态\">\n <el-option label=\"全部\" :value=\"-1\" />\n <el-option v-for=\"(item, idx) in logTypeList\" :key=\"idx\" :label=\"item.label\" :value=\"item.type\" />\n </el-select>\n </span>\n <span class=\"item\">\n <el-input v-model=\"searchWord\" size=\"default\" clearable placeholder=\"请输入要检索的内容\" :prefix-icon=\"Search\" />\n </span>\n </div>\n <el-table\n height=\"550\" stripe border :default-sort=\"{ prop: 'date', order: 'descending' }\" :data=\"pageWishes\"\n style=\"width: 100%\"\n >\n <el-table-column sortable prop=\"createDate\" label=\"提交时间\" width=\"190\">\n <template #default=\"scope\">\n {{ scope.row.createDate && formatDate(new Date(scope.row.createDate)) }}\n </template>\n </el-table-column>\n <el-table-column prop=\"title\" label=\"标题\" width=\"120\" />\n <el-table-column prop=\"des\" label=\"详细描述\" />\n <el-table-column prop=\"contact\" label=\"联系方式\" />\n <el-table-column prop=\"status\" label=\"状态\">\n <template #default=\"scope\">\n {{ logTypeList.find(v => v.type === scope.row.status).label }}\n </template>\n </el-table-column>\n <el-table-column fixed=\"right\" label=\"操作\" width=\"100\">\n <template #default=\"scope\">\n <div class=\"text-btn-list\">\n <el-button type=\"primary\" text size=\"small\" @click=\"handleChangeStatus(scope.row.id, scope.row.status)\">\n 修改状态\n </el-button>\n <el-button\n type=\"primary\" text size=\"small\"\n @click=\"handleRewriteDes(scope.row.id, scope.row.title, scope.row.des)\"\n >\n 修改描述\n </el-button>\n </div>\n </template>\n </el-table-column>\n </el-table>\n <div class=\"flex fc p10\">\n <el-pagination\n :current-page=\"pageCurrent\" background :page-count=\"pageCount\" :page-sizes=\"[10, 50, 100, 200]\"\n :page-size=\"pageSize\" :total=\"filterWishes.length\" layout=\"total, sizes, prev, pager, next, jumper\"\n @current-change=\"handlePageChange\" @size-change=\"handleSizeChange\"\n />\n </div>\n </div>\n <!-- 状态修改弹窗 -->\n <el-dialog v-model=\"showWishStatusDialog\" :fullscreen=\"isMobile\" center title=\"状态修改\">\n <div class=\"tc\">\n <el-select v-model=\"selectStatus\" placeholder=\"请选择新状态\">\n <el-option v-for=\"s in wishStatusList\" :key=\"s.type\" :label=\"s.label\" :value=\"s.type\" />\n </el-select>\n </div>\n <template #footer>\n <span class=\"dialog-footer\">\n <el-button @click=\"showWishStatusDialog = false\">取 消</el-button>\n <el-button type=\"primary\" @click=\"handleSaveStatus\">确 定</el-button>\n </span>\n </template>\n </el-dialog>\n\n <!-- 需求描述更新弹窗 -->\n <el-dialog v-model=\"desVisible\" title=\"需求信息\" :fullscreen=\"isMobile\">\n <el-form :model=\"formData\">\n <el-form-item label=\"需求\" :label-width=\"formLabelWidth\">\n <el-input v-model=\"formData.title\" placeholder=\"一句简单明了的话概括一下\" />\n </el-form-item>\n <el-form-item label=\"详细描述\" :label-width=\"formLabelWidth\">\n <el-input v-model=\"formData.des\" placeholder=\"用朴素的话语进一步描述你的需求\" type=\"textarea\" />\n </el-form-item>\n </el-form>\n <template #footer>\n <span class=\"dialog-footer\">\n <el-button @click=\"desVisible = false\">取 消</el-button>\n <el-button type=\"primary\" @click=\"handleUpdateWish\">确 定</el-button>\n </span>\n </template>\n </el-dialog>\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 .log-filter {\n justify-content: center;\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.log-filter {\n display: flex;\n flex-wrap: wrap;\n\n .item {\n margin-right: 10px;\n margin-bottom: 10px;\n\n .label {\n margin-right: 10px;\n font-size: 12px;\n }\n }\n}\n\n.text-btn-list {\n display: flex;\n flex-wrap: wrap;\n\n button {\n margin-left: 0;\n }\n}\n</style>\n"],"names":["addWish","wish","ajax","findAllWish","updateWishStatus","id","status","updateWishDes","title","des","WishApi","formLabelWidth","wishes","reactive","refreshWishes","v","filterLogType","ref","searchWord","logTypeList","WishStatus","filterWishes","computed","createDate","contact","formatDate","pageSize","handleSizeChange","pageCount","pageCurrent","pageWishes","start","end","handlePageChange","idx","showWishStatusDialog","selectWishId","selectStatus","wishStatusList","handleChangeStatus","wishId","handleSaveStatus","ElMessage","desVisible","formData","handleRewriteDes","handleUpdateWish","onMounted","isMobile","useIsMobile"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{d as a,a1 as c,a as n,c as p,b as o,t as d,k as r,p as _,f as i,_ as l}from"./index-D80lTVeV.js";const u=e=>(_("data-v-bb4c1a74"),e=e(),i(),e),h={class:"not-found"},f=u(()=>o("h1",null,"EasyPicker | 轻取",-1)),m=a({__name:"index",setup(e){const t=c(),s=()=>{window.location.href="https://docs.ep.sugarat.top/"};return(b,k)=>(n(),p("div",h,[f,o("h2",null,d(r(t).query.title)+":已被网站管理员禁用",1),o("h3",null,[o("a",{onClick:s},"查看应用介绍")])]))}}),I=l(m,[["__scopeId","data-v-bb4c1a74"]]);export{I as default};
2
- //# sourceMappingURL=index-DDGYm9L-.js.map
1
+ import{d as a,a1 as c,a as n,c as p,b as o,t as d,k as r,p as _,f as i,_ as l}from"./index-CYAf_OTx.js";const u=e=>(_("data-v-bb4c1a74"),e=e(),i(),e),h={class:"not-found"},f=u(()=>o("h1",null,"EasyPicker | 轻取",-1)),m=a({__name:"index",setup(e){const t=c(),s=()=>{window.location.href="https://docs.ep.sugarat.top/"};return(b,k)=>(n(),p("div",h,[f,o("h2",null,d(r(t).query.title)+":已被网站管理员禁用",1),o("h3",null,[o("a",{onClick:s},"查看应用介绍")])]))}}),I=l(m,[["__scopeId","data-v-bb4c1a74"]]);export{I as default};
2
+ //# sourceMappingURL=index-DI41wbky.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-DDGYm9L-.js","sources":["../../src/pages/disabled/index.vue"],"sourcesContent":["<template>\n <div class=\"not-found\">\n <h1>EasyPicker | 轻取</h1>\n <h2>{{ $route.query.title }}:已被网站管理员禁用</h2>\n <h3><a @click=\"handleToHome\">查看应用介绍</a></h3>\n </div>\n</template>\n<script lang=\"ts\" setup>\nimport { useRoute } from 'vue-router'\n\nconst $route = useRoute()\nconst handleToHome = () => {\n window.location.href = 'https://docs.ep.sugarat.top/'\n}\n</script>\n<style lang=\"scss\" scoped>\n.not-found {\n font-family: 'Avenir', Helvetica, Arial, sans-serif;\n background-image: linear-gradient(to top, #30cfd0 0%, #330867 100%);\n min-height: 100vh;\n}\nh1,\nh2,\nh3,\na {\n color: aliceblue;\n text-align: center;\n font-weight: lighter;\n}\na {\n margin-left: 10px;\n border-bottom: 2px solid aliceblue;\n cursor: pointer;\n}\nh1 {\n font-size: 48px;\n padding-top: 10%;\n}\nh2 {\n font-size: 30px;\n padding-top: 2vh;\n}\nh3 {\n font-size: 28px;\n padding-top: 1vh;\n}\n</style>\n"],"names":["$route","useRoute","handleToHome"],"mappings":"oPAUA,MAAMA,EAASC,IACTC,EAAe,IAAM,CACzB,OAAO,SAAS,KAAO,8BAAA"}
1
+ {"version":3,"file":"index-DI41wbky.js","sources":["../../src/pages/disabled/index.vue"],"sourcesContent":["<template>\n <div class=\"not-found\">\n <h1>EasyPicker | 轻取</h1>\n <h2>{{ $route.query.title }}:已被网站管理员禁用</h2>\n <h3><a @click=\"handleToHome\">查看应用介绍</a></h3>\n </div>\n</template>\n<script lang=\"ts\" setup>\nimport { useRoute } from 'vue-router'\n\nconst $route = useRoute()\nconst handleToHome = () => {\n window.location.href = 'https://docs.ep.sugarat.top/'\n}\n</script>\n<style lang=\"scss\" scoped>\n.not-found {\n font-family: 'Avenir', Helvetica, Arial, sans-serif;\n background-image: linear-gradient(to top, #30cfd0 0%, #330867 100%);\n min-height: 100vh;\n}\nh1,\nh2,\nh3,\na {\n color: aliceblue;\n text-align: center;\n font-weight: lighter;\n}\na {\n margin-left: 10px;\n border-bottom: 2px solid aliceblue;\n cursor: pointer;\n}\nh1 {\n font-size: 48px;\n padding-top: 10%;\n}\nh2 {\n font-size: 30px;\n padding-top: 2vh;\n}\nh3 {\n font-size: 28px;\n padding-top: 1vh;\n}\n</style>\n"],"names":["$route","useRoute","handleToHome"],"mappings":"oPAUA,MAAMA,EAASC,IACTC,EAAe,IAAM,CACzB,OAAO,SAAS,KAAO,8BAAA"}
@@ -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-D80lTVeV.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-Cno4i6lg.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-CYAf_OTx.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-DcOjlpKI.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-Cno4i6lg.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-DcOjlpKI.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{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-D80lTVeV.js";import{E as J,a as K}from"./el-form-item-BhAyaXPT.js";import{T as w}from"./tip-DQo-E_Pu.js";import{r as W}from"./refresh-BTQLK-UW.js";import"./isEqual-pN6Ih18F.js";import"./index-BUF8Xxid.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-bD-fr3vy.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-CYAf_OTx.js";import{E as J,a as K}from"./el-form-item-DOwM4Mv8.js";import{T as w}from"./tip-CH7nBVXc.js";import{r as W}from"./refresh-DPuuDO9h.js";import"./isEqual-BHpVKj_X.js";import"./index-DrKX0cCg.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-DjO-nUIS.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-bD-fr3vy.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-DjO-nUIS.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]}
@@ -0,0 +1 @@
1
+ @charset "UTF-8";.center[data-v-805533e3]{text-align:center;margin-top:10px}.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}
@@ -1,2 +1,2 @@
1
- import{bP as s,bT as p,cM as f,O as c,k as d,bu as g,r as w,bN as y}from"./index-D80lTVeV.js";const b=(t,o)=>{if(!s)return!1;const e={undefined:"overflow",true:"overflow-y",false:"overflow-x"}[String(o)],r=p(t,e);return["scroll","auto","overlay"].some(a=>r.includes(a))},C=(t,o)=>{if(!s)return;let e=t;for(;e;){if([window,document,document.documentElement].includes(e))return window;if(b(e,o))return e;e=e.parentNode}return e};let l;const D=t=>{var o;if(!s)return 0;if(l!==void 0)return l;const e=document.createElement("div");e.className="".concat(t,"-scrollbar__wrap"),e.style.visibility="hidden",e.style.width="100px",e.style.position="absolute",e.style.top="-9999px",document.body.appendChild(e);const r=e.offsetWidth;e.style.overflow="scroll";const a=document.createElement("div");a.style.width="100%",e.appendChild(a);const n=a.offsetWidth;return(o=e.parentNode)==null||o.removeChild(e),l=r-n,l};function x(t,o){if(!s)return;if(!o){t.scrollTop=0;return}const e=[];let r=o.offsetParent;for(;r!==null&&t!==r&&t.contains(r);)e.push(r),r=r.offsetParent;const a=o.offsetTop+e.reduce((m,h)=>m+h.offsetTop,0),n=a+o.offsetHeight,i=t.scrollTop,u=i+t.clientHeight;a<i?t.scrollTop=a:n>u&&(t.scrollTop=n-t.clientHeight)}var v={name:"en",el:{colorpicker:{confirm:"OK",clear:"Clear",defaultLabel:"color picker",description:"current color is {color}. press enter to select a new color."},datepicker:{now:"Now",today:"Today",cancel:"Cancel",clear:"Clear",confirm:"OK",dateTablePrompt:"Use the arrow keys and enter to select the day of the month",monthTablePrompt:"Use the arrow keys and enter to select the month",yearTablePrompt:"Use the arrow keys and enter to select the year",selectedDate:"Selected date",selectDate:"Select date",selectTime:"Select time",startDate:"Start Date",startTime:"Start Time",endDate:"End Date",endTime:"End Time",prevYear:"Previous Year",nextYear:"Next Year",prevMonth:"Previous Month",nextMonth:"Next Month",year:"",month1:"January",month2:"February",month3:"March",month4:"April",month5:"May",month6:"June",month7:"July",month8:"August",month9:"September",month10:"October",month11:"November",month12:"December",week:"week",weeks:{sun:"Sun",mon:"Mon",tue:"Tue",wed:"Wed",thu:"Thu",fri:"Fri",sat:"Sat"},weeksFull:{sun:"Sunday",mon:"Monday",tue:"Tuesday",wed:"Wednesday",thu:"Thursday",fri:"Friday",sat:"Saturday"},months:{jan:"Jan",feb:"Feb",mar:"Mar",apr:"Apr",may:"May",jun:"Jun",jul:"Jul",aug:"Aug",sep:"Sep",oct:"Oct",nov:"Nov",dec:"Dec"}},inputNumber:{decrease:"decrease number",increase:"increase number"},select:{loading:"Loading",noMatch:"No matching data",noData:"No data",placeholder:"Select"},dropdown:{toggleDropdown:"Toggle Dropdown"},cascader:{noMatch:"No matching data",loading:"Loading",placeholder:"Select",noData:"No data"},pagination:{goto:"Go to",pagesize:"/page",total:"Total {total}",pageClassifier:"",deprecationWarning:"Deprecated usages detected, please refer to the el-pagination documentation for more details"},dialog:{close:"Close this dialog"},drawer:{close:"Close this dialog"},messagebox:{title:"Message",confirm:"OK",cancel:"Cancel",error:"Illegal input",close:"Close this dialog"},upload:{deleteTip:"press delete to remove",delete:"Delete",preview:"Preview",continue:"Continue"},slider:{defaultLabel:"slider between {min} and {max}",defaultRangeStartLabel:"pick start value",defaultRangeEndLabel:"pick end value"},table:{emptyText:"No Data",confirmFilter:"Confirm",resetFilter:"Reset",clearFilter:"All",sumText:"Sum"},tree:{emptyText:"No Data"},transfer:{noMatch:"No matching data",noData:"No data",titles:["List 1","List 2"],filterPlaceholder:"Enter keyword",noCheckedFormat:"{total} items",hasCheckedFormat:"{checked}/{total} checked"},image:{error:"FAILED"},pageHeader:{title:"Back"},popconfirm:{confirmButtonText:"Yes",cancelButtonText:"No"}}};const T=t=>(o,e)=>S(o,e,d(t)),S=(t,o,e)=>y(e,t,t).replace(/\{(\w+)\}/g,(r,a)=>{var n;return"".concat((n=o==null?void 0:o[a])!=null?n:"{".concat(a,"}"))}),N=t=>{const o=c(()=>d(t).name),e=g(t)?t:w(t);return{lang:o,locale:e,t:T(t)}},M=()=>{const t=f("locale");return N(c(()=>t.value||v))};export{D as a,C as g,x as s,M as u};
2
- //# sourceMappingURL=index-BUF8Xxid.js.map
1
+ import{bP as s,bT as p,cM as f,O as c,k as d,bu as g,r as w,bN as y}from"./index-CYAf_OTx.js";const b=(t,o)=>{if(!s)return!1;const e={undefined:"overflow",true:"overflow-y",false:"overflow-x"}[String(o)],r=p(t,e);return["scroll","auto","overlay"].some(a=>r.includes(a))},C=(t,o)=>{if(!s)return;let e=t;for(;e;){if([window,document,document.documentElement].includes(e))return window;if(b(e,o))return e;e=e.parentNode}return e};let l;const D=t=>{var o;if(!s)return 0;if(l!==void 0)return l;const e=document.createElement("div");e.className="".concat(t,"-scrollbar__wrap"),e.style.visibility="hidden",e.style.width="100px",e.style.position="absolute",e.style.top="-9999px",document.body.appendChild(e);const r=e.offsetWidth;e.style.overflow="scroll";const a=document.createElement("div");a.style.width="100%",e.appendChild(a);const n=a.offsetWidth;return(o=e.parentNode)==null||o.removeChild(e),l=r-n,l};function x(t,o){if(!s)return;if(!o){t.scrollTop=0;return}const e=[];let r=o.offsetParent;for(;r!==null&&t!==r&&t.contains(r);)e.push(r),r=r.offsetParent;const a=o.offsetTop+e.reduce((m,h)=>m+h.offsetTop,0),n=a+o.offsetHeight,i=t.scrollTop,u=i+t.clientHeight;a<i?t.scrollTop=a:n>u&&(t.scrollTop=n-t.clientHeight)}var v={name:"en",el:{colorpicker:{confirm:"OK",clear:"Clear",defaultLabel:"color picker",description:"current color is {color}. press enter to select a new color."},datepicker:{now:"Now",today:"Today",cancel:"Cancel",clear:"Clear",confirm:"OK",dateTablePrompt:"Use the arrow keys and enter to select the day of the month",monthTablePrompt:"Use the arrow keys and enter to select the month",yearTablePrompt:"Use the arrow keys and enter to select the year",selectedDate:"Selected date",selectDate:"Select date",selectTime:"Select time",startDate:"Start Date",startTime:"Start Time",endDate:"End Date",endTime:"End Time",prevYear:"Previous Year",nextYear:"Next Year",prevMonth:"Previous Month",nextMonth:"Next Month",year:"",month1:"January",month2:"February",month3:"March",month4:"April",month5:"May",month6:"June",month7:"July",month8:"August",month9:"September",month10:"October",month11:"November",month12:"December",week:"week",weeks:{sun:"Sun",mon:"Mon",tue:"Tue",wed:"Wed",thu:"Thu",fri:"Fri",sat:"Sat"},weeksFull:{sun:"Sunday",mon:"Monday",tue:"Tuesday",wed:"Wednesday",thu:"Thursday",fri:"Friday",sat:"Saturday"},months:{jan:"Jan",feb:"Feb",mar:"Mar",apr:"Apr",may:"May",jun:"Jun",jul:"Jul",aug:"Aug",sep:"Sep",oct:"Oct",nov:"Nov",dec:"Dec"}},inputNumber:{decrease:"decrease number",increase:"increase number"},select:{loading:"Loading",noMatch:"No matching data",noData:"No data",placeholder:"Select"},dropdown:{toggleDropdown:"Toggle Dropdown"},cascader:{noMatch:"No matching data",loading:"Loading",placeholder:"Select",noData:"No data"},pagination:{goto:"Go to",pagesize:"/page",total:"Total {total}",pageClassifier:"",deprecationWarning:"Deprecated usages detected, please refer to the el-pagination documentation for more details"},dialog:{close:"Close this dialog"},drawer:{close:"Close this dialog"},messagebox:{title:"Message",confirm:"OK",cancel:"Cancel",error:"Illegal input",close:"Close this dialog"},upload:{deleteTip:"press delete to remove",delete:"Delete",preview:"Preview",continue:"Continue"},slider:{defaultLabel:"slider between {min} and {max}",defaultRangeStartLabel:"pick start value",defaultRangeEndLabel:"pick end value"},table:{emptyText:"No Data",confirmFilter:"Confirm",resetFilter:"Reset",clearFilter:"All",sumText:"Sum"},tree:{emptyText:"No Data"},transfer:{noMatch:"No matching data",noData:"No data",titles:["List 1","List 2"],filterPlaceholder:"Enter keyword",noCheckedFormat:"{total} items",hasCheckedFormat:"{checked}/{total} checked"},image:{error:"FAILED"},pageHeader:{title:"Back"},popconfirm:{confirmButtonText:"Yes",cancelButtonText:"No"}}};const T=t=>(o,e)=>S(o,e,d(t)),S=(t,o,e)=>y(e,t,t).replace(/\{(\w+)\}/g,(r,a)=>{var n;return"".concat((n=o==null?void 0:o[a])!=null?n:"{".concat(a,"}"))}),N=t=>{const o=c(()=>d(t).name),e=g(t)?t:w(t);return{lang:o,locale:e,t:T(t)}},M=()=>{const t=f("locale");return N(c(()=>t.value||v))};export{D as a,C as g,x as s,M as u};
2
+ //# sourceMappingURL=index-DrKX0cCg.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-BUF8Xxid.js","sources":["../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/utils/dom/scroll.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/locale/lang/en.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/hooks/use-locale/index.mjs"],"sourcesContent":["import { isClient } from '@vueuse/core';\nimport { getStyle } from './style.mjs';\n\nconst isScroll = (el, isVertical) => {\n if (!isClient)\n return false;\n const key = {\n undefined: \"overflow\",\n true: \"overflow-y\",\n false: \"overflow-x\"\n }[String(isVertical)];\n const overflow = getStyle(el, key);\n return [\"scroll\", \"auto\", \"overlay\"].some((s) => overflow.includes(s));\n};\nconst getScrollContainer = (el, isVertical) => {\n if (!isClient)\n return;\n let parent = el;\n while (parent) {\n if ([window, document, document.documentElement].includes(parent))\n return window;\n if (isScroll(parent, isVertical))\n return parent;\n parent = parent.parentNode;\n }\n return parent;\n};\nlet scrollBarWidth;\nconst getScrollBarWidth = (namespace) => {\n var _a;\n if (!isClient)\n return 0;\n if (scrollBarWidth !== void 0)\n return scrollBarWidth;\n const outer = document.createElement(\"div\");\n outer.className = `${namespace}-scrollbar__wrap`;\n outer.style.visibility = \"hidden\";\n outer.style.width = \"100px\";\n outer.style.position = \"absolute\";\n outer.style.top = \"-9999px\";\n document.body.appendChild(outer);\n const widthNoScroll = outer.offsetWidth;\n outer.style.overflow = \"scroll\";\n const inner = document.createElement(\"div\");\n inner.style.width = \"100%\";\n outer.appendChild(inner);\n const widthWithScroll = inner.offsetWidth;\n (_a = outer.parentNode) == null ? void 0 : _a.removeChild(outer);\n scrollBarWidth = widthNoScroll - widthWithScroll;\n return scrollBarWidth;\n};\nfunction scrollIntoView(container, selected) {\n if (!isClient)\n return;\n if (!selected) {\n container.scrollTop = 0;\n return;\n }\n const offsetParents = [];\n let pointer = selected.offsetParent;\n while (pointer !== null && container !== pointer && container.contains(pointer)) {\n offsetParents.push(pointer);\n pointer = pointer.offsetParent;\n }\n const top = selected.offsetTop + offsetParents.reduce((prev, curr) => prev + curr.offsetTop, 0);\n const bottom = top + selected.offsetHeight;\n const viewRectTop = container.scrollTop;\n const viewRectBottom = viewRectTop + container.clientHeight;\n if (top < viewRectTop) {\n container.scrollTop = top;\n } else if (bottom > viewRectBottom) {\n container.scrollTop = bottom - container.clientHeight;\n }\n}\n\nexport { getScrollBarWidth, getScrollContainer, isScroll, scrollIntoView };\n//# sourceMappingURL=scroll.mjs.map\n","var English = {\n name: \"en\",\n el: {\n colorpicker: {\n confirm: \"OK\",\n clear: \"Clear\",\n defaultLabel: \"color picker\",\n description: \"current color is {color}. press enter to select a new color.\"\n },\n datepicker: {\n now: \"Now\",\n today: \"Today\",\n cancel: \"Cancel\",\n clear: \"Clear\",\n confirm: \"OK\",\n dateTablePrompt: \"Use the arrow keys and enter to select the day of the month\",\n monthTablePrompt: \"Use the arrow keys and enter to select the month\",\n yearTablePrompt: \"Use the arrow keys and enter to select the year\",\n selectedDate: \"Selected date\",\n selectDate: \"Select date\",\n selectTime: \"Select time\",\n startDate: \"Start Date\",\n startTime: \"Start Time\",\n endDate: \"End Date\",\n endTime: \"End Time\",\n prevYear: \"Previous Year\",\n nextYear: \"Next Year\",\n prevMonth: \"Previous Month\",\n nextMonth: \"Next Month\",\n year: \"\",\n month1: \"January\",\n month2: \"February\",\n month3: \"March\",\n month4: \"April\",\n month5: \"May\",\n month6: \"June\",\n month7: \"July\",\n month8: \"August\",\n month9: \"September\",\n month10: \"October\",\n month11: \"November\",\n month12: \"December\",\n week: \"week\",\n weeks: {\n sun: \"Sun\",\n mon: \"Mon\",\n tue: \"Tue\",\n wed: \"Wed\",\n thu: \"Thu\",\n fri: \"Fri\",\n sat: \"Sat\"\n },\n weeksFull: {\n sun: \"Sunday\",\n mon: \"Monday\",\n tue: \"Tuesday\",\n wed: \"Wednesday\",\n thu: \"Thursday\",\n fri: \"Friday\",\n sat: \"Saturday\"\n },\n months: {\n jan: \"Jan\",\n feb: \"Feb\",\n mar: \"Mar\",\n apr: \"Apr\",\n may: \"May\",\n jun: \"Jun\",\n jul: \"Jul\",\n aug: \"Aug\",\n sep: \"Sep\",\n oct: \"Oct\",\n nov: \"Nov\",\n dec: \"Dec\"\n }\n },\n inputNumber: {\n decrease: \"decrease number\",\n increase: \"increase number\"\n },\n select: {\n loading: \"Loading\",\n noMatch: \"No matching data\",\n noData: \"No data\",\n placeholder: \"Select\"\n },\n dropdown: {\n toggleDropdown: \"Toggle Dropdown\"\n },\n cascader: {\n noMatch: \"No matching data\",\n loading: \"Loading\",\n placeholder: \"Select\",\n noData: \"No data\"\n },\n pagination: {\n goto: \"Go to\",\n pagesize: \"/page\",\n total: \"Total {total}\",\n pageClassifier: \"\",\n deprecationWarning: \"Deprecated usages detected, please refer to the el-pagination documentation for more details\"\n },\n dialog: {\n close: \"Close this dialog\"\n },\n drawer: {\n close: \"Close this dialog\"\n },\n messagebox: {\n title: \"Message\",\n confirm: \"OK\",\n cancel: \"Cancel\",\n error: \"Illegal input\",\n close: \"Close this dialog\"\n },\n upload: {\n deleteTip: \"press delete to remove\",\n delete: \"Delete\",\n preview: \"Preview\",\n continue: \"Continue\"\n },\n slider: {\n defaultLabel: \"slider between {min} and {max}\",\n defaultRangeStartLabel: \"pick start value\",\n defaultRangeEndLabel: \"pick end value\"\n },\n table: {\n emptyText: \"No Data\",\n confirmFilter: \"Confirm\",\n resetFilter: \"Reset\",\n clearFilter: \"All\",\n sumText: \"Sum\"\n },\n tree: {\n emptyText: \"No Data\"\n },\n transfer: {\n noMatch: \"No matching data\",\n noData: \"No data\",\n titles: [\"List 1\", \"List 2\"],\n filterPlaceholder: \"Enter keyword\",\n noCheckedFormat: \"{total} items\",\n hasCheckedFormat: \"{checked}/{total} checked\"\n },\n image: {\n error: \"FAILED\"\n },\n pageHeader: {\n title: \"Back\"\n },\n popconfirm: {\n confirmButtonText: \"Yes\",\n cancelButtonText: \"No\"\n }\n }\n};\n\nexport { English as default };\n//# sourceMappingURL=en.mjs.map\n","import { unref, computed, isRef, ref } from 'vue';\nimport { get } from 'lodash-unified';\nimport English from '../../locale/lang/en.mjs';\nimport { useGlobalConfig } from '../use-global-config/index.mjs';\n\nconst buildTranslator = (locale) => (path, option) => translate(path, option, unref(locale));\nconst translate = (path, option, locale) => get(locale, path, path).replace(/\\{(\\w+)\\}/g, (_, key) => {\n var _a;\n return `${(_a = option == null ? void 0 : option[key]) != null ? _a : `{${key}}`}`;\n});\nconst buildLocaleContext = (locale) => {\n const lang = computed(() => unref(locale).name);\n const localeRef = isRef(locale) ? locale : ref(locale);\n return {\n lang,\n locale: localeRef,\n t: buildTranslator(locale)\n };\n};\nconst useLocale = () => {\n const locale = useGlobalConfig(\"locale\");\n return buildLocaleContext(computed(() => locale.value || English));\n};\n\nexport { buildLocaleContext, buildTranslator, translate, useLocale };\n//# sourceMappingURL=index.mjs.map\n"],"names":["isScroll","el","isVertical","isClient","key","overflow","getStyle","s","getScrollContainer","parent","scrollBarWidth","getScrollBarWidth","namespace","_a","outer","widthNoScroll","inner","widthWithScroll","scrollIntoView","container","selected","offsetParents","pointer","top","prev","curr","bottom","viewRectTop","viewRectBottom","English","buildTranslator","locale","path","option","translate","unref","get","_","buildLocaleContext","lang","computed","localeRef","isRef","ref","useLocale","useGlobalConfig"],"mappings":"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","x_google_ignoreList":[0,1,2]}
1
+ {"version":3,"file":"index-DrKX0cCg.js","sources":["../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/utils/dom/scroll.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/locale/lang/en.mjs","../../node_modules/.pnpm/element-plus@2.2.13_vue@3.4.31_typescript@4.9.5_/node_modules/element-plus/es/hooks/use-locale/index.mjs"],"sourcesContent":["import { isClient } from '@vueuse/core';\nimport { getStyle } from './style.mjs';\n\nconst isScroll = (el, isVertical) => {\n if (!isClient)\n return false;\n const key = {\n undefined: \"overflow\",\n true: \"overflow-y\",\n false: \"overflow-x\"\n }[String(isVertical)];\n const overflow = getStyle(el, key);\n return [\"scroll\", \"auto\", \"overlay\"].some((s) => overflow.includes(s));\n};\nconst getScrollContainer = (el, isVertical) => {\n if (!isClient)\n return;\n let parent = el;\n while (parent) {\n if ([window, document, document.documentElement].includes(parent))\n return window;\n if (isScroll(parent, isVertical))\n return parent;\n parent = parent.parentNode;\n }\n return parent;\n};\nlet scrollBarWidth;\nconst getScrollBarWidth = (namespace) => {\n var _a;\n if (!isClient)\n return 0;\n if (scrollBarWidth !== void 0)\n return scrollBarWidth;\n const outer = document.createElement(\"div\");\n outer.className = `${namespace}-scrollbar__wrap`;\n outer.style.visibility = \"hidden\";\n outer.style.width = \"100px\";\n outer.style.position = \"absolute\";\n outer.style.top = \"-9999px\";\n document.body.appendChild(outer);\n const widthNoScroll = outer.offsetWidth;\n outer.style.overflow = \"scroll\";\n const inner = document.createElement(\"div\");\n inner.style.width = \"100%\";\n outer.appendChild(inner);\n const widthWithScroll = inner.offsetWidth;\n (_a = outer.parentNode) == null ? void 0 : _a.removeChild(outer);\n scrollBarWidth = widthNoScroll - widthWithScroll;\n return scrollBarWidth;\n};\nfunction scrollIntoView(container, selected) {\n if (!isClient)\n return;\n if (!selected) {\n container.scrollTop = 0;\n return;\n }\n const offsetParents = [];\n let pointer = selected.offsetParent;\n while (pointer !== null && container !== pointer && container.contains(pointer)) {\n offsetParents.push(pointer);\n pointer = pointer.offsetParent;\n }\n const top = selected.offsetTop + offsetParents.reduce((prev, curr) => prev + curr.offsetTop, 0);\n const bottom = top + selected.offsetHeight;\n const viewRectTop = container.scrollTop;\n const viewRectBottom = viewRectTop + container.clientHeight;\n if (top < viewRectTop) {\n container.scrollTop = top;\n } else if (bottom > viewRectBottom) {\n container.scrollTop = bottom - container.clientHeight;\n }\n}\n\nexport { getScrollBarWidth, getScrollContainer, isScroll, scrollIntoView };\n//# sourceMappingURL=scroll.mjs.map\n","var English = {\n name: \"en\",\n el: {\n colorpicker: {\n confirm: \"OK\",\n clear: \"Clear\",\n defaultLabel: \"color picker\",\n description: \"current color is {color}. press enter to select a new color.\"\n },\n datepicker: {\n now: \"Now\",\n today: \"Today\",\n cancel: \"Cancel\",\n clear: \"Clear\",\n confirm: \"OK\",\n dateTablePrompt: \"Use the arrow keys and enter to select the day of the month\",\n monthTablePrompt: \"Use the arrow keys and enter to select the month\",\n yearTablePrompt: \"Use the arrow keys and enter to select the year\",\n selectedDate: \"Selected date\",\n selectDate: \"Select date\",\n selectTime: \"Select time\",\n startDate: \"Start Date\",\n startTime: \"Start Time\",\n endDate: \"End Date\",\n endTime: \"End Time\",\n prevYear: \"Previous Year\",\n nextYear: \"Next Year\",\n prevMonth: \"Previous Month\",\n nextMonth: \"Next Month\",\n year: \"\",\n month1: \"January\",\n month2: \"February\",\n month3: \"March\",\n month4: \"April\",\n month5: \"May\",\n month6: \"June\",\n month7: \"July\",\n month8: \"August\",\n month9: \"September\",\n month10: \"October\",\n month11: \"November\",\n month12: \"December\",\n week: \"week\",\n weeks: {\n sun: \"Sun\",\n mon: \"Mon\",\n tue: \"Tue\",\n wed: \"Wed\",\n thu: \"Thu\",\n fri: \"Fri\",\n sat: \"Sat\"\n },\n weeksFull: {\n sun: \"Sunday\",\n mon: \"Monday\",\n tue: \"Tuesday\",\n wed: \"Wednesday\",\n thu: \"Thursday\",\n fri: \"Friday\",\n sat: \"Saturday\"\n },\n months: {\n jan: \"Jan\",\n feb: \"Feb\",\n mar: \"Mar\",\n apr: \"Apr\",\n may: \"May\",\n jun: \"Jun\",\n jul: \"Jul\",\n aug: \"Aug\",\n sep: \"Sep\",\n oct: \"Oct\",\n nov: \"Nov\",\n dec: \"Dec\"\n }\n },\n inputNumber: {\n decrease: \"decrease number\",\n increase: \"increase number\"\n },\n select: {\n loading: \"Loading\",\n noMatch: \"No matching data\",\n noData: \"No data\",\n placeholder: \"Select\"\n },\n dropdown: {\n toggleDropdown: \"Toggle Dropdown\"\n },\n cascader: {\n noMatch: \"No matching data\",\n loading: \"Loading\",\n placeholder: \"Select\",\n noData: \"No data\"\n },\n pagination: {\n goto: \"Go to\",\n pagesize: \"/page\",\n total: \"Total {total}\",\n pageClassifier: \"\",\n deprecationWarning: \"Deprecated usages detected, please refer to the el-pagination documentation for more details\"\n },\n dialog: {\n close: \"Close this dialog\"\n },\n drawer: {\n close: \"Close this dialog\"\n },\n messagebox: {\n title: \"Message\",\n confirm: \"OK\",\n cancel: \"Cancel\",\n error: \"Illegal input\",\n close: \"Close this dialog\"\n },\n upload: {\n deleteTip: \"press delete to remove\",\n delete: \"Delete\",\n preview: \"Preview\",\n continue: \"Continue\"\n },\n slider: {\n defaultLabel: \"slider between {min} and {max}\",\n defaultRangeStartLabel: \"pick start value\",\n defaultRangeEndLabel: \"pick end value\"\n },\n table: {\n emptyText: \"No Data\",\n confirmFilter: \"Confirm\",\n resetFilter: \"Reset\",\n clearFilter: \"All\",\n sumText: \"Sum\"\n },\n tree: {\n emptyText: \"No Data\"\n },\n transfer: {\n noMatch: \"No matching data\",\n noData: \"No data\",\n titles: [\"List 1\", \"List 2\"],\n filterPlaceholder: \"Enter keyword\",\n noCheckedFormat: \"{total} items\",\n hasCheckedFormat: \"{checked}/{total} checked\"\n },\n image: {\n error: \"FAILED\"\n },\n pageHeader: {\n title: \"Back\"\n },\n popconfirm: {\n confirmButtonText: \"Yes\",\n cancelButtonText: \"No\"\n }\n }\n};\n\nexport { English as default };\n//# sourceMappingURL=en.mjs.map\n","import { unref, computed, isRef, ref } from 'vue';\nimport { get } from 'lodash-unified';\nimport English from '../../locale/lang/en.mjs';\nimport { useGlobalConfig } from '../use-global-config/index.mjs';\n\nconst buildTranslator = (locale) => (path, option) => translate(path, option, unref(locale));\nconst translate = (path, option, locale) => get(locale, path, path).replace(/\\{(\\w+)\\}/g, (_, key) => {\n var _a;\n return `${(_a = option == null ? void 0 : option[key]) != null ? _a : `{${key}}`}`;\n});\nconst buildLocaleContext = (locale) => {\n const lang = computed(() => unref(locale).name);\n const localeRef = isRef(locale) ? locale : ref(locale);\n return {\n lang,\n locale: localeRef,\n t: buildTranslator(locale)\n };\n};\nconst useLocale = () => {\n const locale = useGlobalConfig(\"locale\");\n return buildLocaleContext(computed(() => locale.value || English));\n};\n\nexport { buildLocaleContext, buildTranslator, translate, useLocale };\n//# sourceMappingURL=index.mjs.map\n"],"names":["isScroll","el","isVertical","isClient","key","overflow","getStyle","s","getScrollContainer","parent","scrollBarWidth","getScrollBarWidth","namespace","_a","outer","widthNoScroll","inner","widthWithScroll","scrollIntoView","container","selected","offsetParents","pointer","top","prev","curr","bottom","viewRectTop","viewRectBottom","English","buildTranslator","locale","path","option","translate","unref","get","_","buildLocaleContext","lang","computed","localeRef","isRef","ref","useLocale","useGlobalConfig"],"mappings":"8FAGA,MAAMA,EAAW,CAACC,EAAIC,IAAe,CACnC,GAAI,CAACC,EACH,MAAO,GACT,MAAMC,EAAM,CACV,UAAW,WACX,KAAM,aACN,MAAO,YACX,EAAI,OAAOF,CAAU,CAAC,EACdG,EAAWC,EAASL,EAAIG,CAAG,EACjC,MAAO,CAAC,SAAU,OAAQ,SAAS,EAAE,KAAMG,GAAMF,EAAS,SAASE,CAAC,CAAC,CACvE,EACMC,EAAqB,CAACP,EAAIC,IAAe,CAC7C,GAAI,CAACC,EACH,OACF,IAAIM,EAASR,EACb,KAAOQ,GAAQ,CACb,GAAI,CAAC,OAAQ,SAAU,SAAS,eAAe,EAAE,SAASA,CAAM,EAC9D,OAAO,OACT,GAAIT,EAASS,EAAQP,CAAU,EAC7B,OAAOO,EACTA,EAASA,EAAO,UACjB,CACD,OAAOA,CACT,EACA,IAAIC,EACC,MAACC,EAAqBC,GAAc,CACvC,IAAIC,EACJ,GAAI,CAACV,EACH,MAAO,GACT,GAAIO,IAAmB,OACrB,OAAOA,EACT,MAAMI,EAAQ,SAAS,cAAc,KAAK,EAC1CA,EAAM,UAAY,GAAG,OAAAF,EAAS,oBAC9BE,EAAM,MAAM,WAAa,SACzBA,EAAM,MAAM,MAAQ,QACpBA,EAAM,MAAM,SAAW,WACvBA,EAAM,MAAM,IAAM,UAClB,SAAS,KAAK,YAAYA,CAAK,EAC/B,MAAMC,EAAgBD,EAAM,YAC5BA,EAAM,MAAM,SAAW,SACvB,MAAME,EAAQ,SAAS,cAAc,KAAK,EAC1CA,EAAM,MAAM,MAAQ,OACpBF,EAAM,YAAYE,CAAK,EACvB,MAAMC,EAAkBD,EAAM,YAC9B,OAACH,EAAKC,EAAM,aAAe,MAAgBD,EAAG,YAAYC,CAAK,EAC/DJ,EAAiBK,EAAgBE,EAC1BP,CACT,EACA,SAASQ,EAAeC,EAAWC,EAAU,CAC3C,GAAI,CAACjB,EACH,OACF,GAAI,CAACiB,EAAU,CACbD,EAAU,UAAY,EACtB,MACD,CACD,MAAME,EAAgB,CAAA,EACtB,IAAIC,EAAUF,EAAS,aACvB,KAAOE,IAAY,MAAQH,IAAcG,GAAWH,EAAU,SAASG,CAAO,GAC5ED,EAAc,KAAKC,CAAO,EAC1BA,EAAUA,EAAQ,aAEpB,MAAMC,EAAMH,EAAS,UAAYC,EAAc,OAAO,CAACG,EAAMC,IAASD,EAAOC,EAAK,UAAW,CAAC,EACxFC,EAASH,EAAMH,EAAS,aACxBO,EAAcR,EAAU,UACxBS,EAAiBD,EAAcR,EAAU,aAC3CI,EAAMI,EACRR,EAAU,UAAYI,EACbG,EAASE,IAClBT,EAAU,UAAYO,EAASP,EAAU,aAE7C,CCzEA,IAAIU,EAAU,CACZ,KAAM,KACN,GAAI,CACF,YAAa,CACX,QAAS,KACT,MAAO,QACP,aAAc,eACd,YAAa,8DACd,EACD,WAAY,CACV,IAAK,MACL,MAAO,QACP,OAAQ,SACR,MAAO,QACP,QAAS,KACT,gBAAiB,8DACjB,iBAAkB,mDAClB,gBAAiB,kDACjB,aAAc,gBACd,WAAY,cACZ,WAAY,cACZ,UAAW,aACX,UAAW,aACX,QAAS,WACT,QAAS,WACT,SAAU,gBACV,SAAU,YACV,UAAW,iBACX,UAAW,aACX,KAAM,GACN,OAAQ,UACR,OAAQ,WACR,OAAQ,QACR,OAAQ,QACR,OAAQ,MACR,OAAQ,OACR,OAAQ,OACR,OAAQ,SACR,OAAQ,YACR,QAAS,UACT,QAAS,WACT,QAAS,WACT,KAAM,OACN,MAAO,CACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,KACN,EACD,UAAW,CACT,IAAK,SACL,IAAK,SACL,IAAK,UACL,IAAK,YACL,IAAK,WACL,IAAK,SACL,IAAK,UACN,EACD,OAAQ,CACN,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,KACN,CACF,EACD,YAAa,CACX,SAAU,kBACV,SAAU,iBACX,EACD,OAAQ,CACN,QAAS,UACT,QAAS,mBACT,OAAQ,UACR,YAAa,QACd,EACD,SAAU,CACR,eAAgB,iBACjB,EACD,SAAU,CACR,QAAS,mBACT,QAAS,UACT,YAAa,SACb,OAAQ,SACT,EACD,WAAY,CACV,KAAM,QACN,SAAU,QACV,MAAO,gBACP,eAAgB,GAChB,mBAAoB,8FACrB,EACD,OAAQ,CACN,MAAO,mBACR,EACD,OAAQ,CACN,MAAO,mBACR,EACD,WAAY,CACV,MAAO,UACP,QAAS,KACT,OAAQ,SACR,MAAO,gBACP,MAAO,mBACR,EACD,OAAQ,CACN,UAAW,yBACX,OAAQ,SACR,QAAS,UACT,SAAU,UACX,EACD,OAAQ,CACN,aAAc,iCACd,uBAAwB,mBACxB,qBAAsB,gBACvB,EACD,MAAO,CACL,UAAW,UACX,cAAe,UACf,YAAa,QACb,YAAa,MACb,QAAS,KACV,EACD,KAAM,CACJ,UAAW,SACZ,EACD,SAAU,CACR,QAAS,mBACT,OAAQ,UACR,OAAQ,CAAC,SAAU,QAAQ,EAC3B,kBAAmB,gBACnB,gBAAiB,gBACjB,iBAAkB,2BACnB,EACD,MAAO,CACL,MAAO,QACR,EACD,WAAY,CACV,MAAO,MACR,EACD,WAAY,CACV,kBAAmB,MACnB,iBAAkB,IACnB,CACF,CACH,ECtJA,MAAMC,EAAmBC,GAAW,CAACC,EAAMC,IAAWC,EAAUF,EAAMC,EAAQE,EAAMJ,CAAM,CAAC,EACrFG,EAAY,CAACF,EAAMC,EAAQF,IAAWK,EAAIL,EAAQC,EAAMA,CAAI,EAAE,QAAQ,aAAc,CAACK,EAAGjC,IAAQ,CACpG,IAAIS,EACJ,MAAO,GAAI,QAAAA,EAAKoB,GAAU,KAAO,OAASA,EAAO7B,CAAG,IAAM,KAAOS,EAAK,IAAI,OAAAT,EAAG,KAC/E,CAAC,EACKkC,EAAsBP,GAAW,CACrC,MAAMQ,EAAOC,EAAS,IAAML,EAAMJ,CAAM,EAAE,IAAI,EACxCU,EAAYC,EAAMX,CAAM,EAAIA,EAASY,EAAIZ,CAAM,EACrD,MAAO,CACL,KAAAQ,EACA,OAAQE,EACR,EAAGX,EAAgBC,CAAM,CAC7B,CACA,EACMa,EAAY,IAAM,CACtB,MAAMb,EAASc,EAAgB,QAAQ,EACvC,OAAOP,EAAmBE,EAAS,IAAMT,EAAO,OAASF,CAAO,CAAC,CACnE","x_google_ignoreList":[0,1,2]}
@@ -0,0 +1,2 @@
1
+ import{J as R,aF as Q,aK as F,aU as P,aG as U,M as z,aH as ne,r as $,aj as re,O as _,az as ue,aN as ie,N,d as C,Q as T,a as m,c as E,b as h,a8 as O,c6 as j,k as a,bu as H,H as g,T as G,e as w,t as B,aT as q,au as J,aD as de,at as ce,aL as pe,c7 as me,o as ve,ai as fe,Z as be,bO as _e,$ as he,aV as ye,Y as ge,aE as W,_ as D,D as k,a6 as Y,a7 as M,ab as A,c8 as Ee,E as K,j as V,w as y,F as I,S,x as ke,v as Z,C as L}from"./index-CYAf_OTx.js";import{u as Ve,E as we}from"./el-dialog-PRccau6N.js";import{E as Se}from"./tip-CH7nBVXc.js";import{E as $e,a as Ce}from"./el-form-item-DOwM4Mv8.js";import{E as Ie,a as Be}from"./el-select-CVjQdC39.js";const X=Symbol("radioGroupKey"),ee=R({size:Q,disabled:Boolean,label:{type:[String,Number,Boolean],default:""}}),Re=R({...ee,modelValue:{type:[String,Number,Boolean],default:""},name:{type:String,default:""},border:Boolean}),ae={[F]:e=>P(e)||U(e)||z(e),[ne]:e=>P(e)||U(e)||z(e)},oe=(e,u)=>{const t=$(),o=re(X,void 0),d=_(()=>!!o),v=_({get(){return d.value?o.modelValue:e.modelValue},set(i){d.value?o.changeEvent(i):u&&u(F,i),t.value.checked=e.modelValue===e.label}}),r=ue(_(()=>o==null?void 0:o.size)),c=ie(_(()=>o==null?void 0:o.disabled)),n=$(!1),p=_(()=>c.value||d.value&&v.value!==e.label?-1:0);return{radioRef:t,isGroup:d,radioGroup:o,focus:n,size:r,disabled:c,tabIndex:p,modelValue:v}},xe=["value","name","disabled"],Le={name:"ElRadio"},Fe=C({...Le,props:Re,emits:ae,setup(e,{emit:u}){const t=e,o=T("radio"),{radioRef:d,radioGroup:v,focus:r,size:c,disabled:n,modelValue:p}=oe(t,u);function i(){J(()=>u("change",p.value))}return(s,l)=>{var b;return m(),E("label",{class:g([a(o).b(),a(o).is("disabled",a(n)),a(o).is("focus",a(r)),a(o).is("bordered",s.border),a(o).is("checked",a(p)===s.label),a(o).m(a(c))])},[h("span",{class:g([a(o).e("input"),a(o).is("disabled",a(n)),a(o).is("checked",a(p)===s.label)])},[O(h("input",{ref_key:"radioRef",ref:d,"onUpdate:modelValue":l[0]||(l[0]=f=>H(p)?p.value=f:null),class:g(a(o).e("original")),value:s.label,name:s.name||((b=a(v))==null?void 0:b.name),disabled:a(n),type:"radio",onFocus:l[1]||(l[1]=f=>r.value=!0),onBlur:l[2]||(l[2]=f=>r.value=!1),onChange:i},null,42,xe),[[j,a(p)]]),h("span",{class:g(a(o).e("inner"))},null,2)],2),h("span",{class:g(a(o).e("label")),onKeydown:l[3]||(l[3]=q(()=>{},["stop"]))},[G(s.$slots,"default",{},()=>[w(B(s.label),1)])],34)],2)}}});var Ne=N(Fe,[["__file","/home/runner/work/element-plus/element-plus/packages/components/radio/src/radio.vue"]]);const Te=R({...ee,name:{type:String,default:""}}),Ge=["value","name","disabled"],De={name:"ElRadioButton"},Pe=C({...De,props:Te,setup(e){const u=e,t=T("radio"),{radioRef:o,focus:d,size:v,disabled:r,modelValue:c,radioGroup:n}=oe(u),p=_(()=>({backgroundColor:(n==null?void 0:n.fill)||"",borderColor:(n==null?void 0:n.fill)||"",boxShadow:n!=null&&n.fill?"-1px 0 0 0 ".concat(n.fill):"",color:(n==null?void 0:n.textColor)||""}));return(i,s)=>{var l;return m(),E("label",{class:g([a(t).b("button"),a(t).is("active",a(c)===i.label),a(t).is("disabled",a(r)),a(t).is("focus",a(d)),a(t).bm("button",a(v))])},[O(h("input",{ref_key:"radioRef",ref:o,"onUpdate:modelValue":s[0]||(s[0]=b=>H(c)?c.value=b:null),class:g(a(t).be("button","original-radio")),value:i.label,type:"radio",name:i.name||((l=a(n))==null?void 0:l.name),disabled:a(r),onFocus:s[1]||(s[1]=b=>d.value=!0),onBlur:s[2]||(s[2]=b=>d.value=!1)},null,42,Ge),[[j,a(c)]]),h("span",{class:g(a(t).be("button","inner")),style:de(a(c)===i.label?a(p):{}),onKeydown:s[3]||(s[3]=q(()=>{},["stop"]))},[G(i.$slots,"default",{},()=>[w(B(i.label),1)])],38)],2)}}});var le=N(Pe,[["__file","/home/runner/work/element-plus/element-plus/packages/components/radio/src/radio-button.vue"]]);const Ue=R({id:{type:String,default:void 0},size:Q,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}}),ze=ae,Me=["id","aria-label","aria-labelledby"],Ae={name:"ElRadioGroup"},Ke=C({...Ae,props:Ue,emits:ze,setup(e,{emit:u}){const t=e,o=T("radio"),d=ce(),v=$(),{formItem:r}=pe(),{inputId:c,isLabeledByFormItem:n}=me(t,{formItemContext:r}),p=s=>{u(F,s),J(()=>u("change",s))};ve(()=>{const s=v.value.querySelectorAll("[type=radio]"),l=s[0];!Array.from(s).some(b=>b.checked)&&l&&(l.tabIndex=0)});const i=_(()=>t.name||d.value);return fe(X,be({..._e(t),changeEvent:p,name:i})),he(()=>t.modelValue,()=>{t.validateEvent&&(r==null||r.validate("change").catch(s=>ye()))}),(s,l)=>(m(),E("div",{id:a(c),ref_key:"radioGroupRef",ref:v,class:g(a(o).b("group")),role:"radiogroup","aria-label":a(n)?void 0:s.label||"radio-group","aria-labelledby":a(n)?a(r).labelId:void 0},[G(s.$slots,"default")],10,Me))}});var te=N(Ke,[["__file","/home/runner/work/element-plus/element-plus/packages/components/radio/src/radio-group.vue"]]);const Qe=ge(Ne,{RadioButton:le,RadioGroup:te}),Oe=W(te),ra=W(le),je={name:"QrCode",props:{value:String},data(){return{src:"",srcList:[]}},watch:{value(e){e&&(this.src=this.createEwm(e),this.srcList=[this.src])}},methods:{createEwm(e,u){return new AraleQRCode({text:e,size:400,foreground:"#000",...u}).toDataURL("image/png")}},mounted(){this.value&&(this.src=this.createEwm(this.value),this.srcList=[this.src])}};function He(e,u,t,o,d,v){const r=Se;return m(),k(r,{style:{width:"150px",height:"150px"},src:d.src,"preview-src-list":d.srcList},null,8,["src","preview-src-list"])}const se=D(je,[["render",He]]),qe=C({name:"LinkDialog",components:{QrCode:se},props:{title:{type:String,default:"链接面板"},value:{type:Boolean},link:{type:String,default:""},download:{type:Boolean,default:!0},shareTextPrefix:{type:String,default:""}},emits:["update:value"],setup(e,u){const t=$(""),o=$(!1),d=Ve(),v=()=>{A(t.value)},{value:r}=Y();M(()=>{t.value=e.link}),M(()=>{o.value=e.value,o.value&&e.download&&setTimeout(()=>{K.success("如未自动开始下载,请复制链接到浏览器中执行下载")},200)});const c=()=>{u.emit("update:value",!1)},n=()=>{Ee(t.value).then(b=>{t.value=b,K.success("短链生成成功")})},p=_(()=>r.value.appName),i=_(()=>"".concat(p.value&&"【".concat(p.value,"】")).concat(e.shareTextPrefix," ").concat(t.value)),s=()=>{A(i.value)},l=_(()=>!!e.shareTextPrefix);return{shareLink:t,createShortLink:n,copyLink:v,handleClose:c,showModel:o,isMobile:d,shareText:i,copyShareText:s,showShareTextPanel:l}}}),Je={class:"center"},We={class:"center"},Ye={class:"center"},Ze={class:"center"};function Xe(e,u,t,o,d,v){const r=ke,c=Z,n=se,p=we;return m(),E("div",null,[V(p,{modelValue:e.showModel,"onUpdate:modelValue":u[1]||(u[1]=i=>e.showModel=i),fullscreen:e.isMobile,title:e.title,center:"",onClose:e.handleClose},{default:y(()=>[h("div",null,[V(c,{modelValue:e.shareLink,"onUpdate:modelValue":u[0]||(u[0]=i=>e.shareLink=i),placeholder:"生成的链接"},{append:y(()=>[V(r,{type:"primary",onClick:e.copyLink},{default:y(()=>[w(" 复制 ")]),_:1},8,["onClick"])]),_:1},8,["modelValue"])]),h("div",Je,[V(n,{value:e.shareLink},null,8,["value"])]),h("div",We,[V(r,{type:"primary",onClick:e.createShortLink},{default:y(()=>[w(" 生成短链 ")]),_:1},8,["onClick"])]),e.showShareTextPanel?(m(),E(I,{key:0},[h("div",Ye,[V(c,{value:e.shareText,style:{width:"300px"},autosize:{minRows:3,maxRows:10},type:"textarea",placeholder:"分享信息"},null,8,["value"])]),h("div",Ze,[V(r,{type:"success",round:"",onClick:e.copyShareText},{default:y(()=>[w(" 复制分享信息 ")]),_:1},8,["onClick"])])],64)):S("",!0)]),_:1},8,["modelValue","fullscreen","title","onClose"])])}const ua=D(qe,[["render",Xe],["__scopeId","data-v-805533e3"]]),ea={key:0,class:"fixed-text"},aa=C({__name:"index",props:{infos:{},disabled:{type:Boolean},labelPosition:{}},setup(e){const{value:u}=Y(),t=_(()=>u.value.maxInputLength);return(o,d)=>{const v=Z,r=Qe,c=Oe,n=Ie,p=Be,i=$e,s=Ce;return m(),k(s,{disabled:o.disabled,"label-position":o.labelPosition||"top"},{default:y(()=>[(m(!0),E(I,null,L(o.infos,(l,b)=>(m(),k(i,{key:b,class:"ellipsis",label:l.type==="text"?"":l.text},{default:y(()=>[l.type==="text"?(m(),E("div",ea,B(l.text),1)):S("",!0),l.type==="input"?(m(),k(v,{key:1,modelValue:l.value,"onUpdate:modelValue":f=>l.value=f,maxlength:t.value,clearable:"","show-word-limit":"",placeholder:"请输入 ".concat(l.text)},null,8,["modelValue","onUpdate:modelValue","maxlength","placeholder"])):S("",!0),l.type==="radio"?(m(),k(c,{key:2,modelValue:l.value,"onUpdate:modelValue":f=>l.value=f},{default:y(()=>[(m(!0),E(I,null,L(l.children,(f,x)=>(m(),k(r,{key:x,label:f.text},{default:y(()=>[w(B(f.text),1)]),_:2},1032,["label"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue"])):S("",!0),l.type==="select"?(m(),k(p,{key:3,modelValue:l.value,"onUpdate:modelValue":f=>l.value=f,"default-first-option":"",clearable:"",filterable:"",placeholder:"请选择 ".concat(l.text)},{default:y(()=>[(m(!0),E(I,null,L(l.children,(f,x)=>(m(),k(n,{key:x,label:f.text,value:f.text},null,8,["label","value"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue","placeholder"])):S("",!0)]),_:2},1032,["label"]))),128))]),_:1},8,["disabled","label-position"])}}}),ia=D(aa,[["__scopeId","data-v-73d07e05"]]);export{ra as E,ia as I,ua as L,Oe as a,Qe as b};
2
+ //# sourceMappingURL=index-F3S0vKOW.js.map