@maketribe/ms-app 5.0.5 → 5.0.7

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 (177) hide show
  1. package/dist/cjs/{404-BqMwJz1f.cjs → 404-C8nu30Zm.cjs} +2 -2
  2. package/dist/cjs/{404-BqMwJz1f.cjs.map → 404-C8nu30Zm.cjs.map} +1 -1
  3. package/dist/cjs/{Editor-tVWo36HH.cjs → Editor-Cxuu5U5Y.cjs} +2 -2
  4. package/dist/cjs/{Editor-tVWo36HH.cjs.map → Editor-Cxuu5U5Y.cjs.map} +1 -1
  5. package/dist/cjs/{Editor-v0az4FeA.cjs → Editor-DnOveke2.cjs} +2 -2
  6. package/dist/cjs/{Editor-v0az4FeA.cjs.map → Editor-DnOveke2.cjs.map} +1 -1
  7. package/dist/cjs/{PermissionManage-DhYTqblg.cjs → PermissionManage-YXoEb78H.cjs} +2 -2
  8. package/dist/cjs/{PermissionManage-DhYTqblg.cjs.map → PermissionManage-YXoEb78H.cjs.map} +1 -1
  9. package/dist/cjs/{ResourceSelectInput-Q5VXEXMl.cjs → ResourceSelectInput-DLB_Tjwn.cjs} +2 -2
  10. package/dist/cjs/{ResourceSelectInput-Q5VXEXMl.cjs.map → ResourceSelectInput-DLB_Tjwn.cjs.map} +1 -1
  11. package/dist/cjs/{dialog-Y7qd6d53.cjs → dialog-B5ulKD-q.cjs} +2 -2
  12. package/dist/cjs/{dialog-Y7qd6d53.cjs.map → dialog-B5ulKD-q.cjs.map} +1 -1
  13. package/dist/cjs/{dialog-Cnvtic1-.cjs → dialog-DYzAnJMG.cjs} +2 -2
  14. package/dist/cjs/{dialog-Cnvtic1-.cjs.map → dialog-DYzAnJMG.cjs.map} +1 -1
  15. package/dist/cjs/{dialog-D7fcIY_2.cjs → dialog-D_IDp1nx.cjs} +2 -2
  16. package/dist/cjs/{dialog-D7fcIY_2.cjs.map → dialog-D_IDp1nx.cjs.map} +1 -1
  17. package/dist/cjs/{edit-BZyyekOn.cjs → edit-BCgfrZaE.cjs} +2 -2
  18. package/dist/cjs/{edit-BZyyekOn.cjs.map → edit-BCgfrZaE.cjs.map} +1 -1
  19. package/dist/cjs/{index-Cpz2Ok_W.cjs → index-9ZNJfTqu.cjs} +54 -74
  20. package/dist/cjs/index-9ZNJfTqu.cjs.map +1 -0
  21. package/dist/cjs/{index-DpQtP6H4.cjs → index-B1lU89SO.cjs} +2 -2
  22. package/dist/cjs/{index-DpQtP6H4.cjs.map → index-B1lU89SO.cjs.map} +1 -1
  23. package/dist/cjs/{index-C9qa_h4w.cjs → index-BBeFZqDS.cjs} +2 -2
  24. package/dist/cjs/{index-C9qa_h4w.cjs.map → index-BBeFZqDS.cjs.map} +1 -1
  25. package/dist/cjs/{index-CohbbXo8.cjs → index-BI2Hv2_e.cjs} +2 -2
  26. package/dist/cjs/{index-CohbbXo8.cjs.map → index-BI2Hv2_e.cjs.map} +1 -1
  27. package/dist/cjs/{index-CLnBr-MU.cjs → index-BjOYTQNl.cjs} +2 -2
  28. package/dist/cjs/{index-CLnBr-MU.cjs.map → index-BjOYTQNl.cjs.map} +1 -1
  29. package/dist/cjs/{index-laaZZpsX.cjs → index-BlKtOwxw.cjs} +2 -2
  30. package/dist/cjs/index-BlKtOwxw.cjs.map +1 -0
  31. package/dist/cjs/{index-Bhx3ZLUg.cjs → index-C05eL1CG.cjs} +2 -2
  32. package/dist/cjs/{index-Bhx3ZLUg.cjs.map → index-C05eL1CG.cjs.map} +1 -1
  33. package/dist/cjs/{index-LPx3PXcZ.cjs → index-C4JvLhxR.cjs} +29 -7
  34. package/dist/cjs/index-C4JvLhxR.cjs.map +1 -0
  35. package/dist/cjs/{index-XO1GwVXY.cjs → index-C9DRJ_R6.cjs} +3 -3
  36. package/dist/cjs/{index-XO1GwVXY.cjs.map → index-C9DRJ_R6.cjs.map} +1 -1
  37. package/dist/cjs/{index-C7WZ2Ve6.cjs → index-CDOhulZ9.cjs} +2 -2
  38. package/dist/cjs/{index-C7WZ2Ve6.cjs.map → index-CDOhulZ9.cjs.map} +1 -1
  39. package/dist/cjs/{index-BITy6rTx.cjs → index-CNs96e2U.cjs} +3 -3
  40. package/dist/cjs/{index-BITy6rTx.cjs.map → index-CNs96e2U.cjs.map} +1 -1
  41. package/dist/cjs/{index-BELJDkxX.cjs → index-CRLCw3DH.cjs} +3 -3
  42. package/dist/cjs/{index-BELJDkxX.cjs.map → index-CRLCw3DH.cjs.map} +1 -1
  43. package/dist/cjs/{index-BAvdmXEj.cjs → index-Ce24QyMB.cjs} +2 -2
  44. package/dist/cjs/{index-BAvdmXEj.cjs.map → index-Ce24QyMB.cjs.map} +1 -1
  45. package/dist/cjs/{index-DsTSQfzN.cjs → index-Ce4ravP6.cjs} +2 -2
  46. package/dist/cjs/{index-DsTSQfzN.cjs.map → index-Ce4ravP6.cjs.map} +1 -1
  47. package/dist/cjs/{index-DzLcPlft.cjs → index-Cqj2f1PA.cjs} +2 -2
  48. package/dist/cjs/index-Cqj2f1PA.cjs.map +1 -0
  49. package/dist/cjs/{index-niRuVNjE.cjs → index-CveI1MAA.cjs} +3 -3
  50. package/dist/cjs/{index-niRuVNjE.cjs.map → index-CveI1MAA.cjs.map} +1 -1
  51. package/dist/cjs/{index-LyO2vAAm.cjs → index-D2WkLc3C.cjs} +3 -3
  52. package/dist/cjs/index-D2WkLc3C.cjs.map +1 -0
  53. package/dist/cjs/{index-b3XQd2Un.cjs → index-D2_uvOqH.cjs} +2 -2
  54. package/dist/cjs/{index-b3XQd2Un.cjs.map → index-D2_uvOqH.cjs.map} +1 -1
  55. package/dist/cjs/{index-yguigflR.cjs → index-DDFxwLX-.cjs} +2 -2
  56. package/dist/cjs/{index-yguigflR.cjs.map → index-DDFxwLX-.cjs.map} +1 -1
  57. package/dist/cjs/{index-Cw-dq3B6.cjs → index-DU3QcGw2.cjs} +2 -2
  58. package/dist/cjs/{index-Cw-dq3B6.cjs.map → index-DU3QcGw2.cjs.map} +1 -1
  59. package/dist/cjs/{index-_zwFUTEK.cjs → index-DhN5vMsM.cjs} +2 -2
  60. package/dist/cjs/{index-_zwFUTEK.cjs.map → index-DhN5vMsM.cjs.map} +1 -1
  61. package/dist/cjs/{index-DqPSZrAt.cjs → index-DlNcbSWy.cjs} +2 -2
  62. package/dist/cjs/{index-DqPSZrAt.cjs.map → index-DlNcbSWy.cjs.map} +1 -1
  63. package/dist/cjs/{index-DXURHja0.cjs → index-DxIE4twx.cjs} +2 -2
  64. package/dist/cjs/{index-DXURHja0.cjs.map → index-DxIE4twx.cjs.map} +1 -1
  65. package/dist/cjs/{index-DDK4iLDF.cjs → index-O3oSEIDs.cjs} +2 -2
  66. package/dist/cjs/{index-DDK4iLDF.cjs.map → index-O3oSEIDs.cjs.map} +1 -1
  67. package/dist/cjs/{index-CZBvW9b5.cjs → index-P7hkyEpK.cjs} +4 -4
  68. package/dist/cjs/{index-CZBvW9b5.cjs.map → index-P7hkyEpK.cjs.map} +1 -1
  69. package/dist/cjs/{index-CtdGv1AJ.cjs → index-bUBTeHB0.cjs} +2 -2
  70. package/dist/cjs/{index-CtdGv1AJ.cjs.map → index-bUBTeHB0.cjs.map} +1 -1
  71. package/dist/cjs/{index-_V_AGXJo.cjs → index-iP6rFOYM.cjs} +2 -2
  72. package/dist/cjs/{index-_V_AGXJo.cjs.map → index-iP6rFOYM.cjs.map} +1 -1
  73. package/dist/cjs/{index-CHq_KMCb.cjs → index-pZAGw9y8.cjs} +3 -3
  74. package/dist/cjs/{index-CHq_KMCb.cjs.map → index-pZAGw9y8.cjs.map} +1 -1
  75. package/dist/cjs/index.js +1 -1
  76. package/dist/cjs/ms-app.css +4 -0
  77. package/dist/cjs/{normal-CrCjPoN8.cjs → normal-AaO9srgS.cjs} +2 -2
  78. package/dist/cjs/{normal-CrCjPoN8.cjs.map → normal-AaO9srgS.cjs.map} +1 -1
  79. package/dist/cjs/{normal-CttI2FbI.cjs → normal-DzpN-tmy.cjs} +2 -2
  80. package/dist/cjs/{normal-CttI2FbI.cjs.map → normal-DzpN-tmy.cjs.map} +1 -1
  81. package/dist/cjs/{table-lPWA3-O5.cjs → table-AMpm7hkk.cjs} +2 -2
  82. package/dist/cjs/{table-lPWA3-O5.cjs.map → table-AMpm7hkk.cjs.map} +1 -1
  83. package/dist/esm/{404-BjcJlT6H.js → 404-DrYKofUt.js} +2 -2
  84. package/dist/esm/{404-BjcJlT6H.js.map → 404-DrYKofUt.js.map} +1 -1
  85. package/dist/esm/{Editor-M7607AyM.js → Editor-CszbtwYJ.js} +2 -2
  86. package/dist/esm/{Editor-M7607AyM.js.map → Editor-CszbtwYJ.js.map} +1 -1
  87. package/dist/esm/{Editor-B0aQKlrH.js → Editor-DnuqgkXg.js} +2 -2
  88. package/dist/esm/{Editor-B0aQKlrH.js.map → Editor-DnuqgkXg.js.map} +1 -1
  89. package/dist/esm/{PermissionManage-BVwqmhlg.js → PermissionManage-FUljX6_R.js} +2 -2
  90. package/dist/esm/{PermissionManage-BVwqmhlg.js.map → PermissionManage-FUljX6_R.js.map} +1 -1
  91. package/dist/esm/{ResourceSelectInput-DPRCYClq.js → ResourceSelectInput-hzKYS1V8.js} +2 -2
  92. package/dist/esm/{ResourceSelectInput-DPRCYClq.js.map → ResourceSelectInput-hzKYS1V8.js.map} +1 -1
  93. package/dist/esm/{dialog-BhSXo9nJ.js → dialog--nL37O98.js} +2 -2
  94. package/dist/esm/{dialog-BhSXo9nJ.js.map → dialog--nL37O98.js.map} +1 -1
  95. package/dist/esm/{dialog-ngwX7TP3.js → dialog-CFITXwu-.js} +2 -2
  96. package/dist/esm/{dialog-ngwX7TP3.js.map → dialog-CFITXwu-.js.map} +1 -1
  97. package/dist/esm/{dialog-B1kVTDIK.js → dialog-UVUBlVgO.js} +2 -2
  98. package/dist/esm/{dialog-B1kVTDIK.js.map → dialog-UVUBlVgO.js.map} +1 -1
  99. package/dist/esm/{edit-Ca9p6DOe.js → edit-BB7QAJwd.js} +2 -2
  100. package/dist/esm/{edit-Ca9p6DOe.js.map → edit-BB7QAJwd.js.map} +1 -1
  101. package/dist/esm/{index-D1oJ4jn1.js → index-83tpPaur.js} +2 -2
  102. package/dist/esm/{index-D1oJ4jn1.js.map → index-83tpPaur.js.map} +1 -1
  103. package/dist/esm/{index-vz0aiVcc.js → index-BGPbplSD.js} +2 -2
  104. package/dist/esm/{index-vz0aiVcc.js.map → index-BGPbplSD.js.map} +1 -1
  105. package/dist/esm/{index-Cu4bEQ-_.js → index-BUaK5DTA.js} +3 -3
  106. package/dist/esm/{index-Cu4bEQ-_.js.map → index-BUaK5DTA.js.map} +1 -1
  107. package/dist/esm/{index-DUFe9Xaz.js → index-B_8SWX-W.js} +2 -2
  108. package/dist/esm/index-B_8SWX-W.js.map +1 -0
  109. package/dist/esm/{index-DaeJgHqN.js → index-BfdsTogi.js} +2 -2
  110. package/dist/esm/{index-DaeJgHqN.js.map → index-BfdsTogi.js.map} +1 -1
  111. package/dist/esm/{index-DIPeIvS8.js → index-BnQGLVrJ.js} +2 -2
  112. package/dist/esm/{index-DIPeIvS8.js.map → index-BnQGLVrJ.js.map} +1 -1
  113. package/dist/esm/{index-BLWAMDNo.js → index-BnlFb2u8.js} +3 -3
  114. package/dist/esm/{index-BLWAMDNo.js.map → index-BnlFb2u8.js.map} +1 -1
  115. package/dist/esm/{index-Slcgq4Vq.js → index-BsTLJmV1.js} +3 -3
  116. package/dist/esm/index-BsTLJmV1.js.map +1 -0
  117. package/dist/esm/{index-DBRr8nkM.js → index-C-xITLKJ.js} +4 -4
  118. package/dist/esm/{index-DBRr8nkM.js.map → index-C-xITLKJ.js.map} +1 -1
  119. package/dist/esm/{index-q2kz2Al8.js → index-C_0_LVmx.js} +3 -3
  120. package/dist/esm/{index-q2kz2Al8.js.map → index-C_0_LVmx.js.map} +1 -1
  121. package/dist/esm/{index-BoiAjkKC.js → index-CbqELR7-.js} +2 -2
  122. package/dist/esm/{index-BoiAjkKC.js.map → index-CbqELR7-.js.map} +1 -1
  123. package/dist/esm/{index-Dd3QdtjS.js → index-CjQQ3iDb.js} +3 -3
  124. package/dist/esm/{index-Dd3QdtjS.js.map → index-CjQQ3iDb.js.map} +1 -1
  125. package/dist/esm/{index-C_xawr7_.js → index-CkUHjpVZ.js} +2 -2
  126. package/dist/esm/{index-C_xawr7_.js.map → index-CkUHjpVZ.js.map} +1 -1
  127. package/dist/esm/{index-CJDC1EPh.js → index-ClyK2QkM.js} +2 -2
  128. package/dist/esm/{index-CJDC1EPh.js.map → index-ClyK2QkM.js.map} +1 -1
  129. package/dist/esm/{index--cHRJOfk.js → index-Coa43LvX.js} +2 -2
  130. package/dist/esm/{index--cHRJOfk.js.map → index-Coa43LvX.js.map} +1 -1
  131. package/dist/esm/{index-DruB44FM.js → index-CwOK_Y0l.js} +2 -2
  132. package/dist/esm/{index-DruB44FM.js.map → index-CwOK_Y0l.js.map} +1 -1
  133. package/dist/esm/{index-B6eMiVss.js → index-D3r8yfsY.js} +2 -2
  134. package/dist/esm/{index-B6eMiVss.js.map → index-D3r8yfsY.js.map} +1 -1
  135. package/dist/esm/{index-B1uxvLO_.js → index-D9fjxSL4.js} +2 -2
  136. package/dist/esm/{index-B1uxvLO_.js.map → index-D9fjxSL4.js.map} +1 -1
  137. package/dist/esm/{index-BAzpn8Sj.js → index-DVu4B0Jb.js} +2 -2
  138. package/dist/esm/{index-BAzpn8Sj.js.map → index-DVu4B0Jb.js.map} +1 -1
  139. package/dist/esm/{index-BoXTMwMe.js → index-D_CKuKoo.js} +2 -2
  140. package/dist/esm/{index-BoXTMwMe.js.map → index-D_CKuKoo.js.map} +1 -1
  141. package/dist/esm/{index-CJErFr3g.js → index-DddknvTX.js} +55 -75
  142. package/dist/esm/index-DddknvTX.js.map +1 -0
  143. package/dist/esm/{index-BwZKYOQS.js → index-DpwAE_7u.js} +30 -8
  144. package/dist/esm/index-DpwAE_7u.js.map +1 -0
  145. package/dist/esm/{index-DeGOWXm3.js → index-DyS0xU_L.js} +2 -2
  146. package/dist/esm/{index-DeGOWXm3.js.map → index-DyS0xU_L.js.map} +1 -1
  147. package/dist/esm/{index-CkokxV6q.js → index-Jdb3h-Cn.js} +2 -2
  148. package/dist/esm/{index-CkokxV6q.js.map → index-Jdb3h-Cn.js.map} +1 -1
  149. package/dist/esm/{index-DY7C3mNg.js → index-Nxpa4qBO.js} +2 -2
  150. package/dist/esm/{index-DY7C3mNg.js.map → index-Nxpa4qBO.js.map} +1 -1
  151. package/dist/esm/{index-BYI6j3rX.js → index-X16arBXD.js} +2 -2
  152. package/dist/esm/index-X16arBXD.js.map +1 -0
  153. package/dist/esm/{index-DmcDcLeN.js → index-p-xkS0IP.js} +2 -2
  154. package/dist/esm/{index-DmcDcLeN.js.map → index-p-xkS0IP.js.map} +1 -1
  155. package/dist/esm/{index-gZZdeHyB.js → index-s_aQeFrS.js} +3 -3
  156. package/dist/esm/{index-gZZdeHyB.js.map → index-s_aQeFrS.js.map} +1 -1
  157. package/dist/esm/index.js +1 -1
  158. package/dist/esm/ms-app.css +4 -0
  159. package/dist/esm/{normal-BiygxoLT.js → normal-BPSUoo-T.js} +2 -2
  160. package/dist/esm/{normal-BiygxoLT.js.map → normal-BPSUoo-T.js.map} +1 -1
  161. package/dist/esm/{normal-BMacxFgG.js → normal-DFz2_HB1.js} +2 -2
  162. package/dist/esm/{normal-BMacxFgG.js.map → normal-DFz2_HB1.js.map} +1 -1
  163. package/dist/esm/{table-BEkVyGga.js → table-B7Fqs0K3.js} +2 -2
  164. package/dist/esm/{table-BEkVyGga.js.map → table-B7Fqs0K3.js.map} +1 -1
  165. package/dist/types/components/data-model/data-table/components/header-components/batch-opt/batch-opt.d.ts +9 -1
  166. package/dist/types/components/data-model/data-table/components/header-components/batch-opt/index.d.ts +9 -1
  167. package/package.json +13 -13
  168. package/dist/cjs/index-Cpz2Ok_W.cjs.map +0 -1
  169. package/dist/cjs/index-DzLcPlft.cjs.map +0 -1
  170. package/dist/cjs/index-LPx3PXcZ.cjs.map +0 -1
  171. package/dist/cjs/index-LyO2vAAm.cjs.map +0 -1
  172. package/dist/cjs/index-laaZZpsX.cjs.map +0 -1
  173. package/dist/esm/index-BYI6j3rX.js.map +0 -1
  174. package/dist/esm/index-BwZKYOQS.js.map +0 -1
  175. package/dist/esm/index-CJErFr3g.js.map +0 -1
  176. package/dist/esm/index-DUFe9Xaz.js.map +0 -1
  177. package/dist/esm/index-Slcgq4Vq.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index-BAzpn8Sj.js","sources":["../../src/pages/role/components/RoleAside.vue","../../src/pages/role/index.vue"],"sourcesContent":["<template>\n <div class=\"ms-role-aside\">\n <div class=\"ms-role-aside__main\" v-loading=\"loading\">\n <ElScrollbar height=\"100%\">\n <div class=\"ms-role-aside__role-list\">\n <div\n v-for=\"role in roles\"\n class=\"ms-role-aside__role-item flex flex-justify-between\"\n :class=\"[role.id === currentRole?.id ? 'is-active' : '',]\"\n :key=\"role.id\"\n @click=\"handleRoleClick(role)\"\n >\n <div class=\"flex justify-center items-center\">\n <MKSvgIcon class=\"ms-role-aside__role-icon\" name=\"ep:user\"/>\n <span class=\"ms-role-aside__role-desc\">{{ role.desc }}</span>\n </div>\n <div @click.prevent class=\"flex flex-items-center\">\n <ElDropdown>\n <span class=\"ms-role-aside__icon\">\n <MKSvgIcon name=\"ri:more-fill\"/>\n </span>\n\n <template #dropdown>\n <ElDropdownMenu>\n <ElDropdownItem :icon=\"Edit\" @click=\"handleMemberRoleEdit(role)\">\n 编辑\n </ElDropdownItem>\n <ElDropdownItem :icon=\"Delete\" @click=\"handleDelete(role)\">\n 删除\n </ElDropdownItem>\n </ElDropdownMenu>\n </template>\n </ElDropdown>\n </div>\n </div>\n </div>\n </ElScrollbar>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport {onMounted, ref, Ref, watch, computed, unref} from \"vue\";\nimport {DvOpt} from \"@maketribe/request\";\nimport {Dialoger} from \"@maketribe/dm\";\nimport {Edit, Delete} from \"@element-plus/icons-vue\";\nimport {ElButton, ElMessage, ElScrollbar, ElMessageBox} from \"element-plus\";\nimport {MKSvgIcon} from \"../../../components\";\nimport {MsRole, MsRoleForm} from \"../../../dataviews\";\n\nconst props = defineProps({\n roleForm: {\n type: MsRoleForm,\n required: true,\n },\n});\n\nconst emit = defineEmits([\"role-select\"]);\n\nconst dvOpt = DvOpt.createInstance({name: \"ms-role\"});\n\nconst roles: Ref<MsRole[]> = ref([]);\n\nconst currentRole: Ref<MsRole | null> = ref(null);\n\nconst loading = ref(false);\n\n\nwatch(currentRole, () => {\n emit(\"role-select\", currentRole.value);\n});\n\n//asdasda\nwatch(\n computed(() => props.roleForm),\n (roleForm, _, onCleanup) => {\n const disposable = roleForm.submittedEvent.on(() => {\n loadRoleList();\n });\n\n onCleanup(() => {\n disposable.dispose();\n });\n },\n {immediate: true}\n);\n\nconst loadRoleList = async () => {\n try {\n loading.value = true;\n\n roles.value = await dvOpt.query().list<MsRole>();\n\n // 加载完成之后默认选中第一个\n if (roles.value.length) {\n handleRoleClick(roles.value[0])\n }\n\n } finally {\n loading.value = false;\n }\n};\n\nconst handleMemberRoleEdit = (role: MsRole) => {\n Dialoger.dataFormDialog({\n dataForm: props.roleForm,\n recId: role.id,\n });\n};\n\nconst handleRoleClick = (role: MsRole) => {\n currentRole.value = role;\n};\n\nconst handleDelete = async (role: MsRole) => {\n const isConfirm = await ElMessageBox.confirm(\"是否确认删除\", {\n type: \"warning\",\n }).then(\n () => true,\n () => false\n );\n\n if (!isConfirm) {\n return;\n }\n\n try {\n const result = await dvOpt.delete(role.id);\n\n if (result.code !== 200) {\n ElMessage.error({message: result.msg});\n return;\n }\n\n ElMessage.success({message: \"删除成功\"});\n\n if (unref(currentRole)?.id === role.id) {\n currentRole.value = null;\n }\n\n loadRoleList();\n } catch (e) {\n console.error(e);\n ElMessage.error({message: \"网络异常\"});\n }\n};\n\n// 加载角色列表\nawait loadRoleList();\n</script>\n\n<style lang=\"scss\" scoped>\n.ms-role-aside {\n height: 100%;\n display: flex;\n flex-direction: column;\n\n\n &__main {\n height: 0;\n flex: 1;\n }\n\n &__role {\n &-icon {\n margin-right: 8px;\n font-size: 16px;\n }\n &-item+&-item {\n margin-top: 5px;\n }\n &-item {\n display: flex;\n align-items: center;\n height: 36px;\n padding: 5px 10px;\n line-height: 36px;\n border-radius: 5px;\n cursor: pointer;\n\n &.is-active,\n &:hover {\n background-color: #f4f4f4;\n }\n\n .ms-role-aside__icon {\n display: none;\n border-radius: 3px;\n font-size: 14px;\n\n &:hover {\n background-color: #f4f4f4;\n }\n }\n\n &:hover {\n .ms-role-aside__icon {\n padding: 5px;\n display: inline-flex;\n }\n }\n }\n }\n}\n</style>\n","<template>\n <MKPagePanel class=\"ms-role\">\n <template #extra>\n <el-button type=\"primary\" @click=\"handleAddRoleClick\" style=\"margin-right: 10px;\">\n <MKSvgIcon name=\"ep:plus\" style=\"margin-right: 5px;\"/>\n 添加角色\n </el-button>\n </template>\n <div class=\"ms-role__body-warp\">\n <div class=\"ms-role__aside\">\n <RoleAside\n @role-select=\"handleRoleSelect\"\n :role-form=\"roleForm\"\n ref=\"RoleAsideEl\"\n />\n </div>\n <div class=\"ms-role__main\">\n <div class=\"ms-role__content\" v-if=\"currentRole\">\n <div class=\"flex flex-justify-between\">\n <div class=\"ms-role__title\" flex=\"flex flex-row\">\n <div>\n <MKSvgIcon class=\"ms-role-aside__role-icon\" name=\"ms-user\" m=\"r-2\"/>\n {{ currentRole.desc }}\n </div>\n <div v-if=\"currentRole.memo\" :style=\"`font-size: 13px;color:#ccc;font-weight:200`\">{{ currentRole.memo }}</div>\n </div>\n <div class=\"ms-role__tools\">\n <ElButton type=\"primary\" text @click=\"handlePermissionEdit\">\n 权限设置\n </ElButton>\n <ElButton text type=\"primary\" @click=\"handleSelectUserClick\">\n 添加成员\n </ElButton>\n <ElButton text type=\"danger\" :disabled=\"disabledBatchDelete\" @click=\"handleBatchDelete\">\n 批量删除\n </ElButton>\n </div>\n </div>\n <MKDataTable :data-table=\"memberRoleTable\">\n <MKTable/>\n <MKDataTablePagination/>\n </MKDataTable>\n </div>\n </div>\n </div>\n </MKPagePanel>\n</template>\n<script setup lang=\"ts\">\nimport {\n reactive,\n Ref,\n ref,\n watch,\n unref,\n computed,\n onBeforeUnmount,\n} from \"vue\";\nimport {ElButton, ElMessage, ElMessageBox} from \"element-plus\";\nimport {Dialoger} from \"@maketribe/dm\";\nimport {DvOpt} from \"@maketribe/request\";\nimport {MKDataTable, MKPagePanel, MKSvgIcon, MKTable, MKDataTablePagination} from \"../../components\";\nimport {MsRole, MsAccountMemberRoleTable, MsRoleForm} from \"../../dataviews\";\nimport RoleAside from \"./components/RoleAside.vue\";\n\nconst router = useRouter();\n\nconst dvOpt = DvOpt.createInstance({name: \"ms-role\"});\n\nconst currentRole: Ref<MsRole | null> = ref(null);\n\nconst memberRoleTable = reactive(new MsAccountMemberRoleTable()) as MsAccountMemberRoleTable;\n\nconst roleForm = reactive(new MsRoleForm()) as MsRoleForm;\n\nconst disabledBatchDelete = computed(\n () => memberRoleTable.getSelection().length === 0\n);\n\nwatch(currentRole, (currentRole) => {\n memberRoleTable.setCurrentRole(currentRole);\n});\n\nonBeforeUnmount(() => {\n memberRoleTable.dispose();\n roleForm.dispose();\n});\n\nconst handleAddRoleClick = () => {\n Dialoger.dataFormDialog({\n dataForm: roleForm\n });\n};\n\nconst handleRoleSelect = (role: MsRole) => {\n currentRole.value = role;\n};\n\nconst handleSelectUserClick = async () => {\n const selectResult = await Dialoger.dataTableSelectDialog(\n memberRoleTable.memberTable\n );\n\n if (!selectResult.isConfirm) {\n return;\n }\n\n const roleId = unref(currentRole)!.id;\n\n const memberRoleList = selectResult.selections.map((item) => ({\n roleId,\n memberId: item,\n }));\n\n try {\n const result = await dvOpt.batchSave(memberRoleList);\n\n if (result.code !== 200) {\n ElMessage.error({message: result.msg});\n return;\n }\n\n ElMessage.success({message: \"添加成功\"});\n\n memberRoleTable.load();\n } catch (e) {\n console.error(e);\n\n ElMessage.error({message: \"网络异常\"});\n }\n};\n\nconst handleBatchDelete = async () => {\n const isConfirm = await ElMessageBox.confirm(\"是否确认删除\", {\n type: \"warning\",\n }).then(() => true,() => false);\n\n if (!isConfirm) { return; }\n\n try {\n const result = await dvOpt.batchDelete(memberRoleTable.getSelection());\n\n if (result.code !== 200) {\n ElMessage.error({message: result.msg});\n return;\n }\n\n ElMessage.success({message: \"删除成功\"});\n memberRoleTable.load();\n } catch (e) {\n console.error(e);\n ElMessage.error({message: \"网络异常\"});\n }\n};\n\nconst handlePermissionEdit = () => {\n router.push({name: \"dv/ms-role/permission\", params: {id: unref(currentRole)?.id}})\n};\n</script>\n\n<style lang=\"scss\" scoped>\n.ms-role {\n display: flex;\n flex-direction: column;\n width: 100%;\n height: 100%;\n overflow: hidden;\n padding: 0px;\n\n &__body-warp {\n padding: 10px;\n display: flex;\n height: 100%;\n overflow: hidden;\n }\n\n &__aside {\n background-color: #fff;\n padding: 10px;\n max-width: 360px;\n min-width: 220px;\n margin-right: 10px;\n }\n\n &__main {\n width: 0;\n flex: 1;\n\n .mk-data-table {\n display: flex;\n flex-direction: column;\n height: 100%;\n\n .el-table {\n height: 0;\n flex: 1;\n }\n }\n }\n\n &__content {\n display: flex;\n flex-direction: column;\n padding: 12px;\n width: 100%;\n height: 100%;\n box-sizing: border-box;\n background-color: #fff;\n }\n\n &__title {\n font-size: 18px;\n font-weight: 600;\n margin: 10px 0;\n }\n\n &__tools {\n margin: 10px 0;\n display: flex;\n justify-content: flex-end;\n }\n}\n\n</style>\n"],"names":["_withAsyncContext","currentRole"],"mappings":"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"}
