@maketribe/ms-app 4.0.0-alpha.6 → 4.0.0-alpha.8

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 (201) hide show
  1. package/dist/cjs/{404-B7NnT2gM.cjs → 404-CwDWcTsz.cjs} +2 -2
  2. package/dist/cjs/{404-B7NnT2gM.cjs.map → 404-CwDWcTsz.cjs.map} +1 -1
  3. package/dist/cjs/{article-edit-add-page-ByMqxxgu.cjs → article-edit-add-page-VEW4RQan.cjs} +3 -3
  4. package/dist/cjs/{article-edit-add-page-ByMqxxgu.cjs.map → article-edit-add-page-VEW4RQan.cjs.map} +1 -1
  5. package/dist/cjs/{cms-settings-B5SQCWZJ.cjs → cms-settings-Dk-_N4Uf.cjs} +2 -2
  6. package/dist/cjs/{cms-settings-B5SQCWZJ.cjs.map → cms-settings-Dk-_N4Uf.cjs.map} +1 -1
  7. package/dist/cjs/{dialog-BKFMFeN8.cjs → dialog-XvgJB4Ok.cjs} +2 -2
  8. package/dist/cjs/{dialog-BKFMFeN8.cjs.map → dialog-XvgJB4Ok.cjs.map} +1 -1
  9. package/dist/cjs/{dialog-CxU-j_2o.cjs → dialog-zggytVNp.cjs} +2 -2
  10. package/dist/cjs/{dialog-CxU-j_2o.cjs.map → dialog-zggytVNp.cjs.map} +1 -1
  11. package/dist/cjs/{dialog-CzIX1Cf8.cjs → dialog-zspOK0xb.cjs} +2 -2
  12. package/dist/cjs/{dialog-CzIX1Cf8.cjs.map → dialog-zspOK0xb.cjs.map} +1 -1
  13. package/dist/cjs/{edit-B8i8ha4p.cjs → edit-CvboB56i.cjs} +2 -2
  14. package/dist/cjs/{edit-B8i8ha4p.cjs.map → edit-CvboB56i.cjs.map} +1 -1
  15. package/dist/cjs/{index-CFnMYkKP.cjs → index-18SWv3iv.cjs} +2 -2
  16. package/dist/cjs/index-18SWv3iv.cjs.map +1 -0
  17. package/dist/cjs/{index-BxG6qdNK.cjs → index-3isJpRAE.cjs} +2 -2
  18. package/dist/cjs/{index-BxG6qdNK.cjs.map → index-3isJpRAE.cjs.map} +1 -1
  19. package/dist/cjs/{index-8m_Qfcd7.cjs → index-B4rDJuiX.cjs} +2 -2
  20. package/dist/cjs/{index-8m_Qfcd7.cjs.map → index-B4rDJuiX.cjs.map} +1 -1
  21. package/dist/cjs/{index-C1XNlE_P.cjs → index-BFJJfJKx.cjs} +84 -68
  22. package/dist/cjs/{index-C1XNlE_P.cjs.map → index-BFJJfJKx.cjs.map} +1 -1
  23. package/dist/cjs/{index-j30omdZn.cjs → index-BFc7MaUC.cjs} +2 -2
  24. package/dist/cjs/{index-j30omdZn.cjs.map → index-BFc7MaUC.cjs.map} +1 -1
  25. package/dist/cjs/{index-DTFa1Ww6.cjs → index-BWUs6AKC.cjs} +2 -2
  26. package/dist/cjs/{index-DTFa1Ww6.cjs.map → index-BWUs6AKC.cjs.map} +1 -1
  27. package/dist/cjs/{index-DdpqZVD9.cjs → index-BwrHgk2-.cjs} +2 -2
  28. package/dist/cjs/{index-DdpqZVD9.cjs.map → index-BwrHgk2-.cjs.map} +1 -1
  29. package/dist/cjs/{index-DPCvcvKp.cjs → index-C8IvpcbJ.cjs} +3 -3
  30. package/dist/cjs/{index-DPCvcvKp.cjs.map → index-C8IvpcbJ.cjs.map} +1 -1
  31. package/dist/cjs/{index-CzwK5miY.cjs → index-C9HaEU_j.cjs} +2 -2
  32. package/dist/cjs/{index-CzwK5miY.cjs.map → index-C9HaEU_j.cjs.map} +1 -1
  33. package/dist/cjs/{index-ZGoUOa5V.cjs → index-CGbQD3Pn.cjs} +2 -2
  34. package/dist/cjs/{index-ZGoUOa5V.cjs.map → index-CGbQD3Pn.cjs.map} +1 -1
  35. package/dist/cjs/{index-Dnat27O8.cjs → index-CHdUHVk0.cjs} +2 -2
  36. package/dist/cjs/{index-Dnat27O8.cjs.map → index-CHdUHVk0.cjs.map} +1 -1
  37. package/dist/cjs/{index-DAwkIeXU.cjs → index-CHmSGKW5.cjs} +2 -2
  38. package/dist/cjs/{index-DAwkIeXU.cjs.map → index-CHmSGKW5.cjs.map} +1 -1
  39. package/dist/cjs/{index-CGeJ9pOk.cjs → index-CJ4ma3qH.cjs} +2 -2
  40. package/dist/cjs/{index-CGeJ9pOk.cjs.map → index-CJ4ma3qH.cjs.map} +1 -1
  41. package/dist/cjs/{index-BIMO2PR_.cjs → index-CNhWzn_s.cjs} +3 -3
  42. package/dist/cjs/{index-BIMO2PR_.cjs.map → index-CNhWzn_s.cjs.map} +1 -1
  43. package/dist/cjs/{index-C6D2ofzy.cjs → index-CRzPLRry.cjs} +3 -3
  44. package/dist/cjs/{index-C6D2ofzy.cjs.map → index-CRzPLRry.cjs.map} +1 -1
  45. package/dist/cjs/{index-weLIwAoT.cjs → index-CUmAm1dK.cjs} +3 -3
  46. package/dist/cjs/{index-weLIwAoT.cjs.map → index-CUmAm1dK.cjs.map} +1 -1
  47. package/dist/cjs/{index-Cn5Amco_.cjs → index-CXSUT_Uz.cjs} +2 -2
  48. package/dist/cjs/{index-Cn5Amco_.cjs.map → index-CXSUT_Uz.cjs.map} +1 -1
  49. package/dist/cjs/{index-B2WZSyta.cjs → index-CjpkSpph.cjs} +2 -2
  50. package/dist/cjs/{index-B2WZSyta.cjs.map → index-CjpkSpph.cjs.map} +1 -1
  51. package/dist/cjs/{index-B3e0rOJs.cjs → index-DQrE3D8M.cjs} +3 -3
  52. package/dist/cjs/{index-B3e0rOJs.cjs.map → index-DQrE3D8M.cjs.map} +1 -1
  53. package/dist/cjs/{index-phHDGoms.cjs → index-DVAgbEhd.cjs} +2 -2
  54. package/dist/cjs/index-DVAgbEhd.cjs.map +1 -0
  55. package/dist/cjs/{index-DYNaj0_Z.cjs → index-DVbuMdMG.cjs} +2 -2
  56. package/dist/cjs/{index-DYNaj0_Z.cjs.map → index-DVbuMdMG.cjs.map} +1 -1
  57. package/dist/cjs/{index-BXDEu-XA.cjs → index-Dc2RzKr4.cjs} +2 -2
  58. package/dist/cjs/{index-BXDEu-XA.cjs.map → index-Dc2RzKr4.cjs.map} +1 -1
  59. package/dist/cjs/{index-BxU_LT2e.cjs → index-DmHDhw8w.cjs} +2 -2
  60. package/dist/cjs/{index-BxU_LT2e.cjs.map → index-DmHDhw8w.cjs.map} +1 -1
  61. package/dist/cjs/{index-BBPZypJc.cjs → index-DoEGJywE.cjs} +2 -2
  62. package/dist/cjs/{index-BBPZypJc.cjs.map → index-DoEGJywE.cjs.map} +1 -1
  63. package/dist/cjs/{index-CR-upPjf.cjs → index-Ds8rwYBQ.cjs} +2 -2
  64. package/dist/cjs/{index-CR-upPjf.cjs.map → index-Ds8rwYBQ.cjs.map} +1 -1
  65. package/dist/cjs/{index-vNHmVMPt.cjs → index-E-FmA_Pc.cjs} +3 -3
  66. package/dist/cjs/{index-vNHmVMPt.cjs.map → index-E-FmA_Pc.cjs.map} +1 -1
  67. package/dist/cjs/{index-DqB49ApO.cjs → index-KkkknazQ.cjs} +2 -2
  68. package/dist/cjs/{index-DqB49ApO.cjs.map → index-KkkknazQ.cjs.map} +1 -1
  69. package/dist/cjs/{index-BxtDhN0U.cjs → index-UR9glybp.cjs} +3 -3
  70. package/dist/cjs/{index-BxtDhN0U.cjs.map → index-UR9glybp.cjs.map} +1 -1
  71. package/dist/cjs/{index-B6rRcZ6D.cjs → index-WzoO2npu.cjs} +2 -2
  72. package/dist/cjs/{index-B6rRcZ6D.cjs.map → index-WzoO2npu.cjs.map} +1 -1
  73. package/dist/cjs/{index-Bai9QQCc.cjs → index-arRrXXXo.cjs} +2 -2
  74. package/dist/cjs/index-arRrXXXo.cjs.map +1 -0
  75. package/dist/cjs/{index-TWi3oKMo.cjs → index-mi9N_6rx.cjs} +2 -2
  76. package/dist/cjs/{index-TWi3oKMo.cjs.map → index-mi9N_6rx.cjs.map} +1 -1
  77. package/dist/cjs/{index-z8zYH85G.cjs → index-y7l2Dyp9.cjs} +3 -3
  78. package/dist/cjs/{index-z8zYH85G.cjs.map → index-y7l2Dyp9.cjs.map} +1 -1
  79. package/dist/cjs/index.js +1 -1
  80. package/dist/cjs/{index.vue_vue_type_script_setup_true_lang-D9yLenYM.cjs → index.vue_vue_type_script_setup_true_lang-DTtuNBKy.cjs} +2 -2
  81. package/dist/cjs/{index.vue_vue_type_script_setup_true_lang-D9yLenYM.cjs.map → index.vue_vue_type_script_setup_true_lang-DTtuNBKy.cjs.map} +1 -1
  82. package/dist/cjs/{json-editor-4CFMkph7.cjs → json-editor-Bdv88bt4.cjs} +2 -2
  83. package/dist/cjs/{json-editor-4CFMkph7.cjs.map → json-editor-Bdv88bt4.cjs.map} +1 -1
  84. package/dist/cjs/{markdown-editor-De1onsGh.cjs → markdown-editor-CHBV086T.cjs} +2 -2
  85. package/dist/cjs/{markdown-editor-De1onsGh.cjs.map → markdown-editor-CHBV086T.cjs.map} +1 -1
  86. package/dist/cjs/{normal-BGahUaoQ.cjs → normal-BkctFtHK.cjs} +2 -2
  87. package/dist/cjs/{normal-BGahUaoQ.cjs.map → normal-BkctFtHK.cjs.map} +1 -1
  88. package/dist/cjs/{normal-CdX-Z1kF.cjs → normal-XgvBqkBN.cjs} +2 -2
  89. package/dist/cjs/{normal-CdX-Z1kF.cjs.map → normal-XgvBqkBN.cjs.map} +1 -1
  90. package/dist/cjs/{permission-manage-DfLTwZS8.cjs → permission-manage-Bcj4-Q8c.cjs} +2 -2
  91. package/dist/cjs/{permission-manage-DfLTwZS8.cjs.map → permission-manage-Bcj4-Q8c.cjs.map} +1 -1
  92. package/dist/cjs/{resource-select-input-BAe3ahDC.cjs → resource-select-input-n7ngMAey.cjs} +2 -2
  93. package/dist/cjs/{resource-select-input-BAe3ahDC.cjs.map → resource-select-input-n7ngMAey.cjs.map} +1 -1
  94. package/dist/cjs/{table-CZgeT7gE.cjs → table-xrqUjJcK.cjs} +2 -2
  95. package/dist/cjs/{table-CZgeT7gE.cjs.map → table-xrqUjJcK.cjs.map} +1 -1
  96. package/dist/esm/{404-DcBAAs1N.js → 404-DmPCe4G0.js} +2 -2
  97. package/dist/esm/{404-DcBAAs1N.js.map → 404-DmPCe4G0.js.map} +1 -1
  98. package/dist/esm/{article-edit-add-page-Dc0vmRaK.js → article-edit-add-page-rvjgk2dh.js} +3 -3
  99. package/dist/esm/{article-edit-add-page-Dc0vmRaK.js.map → article-edit-add-page-rvjgk2dh.js.map} +1 -1
  100. package/dist/esm/{cms-settings-Dz_GifCM.js → cms-settings-DfrY8Q8M.js} +2 -2
  101. package/dist/esm/{cms-settings-Dz_GifCM.js.map → cms-settings-DfrY8Q8M.js.map} +1 -1
  102. package/dist/esm/{dialog-DTQPV-3U.js → dialog-CS7m8jtq.js} +2 -2
  103. package/dist/esm/{dialog-DTQPV-3U.js.map → dialog-CS7m8jtq.js.map} +1 -1
  104. package/dist/esm/{dialog-CPKjg0DX.js → dialog-D-zdXPsa.js} +2 -2
  105. package/dist/esm/{dialog-CPKjg0DX.js.map → dialog-D-zdXPsa.js.map} +1 -1
  106. package/dist/esm/{dialog-FqmRibM1.js → dialog-r6-lVrkj.js} +2 -2
  107. package/dist/esm/{dialog-FqmRibM1.js.map → dialog-r6-lVrkj.js.map} +1 -1
  108. package/dist/esm/{edit-B6TCx0BN.js → edit-T3M44Hjk.js} +2 -2
  109. package/dist/esm/{edit-B6TCx0BN.js.map → edit-T3M44Hjk.js.map} +1 -1
  110. package/dist/esm/{index-BCB6CWfF.js → index-B5W1aijd.js} +2 -2
  111. package/dist/esm/{index-BCB6CWfF.js.map → index-B5W1aijd.js.map} +1 -1
  112. package/dist/esm/{index-Ck__G3dT.js → index-B7WlPVx_.js} +2 -2
  113. package/dist/esm/{index-Ck__G3dT.js.map → index-B7WlPVx_.js.map} +1 -1
  114. package/dist/esm/{index-CmfVxSph.js → index-BJ_92TlE.js} +3 -3
  115. package/dist/esm/{index-CmfVxSph.js.map → index-BJ_92TlE.js.map} +1 -1
  116. package/dist/esm/{index-DlVXWdE0.js → index-BKuaysIK.js} +3 -3
  117. package/dist/esm/{index-DlVXWdE0.js.map → index-BKuaysIK.js.map} +1 -1
  118. package/dist/esm/{index-eTSwO_Y8.js → index-BLecwyfT.js} +2 -2
  119. package/dist/esm/{index-eTSwO_Y8.js.map → index-BLecwyfT.js.map} +1 -1
  120. package/dist/esm/{index-D5qC56R7.js → index-BMgJCABL.js} +3 -3
  121. package/dist/esm/{index-D5qC56R7.js.map → index-BMgJCABL.js.map} +1 -1
  122. package/dist/esm/{index-BVGJ-lj0.js → index-BSRhCJAe.js} +2 -2
  123. package/dist/esm/{index-BVGJ-lj0.js.map → index-BSRhCJAe.js.map} +1 -1
  124. package/dist/esm/{index-DVOHWdtM.js → index-BTn05Xci.js} +2 -2
  125. package/dist/esm/{index-DVOHWdtM.js.map → index-BTn05Xci.js.map} +1 -1
  126. package/dist/esm/{index-DofoKQB_.js → index-BW5MxfD4.js} +2 -2
  127. package/dist/esm/{index-DofoKQB_.js.map → index-BW5MxfD4.js.map} +1 -1
  128. package/dist/esm/{index-K8aRp1Ff.js → index-BXe-scdJ.js} +2 -2
  129. package/dist/esm/{index-K8aRp1Ff.js.map → index-BXe-scdJ.js.map} +1 -1
  130. package/dist/esm/{index-Dvv0k5Vo.js → index-BbQlohGv.js} +2 -2
  131. package/dist/esm/index-BbQlohGv.js.map +1 -0
  132. package/dist/esm/{index-CQcGPTKm.js → index-BnkxcaIr.js} +2 -2
  133. package/dist/esm/{index-CQcGPTKm.js.map → index-BnkxcaIr.js.map} +1 -1
  134. package/dist/esm/{index-CjTw5oMj.js → index-BxTQwzHy.js} +84 -68
  135. package/dist/esm/{index-CjTw5oMj.js.map → index-BxTQwzHy.js.map} +1 -1
  136. package/dist/esm/{index-BMKLnXb8.js → index-C99Fc-yI.js} +2 -2
  137. package/dist/esm/{index-BMKLnXb8.js.map → index-C99Fc-yI.js.map} +1 -1
  138. package/dist/esm/{index-3gLHscRe.js → index-CR5a5u91.js} +3 -3
  139. package/dist/esm/{index-3gLHscRe.js.map → index-CR5a5u91.js.map} +1 -1
  140. package/dist/esm/{index-4YyShMO2.js → index-CUtALWhU.js} +2 -2
  141. package/dist/esm/{index-4YyShMO2.js.map → index-CUtALWhU.js.map} +1 -1
  142. package/dist/esm/{index-KI9lCmIu.js → index-CabHfr3u.js} +2 -2
  143. package/dist/esm/index-CabHfr3u.js.map +1 -0
  144. package/dist/esm/{index-DomdHZab.js → index-Cisw-IgE.js} +3 -3
  145. package/dist/esm/{index-DomdHZab.js.map → index-Cisw-IgE.js.map} +1 -1
  146. package/dist/esm/{index-YqbbF-kM.js → index-CrK1aQTQ.js} +3 -3
  147. package/dist/esm/{index-YqbbF-kM.js.map → index-CrK1aQTQ.js.map} +1 -1
  148. package/dist/esm/{index-CbUKHq9d.js → index-D0kVvBIs.js} +2 -2
  149. package/dist/esm/{index-CbUKHq9d.js.map → index-D0kVvBIs.js.map} +1 -1
  150. package/dist/esm/{index-CxiERKgx.js → index-D5RCguXQ.js} +2 -2
  151. package/dist/esm/{index-CxiERKgx.js.map → index-D5RCguXQ.js.map} +1 -1
  152. package/dist/esm/{index-Dyal-jEY.js → index-DBYYl6zK.js} +2 -2
  153. package/dist/esm/{index-Dyal-jEY.js.map → index-DBYYl6zK.js.map} +1 -1
  154. package/dist/esm/{index-GBJFK33a.js → index-DOWh3O76.js} +3 -3
  155. package/dist/esm/{index-GBJFK33a.js.map → index-DOWh3O76.js.map} +1 -1
  156. package/dist/esm/{index-CctJKPWt.js → index-DQiHmr1q.js} +2 -2
  157. package/dist/esm/{index-CctJKPWt.js.map → index-DQiHmr1q.js.map} +1 -1
  158. package/dist/esm/{index-BJ4X4ZCh.js → index-DwFig5Y9.js} +2 -2
  159. package/dist/esm/index-DwFig5Y9.js.map +1 -0
  160. package/dist/esm/{index-D6FVWHtq.js → index-EJRvs3lh.js} +2 -2
  161. package/dist/esm/{index-D6FVWHtq.js.map → index-EJRvs3lh.js.map} +1 -1
  162. package/dist/esm/{index-B9gvbtvi.js → index-S2iNGf5V.js} +2 -2
  163. package/dist/esm/{index-B9gvbtvi.js.map → index-S2iNGf5V.js.map} +1 -1
  164. package/dist/esm/{index-DVtCtPhj.js → index-_xq6z4Ng.js} +2 -2
  165. package/dist/esm/{index-DVtCtPhj.js.map → index-_xq6z4Ng.js.map} +1 -1
  166. package/dist/esm/{index-DNwOf-dv.js → index-cFGSR4AM.js} +2 -2
  167. package/dist/esm/{index-DNwOf-dv.js.map → index-cFGSR4AM.js.map} +1 -1
  168. package/dist/esm/{index-CAYL9D_L.js → index-g5Pix6Zy.js} +2 -2
  169. package/dist/esm/{index-CAYL9D_L.js.map → index-g5Pix6Zy.js.map} +1 -1
  170. package/dist/esm/{index-BEpzO-nt.js → index-nu-aGjhA.js} +2 -2
  171. package/dist/esm/{index-BEpzO-nt.js.map → index-nu-aGjhA.js.map} +1 -1
  172. package/dist/esm/{index-D7ivtDc3.js → index-x9-wldTE.js} +3 -3
  173. package/dist/esm/{index-D7ivtDc3.js.map → index-x9-wldTE.js.map} +1 -1
  174. package/dist/esm/index.js +1 -1
  175. package/dist/esm/{index.vue_vue_type_script_setup_true_lang-Da7_JQcB.js → index.vue_vue_type_script_setup_true_lang-CzZKZm3b.js} +2 -2
  176. package/dist/esm/{index.vue_vue_type_script_setup_true_lang-Da7_JQcB.js.map → index.vue_vue_type_script_setup_true_lang-CzZKZm3b.js.map} +1 -1
  177. package/dist/esm/{json-editor-BNjpvvZM.js → json-editor-D72uBI4K.js} +2 -2
  178. package/dist/esm/{json-editor-BNjpvvZM.js.map → json-editor-D72uBI4K.js.map} +1 -1
  179. package/dist/esm/{markdown-editor-Br91Y0dk.js → markdown-editor-BlQGa5_P.js} +2 -2
  180. package/dist/esm/{markdown-editor-Br91Y0dk.js.map → markdown-editor-BlQGa5_P.js.map} +1 -1
  181. package/dist/esm/{normal-5OVhMvLw.js → normal-CnxaRS3A.js} +2 -2
  182. package/dist/esm/{normal-5OVhMvLw.js.map → normal-CnxaRS3A.js.map} +1 -1
  183. package/dist/esm/{normal-DzIY0NTX.js → normal-whf3DMRk.js} +2 -2
  184. package/dist/esm/{normal-DzIY0NTX.js.map → normal-whf3DMRk.js.map} +1 -1
  185. package/dist/esm/{permission-manage-B74eWZu2.js → permission-manage-B2wzpnMF.js} +2 -2
  186. package/dist/esm/{permission-manage-B74eWZu2.js.map → permission-manage-B2wzpnMF.js.map} +1 -1
  187. package/dist/esm/{resource-select-input-FBr-Yxb5.js → resource-select-input-CFjdN3EV.js} +2 -2
  188. package/dist/esm/{resource-select-input-FBr-Yxb5.js.map → resource-select-input-CFjdN3EV.js.map} +1 -1
  189. package/dist/esm/{table-CDFn1EG8.js → table-DOpQATck.js} +2 -2
  190. package/dist/esm/{table-CDFn1EG8.js.map → table-DOpQATck.js.map} +1 -1
  191. package/dist/types/components/basic/image-cropper/image-cropper-content.d.ts +1 -1
  192. package/dist/types/components/basic/image-cropper/index.d.ts +1 -1
  193. package/dist/types/components/headless/drawer/drawer.vue.d.ts +12 -0
  194. package/dist/types/components/headless/drawer/index.d.ts +57 -0
  195. package/package.json +4 -4
  196. package/dist/cjs/index-Bai9QQCc.cjs.map +0 -1
  197. package/dist/cjs/index-CFnMYkKP.cjs.map +0 -1
  198. package/dist/cjs/index-phHDGoms.cjs.map +0 -1
  199. package/dist/esm/index-BJ4X4ZCh.js.map +0 -1
  200. package/dist/esm/index-Dvv0k5Vo.js.map +0 -1
  201. package/dist/esm/index-KI9lCmIu.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-C1XNlE_P.cjs");
