@maketribe/ms-app 4.0.0-alpha.3 → 4.0.0-alpha.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (197) hide show
  1. package/dist/cjs/{404-DWSwF-XG.cjs → 404-C5dmqK1T.cjs} +2 -2
  2. package/dist/cjs/{404-DWSwF-XG.cjs.map → 404-C5dmqK1T.cjs.map} +1 -1
  3. package/dist/cjs/{article-edit-add-page-DMGZ8mH4.cjs → article-edit-add-page-BhIbt8mY.cjs} +3 -3
  4. package/dist/cjs/{article-edit-add-page-DMGZ8mH4.cjs.map → article-edit-add-page-BhIbt8mY.cjs.map} +1 -1
  5. package/dist/cjs/{cms-settings-DIOam34M.cjs → cms-settings-XOAsKe2w.cjs} +2 -2
  6. package/dist/cjs/{cms-settings-DIOam34M.cjs.map → cms-settings-XOAsKe2w.cjs.map} +1 -1
  7. package/dist/cjs/{dialog-BqZgPcm2.cjs → dialog-9t4PpBq_.cjs} +2 -2
  8. package/dist/cjs/{dialog-BqZgPcm2.cjs.map → dialog-9t4PpBq_.cjs.map} +1 -1
  9. package/dist/cjs/{dialog-B947T7vf.cjs → dialog-DYWmSX78.cjs} +2 -2
  10. package/dist/cjs/{dialog-B947T7vf.cjs.map → dialog-DYWmSX78.cjs.map} +1 -1
  11. package/dist/cjs/{dialog-vkfjga6H.cjs → dialog-rl_frDK9.cjs} +2 -2
  12. package/dist/cjs/{dialog-vkfjga6H.cjs.map → dialog-rl_frDK9.cjs.map} +1 -1
  13. package/dist/cjs/{edit-6Zmg9aTH.cjs → edit-YTd9VNsI.cjs} +2 -2
  14. package/dist/cjs/{edit-6Zmg9aTH.cjs.map → edit-YTd9VNsI.cjs.map} +1 -1
  15. package/dist/cjs/{index-64qKudS1.cjs → index-7G4aDLGX.cjs} +2 -2
  16. package/dist/cjs/{index-64qKudS1.cjs.map → index-7G4aDLGX.cjs.map} +1 -1
  17. package/dist/cjs/{index-DmsVtl33.cjs → index-BEXhwBqh.cjs} +3 -3
  18. package/dist/cjs/{index-DmsVtl33.cjs.map → index-BEXhwBqh.cjs.map} +1 -1
  19. package/dist/cjs/{index-CAZDWsf3.cjs → index-BGFeVpUZ.cjs} +2 -2
  20. package/dist/cjs/{index-CAZDWsf3.cjs.map → index-BGFeVpUZ.cjs.map} +1 -1
  21. package/dist/cjs/{index-Ddqk3hMe.cjs → index-BK8MnCss.cjs} +2 -2
  22. package/dist/cjs/{index-Ddqk3hMe.cjs.map → index-BK8MnCss.cjs.map} +1 -1
  23. package/dist/cjs/{index-Bu_g8P0A.cjs → index-BQjfBtn7.cjs} +2 -2
  24. package/dist/cjs/{index-Bu_g8P0A.cjs.map → index-BQjfBtn7.cjs.map} +1 -1
  25. package/dist/cjs/{index-T3Vf8XMJ.cjs → index-BcHCVUXJ.cjs} +2 -2
  26. package/dist/cjs/{index-T3Vf8XMJ.cjs.map → index-BcHCVUXJ.cjs.map} +1 -1
  27. package/dist/cjs/{index-oxaOb3VO.cjs → index-BtU3tqPr.cjs} +3 -3
  28. package/dist/cjs/{index-oxaOb3VO.cjs.map → index-BtU3tqPr.cjs.map} +1 -1
  29. package/dist/cjs/{index-CYQny13b.cjs → index-C2OOg-9r.cjs} +2 -2
  30. package/dist/cjs/{index-CYQny13b.cjs.map → index-C2OOg-9r.cjs.map} +1 -1
  31. package/dist/cjs/{index-BM8SqnND.cjs → index-CALg925z.cjs} +2 -2
  32. package/dist/cjs/{index-BM8SqnND.cjs.map → index-CALg925z.cjs.map} +1 -1
  33. package/dist/cjs/{index-YRbQttqL.cjs → index-CN4Rj6Na.cjs} +2 -2
  34. package/dist/cjs/index-CN4Rj6Na.cjs.map +1 -0
  35. package/dist/cjs/{index-BSPRCyGW.cjs → index-CVvSVtzA.cjs} +3 -3
  36. package/dist/cjs/{index-BSPRCyGW.cjs.map → index-CVvSVtzA.cjs.map} +1 -1
  37. package/dist/cjs/{index-BLEQMNvQ.cjs → index-CbhJwIay.cjs} +2 -2
  38. package/dist/cjs/{index-BLEQMNvQ.cjs.map → index-CbhJwIay.cjs.map} +1 -1
  39. package/dist/cjs/{index-Dl_nvllQ.cjs → index-Ch0S2DrM.cjs} +2 -2
  40. package/dist/cjs/{index-Dl_nvllQ.cjs.map → index-Ch0S2DrM.cjs.map} +1 -1
  41. package/dist/cjs/{index-qBBjmPWr.cjs → index-ChvoLKrL.cjs} +2 -2
  42. package/dist/cjs/{index-qBBjmPWr.cjs.map → index-ChvoLKrL.cjs.map} +1 -1
  43. package/dist/cjs/{index-BIjMV8Hr.cjs → index-CqTnJlET.cjs} +2 -2
  44. package/dist/cjs/{index-BIjMV8Hr.cjs.map → index-CqTnJlET.cjs.map} +1 -1
  45. package/dist/cjs/{index-Dv6z6LqI.cjs → index-CvHE6ZPf.cjs} +3 -3
  46. package/dist/cjs/{index-Dv6z6LqI.cjs.map → index-CvHE6ZPf.cjs.map} +1 -1
  47. package/dist/cjs/{index-Br7b64td.cjs → index-CxONh6ck.cjs} +2 -2
  48. package/dist/cjs/{index-Br7b64td.cjs.map → index-CxONh6ck.cjs.map} +1 -1
  49. package/dist/cjs/{index-DHbVriDb.cjs → index-D3yfcKl6.cjs} +2 -2
  50. package/dist/cjs/{index-DHbVriDb.cjs.map → index-D3yfcKl6.cjs.map} +1 -1
  51. package/dist/cjs/{index-DB88N2cP.cjs → index-D675maEE.cjs} +2 -2
  52. package/dist/cjs/{index-DB88N2cP.cjs.map → index-D675maEE.cjs.map} +1 -1
  53. package/dist/cjs/{index-BrZdnq8W.cjs → index-D9nmASDU.cjs} +2 -2
  54. package/dist/cjs/index-D9nmASDU.cjs.map +1 -0
  55. package/dist/cjs/{index-DjP1khaa.cjs → index-DBmVCYfK.cjs} +2 -2
  56. package/dist/cjs/{index-DjP1khaa.cjs.map → index-DBmVCYfK.cjs.map} +1 -1
  57. package/dist/cjs/{index-9Oy5JtDM.cjs → index-DF9tph7D.cjs} +2 -2
  58. package/dist/cjs/{index-9Oy5JtDM.cjs.map → index-DF9tph7D.cjs.map} +1 -1
  59. package/dist/cjs/{index-BaBoZUBz.cjs → index-DoAWnYyy.cjs} +2 -2
  60. package/dist/cjs/index-DoAWnYyy.cjs.map +1 -0
  61. package/dist/cjs/{index-Cw_e9O7Z.cjs → index-DozqAI-B.cjs} +2 -2
  62. package/dist/cjs/{index-Cw_e9O7Z.cjs.map → index-DozqAI-B.cjs.map} +1 -1
  63. package/dist/cjs/{index-BFgkbUEa.cjs → index-DrKpdqBV.cjs} +3 -3
  64. package/dist/cjs/{index-BFgkbUEa.cjs.map → index-DrKpdqBV.cjs.map} +1 -1
  65. package/dist/cjs/{index-C2NSwxxH.cjs → index-KKM-xN3u.cjs} +3 -3
  66. package/dist/cjs/{index-C2NSwxxH.cjs.map → index-KKM-xN3u.cjs.map} +1 -1
  67. package/dist/cjs/{index-CJiJ6jy7.cjs → index-P7aJrY9b.cjs} +68 -55
  68. package/dist/cjs/index-P7aJrY9b.cjs.map +1 -0
  69. package/dist/cjs/{index-CvN_2DSE.cjs → index-PPh3CcUq.cjs} +2 -2
  70. package/dist/cjs/{index-CvN_2DSE.cjs.map → index-PPh3CcUq.cjs.map} +1 -1
  71. package/dist/cjs/{index-Cr2MyczI.cjs → index-VgamPuGl.cjs} +3 -3
  72. package/dist/cjs/{index-Cr2MyczI.cjs.map → index-VgamPuGl.cjs.map} +1 -1
  73. package/dist/cjs/{index-x4E7Eggf.cjs → index-mI3PgWZJ.cjs} +3 -3
  74. package/dist/cjs/{index-x4E7Eggf.cjs.map → index-mI3PgWZJ.cjs.map} +1 -1
  75. package/dist/cjs/{index-CEHVP61_.cjs → index-pzYNuMPD.cjs} +2 -2
  76. package/dist/cjs/{index-CEHVP61_.cjs.map → index-pzYNuMPD.cjs.map} +1 -1
  77. package/dist/cjs/index.js +1 -1
  78. package/dist/cjs/{index.vue_vue_type_script_setup_true_lang-D8YMnc_N.cjs → index.vue_vue_type_script_setup_true_lang-C8mQbE_f.cjs} +2 -2
  79. package/dist/cjs/{index.vue_vue_type_script_setup_true_lang-D8YMnc_N.cjs.map → index.vue_vue_type_script_setup_true_lang-C8mQbE_f.cjs.map} +1 -1
  80. package/dist/cjs/{json-editor-DcwX0iMa.cjs → json-editor-B1Tcl8VY.cjs} +2 -2
  81. package/dist/cjs/{json-editor-DcwX0iMa.cjs.map → json-editor-B1Tcl8VY.cjs.map} +1 -1
  82. package/dist/cjs/{markdown-editor-8CPE3qxN.cjs → markdown-editor-BW1jNYfM.cjs} +2 -2
  83. package/dist/cjs/{markdown-editor-8CPE3qxN.cjs.map → markdown-editor-BW1jNYfM.cjs.map} +1 -1
  84. package/dist/cjs/{normal-BRUVTnIj.cjs → normal-Bsspj4QK.cjs} +2 -2
  85. package/dist/cjs/{normal-BRUVTnIj.cjs.map → normal-Bsspj4QK.cjs.map} +1 -1
  86. package/dist/cjs/{normal-Dr8AYe2r.cjs → normal-CeD-Oud5.cjs} +2 -2
  87. package/dist/cjs/{normal-Dr8AYe2r.cjs.map → normal-CeD-Oud5.cjs.map} +1 -1
  88. package/dist/cjs/{permission-manage-DeDXlRil.cjs → permission-manage-B6TKnw0T.cjs} +2 -2
  89. package/dist/cjs/{permission-manage-DeDXlRil.cjs.map → permission-manage-B6TKnw0T.cjs.map} +1 -1
  90. package/dist/cjs/{resource-select-input-DK-y2auR.cjs → resource-select-input-FPwFgXzl.cjs} +2 -2
  91. package/dist/cjs/{resource-select-input-DK-y2auR.cjs.map → resource-select-input-FPwFgXzl.cjs.map} +1 -1
  92. package/dist/cjs/style.css +2 -0
  93. package/dist/cjs/{table-C3yMZ6mu.cjs → table-DTn-HXFZ.cjs} +2 -2
  94. package/dist/cjs/{table-C3yMZ6mu.cjs.map → table-DTn-HXFZ.cjs.map} +1 -1
  95. package/dist/esm/{404-D5XFfiHo.js → 404-C1lIpndy.js} +2 -2
  96. package/dist/esm/{404-D5XFfiHo.js.map → 404-C1lIpndy.js.map} +1 -1
  97. package/dist/esm/{article-edit-add-page-AeJ2loBa.js → article-edit-add-page-ClytcmO4.js} +3 -3
  98. package/dist/esm/{article-edit-add-page-AeJ2loBa.js.map → article-edit-add-page-ClytcmO4.js.map} +1 -1
  99. package/dist/esm/{cms-settings-DHQmoLKI.js → cms-settings-jjd73rEK.js} +2 -2
  100. package/dist/esm/{cms-settings-DHQmoLKI.js.map → cms-settings-jjd73rEK.js.map} +1 -1
  101. package/dist/esm/{dialog-CPR8_y9H.js → dialog-D6rgkM2v.js} +2 -2
  102. package/dist/esm/{dialog-CPR8_y9H.js.map → dialog-D6rgkM2v.js.map} +1 -1
  103. package/dist/esm/{dialog-BQtjgY66.js → dialog-DBVAimvZ.js} +2 -2
  104. package/dist/esm/{dialog-BQtjgY66.js.map → dialog-DBVAimvZ.js.map} +1 -1
  105. package/dist/esm/{dialog-Cb7Lps0k.js → dialog-DwwYU6ht.js} +2 -2
  106. package/dist/esm/{dialog-Cb7Lps0k.js.map → dialog-DwwYU6ht.js.map} +1 -1
  107. package/dist/esm/{edit-Bk7te-2r.js → edit-o5nFwY2w.js} +2 -2
  108. package/dist/esm/{edit-Bk7te-2r.js.map → edit-o5nFwY2w.js.map} +1 -1
  109. package/dist/esm/{index-p8vYirVH.js → index-5yHWO2PM.js} +2 -2
  110. package/dist/esm/{index-p8vYirVH.js.map → index-5yHWO2PM.js.map} +1 -1
  111. package/dist/esm/{index-CpnOCrKn.js → index-B07kUUxH.js} +2 -2
  112. package/dist/esm/{index-CpnOCrKn.js.map → index-B07kUUxH.js.map} +1 -1
  113. package/dist/esm/{index-mNJ5Nh1F.js → index-B8tP_Pku.js} +3 -3
  114. package/dist/esm/{index-mNJ5Nh1F.js.map → index-B8tP_Pku.js.map} +1 -1
  115. package/dist/esm/{index-B0iifroA.js → index-BF7lUn1x.js} +3 -3
  116. package/dist/esm/{index-B0iifroA.js.map → index-BF7lUn1x.js.map} +1 -1
  117. package/dist/esm/{index-Cxr1pm2r.js → index-BY1xSjU9.js} +3 -3
  118. package/dist/esm/{index-Cxr1pm2r.js.map → index-BY1xSjU9.js.map} +1 -1
  119. package/dist/esm/{index-Bus0Ed53.js → index-Bdpr5BhD.js} +2 -2
  120. package/dist/esm/{index-Bus0Ed53.js.map → index-Bdpr5BhD.js.map} +1 -1
  121. package/dist/esm/{index-VZNiNwyo.js → index-Bg87MBB-.js} +2 -2
  122. package/dist/esm/{index-VZNiNwyo.js.map → index-Bg87MBB-.js.map} +1 -1
  123. package/dist/esm/{index-84gxgRCL.js → index-Bk3DoVIM.js} +2 -2
  124. package/dist/esm/{index-84gxgRCL.js.map → index-Bk3DoVIM.js.map} +1 -1
  125. package/dist/esm/{index-CYsTe22K.js → index-BuMWOrRH.js} +3 -3
  126. package/dist/esm/{index-CYsTe22K.js.map → index-BuMWOrRH.js.map} +1 -1
  127. package/dist/esm/{index-pWRDGnCA.js → index-BzC8nFti.js} +2 -2
  128. package/dist/esm/{index-pWRDGnCA.js.map → index-BzC8nFti.js.map} +1 -1
  129. package/dist/esm/{index-WK-zyRhV.js → index-C0OV7CMI.js} +2 -2
  130. package/dist/esm/index-C0OV7CMI.js.map +1 -0
  131. package/dist/esm/{index-DulOSNCq.js → index-C2CKP0Ko.js} +2 -2
  132. package/dist/esm/{index-DulOSNCq.js.map → index-C2CKP0Ko.js.map} +1 -1
  133. package/dist/esm/{index-BZ4nk74T.js → index-C58Q2T-f.js} +2 -2
  134. package/dist/esm/{index-BZ4nk74T.js.map → index-C58Q2T-f.js.map} +1 -1
  135. package/dist/esm/{index-BSvkrpO1.js → index-CBNDTPbG.js} +3 -3
  136. package/dist/esm/{index-BSvkrpO1.js.map → index-CBNDTPbG.js.map} +1 -1
  137. package/dist/esm/{index-B0JN-XM8.js → index-CEIFlqQ6.js} +2 -2
  138. package/dist/esm/{index-B0JN-XM8.js.map → index-CEIFlqQ6.js.map} +1 -1
  139. package/dist/esm/{index-ELFtoTxz.js → index-CGAkIBXU.js} +3 -3
  140. package/dist/esm/{index-ELFtoTxz.js.map → index-CGAkIBXU.js.map} +1 -1
  141. package/dist/esm/{index-CgCwBVWj.js → index-CIfSdmY3.js} +3 -3
  142. package/dist/esm/{index-CgCwBVWj.js.map → index-CIfSdmY3.js.map} +1 -1
  143. package/dist/esm/{index-B4r9F3Zh.js → index-Cc0BSacV.js} +2 -2
  144. package/dist/esm/index-Cc0BSacV.js.map +1 -0
  145. package/dist/esm/{index-BZDkvIT8.js → index-Co757Yb3.js} +2 -2
  146. package/dist/esm/{index-BZDkvIT8.js.map → index-Co757Yb3.js.map} +1 -1
  147. package/dist/esm/{index-pzNnwUiS.js → index-Cxq2d0cF.js} +2 -2
  148. package/dist/esm/{index-pzNnwUiS.js.map → index-Cxq2d0cF.js.map} +1 -1
  149. package/dist/esm/{index-CvV8qbPg.js → index-D3JpAH_K.js} +2 -2
  150. package/dist/esm/{index-CvV8qbPg.js.map → index-D3JpAH_K.js.map} +1 -1
  151. package/dist/esm/{index-CPBRsmn3.js → index-D6Z7Ujhs.js} +2 -2
  152. package/dist/esm/{index-CPBRsmn3.js.map → index-D6Z7Ujhs.js.map} +1 -1
  153. package/dist/esm/{index-C-nug2my.js → index-D9IagxRh.js} +2 -2
  154. package/dist/esm/{index-C-nug2my.js.map → index-D9IagxRh.js.map} +1 -1
  155. package/dist/esm/{index-D0XxzoBI.js → index-DBmsWB9D.js} +2 -2
  156. package/dist/esm/{index-D0XxzoBI.js.map → index-DBmsWB9D.js.map} +1 -1
  157. package/dist/esm/{index-Cmc71fzA.js → index-DLTcz_Lh.js} +2 -2
  158. package/dist/esm/{index-Cmc71fzA.js.map → index-DLTcz_Lh.js.map} +1 -1
  159. package/dist/esm/{index-mq3nYYwD.js → index-DknNVWIH.js} +68 -55
  160. package/dist/esm/index-DknNVWIH.js.map +1 -0
  161. package/dist/esm/{index-Y7lD4xpK.js → index-DvPP6Wol.js} +2 -2
  162. package/dist/esm/index-DvPP6Wol.js.map +1 -0
  163. package/dist/esm/{index-8H_Cvlt6.js → index-Gog2XV76.js} +2 -2
  164. package/dist/esm/{index-8H_Cvlt6.js.map → index-Gog2XV76.js.map} +1 -1
  165. package/dist/esm/{index-DCRMtVnn.js → index-fJ9vuH0d.js} +2 -2
  166. package/dist/esm/{index-DCRMtVnn.js.map → index-fJ9vuH0d.js.map} +1 -1
  167. package/dist/esm/{index-_hBIn8hO.js → index-wRgJJ7hu.js} +2 -2
  168. package/dist/esm/{index-_hBIn8hO.js.map → index-wRgJJ7hu.js.map} +1 -1
  169. package/dist/esm/{index-Cx70jXqW.js → index-z5v336Rn.js} +3 -3
  170. package/dist/esm/{index-Cx70jXqW.js.map → index-z5v336Rn.js.map} +1 -1
  171. package/dist/esm/index.js +1 -1
  172. package/dist/esm/{index.vue_vue_type_script_setup_true_lang-Bfxqixud.js → index.vue_vue_type_script_setup_true_lang-JlluKuL-.js} +2 -2
  173. package/dist/esm/{index.vue_vue_type_script_setup_true_lang-Bfxqixud.js.map → index.vue_vue_type_script_setup_true_lang-JlluKuL-.js.map} +1 -1
  174. package/dist/esm/{json-editor-wqz1RgJf.js → json-editor-BT0C5D4u.js} +2 -2
  175. package/dist/esm/{json-editor-wqz1RgJf.js.map → json-editor-BT0C5D4u.js.map} +1 -1
  176. package/dist/esm/{markdown-editor-DI3xA77v.js → markdown-editor-CFcH6yNx.js} +2 -2
  177. package/dist/esm/{markdown-editor-DI3xA77v.js.map → markdown-editor-CFcH6yNx.js.map} +1 -1
  178. package/dist/esm/{normal-BSDfzy52.js → normal-CT0vCPEg.js} +2 -2
  179. package/dist/esm/{normal-BSDfzy52.js.map → normal-CT0vCPEg.js.map} +1 -1
  180. package/dist/esm/{normal-kBdt-_xr.js → normal-UXk824cE.js} +2 -2
  181. package/dist/esm/{normal-kBdt-_xr.js.map → normal-UXk824cE.js.map} +1 -1
  182. package/dist/esm/{permission-manage-B7Gr83rb.js → permission-manage-dCLfCBD9.js} +2 -2
  183. package/dist/esm/{permission-manage-B7Gr83rb.js.map → permission-manage-dCLfCBD9.js.map} +1 -1
  184. package/dist/esm/{resource-select-input-Cm9nIaHj.js → resource-select-input-MU3WMOqe.js} +2 -2
  185. package/dist/esm/{resource-select-input-Cm9nIaHj.js.map → resource-select-input-MU3WMOqe.js.map} +1 -1
  186. package/dist/esm/style.css +2 -0
  187. package/dist/esm/{table-BeLB_exN.js → table-GSEHVDi3.js} +2 -2
  188. package/dist/esm/{table-BeLB_exN.js.map → table-GSEHVDi3.js.map} +1 -1
  189. package/package.json +3 -3
  190. package/dist/cjs/index-BaBoZUBz.cjs.map +0 -1
  191. package/dist/cjs/index-BrZdnq8W.cjs.map +0 -1
  192. package/dist/cjs/index-CJiJ6jy7.cjs.map +0 -1
  193. package/dist/cjs/index-YRbQttqL.cjs.map +0 -1
  194. package/dist/esm/index-B4r9F3Zh.js.map +0 -1
  195. package/dist/esm/index-WK-zyRhV.js.map +0 -1
  196. package/dist/esm/index-Y7lD4xpK.js.map +0 -1
  197. package/dist/esm/index-mq3nYYwD.js.map +0 -1
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const vue = require("vue");
4
4
  const vueRouter = require("vue-router");