1
+ {"version":3,"file":"index-DVu4B0Jb.js","sources":["../../src/pages/role/components/RoleAside.vue","../../src/pages/role/index.vue"],"sourcesContent":["<template>\n <div class=\"ms-role-aside\">\n <div class=\"ms-role-aside__main\" v-loading=\"loading\">\n <ElScrollbar height=\"100%\">\n <div class=\"ms-role-aside__role-list\">\n <div\n v-for=\"role in roles\"\n class=\"ms-role-aside__role-item flex flex-justify-between\"\n :class=\"[role.id === currentRole?.id ? 'is-active' : '',]\"\n :key=\"role.id\"\n @click=\"handleRoleClick(role)\"\n >\n <div class=\"flex justify-center items-center\">\n <MKSvgIcon class=\"ms-role-aside__role-icon\" name=\"ep:user\"/>\n <span class=\"ms-role-aside__role-desc\">{{ role.desc }}</span>\n </div>\n <div @click.prevent class=\"flex flex-items-center\">\n <ElDropdown>\n <span class=\"ms-role-aside__icon\">\n <MKSvgIcon name=\"ri:more-fill\"/>\n </span>\n\n <template #dropdown>\n <ElDropdownMenu>\n <ElDropdownItem :icon=\"Edit\" @click=\"handleMemberRoleEdit(role)\">\n 编辑\n </ElDropdownItem>\n <ElDropdownItem :icon=\"Delete\" @click=\"handleDelete(role)\">\n 删除\n </ElDropdownItem>\n </ElDropdownMenu>\n </template>\n </ElDropdown>\n </div>\n </div>\n </div>\n </ElScrollbar>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport {onMounted, ref, Ref, watch, computed, unref} from \"vue\";\nimport {DvOpt} from \"@maketribe/request\";\nimport {Dialoger} from \"@maketribe/dm\";\nimport {Edit, Delete} from \"@element-plus/icons-vue\";\nimport {ElButton, ElMessage, ElScrollbar, ElMessageBox} from \"element-plus\";\nimport {MKSvgIcon} from \"../../../components\";\nimport {MsRole, MsRoleForm} from \"../../../dataviews\";\n\nconst props = defineProps({\n roleForm: {\n type: MsRoleForm,\n required: true,\n },\n});\n\nconst emit = defineEmits([\"role-select\"]);\n\nconst dvOpt = DvOpt.createInstance({name: \"ms-role\"});\n\nconst roles: Ref<MsRole[]> = ref([]);\n\nconst currentRole: Ref<MsRole | null> = ref(null);\n\nconst loading = ref(false);\n\n\nwatch(currentRole, () => {\n emit(\"role-select\", currentRole.value);\n});\n\n//asdasda\nwatch(\n computed(() => props.roleForm),\n (roleForm, _, onCleanup) => {\n const disposable = roleForm.submittedEvent.on(() => {\n loadRoleList();\n });\n\n onCleanup(() => {\n disposable.dispose();\n });\n },\n {immediate: true}\n);\n\nconst loadRoleList = async () => {\n try {\n loading.value = true;\n\n roles.value = await dvOpt.query().list<MsRole>();\n\n // 加载完成之后默认选中第一个\n if (roles.value.length) {\n handleRoleClick(roles.value[0])\n }\n\n } finally {\n loading.value = false;\n }\n};\n\nconst handleMemberRoleEdit = (role: MsRole) => {\n Dialoger.dataFormDialog({\n dataForm: props.roleForm,\n recId: role.id,\n });\n};\n\nconst handleRoleClick = (role: MsRole) => {\n currentRole.value = role;\n};\n\nconst handleDelete = async (role: MsRole) => {\n const isConfirm = await ElMessageBox.confirm(\"是否确认删除\", {\n type: \"warning\",\n }).then(\n () => true,\n () => false\n );\n\n if (!isConfirm) {\n return;\n }\n\n try {\n const result = await dvOpt.delete(role.id);\n\n if (result.code !== 200) {\n ElMessage.error({message: result.msg});\n return;\n }\n\n ElMessage.success({message: \"删除成功\"});\n\n if (unref(currentRole)?.id === role.id) {\n currentRole.value = null;\n }\n\n loadRoleList();\n } catch (e) {\n console.error(e);\n ElMessage.error({message: \"网络异常\"});\n }\n};\n\n// 加载角色列表\nawait loadRoleList();\n</script>\n\n<style lang=\"scss\" scoped>\n.ms-role-aside {\n height: 100%;\n display: flex;\n flex-direction: column;\n\n\n &__main {\n height: 0;\n flex: 1;\n }\n\n &__role {\n &-icon {\n margin-right: 8px;\n font-size: 16px;\n }\n &-item+&-item {\n margin-top: 5px;\n }\n &-item {\n display: flex;\n align-items: center;\n height: 36px;\n padding: 5px 10px;\n line-height: 36px;\n border-radius: 5px;\n cursor: pointer;\n\n &.is-active,\n &:hover {\n background-color: #f4f4f4;\n }\n\n .ms-role-aside__icon {\n display: none;\n border-radius: 3px;\n font-size: 14px;\n\n &:hover {\n background-color: #f4f4f4;\n }\n }\n\n &:hover {\n .ms-role-aside__icon {\n padding: 5px;\n display: inline-flex;\n }\n }\n }\n }\n}\n</style>\n","<template>\n <MKPagePanel class=\"ms-role\">\n <template #extra>\n <el-button type=\"primary\" @click=\"handleAddRoleClick\" style=\"margin-right: 10px;\">\n <MKSvgIcon name=\"ep:plus\" style=\"margin-right: 5px;\"/>\n 添加角色\n </el-button>\n </template>\n <div class=\"ms-role__body-warp\">\n <div class=\"ms-role__aside\">\n <RoleAside\n @role-select=\"handleRoleSelect\"\n :role-form=\"roleForm\"\n ref=\"RoleAsideEl\"\n />\n </div>\n <div class=\"ms-role__main\">\n <div class=\"ms-role__content\" v-if=\"currentRole\">\n <div class=\"flex flex-justify-between\">\n <div class=\"ms-role__title\" flex=\"flex flex-row\">\n <div>\n <MKSvgIcon class=\"ms-role-aside__role-icon\" name=\"ms-user\" m=\"r-2\"/>\n {{ currentRole.desc }}\n </div>\n <div v-if=\"currentRole.memo\" :style=\"`font-size: 13px;color:#ccc;font-weight:200`\">{{ currentRole.memo }}</div>\n </div>\n <div class=\"ms-role__tools\">\n <ElButton type=\"primary\" text @click=\"handlePermissionEdit\">\n 权限设置\n </ElButton>\n <ElButton text type=\"primary\" @click=\"handleSelectUserClick\">\n 添加成员\n </ElButton>\n <ElButton text type=\"danger\" :disabled=\"disabledBatchDelete\" @click=\"handleBatchDelete\">\n 批量删除\n </ElButton>\n </div>\n </div>\n <MKDataTable :data-table=\"memberRoleTable\">\n <MKTable/>\n <MKDataTablePagination/>\n </MKDataTable>\n </div>\n </div>\n </div>\n </MKPagePanel>\n</template>\n<script setup lang=\"ts\">\nimport {\n reactive,\n Ref,\n ref,\n watch,\n unref,\n computed,\n onBeforeUnmount,\n} from \"vue\";\nimport {ElButton, ElMessage, ElMessageBox} from \"element-plus\";\nimport {Dialoger} from \"@maketribe/dm\";\nimport {DvOpt} from \"@maketribe/request\";\nimport {MKDataTable, MKPagePanel, MKSvgIcon, MKTable, MKDataTablePagination} from \"../../components\";\nimport {MsRole, MsAccountMemberRoleTable, MsRoleForm} from \"../../dataviews\";\nimport RoleAside from \"./components/RoleAside.vue\";\n\nconst router = useRouter();\n\nconst dvOpt = DvOpt.createInstance({name: \"ms-role\"});\n\nconst currentRole: Ref<MsRole | null> = ref(null);\n\nconst memberRoleTable = reactive(new MsAccountMemberRoleTable()) as MsAccountMemberRoleTable;\n\nconst roleForm = reactive(new MsRoleForm()) as MsRoleForm;\n\nconst disabledBatchDelete = computed(\n () => memberRoleTable.getSelection().length === 0\n);\n\nwatch(currentRole, (currentRole) => {\n memberRoleTable.setCurrentRole(currentRole);\n});\n\nonBeforeUnmount(() => {\n memberRoleTable.dispose();\n roleForm.dispose();\n});\n\nconst handleAddRoleClick = () => {\n Dialoger.dataFormDialog({\n dataForm: roleForm\n });\n};\n\nconst handleRoleSelect = (role: MsRole) => {\n currentRole.value = role;\n};\n\nconst handleSelectUserClick = async () => {\n const selectResult = await Dialoger.dataTableSelectDialog(\n memberRoleTable.memberTable\n );\n\n if (!selectResult.isConfirm) {\n return;\n }\n\n const roleId = unref(currentRole)!.id;\n\n const memberRoleList = selectResult.selections.map((item) => ({\n roleId,\n memberId: item,\n }));\n\n try {\n const result = await dvOpt.batchSave(memberRoleList);\n\n if (result.code !== 200) {\n ElMessage.error({message: result.msg});\n return;\n }\n\n ElMessage.success({message: \"添加成功\"});\n\n memberRoleTable.load();\n } catch (e) {\n console.error(e);\n\n ElMessage.error({message: \"网络异常\"});\n }\n};\n\nconst handleBatchDelete = async () => {\n const isConfirm = await ElMessageBox.confirm(\"是否确认删除\", {\n type: \"warning\",\n }).then(() => true,() => false);\n\n if (!isConfirm) { return; }\n\n try {\n const result = await dvOpt.batchDelete(memberRoleTable.getSelection());\n\n if (result.code !== 200) {\n ElMessage.error({message: result.msg});\n return;\n }\n\n ElMessage.success({message: \"删除成功\"});\n memberRoleTable.load();\n } catch (e) {\n console.error(e);\n ElMessage.error({message: \"网络异常\"});\n }\n};\n\nconst handlePermissionEdit = () => {\n router.push({name: \"dv/ms-role/permission\", params: {id: unref(currentRole)?.id}})\n};\n</script>\n\n<style lang=\"scss\" scoped>\n.ms-role {\n display: flex;\n flex-direction: column;\n width: 100%;\n height: 100%;\n overflow: hidden;\n padding: 0px;\n\n &__body-warp {\n padding: 10px;\n display: flex;\n height: 100%;\n overflow: hidden;\n }\n\n &__aside {\n background-color: #fff;\n padding: 10px;\n max-width: 360px;\n min-width: 220px;\n margin-right: 10px;\n }\n\n &__main {\n width: 0;\n flex: 1;\n\n .mk-data-table {\n display: flex;\n flex-direction: column;\n height: 100%;\n\n .el-table {\n height: 0;\n flex: 1;\n }\n }\n }\n\n &__content {\n display: flex;\n flex-direction: column;\n padding: 12px;\n width: 100%;\n height: 100%;\n box-sizing: border-box;\n background-color: #fff;\n }\n\n &__title {\n font-size: 18px;\n font-weight: 600;\n margin: 10px 0;\n }\n\n &__tools {\n margin: 10px 0;\n display: flex;\n justify-content: flex-end;\n }\n}\n\n</style>\n"],"names":["_withAsyncContext","currentRole"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { buildProps, withInstall } from "@maketribe/utils";
2
2
  import { defineComponent, computed, watch, unref, ref, resolveComponent, createElementBlock, openBlock, createVNode, withCtx, createTextVNode, toDisplayString } from "vue";
3
- import { g as useFormItem, h as MKDataTable, i as DataForm, j as MKForm, _ as _export_sfc } from "./index-CJErFr3g.js";
3
+ import { g as useFormItem, h as MKDataTable, i as DataForm, j as MKForm, _ as _export_sfc } from "./index-DddknvTX.js";
4
4
  import { FormDetailColumn, Messager, DataFormType } from "@maketribe/dm";
5
5
  import { ElButton } from "element-plus";
6
6
  import { I18n } from "@maketribe/locale";
@@ -161,4 +161,4 @@ export {
161
161
  formDetailEmits,
162
162
  formDetailProps
163
163
  };
164
- //# sourceMappingURL=index-BoXTMwMe.js.map
164
+ //# sourceMappingURL=index-D_CKuKoo.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-BoXTMwMe.js","sources":["../../src/components/data-model/data-form/components/form-detail/form-detail-options.ts","../../src/components/data-model/data-form/components/form-detail/form-detail.vue","../../src/components/data-model/data-form/components/form-detail/index.ts"],"sourcesContent":["import { ExtractPropTypes } from \"vue\";\nimport { buildProps } from \"@maketribe/utils\";\nimport { FormDetailColumn } from \"@maketribe/dm\";\n\nexport const formDetailProps = buildProps({\n modelValue: {\n type: null,\n },\n disabled: {\n type: Boolean,\n default: false,\n },\n column: { type: FormDetailColumn, required: true },\n formWidth: {\n type: String,\n default: \"400px\",\n },\n} as const);\n\nexport type FormDetailProps = ExtractPropTypes<typeof formDetailProps>;\n\nexport const formDetailEmits = {\n \"update:model-value\": (v: any) => true,\n};\n\nexport type FormDetailEmits = ExtractPropTypes<typeof formDetailEmits>;\n","<script setup lang=\"ts\">\nimport {computed, ref, unref, watch} from \"vue\";\nimport {MKDataTable} from \"../../../data-table\";\nimport DataForm from \"../../data-form.vue\";\nimport {formDetailEmits, formDetailProps} from \"./form-detail-options\";\nimport {useFormItem} from \"../../composables\";\nimport {MKForm} from '../../views'\nimport {ElButton, ElEmpty} from \"element-plus\";\nimport { I18n } from \"@maketribe/locale\";\nimport {DataFormType, Messager} from \"@maketribe/dm\";\n\nconst props = defineProps(formDetailProps);\n\nconst emit = defineEmits(formDetailEmits)\n\nconst detailTable = computed(() => props.column.detailTable);\nconst detailForm = computed(() => props.column.detailForm!);\n\nconst {value} = useFormItem();\n\nwatch(\n computed(() => unref(value)),\n (value) => {\n const _detailTable = unref(detailTable);\n\n value = Array.isArray(value) ? value : [];\n\n _detailTable.setList(\n value.map((item: any) => _detailTable.formatItem(item))\n );\n }\n);\n\nconst isShowDataForm = ref(false);\n\nwatch(\n detailTable,\n (dataTable, _, onCleanup) => {\n\n const addRecordDisposable = dataTable.addRecordEvent.on(async ({item}) => {\n const _dataForm = unref(detailForm);\n\n if (!_dataForm) {\n console.warn(`没有对应的 (${dataTable.name}) DataForm 实现`);\n return;\n }\n\n isShowDataForm.value = true;\n\n _dataForm.addRecord(item);\n });\n\n const editRecordDisposable = dataTable.editRecordEvent.on(\n async ({item}) => {\n const _dataForm = unref(detailForm);\n\n if (!_dataForm) {\n console.warn(`没有对应的 (${dataTable.name}) DataForm 实现`);\n return;\n }\n\n isShowDataForm.value = true;\n\n try {\n const response = await _dataForm.editRecord(item);\n\n if (response.data.code !== 200) {\n Messager.error({message: response.data.msg});\n isShowDataForm.value = false;\n return;\n }\n } catch (e) {\n console.error(e);\n isShowDataForm.value = false;\n }\n }\n );\n\n onCleanup(() => {\n addRecordDisposable.dispose();\n editRecordDisposable.dispose();\n });\n },\n {immediate: true}\n);\n\nwatch(\n detailForm,\n (dataForm, _, onCleanup) => {\n const submittedDisposable = dataForm.submittedEvent.on(() => {\n isShowDataForm.value = false;\n\n unref(detailTable)?.load();\n });\n\n const cancelDisposable = dataForm.cancelEvent.on(() => {\n isShowDataForm.value = false;\n });\n\n onCleanup(() => {\n submittedDisposable.dispose();\n cancelDisposable.dispose();\n });\n },\n {immediate: true}\n);\n\nconst isUpdateForm = computed(()=> unref(detailForm).getDataFormType() == DataFormType.UPDATE)\n\nconst handleFormSave = async () => {\n await unref(detailForm)?.simpleSubmit();\n};\n\nconst handleFormCancel = () => {\n unref(detailForm).cancel();\n};\n\n\n</script>\n\n<template>\n <div class=\"mk-form-detail\">\n <MKDataTable :dataTable=\"detailTable\" :autoLoad=\"false\" />\n <ElDrawer v-model=\"isShowDataForm\" append-to-body :title=\"column.label\">\n <DataForm :dataForm=\"detailForm\" :autoLoad=\"false\" >\n <MKForm labelPosition=\"top\" />\n </DataForm>\n <template #footer>\n <ElButton @click=\"handleFormCancel\">\n {{I18n.instance.translate(\"mk.dataForm.cancelButton\")}}\n </ElButton>\n <ElButton type=\"primary\" @click=\"handleFormSave\">\n {{ isUpdateForm ? I18n.instance.translate(\"mk.dataForm.saveButton\") : I18n.instance.translate(\"mk.dataForm.addButton\")}}\n </ElButton>\n </template>\n\n<!-- <template #empty>-->\n<!-- <ElEmpty :image-size=\"100\"/>-->\n<!-- </template>-->\n </ElDrawer>\n </div>\n</template>\n<style scoped lang=\"scss\">\n.mk-form-detail {\n width: 100%;\n min-height: 200px;\n\n .mk-data-table {\n height: 100%;\n }\n\n .mk-data-table-search {\n display: none;\n }\n\n .el-table {\n flex: 1;\n }\n\n @at-root {\n &__drawer {\n .el-card {\n border: none;\n\n &__body {\n --el-card-padding: 0px;\n }\n }\n }\n }\n}\n\n</style>\n","import { withInstall } from \"@maketribe/utils\";\nimport FormDetail from \"./form-detail.vue\";\n\nexport const MKFormDetail = withInstall(FormDetail);\nexport default MKFormDetail;\n\nexport * from \"./form-detail-options\";\n"],"names":["value"],"mappings":"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"}
1
+ {"version":3,"file":"index-D_CKuKoo.js","sources":["../../src/components/data-model/data-form/components/form-detail/form-detail-options.ts","../../src/components/data-model/data-form/components/form-detail/form-detail.vue","../../src/components/data-model/data-form/components/form-detail/index.ts"],"sourcesContent":["import { ExtractPropTypes } from \"vue\";\nimport { buildProps } from \"@maketribe/utils\";\nimport { FormDetailColumn } from \"@maketribe/dm\";\n\nexport const formDetailProps = buildProps({\n modelValue: {\n type: null,\n },\n disabled: {\n type: Boolean,\n default: false,\n },\n column: { type: FormDetailColumn, required: true },\n formWidth: {\n type: String,\n default: \"400px\",\n },\n} as const);\n\nexport type FormDetailProps = ExtractPropTypes<typeof formDetailProps>;\n\nexport const formDetailEmits = {\n \"update:model-value\": (v: any) => true,\n};\n\nexport type FormDetailEmits = ExtractPropTypes<typeof formDetailEmits>;\n","<script setup lang=\"ts\">\nimport {computed, ref, unref, watch} from \"vue\";\nimport {MKDataTable} from \"../../../data-table\";\nimport DataForm from \"../../data-form.vue\";\nimport {formDetailEmits, formDetailProps} from \"./form-detail-options\";\nimport {useFormItem} from \"../../composables\";\nimport {MKForm} from '../../views'\nimport {ElButton, ElEmpty} from \"element-plus\";\nimport { I18n } from \"@maketribe/locale\";\nimport {DataFormType, Messager} from \"@maketribe/dm\";\n\nconst props = defineProps(formDetailProps);\n\nconst emit = defineEmits(formDetailEmits)\n\nconst detailTable = computed(() => props.column.detailTable);\nconst detailForm = computed(() => props.column.detailForm!);\n\nconst {value} = useFormItem();\n\nwatch(\n computed(() => unref(value)),\n (value) => {\n const _detailTable = unref(detailTable);\n\n value = Array.isArray(value) ? value : [];\n\n _detailTable.setList(\n value.map((item: any) => _detailTable.formatItem(item))\n );\n }\n);\n\nconst isShowDataForm = ref(false);\n\nwatch(\n detailTable,\n (dataTable, _, onCleanup) => {\n\n const addRecordDisposable = dataTable.addRecordEvent.on(async ({item}) => {\n const _dataForm = unref(detailForm);\n\n if (!_dataForm) {\n console.warn(`没有对应的 (${dataTable.name}) DataForm 实现`);\n return;\n }\n\n isShowDataForm.value = true;\n\n _dataForm.addRecord(item);\n });\n\n const editRecordDisposable = dataTable.editRecordEvent.on(\n async ({item}) => {\n const _dataForm = unref(detailForm);\n\n if (!_dataForm) {\n console.warn(`没有对应的 (${dataTable.name}) DataForm 实现`);\n return;\n }\n\n isShowDataForm.value = true;\n\n try {\n const response = await _dataForm.editRecord(item);\n\n if (response.data.code !== 200) {\n Messager.error({message: response.data.msg});\n isShowDataForm.value = false;\n return;\n }\n } catch (e) {\n console.error(e);\n isShowDataForm.value = false;\n }\n }\n );\n\n onCleanup(() => {\n addRecordDisposable.dispose();\n editRecordDisposable.dispose();\n });\n },\n {immediate: true}\n);\n\nwatch(\n detailForm,\n (dataForm, _, onCleanup) => {\n const submittedDisposable = dataForm.submittedEvent.on(() => {\n isShowDataForm.value = false;\n\n unref(detailTable)?.load();\n });\n\n const cancelDisposable = dataForm.cancelEvent.on(() => {\n isShowDataForm.value = false;\n });\n\n onCleanup(() => {\n submittedDisposable.dispose();\n cancelDisposable.dispose();\n });\n },\n {immediate: true}\n);\n\nconst isUpdateForm = computed(()=> unref(detailForm).getDataFormType() == DataFormType.UPDATE)\n\nconst handleFormSave = async () => {\n await unref(detailForm)?.simpleSubmit();\n};\n\nconst handleFormCancel = () => {\n unref(detailForm).cancel();\n};\n\n\n</script>\n\n<template>\n <div class=\"mk-form-detail\">\n <MKDataTable :dataTable=\"detailTable\" :autoLoad=\"false\" />\n <ElDrawer v-model=\"isShowDataForm\" append-to-body :title=\"column.label\">\n <DataForm :dataForm=\"detailForm\" :autoLoad=\"false\" >\n <MKForm labelPosition=\"top\" />\n </DataForm>\n <template #footer>\n <ElButton @click=\"handleFormCancel\">\n {{I18n.instance.translate(\"mk.dataForm.cancelButton\")}}\n </ElButton>\n <ElButton type=\"primary\" @click=\"handleFormSave\">\n {{ isUpdateForm ? I18n.instance.translate(\"mk.dataForm.saveButton\") : I18n.instance.translate(\"mk.dataForm.addButton\")}}\n </ElButton>\n </template>\n\n<!-- <template #empty>-->\n<!-- <ElEmpty :image-size=\"100\"/>-->\n<!-- </template>-->\n </ElDrawer>\n </div>\n</template>\n<style scoped lang=\"scss\">\n.mk-form-detail {\n width: 100%;\n min-height: 200px;\n\n .mk-data-table {\n height: 100%;\n }\n\n .mk-data-table-search {\n display: none;\n }\n\n .el-table {\n flex: 1;\n }\n\n @at-root {\n &__drawer {\n .el-card {\n border: none;\n\n &__body {\n --el-card-padding: 0px;\n }\n }\n }\n }\n}\n\n</style>\n","import { withInstall } from \"@maketribe/utils\";\nimport FormDetail from \"./form-detail.vue\";\n\nexport const MKFormDetail = withInstall(FormDetail);\nexport default MKFormDetail;\n\nexport * from \"./form-detail-options\";\n"],"names":["value"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { defineAsyncComponent, reactive, ref, getCurrentInstance, unref, computed, provide, inject, defineComponent, createVNode, renderSlot, isVNode, watch, isRef, onBeforeUnmount, resolveComponent, createBlock, openBlock, withCtx, createElementVNode, createCommentVNode, createElementBlock, Fragment, renderList, createTextVNode, normalizeStyle, normalizeClass, withDirectives, resolveDirective, onMounted, h, shallowReactive, withModifiers, onUnmounted, watchEffect, readonly, useSlots, toRaw, mergeProps, nextTick, createSlots, toDisplayString, normalizeProps, guardReactiveProps, Suspense, resolveDynamicComponent, shallowRef, Teleport, pushScopeId, popScopeId, Transition, render, toHandlers, TransitionGroup, vShow, onBeforeUpdate, withKeys, vModelText, onErrorCaptured, KeepAlive } from "vue";
2
- import { Components, Operator, DataTable as DataTable$1, DataForm as DataForm$1, ComponentsCombine, isWhereFilter, Messager, Dialoger, FormColumn, DataTree, RefreshButton, AddButton, TableHeaderItem as TableHeaderItem$1, FilterColumn, TableColumn, TableActionColumn, DataFormType, ActionButton, EditButton, DeleteButton, TableSelectCacheColumn, LoadingManager, FormDetailColumn, ImportButton, TableHeaderButton, Notificationer, SkeletonMessageSender, SkeletonDialoger } from "@maketribe/dm";
2
+ import { Components, Operator, DataTable as DataTable$1, DataForm as DataForm$1, ComponentsCombine, isWhereFilter, Messager, Dialoger, FormColumn, DataTree, RefreshButton, AddButton, TableHeaderItem as TableHeaderItem$1, FilterColumn, TableColumn, TableActionColumn, DataFormType, ActionButton, EditButton, DeleteButton, TableSelectColumn, LoadingManager, FormDetailColumn, ImportButton, TableHeaderButton, Notificationer, SkeletonMessageSender, SkeletonDialoger } from "@maketribe/dm";
3
3
  import { ElInput, ElInputNumber, ElConfigProvider, ElButton, ElSelect, ElOption, ElPagination, ElDatePicker, useFormItem as useFormItem$1, ElPopover, ElScrollbar, ElTooltip, ElForm, ElFormItem, ElCollapse, ElCollapseItem, useFormDisabled, ElCard, ElTableColumn, ElTable, ElEmpty, ElTag, ElTree, ElMessageBox, ElIcon, ElMessage, ElImage, ElTabs, ElTabPane, ElRow, ElCol, ElLoading, ElDialog, ElAlert, ElProgress, ElCheckbox, ElNotification, ElUpload, ElDrawer, ElButtonGroup, ElBadge } from "element-plus";
4
4
  import { Disposable, Event, createDisposable, md5, buildProps, withInstall, aesEncrypt, aesDecrypt, fileSelect, base64ToBlob, postTraverse, makeInstaller } from "@maketribe/utils";
5
5
  import { useRoute, useRouter, createRouter, createWebHashHistory } from "vue-router";
@@ -148,84 +148,84 @@ class DataTableComponents extends Components {
148
148
  name: "MKColumnAction",
149
149
  title: "操作",
150
150
  component: defineAsyncComponent(
151
- async () => import("./index-Slcgq4Vq.js")
151
+ async () => import("./index-BsTLJmV1.js")
152
152
  )
153
153
  });
154
154
  this.registerComponent({
155
155
  name: "MKColumnText",
156
156
  title: "文本",
157
157
  component: defineAsyncComponent(
158
- async () => import("./index-BLWAMDNo.js")
158
+ async () => import("./index-BnlFb2u8.js")
159
159
  )
160
160
  });
161
161
  this.registerComponent({
162
162
  name: "MKColumnObjectMappingText",
163
163
  title: "对象映射文本",
164
164
  component: defineAsyncComponent(
165
- async () => import("./index-gZZdeHyB.js")
165
+ async () => import("./index-s_aQeFrS.js")
166
166
  )
167
167
  });
168
168
  this.registerComponent({
169
169
  name: "MKColumnImage",
170
170
  title: "图片",
171
171
  component: defineAsyncComponent(
172
- async () => import("./index--cHRJOfk.js")
172
+ async () => import("./index-Coa43LvX.js")
173
173
  )
174
174
  });
175
175
  this.registerComponent({
176
176
  name: "MKColumnSelect",
177
177
  title: "行选择",
178
178
  component: defineAsyncComponent(
179
- async () => import("./index-B1uxvLO_.js")
179
+ async () => import("./index-D9fjxSL4.js")
180
180
  )
181
181
  });
182
182
  this.registerComponent({
183
183
  name: "MKColumnJson",
184
184
  title: "JSON",
185
185
  component: defineAsyncComponent(
186
- async () => import("./index-DIPeIvS8.js")
186
+ async () => import("./index-BnQGLVrJ.js")
187
187
  )
188
188
  });
189
189
  this.registerComponent({
190
190
  name: "MKColumnDate",
191
191
  title: "日期时间",
192
192
  component: defineAsyncComponent(
193
- async () => import("./index-DBRr8nkM.js")
193
+ async () => import("./index-C-xITLKJ.js")
194
194
  )
195
195
  });
196
196
  this.registerComponent({
197
197
  name: "MKColumnSwitch",
198
198
  title: "开关",
199
199
  component: defineAsyncComponent(
200
- async () => import("./index-vz0aiVcc.js")
200
+ async () => import("./index-BGPbplSD.js")
201
201
  )
202
202
  });
203
203
  this.registerComponent({
204
204
  name: "MKColumnTag",
205
205
  title: "标签",
206
206
  component: defineAsyncComponent(
207
- async () => import("./index-D1oJ4jn1.js")
207
+ async () => import("./index-83tpPaur.js")
208
208
  )
209
209
  });
210
210
  this.registerComponent({
211
211
  name: "MKColumnLink",
212
212
  title: "链接",
213
213
  component: defineAsyncComponent(
214
- async () => import("./index-q2kz2Al8.js")
214
+ async () => import("./index-C_0_LVmx.js")
215
215
  )
216
216
  });
217
217
  this.registerComponent({
218
218
  name: "MKColumnSort",
219
219
  title: "拖拽排序",
220
220
  component: defineAsyncComponent(
221
- async () => import("./index-DmcDcLeN.js")
221
+ async () => import("./index-p-xkS0IP.js")
222
222
  )
223
223
  });
224
224
  this.registerComponent({
225
225
  name: "MKColumnIcon",
226
226
  title: "图标",
227
227
  component: defineAsyncComponent(
228
- async () => import("./index-Cu4bEQ-_.js")
228
+ async () => import("./index-BUaK5DTA.js")
229
229
  )
230
230
  });
231
231
  }
@@ -251,14 +251,14 @@ class DataTableHeaderComponents extends Components {
251
251
  name: "MKBatchOpt",
252
252
  title: "批量操作",
253
253
  component: defineAsyncComponent(
254
- async () => import("./index-BwZKYOQS.js")
254
+ async () => import("./index-DpwAE_7u.js")
255
255
  )
256
256
  });
257
257
  this.registerComponent({
258
258
  name: "MKTableFilter",
259
259
  title: "筛选",
260
260
  component: defineAsyncComponent(
261
- async () => import("./index-Dd3QdtjS.js")
261
+ async () => import("./index-CjQQ3iDb.js")
262
262
  )
263
263
  });
264
264
  }