5
+ const index = require("./index-BFJJfJKx.cjs");
6
6
  require("element-plus");
7
7
  require("@maketribe/request");
8
8
  require("@maketribe/utils");
@@ -60,4 +60,4 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
60
60
  }
61
61
  });
62
62
  exports.default = _sfc_main;
63
- //# sourceMappingURL=normal-CdX-Z1kF.cjs.map
63
+ //# sourceMappingURL=normal-XgvBqkBN.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"normal-CdX-Z1kF.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-XgvBqkBN.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-C1XNlE_P.cjs");
7
+ const index = require("./index-BFJJfJKx.cjs");
8
8
  const request = require("@maketribe/request");
9
9
  require("lodash-es");
10
10
  require("@lexical/overflow");
@@ -264,4 +264,4 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
264
264
  }
265
265
  });
266
266
  exports.default = _sfc_main;
267
- //# sourceMappingURL=permission-manage-DfLTwZS8.cjs.map
267
+ //# sourceMappingURL=permission-manage-Bcj4-Q8c.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"permission-manage-DfLTwZS8.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\";\r\nimport { RolePermissionConfigTable } from \"../../../../dataviews\";\r\nimport { buildProps } from \"@maketribe/utils\";\r\n\r\nexport const rolePermissionConfigProps = buildProps({\r\n rolePermissionConfigTable: {\r\n type: RolePermissionConfigTable,\r\n required: true,\r\n },\r\n} as const);\r\n\r\nexport type RolePermissionConfigProps = ExtractPropTypes<\r\n typeof rolePermissionConfigProps\r\n>;\r\n\r\nexport const rolePermissionConfigEmits = {\r\n roleChange: (id: any) => true,\r\n};\r\n\r\nexport type RolePermissionConfigEmits = typeof rolePermissionConfigEmits;\r\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-Bcj4-Q8c.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\";\r\nimport { RolePermissionConfigTable } from \"../../../../dataviews\";\r\nimport { buildProps } from \"@maketribe/utils\";\r\n\r\nexport const rolePermissionConfigProps = buildProps({\r\n rolePermissionConfigTable: {\r\n type: RolePermissionConfigTable,\r\n required: true,\r\n },\r\n} as const);\r\n\r\nexport type RolePermissionConfigProps = ExtractPropTypes<\r\n typeof rolePermissionConfigProps\r\n>;\r\n\r\nexport const rolePermissionConfigEmits = {\r\n roleChange: (id: any) => true,\r\n};\r\n\r\nexport type RolePermissionConfigEmits = typeof rolePermissionConfigEmits;\r\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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"}
@@ -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-C1XNlE_P.cjs");
5
+ const index = require("./index-BFJJfJKx.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-BAe3ahDC.cjs.map
51
+ //# sourceMappingURL=resource-select-input-n7ngMAey.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"resource-select-input-BAe3ahDC.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-n7ngMAey.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;;"}
@@ -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-C1XNlE_P.cjs");
8
+ const index = require("./index-BFJJfJKx.cjs");
9
9
  require("@maketribe/request");
10
10
  require("@maketribe/locale");
11
11
  require("@lexical/overflow");
@@ -69,4 +69,4 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
69
69
  }