5
- const index = require("./index-CJiJ6jy7.cjs");
5
+ const index = require("./index-P7aJrY9b.cjs");
6
6
  require("element-plus");
7
7
  require("@maketribe/request");
8
8
  require("@maketribe/utils");
@@ -58,4 +58,4 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
58
58
  }
59
59
  });
60
60
  exports.default = _sfc_main;
61
- //# sourceMappingURL=normal-Dr8AYe2r.cjs.map
61
+ //# sourceMappingURL=normal-CeD-Oud5.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"normal-Dr8AYe2r.cjs","sources":["../../src/page/index/dv/default/single/list/normal.vue"],"sourcesContent":["<template>\r\n <MKPageContainer>\r\n <MKDataTable v-if=\"dataTable\" v-show=\"!isShowDataForm\" :data-table=\"dataTable\" enableQueryParams/>\r\n <MKDataForm v-if=\"dataForm\" v-show=\"isShowDataForm\" :data-form=\"dataForm\" KDataForm/>\r\n </MKPageContainer>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport {unref, computed, watch, ref, Ref} from \"vue\";\r\nimport {useRouter} from \"vue-router\";\r\nimport {DataForm, DataTable} from \"@maketribe/dm\";\r\nimport {\r\n MKDataTable,\r\n MKDataForm,\r\n MKPageContainer,\r\n} from \"../../../../../../components\";\r\nimport {DataModelDefines} from \"../../../../../../core\";\r\nimport {useSingleView} from \"../../../../../../composables\";\r\n\r\nconst router = useRouter();\r\n\r\nconst dataTable: Ref<DataTable | null> = ref(null);\r\nconst dataForm: Ref<DataForm | null> = ref(null);\r\n\r\nwatch(\r\n computed(() => unref(router.currentRoute).meta.name as string),\r\n (name) => {\r\n dataTable.value = DataModelDefines.instance.getDataTable(name);\r\n dataForm.value = DataModelDefines.instance.getDataForm(name);\r\n },\r\n {immediate: true}\r\n);\r\n\r\nconst {isShowDataForm} = useSingleView({dataTable, dataForm});\r\n</script>\r\n"],"names":["useRouter","ref","watch","computed","unref","DataModelDefines","useSingleView"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAmBA,UAAM,SAASA,UAAAA;AAET,UAAA,YAAmCC,QAAI,IAAI;AAC3C,UAAA,WAAiCA,QAAI,IAAI;AAE/CC,QAAA;AAAA,MACEC,aAAS,MAAMC,IAAAA,MAAM,OAAO,YAAY,EAAE,KAAK,IAAc;AAAA,MAC7D,CAAC,SAAS;AACR,kBAAU,QAAQC,MAAA,iBAAiB,SAAS,aAAa,IAAI;AAC7D,iBAAS,QAAQA,MAAA,iBAAiB,SAAS,YAAY,IAAI;AAAA,MAC7D;AAAA,MACA,EAAC,WAAW,KAAI;AAAA,IAAA;AAGlB,UAAM,EAAC,eAAc,IAAIC,MAAAA,cAAc,EAAC,WAAW,UAAS;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"normal-CeD-Oud5.cjs","sources":["../../src/page/index/dv/default/single/list/normal.vue"],"sourcesContent":["<template>\r\n <MKPageContainer>\r\n <MKDataTable v-if=\"dataTable\" v-show=\"!isShowDataForm\" :data-table=\"dataTable\" enableQueryParams/>\r\n <MKDataForm v-if=\"dataForm\" v-show=\"isShowDataForm\" :data-form=\"dataForm\" KDataForm/>\r\n </MKPageContainer>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport {unref, computed, watch, ref, Ref} from \"vue\";\r\nimport {useRouter} from \"vue-router\";\r\nimport {DataForm, DataTable} from \"@maketribe/dm\";\r\nimport {\r\n MKDataTable,\r\n MKDataForm,\r\n MKPageContainer,\r\n} from \"../../../../../../components\";\r\nimport {DataModelDefines} from \"../../../../../../core\";\r\nimport {useSingleView} from \"../../../../../../composables\";\r\n\r\nconst router = useRouter();\r\n\r\nconst dataTable: Ref<DataTable | null> = ref(null);\r\nconst dataForm: Ref<DataForm | null> = ref(null);\r\n\r\nwatch(\r\n computed(() => unref(router.currentRoute).meta.name as string),\r\n (name) => {\r\n dataTable.value = DataModelDefines.instance.getDataTable(name);\r\n dataForm.value = DataModelDefines.instance.getDataForm(name);\r\n },\r\n {immediate: true}\r\n);\r\n\r\nconst {isShowDataForm} = useSingleView({dataTable, dataForm});\r\n</script>\r\n"],"names":["useRouter","ref","watch","computed","unref","DataModelDefines","useSingleView"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAmBA,UAAM,SAASA,UAAAA;AAET,UAAA,YAAmCC,QAAI,IAAI;AAC3C,UAAA,WAAiCA,QAAI,IAAI;AAE/CC,QAAA;AAAA,MACEC,aAAS,MAAMC,IAAAA,MAAM,OAAO,YAAY,EAAE,KAAK,IAAc;AAAA,MAC7D,CAAC,SAAS;AACR,kBAAU,QAAQC,MAAA,iBAAiB,SAAS,aAAa,IAAI;AAC7D,iBAAS,QAAQA,MAAA,iBAAiB,SAAS,YAAY,IAAI;AAAA,MAC7D;AAAA,MACA,EAAC,WAAW,KAAI;AAAA,IAAA;AAGlB,UAAM,EAAC,eAAc,IAAIC,MAAAA,cAAc,EAAC,WAAW,UAAS;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -4,7 +4,7 @@ const vue = require("vue");
4
4
  require("@maketribe/dm");
5
5
  const elementPlus = require("element-plus");
6
6
  const utils = require("@maketribe/utils");
7
- const index = require("./index-CJiJ6jy7.cjs");
7
+ const index = require("./index-P7aJrY9b.cjs");
8
8
  const request = require("@maketribe/request");
9
9
  require("lodash-es");
10
10
  require("@lexical/overflow");
@@ -262,4 +262,4 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
262
262
  }
263
263
  });
264
264
  exports.default = _sfc_main;