@@ -336,7 +336,7 @@ class DataFormComponents extends Components {
336
336
  name: "MKFormDetail",
337
337
  title: "明细",
338
338
  component: defineAsyncComponent(
339
- () => import("./index-BoXTMwMe.js")
339
+ () => import("./index-D_CKuKoo.js")
340
340
  )
341
341
  });
342
342
  this.registerComponent({
@@ -357,14 +357,14 @@ class DataFormComponents extends Components {
357
357
  name: "MKDataTreeSelect",
358
358
  title: "树选择器",
359
359
  component: defineAsyncComponent(
360
- () => import("./index-DY7C3mNg.js")
360
+ () => import("./index-Nxpa4qBO.js")
361
361
  )
362
362
  });
363
363
  this.registerComponent({
364
364
  name: "MKResourceSelectInput",
365
365
  title: "资源选择输入框",
366
366
  component: defineAsyncComponent(
367
- () => import("./ResourceSelectInput-DPRCYClq.js")
367
+ () => import("./ResourceSelectInput-hzKYS1V8.js")
368
368
  )
369
369
  });
370
370
  this.registerComponent({
@@ -400,7 +400,7 @@ class DataFilterComponents extends Components {
400
400
  title: "下拉框",
401
401
  defaultOperator: Operator.IN,
402
402
  component: defineAsyncComponent(
403
- () => import("./index-C_xawr7_.js")
403
+ () => import("./index-CkUHjpVZ.js")
404
404
  )
405
405
  });
406
406
  this.registerComponent({
@@ -408,7 +408,7 @@ class DataFilterComponents extends Components {
408
408
  title: "树形下拉框",
409
409
  defaultOperator: Operator.IN,
410
410
  component: defineAsyncComponent(
411
- () => import("./index-DY7C3mNg.js")
411
+ () => import("./index-Nxpa4qBO.js")
412
412
  )
413
413
  });
414
414
  this.registerComponent({
@@ -850,7 +850,7 @@ class Router extends Disposable {
850
850
  vueRouter.addRoute("mk-ms-layout", {
851
851
  name: defaultPageRoute.name,
852
852
  path: defaultPageRoute.route || `/dv/${name}`,
853
- component: () => import("./normal-BMacxFgG.js"),
853
+ component: () => import("./normal-DFz2_HB1.js"),
854
854
  meta
855
855
  });
856
856
  break;
@@ -858,7 +858,7 @@ class Router extends Disposable {
858
858
  vueRouter.addRoute("mk-ms-layout", {
859
859
  name: defaultPageRoute.name,
860
860
  path: defaultPageRoute.route || `/dv/${name}`,
861
- component: () => import("./dialog-ngwX7TP3.js"),
861
+ component: () => import("./dialog-CFITXwu-.js"),
862
862
  meta
863
863
  });
864
864
  break;
@@ -870,7 +870,7 @@ class Router extends Disposable {
870
870
  vueRouter.addRoute("mk-ms-layout", {
871
871
  name: defaultPageRoute.name,
872
872
  path: defaultPageRoute.route || `/dv/${name}`,
873
- component: () => import("./dialog-B1kVTDIK.js"),
873
+ component: () => import("./dialog-UVUBlVgO.js"),
874
874
  meta
875
875
  });
876
876
  break;
@@ -882,7 +882,7 @@ class Router extends Disposable {
882
882
  vueRouter.addRoute("mk-ms-layout", {
883
883
  name: defaultPageRoute.name,
884
884
  path: defaultPageRoute.route || `/dv/${name}`,
885
- component: () => import("./dialog-BhSXo9nJ.js"),
885
+ component: () => import("./dialog--nL37O98.js"),
886
886
  meta
887
887
  });
888
888
  break;
@@ -890,7 +890,7 @@ class Router extends Disposable {
890
890
  vueRouter.addRoute("mk-ms-layout", {
891
891
  name: defaultPageRoute.name,
892
892
  path: defaultPageRoute.route || `/dv/${name}`,
893
- component: () => import("./normal-BiygxoLT.js"),
893
+ component: () => import("./normal-BPSUoo-T.js"),
894
894
  meta
895
895
  });
896
896
  }
@@ -900,7 +900,7 @@ class Router extends Disposable {
900
900
  vueRouter.addRoute("mk-ms-layout", {
901
901
  name: defaultPageRoute.name,
902
902
  path: defaultPageRoute.route || `/dv/${name}`,
903
- component: () => import("./table-BEkVyGga.js"),
903
+ component: () => import("./table-B7Fqs0K3.js"),
904
904
  meta
905
905
  });
906
906
  break;
@@ -908,7 +908,7 @@ class Router extends Disposable {
908
908
  vueRouter.addRoute("mk-ms-layout", {
909
909
  name: defaultPageRoute.name,
910
910
  path: defaultPageRoute.route || `/dv/${name}/edit/:id?`,
911
- component: () => import("./edit-Ca9p6DOe.js"),
911
+ component: () => import("./edit-BB7QAJwd.js"),
912
912
  meta
913
913
  });
914
914
  break;
@@ -1147,7 +1147,7 @@ const configProviderProps = buildProps({
1147
1147
  type: I18n
1148
1148
  }
1149
1149
  });
1150
- function _isSlot$a(s) {
1150
+ function _isSlot$9(s) {
1151
1151
  return typeof s === "function" || Object.prototype.toString.call(s) === "[object Object]" && !isVNode(s);
1152
1152
  }
1153
1153
  const ConfigProvider = /* @__PURE__ */ defineComponent({
@@ -1163,7 +1163,7 @@ const ConfigProvider = /* @__PURE__ */ defineComponent({
1163
1163
  let _slot;
1164
1164
  return createVNode(ElConfigProvider, {
1165
1165
  "locale": unref(currentLocale)
1166
- }, _isSlot$a(_slot = renderSlot(slots, "default")) ? _slot : {
1166
+ }, _isSlot$9(_slot = renderSlot(slots, "default")) ? _slot : {
1167
1167
  default: () => [_slot]
1168
1168
  });
1169
1169
  };
@@ -1830,7 +1830,7 @@ class PageManager {
1830
1830
  this.addNormalPage({
1831
1831
  name: "mk-ms-layout",
1832
1832
  path: "/",
1833
- component: () => import("./index-BYI6j3rX.js")
1833
+ component: () => import("./index-X16arBXD.js")
1834
1834
  });
1835
1835
  this.addNormalPage({
1836
1836
  name: "login",
@@ -1838,7 +1838,7 @@ class PageManager {
1838
1838
  meta: {
1839
1839
  isAuthorization: false
1840
1840
  },
1841
- component: () => import("./index-DaeJgHqN.js")
1841
+ component: () => import("./index-BfdsTogi.js")
1842
1842
  });
1843
1843
  this.addNormalPage({
1844
1844
  name: "signup",
@@ -1846,7 +1846,7 @@ class PageManager {
1846
1846
  meta: {
1847
1847
  isAuthorization: false
1848
1848
  },
1849
- component: () => import("./index-DruB44FM.js")
1849
+ component: () => import("./index-CwOK_Y0l.js")
1850
1850
  });
1851
1851
  this.afterInitdEvent.emit();
1852
1852
  this.msAppClientChangeEvent.on(({ msAppClient }) => {
@@ -1897,7 +1897,7 @@ class PageManager {
1897
1897
  this.addExtendsPage({
1898
1898
  name: "notFound",
1899
1899
  path: "/:pathMatch(.*)*",
1900
- component: () => import("./404-BjcJlT6H.js")
1900
+ component: () => import("./404-DrYKofUt.js")
1901
1901
  });
1902
1902
  }
1903
1903
  userSession.register(
@@ -3485,8 +3485,9 @@ const DataTableSelect = /* @__PURE__ */ defineComponent({
3485
3485
  set: (v) => emit("update:model-value", v)
3486
3486
  });
3487
3487
  watch(computed(() => [unref(dataTable), props.multiple]), ([dataTable2, multiple]) => {
3488
- dataTable2.setSelectionColumn(new TableSelectCacheColumn({
3489
- multiple
3488
+ dataTable2.setSelectionColumn(new TableSelectColumn({
3489
+ multiple: true,
3490
+ reserveSelection: true
3490
3491
  }));
3491
3492
  }, {
3492
3493
  immediate: true
@@ -3572,9 +3573,6 @@ const dataSelectProps = buildProps({
3572
3573
  const dataSelectEmit = {
3573
3574
  ...abstractSelectEmits
3574
3575
  };
3575
- function _isSlot$9(s) {
3576
- return typeof s === "function" || Object.prototype.toString.call(s) === "[object Object]" && !isVNode(s);
3577
- }
3578
3576
  const DataSelect = /* @__PURE__ */ defineComponent({
3579
3577
  name: "MKDataSelect",
3580
3578
  props: dataSelectProps,
@@ -3646,8 +3644,8 @@ const DataSelect = /* @__PURE__ */ defineComponent({
3646
3644
  "allowCreate": props.allowCreate,
3647
3645
  "filterable": props.filterable,
3648
3646
  "clearable": props.clearable
3649
- }, _isSlot$9(children) ? children : {
3650
- default: () => [children]
3647
+ }, {
3648
+ default: () => children
3651
3649
  });
3652
3650
  }
3653
3651
  });
@@ -3727,7 +3725,7 @@ const index$5 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.definePrope
3727
3725
  default: MKCodeEditor
3728
3726
  }, Symbol.toStringTag, { value: "Module" }));
3729
3727
  const MKJsonEditor = withInstall(
3730
- defineAsyncComponent(() => import("./Editor-M7607AyM.js"))
3728
+ defineAsyncComponent(() => import("./Editor-CszbtwYJ.js"))
3731
3729
  );
3732
3730
  const index$4 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
3733
3731
  __proto__: null,
@@ -6917,7 +6915,7 @@ const Table = /* @__PURE__ */ defineComponent({
6917
6915
  setup(props, {
6918
6916
  slots
6919
6917
  }) {
6920
- computed(() => {
6918
+ const treeProps2 = computed(() => {
6921
6919
  return props.treeProps;
6922
6920
  });
6923
6921
  const dataTableContext = inject(DATA_TABLE_CONTEXT_KEY);
@@ -6940,33 +6938,10 @@ const Table = /* @__PURE__ */ defineComponent({
6940
6938
  }
6941
6939
  unref(dataTable).sorter.setColumnSort(prop, orderType);
6942
6940
  };
6943
- let allowChangeSelection = true;
6944
6941
  const handleSelectionChange = (items) => {
6945
- if (allowChangeSelection) {
6946
- unref(dataTable).setSelection(items.map((item) => item[unref(dataTable).primaryKey]));
6947
- }
6942
+ unref(dataTable).setSelection(items.map((item) => item[unref(dataTable).primaryKey]));
6948
6943
  };
6949
6944
  onMounted(() => {
6950
- const _tableEl = unref(tableEl);
6951
- watch(list, (list2, _2, onCleanup) => {
6952
- onCleanup(watch(computed(() => unref(dataTable).getSelection()), async (selections) => {
6953
- const primaryKey = unref(dataTable).primaryKey;
6954
- const tableSelections = _tableEl.getSelectionRows().map((item2) => item2[primaryKey]).sort();
6955
- if (isEqual(selections, tableSelections)) {
6956
- return;
6957
- }
6958
- allowChangeSelection = false;
6959
- _tableEl.clearSelection();
6960
- await nextTick();
6961
- const selectedRows = list2.filter((item2) => selections.includes(item2[primaryKey]));
6962
- for (var item of selectedRows) {
6963
- _tableEl.toggleRowSelection(item, true);
6964
- }
6965
- allowChangeSelection = true;
6966
- }, {
6967
- immediate: true
6968
- }));
6969
- });
6970
6945
  watch(dataTableEl, (el, _2, onCleanup) => {
6971
6946
  if (!el) {
6972
6947
  return;
@@ -7038,10 +7013,15 @@ const Table = /* @__PURE__ */ defineComponent({
7038
7013
  "stripe": true,
7039
7014
  "lazy": props.lazy,
7040
7015
  "load": props.load,
7016
+ "treeProps": treeProps2,
7041
7017
  "onSelection-change": handleSelectionChange,
7042
7018
  "defaultExpandAll": props.defaultExpandAll
7043
7019
  }, {
7044
7020
  default: () => [unref(selectionColumn).visible ? createVNode(ElTableColumn, {
7021
+ "selectable": (row, index2) => {
7022
+ return unref(selectionColumn).selectable(row, index2);
7023
+ },
7024
+ "reserve-selection": unref(selectionColumn).reserveSelection,
7045
7025
  "type": unref(selectionColumn).type ?? "selection",
7046
7026
  "width": unref(selectionColumn).width,
7047
7027
  "fixed": unref(selectionColumn).fixed
@@ -11927,7 +11907,7 @@ const markdownEditorProps = buildProps({
11927
11907
  const markdownEditorEmits = {
11928
11908
  "update:model-value": (modelValue) => true
11929
11909
  };
11930
- const _MarkdownEditor = defineAsyncComponent(() => import("./Editor-B0aQKlrH.js"));
11910
+ const _MarkdownEditor = defineAsyncComponent(() => import("./Editor-DnuqgkXg.js"));
11931
11911
  const MKMarkdownEditor = withInstall(_MarkdownEditor);
11932
11912
  const _hoisted_1$s = { class: "mk-rich-text-toolbar" };
11933
11913
  const _hoisted_2$n = { class: "mk-rich-text-editor__stage_warp" };
@@ -17573,41 +17553,41 @@ class MSAppClient {
17573
17553
  this.pageManager.addExtendsPage({
17574
17554
  name: "ms-menu",
17575
17555
  path: "/ms/menus",
17576
- component: () => import("./index-CJDC1EPh.js"),
17556
+ component: () => import("./index-ClyK2QkM.js"),
17577
17557
  meta: { name: "ms-menu" }
17578
17558
  });
17579
17559
  this.pageManager.addExtendsPage({
17580
17560
  name: "ms-role",
17581
17561
  path: "/ms/roles",
17582
- component: () => import("./index-BAzpn8Sj.js"),
17562
+ component: () => import("./index-DVu4B0Jb.js"),
17583
17563
  meta: { name: "ms-role" }
17584
17564
  });
17585
17565
  this.pageManager.addExtendsPage({
17586
17566
  name: "dv/ms-material/list",
17587
17567
  path: "/sys/materials",
17588
- component: () => import("./index-DUFe9Xaz.js"),
17568
+ component: () => import("./index-B_8SWX-W.js"),
17589
17569
  meta: { name: "ms-material" }
17590
17570
  });
17591
17571
  this.pageManager.addExtendsPage({
17592
17572
  name: "dv/ms-role/permission",
17593
17573
  path: "/sys/roles/:id/permission",
17594
- component: () => import("./PermissionManage-BVwqmhlg.js")
17574
+ component: () => import("./PermissionManage-FUljX6_R.js")
17595
17575
  });
17596
17576
  this.pageManager.addExtendsPage({
17597
17577
  name: "dv/local-log/single/tree/dialog",
17598
17578
  path: "/log/local",
17599
- component: () => import("./index-DeGOWXm3.js"),
17579
+ component: () => import("./index-DyS0xU_L.js"),
17600
17580
  meta: { name: "local-log" }
17601
17581
  });
17602
17582
  this.pageManager.addExtendsPage({
17603
17583
  name: "icons/list",
17604
17584
  path: "/sys/icons",
17605
- component: () => import("./index-CkokxV6q.js")
17585
+ component: () => import("./index-Jdb3h-Cn.js")
17606
17586
  });
17607
17587
  this.pageManager.addExtendsPage({
17608
17588
  name: "dv/ms-todo/single/list/dialog",
17609
17589
  path: "/dv/todo",
17610
- component: () => import("./index-B6eMiVss.js")
17590
+ component: () => import("./index-D3r8yfsY.js")
17611
17591
  });
17612
17592
  for (let internalModule of internalModules) {
17613
17593
  for (let item of internalModule.normalPages) {
@@ -21652,4 +21632,4 @@ export {
21652
21632
  MKTable as y,
21653
21633
  MKDataTablePagination as z
21654
21634
  };
21655
- //# sourceMappingURL=index-CJErFr3g.js.map
21635
+ //# sourceMappingURL=index-DddknvTX.js.map