70
70
  });
71
71
  exports.default = _sfc_main;
72
- //# sourceMappingURL=table-CZgeT7gE.cjs.map
72
+ //# sourceMappingURL=table-xrqUjJcK.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"table-CZgeT7gE.cjs","sources":["../../src/page/index/dv/default/table.vue"],"sourcesContent":["<template>\r\n <MKPageContainer v-if=\"dataTable\">\r\n <MKDataTable :data-table=\"dataTable\" selection enableQueryParams />\r\n </MKPageContainer>\r\n</template>\r\n<script setup lang=\"ts\">\r\nimport { unref, computed, watch, ref, Ref } from \"vue\";\r\nimport { useRouter } from \"vue-router\";\r\nimport { DataTable } from \"@maketribe/dm\";\r\nimport { DataModelDefines } from \"../../../../core\";\r\nimport { MKDataTable, MKPageContainer } from \"../../../../components\";\r\n\r\nconst router = useRouter();\r\n\r\nconst dataTable: Ref<DataTable | null> = ref(null);\r\n\r\nwatch(\r\n computed(() => unref(router.currentRoute).meta.name as string),\r\n ([_dataTable, name]) => {\r\n dataTable.value = DataModelDefines.instance.getDataTable(name as string);\r\n },\r\n { immediate: true }\r\n);\r\n\r\nwatch(\r\n dataTable,\r\n (dataTable, _, onCleanup) => {\r\n if (dataTable) {\r\n dataTable.addRecordEvent.on(() => {\r\n router.push({ name: `dv/${dataTable.name}/edit` });\r\n });\r\n\r\n dataTable.editRecordEvent.on(({ item }) => {\r\n router.push({\r\n name: `dv/${dataTable.name}/edit`,\r\n params: { id: item[dataTable?.primaryKey as string] },\r\n });\r\n });\r\n }\r\n\r\n onCleanup(() => {\r\n dataTable?.clearSelection();\r\n dataTable?.dispose();\r\n });\r\n },\r\n { immediate: true }\r\n);\r\n</script>\r\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-xrqUjJcK.cjs","sources":["../../src/page/index/dv/default/table.vue"],"sourcesContent":["<template>\r\n <MKPageContainer v-if=\"dataTable\">\r\n <MKDataTable :data-table=\"dataTable\" selection enableQueryParams />\r\n </MKPageContainer>\r\n</template>\r\n<script setup lang=\"ts\">\r\nimport { unref, computed, watch, ref, Ref } from \"vue\";\r\nimport { useRouter } from \"vue-router\";\r\nimport { DataTable } from \"@maketribe/dm\";\r\nimport { DataModelDefines } from \"../../../../core\";\r\nimport { MKDataTable, MKPageContainer } from \"../../../../components\";\r\n\r\nconst router = useRouter();\r\n\r\nconst dataTable: Ref<DataTable | null> = ref(null);\r\n\r\nwatch(\r\n computed(() => unref(router.currentRoute).meta.name as string),\r\n ([_dataTable, name]) => {\r\n dataTable.value = DataModelDefines.instance.getDataTable(name as string);\r\n },\r\n { immediate: true }\r\n);\r\n\r\nwatch(\r\n dataTable,\r\n (dataTable, _, onCleanup) => {\r\n if (dataTable) {\r\n dataTable.addRecordEvent.on(() => {\r\n router.push({ name: `dv/${dataTable.name}/edit` });\r\n });\r\n\r\n dataTable.editRecordEvent.on(({ item }) => {\r\n router.push({\r\n name: `dv/${dataTable.name}/edit`,\r\n params: { id: item[dataTable?.primaryKey as string] },\r\n });\r\n });\r\n }\r\n\r\n onCleanup(() => {\r\n dataTable?.clearSelection();\r\n dataTable?.dispose();\r\n });\r\n },\r\n { immediate: true }\r\n);\r\n</script>\r\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-CjTw5oMj.js";
2
+ import { _ as _export_sfc } from "./index-BxTQwzHy.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-DcBAAs1N.js.map
11
+ //# sourceMappingURL=404-DmPCe4G0.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"404-DcBAAs1N.js","sources":["../../src/page/index/404.vue"],"sourcesContent":["<template>\r\n <div>404</div>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\n</script>\r\n"],"names":[],"mappings":";;;AACE,SAAA,YAAA,MAAA,QAAA;;;;"}
1
+ {"version":3,"file":"404-DmPCe4G0.js","sources":["../../src/page/index/404.vue"],"sourcesContent":["<template>\r\n <div>404</div>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\n</script>\r\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 { a6 as CmsArticleAtlasForm, B as MKDataForm, a7 as MKForm, a8 as CmsArticlesForm, q as MKSvgIcon, a9 as MKDocEditor, aa as MKDataFormItem, c as MKUploadImage, ab as ImageUploadContext } from "./index-CjTw5oMj.js";
3
+ import { a6 as CmsArticleAtlasForm, B as MKDataForm, a7 as MKForm, a8 as CmsArticlesForm, q as MKSvgIcon, a9 as MKDocEditor, aa as MKDataFormItem, c as MKUploadImage, ab as ImageUploadContext } from "./index-BxTQwzHy.js";
4
4
  import "element-plus";
5
5
  import "@maketribe/request";
6
6
  import "@maketribe/utils";
@@ -21,7 +21,7 @@ import "@headlessui/vue";
21
21
  import "overlayscrollbars-vue";
22
22
  import "lodash-es";
23
23
  import "@codemirror/lang-html";
24
- import { u as useCmsSettings } from "./cms-settings-Dz_GifCM.js";
24
+ import { u as useCmsSettings } from "./cms-settings-DfrY8Q8M.js";
25
25
  const _hoisted_1$1 = /* @__PURE__ */ createElementVNode("div", {
26
26
  slot: "placeholder",
27
27
  class: "image-slot"
@@ -881,4 +881,4 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
881
881
  export {
882
882
  _sfc_main as default
883
883
  };
884
- //# sourceMappingURL=article-edit-add-page-Dc0vmRaK.js.map
884
+ //# sourceMappingURL=article-edit-add-page-rvjgk2dh.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"article-edit-add-page-Dc0vmRaK.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
+ {"version":3,"file":"article-edit-add-page-rvjgk2dh.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-CjTw5oMj.js";
2
+ import { p as MsConfigTable } from "./index-BxTQwzHy.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-Dz_GifCM.js.map
50
+ //# sourceMappingURL=cms-settings-DfrY8Q8M.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cms-settings-Dz_GifCM.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-DfrY8Q8M.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,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-CjTw5oMj.js";
3
+ import { x as DataModelDefines, C as useSingleViewWithDialog, z as MKPageContainer, A as MKDataTable } from "./index-BxTQwzHy.js";
4
4
  import "element-plus";
5
5
  import "@maketribe/request";
6
6
  import "@maketribe/utils";
@@ -50,4 +50,4 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
50
50
  export {
51
51
  _sfc_main as default
52
52
  };
53
- //# sourceMappingURL=dialog-DTQPV-3U.js.map
53
+ //# sourceMappingURL=dialog-CS7m8jtq.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dialog-DTQPV-3U.js","sources":["../../src/page/index/dv/default/single/list/dialog.vue"],"sourcesContent":["<template>\r\n <MKPageContainer v-if=\"dataTable\">\r\n <MKDataTable :data-table=\"dataTable\" enableQueryParams />\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 { MKDataTable, MKPageContainer } from \"../../../../../../components\";\r\nimport { DataModelDefines } from \"../../../../../../core\";\r\nimport { useSingleViewWithDialog } 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\nuseSingleViewWithDialog({ dataTable, dataForm });\r\n</script>\r\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-CS7m8jtq.js","sources":["../../src/page/index/dv/default/single/list/dialog.vue"],"sourcesContent":["<template>\r\n <MKPageContainer v-if=\"dataTable\">\r\n <MKDataTable :data-table=\"dataTable\" enableQueryParams />\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 { MKDataTable, MKPageContainer } from \"../../../../../../components\";\r\nimport { DataModelDefines } from \"../../../../../../core\";\r\nimport { useSingleViewWithDialog } 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\nuseSingleViewWithDialog({ dataTable, dataForm });\r\n</script>\r\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,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-CjTw5oMj.js";
3
+ import { x as DataModelDefines, C as useSingleViewWithDialog, E as MKTreeView } from "./index-BxTQwzHy.js";
4
4
  import "element-plus";
5
5
  import "@maketribe/request";
6
6
  import "@maketribe/utils";
@@ -51,4 +51,4 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
51
51
  export {
52
52
  _sfc_main as default
53
53
  };
54
- //# sourceMappingURL=dialog-CPKjg0DX.js.map
54
+ //# sourceMappingURL=dialog-D-zdXPsa.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dialog-CPKjg0DX.js","sources":["../../src/page/index/dv/default/single/tree/dialog.vue"],"sourcesContent":["<template>\r\n <MKDataTablePage v-if=\"dataTree\" :data-table=\"dataTree\">\r\n <MKTreeView />\r\n </MKDataTablePage>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { computed, unref, Ref, ref, watch } from \"vue\";\r\nimport { useRouter } from \"vue-router\";\r\nimport { DataForm, DataTree } from \"@maketribe/dm\";\r\nimport { MKTreeView } from \"../../../../../../components\";\r\nimport { DataModelDefines } from \"../../../../../../core\";\r\nimport { useSingleViewWithDialog } from \"../../../../../../composables\";\r\n\r\nconst router = useRouter();\r\n\r\nconst dataTree: Ref<DataTree | 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 dataTree.value = DataModelDefines.instance.getDataTree(name);\r\n dataForm.value = DataModelDefines.instance.getDataForm(name);\r\n },\r\n { immediate: true }\r\n);\r\n\r\nuseSingleViewWithDialog({ dataTable: dataTree, dataForm });\r\n</script>\r\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-D-zdXPsa.js","sources":["../../src/page/index/dv/default/single/tree/dialog.vue"],"sourcesContent":["<template>\r\n <MKDataTablePage v-if=\"dataTree\" :data-table=\"dataTree\">\r\n <MKTreeView />\r\n </MKDataTablePage>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { computed, unref, Ref, ref, watch } from \"vue\";\r\nimport { useRouter } from \"vue-router\";\r\nimport { DataForm, DataTree } from \"@maketribe/dm\";\r\nimport { MKTreeView } from \"../../../../../../components\";\r\nimport { DataModelDefines } from \"../../../../../../core\";\r\nimport { useSingleViewWithDialog } from \"../../../../../../composables\";\r\n\r\nconst router = useRouter();\r\n\r\nconst dataTree: Ref<DataTree | 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 dataTree.value = DataModelDefines.instance.getDataTree(name);\r\n dataForm.value = DataModelDefines.instance.getDataForm(name);\r\n },\r\n { immediate: true }\r\n);\r\n\r\nuseSingleViewWithDialog({ dataTable: dataTree, dataForm });\r\n</script>\r\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;;;;;;;;;;;;;;;"}
@@ -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-CjTw5oMj.js";
6
+ import { x as DataModelDefines, C as useSingleViewWithDialog, z as MKPageContainer, A as MKDataTable, F as MKTableView, G as MKTableTree } from "./index-BxTQwzHy.js";
7
7
  import "@maketribe/request";
8
8
  import "@maketribe/locale";
9
9
  import "@lexical/overflow";
@@ -60,4 +60,4 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
60
60
  export {
61
61
  _sfc_main as default
62
62
  };
63
- //# sourceMappingURL=dialog-FqmRibM1.js.map
63
+ //# sourceMappingURL=dialog-r6-lVrkj.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dialog-FqmRibM1.js","sources":["../../src/page/index/dv/default/single/table-tree/dialog.vue"],"sourcesContent":["<template>\r\n <MKPageContainer v-if=\"dataTree\">\r\n <MKDataTable :data-table=\"dataTree\" enableQueryParams>\r\n <MKTableView>\r\n <MKTableTree />\r\n </MKTableView>\r\n </MKDataTable>\r\n </MKPageContainer>\r\n</template>\r\n<script setup lang=\"ts\">\r\nimport { unref, computed, watch, ref, Ref } from \"vue\";\r\nimport { useRouter } from \"vue-router\";\r\nimport { DataForm, DataTree } from \"@maketribe/dm\";\r\nimport { DataModelDefines } from \"../../../../../../core\";\r\nimport {\r\n MKPageContainer,\r\n MKDataTable,\r\n MKTableView,\r\n MKTableTree,\r\n} from \"../../../../../../components\";\r\nimport { useSingleViewWithDialog } from \"../../../../../../composables\";\r\n\r\nconst router = useRouter();\r\n\r\nconst dataTree: Ref<DataTree | 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 dataTree.value = DataModelDefines.instance.getDataTree(name);\r\n\r\n dataForm.value = DataModelDefines.instance.getDataForm(name);\r\n },\r\n { immediate: true }\r\n);\r\n\r\nuseSingleViewWithDialog({ dataTable: dataTree, dataForm });\r\n</script>\r\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-r6-lVrkj.js","sources":["../../src/page/index/dv/default/single/table-tree/dialog.vue"],"sourcesContent":["<template>\r\n <MKPageContainer v-if=\"dataTree\">\r\n <MKDataTable :data-table=\"dataTree\" enableQueryParams>\r\n <MKTableView>\r\n <MKTableTree />\r\n </MKTableView>\r\n </MKDataTable>\r\n </MKPageContainer>\r\n</template>\r\n<script setup lang=\"ts\">\r\nimport { unref, computed, watch, ref, Ref } from \"vue\";\r\nimport { useRouter } from \"vue-router\";\r\nimport { DataForm, DataTree } from \"@maketribe/dm\";\r\nimport { DataModelDefines } from \"../../../../../../core\";\r\nimport {\r\n MKPageContainer,\r\n MKDataTable,\r\n MKTableView,\r\n MKTableTree,\r\n} from \"../../../../../../components\";\r\nimport { useSingleViewWithDialog } from \"../../../../../../composables\";\r\n\r\nconst router = useRouter();\r\n\r\nconst dataTree: Ref<DataTree | 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 dataTree.value = DataModelDefines.instance.getDataTree(name);\r\n\r\n dataForm.value = DataModelDefines.instance.getDataForm(name);\r\n },\r\n { immediate: true }\r\n);\r\n\r\nuseSingleViewWithDialog({ dataTable: dataTree, dataForm });\r\n</script>\r\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;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -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-CjTw5oMj.js";
6
+ import { x as DataModelDefines, z as MKPageContainer, B as MKDataForm } from "./index-BxTQwzHy.js";
7
7
  import "@maketribe/request";
8
8
  import "@maketribe/locale";
9
9
  import "@lexical/overflow";
@@ -64,4 +64,4 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
64
64
  export {
65
65
  _sfc_main as default
66
66
  };
67
- //# sourceMappingURL=edit-B6TCx0BN.js.map
67
+ //# sourceMappingURL=edit-T3M44Hjk.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"edit-B6TCx0BN.js","sources":["../../src/page/index/dv/default/edit.vue"],"sourcesContent":["<template>\r\n <MKPageContainer v-if=\"dataForm\">\r\n <MKDataForm :data-form=\"dataForm\" />\r\n </MKPageContainer>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { unref, computed, watch, Ref, reactive } from \"vue\";\r\nimport { useRouter } from \"vue-router\";\r\nimport { DataForm } from \"@maketribe/dm\";\r\nimport { DataModelDefines } from \"../../../../core\";\r\nimport { MKDataForm, MKPageContainer } from \"../../../../components\";\r\n\r\nconst router = useRouter();\r\n\r\nconst id = computed(() => unref(router.currentRoute).params.id as string);\r\n\r\nconst dataForm: Ref<DataForm | null> = computed(() => {\r\n const dataForm = DataModelDefines.instance.getDataForm(\r\n unref(router.currentRoute).meta.name as string\r\n );\r\n\r\n return dataForm ? (reactive(dataForm) as DataForm) : null;\r\n});\r\n\r\nwatch(\r\n dataForm,\r\n (dataForm) => {\r\n if (!dataForm) {\r\n return;\r\n }\r\n\r\n dataForm.submittedEvent.on(() => {\r\n router.push({ name: `dv/${dataForm.name}/list` });\r\n });\r\n\r\n dataForm.cancelEvent.on(() => {\r\n router.push({ name: `dv/${dataForm.name}/list` });\r\n });\r\n\r\n if (!unref(id)) {\r\n unref(dataForm)?.addRecord();\r\n return;\r\n }\r\n\r\n unref(dataForm)?.editRecord(unref(id));\r\n },\r\n { immediate: true }\r\n);\r\n</script>\r\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-T3M44Hjk.js","sources":["../../src/page/index/dv/default/edit.vue"],"sourcesContent":["<template>\r\n <MKPageContainer v-if=\"dataForm\">\r\n <MKDataForm :data-form=\"dataForm\" />\r\n </MKPageContainer>\r\n</template>\r\n\r\n<script setup lang=\"ts\">\r\nimport { unref, computed, watch, Ref, reactive } from \"vue\";\r\nimport { useRouter } from \"vue-router\";\r\nimport { DataForm } from \"@maketribe/dm\";\r\nimport { DataModelDefines } from \"../../../../core\";\r\nimport { MKDataForm, MKPageContainer } from \"../../../../components\";\r\n\r\nconst router = useRouter();\r\n\r\nconst id = computed(() => unref(router.currentRoute).params.id as string);\r\n\r\nconst dataForm: Ref<DataForm | null> = computed(() => {\r\n const dataForm = DataModelDefines.instance.getDataForm(\r\n unref(router.currentRoute).meta.name as string\r\n );\r\n\r\n return dataForm ? (reactive(dataForm) as DataForm) : null;\r\n});\r\n\r\nwatch(\r\n dataForm,\r\n (dataForm) => {\r\n if (!dataForm) {\r\n return;\r\n }\r\n\r\n dataForm.submittedEvent.on(() => {\r\n router.push({ name: `dv/${dataForm.name}/list` });\r\n });\r\n\r\n dataForm.cancelEvent.on(() => {\r\n router.push({ name: `dv/${dataForm.name}/list` });\r\n });\r\n\r\n if (!unref(id)) {\r\n unref(dataForm)?.addRecord();\r\n return;\r\n }\r\n\r\n unref(dataForm)?.editRecord(unref(id));\r\n },\r\n { immediate: true }\r\n);\r\n</script>\r\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;;;;;;;;;;;"}
@@ -4,7 +4,7 @@ import { Dialoger } from "@maketribe/dm";
4
4
  import { DvOpt } from "@maketribe/request";
5
5
  import { ElMessage } from "element-plus";
6
6
  import "@maketribe/utils";
7
- import { K as MsRouteTable, x as DataModelDefines, C as useSingleViewWithDialog, z as MKPageContainer, A as MKDataTable, F as MKTableView, G as MKTableTree, q as MKSvgIcon, L as MenuType } from "./index-CjTw5oMj.js";
7
+ import { K as MsRouteTable, x as DataModelDefines, C as useSingleViewWithDialog, z as MKPageContainer, A as MKDataTable, F as MKTableView, G as MKTableTree, q as MKSvgIcon, L as MenuType } from "./index-BxTQwzHy.js";
8
8
  import "@maketribe/locale";
9
9
  import "@lexical/overflow";
10
10
  import "@lexical/text";
@@ -118,4 +118,4 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
118
118
  export {
119
119
  _sfc_main as default
120
120
  };
121
- //# sourceMappingURL=index-BCB6CWfF.js.map
121
+ //# sourceMappingURL=index-B5W1aijd.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-BCB6CWfF.js","sources":["../../src/modules/ms/pages/ms-menu/index.vue"],"sourcesContent":["<template>\r\n <MKPageContainer v-if=\"dataTree\">\r\n <MKDataTable :data-table=\"dataTree\" enableQueryParams>\r\n <MKTableView>\r\n <MKTableTree defaultExpandAll>\r\n <template #col-data.title-content=\"{ row }\">\r\n <div flex=\"inline items-center\">\r\n <MKSvgIcon :name=\"row.data.iconName\" />\r\n <span class=\"ms-menu__title\">{{ row.data.title }}</span>\r\n <ElButton\r\n v-if=\"row.data.type === MenuType.Menu\"\r\n link\r\n type=\"primary\"\r\n class=\"ms-menu__url\"\r\n @click=\"handleUrlClick(row.data)\"\r\n >\r\n {{ row.data.targetUrl || \"空\" }}\r\n </ElButton>\r\n </div>\r\n </template>\r\n </MKTableTree>\r\n </MKTableView>\r\n </MKDataTable>\r\n </MKPageContainer>\r\n</template>\r\n<script setup lang=\"ts\">\r\nimport {\r\n unref,\r\n computed,\r\n watch,\r\n ref,\r\n Ref,\r\n reactive,\r\n onBeforeUnmount,\r\n} from \"vue\";\r\nimport { useRouter } from \"vue-router\";\r\nimport { DataForm, DataTree, Dialoger } from \"@maketribe/dm\";\r\nimport { DvOpt } from \"@maketribe/request\";\r\nimport { ElMessage } from \"element-plus\";\r\nimport { DataModelDefines } from \"../../../../core\";\r\nimport { MKSvgIcon } from \"../../../../components\";\r\nimport {\r\n MKPageContainer,\r\n MKDataTable,\r\n MKTableView,\r\n MKTableTree,\r\n} from \"../../../../components\";\r\nimport { useSingleViewWithDialog } from \"../../../../composables\";\r\nimport { MenuType } from \"../../../../constants\";\r\nimport { MsRouteTable, MsMenuItemNode } from \"../../dataviews\";\r\n\r\nconst router = useRouter();\r\n\r\nconst dataTree: Ref<DataTree | null> = ref(null);\r\nconst dataForm: Ref<DataForm | null> = ref(null);\r\n\r\nconst routeTable = reactive(new MsRouteTable()) as MsRouteTable;\r\n\r\nwatch(\r\n computed(() => unref(router.currentRoute).meta.name as string),\r\n (name) => {\r\n dataTree.value = DataModelDefines.instance.getDataTree(name);\r\n\r\n dataForm.value = DataModelDefines.instance.getDataForm(name);\r\n },\r\n { immediate: true }\r\n);\r\n\r\nconst handleUrlClick = async (item: MsMenuItemNode) => {\r\n routeTable.useCondition((defaultGroup) => {\r\n defaultGroup.clear();\r\n defaultGroup.addCondition(\"menuId\", \"=\", item.id);\r\n });\r\n\r\n const result = await Dialoger.dataTableSelectDialog(routeTable);\r\n\r\n if (!result.isConfirm) {\r\n return;\r\n }\r\n\r\n try {\r\n unref(dataTree)?.getLoadingManager().startLoading();\r\n\r\n const response = await DvOpt.createInstance({ name: \"ms-menu\" }).save({\r\n id: item.id,\r\n routeId: result.selections[0],\r\n });\r\n\r\n if (response.code !== 200) {\r\n ElMessage.error(response.msg);\r\n return;\r\n }\r\n\r\n unref(dataTree)?.load();\r\n\r\n ElMessage.success(\"更新成功\");\r\n } catch {\r\n ElMessage.error(\"网络异常\");\r\n } finally {\r\n unref(dataTree)?.getLoadingManager().completeLoading();\r\n }\r\n};\r\n\r\nuseSingleViewWithDialog({ dataTable: dataTree, dataForm });\r\n\r\nonBeforeUnmount(() => {\r\n routeTable.dispose();\r\n});\r\n</script>\r\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAmDA,UAAM,SAAS;AAET,UAAA,WAAiC,IAAI,IAAI;AACzC,UAAA,WAAiC,IAAI,IAAI;AAE/C,UAAM,aAAa,SAAS,IAAI,aAAc,CAAA;AAE9C;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;AAGd,UAAA,iBAAiB,OAAO,SAAyB;;AAC1C,iBAAA,aAAa,CAAC,iBAAiB;AACxC,qBAAa,MAAM;AACnB,qBAAa,aAAa,UAAU,KAAK,KAAK,EAAE;AAAA,MAAA,CACjD;AAED,YAAM,SAAS,MAAM,SAAS,sBAAsB,UAAU;AAE1D,UAAA,CAAC,OAAO,WAAW;AACrB;AAAA,MACF;AAEI,UAAA;AACF,oBAAM,QAAQ,MAAd,mBAAiB,oBAAoB;AAE/B,cAAA,WAAW,MAAM,MAAM,eAAe,EAAE,MAAM,UAAA,CAAW,EAAE,KAAK;AAAA,UACpE,IAAI,KAAK;AAAA,UACT,SAAS,OAAO,WAAW,CAAC;AAAA,QAAA,CAC7B;AAEG,YAAA,SAAS,SAAS,KAAK;AACf,oBAAA,MAAM,SAAS,GAAG;AAC5B;AAAA,QACF;AAEM,oBAAA,QAAQ,MAAR,mBAAW;AAEjB,kBAAU,QAAQ,MAAM;AAAA,MAAA,QAClB;AACN,kBAAU,MAAM,MAAM;AAAA,MAAA,UACtB;AACA,oBAAM,QAAQ,MAAd,mBAAiB,oBAAoB;AAAA,MACvC;AAAA,IAAA;AAGF,4BAAwB,EAAE,WAAW,UAAU,SAAU,CAAA;AAEzD,oBAAgB,MAAM;AACpB,iBAAW,QAAQ;AAAA,IAAA,CACpB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index-B5W1aijd.js","sources":["../../src/modules/ms/pages/ms-menu/index.vue"],"sourcesContent":["<template>\r\n <MKPageContainer v-if=\"dataTree\">\r\n <MKDataTable :data-table=\"dataTree\" enableQueryParams>\r\n <MKTableView>\r\n <MKTableTree defaultExpandAll>\r\n <template #col-data.title-content=\"{ row }\">\r\n <div flex=\"inline items-center\">\r\n <MKSvgIcon :name=\"row.data.iconName\" />\r\n <span class=\"ms-menu__title\">{{ row.data.title }}</span>\r\n <ElButton\r\n v-if=\"row.data.type === MenuType.Menu\"\r\n link\r\n type=\"primary\"\r\n class=\"ms-menu__url\"\r\n @click=\"handleUrlClick(row.data)\"\r\n >\r\n {{ row.data.targetUrl || \"空\" }}\r\n </ElButton>\r\n </div>\r\n </template>\r\n </MKTableTree>\r\n </MKTableView>\r\n </MKDataTable>\r\n </MKPageContainer>\r\n</template>\r\n<script setup lang=\"ts\">\r\nimport {\r\n unref,\r\n computed,\r\n watch,\r\n ref,\r\n Ref,\r\n reactive,\r\n onBeforeUnmount,\r\n} from \"vue\";\r\nimport { useRouter } from \"vue-router\";\r\nimport { DataForm, DataTree, Dialoger } from \"@maketribe/dm\";\r\nimport { DvOpt } from \"@maketribe/request\";\r\nimport { ElMessage } from \"element-plus\";\r\nimport { DataModelDefines } from \"../../../../core\";\r\nimport { MKSvgIcon } from \"../../../../components\";\r\nimport {\r\n MKPageContainer,\r\n MKDataTable,\r\n MKTableView,\r\n MKTableTree,\r\n} from \"../../../../components\";\r\nimport { useSingleViewWithDialog } from \"../../../../composables\";\r\nimport { MenuType } from \"../../../../constants\";\r\nimport { MsRouteTable, MsMenuItemNode } from \"../../dataviews\";\r\n\r\nconst router = useRouter();\r\n\r\nconst dataTree: Ref<DataTree | null> = ref(null);\r\nconst dataForm: Ref<DataForm | null> = ref(null);\r\n\r\nconst routeTable = reactive(new MsRouteTable()) as MsRouteTable;\r\n\r\nwatch(\r\n computed(() => unref(router.currentRoute).meta.name as string),\r\n (name) => {\r\n dataTree.value = DataModelDefines.instance.getDataTree(name);\r\n\r\n dataForm.value = DataModelDefines.instance.getDataForm(name);\r\n },\r\n { immediate: true }\r\n);\r\n\r\nconst handleUrlClick = async (item: MsMenuItemNode) => {\r\n routeTable.useCondition((defaultGroup) => {\r\n defaultGroup.clear();\r\n defaultGroup.addCondition(\"menuId\", \"=\", item.id);\r\n });\r\n\r\n const result = await Dialoger.dataTableSelectDialog(routeTable);\r\n\r\n if (!result.isConfirm) {\r\n return;\r\n }\r\n\r\n try {\r\n unref(dataTree)?.getLoadingManager().startLoading();\r\n\r\n const response = await DvOpt.createInstance({ name: \"ms-menu\" }).save({\r\n id: item.id,\r\n routeId: result.selections[0],\r\n });\r\n\r\n if (response.code !== 200) {\r\n ElMessage.error(response.msg);\r\n return;\r\n }\r\n\r\n unref(dataTree)?.load();\r\n\r\n ElMessage.success(\"更新成功\");\r\n } catch {\r\n ElMessage.error(\"网络异常\");\r\n } finally {\r\n unref(dataTree)?.getLoadingManager().completeLoading();\r\n }\r\n};\r\n\r\nuseSingleViewWithDialog({ dataTable: dataTree, dataForm });\r\n\r\nonBeforeUnmount(() => {\r\n routeTable.dispose();\r\n});\r\n</script>\r\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAmDA,UAAM,SAAS;AAET,UAAA,WAAiC,IAAI,IAAI;AACzC,UAAA,WAAiC,IAAI,IAAI;AAE/C,UAAM,aAAa,SAAS,IAAI,aAAc,CAAA;AAE9C;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;AAGd,UAAA,iBAAiB,OAAO,SAAyB;;AAC1C,iBAAA,aAAa,CAAC,iBAAiB;AACxC,qBAAa,MAAM;AACnB,qBAAa,aAAa,UAAU,KAAK,KAAK,EAAE;AAAA,MAAA,CACjD;AAED,YAAM,SAAS,MAAM,SAAS,sBAAsB,UAAU;AAE1D,UAAA,CAAC,OAAO,WAAW;AACrB;AAAA,MACF;AAEI,UAAA;AACF,oBAAM,QAAQ,MAAd,mBAAiB,oBAAoB;AAE/B,cAAA,WAAW,MAAM,MAAM,eAAe,EAAE,MAAM,UAAA,CAAW,EAAE,KAAK;AAAA,UACpE,IAAI,KAAK;AAAA,UACT,SAAS,OAAO,WAAW,CAAC;AAAA,QAAA,CAC7B;AAEG,YAAA,SAAS,SAAS,KAAK;AACf,oBAAA,MAAM,SAAS,GAAG;AAC5B;AAAA,QACF;AAEM,oBAAA,QAAQ,MAAR,mBAAW;AAEjB,kBAAU,QAAQ,MAAM;AAAA,MAAA,QAClB;AACN,kBAAU,MAAM,MAAM;AAAA,MAAA,UACtB;AACA,oBAAM,QAAQ,MAAd,mBAAiB,oBAAoB;AAAA,MACvC;AAAA,IAAA;AAGF,4BAAwB,EAAE,WAAW,UAAU,SAAU,CAAA;AAEzD,oBAAgB,MAAM;AACpB,iBAAW,QAAQ;AAAA,IAAA,CACpB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}