265
- //# sourceMappingURL=permission-manage-DeDXlRil.cjs.map
265
+ //# sourceMappingURL=permission-manage-B6TKnw0T.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"permission-manage-DeDXlRil.cjs","sources":["../../src/modules/ms/pages/ms-role/components/role-permission-config/role-permission-config-options.ts","../../src/modules/ms/pages/ms-role/components/role-permission-config/role-permission-config.tsx","../../src/modules/ms/pages/ms-role/components/role-permission-config/index.ts","../../src/modules/ms/pages/ms-role/permission-manage.vue"],"sourcesContent":["import { ExtractPropTypes } from \"vue\";\nimport { RolePermissionConfigTable } from \"../../../../dataviews\";\nimport { buildProps } from \"@maketribe/utils\";\n\nexport const rolePermissionConfigProps = buildProps({\n rolePermissionConfigTable: {\n type: RolePermissionConfigTable,\n required: true,\n },\n} as const);\n\nexport type RolePermissionConfigProps = ExtractPropTypes<\n typeof rolePermissionConfigProps\n>;\n\nexport const rolePermissionConfigEmits = {\n roleChange: (id: any) => true,\n};\n\nexport type RolePermissionConfigEmits = typeof rolePermissionConfigEmits;\n","import {\r\n Fragment,\r\n computed,\r\n defineComponent,\r\n reactive,\r\n unref,\r\n watch,\r\n} from \"vue\";\r\nimport {\r\n ElTable,\r\n ElTableColumn,\r\n ElCheckbox,\r\n ElTooltip,\r\n ElCard,\r\n ElButton,\r\n ElAlert,\r\n} from \"element-plus\";\r\nimport { postTraverse } from \"@maketribe/utils\";\r\nimport { MsRoleMenuNode, MsRolePermissionPointDefine } from \"../../../../dataviews\";\r\nimport { useI18n } from \"../../../../../../composables\";\r\nimport {\r\n rolePermissionConfigEmits,\r\n rolePermissionConfigProps,\r\n} from \"./role-permission-config-options\";\r\n\r\ntype RowInfo = {\r\n roleMenus: MsRoleMenuNode[];\r\n permissionPoints: MsRolePermissionPointDefine[];\r\n};\r\n\r\ntype CellInfo = { row: RowInfo; rowIndex: number; columnIndex: number };\r\n\r\nexport default defineComponent({\r\n name: \"MKRolePermissionConfig\",\r\n props: rolePermissionConfigProps,\r\n emits: rolePermissionConfigEmits,\r\n setup(props, { emit }) {\r\n const i18n = useI18n()!;\r\n\r\n const rolePermissionConfigTable = computed(\r\n () => props.rolePermissionConfigTable\r\n );\r\n\r\n const loading = computed(() => unref(rolePermissionConfigTable).loading);\r\n\r\n const rootRoleMenuNodes = computed(() =>\r\n unref(rolePermissionConfigTable).getRootRoleMenuNodes()\r\n );\r\n\r\n const list = computed(() => {\r\n const _rootRoleMenuNodes = unref(rootRoleMenuNodes);\r\n\r\n const list: RowInfo[] = [];\r\n\r\n postTraverse<MsRoleMenuNode>(\r\n _rootRoleMenuNodes,\r\n (roleMenu, ancestors) => {\r\n if (!roleMenu.children.length) {\r\n list.push({\r\n roleMenus: [...ancestors],\r\n permissionPoints: roleMenu.permissionPoints,\r\n });\r\n }\r\n }\r\n );\r\n\r\n return list;\r\n });\r\n\r\n const maxMenuColumns = computed(() => {\r\n const _list = unref(list);\r\n\r\n return Math.max(..._list.map((item) => item.roleMenus.length), 0);\r\n });\r\n\r\n const handleSpanMethod = ({\r\n row,\r\n rowIndex,\r\n columnIndex,\r\n }: CellInfo): [number, number] => {\r\n const _maxMenuColumns = unref(maxMenuColumns);\r\n\r\n let columnSpan = 1;\r\n\r\n if (row.roleMenus.length < _maxMenuColumns) {\r\n if (row.roleMenus.length - 1 === columnIndex) {\r\n columnSpan = _maxMenuColumns - columnIndex;\r\n } else if (\r\n columnIndex < _maxMenuColumns &&\r\n columnIndex >= row.roleMenus.length\r\n ) {\r\n columnSpan = 0;\r\n }\r\n }\r\n\r\n let rowSpan = 1;\r\n\r\n const _list = unref(list);\r\n\r\n if (columnIndex < _maxMenuColumns) {\r\n const bothExisting: boolean = !!(\r\n _list[rowIndex]?.roleMenus?.[columnIndex] &&\r\n _list[rowIndex - 1]?.roleMenus?.[columnIndex]\r\n );\r\n\r\n if (\r\n // 第一行\r\n rowIndex === 0 ||\r\n // 两条记录都存在,且前一条和当前记录不一致\r\n (bothExisting &&\r\n _list[rowIndex].roleMenus[columnIndex].id !==\r\n _list[rowIndex - 1].roleMenus[columnIndex].id)\r\n ) {\r\n let count = 1;\r\n\r\n for (let i = rowIndex + 1; i < _list.length; i++) {\r\n if (\r\n _list[rowIndex].roleMenus[columnIndex]?.id !==\r\n _list[i].roleMenus[columnIndex]?.id\r\n ) {\r\n break;\r\n }\r\n count++;\r\n }\r\n\r\n rowSpan = count;\r\n } else if (bothExisting) {\r\n // 两条记录都存在切记录一致\r\n rowSpan = 0;\r\n }\r\n }\r\n\r\n return [rowSpan, columnSpan];\r\n };\r\n\r\n const saveRolePermission = async () => {\r\n props.rolePermissionConfigTable.submitPermission();\r\n };\r\n\r\n watch(\r\n computed(() => props.rolePermissionConfigTable),\r\n async (rolePermissionConfigTable) => {\r\n await rolePermissionConfigTable.init();\r\n await rolePermissionConfigTable.load();\r\n },\r\n { immediate: true }\r\n );\r\n\r\n return () => {\r\n const menuColumnVnodes = new Array(unref(maxMenuColumns))\r\n .fill(0)\r\n .map((_, i) => {\r\n return (\r\n <ElTableColumn\r\n label={i18n.translate(\"mk.rolePermissionConfig.tableMenuHeader\", {\r\n level: i + 1,\r\n })}\r\n v-slots={{\r\n default: ({ row }: { row: RowInfo }) => {\r\n const roleMenu = row.roleMenus[i];\r\n\r\n if (!roleMenu) {\r\n return null;\r\n }\r\n\r\n return (\r\n <ElTooltip content={roleMenu.title} placement=\"top\">\r\n <ElCheckbox\r\n class=\"role-permission-config__menu\"\r\n modelValue={roleMenu.selected}\r\n indeterminate={roleMenu.indeterminate}\r\n onUpdate:modelValue={() =>\r\n unref(rolePermissionConfigTable).toggleRoleMenu(\r\n roleMenu\r\n )\r\n }\r\n >\r\n {roleMenu.title}\r\n </ElCheckbox>\r\n </ElTooltip>\r\n );\r\n },\r\n }}\r\n />\r\n );\r\n });\r\n\r\n return (\r\n <ElCard\r\n v-slots={{\r\n header: () => {\r\n return (\r\n <div class=\"flex gap-[10px]\">\r\n <div class=\"flex-1\">\r\n <ElAlert\r\n title={\r\n props.rolePermissionConfigTable.hasChange()\r\n ? `当前【 ${rolePermissionConfigTable.value.currentRoleDesc} 】权限已发生改变,保存后生效!`\r\n : `当前【 ${rolePermissionConfigTable.value.currentRoleDesc} 】权限无任何改变!`\r\n }\r\n showIcon\r\n type={\r\n props.rolePermissionConfigTable.hasChange()\r\n ? \"warning\"\r\n : \"info\"\r\n }\r\n closable={false}\r\n />\r\n </div>\r\n <div class=\"header-box-tools\">\r\n <ElButton\r\n onClick={saveRolePermission}\r\n type=\"primary\"\r\n disabled={!props.rolePermissionConfigTable.hasChange()}\r\n >\r\n {i18n.translate(\"mk.dataForm.saveButton\")}\r\n </ElButton>\r\n </div>\r\n </div>\r\n );\r\n },\r\n }}\r\n >\r\n <ElTable\r\n class=\"role-permission-config\"\r\n data={unref(list)}\r\n border\r\n spanMethod={handleSpanMethod}\r\n v-loading={unref(loading)}\r\n >\r\n {menuColumnVnodes}\r\n\r\n <ElTableColumn\r\n label={i18n.translate(\r\n \"mk.rolePermissionConfig.tablePermissionPointHeader\"\r\n )}\r\n minWidth=\"300px\"\r\n v-slots={{\r\n default: ({ row }: { row: RowInfo }) => {\r\n const permissionPointVnodes = row.permissionPoints.map(\r\n (permissionPoint) => {\r\n return (\r\n <ElTooltip\r\n content={permissionPoint.name}\r\n placement=\"top\"\r\n >\r\n <ElCheckbox\r\n class=\"role-permission-config__permission-point\"\r\n modelValue={permissionPoint.selected}\r\n onUpdate:modelValue={() => {\r\n unref(\r\n rolePermissionConfigTable\r\n ).toggleRolePermissionPoint(permissionPoint);\r\n }}\r\n >\r\n {permissionPoint.name}\r\n </ElCheckbox>\r\n </ElTooltip>\r\n );\r\n }\r\n );\r\n\r\n return <Fragment>{permissionPointVnodes}</Fragment>;\r\n },\r\n }}\r\n />\r\n </ElTable>\r\n </ElCard>\r\n );\r\n };\r\n },\r\n});\r\n","import { withInstall } from \"@maketribe/utils\";\r\nimport RolePermissionConfig from \"./role-permission-config\";\r\n\r\nexport const MKRolePermissionConfig = withInstall(RolePermissionConfig);\r\nexport default MKRolePermissionConfig;\r\n\r\nexport * from \"./role-permission-config-options\";\r\n","<script setup lang=\"ts\">\r\nimport {reactive} from \"vue\";\r\nimport {MsRole, RolePermissionConfigTable} from \"../../dataviews\";\r\nimport {MSAppClient} from \"../../../../core\";\r\nimport {MKPageContainer} from \"../../../../components\";\r\nimport {MKRolePermissionConfig} from \"./components/role-permission-config\";\r\nimport {CancelToken, DataViewRequest, DvOpt, Where} from \"@maketribe/request\";\r\nimport {ElMessage, ElScrollbar} from \"element-plus\";\r\n\r\nconst router = useRouter();\r\n\r\nconst dataViewRequest = new DataViewRequest({\r\n httpRequest: MSAppClient.instance?.httpRequest!,\r\n name: \"ms-role\",\r\n moduleName: \"ms\"\r\n});\r\n\r\nconst rolePermissionConfigTable = reactive(\r\n new RolePermissionConfigTable()\r\n) as RolePermissionConfigTable;\r\n\r\nconst currentRole: Ref<MsRole | null> = ref(null);\r\n\r\nwatch(currentRole, (currentRole) => {\r\n rolePermissionConfigTable.selectRolePermission(currentRole);\r\n});\r\n\r\nonMounted(() => {\r\n watch(computed(() => unref(router.currentRoute)), async (currentRoute, _, onCleanup) => {\r\n\r\n const where = new Where();\r\n where.addCondition(\"id\", \"=\", currentRoute.params.id);\r\n\r\n let canceler: Function | null = null;\r\n\r\n onCleanup(() => {\r\n canceler?.();\r\n });\r\n\r\n try {\r\n const response = await dataViewRequest.query({\r\n data: {condition: where, pn: 1, pc: 1}, cancelToken: new CancelToken((c) => {\r\n canceler = c;\r\n })\r\n });\r\n\r\n if (response.data.code !== 200) {\r\n ElMessage.error(response.data.msg);\r\n return;\r\n }\r\n\r\n currentRole.value = response.data.data[0] ?? null;\r\n } catch (e) {\r\n ElMessage.error(\"网络异常\");\r\n }\r\n\r\n },\r\n {immediate: true}\r\n )\r\n});\r\n\r\n</script>\r\n\r\n<template>\r\n <MKPageContainer>\r\n <ElScrollbar height=\"100%\">\r\n <MKRolePermissionConfig v-if=\"currentRole\" :rolePermissionConfigTable=\"rolePermissionConfigTable\"/>\r\n </ElScrollbar>\r\n </MKPageContainer>\r\n</template>\r\n"],"names":["buildProps","RolePermissionConfigTable","_isSlot","s","Object","prototype","toString","call","_isVNode","defineComponent","name","props","rolePermissionConfigProps","emits","rolePermissionConfigEmits","setup","emit","i18n","useI18n","rolePermissionConfigTable","computed","loading","unref","rootRoleMenuNodes","getRootRoleMenuNodes","list","_rootRoleMenuNodes","postTraverse","roleMenu","ancestors","children","length","push","roleMenus","permissionPoints","maxMenuColumns","_list","Math","max","map","item","handleSpanMethod","row","rowIndex","columnIndex","_maxMenuColumns","columnSpan","rowSpan","bothExisting","id","count","i","saveRolePermission","submitPermission","watch","init","load","immediate","menuColumnVnodes","Array","fill","_","_createVNode","ElTableColumn","translate","level","default","ElTooltip","title","ElCheckbox","selected","indeterminate","onUpdate:modelValue","toggleRoleMenu","ElCard","_withDirectives","ElTable","permissionPointVnodes","permissionPoint","toggleRolePermissionPoint","_Fragment","_resolveDirective","header","_slot","ElAlert","hasChange","value","currentRoleDesc","ElButton","withInstall","useRouter","DataViewRequest","MSAppClient","reactive","ref","currentRole","onMounted","Where","CancelToken","ElMessage"],"mappings":"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"}
1
+ {"version":3,"file":"permission-manage-B6TKnw0T.cjs","sources":["../../src/modules/ms/pages/ms-role/components/role-permission-config/role-permission-config-options.ts","../../src/modules/ms/pages/ms-role/components/role-permission-config/role-permission-config.tsx","../../src/modules/ms/pages/ms-role/components/role-permission-config/index.ts","../../src/modules/ms/pages/ms-role/permission-manage.vue"],"sourcesContent":["import { ExtractPropTypes } from \"vue\";\nimport { RolePermissionConfigTable } from \"../../../../dataviews\";\nimport { buildProps } from \"@maketribe/utils\";\n\nexport const rolePermissionConfigProps = buildProps({\n rolePermissionConfigTable: {\n type: RolePermissionConfigTable,\n required: true,\n },\n} as const);\n\nexport type RolePermissionConfigProps = ExtractPropTypes<\n typeof rolePermissionConfigProps\n>;\n\nexport const rolePermissionConfigEmits = {\n roleChange: (id: any) => true,\n};\n\nexport type RolePermissionConfigEmits = typeof rolePermissionConfigEmits;\n","import {\r\n Fragment,\r\n computed,\r\n defineComponent,\r\n reactive,\r\n unref,\r\n watch,\r\n} from \"vue\";\r\nimport {\r\n ElTable,\r\n ElTableColumn,\r\n ElCheckbox,\r\n ElTooltip,\r\n ElCard,\r\n ElButton,\r\n ElAlert,\r\n} from \"element-plus\";\r\nimport { postTraverse } from \"@maketribe/utils\";\r\nimport { MsRoleMenuNode, MsRolePermissionPointDefine } from \"../../../../dataviews\";\r\nimport { useI18n } from \"../../../../../../composables\";\r\nimport {\r\n rolePermissionConfigEmits,\r\n rolePermissionConfigProps,\r\n} from \"./role-permission-config-options\";\r\n\r\ntype RowInfo = {\r\n roleMenus: MsRoleMenuNode[];\r\n permissionPoints: MsRolePermissionPointDefine[];\r\n};\r\n\r\ntype CellInfo = { row: RowInfo; rowIndex: number; columnIndex: number };\r\n\r\nexport default defineComponent({\r\n name: \"MKRolePermissionConfig\",\r\n props: rolePermissionConfigProps,\r\n emits: rolePermissionConfigEmits,\r\n setup(props, { emit }) {\r\n const i18n = useI18n()!;\r\n\r\n const rolePermissionConfigTable = computed(\r\n () => props.rolePermissionConfigTable\r\n );\r\n\r\n const loading = computed(() => unref(rolePermissionConfigTable).loading);\r\n\r\n const rootRoleMenuNodes = computed(() =>\r\n unref(rolePermissionConfigTable).getRootRoleMenuNodes()\r\n );\r\n\r\n const list = computed(() => {\r\n const _rootRoleMenuNodes = unref(rootRoleMenuNodes);\r\n\r\n const list: RowInfo[] = [];\r\n\r\n postTraverse<MsRoleMenuNode>(\r\n _rootRoleMenuNodes,\r\n (roleMenu, ancestors) => {\r\n if (!roleMenu.children.length) {\r\n list.push({\r\n roleMenus: [...ancestors],\r\n permissionPoints: roleMenu.permissionPoints,\r\n });\r\n }\r\n }\r\n );\r\n\r\n return list;\r\n });\r\n\r\n const maxMenuColumns = computed(() => {\r\n const _list = unref(list);\r\n\r\n return Math.max(..._list.map((item) => item.roleMenus.length), 0);\r\n });\r\n\r\n const handleSpanMethod = ({\r\n row,\r\n rowIndex,\r\n columnIndex,\r\n }: CellInfo): [number, number] => {\r\n const _maxMenuColumns = unref(maxMenuColumns);\r\n\r\n let columnSpan = 1;\r\n\r\n if (row.roleMenus.length < _maxMenuColumns) {\r\n if (row.roleMenus.length - 1 === columnIndex) {\r\n columnSpan = _maxMenuColumns - columnIndex;\r\n } else if (\r\n columnIndex < _maxMenuColumns &&\r\n columnIndex >= row.roleMenus.length\r\n ) {\r\n columnSpan = 0;\r\n }\r\n }\r\n\r\n let rowSpan = 1;\r\n\r\n const _list = unref(list);\r\n\r\n if (columnIndex < _maxMenuColumns) {\r\n const bothExisting: boolean = !!(\r\n _list[rowIndex]?.roleMenus?.[columnIndex] &&\r\n _list[rowIndex - 1]?.roleMenus?.[columnIndex]\r\n );\r\n\r\n if (\r\n // 第一行\r\n rowIndex === 0 ||\r\n // 两条记录都存在,且前一条和当前记录不一致\r\n (bothExisting &&\r\n _list[rowIndex].roleMenus[columnIndex].id !==\r\n _list[rowIndex - 1].roleMenus[columnIndex].id)\r\n ) {\r\n let count = 1;\r\n\r\n for (let i = rowIndex + 1; i < _list.length; i++) {\r\n if (\r\n _list[rowIndex].roleMenus[columnIndex]?.id !==\r\n _list[i].roleMenus[columnIndex]?.id\r\n ) {\r\n break;\r\n }\r\n count++;\r\n }\r\n\r\n rowSpan = count;\r\n } else if (bothExisting) {\r\n // 两条记录都存在切记录一致\r\n rowSpan = 0;\r\n }\r\n }\r\n\r\n return [rowSpan, columnSpan];\r\n };\r\n\r\n const saveRolePermission = async () => {\r\n props.rolePermissionConfigTable.submitPermission();\r\n };\r\n\r\n watch(\r\n computed(() => props.rolePermissionConfigTable),\r\n async (rolePermissionConfigTable) => {\r\n await rolePermissionConfigTable.init();\r\n await rolePermissionConfigTable.load();\r\n },\r\n { immediate: true }\r\n );\r\n\r\n return () => {\r\n const menuColumnVnodes = new Array(unref(maxMenuColumns))\r\n .fill(0)\r\n .map((_, i) => {\r\n return (\r\n <ElTableColumn\r\n label={i18n.translate(\"mk.rolePermissionConfig.tableMenuHeader\", {\r\n level: i + 1,\r\n })}\r\n v-slots={{\r\n default: ({ row }: { row: RowInfo }) => {\r\n const roleMenu = row.roleMenus[i];\r\n\r\n if (!roleMenu) {\r\n return null;\r\n }\r\n\r\n return (\r\n <ElTooltip content={roleMenu.title} placement=\"top\">\r\n <ElCheckbox\r\n class=\"role-permission-config__menu\"\r\n modelValue={roleMenu.selected}\r\n indeterminate={roleMenu.indeterminate}\r\n onUpdate:modelValue={() =>\r\n unref(rolePermissionConfigTable).toggleRoleMenu(\r\n roleMenu\r\n )\r\n }\r\n >\r\n {roleMenu.title}\r\n </ElCheckbox>\r\n </ElTooltip>\r\n );\r\n },\r\n }}\r\n />\r\n );\r\n });\r\n\r\n return (\r\n <ElCard\r\n v-slots={{\r\n header: () => {\r\n return (\r\n <div class=\"flex gap-[10px]\">\r\n <div class=\"flex-1\">\r\n <ElAlert\r\n title={\r\n props.rolePermissionConfigTable.hasChange()\r\n ? `当前【 ${rolePermissionConfigTable.value.currentRoleDesc} 】权限已发生改变,保存后生效!`\r\n : `当前【 ${rolePermissionConfigTable.value.currentRoleDesc} 】权限无任何改变!`\r\n }\r\n showIcon\r\n type={\r\n props.rolePermissionConfigTable.hasChange()\r\n ? \"warning\"\r\n : \"info\"\r\n }\r\n closable={false}\r\n />\r\n </div>\r\n <div class=\"header-box-tools\">\r\n <ElButton\r\n onClick={saveRolePermission}\r\n type=\"primary\"\r\n disabled={!props.rolePermissionConfigTable.hasChange()}\r\n >\r\n {i18n.translate(\"mk.dataForm.saveButton\")}\r\n </ElButton>\r\n </div>\r\n </div>\r\n );\r\n },\r\n }}\r\n >\r\n <ElTable\r\n class=\"role-permission-config\"\r\n data={unref(list)}\r\n border\r\n spanMethod={handleSpanMethod}\r\n v-loading={unref(loading)}\r\n >\r\n {menuColumnVnodes}\r\n\r\n <ElTableColumn\r\n label={i18n.translate(\r\n \"mk.rolePermissionConfig.tablePermissionPointHeader\"\r\n )}\r\n minWidth=\"300px\"\r\n v-slots={{\r\n default: ({ row }: { row: RowInfo }) => {\r\n const permissionPointVnodes = row.permissionPoints.map(\r\n (permissionPoint) => {\r\n return (\r\n <ElTooltip\r\n content={permissionPoint.name}\r\n placement=\"top\"\r\n >\r\n <ElCheckbox\r\n class=\"role-permission-config__permission-point\"\r\n modelValue={permissionPoint.selected}\r\n onUpdate:modelValue={() => {\r\n unref(\r\n rolePermissionConfigTable\r\n ).toggleRolePermissionPoint(permissionPoint);\r\n }}\r\n >\r\n {permissionPoint.name}\r\n </ElCheckbox>\r\n </ElTooltip>\r\n );\r\n }\r\n );\r\n\r\n return <Fragment>{permissionPointVnodes}</Fragment>;\r\n },\r\n }}\r\n />\r\n </ElTable>\r\n </ElCard>\r\n );\r\n };\r\n },\r\n});\r\n","import { withInstall } from \"@maketribe/utils\";\r\nimport RolePermissionConfig from \"./role-permission-config\";\r\n\r\nexport const MKRolePermissionConfig = withInstall(RolePermissionConfig);\r\nexport default MKRolePermissionConfig;\r\n\r\nexport * from \"./role-permission-config-options\";\r\n","<script setup lang=\"ts\">\r\nimport {reactive} from \"vue\";\r\nimport {MsRole, RolePermissionConfigTable} from \"../../dataviews\";\r\nimport {MSAppClient} from \"../../../../core\";\r\nimport {MKPageContainer} from \"../../../../components\";\r\nimport {MKRolePermissionConfig} from \"./components/role-permission-config\";\r\nimport {CancelToken, DataViewRequest, DvOpt, Where} from \"@maketribe/request\";\r\nimport {ElMessage, ElScrollbar} from \"element-plus\";\r\n\r\nconst router = useRouter();\r\n\r\nconst dataViewRequest = new DataViewRequest({\r\n httpRequest: MSAppClient.instance?.httpRequest!,\r\n name: \"ms-role\",\r\n moduleName: \"ms\"\r\n});\r\n\r\nconst rolePermissionConfigTable = reactive(\r\n new RolePermissionConfigTable()\r\n) as RolePermissionConfigTable;\r\n\r\nconst currentRole: Ref<MsRole | null> = ref(null);\r\n\r\nwatch(currentRole, (currentRole) => {\r\n rolePermissionConfigTable.selectRolePermission(currentRole);\r\n});\r\n\r\nonMounted(() => {\r\n watch(computed(() => unref(router.currentRoute)), async (currentRoute, _, onCleanup) => {\r\n\r\n const where = new Where();\r\n where.addCondition(\"id\", \"=\", currentRoute.params.id);\r\n\r\n let canceler: Function | null = null;\r\n\r\n onCleanup(() => {\r\n canceler?.();\r\n });\r\n\r\n try {\r\n const response = await dataViewRequest.query({\r\n data: {condition: where, pn: 1, pc: 1}, cancelToken: new CancelToken((c) => {\r\n canceler = c;\r\n })\r\n });\r\n\r\n if (response.data.code !== 200) {\r\n ElMessage.error(response.data.msg);\r\n return;\r\n }\r\n\r\n currentRole.value = response.data.data[0] ?? null;\r\n } catch (e) {\r\n ElMessage.error(\"网络异常\");\r\n }\r\n\r\n },\r\n {immediate: true}\r\n )\r\n});\r\n\r\n</script>\r\n\r\n<template>\r\n <MKPageContainer>\r\n <ElScrollbar height=\"100%\">\r\n <MKRolePermissionConfig v-if=\"currentRole\" :rolePermissionConfigTable=\"rolePermissionConfigTable\"/>\r\n </ElScrollbar>\r\n </MKPageContainer>\r\n</template>\r\n"],"names":["buildProps","RolePermissionConfigTable","_isSlot","s","Object","prototype","toString","call","_isVNode","defineComponent","name","props","rolePermissionConfigProps","emits","rolePermissionConfigEmits","setup","emit","i18n","useI18n","rolePermissionConfigTable","computed","loading","unref","rootRoleMenuNodes","getRootRoleMenuNodes","list","_rootRoleMenuNodes","postTraverse","roleMenu","ancestors","children","length","push","roleMenus","permissionPoints","maxMenuColumns","_list","Math","max","map","item","handleSpanMethod","row","rowIndex","columnIndex","_maxMenuColumns","columnSpan","rowSpan","bothExisting","id","count","i","saveRolePermission","submitPermission","watch","init","load","immediate","menuColumnVnodes","Array","fill","_","_createVNode","ElTableColumn","translate","level","default","ElTooltip","title","ElCheckbox","selected","indeterminate","onUpdate:modelValue","toggleRoleMenu","ElCard","_withDirectives","ElTable","permissionPointVnodes","permissionPoint","toggleRolePermissionPoint","_Fragment","_resolveDirective","header","_slot","ElAlert","hasChange","value","currentRoleDesc","ElButton","withInstall","useRouter","DataViewRequest","MSAppClient","reactive","ref","currentRole","onMounted","Where","CancelToken","ElMessage"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAIO,MAAM,4BAA4BA,MAAAA,WAAW;AAAA,EAClD,2BAA2B;AAAA,IACzB,MAAMC,MAAA;AAAA,IACN,UAAU;AAAA,EACZ;AACF,CAAU;AAMH,MAAM,4BAA4B;AAAA,EACvC,YAAY,CAAC,OAAY;AAC3B;ACM0C,SAAAC,QAAAC,GAAA;AAAA,SAAA,OAAAA,MAAA,cAAAC,OAAAC,UAAAC,SAAAC,KAAAJ,CAAA,MAAAK,qBAAAA,CAAAA,IAAA,QAAAL,CAAA;AAAA;AAS1C,MAAeM,2DAAgB;AAAA,EAC7BC,MAAM;AAAA,EACNC,OAAOC;AAAAA,EACPC,OAAOC;AAAAA,EACPC,MAAMJ,OAAO;AAAA,IAAEK;AAAAA,EAAK,GAAG;AACrB,UAAMC,OAAOC,MAAAA;AAEb,UAAMC,4BAA4BC,IAAQ,SACxC,MAAMT,MAAMQ,yBACd;AAEA,UAAME,UAAUD,IAAAA,SAAS,MAAME,IAAK,MAACH,yBAAyB,EAAEE,OAAO;AAEvE,UAAME,oBAAoBH,IAAAA,SAAS,MACjCE,IAAAA,MAAMH,yBAAyB,EAAEK,qBAAoB,CACvD;AAEA,UAAMC,OAAOL,IAAAA,SAAS,MAAM;AAC1B,YAAMM,qBAAqBJ,UAAMC,iBAAiB;AAElD,YAAME,QAAkB,CAAA;AAExBE,YAAAA,aACED,oBACA,CAACE,UAAUC,cAAc;AACvB,YAAI,CAACD,SAASE,SAASC,QAAQ;AAC7BN,UAAAA,MAAKO,KAAK;AAAA,YACRC,WAAW,CAAC,GAAGJ,SAAS;AAAA,YACxBK,kBAAkBN,SAASM;AAAAA,UAC7B,CAAC;AAAA,QACH;AAAA,MACF,CACF;AAEA,aAAOT;AAAAA,IACT,CAAC;AAED,UAAMU,iBAAiBf,IAAAA,SAAS,MAAM;AACpC,YAAMgB,QAAQd,UAAMG,IAAI;AAExB,aAAOY,KAAKC,IAAI,GAAGF,MAAMG,IAAKC,UAASA,KAAKP,UAAUF,MAAM,GAAG,CAAC;AAAA,IAClE,CAAC;AAED,UAAMU,mBAAmBA,CAAC;AAAA,MACxBC;AAAAA,MACAC;AAAAA,MACAC;AAAAA,IACQ,MAAwB;;AAChC,YAAMC,kBAAkBvB,UAAMa,cAAc;AAE5C,UAAIW,aAAa;AAEjB,UAAIJ,IAAIT,UAAUF,SAASc,iBAAiB;AAC1C,YAAIH,IAAIT,UAAUF,SAAS,MAAMa,aAAa;AAC5CE,uBAAaD,kBAAkBD;AAAAA,QACjC,WACEA,cAAcC,mBACdD,eAAeF,IAAIT,UAAUF,QAC7B;AACAe,uBAAa;AAAA,QACf;AAAA,MACF;AAEA,UAAIC,UAAU;AAEd,YAAMX,QAAQd,UAAMG,IAAI;AAExB,UAAImB,cAAcC,iBAAiB;AACjC,cAAMG,eAAwB,CAAC,IAC7BZ,iBAAMO,QAAQ,MAAdP,mBAAiBH,cAAjBG,mBAA6BQ,mBAC7BR,iBAAMO,WAAW,CAAC,MAAlBP,mBAAqBH,cAArBG,mBAAiCQ;AAGnC;AAAA;AAAA,UAEED,aAAa;AAAA,UAEZK,gBACCZ,MAAMO,QAAQ,EAAEV,UAAUW,WAAW,EAAEK,OACrCb,MAAMO,WAAW,CAAC,EAAEV,UAAUW,WAAW,EAAEK;AAAAA,UAC/C;AACA,cAAIC,QAAQ;AAEZ,mBAASC,IAAIR,WAAW,GAAGQ,IAAIf,MAAML,QAAQoB,KAAK;AAChD,kBACEf,WAAMO,QAAQ,EAAEV,UAAUW,WAAW,MAArCR,mBAAwCa,UACxCb,WAAMe,CAAC,EAAElB,UAAUW,WAAW,MAA9BR,mBAAiCa,KACjC;AACA;AAAA,YACF;AACAC;AAAAA,UACF;AAEAH,oBAAUG;AAAAA,QACX,WAAUF,cAAc;AAEvBD,oBAAU;AAAA,QACZ;AAAA,MACF;AAEA,aAAO,CAACA,SAASD,UAAU;AAAA;AAG7B,UAAMM,qBAAqB,YAAY;AACrCzC,YAAMQ,0BAA0BkC;;AAGlCC,QAAK,MACHlC,IAAQ,SAAC,MAAMT,MAAMQ,yBAAyB,GAC9C,OAAOA,+BAA8B;AACnC,YAAMA,2BAA0BoC;AAChC,YAAMpC,2BAA0BqC;IAClC,GACA;AAAA,MAAEC,WAAW;AAAA,IAAK,CACpB;AAEA,WAAO,MAAM;AACX,YAAMC,mBAAmB,IAAIC,MAAMrC,IAAAA,MAAMa,cAAc,CAAC,EACrDyB,KAAK,CAAC,EACNrB,IAAI,CAACsB,GAAGV,MAAM;AACb,eAAAW,IAAAA,YAAAC,YAAAA,eAAA;AAAA,UAAA,SAEW9C,KAAK+C,UAAU,2CAA2C;AAAA,YAC/DC,OAAOd,IAAI;AAAA,WACZ;AAAA,WACQ;AAAA,UACPe,SAASA,CAAC;AAAA,YAAExB;AAAAA,UAAsB,MAAM;AACtC,kBAAMd,WAAWc,IAAIT,UAAUkB,CAAC;AAEhC,gBAAI,CAACvB,UAAU;AACb,qBAAO;AAAA,YACT;AAEA,mBAAAkC,IAAAA,YAAAK,YAAAA,WAAA;AAAA,cAAA,WACsBvC,SAASwC;AAAAA,cAAK,aAAA;AAAA,YAAA,GAAA;AAAA,cAAAF,SAAAA,MAAAJ,CAAAA,IAAA,YAAAO,wBAAA;AAAA,gBAAA,SAAA;AAAA,gBAAA,cAGlBzC,SAAS0C;AAAAA,gBAAQ,iBACd1C,SAAS2C;AAAAA,gBAAa,uBAChBC,MACnBlD,IAAK,MAACH,yBAAyB,EAAEsD,eAC/B7C,QACF;AAAA,cAAC,GAAA;AAAA,gBAAAsC,SAAAA,MAGFtC,CAAAA,SAASwC,KAAK;AAAA,cAAA,CAAA,CAAA;AAAA,YAAA,CAAA;AAAA,UAIvB;AAAA,SACD;AAAA,MAGP,CAAC;AAEH,aAAAN,IAAA,YAAAY,YAAA,QAAA,MAAA;AAAA,QAAAR,SAAAA,MAAA,CAAAS,mBAAAb,IAAAA,YAAAc,YAAAA,SAAA;AAAA,UAAA,SAAA;AAAA,UAAA,QAsCYtD,IAAK,MAACG,IAAI;AAAA,UAAC,UAAA;AAAA,UAAA,cAELgB;AAAAA,QAAgB,GAAA;AAAA,UAAAyB,SAAAA,MAAA,CAG3BR,kBAAgBI,IAAAA,YAAAC,YAAAA,eAAA;AAAA,YAAA,SAGR9C,KAAK+C,UACV,oDACF;AAAA,YAAC,YAAA;AAAA,aAEQ;AAAA,YACPE,SAASA,CAAC;AAAA,cAAExB;AAAAA,YAAsB,MAAM;AACtC,oBAAMmC,wBAAwBnC,IAAIR,iBAAiBK,IAChDuC,qBAAoB;AACnB,uBAAAhB,IAAAA,YAAAK,YAAAA,WAAA;AAAA,kBAAA,WAEaW,gBAAgBpE;AAAAA,kBAAI,aAAA;AAAA,gBAAA,GAAA;AAAA,kBAAAwD,SAAAA,MAAAJ,CAAAA,IAAA,YAAAO,wBAAA;AAAA,oBAAA,SAAA;AAAA,oBAAA,cAKfS,gBAAgBR;AAAAA,oBAAQ,uBACfE,MAAM;AACzBlD,0BAAAA,MACEH,yBACF,EAAE4D,0BAA0BD,eAAe;AAAA,oBAC7C;AAAA,kBAAC,GAAA;AAAA,oBAAAZ,SAAAA,MAEAY,CAAAA,gBAAgBpE,IAAI;AAAA,kBAAA,CAAA,CAAA;AAAA,gBAAA,CAAA;AAAA,cAI7B,CACF;AAEA,qBAAAoD,IAAA,YAAAkB,IAAA,UAAA,MAAA,CAAkBH,qBAAqB,CAAA;AAAA,YACzC;AAAA,WACD,CAAA;AAAA,QAAA,CAAA,GAAA,CAAA,CAAAI,IAAAA,iBAAA,SAAA,GApCQ3D,IAAAA,MAAMD,OAAO,CAAC,CAAA,CAAA,CAAA;AAAA,QAtCzB6D,QAAQA,MAAM;AAAA,cAAAC;AACZ,iBAAArB,IAAAA,YAAA,OAAA;AAAA,YAAA,SAAA;AAAA,UAAA,GAAA,CAAAA,IAAA,YAAA,OAAA;AAAA,YAAA,SAAA;AAAA,aAAAA,CAAAA,IAAA,YAAAsB,qBAAA;AAAA,YAAA,SAKUzE,MAAMQ,0BAA0BkE,UAAS,IACrC,OAAOlE,0BAA0BmE,MAAMC,eAAe,qBACtD,OAAOpE,0BAA0BmE,MAAMC,eAAe;AAAA,YAAY,YAAA;AAAA,YAAA,QAItE5E,MAAMQ,0BAA0BkE,UAAW,IACvC,YACA;AAAA,YAAM,YAEF;AAAA,UAAK,GAAA,IAAA,CAAA,CAAA,GAAAvB,IAAAA,YAAA,OAAA;AAAA,YAAA,SAAA;AAAA,aAAAA,CAAAA,IAAA,YAAA0B,sBAAA;AAAA,YAAA,WAKNpC;AAAAA,YAAkB,QAAA;AAAA,YAAA,YAEjB,CAACzC,MAAMQ,0BAA0BkE,UAAU;AAAA,aAACnF,QAAAiF,QAErDlE,KAAK+C,UAAU,wBAAwB,CAAC,IAAAmB,QAAA;AAAA,YAAAjB,SAAAA,MAAA,CAAAiB,KAAA;AAAA,UAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,QAKnD;AAAA,MAAC,CAAA;AAAA;EAkDX;AACF,CAAC;AC5QY,MAAA,yBAAyBM,kBAAY,oBAAoB;;;;;ACMtE,UAAM,SAASC,UAAAA;AAET,UAAA,kBAAkB,IAAIC,wBAAgB;AAAA,MAC1C,cAAaC,WAAAA,YAAY,aAAZA,mBAAsB;AAAA,MACnC,MAAM;AAAA,MACN,YAAY;AAAA,IAAA,CACb;AAED,UAAM,4BAA4BC,IAAA;AAAA,MAChC,IAAI5F,gCAA0B;AAAA,IAAA;AAG1B,UAAA,cAAkC6F,QAAI,IAAI;AAE1CxC,cAAA,aAAa,CAACyC,iBAAgB;AAClC,gCAA0B,qBAAqBA,YAAW;AAAA,IAAA,CAC3D;AAEDC,QAAAA,UAAU,MAAM;AACd1C,UAAA;AAAA,QAAMlC,IAAAA,SAAS,MAAME,IAAAA,MAAM,OAAO,YAAY,CAAC;AAAA,QAAG,OAAO,cAAc,GAAG,cAAc;AAE9E,gBAAA,QAAQ,IAAI2E,QAAAA;AAClB,gBAAM,aAAa,MAAM,KAAK,aAAa,OAAO,EAAE;AAEpD,cAAI,WAA4B;AAEhC,oBAAU,MAAM;AACH;AAAA,UAAA,CACZ;AAEG,cAAA;AACI,kBAAA,WAAW,MAAM,gBAAgB,MAAM;AAAA,cAC3C,MAAM,EAAC,WAAW,OAAO,IAAI,GAAG,IAAI,EAAC;AAAA,cAAG,aAAa,IAAIC,oBAAY,CAAC,MAAM;AAC/D,2BAAA;AAAA,cAAA,CACZ;AAAA,YAAA,CACF;AAEG,gBAAA,SAAS,KAAK,SAAS,KAAK;AACpBC,0BAAAA,UAAA,MAAM,SAAS,KAAK,GAAG;AACjC;AAAA,YACF;AAEA,wBAAY,QAAQ,SAAS,KAAK,KAAK,CAAC,KAAK;AAAA,mBACtC,GAAG;AACVA,kCAAU,MAAM,MAAM;AAAA,UACxB;AAAA,QAEF;AAAA,QACA,EAAC,WAAW,KAAI;AAAA,MAAA;AAAA,IAClB,CACD;;;;;;;;;;;;;;;;;;;;"}
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const vue = require("vue");
4
4
  const elementPlus = require("element-plus");
5
- const index = require("./index-CJiJ6jy7.cjs");
5
+ const index = require("./index-P7aJrY9b.cjs");
6
6
  const resourceSelectInput = /* @__PURE__ */ vue.defineComponent({
7
7
  name: "MKResourceSelectInput",
8
8
  props: {
@@ -48,4 +48,4 @@ const resourceSelectInput = /* @__PURE__ */ vue.defineComponent({
48
48
  }
49
49
  });
50
50
  exports.default = resourceSelectInput;
51
- //# sourceMappingURL=resource-select-input-DK-y2auR.cjs.map
51
+ //# sourceMappingURL=resource-select-input-FPwFgXzl.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"resource-select-input-DK-y2auR.cjs","sources":["../../src/components/business/resource-select/resource-select-input.tsx"],"sourcesContent":["import { computed, defineComponent, unref } from \"vue\";\r\nimport { ElInput, ElButton } from \"element-plus\";\r\nimport ResourceSelect from \"./resource-select-api\";\r\n\r\nexport default defineComponent({\r\n name: \"MKResourceSelectInput\",\r\n props: {\r\n modelValue:{ type:String,default:\"\"}\r\n },\r\n emits: [\"update:model-value\"],\r\n setup(props, { emit }) {\r\n\r\n const modelValue = computed({\r\n get: () => (props.modelValue as string) || \"\",\r\n set: (v: string) => emit(\"update:model-value\", v),\r\n });\r\n\r\n return () => {\r\n return (\r\n <div class=\"mk-resource-select-input\" style={{width:\"100%\",display:\"flex\"}}>\r\n <ElInput\r\n modelValue={unref(modelValue)} clearable\r\n onUpdate:modelValue={(v: string) => (modelValue.value = v)} />\r\n <ElButton onClick={async ()=>{\r\n \tconst fileInfo = await ResourceSelect({ extensions: [\".cshtml\"], baseURL: \"cms/template/resource\" })\r\n if (!fileInfo.confirmed) {\r\n return;\r\n }\r\n modelValue.value = fileInfo.path.slice(1)\r\n }}>选择模版</ElButton>\r\n </div>\r\n );\r\n };\r\n },\r\n});\r\n"],"names":["defineComponent","name","props","modelValue","type","String","default","emits","setup","emit","computed","get","set","v","_createVNode","width","display","ElInput","unref","value","ElButton","fileInfo","ResourceSelect","extensions","baseURL","confirmed","path","slice","_createTextVNode"],"mappings":";;;;;AAIA,MAAeA,0DAAgB;AAAA,EAC7BC,MAAM;AAAA,EACNC,OAAO;AAAA,IACLC,YAAW;AAAA,MAAEC,MAAKC;AAAAA,MAAOC,SAAQ;AAAA,IAAE;AAAA,EACpC;AAAA,EACDC,OAAO,CAAC,oBAAoB;AAAA,EAC5BC,MAAMN,OAAO;AAAA,IAAEO;AAAAA,EAAK,GAAG;AAErB,UAAMN,aAAaO,IAAAA,SAAS;AAAA,MAC1BC,KAAKA,MAAOT,MAAMC,cAAyB;AAAA,MAC3CS,KAAMC,OAAcJ,KAAK,sBAAsBI,CAAC;AAAA,IAClD,CAAC;AAED,WAAO,MAAM;AACX,aAAAC,IAAAA,YAAA,OAAA;AAAA,QAAA,SAAA;AAAA,QAAA,SAC+C;AAAA,UAACC,OAAM;AAAA,UAAOC,SAAQ;AAAA,QAAM;AAAA,SAACF,CAAAA,IAAA,YAAAG,qBAAA;AAAA,QAAA,cAE1DC,IAAK,MAACf,UAAU;AAAA,QAAC,aAAA;AAAA,QAAA,uBACPU,OAAeV,WAAWgB,QAAQN;AAAAA,SAAEC,IAAAA,GAAAA,IAAA,YAAAM,sBAAA;AAAA,QAAA,WACvC,YAAU;AAC1B,gBAAMC,WAAW,MAAMC,qBAAe;AAAA,YAAEC,YAAY,CAAC,SAAS;AAAA,YAAGC,SAAS;AAAA,UAAwB,CAAC;AAClG,cAAI,CAACH,SAASI,WAAW;AACvB;AAAA,UACF;AACAtB,qBAAWgB,QAAQE,SAASK,KAAKC,MAAM,CAAC;AAAA,QAC5C;AAAA,MAAC,GAAA;AAAA,QAAArB,SAAAA,MAAA,CAAAsB,oBAAA,MAAA,CAAA;AAAA,MAAA,CAAA,CAAA,CAAA;AAAA;EAIX;AACF,CAAC;;"}
1
+ {"version":3,"file":"resource-select-input-FPwFgXzl.cjs","sources":["../../src/components/business/resource-select/resource-select-input.tsx"],"sourcesContent":["import { computed, defineComponent, unref } from \"vue\";\r\nimport { ElInput, ElButton } from \"element-plus\";\r\nimport ResourceSelect from \"./resource-select-api\";\r\n\r\nexport default defineComponent({\r\n name: \"MKResourceSelectInput\",\r\n props: {\r\n modelValue:{ type:String,default:\"\"}\r\n },\r\n emits: [\"update:model-value\"],\r\n setup(props, { emit }) {\r\n\r\n const modelValue = computed({\r\n get: () => (props.modelValue as string) || \"\",\r\n set: (v: string) => emit(\"update:model-value\", v),\r\n });\r\n\r\n return () => {\r\n return (\r\n <div class=\"mk-resource-select-input\" style={{width:\"100%\",display:\"flex\"}}>\r\n <ElInput\r\n modelValue={unref(modelValue)} clearable\r\n onUpdate:modelValue={(v: string) => (modelValue.value = v)} />\r\n <ElButton onClick={async ()=>{\r\n \tconst fileInfo = await ResourceSelect({ extensions: [\".cshtml\"], baseURL: \"cms/template/resource\" })\r\n if (!fileInfo.confirmed) {\r\n return;\r\n }\r\n modelValue.value = fileInfo.path.slice(1)\r\n }}>选择模版</ElButton>\r\n </div>\r\n );\r\n };\r\n },\r\n});\r\n"],"names":["defineComponent","name","props","modelValue","type","String","default","emits","setup","emit","computed","get","set","v","_createVNode","width","display","ElInput","unref","value","ElButton","fileInfo","ResourceSelect","extensions","baseURL","confirmed","path","slice","_createTextVNode"],"mappings":";;;;;AAIA,MAAeA,0DAAgB;AAAA,EAC7BC,MAAM;AAAA,EACNC,OAAO;AAAA,IACLC,YAAW;AAAA,MAAEC,MAAKC;AAAAA,MAAOC,SAAQ;AAAA,IAAE;AAAA,EACpC;AAAA,EACDC,OAAO,CAAC,oBAAoB;AAAA,EAC5BC,MAAMN,OAAO;AAAA,IAAEO;AAAAA,EAAK,GAAG;AAErB,UAAMN,aAAaO,IAAAA,SAAS;AAAA,MAC1BC,KAAKA,MAAOT,MAAMC,cAAyB;AAAA,MAC3CS,KAAMC,OAAcJ,KAAK,sBAAsBI,CAAC;AAAA,IAClD,CAAC;AAED,WAAO,MAAM;AACX,aAAAC,IAAAA,YAAA,OAAA;AAAA,QAAA,SAAA;AAAA,QAAA,SAC+C;AAAA,UAACC,OAAM;AAAA,UAAOC,SAAQ;AAAA,QAAM;AAAA,SAACF,CAAAA,IAAA,YAAAG,qBAAA;AAAA,QAAA,cAE1DC,IAAK,MAACf,UAAU;AAAA,QAAC,aAAA;AAAA,QAAA,uBACPU,OAAeV,WAAWgB,QAAQN;AAAAA,SAAEC,IAAAA,GAAAA,IAAA,YAAAM,sBAAA;AAAA,QAAA,WACvC,YAAU;AAC1B,gBAAMC,WAAW,MAAMC,qBAAe;AAAA,YAAEC,YAAY,CAAC,SAAS;AAAA,YAAGC,SAAS;AAAA,UAAwB,CAAC;AAClG,cAAI,CAACH,SAASI,WAAW;AACvB;AAAA,UACF;AACAtB,qBAAWgB,QAAQE,SAASK,KAAKC,MAAM,CAAC;AAAA,QAC5C;AAAA,MAAC,GAAA;AAAA,QAAArB,SAAAA,MAAA,CAAAsB,oBAAA,MAAA,CAAA;AAAA,MAAA,CAAA,CAAA,CAAA;AAAA;EAIX;AACF,CAAC;;"}
@@ -5010,6 +5010,8 @@
5010
5010
  .mk-data-table[data-v-de7d0a69] .el-card .el-car__body {
5011
5011
  height: 0;
5012
5012
  flex: 1;
5013
+ }.mk-material-item[data-v-b6bff051] .el-card__body {
5014
+ padding: 0 !important;
5013
5015
  }.lexical-editor-node-tree[data-v-315b8c39] {
5014
5016
  display: flex;
5015
5017
  align-items: center;
@@ -5,7 +5,7 @@ const vueRouter = require("vue-router");
5
5
  require("@maketribe/dm");
6
6
  require("element-plus");
7
7
  require("@maketribe/utils");
8
- const index = require("./index-CJiJ6jy7.cjs");
8
+ const index = require("./index-P7aJrY9b.cjs");
9
9
  require("@maketribe/request");
10
10
  require("@maketribe/locale");
11
11
  require("@lexical/overflow");
@@ -67,4 +67,4 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
67
67
  }
68
68
  });
69
69
  exports.default = _sfc_main;
70
- //# sourceMappingURL=table-C3yMZ6mu.cjs.map
70
+ //# sourceMappingURL=table-DTn-HXFZ.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"table-C3yMZ6mu.cjs","sources":["../../src/page/index/dv/default/table.vue"],"sourcesContent":["<template>\n <MKPageContainer v-if=\"dataTable\">\n <MKDataTable :data-table=\"dataTable\" selection enableQueryParams />\n </MKPageContainer>\n</template>\n<script setup lang=\"ts\">\nimport { unref, computed, watch, ref, Ref } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport { DataTable } from \"@maketribe/dm\";\nimport { DataModelDefines } from \"../../../../core\";\nimport { MKDataTable, MKPageContainer } from \"../../../../components\";\n\nconst router = useRouter();\n\nconst dataTable: Ref<DataTable | null> = ref(null);\n\nwatch(\n computed(() => unref(router.currentRoute).meta.name as string),\n ([_dataTable, name]) => {\n dataTable.value = DataModelDefines.instance.getDataTable(name as string);\n },\n { immediate: true }\n);\n\nwatch(\n dataTable,\n (dataTable, _, onCleanup) => {\n if (dataTable) {\n dataTable.addRecordEvent.on(() => {\n router.push({ name: `dv/${dataTable.name}/edit` });\n });\n\n dataTable.editRecordEvent.on(({ item }) => {\n router.push({\n name: `dv/${dataTable.name}/edit`,\n params: { id: item[dataTable?.primaryKey as string] },\n });\n });\n }\n\n onCleanup(() => {\n dataTable?.clearSelection();\n dataTable?.dispose();\n });\n },\n { immediate: true }\n);\n</script>\n"],"names":["useRouter","ref","watch","computed","unref","DataModelDefines","dataTable"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAYA,UAAM,SAASA,UAAAA;AAET,UAAA,YAAmCC,QAAI,IAAI;AAEjDC,QAAA;AAAA,MACEC,aAAS,MAAMC,IAAAA,MAAM,OAAO,YAAY,EAAE,KAAK,IAAc;AAAA,MAC7D,CAAC,CAAC,YAAY,IAAI,MAAM;AACtB,kBAAU,QAAQC,MAAA,iBAAiB,SAAS,aAAa,IAAc;AAAA,MACzE;AAAA,MACA,EAAE,WAAW,KAAK;AAAA,IAAA;AAGpBH,QAAA;AAAA,MACE;AAAA,MACA,CAACI,YAAW,GAAG,cAAc;AAC3B,YAAIA,YAAW;AACbA,qBAAU,eAAe,GAAG,MAAM;AAChC,mBAAO,KAAK,EAAE,MAAM,MAAMA,WAAU,IAAI,SAAS;AAAA,UAAA,CAClD;AAEDA,qBAAU,gBAAgB,GAAG,CAAC,EAAE,WAAW;AACzC,mBAAO,KAAK;AAAA,cACV,MAAM,MAAMA,WAAU,IAAI;AAAA,cAC1B,QAAQ,EAAE,IAAI,KAAKA,yCAAW,UAAoB,EAAE;AAAA,YAAA,CACrD;AAAA,UAAA,CACF;AAAA,QACH;AAEA,kBAAU,MAAM;AACdA,mDAAW;AACXA,mDAAW;AAAA,QAAQ,CACpB;AAAA,MACH;AAAA,MACA,EAAE,WAAW,KAAK;AAAA,IAAA;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"table-DTn-HXFZ.cjs","sources":["../../src/page/index/dv/default/table.vue"],"sourcesContent":["<template>\n <MKPageContainer v-if=\"dataTable\">\n <MKDataTable :data-table=\"dataTable\" selection enableQueryParams />\n </MKPageContainer>\n</template>\n<script setup lang=\"ts\">\nimport { unref, computed, watch, ref, Ref } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport { DataTable } from \"@maketribe/dm\";\nimport { DataModelDefines } from \"../../../../core\";\nimport { MKDataTable, MKPageContainer } from \"../../../../components\";\n\nconst router = useRouter();\n\nconst dataTable: Ref<DataTable | null> = ref(null);\n\nwatch(\n computed(() => unref(router.currentRoute).meta.name as string),\n ([_dataTable, name]) => {\n dataTable.value = DataModelDefines.instance.getDataTable(name as string);\n },\n { immediate: true }\n);\n\nwatch(\n dataTable,\n (dataTable, _, onCleanup) => {\n if (dataTable) {\n dataTable.addRecordEvent.on(() => {\n router.push({ name: `dv/${dataTable.name}/edit` });\n });\n\n dataTable.editRecordEvent.on(({ item }) => {\n router.push({\n name: `dv/${dataTable.name}/edit`,\n params: { id: item[dataTable?.primaryKey as string] },\n });\n });\n }\n\n onCleanup(() => {\n dataTable?.clearSelection();\n dataTable?.dispose();\n });\n },\n { immediate: true }\n);\n</script>\n"],"names":["useRouter","ref","watch","computed","unref","DataModelDefines","dataTable"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAYA,UAAM,SAASA,UAAAA;AAET,UAAA,YAAmCC,QAAI,IAAI;AAEjDC,QAAA;AAAA,MACEC,aAAS,MAAMC,IAAAA,MAAM,OAAO,YAAY,EAAE,KAAK,IAAc;AAAA,MAC7D,CAAC,CAAC,YAAY,IAAI,MAAM;AACtB,kBAAU,QAAQC,MAAA,iBAAiB,SAAS,aAAa,IAAc;AAAA,MACzE;AAAA,MACA,EAAE,WAAW,KAAK;AAAA,IAAA;AAGpBH,QAAA;AAAA,MACE;AAAA,MACA,CAACI,YAAW,GAAG,cAAc;AAC3B,YAAIA,YAAW;AACbA,qBAAU,eAAe,GAAG,MAAM;AAChC,mBAAO,KAAK,EAAE,MAAM,MAAMA,WAAU,IAAI,SAAS;AAAA,UAAA,CAClD;AAEDA,qBAAU,gBAAgB,GAAG,CAAC,EAAE,WAAW;AACzC,mBAAO,KAAK;AAAA,cACV,MAAM,MAAMA,WAAU,IAAI;AAAA,cAC1B,QAAQ,EAAE,IAAI,KAAKA,yCAAW,UAAoB,EAAE;AAAA,YAAA,CACrD;AAAA,UAAA,CACF;AAAA,QACH;AAEA,kBAAU,MAAM;AACdA,mDAAW;AACXA,mDAAW;AAAA,QAAQ,CACpB;AAAA,MACH;AAAA,MACA,EAAE,WAAW,KAAK;AAAA,IAAA;;;;;;;;;;;;;;;;"}
@@ -1,5 +1,5 @@
1
1
  import { openBlock, createElementBlock } from "vue";
2
- import { _ as _export_sfc } from "./index-mq3nYYwD.js";
2
+ import { _ as _export_sfc } from "./index-DknNVWIH.js";
3
3
  const _sfc_main = {};
4
4
  function _sfc_render(_ctx, _cache) {
5
5
  return openBlock(), createElementBlock("div", null, "404");
@@ -8,4 +8,4 @@ const _404 = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render]]);
8
8
  export {
9
9
  _404 as default
10
10
  };
11
- //# sourceMappingURL=404-D5XFfiHo.js.map
11
+ //# sourceMappingURL=404-C1lIpndy.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"404-D5XFfiHo.js","sources":["../../src/page/index/404.vue"],"sourcesContent":["<template>\n <div>404</div>\n</template>\n\n<script setup lang=\"ts\">\n</script>\n"],"names":[],"mappings":";;;AACE,SAAA,YAAA,MAAA,QAAA;;;;"}
1
+ {"version":3,"file":"404-C1lIpndy.js","sources":["../../src/page/index/404.vue"],"sourcesContent":["<template>\n <div>404</div>\n</template>\n\n<script setup lang=\"ts\">\n</script>\n"],"names":[],"mappings":";;;AACE,SAAA,YAAA,MAAA,QAAA;;;;"}
@@ -1,6 +1,6 @@
1
1
  import { defineComponent, reactive, ref, computed, watch, onMounted, resolveComponent, openBlock, createBlock, withCtx, createElementVNode, createVNode, createTextVNode, createElementBlock, Fragment, renderList, createCommentVNode, toDisplayString, unref, resolveDirective, withDirectives, normalizeClass } from "vue";
2
2
  import { EditPen, Delete, ArrowDown, ArrowLeftBold } from "@element-plus/icons-vue";
3
- import { a2 as CmsArticleAtlasForm, B as MKDataForm, a3 as MKForm, a4 as CmsArticlesForm, q as MKSvgIcon, a5 as MKDocEditor, a6 as MKDataFormItem, c as MKUploadImage, a7 as ImageUploadContext } from "./index-mq3nYYwD.js";
3
+ import { a2 as CmsArticleAtlasForm, B as MKDataForm, a3 as MKForm, a4 as CmsArticlesForm, q as MKSvgIcon, a5 as MKDocEditor, a6 as MKDataFormItem, c as MKUploadImage, a7 as ImageUploadContext } from "./index-DknNVWIH.js";
4
4
  import "element-plus";
5
5
  import "@maketribe/request";
6
6
  import "@maketribe/utils";
@@ -19,7 +19,7 @@ import { useRoute, useRouter } from "vue-router";
19
19
  import "@maketribe/locale";
20
20
  import "lodash-es";
21
21
  import "@codemirror/lang-html";
22
- import { u as useCmsSettings } from "./cms-settings-DHQmoLKI.js";
22
+ import { u as useCmsSettings } from "./cms-settings-jjd73rEK.js";
23
23
  const _hoisted_1$1 = /* @__PURE__ */ createElementVNode("div", {
24
24
  slot: "placeholder",
25
25
  class: "image-slot"
@@ -879,4 +879,4 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
879
879
  export {
880
880
  _sfc_main as default
881
881
  };
882
- //# sourceMappingURL=article-edit-add-page-AeJ2loBa.js.map
882
+ //# sourceMappingURL=article-edit-add-page-ClytcmO4.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"article-edit-add-page-AeJ2loBa.js","sources":["../../src/modules/cms/pages/cms-contents/components/article-atlas.vue","../../src/modules/cms/pages/cms-contents/article-edit-add-page.vue"],"sourcesContent":["<template>\r\n <el-card class=\"cms-article-atlas\">\r\n <template #header>\r\n <div @click=\"showAtlasFormHandle()\" class=\"cms-article-atlas__header\">\r\n <span>\r\n <MKSvgIcon iconClass=\"Picture\" style=\"margin-right: 5px;\" />\r\n 文章媒体库\r\n </span>\r\n <MKSvgIcon class=\"cms-article-atlas__header__btn\" iconClass=\"Plus\" style=\"color: #409EFF;\" />\r\n </div>\r\n </template>\r\n <el-empty v-if=\"atlas.length <= 0\" description=\"暂无内容\" />\r\n <el-scrollbar class=\"cms-article-atlas__list\" v-else>\r\n <el-card class=\"cms-article-atlas__list__item\" v-for=\"(item, index) in atlas\" :key=\"item.id\">\r\n <el-image class=\"images\" :src=\"item.path\" v-if=\"item.type == 1\" fit=\"contain\">\r\n <div slot=\"placeholder\" class=\"image-slot\">\r\n 加载中<span class=\"dot\">...</span>\r\n </div>\r\n </el-image>\r\n <video class=\"video\" v-if=\"item.type == 2\" :src=\"item.path\" controls></video>\r\n <div class=\"cms-article-atlas__list__item__desc\">\r\n <div class=\"item-desc-left\">\r\n <div class=\"title ellipsis\">\r\n <MKSvgIcon class=\"icon\" v-if=\"item.type == 1\" iconClass=\"Picture\"></MKSvgIcon>\r\n <MKSvgIcon class=\"icon\" v-if=\"item.type == 2\" iconClass=\"VideoCamera\"></MKSvgIcon>\r\n <span :title=\"item.title\">{{ item.title }}</span>\r\n </div>\r\n <div class=\"external-links ellipsis\">\r\n <MKSvgIcon class=\"icon\" v-if=\"item.link\" iconClass=\"Link\"></MKSvgIcon>\r\n <a :href=\"item.link\" target=\"_blank\" :title=\"item.path\">{{ item.link }}</a>\r\n </div>\r\n </div>\r\n <el-dropdown trigger=\"click\" :teleported=\"false\" class=\"item-desc-right\">\r\n <span class=\"el-dropdown-link\">\r\n 更多<el-icon class=\"el-icon--right\"><arrow-down /></el-icon>\r\n </span>\r\n <template #dropdown>\r\n <el-dropdown-menu>\r\n <el-dropdown-item class=\"edit-button\" :icon=\"EditPen\" @click=\"editHandle(item)\">编辑</el-dropdown-item>\r\n <el-dropdown-item class=\"delete-button\" :icon=\"Delete\"\r\n @click=\"deleteHandle(index)\">删除</el-dropdown-item>\r\n </el-dropdown-menu>\r\n </template>\r\n </el-dropdown>\r\n </div>\r\n </el-card>\r\n <el-dialog v-model=\"formVisible\" append-to-body>\r\n <MKDataForm :dataForm=\"atlasDv\">\r\n <MKForm></MKForm>\r\n </MKDataForm>\r\n <template #footer>\r\n <el-button type=\"primary\" @click=\"saveAlatsHandle\">保存</el-button>\r\n <el-button @click=\"formVisible = false\"> 取消 </el-button>\r\n </template>\r\n </el-dialog>\r\n\r\n </el-scrollbar>\r\n </el-card>\r\n</template>\r\n<script setup lang='ts'>\r\nimport { onMounted, computed, ref, defineProps, watch, reactive } from \"vue\";\r\nimport { EditPen, ArrowDown, Delete } from \"@element-plus/icons-vue\"\r\nimport { CmsArticleAtlasForm } from \"../../../dataviews/cms-articles/cms-article-atlas\";\r\nimport { MKDataForm, MKForm } from \"../../../../../components\";\r\n\r\n// 参数\r\nconst props = defineProps({\r\n articleId: { type: Number, default: \"\" },\r\n modelValue: { type: Array<any>, default: () => [] },\r\n})\r\nconst emit = defineEmits([\"update:modelValue\"])\r\n//atlas表单\r\nconst atlasDv = reactive(new CmsArticleAtlasForm()) as CmsArticleAtlasForm;\r\nconst formVisible = ref(false);\r\n\r\nconst imgExtension = [\".jpg\", \".png\", \".gif\", \".jpeg\", \".bmp\", \".webp\", \".svg\", \".tiff\", \".tif\", \".ico\", \".jfif\", \".jpe\"]\r\nconst videoExtension = [\".mp4\", \".avi\", \".rmvb\", \".flv\", \".mkv\", \".wmv\", \".mov\", \".webm\", \".m4v\", \".mpg\", \".mpeg\", \".mts\", \".m2ts\", \".m2v\", \".mpe\", \".mpv\", \".vob\", \".ogv\", \".3gp\", \".3g2\", \".3gpp\", \".3gpp2\", \".3gp2\"]\r\n\r\n\r\n//图集数据\r\nconst atlas = computed(\r\n () => {\r\n const _arr = props.modelValue.map((item, index) => {\r\n const extension = item.path.slice(item.path.lastIndexOf(\".\"))\r\n let type = 0;\r\n if (imgExtension.includes(extension)) {\r\n type = 1\r\n } else if (videoExtension.includes(extension)) {\r\n type = 2\r\n }\r\n return { ...item, type, uid: item.title + index }\r\n })\r\n return _arr\r\n },\r\n);\r\n\r\n\r\n(window as any).atlasDv = atlasDv;\r\n(window as any).atlas = atlas;\r\n(window as any).modelValue = props.modelValue;\r\n/***\r\n * 展示atlas表单\r\n */\r\nconst showAtlasFormHandle = () => {\r\n formVisible.value = true;\r\n atlasDv.addRecord({\r\n cmsArticlesId: props.articleId\r\n })\r\n}\r\n\r\n//重置atlas表单\r\nwatch(formVisible, (v) => {\r\n atlasDv.reset();\r\n})\r\n\r\n/**\r\n * 保存\r\n */\r\nconst saveAlatsHandle = async () => {\r\n if (atlasDv.data.uid) {\r\n const index = atlas.value.findIndex(item => item.uid == atlasDv.data.uid)\r\n atlas.value[index] = { ...atlas.value[index], ...atlasDv.data }\r\n } else {\r\n atlas.value.push(atlasDv.data)\r\n }\r\n\r\n emit(\"update:modelValue\", atlas.value)\r\n formVisible.value = false;\r\n}\r\n/**\r\n * 删除\r\n */\r\nconst deleteHandle = (index: number) => {\r\n atlas.value.splice(index, 1)\r\n emit(\"update:modelValue\", atlas.value)\r\n}\r\n\r\nconst editHandle = (item: any) => {\r\n atlasDv.addRecord(item)\r\n formVisible.value = true;\r\n}\r\n// 挂在完成之后\r\nonMounted(async () => {\r\n await atlasDv.init();\r\n})\r\n\r\n</script>\r\n","<template>\r\n <div class=\"mk-cms-article-eidtadd__warp\">\r\n <el-page-header style=\"background-color: #fff;padding: 10px;\" :icon=\"ArrowLeftBold\" title=\"返回\"\r\n @back=\"() => router.push({ name: 'cms/contents', query: { pid: articleForm?.data?.cmsPartId } })\">\r\n <template #content>\r\n <template v-if=\"!articleForm.loading\">\r\n <el-text v-if=\"!articleForm.data?.modifier\">{{ !!route.query.id ? \"编辑文章\" : \"创建文章\" }}</el-text>\r\n <el-text v-else>{{ articleForm.data?.modifierName }} 于 {{ articleForm.data?.updatedAt }} 更新</el-text>\r\n </template>\r\n </template>\r\n <template #extra>\r\n <div class=\"mk-cms-article-eidtadd__header_tools\">\r\n\r\n <template v-if=\"!articleForm.loading\">\r\n <el-tag v-if=\"!articleForm.data?.publishTime\" effect=\"dark\" round>未发布</el-tag>\r\n <el-text v-else>发布时间:{{ articleForm.data?.publishTime }}</el-text>\r\n </template>\r\n\r\n <el-dropdown split-button type=\"primary\" style=\"margin-left: 10px;\" @click=\"saveHandle\">\r\n <MKSvgIcon name=\"carbon:save\" style=\"margin-right: 10px;\" />\r\n 保存\r\n <template #dropdown>\r\n <el-dropdown-menu>\r\n <el-dropdown-item v-if=\"CmsSettings.publish.mode == 'static'\" @click=\"saveAndViewHandle\">\r\n <MKSvgIcon name=\"ep:view\" style=\"margin-right: 5px;\" />\r\n 保存并预览\r\n </el-dropdown-item>\r\n <el-dropdown-item @click=\"saveAndPublishHandle\">\r\n <MKSvgIcon name=\"ep:share\" style=\"margin-right: 5px;\" />\r\n 保存并发布\r\n </el-dropdown-item>\r\n </el-dropdown-menu>\r\n </template>\r\n </el-dropdown>\r\n </div>\r\n </template>\r\n </el-page-header>\r\n <div class=\"mk-cms-article-eidtadd__body\" v-loading=\"articleForm.loading\">\r\n\r\n <MKDocEditor v-if=\"articleForm.data\" :css=\"CmsSettings.content.doc.css\" namespace=\"cms-article\"\r\n :js=\"CmsSettings.content.doc.js\" :modelValue=\"content\" @update:modelValue=\"docEditorChangeHandle\">\r\n <template #header>\r\n <div class=\"mk-cms-article-eidtadd__body__header\">\r\n <el-row>\r\n <el-input class=\"title\" type=\"textarea\" :autosize=\"{ minRows: 1, maxRows: 4 }\" maxlength=\"150\"\r\n show-word-limit placeholder=\"请输入标题\" v-model=\"title\" />\r\n </el-row>\r\n <el-row>\r\n <el-input class=\"sub-title\" type=\"textarea\" :autosize=\"{ minRows: 1, maxRows: 4 }\" maxlength=\"150\"\r\n show-word-limit placeholder=\"[选填] 请输入子标题\" v-model=\"subTitle\" />\r\n </el-row>\r\n </div>\r\n </template>\r\n <template #after-extentions>\r\n <div class=\"mk-cms-article-eidtadd__body__extentions\" :class=\"{ hide: closeExtentions! }\" ref=\"extentionsRef\">\r\n <MKSvgIcon name=\"ep:arrow-left\" class=\"open\" @click=\"closeExtentionsHandle\" v-if=\"closeExtentions\">\r\n </MKSvgIcon>\r\n <MKSvgIcon v-else name=\"ep:arrow-right\" class=\"close\" @click=\"hideExtentionsHandle\">\r\n </MKSvgIcon>\r\n <el-divider content-position=\"left\">文章设置</el-divider>\r\n <MKDataForm :dataForm=\"articleForm\">\r\n <MKForm :dataForm=\"articleForm\" style=\"width:225px\" label-width=\"110px\">\r\n <el-row v-if=\"CmsSettings.content.useTop\">\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isTop\"></MKDataFormItem>\r\n </el-row>\r\n <el-row v-if=\"CmsSettings.content.useNew\">\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isNew\"></MKDataFormItem>\r\n </el-row>\r\n <el-row v-if=\"CmsSettings.content.useHotRecommend\">\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isHotRecommend\"></MKDataFormItem>\r\n </el-row>\r\n <el-row v-if=\"CmsSettings.content.usePartRecommend\">\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isPartRecommend\"></MKDataFormItem>\r\n </el-row>\r\n <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isShowList\"></MKDataFormItem>\r\n </el-row>\r\n <!-- <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isDraft\"></MKDataFormItem>\r\n </el-row> -->\r\n <!-- <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"sortNo\"></MKDataFormItem>\r\n </el-row> -->\r\n </MKForm>\r\n </MKDataForm>\r\n </div>\r\n </template>\r\n <template #footer>\r\n <div class=\"mk-cms-article-eidtadd__body__footer\">\r\n <el-tabs v-model=\"articleOptionsActive\">\r\n <el-tab-pane label=\"基础内容\" name=\"content\">\r\n <div class=\"content\">\r\n <el-row :gutter=\"20\">\r\n <el-col :span=\"6\">\r\n <el-input placeholder=\"[选填] 作者\" v-model=\"articleForm.data.author\" clearable>\r\n <template #prefix>\r\n <MKSvgIcon name=\"ep:user-filled\" />\r\n </template>\r\n </el-input>\r\n </el-col>\r\n <el-col :span=\"6\">\r\n <el-date-picker v-model=\"releaseDate\" type=\"datetime\" placeholder=\"发布时间\"\r\n :default-time=\"new Date()\" />\r\n </el-col>\r\n <el-col :span=\"12\">\r\n <el-input placeholder=\"[选填] 发布地址\" v-model=\"articleForm.data.locationDesc\" clearable>\r\n <template #prefix>\r\n <MKSvgIcon name=\"ep:location\" />\r\n </template>\r\n </el-input>\r\n </el-col>\r\n </el-row>\r\n <el-row v-if=\"CmsSettings.content.useTags\">\r\n <el-select v-model=\"tags\" multiple filterable allow-create default-first-option\r\n :reserve-keyword=\"false\" placeholder=\"[可选] 选择文章标签\" style=\"width: 100%\">\r\n <template #prefix>\r\n <MKSvgIcon name=\"ep:collection-tag\" />\r\n </template>\r\n </el-select>\r\n </el-row>\r\n <el-divider content-position=\"left\">\r\n 文章封面/简介\r\n <el-switch v-model=\"descAutoCreate\" style=\"margin-left: 10px;\" inline-prompt active-text=\"自动生成\"\r\n inactive-text=\"手动撰写\" />\r\n </el-divider>\r\n <el-row class=\"cover-desc\">\r\n <MKUploadImage style=\"margin-right: 10px;\" v-model=\"articleForm.data.cover\" width=\"115px\" height=\"115px\" \r\n :uploadContext=\"new ImageUploadContext(CmsSettings.content.coverImageSize)\">\r\n\r\n </MKUploadImage>\r\n <el-input class=\"desc\" type=\"textarea\" :autosize=\"{ minRows: 5, maxRows: 30 }\" maxlength=\"1000\"\r\n show-word-limit placeholder=\"[选填] 文章简介\" v-model=\"desc\" />\r\n </el-row>\r\n <el-divider content-position=\"left\">文章Banner图</el-divider>\r\n <el-row>\r\n <MKUploadImage v-model=\"articleForm.data.banner\" style=\"width: 100%;\" height=\"300px\" :uploadContext=\"new ImageUploadContext(CmsSettings.content.bannerImageSize)\">\r\n\r\n </MKUploadImage>\r\n </el-row>\r\n </div>\r\n </el-tab-pane>\r\n <el-tab-pane label=\"文章资源库\" name=\"atlas\" v-if=\"CmsSettings.content.useAtlas\">\r\n <ArticleAtlas v-model=\"atlas\" :articleId=\"parseInt(articleForm.data?.id)\" />\r\n </el-tab-pane>\r\n <el-tab-pane label=\"页面设置\" name=\"settings\" v-if=\"CmsSettings.publish.mode == 'static'\">\r\n <MKDataForm :dataForm=\"articleForm\" label-width=\"120px\">\r\n <MKForm :dataForm=\"articleForm\">\r\n <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"seoKeywords\"></MKDataFormItem>\r\n </el-row>\r\n <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"seoDesc\"></MKDataFormItem>\r\n </el-row>\r\n </MKForm>\r\n </MKDataForm>\r\n </el-tab-pane>\r\n </el-tabs>\r\n </div>\r\n </template>\r\n </MKDocEditor>\r\n </div>\r\n </div>\r\n</template>\r\n<script setup lang='ts'>\r\nimport { onMounted, reactive, ref, computed } from \"vue\";\r\nimport { ArrowLeftBold } from \"@element-plus/icons-vue\"\r\nimport { MKDocEditor, MKSvgIcon, MKUploadImage } from '../../../../components'\r\nimport { MKDataForm, MKForm, MKDataFormItem } from \"../../../../components\";\r\nimport ArticleAtlas from \"./components/article-atlas.vue\";\r\nimport { CmsArticlesForm } from \"../../dataviews\";\r\nimport { useRoute, useRouter } from \"vue-router\";\r\nimport { ImageUploadContext } from \"../../../ms\";\r\nimport { useCmsSettings } from \"../../cms-settings\"\r\n// cms 配置\r\nconst CmsSettings = useCmsSettings(true);\r\n\r\nconst route = useRoute()\r\nconst router = useRouter();\r\n\r\n\r\n// 文章请求\r\nconst articleForm = reactive(new CmsArticlesForm()) as CmsArticlesForm;\r\nconst articleOptionsActive = ref(\"content\");\r\n\r\n\r\n// 标题\r\nconst title = computed({\r\n get() { return articleForm.data?.title || \"\"; },\r\n set(val) { articleForm.data.title = val; }\r\n});\r\n// 子标题\r\nconst subTitle = computed({\r\n get() { return articleForm.data?.subTitle || \"\"; },\r\n set(val) { articleForm.data.subTitle = val; }\r\n});\r\n// 获取默认简介\r\nconst getDefaultDescContent = () => {\r\n if (!descAutoCreate.value) {\r\n return \"\";\r\n }\r\n let val: any = \"\";\r\n const div = document.createElement(\"div\");\r\n div.innerHTML = content.value;\r\n val = div.textContent?.substring(0, 700);\r\n if (div.textContent!.length > 700) {\r\n val += \"...\";\r\n }\r\n return val;\r\n}\r\nconst descAutoCreate = ref(true)\r\n// 简介\r\nconst desc = computed({\r\n get() {\r\n return articleForm.data?.desc || getDefaultDescContent();\r\n },\r\n set(val) {\r\n articleForm.data.desc = val;\r\n }\r\n});\r\n// 发布时间\r\nconst releaseDate = computed({\r\n get() { return articleForm.data?.releaseDate || articleForm.data?.publishTime; },\r\n set(val) { articleForm.data.releaseDate = val; }\r\n});\r\n// 标签\r\nconst tags = ref([]);\r\n// computed({ \r\n// get() { return articleForm.data?.tags || [] }, \r\n// set(val) { articleForm.data.tags = val; } \r\n// });\r\n// 内容\r\nconst content = computed({\r\n get() { return articleForm.data?.content || \"\"; },\r\n set(val) { articleForm.data.content = val; }\r\n});\r\n\r\n// 图集\r\nconst atlas = computed({\r\n get() {\r\n return articleForm.data?.atlas\r\n },\r\n set(val) { articleForm.data.atlas = val; }\r\n});\r\n\r\n// 表单初始化\r\nconst formInitDataInfo = ()=>{\r\n // 初始化数据加载\r\n if (route.query.id) {\r\n articleForm.editRecord(route.query.id);\r\n }\r\n else if (route.query.partId) {\r\n articleForm.addRecord({ cmsPartId: route.query.partId,isDraft:1 });\r\n }\r\n else {\r\n articleForm.addRecord({ isDraft:1 });\r\n }\r\n}\r\n\r\nonMounted(() => {\r\n formInitDataInfo();\r\n articleForm.init();\r\n\r\n})\r\n\r\n// 保存\r\nconst saveHandle = async () => {\r\n\r\n // 简介不存在的时候使用自动生成的\r\n if (!articleForm.data?.desc) {\r\n desc.value = getDefaultDescContent();\r\n }\r\n\r\n let result = await articleForm.submit();\r\n\r\n router.back();\r\n\r\n return result;\r\n}\r\n\r\n// 保存并预览\r\nconst saveAndViewHandle = async ()=>{\r\n const partId = articleForm.data.cmsPartId;\r\n const data = await saveHandle();\r\n if(data.data.code == 200 && data.data.data){\r\n window.open('/api/cms/content/preview/content/' + partId + '/' + data.data.data)\r\n }\r\n}\r\n\r\n// 保存并发布\r\nconst saveAndPublishHandle = async ()=>{\r\n const result:any = await articleForm.saveAndPublish(CmsSettings.publish.mode);\r\n if(result.data.code == 200){\r\n router.back();\r\n }\r\n}\r\n\r\n// 隐藏扩展\r\nconst closeExtentions = ref(true);\r\nconst extentionsRef = ref();\r\nconst hideExtentionsHandle = () => {\r\n closeExtentions.value = true;\r\n}\r\n//展示扩展\r\nconst closeExtentionsHandle = () => {\r\n closeExtentions.value = false;\r\n}\r\n\r\nconst docEditorChangeHandle = (v: any) => {\r\n articleForm.data.content = v;\r\n}\r\n\r\n</script>\r\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkEA,UAAM,QAAQ;AAId,UAAM,OAAO;AAEb,UAAM,UAAU,SAAS,IAAI,oBAAqB,CAAA;AAC5C,UAAA,cAAc,IAAI,KAAK;AAE7B,UAAM,eAAe,CAAC,QAAQ,QAAQ,QAAQ,SAAS,QAAQ,SAAS,QAAQ,SAAS,QAAQ,QAAQ,SAAS,MAAM;AAClH,UAAA,iBAAiB,CAAC,QAAQ,QAAQ,SAAS,QAAQ,QAAQ,QAAQ,QAAQ,SAAS,QAAQ,QAAQ,SAAS,QAAQ,SAAS,QAAQ,QAAQ,QAAQ,QAAQ,QAAQ,QAAQ,QAAQ,SAAS,UAAU,OAAO;AAItN,UAAM,QAAQ;AAAA,MACZ,MAAM;AACJ,cAAM,OAAO,MAAM,WAAW,IAAI,CAAC,MAAM,UAAU;AAC3C,gBAAA,YAAY,KAAK,KAAK,MAAM,KAAK,KAAK,YAAY,GAAG,CAAC;AAC5D,cAAI,OAAO;AACP,cAAA,aAAa,SAAS,SAAS,GAAG;AAC7B,mBAAA;AAAA,UACE,WAAA,eAAe,SAAS,SAAS,GAAG;AACtC,mBAAA;AAAA,UACT;AACA,iBAAO,EAAE,GAAG,MAAM,MAAM,KAAK,KAAK,QAAQ;QAAM,CACjD;AACM,eAAA;AAAA,MACT;AAAA,IAAA;AAID,WAAe,UAAU;AACzB,WAAe,QAAQ;AACvB,WAAe,aAAa,MAAM;AAInC,UAAM,sBAAsB,MAAM;AAChC,kBAAY,QAAQ;AACpB,cAAQ,UAAU;AAAA,QAChB,eAAe,MAAM;AAAA,MAAA,CACtB;AAAA,IAAA;AAIG,UAAA,aAAa,CAAC,MAAM;AACxB,cAAQ,MAAM;AAAA,IAAA,CACf;AAKD,UAAM,kBAAkB,YAAY;AAC9B,UAAA,QAAQ,KAAK,KAAK;AACd,cAAA,QAAQ,MAAM,MAAM,UAAU,UAAQ,KAAK,OAAO,QAAQ,KAAK,GAAG;AAClE,cAAA,MAAM,KAAK,IAAI,EAAE,GAAG,MAAM,MAAM,KAAK,GAAG,GAAG,QAAQ,KAAK;AAAA,MAAA,OACzD;AACC,cAAA,MAAM,KAAK,QAAQ,IAAI;AAAA,MAC/B;AAEK,WAAA,qBAAqB,MAAM,KAAK;AACrC,kBAAY,QAAQ;AAAA,IAAA;AAKhB,UAAA,eAAe,CAAC,UAAkB;AAChC,YAAA,MAAM,OAAO,OAAO,CAAC;AACtB,WAAA,qBAAqB,MAAM,KAAK;AAAA,IAAA;AAGjC,UAAA,aAAa,CAAC,SAAc;AAChC,cAAQ,UAAU,IAAI;AACtB,kBAAY,QAAQ;AAAA,IAAA;AAGtB,cAAU,YAAY;AACpB,YAAM,QAAQ;IAAK,CACpB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC8BK,UAAA,cAAc,eAAe,IAAI;AAEvC,UAAM,QAAQ;AACd,UAAM,SAAS;AAIf,UAAM,cAAc,SAAS,IAAI,gBAAiB,CAAA;AAC5C,UAAA,uBAAuB,IAAI,SAAS;AAI1C,UAAM,QAAQ,SAAS;AAAA,MACrB,MAAM;;AAAS,iBAAA,iBAAY,SAAZ,mBAAkB,UAAS;AAAA,MAAI;AAAA,MAC9C,IAAI,KAAK;AAAE,oBAAY,KAAK,QAAQ;AAAA,MAAK;AAAA,IAAA,CAC1C;AAED,UAAM,WAAW,SAAS;AAAA,MACxB,MAAM;;AAAS,iBAAA,iBAAY,SAAZ,mBAAkB,aAAY;AAAA,MAAI;AAAA,MACjD,IAAI,KAAK;AAAE,oBAAY,KAAK,WAAW;AAAA,MAAK;AAAA,IAAA,CAC7C;AAED,UAAM,wBAAwB,MAAM;;AAC9B,UAAA,CAAC,eAAe,OAAO;AAClB,eAAA;AAAA,MACT;AACA,UAAI,MAAW;AACT,YAAA,MAAM,SAAS,cAAc,KAAK;AACxC,UAAI,YAAY,QAAQ;AACxB,aAAM,SAAI,gBAAJ,mBAAiB,UAAU,GAAG;AAChC,UAAA,IAAI,YAAa,SAAS,KAAK;AAC1B,eAAA;AAAA,MACT;AACO,aAAA;AAAA,IAAA;AAEH,UAAA,iBAAiB,IAAI,IAAI;AAE/B,UAAM,OAAO,SAAS;AAAA,MACpB,MAAM;;AACG,iBAAA,iBAAY,SAAZ,mBAAkB,SAAQ,sBAAsB;AAAA,MACzD;AAAA,MACA,IAAI,KAAK;AACP,oBAAY,KAAK,OAAO;AAAA,MAC1B;AAAA,IAAA,CACD;AAED,UAAM,cAAc,SAAS;AAAA,MAC3B,MAAM;;AAAE,iBAAO,iBAAY,SAAZ,mBAAkB,kBAAe,iBAAY,SAAZ,mBAAkB;AAAA,MAAa;AAAA,MAC/E,IAAI,KAAK;AAAE,oBAAY,KAAK,cAAc;AAAA,MAAK;AAAA,IAAA,CAChD;AAEK,UAAA,OAAO,IAAI,CAAA,CAAE;AAMnB,UAAM,UAAU,SAAS;AAAA,MACvB,MAAM;;AAAS,iBAAA,iBAAY,SAAZ,mBAAkB,YAAW;AAAA,MAAI;AAAA,MAChD,IAAI,KAAK;AAAE,oBAAY,KAAK,UAAU;AAAA,MAAK;AAAA,IAAA,CAC5C;AAGD,UAAM,QAAQ,SAAS;AAAA,MACrB,MAAM;;AACJ,gBAAO,iBAAY,SAAZ,mBAAkB;AAAA,MAC3B;AAAA,MACA,IAAI,KAAK;AAAE,oBAAY,KAAK,QAAQ;AAAA,MAAK;AAAA,IAAA,CAC1C;AAGD,UAAM,mBAAmB,MAAI;AAExB,UAAA,MAAM,MAAM,IAAI;AACL,oBAAA,WAAW,MAAM,MAAM,EAAE;AAAA,MAAA,WAE9B,MAAM,MAAM,QAAQ;AACf,oBAAA,UAAU,EAAE,WAAW,MAAM,MAAM,QAAO,SAAQ,GAAG;AAAA,MAAA,OAE9D;AACH,oBAAY,UAAU,EAAE,SAAQ,EAAG,CAAA;AAAA,MACrC;AAAA,IAAA;AAGF,cAAU,MAAM;AACG;AACjB,kBAAY,KAAK;AAAA,IAAA,CAElB;AAGD,UAAM,aAAa,YAAY;;AAGzB,UAAA,GAAC,iBAAY,SAAZ,mBAAkB,OAAM;AAC3B,aAAK,QAAQ;MACf;AAEI,UAAA,SAAS,MAAM,YAAY;AAE/B,aAAO,KAAK;AAEL,aAAA;AAAA,IAAA;AAIT,UAAM,oBAAoB,YAAU;AAC5B,YAAA,SAAS,YAAY,KAAK;AAC1B,YAAA,OAAO,MAAM;AACnB,UAAG,KAAK,KAAK,QAAQ,OAAO,KAAK,KAAK,MAAK;AACzC,eAAO,KAAK,sCAAsC,SAAS,MAAM,KAAK,KAAK,IAAI;AAAA,MACjF;AAAA,IAAA;AAIF,UAAM,uBAAuB,YAAU;AACrC,YAAM,SAAa,MAAM,YAAY,eAAe,YAAY,QAAQ,IAAI;AACzE,UAAA,OAAO,KAAK,QAAQ,KAAI;AACzB,eAAO,KAAK;AAAA,MACd;AAAA,IAAA;AAII,UAAA,kBAAkB,IAAI,IAAI;AAChC,UAAM,gBAAgB;AACtB,UAAM,uBAAuB,MAAM;AACjC,sBAAgB,QAAQ;AAAA,IAAA;AAG1B,UAAM,wBAAwB,MAAM;AAClC,sBAAgB,QAAQ;AAAA,IAAA;AAGpB,UAAA,wBAAwB,CAAC,MAAW;AACxC,kBAAY,KAAK,UAAU;AAAA,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"article-edit-add-page-ClytcmO4.js","sources":["../../src/modules/cms/pages/cms-contents/components/article-atlas.vue","../../src/modules/cms/pages/cms-contents/article-edit-add-page.vue"],"sourcesContent":["<template>\r\n <el-card class=\"cms-article-atlas\">\r\n <template #header>\r\n <div @click=\"showAtlasFormHandle()\" class=\"cms-article-atlas__header\">\r\n <span>\r\n <MKSvgIcon iconClass=\"Picture\" style=\"margin-right: 5px;\" />\r\n 文章媒体库\r\n </span>\r\n <MKSvgIcon class=\"cms-article-atlas__header__btn\" iconClass=\"Plus\" style=\"color: #409EFF;\" />\r\n </div>\r\n </template>\r\n <el-empty v-if=\"atlas.length <= 0\" description=\"暂无内容\" />\r\n <el-scrollbar class=\"cms-article-atlas__list\" v-else>\r\n <el-card class=\"cms-article-atlas__list__item\" v-for=\"(item, index) in atlas\" :key=\"item.id\">\r\n <el-image class=\"images\" :src=\"item.path\" v-if=\"item.type == 1\" fit=\"contain\">\r\n <div slot=\"placeholder\" class=\"image-slot\">\r\n 加载中<span class=\"dot\">...</span>\r\n </div>\r\n </el-image>\r\n <video class=\"video\" v-if=\"item.type == 2\" :src=\"item.path\" controls></video>\r\n <div class=\"cms-article-atlas__list__item__desc\">\r\n <div class=\"item-desc-left\">\r\n <div class=\"title ellipsis\">\r\n <MKSvgIcon class=\"icon\" v-if=\"item.type == 1\" iconClass=\"Picture\"></MKSvgIcon>\r\n <MKSvgIcon class=\"icon\" v-if=\"item.type == 2\" iconClass=\"VideoCamera\"></MKSvgIcon>\r\n <span :title=\"item.title\">{{ item.title }}</span>\r\n </div>\r\n <div class=\"external-links ellipsis\">\r\n <MKSvgIcon class=\"icon\" v-if=\"item.link\" iconClass=\"Link\"></MKSvgIcon>\r\n <a :href=\"item.link\" target=\"_blank\" :title=\"item.path\">{{ item.link }}</a>\r\n </div>\r\n </div>\r\n <el-dropdown trigger=\"click\" :teleported=\"false\" class=\"item-desc-right\">\r\n <span class=\"el-dropdown-link\">\r\n 更多<el-icon class=\"el-icon--right\"><arrow-down /></el-icon>\r\n </span>\r\n <template #dropdown>\r\n <el-dropdown-menu>\r\n <el-dropdown-item class=\"edit-button\" :icon=\"EditPen\" @click=\"editHandle(item)\">编辑</el-dropdown-item>\r\n <el-dropdown-item class=\"delete-button\" :icon=\"Delete\"\r\n @click=\"deleteHandle(index)\">删除</el-dropdown-item>\r\n </el-dropdown-menu>\r\n </template>\r\n </el-dropdown>\r\n </div>\r\n </el-card>\r\n <el-dialog v-model=\"formVisible\" append-to-body>\r\n <MKDataForm :dataForm=\"atlasDv\">\r\n <MKForm></MKForm>\r\n </MKDataForm>\r\n <template #footer>\r\n <el-button type=\"primary\" @click=\"saveAlatsHandle\">保存</el-button>\r\n <el-button @click=\"formVisible = false\"> 取消 </el-button>\r\n </template>\r\n </el-dialog>\r\n\r\n </el-scrollbar>\r\n </el-card>\r\n</template>\r\n<script setup lang='ts'>\r\nimport { onMounted, computed, ref, defineProps, watch, reactive } from \"vue\";\r\nimport { EditPen, ArrowDown, Delete } from \"@element-plus/icons-vue\"\r\nimport { CmsArticleAtlasForm } from \"../../../dataviews/cms-articles/cms-article-atlas\";\r\nimport { MKDataForm, MKForm } from \"../../../../../components\";\r\n\r\n// 参数\r\nconst props = defineProps({\r\n articleId: { type: Number, default: \"\" },\r\n modelValue: { type: Array<any>, default: () => [] },\r\n})\r\nconst emit = defineEmits([\"update:modelValue\"])\r\n//atlas表单\r\nconst atlasDv = reactive(new CmsArticleAtlasForm()) as CmsArticleAtlasForm;\r\nconst formVisible = ref(false);\r\n\r\nconst imgExtension = [\".jpg\", \".png\", \".gif\", \".jpeg\", \".bmp\", \".webp\", \".svg\", \".tiff\", \".tif\", \".ico\", \".jfif\", \".jpe\"]\r\nconst videoExtension = [\".mp4\", \".avi\", \".rmvb\", \".flv\", \".mkv\", \".wmv\", \".mov\", \".webm\", \".m4v\", \".mpg\", \".mpeg\", \".mts\", \".m2ts\", \".m2v\", \".mpe\", \".mpv\", \".vob\", \".ogv\", \".3gp\", \".3g2\", \".3gpp\", \".3gpp2\", \".3gp2\"]\r\n\r\n\r\n//图集数据\r\nconst atlas = computed(\r\n () => {\r\n const _arr = props.modelValue.map((item, index) => {\r\n const extension = item.path.slice(item.path.lastIndexOf(\".\"))\r\n let type = 0;\r\n if (imgExtension.includes(extension)) {\r\n type = 1\r\n } else if (videoExtension.includes(extension)) {\r\n type = 2\r\n }\r\n return { ...item, type, uid: item.title + index }\r\n })\r\n return _arr\r\n },\r\n);\r\n\r\n\r\n(window as any).atlasDv = atlasDv;\r\n(window as any).atlas = atlas;\r\n(window as any).modelValue = props.modelValue;\r\n/***\r\n * 展示atlas表单\r\n */\r\nconst showAtlasFormHandle = () => {\r\n formVisible.value = true;\r\n atlasDv.addRecord({\r\n cmsArticlesId: props.articleId\r\n })\r\n}\r\n\r\n//重置atlas表单\r\nwatch(formVisible, (v) => {\r\n atlasDv.reset();\r\n})\r\n\r\n/**\r\n * 保存\r\n */\r\nconst saveAlatsHandle = async () => {\r\n if (atlasDv.data.uid) {\r\n const index = atlas.value.findIndex(item => item.uid == atlasDv.data.uid)\r\n atlas.value[index] = { ...atlas.value[index], ...atlasDv.data }\r\n } else {\r\n atlas.value.push(atlasDv.data)\r\n }\r\n\r\n emit(\"update:modelValue\", atlas.value)\r\n formVisible.value = false;\r\n}\r\n/**\r\n * 删除\r\n */\r\nconst deleteHandle = (index: number) => {\r\n atlas.value.splice(index, 1)\r\n emit(\"update:modelValue\", atlas.value)\r\n}\r\n\r\nconst editHandle = (item: any) => {\r\n atlasDv.addRecord(item)\r\n formVisible.value = true;\r\n}\r\n// 挂在完成之后\r\nonMounted(async () => {\r\n await atlasDv.init();\r\n})\r\n\r\n</script>\r\n","<template>\r\n <div class=\"mk-cms-article-eidtadd__warp\">\r\n <el-page-header style=\"background-color: #fff;padding: 10px;\" :icon=\"ArrowLeftBold\" title=\"返回\"\r\n @back=\"() => router.push({ name: 'cms/contents', query: { pid: articleForm?.data?.cmsPartId } })\">\r\n <template #content>\r\n <template v-if=\"!articleForm.loading\">\r\n <el-text v-if=\"!articleForm.data?.modifier\">{{ !!route.query.id ? \"编辑文章\" : \"创建文章\" }}</el-text>\r\n <el-text v-else>{{ articleForm.data?.modifierName }} 于 {{ articleForm.data?.updatedAt }} 更新</el-text>\r\n </template>\r\n </template>\r\n <template #extra>\r\n <div class=\"mk-cms-article-eidtadd__header_tools\">\r\n\r\n <template v-if=\"!articleForm.loading\">\r\n <el-tag v-if=\"!articleForm.data?.publishTime\" effect=\"dark\" round>未发布</el-tag>\r\n <el-text v-else>发布时间:{{ articleForm.data?.publishTime }}</el-text>\r\n </template>\r\n\r\n <el-dropdown split-button type=\"primary\" style=\"margin-left: 10px;\" @click=\"saveHandle\">\r\n <MKSvgIcon name=\"carbon:save\" style=\"margin-right: 10px;\" />\r\n 保存\r\n <template #dropdown>\r\n <el-dropdown-menu>\r\n <el-dropdown-item v-if=\"CmsSettings.publish.mode == 'static'\" @click=\"saveAndViewHandle\">\r\n <MKSvgIcon name=\"ep:view\" style=\"margin-right: 5px;\" />\r\n 保存并预览\r\n </el-dropdown-item>\r\n <el-dropdown-item @click=\"saveAndPublishHandle\">\r\n <MKSvgIcon name=\"ep:share\" style=\"margin-right: 5px;\" />\r\n 保存并发布\r\n </el-dropdown-item>\r\n </el-dropdown-menu>\r\n </template>\r\n </el-dropdown>\r\n </div>\r\n </template>\r\n </el-page-header>\r\n <div class=\"mk-cms-article-eidtadd__body\" v-loading=\"articleForm.loading\">\r\n\r\n <MKDocEditor v-if=\"articleForm.data\" :css=\"CmsSettings.content.doc.css\" namespace=\"cms-article\"\r\n :js=\"CmsSettings.content.doc.js\" :modelValue=\"content\" @update:modelValue=\"docEditorChangeHandle\">\r\n <template #header>\r\n <div class=\"mk-cms-article-eidtadd__body__header\">\r\n <el-row>\r\n <el-input class=\"title\" type=\"textarea\" :autosize=\"{ minRows: 1, maxRows: 4 }\" maxlength=\"150\"\r\n show-word-limit placeholder=\"请输入标题\" v-model=\"title\" />\r\n </el-row>\r\n <el-row>\r\n <el-input class=\"sub-title\" type=\"textarea\" :autosize=\"{ minRows: 1, maxRows: 4 }\" maxlength=\"150\"\r\n show-word-limit placeholder=\"[选填] 请输入子标题\" v-model=\"subTitle\" />\r\n </el-row>\r\n </div>\r\n </template>\r\n <template #after-extentions>\r\n <div class=\"mk-cms-article-eidtadd__body__extentions\" :class=\"{ hide: closeExtentions! }\" ref=\"extentionsRef\">\r\n <MKSvgIcon name=\"ep:arrow-left\" class=\"open\" @click=\"closeExtentionsHandle\" v-if=\"closeExtentions\">\r\n </MKSvgIcon>\r\n <MKSvgIcon v-else name=\"ep:arrow-right\" class=\"close\" @click=\"hideExtentionsHandle\">\r\n </MKSvgIcon>\r\n <el-divider content-position=\"left\">文章设置</el-divider>\r\n <MKDataForm :dataForm=\"articleForm\">\r\n <MKForm :dataForm=\"articleForm\" style=\"width:225px\" label-width=\"110px\">\r\n <el-row v-if=\"CmsSettings.content.useTop\">\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isTop\"></MKDataFormItem>\r\n </el-row>\r\n <el-row v-if=\"CmsSettings.content.useNew\">\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isNew\"></MKDataFormItem>\r\n </el-row>\r\n <el-row v-if=\"CmsSettings.content.useHotRecommend\">\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isHotRecommend\"></MKDataFormItem>\r\n </el-row>\r\n <el-row v-if=\"CmsSettings.content.usePartRecommend\">\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isPartRecommend\"></MKDataFormItem>\r\n </el-row>\r\n <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isShowList\"></MKDataFormItem>\r\n </el-row>\r\n <!-- <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"isDraft\"></MKDataFormItem>\r\n </el-row> -->\r\n <!-- <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"sortNo\"></MKDataFormItem>\r\n </el-row> -->\r\n </MKForm>\r\n </MKDataForm>\r\n </div>\r\n </template>\r\n <template #footer>\r\n <div class=\"mk-cms-article-eidtadd__body__footer\">\r\n <el-tabs v-model=\"articleOptionsActive\">\r\n <el-tab-pane label=\"基础内容\" name=\"content\">\r\n <div class=\"content\">\r\n <el-row :gutter=\"20\">\r\n <el-col :span=\"6\">\r\n <el-input placeholder=\"[选填] 作者\" v-model=\"articleForm.data.author\" clearable>\r\n <template #prefix>\r\n <MKSvgIcon name=\"ep:user-filled\" />\r\n </template>\r\n </el-input>\r\n </el-col>\r\n <el-col :span=\"6\">\r\n <el-date-picker v-model=\"releaseDate\" type=\"datetime\" placeholder=\"发布时间\"\r\n :default-time=\"new Date()\" />\r\n </el-col>\r\n <el-col :span=\"12\">\r\n <el-input placeholder=\"[选填] 发布地址\" v-model=\"articleForm.data.locationDesc\" clearable>\r\n <template #prefix>\r\n <MKSvgIcon name=\"ep:location\" />\r\n </template>\r\n </el-input>\r\n </el-col>\r\n </el-row>\r\n <el-row v-if=\"CmsSettings.content.useTags\">\r\n <el-select v-model=\"tags\" multiple filterable allow-create default-first-option\r\n :reserve-keyword=\"false\" placeholder=\"[可选] 选择文章标签\" style=\"width: 100%\">\r\n <template #prefix>\r\n <MKSvgIcon name=\"ep:collection-tag\" />\r\n </template>\r\n </el-select>\r\n </el-row>\r\n <el-divider content-position=\"left\">\r\n 文章封面/简介\r\n <el-switch v-model=\"descAutoCreate\" style=\"margin-left: 10px;\" inline-prompt active-text=\"自动生成\"\r\n inactive-text=\"手动撰写\" />\r\n </el-divider>\r\n <el-row class=\"cover-desc\">\r\n <MKUploadImage style=\"margin-right: 10px;\" v-model=\"articleForm.data.cover\" width=\"115px\" height=\"115px\" \r\n :uploadContext=\"new ImageUploadContext(CmsSettings.content.coverImageSize)\">\r\n\r\n </MKUploadImage>\r\n <el-input class=\"desc\" type=\"textarea\" :autosize=\"{ minRows: 5, maxRows: 30 }\" maxlength=\"1000\"\r\n show-word-limit placeholder=\"[选填] 文章简介\" v-model=\"desc\" />\r\n </el-row>\r\n <el-divider content-position=\"left\">文章Banner图</el-divider>\r\n <el-row>\r\n <MKUploadImage v-model=\"articleForm.data.banner\" style=\"width: 100%;\" height=\"300px\" :uploadContext=\"new ImageUploadContext(CmsSettings.content.bannerImageSize)\">\r\n\r\n </MKUploadImage>\r\n </el-row>\r\n </div>\r\n </el-tab-pane>\r\n <el-tab-pane label=\"文章资源库\" name=\"atlas\" v-if=\"CmsSettings.content.useAtlas\">\r\n <ArticleAtlas v-model=\"atlas\" :articleId=\"parseInt(articleForm.data?.id)\" />\r\n </el-tab-pane>\r\n <el-tab-pane label=\"页面设置\" name=\"settings\" v-if=\"CmsSettings.publish.mode == 'static'\">\r\n <MKDataForm :dataForm=\"articleForm\" label-width=\"120px\">\r\n <MKForm :dataForm=\"articleForm\">\r\n <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"seoKeywords\"></MKDataFormItem>\r\n </el-row>\r\n <el-row>\r\n <MKDataFormItem style=\"width: 100%;\" name=\"seoDesc\"></MKDataFormItem>\r\n </el-row>\r\n </MKForm>\r\n </MKDataForm>\r\n </el-tab-pane>\r\n </el-tabs>\r\n </div>\r\n </template>\r\n </MKDocEditor>\r\n </div>\r\n </div>\r\n</template>\r\n<script setup lang='ts'>\r\nimport { onMounted, reactive, ref, computed } from \"vue\";\r\nimport { ArrowLeftBold } from \"@element-plus/icons-vue\"\r\nimport { MKDocEditor, MKSvgIcon, MKUploadImage } from '../../../../components'\r\nimport { MKDataForm, MKForm, MKDataFormItem } from \"../../../../components\";\r\nimport ArticleAtlas from \"./components/article-atlas.vue\";\r\nimport { CmsArticlesForm } from \"../../dataviews\";\r\nimport { useRoute, useRouter } from \"vue-router\";\r\nimport { ImageUploadContext } from \"../../../ms\";\r\nimport { useCmsSettings } from \"../../cms-settings\"\r\n// cms 配置\r\nconst CmsSettings = useCmsSettings(true);\r\n\r\nconst route = useRoute()\r\nconst router = useRouter();\r\n\r\n\r\n// 文章请求\r\nconst articleForm = reactive(new CmsArticlesForm()) as CmsArticlesForm;\r\nconst articleOptionsActive = ref(\"content\");\r\n\r\n\r\n// 标题\r\nconst title = computed({\r\n get() { return articleForm.data?.title || \"\"; },\r\n set(val) { articleForm.data.title = val; }\r\n});\r\n// 子标题\r\nconst subTitle = computed({\r\n get() { return articleForm.data?.subTitle || \"\"; },\r\n set(val) { articleForm.data.subTitle = val; }\r\n});\r\n// 获取默认简介\r\nconst getDefaultDescContent = () => {\r\n if (!descAutoCreate.value) {\r\n return \"\";\r\n }\r\n let val: any = \"\";\r\n const div = document.createElement(\"div\");\r\n div.innerHTML = content.value;\r\n val = div.textContent?.substring(0, 700);\r\n if (div.textContent!.length > 700) {\r\n val += \"...\";\r\n }\r\n return val;\r\n}\r\nconst descAutoCreate = ref(true)\r\n// 简介\r\nconst desc = computed({\r\n get() {\r\n return articleForm.data?.desc || getDefaultDescContent();\r\n },\r\n set(val) {\r\n articleForm.data.desc = val;\r\n }\r\n});\r\n// 发布时间\r\nconst releaseDate = computed({\r\n get() { return articleForm.data?.releaseDate || articleForm.data?.publishTime; },\r\n set(val) { articleForm.data.releaseDate = val; }\r\n});\r\n// 标签\r\nconst tags = ref([]);\r\n// computed({ \r\n// get() { return articleForm.data?.tags || [] }, \r\n// set(val) { articleForm.data.tags = val; } \r\n// });\r\n// 内容\r\nconst content = computed({\r\n get() { return articleForm.data?.content || \"\"; },\r\n set(val) { articleForm.data.content = val; }\r\n});\r\n\r\n// 图集\r\nconst atlas = computed({\r\n get() {\r\n return articleForm.data?.atlas\r\n },\r\n set(val) { articleForm.data.atlas = val; }\r\n});\r\n\r\n// 表单初始化\r\nconst formInitDataInfo = ()=>{\r\n // 初始化数据加载\r\n if (route.query.id) {\r\n articleForm.editRecord(route.query.id);\r\n }\r\n else if (route.query.partId) {\r\n articleForm.addRecord({ cmsPartId: route.query.partId,isDraft:1 });\r\n }\r\n else {\r\n articleForm.addRecord({ isDraft:1 });\r\n }\r\n}\r\n\r\nonMounted(() => {\r\n formInitDataInfo();\r\n articleForm.init();\r\n\r\n})\r\n\r\n// 保存\r\nconst saveHandle = async () => {\r\n\r\n // 简介不存在的时候使用自动生成的\r\n if (!articleForm.data?.desc) {\r\n desc.value = getDefaultDescContent();\r\n }\r\n\r\n let result = await articleForm.submit();\r\n\r\n router.back();\r\n\r\n return result;\r\n}\r\n\r\n// 保存并预览\r\nconst saveAndViewHandle = async ()=>{\r\n const partId = articleForm.data.cmsPartId;\r\n const data = await saveHandle();\r\n if(data.data.code == 200 && data.data.data){\r\n window.open('/api/cms/content/preview/content/' + partId + '/' + data.data.data)\r\n }\r\n}\r\n\r\n// 保存并发布\r\nconst saveAndPublishHandle = async ()=>{\r\n const result:any = await articleForm.saveAndPublish(CmsSettings.publish.mode);\r\n if(result.data.code == 200){\r\n router.back();\r\n }\r\n}\r\n\r\n// 隐藏扩展\r\nconst closeExtentions = ref(true);\r\nconst extentionsRef = ref();\r\nconst hideExtentionsHandle = () => {\r\n closeExtentions.value = true;\r\n}\r\n//展示扩展\r\nconst closeExtentionsHandle = () => {\r\n closeExtentions.value = false;\r\n}\r\n\r\nconst docEditorChangeHandle = (v: any) => {\r\n articleForm.data.content = v;\r\n}\r\n\r\n</script>\r\n"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { reactive } from "vue";
2
- import { p as MsConfigTable } from "./index-mq3nYYwD.js";
2
+ import { p as MsConfigTable } from "./index-DknNVWIH.js";
3
3
  const CmsSettings = reactive({
4
4
  publish: {
5
5
  mode: "dynamic"
@@ -47,4 +47,4 @@ export {
47
47
  CmsSettingsKEY as C,
48
48
  useCmsSettings as u
49
49
  };
50
- //# sourceMappingURL=cms-settings-DHQmoLKI.js.map
50
+ //# sourceMappingURL=cms-settings-jjd73rEK.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cms-settings-DHQmoLKI.js","sources":["../../src/modules/cms/cms-settings.ts"],"sourcesContent":["import { reactive } from \"vue\"\r\nimport { MsConfigTable } from \"../ms/dataviews/ms-config/MsConfigTable\"\r\nimport { registerLexicalEditorModule,unRegisterLexicalEditorModule } from \"../../components/basic/lexical-editor\"\r\n\r\n/**\r\n * 发布配置\r\n */\r\ntype PublishSettings = {\r\n // 发布模式 静态发布和动态发布\r\n mode:'static' | 'dynamic'\r\n}\r\n\r\n/**\r\n * cms 文档编辑设置\r\n */\r\ntype CmsDocSettings = {\r\n css:string,\r\n js:string\r\n}\r\n\r\n/**\r\n * 栏目配置\r\n */\r\ntype PartSettings = {\r\n doc:CmsDocSettings\r\n openBanner:boolean,\r\n bannerImageSize:string,\r\n // 文档模块\r\n docModules:Array<any>,\r\n // 文档模版\r\n docTemplates:Array<any>\r\n}\r\n\r\n/**\r\n * 内容设置\r\n */\r\ntype ContentSettings = {\r\n /**\r\n * 内容文档设置\r\n */\r\n doc:CmsDocSettings,\r\n /**\r\n * 开启文档置顶功能\r\n */\r\n useTop:boolean,\r\n /**\r\n * 开启最新文档功能\r\n */\r\n useNew:boolean,\r\n /**\r\n * 开启热点推荐功能\r\n */\r\n useHotRecommend:boolean,\r\n /**\r\n * 开启栏目推荐功能\r\n */\r\n usePartRecommend:boolean,\r\n /**\r\n * 开启内容标签\r\n */\r\n useTags:boolean,\r\n /**\r\n * 开启媒体库\r\n */\r\n useAtlas:boolean,\r\n /**\r\n * 封面图的尺寸 默认 300 * 300\r\n */\r\n coverImageSize:string,\r\n /**\r\n * banner图的尺寸 默认 1440 * 560\r\n */\r\n bannerImageSize:string,\r\n // 文档模块\r\n docModules:Array<any>,\r\n // 文档模版\r\n docTemplates:Array<any>\r\n}\r\n\r\n/**\r\n * cms 系统设置\r\n */\r\nexport type CmsSettingsType = {\r\n // 发布配置\r\n publish:PublishSettings,\r\n devices:Array<'pc' | 'mobile'>,\r\n part:PartSettings,\r\n content:ContentSettings\r\n}\r\n\r\n/**\r\n * cms 配置\r\n */\r\nconst CmsSettings = reactive<CmsSettingsType>({\r\n publish:{\r\n mode:\"dynamic\"\r\n },\r\n devices:[\"pc\"],\r\n part:{\r\n openBanner:true,\r\n bannerImageSize:\"1440*560\",\r\n docModules:[],\r\n docTemplates:[],\r\n doc:{\r\n js:\"\",\r\n css:\"\"\r\n }\r\n },\r\n content:{\r\n doc:{\r\n js:\"\",\r\n css:\"\"\r\n },\r\n docModules:[],\r\n docTemplates:[],\r\n useTop:true,\r\n useNew:true,\r\n useHotRecommend:false,\r\n usePartRecommend:false,\r\n useTags:false,\r\n useAtlas:false,\r\n coverImageSize:\"300*300\",\r\n bannerImageSize:\"1440*560\"\r\n }\r\n})\r\n\r\n/**\r\n * \r\n */\r\nexport const CmsSettingsKEY = \"cms:content:man:settings\";\r\n\r\n/**\r\n * 使用cms配置\r\n * @param load \r\n */\r\nexport const useCmsSettings = function(load:boolean|undefined = false):CmsSettingsType{\r\n\r\n if(load){\r\n \r\n MsConfigTable.getConfigValue<CmsSettingsType>(CmsSettingsKEY).then(data=>{\r\n if(data){ \r\n // 卸载掉老旧模块\r\n // CmsSettings.docModules.forEach(item=> unRegisterDocModule(item.name) );\r\n Object.assign(CmsSettings,data);\r\n // 加载新内容安装新模块\r\n // CmsSettings.docModules.forEach(item=>registerLexicalEditorModule(item,\"\"));\r\n }\r\n });\r\n\r\n }\r\n\r\n return CmsSettings;\r\n}\r\n"],"names":[],"mappings":";;AA6FA,MAAM,cAAc,SAA0B;AAAA,EAC5C,SAAQ;AAAA,IACN,MAAK;AAAA,EACP;AAAA,EACA,SAAQ,CAAC,IAAI;AAAA,EACb,MAAK;AAAA,IACH,YAAW;AAAA,IACX,iBAAgB;AAAA,IAChB,YAAW,CAAC;AAAA,IACZ,cAAa,CAAC;AAAA,IACd,KAAI;AAAA,MACF,IAAG;AAAA,MACH,KAAI;AAAA,IACN;AAAA,EACF;AAAA,EACA,SAAQ;AAAA,IACN,KAAI;AAAA,MACF,IAAG;AAAA,MACH,KAAI;AAAA,IACN;AAAA,IACA,YAAW,CAAC;AAAA,IACZ,cAAa,CAAC;AAAA,IACd,QAAO;AAAA,IACP,QAAO;AAAA,IACP,iBAAgB;AAAA,IAChB,kBAAiB;AAAA,IACjB,SAAQ;AAAA,IACR,UAAS;AAAA,IACT,gBAAe;AAAA,IACf,iBAAgB;AAAA,EAClB;AACF,CAAC;AAKM,MAAM,iBAAiB;AAMjB,MAAA,iBAAkB,SAAS,OAAyB,OAAsB;AAErF,MAAG,MAAK;AAEN,kBAAc,eAAgC,cAAc,EAAE,KAAK,CAAM,SAAA;AACvE,UAAG,MAAK;AAGC,eAAA,OAAO,aAAY,IAAI;AAAA,MAGhC;AAAA,IAAA,CACD;AAAA,EAEH;AAEO,SAAA;AACT;"}
1
+ {"version":3,"file":"cms-settings-jjd73rEK.js","sources":["../../src/modules/cms/cms-settings.ts"],"sourcesContent":["import { reactive } from \"vue\"\r\nimport { MsConfigTable } from \"../ms/dataviews/ms-config/MsConfigTable\"\r\nimport { registerLexicalEditorModule,unRegisterLexicalEditorModule } from \"../../components/basic/lexical-editor\"\r\n\r\n/**\r\n * 发布配置\r\n */\r\ntype PublishSettings = {\r\n // 发布模式 静态发布和动态发布\r\n mode:'static' | 'dynamic'\r\n}\r\n\r\n/**\r\n * cms 文档编辑设置\r\n */\r\ntype CmsDocSettings = {\r\n css:string,\r\n js:string\r\n}\r\n\r\n/**\r\n * 栏目配置\r\n */\r\ntype PartSettings = {\r\n doc:CmsDocSettings\r\n openBanner:boolean,\r\n bannerImageSize:string,\r\n // 文档模块\r\n docModules:Array<any>,\r\n // 文档模版\r\n docTemplates:Array<any>\r\n}\r\n\r\n/**\r\n * 内容设置\r\n */\r\ntype ContentSettings = {\r\n /**\r\n * 内容文档设置\r\n */\r\n doc:CmsDocSettings,\r\n /**\r\n * 开启文档置顶功能\r\n */\r\n useTop:boolean,\r\n /**\r\n * 开启最新文档功能\r\n */\r\n useNew:boolean,\r\n /**\r\n * 开启热点推荐功能\r\n */\r\n useHotRecommend:boolean,\r\n /**\r\n * 开启栏目推荐功能\r\n */\r\n usePartRecommend:boolean,\r\n /**\r\n * 开启内容标签\r\n */\r\n useTags:boolean,\r\n /**\r\n * 开启媒体库\r\n */\r\n useAtlas:boolean,\r\n /**\r\n * 封面图的尺寸 默认 300 * 300\r\n */\r\n coverImageSize:string,\r\n /**\r\n * banner图的尺寸 默认 1440 * 560\r\n */\r\n bannerImageSize:string,\r\n // 文档模块\r\n docModules:Array<any>,\r\n // 文档模版\r\n docTemplates:Array<any>\r\n}\r\n\r\n/**\r\n * cms 系统设置\r\n */\r\nexport type CmsSettingsType = {\r\n // 发布配置\r\n publish:PublishSettings,\r\n devices:Array<'pc' | 'mobile'>,\r\n part:PartSettings,\r\n content:ContentSettings\r\n}\r\n\r\n/**\r\n * cms 配置\r\n */\r\nconst CmsSettings = reactive<CmsSettingsType>({\r\n publish:{\r\n mode:\"dynamic\"\r\n },\r\n devices:[\"pc\"],\r\n part:{\r\n openBanner:true,\r\n bannerImageSize:\"1440*560\",\r\n docModules:[],\r\n docTemplates:[],\r\n doc:{\r\n js:\"\",\r\n css:\"\"\r\n }\r\n },\r\n content:{\r\n doc:{\r\n js:\"\",\r\n css:\"\"\r\n },\r\n docModules:[],\r\n docTemplates:[],\r\n useTop:true,\r\n useNew:true,\r\n useHotRecommend:false,\r\n usePartRecommend:false,\r\n useTags:false,\r\n useAtlas:false,\r\n coverImageSize:\"300*300\",\r\n bannerImageSize:\"1440*560\"\r\n }\r\n})\r\n\r\n/**\r\n * \r\n */\r\nexport const CmsSettingsKEY = \"cms:content:man:settings\";\r\n\r\n/**\r\n * 使用cms配置\r\n * @param load \r\n */\r\nexport const useCmsSettings = function(load:boolean|undefined = false):CmsSettingsType{\r\n\r\n if(load){\r\n \r\n MsConfigTable.getConfigValue<CmsSettingsType>(CmsSettingsKEY).then(data=>{\r\n if(data){ \r\n // 卸载掉老旧模块\r\n // CmsSettings.docModules.forEach(item=> unRegisterDocModule(item.name) );\r\n Object.assign(CmsSettings,data);\r\n // 加载新内容安装新模块\r\n // CmsSettings.docModules.forEach(item=>registerLexicalEditorModule(item,\"\"));\r\n }\r\n });\r\n\r\n }\r\n\r\n return CmsSettings;\r\n}\r\n"],"names":[],"mappings":";;AA6FA,MAAM,cAAc,SAA0B;AAAA,EAC5C,SAAQ;AAAA,IACN,MAAK;AAAA,EACP;AAAA,EACA,SAAQ,CAAC,IAAI;AAAA,EACb,MAAK;AAAA,IACH,YAAW;AAAA,IACX,iBAAgB;AAAA,IAChB,YAAW,CAAC;AAAA,IACZ,cAAa,CAAC;AAAA,IACd,KAAI;AAAA,MACF,IAAG;AAAA,MACH,KAAI;AAAA,IACN;AAAA,EACF;AAAA,EACA,SAAQ;AAAA,IACN,KAAI;AAAA,MACF,IAAG;AAAA,MACH,KAAI;AAAA,IACN;AAAA,IACA,YAAW,CAAC;AAAA,IACZ,cAAa,CAAC;AAAA,IACd,QAAO;AAAA,IACP,QAAO;AAAA,IACP,iBAAgB;AAAA,IAChB,kBAAiB;AAAA,IACjB,SAAQ;AAAA,IACR,UAAS;AAAA,IACT,gBAAe;AAAA,IACf,iBAAgB;AAAA,EAClB;AACF,CAAC;AAKM,MAAM,iBAAiB;AAMjB,MAAA,iBAAkB,SAAS,OAAyB,OAAsB;AAErF,MAAG,MAAK;AAEN,kBAAc,eAAgC,cAAc,EAAE,KAAK,CAAM,SAAA;AACvE,UAAG,MAAK;AAGC,eAAA,OAAO,aAAY,IAAI;AAAA,MAGhC;AAAA,IAAA,CACD;AAAA,EAEH;AAEO,SAAA;AACT;"}
@@ -3,7 +3,7 @@ import { useRouter } from "vue-router";
3
3
  import "@maketribe/dm";
4
4
  import "element-plus";
5
5
  import "@maketribe/utils";
6
- import { x as DataModelDefines, C as useSingleViewWithDialog, z as MKPageContainer, A as MKDataTable, F as MKTableView, G as MKTableTree } from "./index-mq3nYYwD.js";
6
+ import { x as DataModelDefines, C as useSingleViewWithDialog, z as MKPageContainer, A as MKDataTable, F as MKTableView, G as MKTableTree } from "./index-DknNVWIH.js";
7
7
  import "@maketribe/request";
8
8
  import "@maketribe/locale";
9
9
  import "@lexical/overflow";
@@ -58,4 +58,4 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
58
58
  export {
59
59
  _sfc_main as default
60
60
  };
61
- //# sourceMappingURL=dialog-CPR8_y9H.js.map
61
+ //# sourceMappingURL=dialog-D6rgkM2v.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dialog-CPR8_y9H.js","sources":["../../src/page/index/dv/default/single/table-tree/dialog.vue"],"sourcesContent":["<template>\n <MKPageContainer v-if=\"dataTree\">\n <MKDataTable :data-table=\"dataTree\" enableQueryParams>\n <MKTableView>\n <MKTableTree />\n </MKTableView>\n </MKDataTable>\n </MKPageContainer>\n</template>\n<script setup lang=\"ts\">\nimport { unref, computed, watch, ref, Ref } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport { DataForm, DataTree } from \"@maketribe/dm\";\nimport { DataModelDefines } from \"../../../../../../core\";\nimport {\n MKPageContainer,\n MKDataTable,\n MKTableView,\n MKTableTree,\n} from \"../../../../../../components\";\nimport { useSingleViewWithDialog } from \"../../../../../../composables\";\n\nconst router = useRouter();\n\nconst dataTree: Ref<DataTree | null> = ref(null);\nconst dataForm: Ref<DataForm | null> = ref(null);\n\nwatch(\n computed(() => unref(router.currentRoute).meta.name as string),\n (name) => {\n dataTree.value = DataModelDefines.instance.getDataTree(name);\n\n dataForm.value = DataModelDefines.instance.getDataForm(name);\n },\n { immediate: true }\n);\n\nuseSingleViewWithDialog({ dataTable: dataTree, dataForm });\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAsBA,UAAM,SAAS;AAET,UAAA,WAAiC,IAAI,IAAI;AACzC,UAAA,WAAiC,IAAI,IAAI;AAE/C;AAAA,MACE,SAAS,MAAM,MAAM,OAAO,YAAY,EAAE,KAAK,IAAc;AAAA,MAC7D,CAAC,SAAS;AACR,iBAAS,QAAQ,iBAAiB,SAAS,YAAY,IAAI;AAE3D,iBAAS,QAAQ,iBAAiB,SAAS,YAAY,IAAI;AAAA,MAC7D;AAAA,MACA,EAAE,WAAW,KAAK;AAAA,IAAA;AAGpB,4BAAwB,EAAE,WAAW,UAAU,SAAU,CAAA;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"dialog-D6rgkM2v.js","sources":["../../src/page/index/dv/default/single/table-tree/dialog.vue"],"sourcesContent":["<template>\n <MKPageContainer v-if=\"dataTree\">\n <MKDataTable :data-table=\"dataTree\" enableQueryParams>\n <MKTableView>\n <MKTableTree />\n </MKTableView>\n </MKDataTable>\n </MKPageContainer>\n</template>\n<script setup lang=\"ts\">\nimport { unref, computed, watch, ref, Ref } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport { DataForm, DataTree } from \"@maketribe/dm\";\nimport { DataModelDefines } from \"../../../../../../core\";\nimport {\n MKPageContainer,\n MKDataTable,\n MKTableView,\n MKTableTree,\n} from \"../../../../../../components\";\nimport { useSingleViewWithDialog } from \"../../../../../../composables\";\n\nconst router = useRouter();\n\nconst dataTree: Ref<DataTree | null> = ref(null);\nconst dataForm: Ref<DataForm | null> = ref(null);\n\nwatch(\n computed(() => unref(router.currentRoute).meta.name as string),\n (name) => {\n dataTree.value = DataModelDefines.instance.getDataTree(name);\n\n dataForm.value = DataModelDefines.instance.getDataForm(name);\n },\n { immediate: true }\n);\n\nuseSingleViewWithDialog({ dataTable: dataTree, dataForm });\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAsBA,UAAM,SAAS;AAET,UAAA,WAAiC,IAAI,IAAI;AACzC,UAAA,WAAiC,IAAI,IAAI;AAE/C;AAAA,MACE,SAAS,MAAM,MAAM,OAAO,YAAY,EAAE,KAAK,IAAc;AAAA,MAC7D,CAAC,SAAS;AACR,iBAAS,QAAQ,iBAAiB,SAAS,YAAY,IAAI;AAE3D,iBAAS,QAAQ,iBAAiB,SAAS,YAAY,IAAI;AAAA,MAC7D;AAAA,MACA,EAAE,WAAW,KAAK;AAAA,IAAA;AAGpB,4BAAwB,EAAE,WAAW,UAAU,SAAU,CAAA;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,6 +1,6 @@
1
1
  import { defineComponent, ref, watch, computed, unref, resolveComponent, openBlock, createBlock, withCtx, createVNode, createCommentVNode } from "vue";
2
2
  import { useRouter } from "vue-router";
3
- import { x as DataModelDefines, C as useSingleViewWithDialog, E as MKTreeView } from "./index-mq3nYYwD.js";
3
+ import { x as DataModelDefines, C as useSingleViewWithDialog, E as MKTreeView } from "./index-DknNVWIH.js";
4
4
  import "element-plus";
5
5
  import "@maketribe/request";
6
6
  import "@maketribe/utils";
@@ -49,4 +49,4 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
49
49
  export {
50
50
  _sfc_main as default
51
51
  };
52
- //# sourceMappingURL=dialog-BQtjgY66.js.map
52
+ //# sourceMappingURL=dialog-DBVAimvZ.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dialog-BQtjgY66.js","sources":["../../src/page/index/dv/default/single/tree/dialog.vue"],"sourcesContent":["<template>\n <MKDataTablePage v-if=\"dataTree\" :data-table=\"dataTree\">\n <MKTreeView />\n </MKDataTablePage>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed, unref, Ref, ref, watch } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport { DataForm, DataTree } from \"@maketribe/dm\";\nimport { MKTreeView } from \"../../../../../../components\";\nimport { DataModelDefines } from \"../../../../../../core\";\nimport { useSingleViewWithDialog } from \"../../../../../../composables\";\n\nconst router = useRouter();\n\nconst dataTree: Ref<DataTree | null> = ref(null);\nconst dataForm: Ref<DataForm | null> = ref(null);\n\nwatch(\n computed(() => unref(router.currentRoute).meta.name as string),\n (name) => {\n dataTree.value = DataModelDefines.instance.getDataTree(name);\n dataForm.value = DataModelDefines.instance.getDataForm(name);\n },\n { immediate: true }\n);\n\nuseSingleViewWithDialog({ dataTable: dataTree, dataForm });\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAcA,UAAM,SAAS;AAET,UAAA,WAAiC,IAAI,IAAI;AACzC,UAAA,WAAiC,IAAI,IAAI;AAE/C;AAAA,MACE,SAAS,MAAM,MAAM,OAAO,YAAY,EAAE,KAAK,IAAc;AAAA,MAC7D,CAAC,SAAS;AACR,iBAAS,QAAQ,iBAAiB,SAAS,YAAY,IAAI;AAC3D,iBAAS,QAAQ,iBAAiB,SAAS,YAAY,IAAI;AAAA,MAC7D;AAAA,MACA,EAAE,WAAW,KAAK;AAAA,IAAA;AAGpB,4BAAwB,EAAE,WAAW,UAAU,SAAU,CAAA;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"dialog-DBVAimvZ.js","sources":["../../src/page/index/dv/default/single/tree/dialog.vue"],"sourcesContent":["<template>\n <MKDataTablePage v-if=\"dataTree\" :data-table=\"dataTree\">\n <MKTreeView />\n </MKDataTablePage>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed, unref, Ref, ref, watch } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport { DataForm, DataTree } from \"@maketribe/dm\";\nimport { MKTreeView } from \"../../../../../../components\";\nimport { DataModelDefines } from \"../../../../../../core\";\nimport { useSingleViewWithDialog } from \"../../../../../../composables\";\n\nconst router = useRouter();\n\nconst dataTree: Ref<DataTree | null> = ref(null);\nconst dataForm: Ref<DataForm | null> = ref(null);\n\nwatch(\n computed(() => unref(router.currentRoute).meta.name as string),\n (name) => {\n dataTree.value = DataModelDefines.instance.getDataTree(name);\n dataForm.value = DataModelDefines.instance.getDataForm(name);\n },\n { immediate: true }\n);\n\nuseSingleViewWithDialog({ dataTable: dataTree, dataForm });\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAcA,UAAM,SAAS;AAET,UAAA,WAAiC,IAAI,IAAI;AACzC,UAAA,WAAiC,IAAI,IAAI;AAE/C;AAAA,MACE,SAAS,MAAM,MAAM,OAAO,YAAY,EAAE,KAAK,IAAc;AAAA,MAC7D,CAAC,SAAS;AACR,iBAAS,QAAQ,iBAAiB,SAAS,YAAY,IAAI;AAC3D,iBAAS,QAAQ,iBAAiB,SAAS,YAAY,IAAI;AAAA,MAC7D;AAAA,MACA,EAAE,WAAW,KAAK;AAAA,IAAA;AAGpB,4BAAwB,EAAE,WAAW,UAAU,SAAU,CAAA;;;;;;;;;;;;;;;"}
@@ -1,6 +1,6 @@
1
1
  import { defineComponent, ref, watch, computed, unref, openBlock, createBlock, withCtx, createVNode, createCommentVNode } from "vue";
2
2
  import { useRouter } from "vue-router";
3
- import { x as DataModelDefines, C as useSingleViewWithDialog, z as MKPageContainer, A as MKDataTable } from "./index-mq3nYYwD.js";
3
+ import { x as DataModelDefines, C as useSingleViewWithDialog, z as MKPageContainer, A as MKDataTable } from "./index-DknNVWIH.js";
4
4
  import "element-plus";
5
5
  import "@maketribe/request";
6
6
  import "@maketribe/utils";
@@ -48,4 +48,4 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
48
48
  export {
49
49
  _sfc_main as default
50
50
  };
51
- //# sourceMappingURL=dialog-Cb7Lps0k.js.map
51
+ //# sourceMappingURL=dialog-DwwYU6ht.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dialog-Cb7Lps0k.js","sources":["../../src/page/index/dv/default/single/list/dialog.vue"],"sourcesContent":["<template>\n <MKPageContainer v-if=\"dataTable\">\n <MKDataTable :data-table=\"dataTable\" enableQueryParams />\n </MKPageContainer>\n</template>\n\n<script setup lang=\"ts\">\nimport { unref, computed, watch, ref, Ref } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport { DataForm, DataTable } from \"@maketribe/dm\";\nimport { MKDataTable, MKPageContainer } from \"../../../../../../components\";\nimport { DataModelDefines } from \"../../../../../../core\";\nimport { useSingleViewWithDialog } from \"../../../../../../composables\";\n\nconst router = useRouter();\n\nconst dataTable: Ref<DataTable | null> = ref(null);\nconst dataForm: Ref<DataForm | null> = ref(null);\n\nwatch(\n computed(() => unref(router.currentRoute).meta.name as string),\n (name) => {\n dataTable.value = DataModelDefines.instance.getDataTable(name);\n dataForm.value = DataModelDefines.instance.getDataForm(name);\n },\n { immediate: true }\n);\n\nuseSingleViewWithDialog({ dataTable, dataForm });\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAcA,UAAM,SAAS;AAET,UAAA,YAAmC,IAAI,IAAI;AAC3C,UAAA,WAAiC,IAAI,IAAI;AAE/C;AAAA,MACE,SAAS,MAAM,MAAM,OAAO,YAAY,EAAE,KAAK,IAAc;AAAA,MAC7D,CAAC,SAAS;AACR,kBAAU,QAAQ,iBAAiB,SAAS,aAAa,IAAI;AAC7D,iBAAS,QAAQ,iBAAiB,SAAS,YAAY,IAAI;AAAA,MAC7D;AAAA,MACA,EAAE,WAAW,KAAK;AAAA,IAAA;AAGI,4BAAA,EAAE,WAAW,SAAA,CAAU;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"dialog-DwwYU6ht.js","sources":["../../src/page/index/dv/default/single/list/dialog.vue"],"sourcesContent":["<template>\n <MKPageContainer v-if=\"dataTable\">\n <MKDataTable :data-table=\"dataTable\" enableQueryParams />\n </MKPageContainer>\n</template>\n\n<script setup lang=\"ts\">\nimport { unref, computed, watch, ref, Ref } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport { DataForm, DataTable } from \"@maketribe/dm\";\nimport { MKDataTable, MKPageContainer } from \"../../../../../../components\";\nimport { DataModelDefines } from \"../../../../../../core\";\nimport { useSingleViewWithDialog } from \"../../../../../../composables\";\n\nconst router = useRouter();\n\nconst dataTable: Ref<DataTable | null> = ref(null);\nconst dataForm: Ref<DataForm | null> = ref(null);\n\nwatch(\n computed(() => unref(router.currentRoute).meta.name as string),\n (name) => {\n dataTable.value = DataModelDefines.instance.getDataTable(name);\n dataForm.value = DataModelDefines.instance.getDataForm(name);\n },\n { immediate: true }\n);\n\nuseSingleViewWithDialog({ dataTable, dataForm });\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAcA,UAAM,SAAS;AAET,UAAA,YAAmC,IAAI,IAAI;AAC3C,UAAA,WAAiC,IAAI,IAAI;AAE/C;AAAA,MACE,SAAS,MAAM,MAAM,OAAO,YAAY,EAAE,KAAK,IAAc;AAAA,MAC7D,CAAC,SAAS;AACR,kBAAU,QAAQ,iBAAiB,SAAS,aAAa,IAAI;AAC7D,iBAAS,QAAQ,iBAAiB,SAAS,YAAY,IAAI;AAAA,MAC7D;AAAA,MACA,EAAE,WAAW,KAAK;AAAA,IAAA;AAGI,4BAAA,EAAE,WAAW,SAAA,CAAU;;;;;;;;;;;;;;"}
@@ -3,7 +3,7 @@ import { useRouter } from "vue-router";
3
3
  import "@maketribe/dm";
4
4
  import "element-plus";
5
5
  import "@maketribe/utils";
6
- import { x as DataModelDefines, z as MKPageContainer, B as MKDataForm } from "./index-mq3nYYwD.js";
6
+ import { x as DataModelDefines, z as MKPageContainer, B as MKDataForm } from "./index-DknNVWIH.js";
7
7
  import "@maketribe/request";
8
8
  import "@maketribe/locale";
9
9
  import "@lexical/overflow";
@@ -62,4 +62,4 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
62
62
  export {
63
63
  _sfc_main as default
64
64
  };
65
- //# sourceMappingURL=edit-Bk7te-2r.js.map
65
+ //# sourceMappingURL=edit-o5nFwY2w.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"edit-Bk7te-2r.js","sources":["../../src/page/index/dv/default/edit.vue"],"sourcesContent":["<template>\n <MKPageContainer v-if=\"dataForm\">\n <MKDataForm :data-form=\"dataForm\" />\n </MKPageContainer>\n</template>\n\n<script setup lang=\"ts\">\nimport { unref, computed, watch, Ref, reactive } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport { DataForm } from \"@maketribe/dm\";\nimport { DataModelDefines } from \"../../../../core\";\nimport { MKDataForm, MKPageContainer } from \"../../../../components\";\n\nconst router = useRouter();\n\nconst id = computed(() => unref(router.currentRoute).params.id as string);\n\nconst dataForm: Ref<DataForm | null> = computed(() => {\n const dataForm = DataModelDefines.instance.getDataForm(\n unref(router.currentRoute).meta.name as string\n );\n\n return dataForm ? (reactive(dataForm) as DataForm) : null;\n});\n\nwatch(\n dataForm,\n (dataForm) => {\n if (!dataForm) {\n return;\n }\n\n dataForm.submittedEvent.on(() => {\n router.push({ name: `dv/${dataForm.name}/list` });\n });\n\n dataForm.cancelEvent.on(() => {\n router.push({ name: `dv/${dataForm.name}/list` });\n });\n\n if (!unref(id)) {\n unref(dataForm)?.addRecord();\n return;\n }\n\n unref(dataForm)?.editRecord(unref(id));\n },\n { immediate: true }\n);\n</script>\n"],"names":["dataForm"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAaA,UAAM,SAAS;AAET,UAAA,KAAK,SAAS,MAAM,MAAM,OAAO,YAAY,EAAE,OAAO,EAAY;AAElE,UAAA,WAAiC,SAAS,MAAM;AAC9CA,YAAAA,YAAW,iBAAiB,SAAS;AAAA,QACzC,MAAM,OAAO,YAAY,EAAE,KAAK;AAAA,MAAA;AAG3BA,aAAAA,YAAY,SAASA,SAAQ,IAAiB;AAAA,IAAA,CACtD;AAED;AAAA,MACE;AAAA,MACA,CAACA,cAAa;;AACZ,YAAI,CAACA,WAAU;AACb;AAAA,QACF;AAEAA,kBAAS,eAAe,GAAG,MAAM;AAC/B,iBAAO,KAAK,EAAE,MAAM,MAAMA,UAAS,IAAI,SAAS;AAAA,QAAA,CACjD;AAEDA,kBAAS,YAAY,GAAG,MAAM;AAC5B,iBAAO,KAAK,EAAE,MAAM,MAAMA,UAAS,IAAI,SAAS;AAAA,QAAA,CACjD;AAEG,YAAA,CAAC,MAAM,EAAE,GAAG;AACRA,sBAAAA,SAAQ,MAARA,mBAAW;AACjB;AAAA,QACF;AAEA,oBAAMA,SAAQ,MAAd,mBAAiB,WAAW,MAAM,EAAE;AAAA,MACtC;AAAA,MACA,EAAE,WAAW,KAAK;AAAA,IAAA;;;;;;;;;;;"}
1
+ {"version":3,"file":"edit-o5nFwY2w.js","sources":["../../src/page/index/dv/default/edit.vue"],"sourcesContent":["<template>\n <MKPageContainer v-if=\"dataForm\">\n <MKDataForm :data-form=\"dataForm\" />\n </MKPageContainer>\n</template>\n\n<script setup lang=\"ts\">\nimport { unref, computed, watch, Ref, reactive } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport { DataForm } from \"@maketribe/dm\";\nimport { DataModelDefines } from \"../../../../core\";\nimport { MKDataForm, MKPageContainer } from \"../../../../components\";\n\nconst router = useRouter();\n\nconst id = computed(() => unref(router.currentRoute).params.id as string);\n\nconst dataForm: Ref<DataForm | null> = computed(() => {\n const dataForm = DataModelDefines.instance.getDataForm(\n unref(router.currentRoute).meta.name as string\n );\n\n return dataForm ? (reactive(dataForm) as DataForm) : null;\n});\n\nwatch(\n dataForm,\n (dataForm) => {\n if (!dataForm) {\n return;\n }\n\n dataForm.submittedEvent.on(() => {\n router.push({ name: `dv/${dataForm.name}/list` });\n });\n\n dataForm.cancelEvent.on(() => {\n router.push({ name: `dv/${dataForm.name}/list` });\n });\n\n if (!unref(id)) {\n unref(dataForm)?.addRecord();\n return;\n }\n\n unref(dataForm)?.editRecord(unref(id));\n },\n { immediate: true }\n);\n</script>\n"],"names":["dataForm"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAaA,UAAM,SAAS;AAET,UAAA,KAAK,SAAS,MAAM,MAAM,OAAO,YAAY,EAAE,OAAO,EAAY;AAElE,UAAA,WAAiC,SAAS,MAAM;AAC9CA,YAAAA,YAAW,iBAAiB,SAAS;AAAA,QACzC,MAAM,OAAO,YAAY,EAAE,KAAK;AAAA,MAAA;AAG3BA,aAAAA,YAAY,SAASA,SAAQ,IAAiB;AAAA,IAAA,CACtD;AAED;AAAA,MACE;AAAA,MACA,CAACA,cAAa;;AACZ,YAAI,CAACA,WAAU;AACb;AAAA,QACF;AAEAA,kBAAS,eAAe,GAAG,MAAM;AAC/B,iBAAO,KAAK,EAAE,MAAM,MAAMA,UAAS,IAAI,SAAS;AAAA,QAAA,CACjD;AAEDA,kBAAS,YAAY,GAAG,MAAM;AAC5B,iBAAO,KAAK,EAAE,MAAM,MAAMA,UAAS,IAAI,SAAS;AAAA,QAAA,CACjD;AAEG,YAAA,CAAC,MAAM,EAAE,GAAG;AACRA,sBAAAA,SAAQ,MAARA,mBAAW;AACjB;AAAA,QACF;AAEA,oBAAMA,SAAQ,MAAd,mBAAiB,WAAW,MAAM,EAAE;AAAA,MACtC;AAAA,MACA,EAAE,WAAW,KAAK;AAAA,IAAA;;;;;;;;;;;"}
@@ -1,6 +1,6 @@
1
1
  import { defineComponent, inject, computed, createVNode, unref, createTextVNode } from "vue";
2
2
  import { ElDropdown, ElDropdownMenu, ElDropdownItem } from "element-plus";
3
- import { D as DATA_TABLE_CONTEXT_KEY, q as MKSvgIcon } from "./index-mq3nYYwD.js";
3
+ import { D as DATA_TABLE_CONTEXT_KEY, q as MKSvgIcon } from "./index-DknNVWIH.js";
4
4
  import "@maketribe/request";
5
5
  import "@maketribe/utils";
6
6
  import "@lexical/overflow";
@@ -71,4 +71,4 @@ export {
71
71
  MKBatchOpt,
72
72
  MKBatchOpt as default
73
73
  };
74
- //# sourceMappingURL=index-p8vYirVH.js.map
74
+ //# sourceMappingURL=index-5yHWO2PM.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-p8vYirVH.js","sources":["../../src/components/data-model/data-table/components/header-components/batch-opt/batch-opt.tsx","../../src/components/data-model/data-table/components/header-components/batch-opt/index.ts"],"sourcesContent":["import { computed, defineComponent, inject, unref } from \"vue\";\r\nimport { ElDropdown, ElDropdownItem, ElDropdownMenu } from \"element-plus\";\r\nimport { MKSvgIcon } from \"../../../../../basic\";\r\nimport { DATA_TABLE_CONTEXT_KEY } from \"../../../token\";\r\nimport { Dialoger, Messager } from \"@maketribe/dm\";\r\n\r\nexport default defineComponent({\r\n name: \"MKBatchOpt\",\r\n setup(props) {\r\n const dataTable = inject(DATA_TABLE_CONTEXT_KEY)?.dataTable!;\r\n\r\n var disallowBatchOpt = computed(\r\n () => (dataTable?.getSelection().length ?? 0) === 0\r\n );\r\n\r\n const handleExport = (...args: any[]) => {\r\n dataTable.exportData();\r\n };\r\n\r\n const handleBatchDelete = async () => {\r\n const isConfirm = await Dialoger.confirm({\r\n message: \"是否删除选中项\",\r\n type: \"warning\",\r\n title: \"批量删除\",\r\n });\r\n\r\n if (!isConfirm) {\r\n return;\r\n }\r\n\r\n const response = await dataTable.batchDelete(dataTable.getSelection());\r\n\r\n if (response.data.code !== 200) {\r\n Messager.error({ message: response.data.msg });\r\n return;\r\n }\r\n\r\n dataTable.load();\r\n };\r\n\r\n return () => {\r\n return (\r\n <ElDropdown\r\n onClick={handleExport}\r\n splitButton\r\n v-slots={{\r\n dropdown: () => {\r\n return (\r\n <ElDropdownMenu>\r\n <ElDropdownItem\r\n disabled={unref(disallowBatchOpt)}\r\n onClick={handleBatchDelete}\r\n >\r\n <MKSvgIcon name=\"icon-park-solid:delete-themes\" /> 批量删除\r\n </ElDropdownItem>\r\n </ElDropdownMenu>\r\n );\r\n },\r\n }}\r\n >\r\n <MKSvgIcon name=\"clarity:export-solid-badged\" />\r\n </ElDropdown>\r\n );\r\n };\r\n },\r\n});\r\n","import BatchOpt from \"./batch-opt\";\n\nexport const MKBatchOpt = BatchOpt;\nexport default MKBatchOpt;\n"],"names":["defineComponent","name","setup","props","dataTable","inject","DATA_TABLE_CONTEXT_KEY","disallowBatchOpt","computed","getSelection","length","handleExport","args","exportData","handleBatchDelete","isConfirm","Dialoger","confirm","message","type","title","response","batchDelete","data","code","Messager","error","msg","load","_createVNode","ElDropdown","default","MKSvgIcon","dropdown","ElDropdownMenu","ElDropdownItem","unref","_createTextVNode"],"mappings":";;;;;;;;;;;;;;;;;AAMA,MAAeA,2CAAgB;AAAA,EAC7BC,MAAM;AAAA,EACNC,MAAMC,OAAO;;AACX,UAAMC,aAAYC,YAAOC,sBAAsB,MAA7BD,mBAAgCD;AAElD,QAAIG,mBAAmBC,SACrB,QAAOJ,uCAAWK,eAAeC,WAAU,OAAO,CACpD;AAEA,UAAMC,eAAeA,IAAIC,SAAgB;AACvCR,gBAAUS,WAAU;AAAA;AAGtB,UAAMC,oBAAoB,YAAY;AACpC,YAAMC,YAAY,MAAMC,SAASC,QAAQ;AAAA,QACvCC,SAAS;AAAA,QACTC,MAAM;AAAA,QACNC,OAAO;AAAA,MACT,CAAC;AAED,UAAI,CAACL,WAAW;AACd;AAAA,MACF;AAEA,YAAMM,WAAW,MAAMjB,UAAUkB,YAAYlB,UAAUK,aAAY,CAAE;AAErE,UAAIY,SAASE,KAAKC,SAAS,KAAK;AAC9BC,iBAASC,MAAM;AAAA,UAAER,SAASG,SAASE,KAAKI;AAAAA,QAAI,CAAC;AAC7C;AAAA,MACF;AAEAvB,gBAAUwB,KAAI;AAAA;AAGhB,WAAO,MAAM;AACX,aAAAC,YAAAC,YAAA;AAAA,QAAA,WAEanB;AAAAA,QAAY,eAAA;AAAA,MAAA,GAAA;AAAA,QAAAoB,SAAAA,MAAAF,CAAAA,YAAAG,WAAA;AAAA,UAAA,QAAA;AAAA,QAAA,GAAA,IAAA,CAAA;AAAA,QAGnBC,UAAUA,MAAM;AACd,iBAAAJ,YAAAK,gBAAA,MAAA;AAAA,YAAAH,SAAAA,MAAAF,CAAAA,YAAAM,gBAAA;AAAA,cAAA,YAGgBC,MAAM7B,gBAAgB;AAAA,cAAC,WACxBO;AAAAA,YAAiB,GAAA;AAAA,cAAAiB,SAAAA,MAAAF,CAAAA,YAAAG,WAAA;AAAA,gBAAA,QAAA;AAAA,cAAA,GAAA,IAAA,GAAAK,gBAAA,OAAA,CAAA;AAAA,YAAA,CAAA,CAAA;AAAA,UAAA,CAAA;AAAA,QAMlC;AAAA,MAAC,CAAA;AAAA;EAOX;AACF,CAAC;AC/DM,MAAM,aAAa;"}
1
+ {"version":3,"file":"index-5yHWO2PM.js","sources":["../../src/components/data-model/data-table/components/header-components/batch-opt/batch-opt.tsx","../../src/components/data-model/data-table/components/header-components/batch-opt/index.ts"],"sourcesContent":["import { computed, defineComponent, inject, unref } from \"vue\";\r\nimport { ElDropdown, ElDropdownItem, ElDropdownMenu } from \"element-plus\";\r\nimport { MKSvgIcon } from \"../../../../../basic\";\r\nimport { DATA_TABLE_CONTEXT_KEY } from \"../../../token\";\r\nimport { Dialoger, Messager } from \"@maketribe/dm\";\r\n\r\nexport default defineComponent({\r\n name: \"MKBatchOpt\",\r\n setup(props) {\r\n const dataTable = inject(DATA_TABLE_CONTEXT_KEY)?.dataTable!;\r\n\r\n var disallowBatchOpt = computed(\r\n () => (dataTable?.getSelection().length ?? 0) === 0\r\n );\r\n\r\n const handleExport = (...args: any[]) => {\r\n dataTable.exportData();\r\n };\r\n\r\n const handleBatchDelete = async () => {\r\n const isConfirm = await Dialoger.confirm({\r\n message: \"是否删除选中项\",\r\n type: \"warning\",\r\n title: \"批量删除\",\r\n });\r\n\r\n if (!isConfirm) {\r\n return;\r\n }\r\n\r\n const response = await dataTable.batchDelete(dataTable.getSelection());\r\n\r\n if (response.data.code !== 200) {\r\n Messager.error({ message: response.data.msg });\r\n return;\r\n }\r\n\r\n dataTable.load();\r\n };\r\n\r\n return () => {\r\n return (\r\n <ElDropdown\r\n onClick={handleExport}\r\n splitButton\r\n v-slots={{\r\n dropdown: () => {\r\n return (\r\n <ElDropdownMenu>\r\n <ElDropdownItem\r\n disabled={unref(disallowBatchOpt)}\r\n onClick={handleBatchDelete}\r\n >\r\n <MKSvgIcon name=\"icon-park-solid:delete-themes\" /> 批量删除\r\n </ElDropdownItem>\r\n </ElDropdownMenu>\r\n );\r\n },\r\n }}\r\n >\r\n <MKSvgIcon name=\"clarity:export-solid-badged\" />\r\n </ElDropdown>\r\n );\r\n };\r\n },\r\n});\r\n","import BatchOpt from \"./batch-opt\";\n\nexport const MKBatchOpt = BatchOpt;\nexport default MKBatchOpt;\n"],"names":["defineComponent","name","setup","props","dataTable","inject","DATA_TABLE_CONTEXT_KEY","disallowBatchOpt","computed","getSelection","length","handleExport","args","exportData","handleBatchDelete","isConfirm","Dialoger","confirm","message","type","title","response","batchDelete","data","code","Messager","error","msg","load","_createVNode","ElDropdown","default","MKSvgIcon","dropdown","ElDropdownMenu","ElDropdownItem","unref","_createTextVNode"],"mappings":";;;;;;;;;;;;;;;;;AAMA,MAAeA,2CAAgB;AAAA,EAC7BC,MAAM;AAAA,EACNC,MAAMC,OAAO;;AACX,UAAMC,aAAYC,YAAOC,sBAAsB,MAA7BD,mBAAgCD;AAElD,QAAIG,mBAAmBC,SACrB,QAAOJ,uCAAWK,eAAeC,WAAU,OAAO,CACpD;AAEA,UAAMC,eAAeA,IAAIC,SAAgB;AACvCR,gBAAUS,WAAU;AAAA;AAGtB,UAAMC,oBAAoB,YAAY;AACpC,YAAMC,YAAY,MAAMC,SAASC,QAAQ;AAAA,QACvCC,SAAS;AAAA,QACTC,MAAM;AAAA,QACNC,OAAO;AAAA,MACT,CAAC;AAED,UAAI,CAACL,WAAW;AACd;AAAA,MACF;AAEA,YAAMM,WAAW,MAAMjB,UAAUkB,YAAYlB,UAAUK,aAAY,CAAE;AAErE,UAAIY,SAASE,KAAKC,SAAS,KAAK;AAC9BC,iBAASC,MAAM;AAAA,UAAER,SAASG,SAASE,KAAKI;AAAAA,QAAI,CAAC;AAC7C;AAAA,MACF;AAEAvB,gBAAUwB,KAAI;AAAA;AAGhB,WAAO,MAAM;AACX,aAAAC,YAAAC,YAAA;AAAA,QAAA,WAEanB;AAAAA,QAAY,eAAA;AAAA,MAAA,GAAA;AAAA,QAAAoB,SAAAA,MAAAF,CAAAA,YAAAG,WAAA;AAAA,UAAA,QAAA;AAAA,QAAA,GAAA,IAAA,CAAA;AAAA,QAGnBC,UAAUA,MAAM;AACd,iBAAAJ,YAAAK,gBAAA,MAAA;AAAA,YAAAH,SAAAA,MAAAF,CAAAA,YAAAM,gBAAA;AAAA,cAAA,YAGgBC,MAAM7B,gBAAgB;AAAA,cAAC,WACxBO;AAAAA,YAAiB,GAAA;AAAA,cAAAiB,SAAAA,MAAAF,CAAAA,YAAAG,WAAA;AAAA,gBAAA,QAAA;AAAA,cAAA,GAAA,IAAA,GAAAK,gBAAA,OAAA,CAAA;AAAA,YAAA,CAAA,CAAA;AAAA,UAAA,CAAA;AAAA,QAMlC;AAAA,MAAC,CAAA;AAAA;EAOX;AACF,CAAC;AC/DM,MAAM,aAAa;"}