@maketribe/ms-app 4.0.0-alpha.3 → 4.0.0-alpha.5
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.
- package/dist/cjs/{404-DWSwF-XG.cjs → 404-DGgEMQMF.cjs} +2 -2
- package/dist/cjs/{404-DWSwF-XG.cjs.map → 404-DGgEMQMF.cjs.map} +1 -1
- package/dist/cjs/{article-edit-add-page-DMGZ8mH4.cjs → article-edit-add-page-Bje080RK.cjs} +3 -3
- package/dist/cjs/{article-edit-add-page-DMGZ8mH4.cjs.map → article-edit-add-page-Bje080RK.cjs.map} +1 -1
- package/dist/cjs/{cms-settings-DIOam34M.cjs → cms-settings-Qdpc_nmk.cjs} +2 -2
- package/dist/cjs/{cms-settings-DIOam34M.cjs.map → cms-settings-Qdpc_nmk.cjs.map} +1 -1
- package/dist/cjs/{dialog-vkfjga6H.cjs → dialog-BOcxD8Ri.cjs} +2 -2
- package/dist/cjs/{dialog-vkfjga6H.cjs.map → dialog-BOcxD8Ri.cjs.map} +1 -1
- package/dist/cjs/{dialog-B947T7vf.cjs → dialog-DD9hjDmn.cjs} +2 -2
- package/dist/cjs/{dialog-B947T7vf.cjs.map → dialog-DD9hjDmn.cjs.map} +1 -1
- package/dist/cjs/{dialog-BqZgPcm2.cjs → dialog-aRYiTFfI.cjs} +2 -2
- package/dist/cjs/{dialog-BqZgPcm2.cjs.map → dialog-aRYiTFfI.cjs.map} +1 -1
- package/dist/cjs/{edit-6Zmg9aTH.cjs → edit-BL5dngfc.cjs} +2 -2
- package/dist/cjs/{edit-6Zmg9aTH.cjs.map → edit-BL5dngfc.cjs.map} +1 -1
- package/dist/cjs/{index-BM8SqnND.cjs → index-3lwyakW0.cjs} +2 -2
- package/dist/cjs/{index-BM8SqnND.cjs.map → index-3lwyakW0.cjs.map} +1 -1
- package/dist/cjs/{index-CYQny13b.cjs → index-63F98Jtn.cjs} +2 -2
- package/dist/cjs/{index-CYQny13b.cjs.map → index-63F98Jtn.cjs.map} +1 -1
- package/dist/cjs/index-B-Aeexgc.cjs +200 -0
- package/dist/cjs/index-B-Aeexgc.cjs.map +1 -0
- package/dist/cjs/{index-CJiJ6jy7.cjs → index-B1VQXzw4.cjs} +101 -69
- package/dist/cjs/index-B1VQXzw4.cjs.map +1 -0
- package/dist/cjs/{index-DB88N2cP.cjs → index-B7ZJf5GV.cjs} +2 -2
- package/dist/cjs/{index-DB88N2cP.cjs.map → index-B7ZJf5GV.cjs.map} +1 -1
- package/dist/cjs/{index-Bu_g8P0A.cjs → index-Ba7fImfP.cjs} +2 -2
- package/dist/cjs/{index-Bu_g8P0A.cjs.map → index-Ba7fImfP.cjs.map} +1 -1
- package/dist/cjs/{index-BaBoZUBz.cjs → index-Bc2B_X5p.cjs} +2 -2
- package/dist/cjs/index-Bc2B_X5p.cjs.map +1 -0
- package/dist/cjs/{index-BFgkbUEa.cjs → index-BjyJK1r7.cjs} +3 -3
- package/dist/cjs/{index-BFgkbUEa.cjs.map → index-BjyJK1r7.cjs.map} +1 -1
- package/dist/cjs/{index-BIjMV8Hr.cjs → index-BolEvnXh.cjs} +2 -2
- package/dist/cjs/{index-BIjMV8Hr.cjs.map → index-BolEvnXh.cjs.map} +1 -1
- package/dist/cjs/{index-BrZdnq8W.cjs → index-CaCUViDy.cjs} +2 -2
- package/dist/cjs/index-CaCUViDy.cjs.map +1 -0
- package/dist/cjs/{index-64qKudS1.cjs → index-CdtDddiW.cjs} +2 -2
- package/dist/cjs/{index-64qKudS1.cjs.map → index-CdtDddiW.cjs.map} +1 -1
- package/dist/cjs/{index-Dl_nvllQ.cjs → index-Cg0aBXSH.cjs} +2 -2
- package/dist/cjs/{index-Dl_nvllQ.cjs.map → index-Cg0aBXSH.cjs.map} +1 -1
- package/dist/cjs/{index-oxaOb3VO.cjs → index-Cir-kUe5.cjs} +3 -3
- package/dist/cjs/{index-oxaOb3VO.cjs.map → index-Cir-kUe5.cjs.map} +1 -1
- package/dist/cjs/{index-CAZDWsf3.cjs → index-CjULkhHo.cjs} +2 -2
- package/dist/cjs/{index-CAZDWsf3.cjs.map → index-CjULkhHo.cjs.map} +1 -1
- package/dist/cjs/{index-T3Vf8XMJ.cjs → index-DUxljBVo.cjs} +2 -2
- package/dist/cjs/{index-T3Vf8XMJ.cjs.map → index-DUxljBVo.cjs.map} +1 -1
- package/dist/cjs/{index-Dv6z6LqI.cjs → index-DWyoz9uB.cjs} +8 -10
- package/dist/cjs/index-DWyoz9uB.cjs.map +1 -0
- package/dist/cjs/{index-CvN_2DSE.cjs → index-DcyP91fA.cjs} +2 -2
- package/dist/cjs/{index-CvN_2DSE.cjs.map → index-DcyP91fA.cjs.map} +1 -1
- package/dist/cjs/{index-CEHVP61_.cjs → index-DkGZObr_.cjs} +2 -2
- package/dist/cjs/{index-CEHVP61_.cjs.map → index-DkGZObr_.cjs.map} +1 -1
- package/dist/cjs/{index-BLEQMNvQ.cjs → index-DkIRPJAw.cjs} +2 -2
- package/dist/cjs/{index-BLEQMNvQ.cjs.map → index-DkIRPJAw.cjs.map} +1 -1
- package/dist/cjs/{index-YRbQttqL.cjs → index-DrBXbJbx.cjs} +2 -2
- package/dist/cjs/index-DrBXbJbx.cjs.map +1 -0
- package/dist/cjs/{index-9Oy5JtDM.cjs → index-DtsfTu6t.cjs} +2 -2
- package/dist/cjs/{index-9Oy5JtDM.cjs.map → index-DtsfTu6t.cjs.map} +1 -1
- package/dist/cjs/{index-qBBjmPWr.cjs → index-HNgq3w7m.cjs} +2 -2
- package/dist/cjs/{index-qBBjmPWr.cjs.map → index-HNgq3w7m.cjs.map} +1 -1
- package/dist/cjs/{index-C2NSwxxH.cjs → index-MUZMUnyF.cjs} +9 -10
- package/dist/cjs/index-MUZMUnyF.cjs.map +1 -0
- package/dist/cjs/{index-DjP1khaa.cjs → index-Oe0BUapJ.cjs} +2 -2
- package/dist/cjs/{index-DjP1khaa.cjs.map → index-Oe0BUapJ.cjs.map} +1 -1
- package/dist/cjs/{index-DmsVtl33.cjs → index-T1YsHAiR.cjs} +3 -3
- package/dist/cjs/{index-DmsVtl33.cjs.map → index-T1YsHAiR.cjs.map} +1 -1
- package/dist/cjs/{index-BSPRCyGW.cjs → index-bj8-MXln.cjs} +3 -3
- package/dist/cjs/{index-BSPRCyGW.cjs.map → index-bj8-MXln.cjs.map} +1 -1
- package/dist/cjs/{index-Br7b64td.cjs → index-g-sCVX8Y.cjs} +2 -2
- package/dist/cjs/{index-Br7b64td.cjs.map → index-g-sCVX8Y.cjs.map} +1 -1
- package/dist/cjs/{index-Cr2MyczI.cjs → index-gYJKZkJ6.cjs} +3 -3
- package/dist/cjs/{index-Cr2MyczI.cjs.map → index-gYJKZkJ6.cjs.map} +1 -1
- package/dist/cjs/{index-DHbVriDb.cjs → index-h4ZlI0EM.cjs} +2 -2
- package/dist/cjs/{index-DHbVriDb.cjs.map → index-h4ZlI0EM.cjs.map} +1 -1
- package/dist/cjs/{index-x4E7Eggf.cjs → index-rVOOWou_.cjs} +3 -3
- package/dist/cjs/{index-x4E7Eggf.cjs.map → index-rVOOWou_.cjs.map} +1 -1
- package/dist/cjs/{index-Ddqk3hMe.cjs → index-z5P0Kaen.cjs} +2 -2
- package/dist/cjs/{index-Ddqk3hMe.cjs.map → index-z5P0Kaen.cjs.map} +1 -1
- package/dist/cjs/index.js +5 -5
- package/dist/cjs/{index.vue_vue_type_script_setup_true_lang-D8YMnc_N.cjs → index.vue_vue_type_script_setup_true_lang-C4ujB235.cjs} +2 -2
- package/dist/cjs/{index.vue_vue_type_script_setup_true_lang-D8YMnc_N.cjs.map → index.vue_vue_type_script_setup_true_lang-C4ujB235.cjs.map} +1 -1
- package/dist/cjs/{json-editor-DcwX0iMa.cjs → json-editor-BuDPJNoi.cjs} +2 -2
- package/dist/cjs/{json-editor-DcwX0iMa.cjs.map → json-editor-BuDPJNoi.cjs.map} +1 -1
- package/dist/cjs/{markdown-editor-8CPE3qxN.cjs → markdown-editor-VlKQ5rmm.cjs} +2 -2
- package/dist/cjs/{markdown-editor-8CPE3qxN.cjs.map → markdown-editor-VlKQ5rmm.cjs.map} +1 -1
- package/dist/cjs/{normal-BRUVTnIj.cjs → normal-162tp8x5.cjs} +2 -2
- package/dist/cjs/{normal-BRUVTnIj.cjs.map → normal-162tp8x5.cjs.map} +1 -1
- package/dist/cjs/{normal-Dr8AYe2r.cjs → normal-D2713i_m.cjs} +2 -2
- package/dist/cjs/{normal-Dr8AYe2r.cjs.map → normal-D2713i_m.cjs.map} +1 -1
- package/dist/cjs/{permission-manage-DeDXlRil.cjs → permission-manage-DphCZ2al.cjs} +3 -3
- package/dist/cjs/{permission-manage-DeDXlRil.cjs.map → permission-manage-DphCZ2al.cjs.map} +1 -1
- package/dist/cjs/{resource-select-input-DK-y2auR.cjs → resource-select-input-iHLmmMyn.cjs} +2 -2
- package/dist/cjs/{resource-select-input-DK-y2auR.cjs.map → resource-select-input-iHLmmMyn.cjs.map} +1 -1
- package/dist/cjs/style.css +3 -1
- package/dist/cjs/{table-C3yMZ6mu.cjs → table-gztffYjX.cjs} +2 -2
- package/dist/cjs/{table-C3yMZ6mu.cjs.map → table-gztffYjX.cjs.map} +1 -1
- package/dist/esm/{404-D5XFfiHo.js → 404-CW_9KTBN.js} +2 -2
- package/dist/esm/{404-D5XFfiHo.js.map → 404-CW_9KTBN.js.map} +1 -1
- package/dist/esm/{article-edit-add-page-AeJ2loBa.js → article-edit-add-page-BxbovMjH.js} +3 -3
- package/dist/esm/{article-edit-add-page-AeJ2loBa.js.map → article-edit-add-page-BxbovMjH.js.map} +1 -1
- package/dist/esm/{cms-settings-DHQmoLKI.js → cms-settings-3ysZKNMa.js} +2 -2
- package/dist/esm/{cms-settings-DHQmoLKI.js.map → cms-settings-3ysZKNMa.js.map} +1 -1
- package/dist/esm/{dialog-BQtjgY66.js → dialog-CoFIYAyR.js} +2 -2
- package/dist/esm/{dialog-BQtjgY66.js.map → dialog-CoFIYAyR.js.map} +1 -1
- package/dist/esm/{dialog-CPR8_y9H.js → dialog-DknjQoA1.js} +2 -2
- package/dist/esm/{dialog-CPR8_y9H.js.map → dialog-DknjQoA1.js.map} +1 -1
- package/dist/esm/{dialog-Cb7Lps0k.js → dialog-E7M9atVV.js} +2 -2
- package/dist/esm/{dialog-Cb7Lps0k.js.map → dialog-E7M9atVV.js.map} +1 -1
- package/dist/esm/{edit-Bk7te-2r.js → edit-BM-Do19m.js} +2 -2
- package/dist/esm/{edit-Bk7te-2r.js.map → edit-BM-Do19m.js.map} +1 -1
- package/dist/esm/{index-Cxr1pm2r.js → index-6pZHgXtY.js} +3 -3
- package/dist/esm/{index-Cxr1pm2r.js.map → index-6pZHgXtY.js.map} +1 -1
- package/dist/esm/{index-CPBRsmn3.js → index-B7V4NKgm.js} +2 -2
- package/dist/esm/{index-CPBRsmn3.js.map → index-B7V4NKgm.js.map} +1 -1
- package/dist/esm/index-BFKVNCwz.js +200 -0
- package/dist/esm/index-BFKVNCwz.js.map +1 -0
- package/dist/esm/{index-pWRDGnCA.js → index-BQuQ8jEs.js} +2 -2
- package/dist/esm/{index-pWRDGnCA.js.map → index-BQuQ8jEs.js.map} +1 -1
- package/dist/esm/{index-C-nug2my.js → index-BUQ8XMhN.js} +2 -2
- package/dist/esm/{index-C-nug2my.js.map → index-BUQ8XMhN.js.map} +1 -1
- package/dist/esm/{index-Bus0Ed53.js → index-C2Y6k5VU.js} +2 -2
- package/dist/esm/{index-Bus0Ed53.js.map → index-C2Y6k5VU.js.map} +1 -1
- package/dist/esm/{index-mNJ5Nh1F.js → index-CAmafqoX.js} +3 -3
- package/dist/esm/{index-mNJ5Nh1F.js.map → index-CAmafqoX.js.map} +1 -1
- package/dist/esm/{index-CYsTe22K.js → index-CKR8AVN2.js} +3 -3
- package/dist/esm/{index-CYsTe22K.js.map → index-CKR8AVN2.js.map} +1 -1
- package/dist/esm/{index-Cx70jXqW.js → index-CZ8jfaGv.js} +3 -3
- package/dist/esm/{index-Cx70jXqW.js.map → index-CZ8jfaGv.js.map} +1 -1
- package/dist/esm/{index-DulOSNCq.js → index-CdTUER4F.js} +2 -2
- package/dist/esm/{index-DulOSNCq.js.map → index-CdTUER4F.js.map} +1 -1
- package/dist/esm/{index-mq3nYYwD.js → index-ClxRVkUv.js} +275 -243
- package/dist/esm/index-ClxRVkUv.js.map +1 -0
- package/dist/esm/{index-BZDkvIT8.js → index-CpVtmerJ.js} +2 -2
- package/dist/esm/{index-BZDkvIT8.js.map → index-CpVtmerJ.js.map} +1 -1
- package/dist/esm/{index-BZ4nk74T.js → index-CuoLNqsR.js} +2 -2
- package/dist/esm/{index-BZ4nk74T.js.map → index-CuoLNqsR.js.map} +1 -1
- package/dist/esm/{index-Y7lD4xpK.js → index-Cw4Br85S.js} +2 -2
- package/dist/esm/index-Cw4Br85S.js.map +1 -0
- package/dist/esm/{index-B0JN-XM8.js → index-D9OxO5-n.js} +2 -2
- package/dist/esm/{index-B0JN-XM8.js.map → index-D9OxO5-n.js.map} +1 -1
- package/dist/esm/{index-84gxgRCL.js → index-DH4urB62.js} +2 -2
- package/dist/esm/{index-84gxgRCL.js.map → index-DH4urB62.js.map} +1 -1
- package/dist/esm/{index-WK-zyRhV.js → index-DNqEddef.js} +2 -2
- package/dist/esm/index-DNqEddef.js.map +1 -0
- package/dist/esm/{index-8H_Cvlt6.js → index-DRv4tRm_.js} +2 -2
- package/dist/esm/{index-8H_Cvlt6.js.map → index-DRv4tRm_.js.map} +1 -1
- package/dist/esm/{index-D0XxzoBI.js → index-DVprQ057.js} +2 -2
- package/dist/esm/{index-D0XxzoBI.js.map → index-DVprQ057.js.map} +1 -1
- package/dist/esm/{index-B4r9F3Zh.js → index-D_72zZcS.js} +2 -2
- package/dist/esm/index-D_72zZcS.js.map +1 -0
- package/dist/esm/{index-CvV8qbPg.js → index-DbE9AANc.js} +2 -2
- package/dist/esm/{index-CvV8qbPg.js.map → index-DbE9AANc.js.map} +1 -1
- package/dist/esm/{index-Cmc71fzA.js → index-Dh0Vib2I.js} +2 -2
- package/dist/esm/{index-Cmc71fzA.js.map → index-Dh0Vib2I.js.map} +1 -1
- package/dist/esm/{index-B0iifroA.js → index-Dt4bQBBJ.js} +9 -10
- package/dist/esm/index-Dt4bQBBJ.js.map +1 -0
- package/dist/esm/{index-BSvkrpO1.js → index-Dtte-7PW.js} +9 -11
- package/dist/esm/index-Dtte-7PW.js.map +1 -0
- package/dist/esm/{index-DCRMtVnn.js → index-DvMY_TAx.js} +2 -2
- package/dist/esm/{index-DCRMtVnn.js.map → index-DvMY_TAx.js.map} +1 -1
- package/dist/esm/{index-VZNiNwyo.js → index-Dw_8CNLO.js} +2 -2
- package/dist/esm/{index-VZNiNwyo.js.map → index-Dw_8CNLO.js.map} +1 -1
- package/dist/esm/{index-CpnOCrKn.js → index-Rs0Y4chB.js} +2 -2
- package/dist/esm/{index-CpnOCrKn.js.map → index-Rs0Y4chB.js.map} +1 -1
- package/dist/esm/{index-ELFtoTxz.js → index-Wod-kleB.js} +3 -3
- package/dist/esm/{index-ELFtoTxz.js.map → index-Wod-kleB.js.map} +1 -1
- package/dist/esm/{index-_hBIn8hO.js → index-ZsmNUCj7.js} +2 -2
- package/dist/esm/{index-_hBIn8hO.js.map → index-ZsmNUCj7.js.map} +1 -1
- package/dist/esm/{index-p8vYirVH.js → index-aRsrq1KN.js} +2 -2
- package/dist/esm/{index-p8vYirVH.js.map → index-aRsrq1KN.js.map} +1 -1
- package/dist/esm/{index-CgCwBVWj.js → index-vHGC9cSD.js} +3 -3
- package/dist/esm/{index-CgCwBVWj.js.map → index-vHGC9cSD.js.map} +1 -1
- package/dist/esm/index.js +176 -176
- package/dist/esm/{index.vue_vue_type_script_setup_true_lang-Bfxqixud.js → index.vue_vue_type_script_setup_true_lang-B9tW53id.js} +2 -2
- package/dist/esm/{index.vue_vue_type_script_setup_true_lang-Bfxqixud.js.map → index.vue_vue_type_script_setup_true_lang-B9tW53id.js.map} +1 -1
- package/dist/esm/{json-editor-wqz1RgJf.js → json-editor-CQkxKSXs.js} +2 -2
- package/dist/esm/{json-editor-wqz1RgJf.js.map → json-editor-CQkxKSXs.js.map} +1 -1
- package/dist/esm/{markdown-editor-DI3xA77v.js → markdown-editor-gKhIB3Bf.js} +2 -2
- package/dist/esm/{markdown-editor-DI3xA77v.js.map → markdown-editor-gKhIB3Bf.js.map} +1 -1
- package/dist/esm/{normal-BSDfzy52.js → normal-BX6dhg2W.js} +2 -2
- package/dist/esm/{normal-BSDfzy52.js.map → normal-BX6dhg2W.js.map} +1 -1
- package/dist/esm/{normal-kBdt-_xr.js → normal-W9IqF1DG.js} +2 -2
- package/dist/esm/{normal-kBdt-_xr.js.map → normal-W9IqF1DG.js.map} +1 -1
- package/dist/esm/{permission-manage-B7Gr83rb.js → permission-manage-CGSDXzZP.js} +3 -3
- package/dist/esm/{permission-manage-B7Gr83rb.js.map → permission-manage-CGSDXzZP.js.map} +1 -1
- package/dist/esm/{resource-select-input-Cm9nIaHj.js → resource-select-input-BHZ9ndaS.js} +2 -2
- package/dist/esm/{resource-select-input-Cm9nIaHj.js.map → resource-select-input-BHZ9ndaS.js.map} +1 -1
- package/dist/esm/style.css +3 -1
- package/dist/esm/{table-BeLB_exN.js → table-DJQh65QP.js} +2 -2
- package/dist/esm/{table-BeLB_exN.js.map → table-DJQh65QP.js.map} +1 -1
- package/dist/types/components/data-model/data-form/components/form-detail/form-detail.vue.d.ts +39 -0
- package/dist/types/components/data-model/data-form/components/form-detail/index.d.ts +2 -2
- package/dist/types/layouts/new/ui-kit/HDialog.vue.d.ts +1 -0
- package/package.json +3 -3
- package/dist/cjs/index-BaBoZUBz.cjs.map +0 -1
- package/dist/cjs/index-BrZdnq8W.cjs.map +0 -1
- package/dist/cjs/index-C2NSwxxH.cjs.map +0 -1
- package/dist/cjs/index-CJiJ6jy7.cjs.map +0 -1
- package/dist/cjs/index-Cw_e9O7Z.cjs +0 -167
- package/dist/cjs/index-Cw_e9O7Z.cjs.map +0 -1
- package/dist/cjs/index-Dv6z6LqI.cjs.map +0 -1
- package/dist/cjs/index-YRbQttqL.cjs.map +0 -1
- package/dist/esm/index-B0iifroA.js.map +0 -1
- package/dist/esm/index-B4r9F3Zh.js.map +0 -1
- package/dist/esm/index-BSvkrpO1.js.map +0 -1
- package/dist/esm/index-WK-zyRhV.js.map +0 -1
- package/dist/esm/index-Y7lD4xpK.js.map +0 -1
- package/dist/esm/index-mq3nYYwD.js.map +0 -1
- package/dist/esm/index-pzNnwUiS.js +0 -167
- package/dist/esm/index-pzNnwUiS.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-oxaOb3VO.cjs","sources":["../../src/modules/cms/components/part-tree/index.vue","../../src/modules/cms/components/part-tree/index.ts","../../src/modules/cms/pages/cms-contents/components/article-list.vue","../../src/modules/cms/pages/cms-contents/components/part-info.vue","../../src/modules/cms/pages/cms-contents/components/part-banner.vue","../../src/modules/cms/pages/cms-contents/components/part-banner-edit.vue","../../src/modules/cms/pages/cms-contents/index.vue"],"sourcesContent":["<template>\r\n <div class=\"cms-part-tree\">\r\n <div class=\"cms-part-tree__header\">\r\n <div>\r\n <MKSvgIcon name=\"ep:notebook\" />\r\n 栏目\r\n </div>\r\n <el-switch v-model=\"isDrag\" inline-prompt active-text=\"开启排序\"\r\n inactive-text=\"关闭排序\" />\r\n </div>\r\n <div class=\"cms-part-tree__body\">\r\n <ElScrollbar style=\"height: 100%;\">\r\n <MKDataTable :auto-load=\"true\" :data-table=\"dataTree\" highlight-current>\r\n <MKTree :data-tree=\"dataTree\" @nodeClick=\"selectPart\" defaultExpandAll :draggable=\"isDrag\" ref=\"treeRef\" :currentNodeKey=\"selectNodeId\">\r\n <template #node-main=\"{ data }\">\r\n {{ data.data.title }}\r\n </template>\r\n <template #node-tools=\"{ data }\">\r\n <el-dropdown>\r\n <ElIcon>\r\n <MoreFilled />\r\n </ElIcon>\r\n <template #dropdown>\r\n <el-dropdown-menu>\r\n <el-dropdown-item :icon=\"Edit\" @click=\"handleEditClick(data.data)\">编辑</el-dropdown-item>\r\n <el-dropdown-item :icon=\"Delete\" @click=\"handleDeleteClick(data.data)\">删除</el-dropdown-item>\r\n <el-dropdown-item v-if=\"data.data.cmsPartTypeId != 1\" :icon=\"Plus\"\r\n @click=\"handleAddClick(data.data)\">添加子菜单</el-dropdown-item>\r\n </el-dropdown-menu>\r\n </template>\r\n </el-dropdown>\r\n </template>\r\n </MKTree>\r\n </MKDataTable>\r\n </ElScrollbar>\r\n </div>\r\n </div>\r\n</template>\r\n<script setup lang='ts'>\r\nimport { ElMessageBox, ElScrollbar } from \"element-plus\"\r\nimport { Plus, Edit, Delete, MoreFilled } from \"@element-plus/icons-vue\";\r\nimport { reactive, defineProps, watch, defineEmits, ref } from \"vue\";\r\nimport { MKDataTable, MKTree } from \"../../../../components/data-model/data-table\"\r\nimport { CmsPartTree } from \"../../dataviews\";\r\nimport { useI18n } from \"../../../../composables\";\r\nimport { DataTreeNode } from \"@maketribe/dm\";\r\nimport {MKSvgIcon} from \"../../../../components/basic\";\r\n\r\ndefineOptions({ name: \"MKPartTree\" });\r\nconst treeRef = ref(null);\r\n// 配置选项\r\nconst optionSettings = defineProps<{\r\n curSelectId?:string|undefined\r\n}>();\r\n\r\n// 事件定义\r\nconst emit = defineEmits([\"edit\", \"add\", \"deleteSuccessfully\", \"select\"]);\r\n\r\nconst i18n = useI18n()!;\r\nconst dataTree = reactive(new CmsPartTree()) as CmsPartTree;\r\n\r\nconst isDrag = ref(false)\r\n\r\nconst selectNodeId = ref(optionSettings.curSelectId);\r\n\r\nwatch(()=>optionSettings.curSelectId,()=>{\r\n selectNodeId.value = optionSettings.curSelectId\r\n})\r\n\r\n// 监听数据变化\r\ndataTree.listChangeEvent.on(() => {\r\n\r\n const list = dataTree.getList();\r\n\r\n if (list.length > 0) {\r\n //默认选择第一条\r\n if(!selectNodeId.value){ selectNodeId.value = list[0].id; }\r\n\r\n for(let i=0;i<list.length;i++){\r\n\r\n let item = list[i]\r\n \r\n if(item.id == selectNodeId.value){\r\n emit(\"select\", item);\r\n break;\r\n }\r\n item.children?.forEach((child:any)=>list.push(child))\r\n\r\n }\r\n }\r\n})\r\n\r\n/**\r\n * 点击添加栏目按钮\r\n * @param item \r\n */\r\nconst handleAddClick = (item: any) => {\r\n emit(\"add\", item);\r\n}\r\n\r\n/**\r\n * 编辑栏目\r\n * @param item \r\n */\r\nconst handleEditClick = (item: any) => {\r\n emit(\"edit\", item);\r\n}\r\n/**\r\n * 删除栏目\r\n * @param item \r\n */\r\nconst handleDeleteClick = async (item: any) => {\r\n // 删除提示\r\n const isConfirm = await ElMessageBox.confirm(\r\n i18n.translate(\"mk.dataTablePage.deleteMessage\"),\r\n i18n.translate(\"mk.dataTablePage.deleteTitle\"),\r\n { type: \"warning\" }\r\n )\r\n\r\n if (!isConfirm) {\r\n return;\r\n }\r\n const result = await dataTree.deleteAfterRefresh(item.id);\r\n if (result.data.code == 200) {\r\n emit('deleteSuccessfully', item)\r\n }\r\n}\r\n\r\n/**\r\n * 选择栏目\r\n * @param data \r\n */\r\nconst selectPart = (data: DataTreeNode) => {\r\n emit(\"select\", data.data);\r\n}\r\n\r\ndefineExpose({ dataTree });\r\n\r\n\r\n</script>\r\n","import { withInstall } from \"@maketribe/utils\";\r\nimport PartTree from \"./index.vue\";\r\n\r\nexport const MKPartTree = withInstall(PartTree);\r\nexport default MKPartTree;\r\n","<template>\r\n <MKDataTable :data-table=\"articlesDv\" :auto-load=\"false\" class=\"mk-cms-article-list\">\r\n <el-empty v-if=\"part && part.cmsPartTypeId == 1\" description=\"外链栏目下无文章内容\" />\r\n <MKTableView v-else-if=\"part\" :data-table=\"articlesDv\">\r\n <el-scrollbar class=\"mk-cms-article-list__content\" style=\"box-sizing: border-box;font-size: 0;\"\r\n v-if=\"articlesDv.getList().length > 0\">\r\n <el-card class=\"mk-cms-article-list__item\" v-for=\"article in articlesDv.getList()\" :key=\"article.id\">\r\n <div class=\"mk-cms-article-list__item__content\">\r\n <div class=\"left\">\r\n <el-image class=\"cover-image\" :src=\"article.cover\" fit=\"contain\">\r\n <template #error>\r\n <MKSvgIcon iconClass=\"Picture\" />\r\n </template>\r\n </el-image>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"top\">\r\n <div class=\"title\" :title=\"article.title\"> {{ article.title }}</div>\r\n <div class=\"tags\">\r\n <el-tag class=\"tag\" v-if=\"CmsSettings.content.useTop && article.isTop == 1\"\r\n @click=\"changeArticleStatus(article, 'isTop', 0)\">置顶</el-tag>\r\n <el-tag class=\"tag\" v-if=\"CmsSettings.content.useNew && article.isNew == 1\"\r\n @click=\"changeArticleStatus(article, 'isNew', 0)\">最新</el-tag>\r\n <el-tag class=\"tag\" v-if=\"CmsSettings.content.useHotRecommend && article.isHotRecommend == 1\"\r\n @click=\"changeArticleStatus(article, 'isHotRecommend', 0)\">热门推荐</el-tag>\r\n <el-tag class=\"tag\" v-if=\"CmsSettings.content.usePartRecommend && article.isPartRecommend == 1\"\r\n @click=\"changeArticleStatus(article, 'isPartRecommend', 0)\">栏目推荐</el-tag>\r\n </div>\r\n </div>\r\n <div class=\"sub-title\" v-if=\"article.subTitle\" :title=\"article.subTitle\"> {{ article.subTitle }}</div>\r\n <div class=\"desc\">\r\n {{ article.desc }}\r\n </div>\r\n <div class=\"footer\">\r\n <div class=\"ext\">\r\n <div class=\"author\">\r\n <MKSvgIcon iconClass=\"UserFilled\"></MKSvgIcon>\r\n 作者 : {{ article.author || \"-\" }}\r\n </div>\r\n <div class=\"publish-time\" v-if=\"article.releaseDate\">\r\n <MKSvgIcon iconClass=\"Timer\"></MKSvgIcon>\r\n 新闻日期 : {{ article.releaseDate }}\r\n </div>\r\n </div>\r\n <div class=\"tools\">\r\n <el-button type=\"primary\" size=\"large\" @click=\"editArticleHandle(article)\" text>\r\n 编辑\r\n </el-button>\r\n <el-button type=\"danger\" size=\"large\" @click=\"deleteArticleHandle(article)\" text>\r\n 删除\r\n </el-button>\r\n <!-- <a v-if=\"CmsSettings.publish.mode == 'static' && article.url\" :href=\"article.url\" target=\"_blank\">\r\n <el-button type=\"primary\" size=\"large\" text>访问</el-button>\r\n </a> -->\r\n <a :href=\"'/api/cms/content/preview/content/' + article.cmsPartId + '/' + article.id\"\r\n v-if=\"CmsSettings.publish.mode == 'static'\" target=\"_blank\">\r\n <el-button type=\"primary\" size=\"large\" text>预览</el-button>\r\n </a>\r\n <el-dropdown>\r\n <el-button type=\"primary\" size=\"large\" text>\r\n 更多\r\n </el-button>\r\n <template #dropdown>\r\n <el-dropdown-menu>\r\n <el-dropdown-item v-if=\"CmsSettings.publish.mode == 'static' && article.url\">\r\n <a style=\"text-decoration: none;color: #606266;\"\r\n v-if=\"CmsSettings.publish.mode == 'static' && article.url\" :href=\"article.url\"\r\n target=\"_blank\">\r\n 访问\r\n </a>\r\n </el-dropdown-item>\r\n <el-dropdown-item @click=\"publishArticleHandle(article)\">\r\n 发布\r\n </el-dropdown-item>\r\n <el-dropdown-item v-if=\"CmsSettings.content.useTop && article.isTop == 0\"\r\n @click=\"changeArticleStatus(article, 'isTop', 1)\">设为置顶</el-dropdown-item>\r\n <el-dropdown-item v-if=\"CmsSettings.content.useNew && article.isNew == 0\"\r\n @click=\"changeArticleStatus(article, 'isNew', 1)\">设为最新</el-dropdown-item>\r\n <el-dropdown-item v-if=\"CmsSettings.content.useHotRecommend && article.isHotRecommend == 0\"\r\n @click=\"changeArticleStatus(article, 'isHotRecommend', 1)\">设为热门推荐</el-dropdown-item>\r\n <el-dropdown-item v-if=\"CmsSettings.content.usePartRecommend && article.isPartRecommend == 0\"\r\n @click=\"changeArticleStatus(article, 'isPartRecommend', 1)\">设为栏目推荐</el-dropdown-item>\r\n </el-dropdown-menu>\r\n </template>\r\n </el-dropdown>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </el-card>\r\n </el-scrollbar>\r\n <el-empty v-if=\"articlesDv.getList().length <= 0\" description=\"暂无文章内容\" />\r\n </MKTableView>\r\n </MKDataTable>\r\n</template>\r\n<script setup lang='ts'>\r\nimport { MKTableView } from \"../../../../../components\"\r\nimport { CmsArticlesTable, CmsArticlesForm } from \"../../../dataviews\"\r\nimport { reactive, defineProps, watch, onMounted } from \"vue\";\r\nimport { Dialoger, isWhereFilter, Messager } from '@maketribe/dm'\r\nimport { useRouter } from \"vue-router\";\r\nimport { useCmsSettings } from \"../../../cms-settings\"\r\n// cms 配置\r\nconst CmsSettings = useCmsSettings();\r\n\r\n// 文章\r\nconst articlesDv = reactive(new CmsArticlesTable()) as CmsArticlesTable;\r\n// 发布文章表单\r\nconst articleForm = reactive(new CmsArticlesForm()) as CmsArticlesForm;\r\n// 草稿文章\r\nconst draftArticleForm = reactive(new CmsArticlesForm()) as CmsArticlesForm;\r\n\r\n// 参数\r\nconst props = defineProps({\r\n part: { type: Object, default: null }\r\n})\r\n\r\nconst router = useRouter();\r\n\r\n//改变文章指定,最新,推荐状态\r\nconst changeArticleStatus = async (article: any, item: string, status: number) => {\r\n const text: Record<string, string[]> = {\r\n \"isTop\": ['取消置顶', '设为置顶'],\r\n \"isNew\": ['取消最新', '设为最新'],\r\n \"isHotRecommend\": ['取消热门推荐', '设为热门推荐'],\r\n \"isPartRecommend\": ['取消栏目推荐', '设为栏目推荐'],\r\n }\r\n\r\n const isConfirm = await Dialoger.confirm({\r\n title: \"修改文章状态\",\r\n message: `是否${text[item][status]}?`,\r\n type: \"warning\"\r\n })\r\n if (!isConfirm) {\r\n return\r\n }\r\n try {\r\n\r\n articlesDv.getLoadingManager().startLoading();\r\n await articleForm.editRecord(article.id)\r\n const isSuccess = await articleForm.simpleSubmit({\r\n id: article.id,\r\n [item]: status\r\n })\r\n\r\n if (isSuccess) {\r\n articlesDv.load();\r\n }\r\n } finally {\r\n articlesDv.getLoadingManager().completeLoading();\r\n }\r\n\r\n\r\n}\r\n\r\n// 初始化\r\nonMounted(() => {\r\n articleForm.init();\r\n draftArticleForm.init();\r\n\r\n // 监听栏目数据变化\r\n watch(() => props.part, (item: any) => {\r\n if (item.cmsPartTypeId != 1) {\r\n \r\n const dataFilter = articlesDv.dataFilter;\r\n\r\n if (isWhereFilter(dataFilter)) {\r\n\r\n const defaultGroup = dataFilter.getDefaultGroup();\r\n\r\n defaultGroup.clear();\r\n defaultGroup.addCondition(\"cmsPartId\", \"=\", item.id);\r\n // 只查草稿\r\n defaultGroup.addCondition(\"isDraft\", \"=\", 1);\r\n }\r\n\r\n articlesDv.load()\r\n }\r\n }, { immediate: true })\r\n})\r\n\r\n/**\r\n * 删除文章\r\n */\r\nconst deleteArticleHandle = async (item: any) => {\r\n const isConfirm = await Dialoger.confirm({\r\n title: \"删除文章?\",\r\n message: \"是否删除文章?\",\r\n type: \"warning\"\r\n })\r\n\r\n if (!isConfirm) { return; }\r\n await articlesDv.deleteAfterRefresh(item.id);\r\n}\r\n\r\n/**\r\n * 编辑文章\r\n */\r\nconst editArticleHandle = (item: any, isEdit = false) => {\r\n router.push({ path: \"/cms/article\", query: { id: isEdit ? undefined : item.id, partId: isEdit ? item.id : undefined } })\r\n}\r\n\r\n// 添加记录\r\narticlesDv.addRecordEvent.on(() => editArticleHandle(props.part, true))\r\n\r\n/**\r\n * fault文章\r\n * @param article \r\n */\r\nconst publishArticleHandle = async (article: any) => {\r\n\r\n try {\r\n\r\n if (await Dialoger.confirm({ title: \"文章发布\", message: \"是否发布文章?\", type: \"warning\" })) {\r\n\r\n articlesDv.getLoadingManager().startLoading();\r\n\r\n // 调用发布接口\r\n const response: any = await CmsArticlesForm.publish(CmsSettings.publish.mode, article.cmsPartId, article.id);\r\n\r\n if (response.data.code !== 200) {\r\n Messager.error({ message: response.data.msg });\r\n return;\r\n }\r\n\r\n Messager.success({ message: \"发布成功\" });\r\n }\r\n\r\n } finally {\r\n articlesDv.getLoadingManager().completeLoading();\r\n }\r\n}\r\n\r\n\r\n</script>\r\n","<template>\r\n <div class=\"mk-cms-part-info\">\r\n <MKDataForm :dataForm=\"partDataForm\" style=\"height: 100%;\">\r\n <MKForm :dataForm=\"partDataForm\">\r\n <div class=\"mk-cms-part-info__body__form\">\r\n <div class=\"mk-cms-part-info__body__form-options\">\r\n <ElScrollbar>\r\n <MKDataFormItem name=\"cmsPartTypeId\" v-if=\"hideHandle('cmsPartTypeId')\"></MKDataFormItem>\r\n <MKDataFormItem name=\"parentId\" v-if=\"hideHandle('parentId')\"></MKDataFormItem>\r\n <MKDataFormItem name=\"cmsCoverArticleId\" v-if=\"hideHandle('cmsCoverArticleId')\">\r\n </MKDataFormItem>\r\n <MKDataFormItem name=\"title\" v-if=\"hideHandle('title')\"></MKDataFormItem>\r\n <MKDataFormItem name=\"name\" v-if=\"hideHandle('name')\"></MKDataFormItem>\r\n <MKDataFormItem name=\"externalLink\" v-if=\"hideHandle('externalLink')\">\r\n </MKDataFormItem>\r\n <el-row :gutter=\"22\" justify=\"space-between\">\r\n <el-col :span=\"10\" v-if=\"hideHandle('isShowMenu')\">\r\n <MKDataFormItem name=\"isShowMenu\"></MKDataFormItem>\r\n </el-col>\r\n <el-col :span=\"10\" v-if=\"hideHandle('isHome')\">\r\n <MKDataFormItem name=\"isHome\"></MKDataFormItem>\r\n </el-col>\r\n </el-row>\r\n <template v-if=\"CmsSettings.publish.mode == 'static'\">\r\n <el-divider content-position=\"left\" v-if=\"hideHandle('coverRouter')\">路由配置</el-divider>\r\n <MKDataFormItem name=\"coverRouter\" v-if=\"hideHandle('coverRouter')\"></MKDataFormItem>\r\n <MKDataFormItem name=\"listRouter\" v-if=\"hideHandle('listRouter')\"></MKDataFormItem>\r\n <MKDataFormItem name=\"contentRouter\" v-if=\"hideHandle('contentRouter')\"></MKDataFormItem>\r\n <el-divider content-position=\"left\" v-if=\"hideHandle('coverTemplate')\">模版配置</el-divider>\r\n <MKDataFormItem name=\"coverTemplate\" v-if=\"hideHandle('coverTemplate')\"></MKDataFormItem>\r\n <MKDataFormItem name=\"listTemplate\" v-if=\"hideHandle('listTemplate')\"></MKDataFormItem>\r\n <MKDataFormItem name=\"contentTemplate\" v-if=\"hideHandle('contentTemplate')\">\r\n </MKDataFormItem>\r\n <el-divider content-position=\"left\" v-if=\"hideHandle('seoKeywords')\">SEO</el-divider>\r\n <MKDataFormItem name=\"seoKeywords\" v-if=\"hideHandle('seoKeywords')\"></MKDataFormItem>\r\n <MKDataFormItem name=\"seoDesc\" v-if=\"hideHandle('seoDesc')\"></MKDataFormItem>\r\n </template>\r\n \r\n </ElScrollbar>\r\n </div>\r\n </div>\r\n </MKForm>\r\n </MKDataForm>\r\n </div>\r\n</template>\r\n<script setup lang=\"ts\">\r\nimport { MKDataForm, MKForm, MKDataFormItem } from \"../../../../../components\";\r\nimport { CmsPartForm } from \"../../../dataviews/cms-parts/CmsPartForm\";\r\nimport { computed, reactive, Ref, watch } from \"vue\";\r\nimport { useCmsSettings } from \"../../../cms-settings\"\r\n// cms 配置\r\nconst CmsSettings = useCmsSettings();\r\nconst props = defineProps({\r\n part: {\r\n type: Object,\r\n default: () => {\r\n return {}\r\n }\r\n },\r\n partDataForm: {\r\n type: CmsPartForm,\r\n default: () => {\r\n return new CmsPartForm()\r\n }\r\n }\r\n})\r\n\r\n//监听保存成功事件\r\n// props.partDataForm.submittedEvent.on(() => {\r\n// props.partDataForm.editRecord(props.part.id)\r\n// })\r\n\r\n/**\r\n * 需要隐藏的行\r\n */\r\nconst hideHandle = (name: string) => {\r\n if (props.partDataForm.data.cmsPartTypeId == 1 && CmsPartForm.outerChainHideColumn.includes(name)) {\r\n return false;\r\n } \r\n else if (props.partDataForm.data.cmsPartTypeId == 2 && CmsPartForm.contentHideColumn.includes(name)) {\r\n return false;\r\n } \r\n else if (props.partDataForm.data.cmsPartTypeId == 3 && CmsPartForm.menuHideColumn.includes(name)) {\r\n props.partDataForm.data.isShowMenu = 1;\r\n return false;\r\n } \r\n else {\r\n return true;\r\n }\r\n}\r\n\r\n\r\n</script>\r\n<style lang='scss'></style>\r\n","<template>\r\n <div v-loading=\"loading\">\r\n <el-carousel v-if=\"partAdBanner && partAdBanner.contents?.length\" :autoplay=\"false\" :height=\"partAdBannerHeight\"\r\n arrow=\"always\" ref=\"carouselRef\">\r\n <el-carousel-item v-for=\"item in partAdBanner.contents\" :key=\"item.id\">\r\n <div class=\"mk-cms-part-banner__list_item\">\r\n <div class=\"mk-cms-part-banner__list_content\">\r\n <el-image class=\"mk-cms-part-banner__list_content_img\" v-if=\"item.type == 1\" :src=\"item.path\" fit=\"cover\"\r\n tyle=\"width: 100%;height: 100%;\">\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\" style=\"width: 100%;height: 100%;\"\r\n controls></video>\r\n </div>\r\n <div class=\"mk-cms-part-banner__list_bottom\">\r\n <div class=\"mk-cms-part-banner__list_title\">{{ item.title }}</div>\r\n <div>{{ item.desc }}</div>\r\n </div>\r\n <div class=\"mk-cms-part-banner__list_action-mask\">\r\n <el-button type=\"primary\" style=\"margin-left: 10px;\" :icon=\"EditPen\" @click=\"showAdContentHandle(item.id)\">\r\n 编辑当前轮播素材\r\n </el-button>\r\n <el-button type=\"primary\" style=\"margin-left: 10px;\" :icon=\"Plus\" @click=\"showAdContentHandle(null)\">\r\n 添加新轮播素材\r\n </el-button>\r\n <el-button type=\"primary\" style=\"margin-left: 10px;\" :icon=\"EditPen\" @click=\"showAdDefineHandle()\">\r\n 设置素材显示尺寸\r\n </el-button>\r\n <el-button type=\"danger\" style=\"margin-left: 10px;\" :icon=\"Delete\" @click=\"deleteAdContentHandle(item.id)\">\r\n 删除当前素材\r\n </el-button>\r\n </div>\r\n </div>\r\n </el-carousel-item>\r\n </el-carousel>\r\n <el-empty v-else :image-size=\"80\" :style=\"{ height: partAdBannerHeight }\">\r\n <template #description>\r\n <el-text>暂无{{ title }}轮播素材数据</el-text>\r\n <el-button type=\"primary\" text style=\"margin-left: 10px;\" :icon=\"Plus\" @click=\"showAdDefineHandle()\">\r\n 设置素材显示尺寸\r\n </el-button>\r\n <el-button type=\"primary\" text style=\"margin-left: 10px;\" :icon=\"Plus\" @click=\"showAdContentHandle(null)\">\r\n 添加\r\n </el-button>\r\n </template>\r\n </el-empty>\r\n </div>\r\n</template>\r\n<script setup lang=\"ts\">\r\nimport { useCmsSettings } from \"../../../cms-settings\"\r\nimport { onMounted, reactive, ref, watch, defineProps, computed } from \"vue\";\r\nimport { DataViewRequest, DVQueryable, Where } from \"@maketribe/request\";\r\nimport { Dialoger, Messager } from \"@maketribe/dm\";\r\nimport { CmsAdContentsForm, CmsAdDefinesForm } from \"../../../dataviews\";\r\nimport { EditPen, Plus, Delete } from \"@element-plus/icons-vue\"\r\n\r\nconst props = defineProps({ adkey: { type: String }, title: { type: String }, deviceValue: { type: String, default: \"\" }, viewWidth: { type: Number } })\r\n\r\n// 广告定义数据表\r\nconst adRequest = new DataViewRequest({ name: \"ad-define\", moduleName: \"cms\" });\r\nconst adContentRequest = new DataViewRequest({ name: \"ad-content\", moduleName: \"cms\" });\r\n// cms 配置\r\nconst cmsSettings = useCmsSettings();\r\n// 栏目广告\r\nconst partAdBanner = ref<any | null>(null);\r\nconst loading = ref(true);\r\nconst adContentForm = reactive<CmsAdContentsForm>(new CmsAdContentsForm({ cutSise: cmsSettings.part.bannerImageSize }))\r\nconst adDefineForm = reactive<CmsAdDefinesForm>(new CmsAdDefinesForm())\r\nconst warpRef = ref<any | null>(null);\r\n// 计算广告的高度\r\nconst partAdBannerHeight = computed(() => {\r\n\r\n // 全局Banner尺寸信息\r\n const sizes = cmsSettings.part.bannerImageSize.split(\"*\") as Array<any>;\r\n\r\n // 宽高比\r\n let widthHeightRatio = 0;\r\n\r\n //设定的比例\r\n if (!!partAdBanner.value?.width && !!partAdBanner.value?.height) {\r\n widthHeightRatio = partAdBanner.value.width / partAdBanner.value.height;\r\n }\r\n else if (sizes.length && sizes[0] && sizes[1]) {\r\n widthHeightRatio = sizes[0] / sizes[1]\r\n }\r\n\r\n if (widthHeightRatio && props.viewWidth) { return (props.viewWidth / widthHeightRatio) + \"px\" }\r\n\r\n return \"240px\"\r\n\r\n})\r\n\r\n// 内容添加之前监测广告是否存在不存在先添加广告\r\nadContentForm.beforeSubmitEvent.on(async ({ data }) => {\r\n\r\n if (partAdBanner.value) {\r\n data.adDefineId = partAdBanner.value.id as any;\r\n }\r\n else {\r\n try {\r\n\r\n const widthAndHeight = cmsSettings.part.bannerImageSize.split(\"*\");\r\n // 添加广告\r\n const result = await adRequest.add({ key: props.adkey, desc: `${props.title}的Banner`, width: widthAndHeight[0], height: widthAndHeight[1] })\r\n\r\n if (result.data.code == 200) {\r\n partAdBanner.value = { id: result.data.data as string }\r\n data.adDefineId = result.data.data;\r\n }\r\n\r\n } catch (error) {\r\n Messager.error({ message: \"添加失败!\" });\r\n }\r\n }\r\n\r\n})\r\n\r\n//提交判断是否存在,判断更新还是添加\r\nadDefineForm.formatSubmitData = ((data) => {\r\n if (partAdBanner.value) {\r\n data.id = partAdBanner.value.id as any;\r\n } else {\r\n data.key = props.adkey\r\n data.desc = `${props.title}的Banner`\r\n }\r\n return data\r\n})\r\n\r\n// 添加完成则刷新\r\nadContentForm.submittedEvent.on(() => loadPartAdDefineData())\r\n// 添加完成则刷新\r\nadDefineForm.submittedEvent.on(() => loadPartAdDefineData())\r\n\r\n//加载栏目广告\r\nconst loadPartAdDefineData = async () => {\r\n\r\n try {\r\n\r\n loading.value = true;\r\n const where = new Where()\r\n where.addCondition(\"key\", \"=\", props.adkey);\r\n // 加载广告定义\r\n partAdBanner.value = (await adRequest.query({\r\n data: {\r\n pn: 1,\r\n pc: 1000000,\r\n condition: where\r\n }\r\n })).data.data?.[0] ?? null;\r\n\r\n if (partAdBanner.value?.width && partAdBanner.value?.width) {\r\n adContentForm.changeCutSise(`${partAdBanner.value.width}*${partAdBanner.value.height}`)\r\n }\r\n\r\n } catch (e) {\r\n console.error(e)\r\n } finally {\r\n loading.value = false;\r\n }\r\n}\r\n\r\n//显示栏目广告的编辑弹窗\r\nconst showAdContentHandle = async (id: any) => {\r\n await Dialoger.dataFormDialog({\r\n dataForm: adContentForm as CmsAdContentsForm,\r\n recId: id\r\n })\r\n}\r\n\r\n//显示栏目广告定义的编辑弹窗\r\nconst showAdDefineHandle = async () => {\r\n await Dialoger.dataFormDialog({\r\n title: \"设置素材显示尺寸\",\r\n dataForm: adDefineForm as CmsAdDefinesForm,\r\n recId: partAdBanner.value?.id\r\n })\r\n adDefineForm.getColumn(\"contents\")!.visible = false;\r\n adDefineForm.getColumn(\"key\")!.visible = false;\r\n adDefineForm.getColumn(\"desc\")!.visible = false;\r\n}\r\n\r\nconst deleteAdContentHandle = async (id: any) => {\r\n try {\r\n const isConfirm = await Dialoger.confirm({ title: \"确定删除?\", message: \"确定删除当前轮播吗?\", type: \"warning\" })\r\n if (!isConfirm) return;\r\n const result = await adContentRequest.delete(id)\r\n if (result.data.code != 200) {\r\n Messager.error({ message: result.data.msg || \"删除失败!\" })\r\n return\r\n };\r\n loadPartAdDefineData()\r\n } catch (error) {\r\n Messager.error({ message: \"删除失败!\" })\r\n }\r\n}\r\n\r\n// 组件挂载的时候\r\nonMounted(() => {\r\n watch(() => props.adkey, () => loadPartAdDefineData(), { immediate: true })\r\n})\r\n\r\n</script>\r\n<style lang='scss'></style>\r\n","<template>\r\n <div class=\"mk-cms-part-banner__warp\" v-if=\"cmsSettings.part.openBanner\" ref=\"warpElRef\">\r\n <el-tabs v-model=\"activePartAdType\">\r\n <el-tab-pane label=\"PC端\" name=\"pc\" v-if=\"cmsSettings.devices.includes('pc')\">\r\n <PartBannerComponent :adkey=\"`part_${partId}`\" :title=\"`${title}PC端`\" :viewWidth=\"warpElRef?.offsetWidth\" />\r\n </el-tab-pane>\r\n <el-tab-pane label=\"移动端\" name=\"mobile\" v-if=\"cmsSettings.devices.includes('mobile')\">\r\n <PartBannerComponent :adkey=\"`part_${partId}_mobile`\" :title=\"`${title}移动端`\" :viewWidth=\"750\"\r\n style=\"max-width: 750px;margin: auto;\" />\r\n </el-tab-pane>\r\n </el-tabs>\r\n </div>\r\n</template>\r\n<script setup lang=\"ts\">\r\nimport { ref, defineProps } from \"vue\"\r\nimport { useCmsSettings } from \"../../../cms-settings\"\r\nimport PartBannerComponent from \"./part-banner.vue\"\r\n\r\ndefineProps({ partId: { type: String }, title: { type: String } })\r\n\r\n// cms 配置\r\nconst cmsSettings = useCmsSettings();\r\nconsole.log(cmsSettings.devices);\r\n// cms 配置\r\nconst warpElRef = ref<any>()\r\n// 栏目广告\r\nconst activePartAdType = ref(cmsSettings.devices[0])\r\n\r\n</script>\r\n","<template>\r\n <div class=\"mk-cms-contents__warp\" v-loading=\"loading\">\r\n <el-page-header style=\"background-color: #fff; padding: 10px\" :icon=\"null\">\r\n <template #title>\r\n <h3 style=\"color: var(--el-text-color-regular);\" m=\"l-[10px]\" flex=\"~ items-center\">\r\n <MKSvgIcon name=\"f7:doc-richtext\" m=\"r-[5px]\"/>\r\n 内容管理\r\n </h3>\r\n </template>\r\n <template #extra>\r\n <div class=\"flex items-center\">\r\n <el-button-group>\r\n <el-button type=\"primary\" size=\"large\" text v-if=\"CmsSettings.publish.mode == 'static'\"\r\n @click=\"publishAllPartHandle\">\r\n <MKSvgIcon name=\"ep:promotion\" m=\"r-[10]x\"/>\r\n 整站发布\r\n </el-button>\r\n <el-button type=\"primary\" size=\"large\" text @click=\"showPartFormHandle\">\r\n <MKSvgIcon name=\"ep:plus\" m=\"r-[10]x\"/>\r\n 新增栏目\r\n </el-button>\r\n </el-button-group>\r\n </div>\r\n </template>\r\n </el-page-header>\r\n <div class=\"mk-cms-contents__body\">\r\n <MKPartTree class=\"mk-cms-contents__body__left\" @select=\"selectPartHandle\" @edit=\"editPartHandle\"\r\n @add=\"showPartFormHandle\" @deleteSuccessfully=\"deletePartHandle\" ref=\"partTreeRef\"\r\n :curSelectId=\"curSelectPartId\" />\r\n <el-tabs v-if=\"curSelectPartItem\" v-model=\"activeTabName\" class=\"mk-cms-contents__body__right\">\r\n <div class=\"mk-cms-contents__body__right__action\">\r\n\r\n <template v-for=\"(ext, i) in partExList\" :label=\"ext.title || `页面扩展设置 ${i+1}`\" :name=\"\">\r\n <el-button type=\"primary\" text @click=\"ext.save()\" v-if=\"activeTabName == `part-ext${i}` && ext.save\">\r\n <MKSvgIcon name=\"carbon:save\" m=\"r-[5px]\" />\r\n 保存{{ ext.title }}\r\n </el-button>\r\n </template>\r\n <template v-if=\"activeTabName == 'part' || (activeTabName == 'part-content' && !partContentExtension?.component)\">\r\n <el-button type=\"primary\" text @click=\"savePartHandle()\" :disabled=\"!partDataForm?.isChanged\">\r\n <MKSvgIcon name=\"carbon:save\" m=\"r-[5px]\" />\r\n 保存\r\n </el-button>\r\n </template>\r\n <el-dropdown\r\n v-if=\"CmsSettings.publish.mode == 'static' && curSelectPartItem.coverTemplate || curSelectPartItem.listTemplate || curSelectPartItem.contentTemplate\">\r\n <span class=\"el-dropdown-link\">\r\n <el-button type=\"primary\" text>\r\n <MKSvgIcon name=\"ep:more-filled\" />\r\n </el-button>\r\n </span>\r\n <template #dropdown>\r\n <el-dropdown-menu>\r\n <el-dropdown-item @click=\"previewHandle()\"\r\n v-if=\"CmsSettings.publish.mode == 'static' && curSelectPartItem.coverTemplate\">\r\n <MKSvgIcon name=\"ep:view\" m=\"l-[10px]\" />\r\n 预览封面\r\n </el-dropdown-item>\r\n <el-dropdown-item @click=\"previewHandle(1)\"\r\n v-if=\"curSelectPartItem.listTemplate\">\r\n <MKSvgIcon name=\"ep:view\" m=\"l-[10px]\" />\r\n 预览列表\r\n </el-dropdown-item>\r\n <el-dropdown-item @click=\"showPublish = true\">\r\n <MKSvgIcon name=\"ep:promotion\" m=\"l-[10px]\" />\r\n 发布当前栏目\r\n </el-dropdown-item>\r\n </el-dropdown-menu>\r\n </template>\r\n </el-dropdown>\r\n </div>\r\n <el-tab-pane label=\"文章列表\" name=\"article-list\" v-if=\"curSelectPartItem.contentTemplate\">\r\n <ArticleList v-if=\"activeTabName == 'article-list'\" :part=\"curSelectPartItem\" style=\"height: 99%;\" />\r\n </el-tab-pane>\r\n <el-tab-pane label=\"栏目设置\" name=\"part\" v-loading=\"partDataForm.loading\">\r\n <PartInfo v-if=\"activeTabName == 'part'\" :part=\"curSelectPartItem\" ref=\"partInfoRef\"\r\n :partDataForm=\"partDataForm\" />\r\n </el-tab-pane>\r\n <el-tab-pane label=\"页面内容\" name=\"part-content\" style=\"background-color: #f4f4f4\"\r\n v-if=\"curSelectPartItem.cmsPartTypeId != 1\">\r\n <!-- 存在内容扩展配置 -->\r\n <template v-if=\"partContentExtension && activeTabName == 'part-content'\">\r\n\r\n <!-- 都自定义扩展的话 -->\r\n <template v-if=\"partContentExtension.component && partContentExtension.adComponent\">\r\n <div style=\"background: #fff;margin-top: -10px;padding: 10px;box-sizing: border-box;\">\r\n <component :is=\"partContentExtension.adComponent\" />\r\n </div>\r\n <div style=\"background: #fff;\">\r\n <component :is=\"partContentExtension.component\" />\r\n </div>\r\n </template>\r\n <!-- 只扩展内容 -->\r\n <template v-if=\"partContentExtension.component && !partContentExtension.adComponent\">\r\n <PartBannerEdit v-if=\"partDataForm.data?.id\" :partId=\"partDataForm.data?.id\" :title=\"partDataForm.data?.title\" />\r\n <div style=\"background: #fff;margin-top: -10px;padding: 10px;box-sizing: border-box;\" v-if=\"partContentExtension.component\">\r\n <component :is=\"partContentExtension.component\" />\r\n </div>\r\n </template>\r\n <!-- 只扩展栏目广告栏 -->\r\n <template v-if=\"!partContentExtension.component && partContentExtension.adComponent\">\r\n <MKDocEditor :css=\"CmsSettings.part.doc.css\" :js=\"CmsSettings.part.doc.js\" :loading=\"partDataForm.loading\" namespace=\"cms-part\"\r\n :modelValue=\"partDataForm.data?.content\" placeholder=\"从这里开始写正文...\" @update:modelValue=\"docEditorChangeHandle\">\r\n <template #before-extentions>\r\n <div style=\"background: #fff;margin-bottom: 10px;\">\r\n <component :is=\"partContentExtension.adComponent\" />\r\n </div>\r\n </template>\r\n </MKDocEditor>\r\n </template>\r\n \r\n </template>\r\n\r\n <template v-else-if=\"activeTabName == 'part-content'\">\r\n <MKDocEditor :css=\"CmsSettings.part.doc.css\" :js=\"CmsSettings.part.doc.js\" :loading=\"partDataForm.loading\" namespace=\"cms-part\"\r\n :modelValue=\"partDataForm.data?.content\" @update:modelValue=\"docEditorChangeHandle\" placeholder=\"从这里开始写正文...\">\r\n <template #before-extentions>\r\n <PartBannerEdit v-if=\"partDataForm.data?.id\" :partId=\"partDataForm.data?.id\"\r\n :title=\"partDataForm.data?.title\" />\r\n </template>\r\n </MKDocEditor>\r\n </template>\r\n\r\n </el-tab-pane>\r\n <el-tab-pane v-for=\"(ext, i) in partExList\" :label=\"ext.title || `页面扩展设置 ${i == 0 ? '' : i}`\" :name=\"`part-ext${i}`\">\r\n <component :is=\"ext.component\" />\r\n </el-tab-pane>\r\n\r\n </el-tabs>\r\n <el-empty v-else description=\"请选择栏目\" style=\"width: 100%\" />\r\n </div>\r\n <el-dialog v-model=\"showPublish\" title=\"栏目发布\" width=\"475px\" :append-to-body=\"false\">\r\n <div class=\"mk-cms-contents__publish\">\r\n <div><span>是否发布列表:</span> <el-switch v-model=\"optionData.isPublishList\"\r\n :disabled=\"!curSelectPartItem.listTemplate\" /></div>\r\n <div><span>是否发布封面:</span> <el-switch v-model=\"optionData.isPublishCover\"\r\n :disabled=\"!curSelectPartItem.coverTemplate\" /></div>\r\n <div><span>是否发布内容:</span> <el-switch v-model=\"optionData.isPublishContent\"\r\n :disabled=\"!curSelectPartItem.contentTemplate\" /></div>\r\n <div><span>是否发布资源:</span> <el-switch v-model=\"optionData.isPublishAssets\" /></div>\r\n <div><span>是否强制发布:</span> <el-switch v-model=\"optionData.isCompulsion\" /></div>\r\n </div>\r\n <template #footer>\r\n <el-button @click=\"showPublish = false\">取消</el-button>\r\n <el-button type=\"primary\" @click=\"publishPartHandle\" :loading=\"publishLoading\">确定</el-button>\r\n </template>\r\n </el-dialog>\r\n </div>\r\n</template>\r\n<script setup lang=\"ts\">\r\nimport { MKPartTree } from \"../../components\";\r\nimport ArticleList from \"./components/article-list.vue\";\r\nimport PartInfo from \"./components/part-info.vue\";\r\nimport PartBannerEdit from \"./components/part-banner-edit.vue\";\r\nimport { MKDocEditor } from \"../../../../components\";\r\nimport { reactive, ref,shallowRef, watch, watchEffect } from \"vue\";\r\nimport { Dialoger, Messager } from \"@maketribe/dm\";\r\nimport { CmsContentManPartForm, CmsPartForm, CmsPartMiniForm } from \"../../dataviews/cms-parts\";\r\nimport { useRoute, useRouter } from \"vue-router\";\r\nimport { usePartExtensionList, usePartContentComponent, type PartExtension } from \"../../composables/part-extensions\"\r\nimport { ElSwitch } from \"element-plus\";\r\nimport { useCmsSettings } from \"../../cms-settings\"\r\nimport {MKSvgIcon} from \"../../../../components/basic\";\r\n//路由 \r\nconst route = useRoute();\r\nconst router = useRouter();\r\n\r\n// 当前选中的栏目id\r\nconst curSelectPartId = ref<string>(route.query.pid as string)\r\nwatch(() => route.query.pid, (v: any) => {\r\n curSelectPartId.value = v\r\n}, { immediate: true });\r\n\r\n//栏目Mini表单\r\nconst partMiniForm = reactive<CmsPartMiniForm>(new CmsPartMiniForm());\r\n\r\n// cms 配置\r\nconst CmsSettings = useCmsSettings(true);\r\n\r\n//发布栏目时的配置\r\nconst showPublish = ref(false)\r\n\r\n//发布配置项\r\nconst optionData = ref({\r\n isPublishList: false,\r\n isPublishCover: false,\r\n isPublishContent: false,\r\n isPublishAssets: false,\r\n isCompulsion: true\r\n});\r\n\r\n//发布加载状态\r\nconst publishLoading = ref(false);\r\n\r\n// 数据加载状态\r\nconst loading = ref(false)\r\n\r\n// 激活的tab\r\nconst activeTabName = ref(\"article-list\");\r\n\r\n// 当前选中的菜单\r\nconst curSelectPartItem = ref(null as any);\r\n\r\n// 栏目树ref\r\nconst partTreeRef = ref(null);\r\n\r\n//栏目扩展\r\nconst partExList = shallowRef<Array<PartExtension>>([]);\r\nconst partContentExtension = shallowRef<any>(null)\r\n\r\n//栏目数据\r\nconst partDataForm = reactive(new CmsContentManPartForm()) as CmsContentManPartForm;\r\n\r\n// 初始化表单\r\npartDataForm.init();\r\n\r\n// 切换tab 加载栏目表单数据\r\nlet beforeInitFormPart: any = null;\r\nwatchEffect(async () => {\r\n if ((activeTabName.value == \"part\" || activeTabName.value == \"part-content\") && curSelectPartItem.value != beforeInitFormPart && curSelectPartItem.value) {\r\n try {\r\n beforeInitFormPart = curSelectPartItem.value;\r\n await partDataForm.editRecord(curSelectPartItem.value.id);\r\n } catch (error) {\r\n console.log(132)\r\n console.log(error)\r\n }\r\n }\r\n});\r\n\r\n// 选择栏目\r\nconst selectPartHandle = async (item: any) => {\r\n\r\n if (curSelectPartItem.value != item) {\r\n\r\n curSelectPartItem.value = item;\r\n\r\n if (!curSelectPartItem.value.contentTemplate) {\r\n activeTabName.value = \"part\";\r\n }\r\n else {\r\n activeTabName.value = \"article-list\";\r\n }\r\n router.replace({ name: 'cms/contents', query: { pid: curSelectPartItem.value.id } } as any)\r\n partExList.value = usePartExtensionList(curSelectPartItem.value.id).concat(usePartExtensionList(curSelectPartItem.value.name));\r\n partContentExtension.value = usePartContentComponent(curSelectPartItem.value.id) || usePartContentComponent(curSelectPartItem.value.name)\r\n }\r\n};\r\n\r\n//删除栏目\r\nconst deletePartHandle = (item: any) => {\r\n if (item.id == curSelectPartItem.value.id) {\r\n curSelectPartItem.value = null;\r\n }\r\n};\r\n\r\n//编辑栏目\r\nconst editPartHandle = (item: any) => {\r\n curSelectPartItem.value = item;\r\n activeTabName.value = \"part\";\r\n};\r\n\r\n/**\r\n * 显示添加栏目表单\r\n */\r\nconst showPartFormHandle = async (item?: any) => {\r\n await Dialoger.dataFormDialog({\r\n dataForm: partMiniForm as CmsContentManPartForm,\r\n });\r\n\r\n if (item.id) {\r\n partMiniForm.addRecord({ parentId: item.id });\r\n }\r\n\r\n};\r\n\r\nwatch(showPublish, async (v) => {\r\n if (v) {\r\n console.log(2)\r\n optionData.value.isPublishList = !!curSelectPartItem.value.listTemplate\r\n optionData.value.isPublishCover = !!curSelectPartItem.value.coverTemplate\r\n optionData.value.isPublishContent = !!curSelectPartItem.value.contentTemplate\r\n }\r\n})\r\n\r\n//监听表单完成事件\r\npartMiniForm.submittedEvent.on(({ response }: any) => {\r\n if (response.data.data) {\r\n // 重置选中\r\n curSelectPartId.value = response.data.data;\r\n // 刷新完成直接选中\r\n (partTreeRef.value! as any).dataTree?.load();\r\n }\r\n\r\n});\r\n\r\n//栏目发布\r\nconst publishAllPartHandle = async () => {\r\n\r\n try {\r\n\r\n loading.value = true;\r\n\r\n await CmsPartForm.publishAll()\r\n }\r\n finally {\r\n loading.value = false;\r\n }\r\n\r\n}\r\nconst publishPartHandle = async () => {\r\n\r\n try {\r\n //表单未保存,默认保存\r\n try{\r\n if(partDataForm.isChanged){\r\n await savePartHandle()\r\n }\r\n }catch{\r\n Messager.error({\r\n message:\"保存失败\"\r\n })\r\n return \r\n }\r\n\r\n publishLoading.value = true\r\n\r\n await CmsPartForm.publish(curSelectPartItem.value.id, optionData.value);\r\n\r\n showPublish.value = false;\r\n\r\n } finally {\r\n publishLoading.value = false\r\n }\r\n}\r\n\r\n/**\r\n * 预览\r\n */\r\nconst previewHandle =async (num?:string|number)=>{\r\n if(partDataForm.isChanged){\r\n await savePartHandle()\r\n }\r\n if(num){\r\n CmsPartForm.openPreview(curSelectPartItem.value.id, '1')\r\n }else{\r\n CmsPartForm.openPreview(curSelectPartItem.value.id)\r\n }\r\n}\r\n\r\n/**\r\n * 保存栏目信息\r\n */\r\nconst savePartHandle = async () => {\r\n curSelectPartItem.value = partDataForm.data;\r\n await partDataForm.submit();\r\n}\r\n\r\n/**\r\n * 更新编辑器内容\r\n * @param v 内容\r\n */\r\nconst docEditorChangeHandle = (v: any) => {\r\n if(partDataForm.data){\r\n partDataForm.data.content = v\r\n }\r\n}\r\n</script>\r\n"],"names":["ref","useI18n","reactive","CmsPartTree","watch","ElMessageBox","withInstall","PartTree","useCmsSettings","CmsArticlesTable","CmsArticlesForm","useRouter","Dialoger","onMounted","isWhereFilter","Messager","CmsPartForm","DataViewRequest","cmsSettings","CmsAdContentsForm","CmsAdDefinesForm","computed","Where","useRoute","CmsPartMiniForm","shallowRef","CmsContentManPartForm","watchEffect","usePartExtensionList","usePartContentComponent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index-Cir-kUe5.cjs","sources":["../../src/modules/cms/components/part-tree/index.vue","../../src/modules/cms/components/part-tree/index.ts","../../src/modules/cms/pages/cms-contents/components/article-list.vue","../../src/modules/cms/pages/cms-contents/components/part-info.vue","../../src/modules/cms/pages/cms-contents/components/part-banner.vue","../../src/modules/cms/pages/cms-contents/components/part-banner-edit.vue","../../src/modules/cms/pages/cms-contents/index.vue"],"sourcesContent":["<template>\r\n <div class=\"cms-part-tree\">\r\n <div class=\"cms-part-tree__header\">\r\n <div>\r\n <MKSvgIcon name=\"ep:notebook\" />\r\n 栏目\r\n </div>\r\n <el-switch v-model=\"isDrag\" inline-prompt active-text=\"开启排序\"\r\n inactive-text=\"关闭排序\" />\r\n </div>\r\n <div class=\"cms-part-tree__body\">\r\n <ElScrollbar style=\"height: 100%;\">\r\n <MKDataTable :auto-load=\"true\" :data-table=\"dataTree\" highlight-current>\r\n <MKTree :data-tree=\"dataTree\" @nodeClick=\"selectPart\" defaultExpandAll :draggable=\"isDrag\" ref=\"treeRef\" :currentNodeKey=\"selectNodeId\">\r\n <template #node-main=\"{ data }\">\r\n {{ data.data.title }}\r\n </template>\r\n <template #node-tools=\"{ data }\">\r\n <el-dropdown>\r\n <ElIcon>\r\n <MoreFilled />\r\n </ElIcon>\r\n <template #dropdown>\r\n <el-dropdown-menu>\r\n <el-dropdown-item :icon=\"Edit\" @click=\"handleEditClick(data.data)\">编辑</el-dropdown-item>\r\n <el-dropdown-item :icon=\"Delete\" @click=\"handleDeleteClick(data.data)\">删除</el-dropdown-item>\r\n <el-dropdown-item v-if=\"data.data.cmsPartTypeId != 1\" :icon=\"Plus\"\r\n @click=\"handleAddClick(data.data)\">添加子菜单</el-dropdown-item>\r\n </el-dropdown-menu>\r\n </template>\r\n </el-dropdown>\r\n </template>\r\n </MKTree>\r\n </MKDataTable>\r\n </ElScrollbar>\r\n </div>\r\n </div>\r\n</template>\r\n<script setup lang='ts'>\r\nimport { ElMessageBox, ElScrollbar } from \"element-plus\"\r\nimport { Plus, Edit, Delete, MoreFilled } from \"@element-plus/icons-vue\";\r\nimport { reactive, defineProps, watch, defineEmits, ref } from \"vue\";\r\nimport { MKDataTable, MKTree } from \"../../../../components/data-model/data-table\"\r\nimport { CmsPartTree } from \"../../dataviews\";\r\nimport { useI18n } from \"../../../../composables\";\r\nimport { DataTreeNode } from \"@maketribe/dm\";\r\nimport {MKSvgIcon} from \"../../../../components/basic\";\r\n\r\ndefineOptions({ name: \"MKPartTree\" });\r\nconst treeRef = ref(null);\r\n// 配置选项\r\nconst optionSettings = defineProps<{\r\n curSelectId?:string|undefined\r\n}>();\r\n\r\n// 事件定义\r\nconst emit = defineEmits([\"edit\", \"add\", \"deleteSuccessfully\", \"select\"]);\r\n\r\nconst i18n = useI18n()!;\r\nconst dataTree = reactive(new CmsPartTree()) as CmsPartTree;\r\n\r\nconst isDrag = ref(false)\r\n\r\nconst selectNodeId = ref(optionSettings.curSelectId);\r\n\r\nwatch(()=>optionSettings.curSelectId,()=>{\r\n selectNodeId.value = optionSettings.curSelectId\r\n})\r\n\r\n// 监听数据变化\r\ndataTree.listChangeEvent.on(() => {\r\n\r\n const list = dataTree.getList();\r\n\r\n if (list.length > 0) {\r\n //默认选择第一条\r\n if(!selectNodeId.value){ selectNodeId.value = list[0].id; }\r\n\r\n for(let i=0;i<list.length;i++){\r\n\r\n let item = list[i]\r\n \r\n if(item.id == selectNodeId.value){\r\n emit(\"select\", item);\r\n break;\r\n }\r\n item.children?.forEach((child:any)=>list.push(child))\r\n\r\n }\r\n }\r\n})\r\n\r\n/**\r\n * 点击添加栏目按钮\r\n * @param item \r\n */\r\nconst handleAddClick = (item: any) => {\r\n emit(\"add\", item);\r\n}\r\n\r\n/**\r\n * 编辑栏目\r\n * @param item \r\n */\r\nconst handleEditClick = (item: any) => {\r\n emit(\"edit\", item);\r\n}\r\n/**\r\n * 删除栏目\r\n * @param item \r\n */\r\nconst handleDeleteClick = async (item: any) => {\r\n // 删除提示\r\n const isConfirm = await ElMessageBox.confirm(\r\n i18n.translate(\"mk.dataTablePage.deleteMessage\"),\r\n i18n.translate(\"mk.dataTablePage.deleteTitle\"),\r\n { type: \"warning\" }\r\n )\r\n\r\n if (!isConfirm) {\r\n return;\r\n }\r\n const result = await dataTree.deleteAfterRefresh(item.id);\r\n if (result.data.code == 200) {\r\n emit('deleteSuccessfully', item)\r\n }\r\n}\r\n\r\n/**\r\n * 选择栏目\r\n * @param data \r\n */\r\nconst selectPart = (data: DataTreeNode) => {\r\n emit(\"select\", data.data);\r\n}\r\n\r\ndefineExpose({ dataTree });\r\n\r\n\r\n</script>\r\n","import { withInstall } from \"@maketribe/utils\";\r\nimport PartTree from \"./index.vue\";\r\n\r\nexport const MKPartTree = withInstall(PartTree);\r\nexport default MKPartTree;\r\n","<template>\r\n <MKDataTable :data-table=\"articlesDv\" :auto-load=\"false\" class=\"mk-cms-article-list\">\r\n <el-empty v-if=\"part && part.cmsPartTypeId == 1\" description=\"外链栏目下无文章内容\" />\r\n <MKTableView v-else-if=\"part\" :data-table=\"articlesDv\">\r\n <el-scrollbar class=\"mk-cms-article-list__content\" style=\"box-sizing: border-box;font-size: 0;\"\r\n v-if=\"articlesDv.getList().length > 0\">\r\n <el-card class=\"mk-cms-article-list__item\" v-for=\"article in articlesDv.getList()\" :key=\"article.id\">\r\n <div class=\"mk-cms-article-list__item__content\">\r\n <div class=\"left\">\r\n <el-image class=\"cover-image\" :src=\"article.cover\" fit=\"contain\">\r\n <template #error>\r\n <MKSvgIcon iconClass=\"Picture\" />\r\n </template>\r\n </el-image>\r\n </div>\r\n <div class=\"right\">\r\n <div class=\"top\">\r\n <div class=\"title\" :title=\"article.title\"> {{ article.title }}</div>\r\n <div class=\"tags\">\r\n <el-tag class=\"tag\" v-if=\"CmsSettings.content.useTop && article.isTop == 1\"\r\n @click=\"changeArticleStatus(article, 'isTop', 0)\">置顶</el-tag>\r\n <el-tag class=\"tag\" v-if=\"CmsSettings.content.useNew && article.isNew == 1\"\r\n @click=\"changeArticleStatus(article, 'isNew', 0)\">最新</el-tag>\r\n <el-tag class=\"tag\" v-if=\"CmsSettings.content.useHotRecommend && article.isHotRecommend == 1\"\r\n @click=\"changeArticleStatus(article, 'isHotRecommend', 0)\">热门推荐</el-tag>\r\n <el-tag class=\"tag\" v-if=\"CmsSettings.content.usePartRecommend && article.isPartRecommend == 1\"\r\n @click=\"changeArticleStatus(article, 'isPartRecommend', 0)\">栏目推荐</el-tag>\r\n </div>\r\n </div>\r\n <div class=\"sub-title\" v-if=\"article.subTitle\" :title=\"article.subTitle\"> {{ article.subTitle }}</div>\r\n <div class=\"desc\">\r\n {{ article.desc }}\r\n </div>\r\n <div class=\"footer\">\r\n <div class=\"ext\">\r\n <div class=\"author\">\r\n <MKSvgIcon iconClass=\"UserFilled\"></MKSvgIcon>\r\n 作者 : {{ article.author || \"-\" }}\r\n </div>\r\n <div class=\"publish-time\" v-if=\"article.releaseDate\">\r\n <MKSvgIcon iconClass=\"Timer\"></MKSvgIcon>\r\n 新闻日期 : {{ article.releaseDate }}\r\n </div>\r\n </div>\r\n <div class=\"tools\">\r\n <el-button type=\"primary\" size=\"large\" @click=\"editArticleHandle(article)\" text>\r\n 编辑\r\n </el-button>\r\n <el-button type=\"danger\" size=\"large\" @click=\"deleteArticleHandle(article)\" text>\r\n 删除\r\n </el-button>\r\n <!-- <a v-if=\"CmsSettings.publish.mode == 'static' && article.url\" :href=\"article.url\" target=\"_blank\">\r\n <el-button type=\"primary\" size=\"large\" text>访问</el-button>\r\n </a> -->\r\n <a :href=\"'/api/cms/content/preview/content/' + article.cmsPartId + '/' + article.id\"\r\n v-if=\"CmsSettings.publish.mode == 'static'\" target=\"_blank\">\r\n <el-button type=\"primary\" size=\"large\" text>预览</el-button>\r\n </a>\r\n <el-dropdown>\r\n <el-button type=\"primary\" size=\"large\" text>\r\n 更多\r\n </el-button>\r\n <template #dropdown>\r\n <el-dropdown-menu>\r\n <el-dropdown-item v-if=\"CmsSettings.publish.mode == 'static' && article.url\">\r\n <a style=\"text-decoration: none;color: #606266;\"\r\n v-if=\"CmsSettings.publish.mode == 'static' && article.url\" :href=\"article.url\"\r\n target=\"_blank\">\r\n 访问\r\n </a>\r\n </el-dropdown-item>\r\n <el-dropdown-item @click=\"publishArticleHandle(article)\">\r\n 发布\r\n </el-dropdown-item>\r\n <el-dropdown-item v-if=\"CmsSettings.content.useTop && article.isTop == 0\"\r\n @click=\"changeArticleStatus(article, 'isTop', 1)\">设为置顶</el-dropdown-item>\r\n <el-dropdown-item v-if=\"CmsSettings.content.useNew && article.isNew == 0\"\r\n @click=\"changeArticleStatus(article, 'isNew', 1)\">设为最新</el-dropdown-item>\r\n <el-dropdown-item v-if=\"CmsSettings.content.useHotRecommend && article.isHotRecommend == 0\"\r\n @click=\"changeArticleStatus(article, 'isHotRecommend', 1)\">设为热门推荐</el-dropdown-item>\r\n <el-dropdown-item v-if=\"CmsSettings.content.usePartRecommend && article.isPartRecommend == 0\"\r\n @click=\"changeArticleStatus(article, 'isPartRecommend', 1)\">设为栏目推荐</el-dropdown-item>\r\n </el-dropdown-menu>\r\n </template>\r\n </el-dropdown>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </el-card>\r\n </el-scrollbar>\r\n <el-empty v-if=\"articlesDv.getList().length <= 0\" description=\"暂无文章内容\" />\r\n </MKTableView>\r\n </MKDataTable>\r\n</template>\r\n<script setup lang='ts'>\r\nimport { MKTableView } from \"../../../../../components\"\r\nimport { CmsArticlesTable, CmsArticlesForm } from \"../../../dataviews\"\r\nimport { reactive, defineProps, watch, onMounted } from \"vue\";\r\nimport { Dialoger, isWhereFilter, Messager } from '@maketribe/dm'\r\nimport { useRouter } from \"vue-router\";\r\nimport { useCmsSettings } from \"../../../cms-settings\"\r\n// cms 配置\r\nconst CmsSettings = useCmsSettings();\r\n\r\n// 文章\r\nconst articlesDv = reactive(new CmsArticlesTable()) as CmsArticlesTable;\r\n// 发布文章表单\r\nconst articleForm = reactive(new CmsArticlesForm()) as CmsArticlesForm;\r\n// 草稿文章\r\nconst draftArticleForm = reactive(new CmsArticlesForm()) as CmsArticlesForm;\r\n\r\n// 参数\r\nconst props = defineProps({\r\n part: { type: Object, default: null }\r\n})\r\n\r\nconst router = useRouter();\r\n\r\n//改变文章指定,最新,推荐状态\r\nconst changeArticleStatus = async (article: any, item: string, status: number) => {\r\n const text: Record<string, string[]> = {\r\n \"isTop\": ['取消置顶', '设为置顶'],\r\n \"isNew\": ['取消最新', '设为最新'],\r\n \"isHotRecommend\": ['取消热门推荐', '设为热门推荐'],\r\n \"isPartRecommend\": ['取消栏目推荐', '设为栏目推荐'],\r\n }\r\n\r\n const isConfirm = await Dialoger.confirm({\r\n title: \"修改文章状态\",\r\n message: `是否${text[item][status]}?`,\r\n type: \"warning\"\r\n })\r\n if (!isConfirm) {\r\n return\r\n }\r\n try {\r\n\r\n articlesDv.getLoadingManager().startLoading();\r\n await articleForm.editRecord(article.id)\r\n const isSuccess = await articleForm.simpleSubmit({\r\n id: article.id,\r\n [item]: status\r\n })\r\n\r\n if (isSuccess) {\r\n articlesDv.load();\r\n }\r\n } finally {\r\n articlesDv.getLoadingManager().completeLoading();\r\n }\r\n\r\n\r\n}\r\n\r\n// 初始化\r\nonMounted(() => {\r\n articleForm.init();\r\n draftArticleForm.init();\r\n\r\n // 监听栏目数据变化\r\n watch(() => props.part, (item: any) => {\r\n if (item.cmsPartTypeId != 1) {\r\n \r\n const dataFilter = articlesDv.dataFilter;\r\n\r\n if (isWhereFilter(dataFilter)) {\r\n\r\n const defaultGroup = dataFilter.getDefaultGroup();\r\n\r\n defaultGroup.clear();\r\n defaultGroup.addCondition(\"cmsPartId\", \"=\", item.id);\r\n // 只查草稿\r\n defaultGroup.addCondition(\"isDraft\", \"=\", 1);\r\n }\r\n\r\n articlesDv.load()\r\n }\r\n }, { immediate: true })\r\n})\r\n\r\n/**\r\n * 删除文章\r\n */\r\nconst deleteArticleHandle = async (item: any) => {\r\n const isConfirm = await Dialoger.confirm({\r\n title: \"删除文章?\",\r\n message: \"是否删除文章?\",\r\n type: \"warning\"\r\n })\r\n\r\n if (!isConfirm) { return; }\r\n await articlesDv.deleteAfterRefresh(item.id);\r\n}\r\n\r\n/**\r\n * 编辑文章\r\n */\r\nconst editArticleHandle = (item: any, isEdit = false) => {\r\n router.push({ path: \"/cms/article\", query: { id: isEdit ? undefined : item.id, partId: isEdit ? item.id : undefined } })\r\n}\r\n\r\n// 添加记录\r\narticlesDv.addRecordEvent.on(() => editArticleHandle(props.part, true))\r\n\r\n/**\r\n * fault文章\r\n * @param article \r\n */\r\nconst publishArticleHandle = async (article: any) => {\r\n\r\n try {\r\n\r\n if (await Dialoger.confirm({ title: \"文章发布\", message: \"是否发布文章?\", type: \"warning\" })) {\r\n\r\n articlesDv.getLoadingManager().startLoading();\r\n\r\n // 调用发布接口\r\n const response: any = await CmsArticlesForm.publish(CmsSettings.publish.mode, article.cmsPartId, article.id);\r\n\r\n if (response.data.code !== 200) {\r\n Messager.error({ message: response.data.msg });\r\n return;\r\n }\r\n\r\n Messager.success({ message: \"发布成功\" });\r\n }\r\n\r\n } finally {\r\n articlesDv.getLoadingManager().completeLoading();\r\n }\r\n}\r\n\r\n\r\n</script>\r\n","<template>\r\n <div class=\"mk-cms-part-info\">\r\n <MKDataForm :dataForm=\"partDataForm\" style=\"height: 100%;\">\r\n <MKForm :dataForm=\"partDataForm\">\r\n <div class=\"mk-cms-part-info__body__form\">\r\n <div class=\"mk-cms-part-info__body__form-options\">\r\n <ElScrollbar>\r\n <MKDataFormItem name=\"cmsPartTypeId\" v-if=\"hideHandle('cmsPartTypeId')\"></MKDataFormItem>\r\n <MKDataFormItem name=\"parentId\" v-if=\"hideHandle('parentId')\"></MKDataFormItem>\r\n <MKDataFormItem name=\"cmsCoverArticleId\" v-if=\"hideHandle('cmsCoverArticleId')\">\r\n </MKDataFormItem>\r\n <MKDataFormItem name=\"title\" v-if=\"hideHandle('title')\"></MKDataFormItem>\r\n <MKDataFormItem name=\"name\" v-if=\"hideHandle('name')\"></MKDataFormItem>\r\n <MKDataFormItem name=\"externalLink\" v-if=\"hideHandle('externalLink')\">\r\n </MKDataFormItem>\r\n <el-row :gutter=\"22\" justify=\"space-between\">\r\n <el-col :span=\"10\" v-if=\"hideHandle('isShowMenu')\">\r\n <MKDataFormItem name=\"isShowMenu\"></MKDataFormItem>\r\n </el-col>\r\n <el-col :span=\"10\" v-if=\"hideHandle('isHome')\">\r\n <MKDataFormItem name=\"isHome\"></MKDataFormItem>\r\n </el-col>\r\n </el-row>\r\n <template v-if=\"CmsSettings.publish.mode == 'static'\">\r\n <el-divider content-position=\"left\" v-if=\"hideHandle('coverRouter')\">路由配置</el-divider>\r\n <MKDataFormItem name=\"coverRouter\" v-if=\"hideHandle('coverRouter')\"></MKDataFormItem>\r\n <MKDataFormItem name=\"listRouter\" v-if=\"hideHandle('listRouter')\"></MKDataFormItem>\r\n <MKDataFormItem name=\"contentRouter\" v-if=\"hideHandle('contentRouter')\"></MKDataFormItem>\r\n <el-divider content-position=\"left\" v-if=\"hideHandle('coverTemplate')\">模版配置</el-divider>\r\n <MKDataFormItem name=\"coverTemplate\" v-if=\"hideHandle('coverTemplate')\"></MKDataFormItem>\r\n <MKDataFormItem name=\"listTemplate\" v-if=\"hideHandle('listTemplate')\"></MKDataFormItem>\r\n <MKDataFormItem name=\"contentTemplate\" v-if=\"hideHandle('contentTemplate')\">\r\n </MKDataFormItem>\r\n <el-divider content-position=\"left\" v-if=\"hideHandle('seoKeywords')\">SEO</el-divider>\r\n <MKDataFormItem name=\"seoKeywords\" v-if=\"hideHandle('seoKeywords')\"></MKDataFormItem>\r\n <MKDataFormItem name=\"seoDesc\" v-if=\"hideHandle('seoDesc')\"></MKDataFormItem>\r\n </template>\r\n \r\n </ElScrollbar>\r\n </div>\r\n </div>\r\n </MKForm>\r\n </MKDataForm>\r\n </div>\r\n</template>\r\n<script setup lang=\"ts\">\r\nimport { MKDataForm, MKForm, MKDataFormItem } from \"../../../../../components\";\r\nimport { CmsPartForm } from \"../../../dataviews/cms-parts/CmsPartForm\";\r\nimport { computed, reactive, Ref, watch } from \"vue\";\r\nimport { useCmsSettings } from \"../../../cms-settings\"\r\n// cms 配置\r\nconst CmsSettings = useCmsSettings();\r\nconst props = defineProps({\r\n part: {\r\n type: Object,\r\n default: () => {\r\n return {}\r\n }\r\n },\r\n partDataForm: {\r\n type: CmsPartForm,\r\n default: () => {\r\n return new CmsPartForm()\r\n }\r\n }\r\n})\r\n\r\n//监听保存成功事件\r\n// props.partDataForm.submittedEvent.on(() => {\r\n// props.partDataForm.editRecord(props.part.id)\r\n// })\r\n\r\n/**\r\n * 需要隐藏的行\r\n */\r\nconst hideHandle = (name: string) => {\r\n if (props.partDataForm.data.cmsPartTypeId == 1 && CmsPartForm.outerChainHideColumn.includes(name)) {\r\n return false;\r\n } \r\n else if (props.partDataForm.data.cmsPartTypeId == 2 && CmsPartForm.contentHideColumn.includes(name)) {\r\n return false;\r\n } \r\n else if (props.partDataForm.data.cmsPartTypeId == 3 && CmsPartForm.menuHideColumn.includes(name)) {\r\n props.partDataForm.data.isShowMenu = 1;\r\n return false;\r\n } \r\n else {\r\n return true;\r\n }\r\n}\r\n\r\n\r\n</script>\r\n<style lang='scss'></style>\r\n","<template>\r\n <div v-loading=\"loading\">\r\n <el-carousel v-if=\"partAdBanner && partAdBanner.contents?.length\" :autoplay=\"false\" :height=\"partAdBannerHeight\"\r\n arrow=\"always\" ref=\"carouselRef\">\r\n <el-carousel-item v-for=\"item in partAdBanner.contents\" :key=\"item.id\">\r\n <div class=\"mk-cms-part-banner__list_item\">\r\n <div class=\"mk-cms-part-banner__list_content\">\r\n <el-image class=\"mk-cms-part-banner__list_content_img\" v-if=\"item.type == 1\" :src=\"item.path\" fit=\"cover\"\r\n tyle=\"width: 100%;height: 100%;\">\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\" style=\"width: 100%;height: 100%;\"\r\n controls></video>\r\n </div>\r\n <div class=\"mk-cms-part-banner__list_bottom\">\r\n <div class=\"mk-cms-part-banner__list_title\">{{ item.title }}</div>\r\n <div>{{ item.desc }}</div>\r\n </div>\r\n <div class=\"mk-cms-part-banner__list_action-mask\">\r\n <el-button type=\"primary\" style=\"margin-left: 10px;\" :icon=\"EditPen\" @click=\"showAdContentHandle(item.id)\">\r\n 编辑当前轮播素材\r\n </el-button>\r\n <el-button type=\"primary\" style=\"margin-left: 10px;\" :icon=\"Plus\" @click=\"showAdContentHandle(null)\">\r\n 添加新轮播素材\r\n </el-button>\r\n <el-button type=\"primary\" style=\"margin-left: 10px;\" :icon=\"EditPen\" @click=\"showAdDefineHandle()\">\r\n 设置素材显示尺寸\r\n </el-button>\r\n <el-button type=\"danger\" style=\"margin-left: 10px;\" :icon=\"Delete\" @click=\"deleteAdContentHandle(item.id)\">\r\n 删除当前素材\r\n </el-button>\r\n </div>\r\n </div>\r\n </el-carousel-item>\r\n </el-carousel>\r\n <el-empty v-else :image-size=\"80\" :style=\"{ height: partAdBannerHeight }\">\r\n <template #description>\r\n <el-text>暂无{{ title }}轮播素材数据</el-text>\r\n <el-button type=\"primary\" text style=\"margin-left: 10px;\" :icon=\"Plus\" @click=\"showAdDefineHandle()\">\r\n 设置素材显示尺寸\r\n </el-button>\r\n <el-button type=\"primary\" text style=\"margin-left: 10px;\" :icon=\"Plus\" @click=\"showAdContentHandle(null)\">\r\n 添加\r\n </el-button>\r\n </template>\r\n </el-empty>\r\n </div>\r\n</template>\r\n<script setup lang=\"ts\">\r\nimport { useCmsSettings } from \"../../../cms-settings\"\r\nimport { onMounted, reactive, ref, watch, defineProps, computed } from \"vue\";\r\nimport { DataViewRequest, DVQueryable, Where } from \"@maketribe/request\";\r\nimport { Dialoger, Messager } from \"@maketribe/dm\";\r\nimport { CmsAdContentsForm, CmsAdDefinesForm } from \"../../../dataviews\";\r\nimport { EditPen, Plus, Delete } from \"@element-plus/icons-vue\"\r\n\r\nconst props = defineProps({ adkey: { type: String }, title: { type: String }, deviceValue: { type: String, default: \"\" }, viewWidth: { type: Number } })\r\n\r\n// 广告定义数据表\r\nconst adRequest = new DataViewRequest({ name: \"ad-define\", moduleName: \"cms\" });\r\nconst adContentRequest = new DataViewRequest({ name: \"ad-content\", moduleName: \"cms\" });\r\n// cms 配置\r\nconst cmsSettings = useCmsSettings();\r\n// 栏目广告\r\nconst partAdBanner = ref<any | null>(null);\r\nconst loading = ref(true);\r\nconst adContentForm = reactive<CmsAdContentsForm>(new CmsAdContentsForm({ cutSise: cmsSettings.part.bannerImageSize }))\r\nconst adDefineForm = reactive<CmsAdDefinesForm>(new CmsAdDefinesForm())\r\nconst warpRef = ref<any | null>(null);\r\n// 计算广告的高度\r\nconst partAdBannerHeight = computed(() => {\r\n\r\n // 全局Banner尺寸信息\r\n const sizes = cmsSettings.part.bannerImageSize.split(\"*\") as Array<any>;\r\n\r\n // 宽高比\r\n let widthHeightRatio = 0;\r\n\r\n //设定的比例\r\n if (!!partAdBanner.value?.width && !!partAdBanner.value?.height) {\r\n widthHeightRatio = partAdBanner.value.width / partAdBanner.value.height;\r\n }\r\n else if (sizes.length && sizes[0] && sizes[1]) {\r\n widthHeightRatio = sizes[0] / sizes[1]\r\n }\r\n\r\n if (widthHeightRatio && props.viewWidth) { return (props.viewWidth / widthHeightRatio) + \"px\" }\r\n\r\n return \"240px\"\r\n\r\n})\r\n\r\n// 内容添加之前监测广告是否存在不存在先添加广告\r\nadContentForm.beforeSubmitEvent.on(async ({ data }) => {\r\n\r\n if (partAdBanner.value) {\r\n data.adDefineId = partAdBanner.value.id as any;\r\n }\r\n else {\r\n try {\r\n\r\n const widthAndHeight = cmsSettings.part.bannerImageSize.split(\"*\");\r\n // 添加广告\r\n const result = await adRequest.add({ key: props.adkey, desc: `${props.title}的Banner`, width: widthAndHeight[0], height: widthAndHeight[1] })\r\n\r\n if (result.data.code == 200) {\r\n partAdBanner.value = { id: result.data.data as string }\r\n data.adDefineId = result.data.data;\r\n }\r\n\r\n } catch (error) {\r\n Messager.error({ message: \"添加失败!\" });\r\n }\r\n }\r\n\r\n})\r\n\r\n//提交判断是否存在,判断更新还是添加\r\nadDefineForm.formatSubmitData = ((data) => {\r\n if (partAdBanner.value) {\r\n data.id = partAdBanner.value.id as any;\r\n } else {\r\n data.key = props.adkey\r\n data.desc = `${props.title}的Banner`\r\n }\r\n return data\r\n})\r\n\r\n// 添加完成则刷新\r\nadContentForm.submittedEvent.on(() => loadPartAdDefineData())\r\n// 添加完成则刷新\r\nadDefineForm.submittedEvent.on(() => loadPartAdDefineData())\r\n\r\n//加载栏目广告\r\nconst loadPartAdDefineData = async () => {\r\n\r\n try {\r\n\r\n loading.value = true;\r\n const where = new Where()\r\n where.addCondition(\"key\", \"=\", props.adkey);\r\n // 加载广告定义\r\n partAdBanner.value = (await adRequest.query({\r\n data: {\r\n pn: 1,\r\n pc: 1000000,\r\n condition: where\r\n }\r\n })).data.data?.[0] ?? null;\r\n\r\n if (partAdBanner.value?.width && partAdBanner.value?.width) {\r\n adContentForm.changeCutSise(`${partAdBanner.value.width}*${partAdBanner.value.height}`)\r\n }\r\n\r\n } catch (e) {\r\n console.error(e)\r\n } finally {\r\n loading.value = false;\r\n }\r\n}\r\n\r\n//显示栏目广告的编辑弹窗\r\nconst showAdContentHandle = async (id: any) => {\r\n await Dialoger.dataFormDialog({\r\n dataForm: adContentForm as CmsAdContentsForm,\r\n recId: id\r\n })\r\n}\r\n\r\n//显示栏目广告定义的编辑弹窗\r\nconst showAdDefineHandle = async () => {\r\n await Dialoger.dataFormDialog({\r\n title: \"设置素材显示尺寸\",\r\n dataForm: adDefineForm as CmsAdDefinesForm,\r\n recId: partAdBanner.value?.id\r\n })\r\n adDefineForm.getColumn(\"contents\")!.visible = false;\r\n adDefineForm.getColumn(\"key\")!.visible = false;\r\n adDefineForm.getColumn(\"desc\")!.visible = false;\r\n}\r\n\r\nconst deleteAdContentHandle = async (id: any) => {\r\n try {\r\n const isConfirm = await Dialoger.confirm({ title: \"确定删除?\", message: \"确定删除当前轮播吗?\", type: \"warning\" })\r\n if (!isConfirm) return;\r\n const result = await adContentRequest.delete(id)\r\n if (result.data.code != 200) {\r\n Messager.error({ message: result.data.msg || \"删除失败!\" })\r\n return\r\n };\r\n loadPartAdDefineData()\r\n } catch (error) {\r\n Messager.error({ message: \"删除失败!\" })\r\n }\r\n}\r\n\r\n// 组件挂载的时候\r\nonMounted(() => {\r\n watch(() => props.adkey, () => loadPartAdDefineData(), { immediate: true })\r\n})\r\n\r\n</script>\r\n<style lang='scss'></style>\r\n","<template>\r\n <div class=\"mk-cms-part-banner__warp\" v-if=\"cmsSettings.part.openBanner\" ref=\"warpElRef\">\r\n <el-tabs v-model=\"activePartAdType\">\r\n <el-tab-pane label=\"PC端\" name=\"pc\" v-if=\"cmsSettings.devices.includes('pc')\">\r\n <PartBannerComponent :adkey=\"`part_${partId}`\" :title=\"`${title}PC端`\" :viewWidth=\"warpElRef?.offsetWidth\" />\r\n </el-tab-pane>\r\n <el-tab-pane label=\"移动端\" name=\"mobile\" v-if=\"cmsSettings.devices.includes('mobile')\">\r\n <PartBannerComponent :adkey=\"`part_${partId}_mobile`\" :title=\"`${title}移动端`\" :viewWidth=\"750\"\r\n style=\"max-width: 750px;margin: auto;\" />\r\n </el-tab-pane>\r\n </el-tabs>\r\n </div>\r\n</template>\r\n<script setup lang=\"ts\">\r\nimport { ref, defineProps } from \"vue\"\r\nimport { useCmsSettings } from \"../../../cms-settings\"\r\nimport PartBannerComponent from \"./part-banner.vue\"\r\n\r\ndefineProps({ partId: { type: String }, title: { type: String } })\r\n\r\n// cms 配置\r\nconst cmsSettings = useCmsSettings();\r\nconsole.log(cmsSettings.devices);\r\n// cms 配置\r\nconst warpElRef = ref<any>()\r\n// 栏目广告\r\nconst activePartAdType = ref(cmsSettings.devices[0])\r\n\r\n</script>\r\n","<template>\r\n <div class=\"mk-cms-contents__warp\" v-loading=\"loading\">\r\n <el-page-header style=\"background-color: #fff; padding: 10px\" :icon=\"null\">\r\n <template #title>\r\n <h3 style=\"color: var(--el-text-color-regular);\" m=\"l-[10px]\" flex=\"~ items-center\">\r\n <MKSvgIcon name=\"f7:doc-richtext\" m=\"r-[5px]\"/>\r\n 内容管理\r\n </h3>\r\n </template>\r\n <template #extra>\r\n <div class=\"flex items-center\">\r\n <el-button-group>\r\n <el-button type=\"primary\" size=\"large\" text v-if=\"CmsSettings.publish.mode == 'static'\"\r\n @click=\"publishAllPartHandle\">\r\n <MKSvgIcon name=\"ep:promotion\" m=\"r-[10]x\"/>\r\n 整站发布\r\n </el-button>\r\n <el-button type=\"primary\" size=\"large\" text @click=\"showPartFormHandle\">\r\n <MKSvgIcon name=\"ep:plus\" m=\"r-[10]x\"/>\r\n 新增栏目\r\n </el-button>\r\n </el-button-group>\r\n </div>\r\n </template>\r\n </el-page-header>\r\n <div class=\"mk-cms-contents__body\">\r\n <MKPartTree class=\"mk-cms-contents__body__left\" @select=\"selectPartHandle\" @edit=\"editPartHandle\"\r\n @add=\"showPartFormHandle\" @deleteSuccessfully=\"deletePartHandle\" ref=\"partTreeRef\"\r\n :curSelectId=\"curSelectPartId\" />\r\n <el-tabs v-if=\"curSelectPartItem\" v-model=\"activeTabName\" class=\"mk-cms-contents__body__right\">\r\n <div class=\"mk-cms-contents__body__right__action\">\r\n\r\n <template v-for=\"(ext, i) in partExList\" :label=\"ext.title || `页面扩展设置 ${i+1}`\" :name=\"\">\r\n <el-button type=\"primary\" text @click=\"ext.save()\" v-if=\"activeTabName == `part-ext${i}` && ext.save\">\r\n <MKSvgIcon name=\"carbon:save\" m=\"r-[5px]\" />\r\n 保存{{ ext.title }}\r\n </el-button>\r\n </template>\r\n <template v-if=\"activeTabName == 'part' || (activeTabName == 'part-content' && !partContentExtension?.component)\">\r\n <el-button type=\"primary\" text @click=\"savePartHandle()\" :disabled=\"!partDataForm?.isChanged\">\r\n <MKSvgIcon name=\"carbon:save\" m=\"r-[5px]\" />\r\n 保存\r\n </el-button>\r\n </template>\r\n <el-dropdown\r\n v-if=\"CmsSettings.publish.mode == 'static' && curSelectPartItem.coverTemplate || curSelectPartItem.listTemplate || curSelectPartItem.contentTemplate\">\r\n <span class=\"el-dropdown-link\">\r\n <el-button type=\"primary\" text>\r\n <MKSvgIcon name=\"ep:more-filled\" />\r\n </el-button>\r\n </span>\r\n <template #dropdown>\r\n <el-dropdown-menu>\r\n <el-dropdown-item @click=\"previewHandle()\"\r\n v-if=\"CmsSettings.publish.mode == 'static' && curSelectPartItem.coverTemplate\">\r\n <MKSvgIcon name=\"ep:view\" m=\"l-[10px]\" />\r\n 预览封面\r\n </el-dropdown-item>\r\n <el-dropdown-item @click=\"previewHandle(1)\"\r\n v-if=\"curSelectPartItem.listTemplate\">\r\n <MKSvgIcon name=\"ep:view\" m=\"l-[10px]\" />\r\n 预览列表\r\n </el-dropdown-item>\r\n <el-dropdown-item @click=\"showPublish = true\">\r\n <MKSvgIcon name=\"ep:promotion\" m=\"l-[10px]\" />\r\n 发布当前栏目\r\n </el-dropdown-item>\r\n </el-dropdown-menu>\r\n </template>\r\n </el-dropdown>\r\n </div>\r\n <el-tab-pane label=\"文章列表\" name=\"article-list\" v-if=\"curSelectPartItem.contentTemplate\">\r\n <ArticleList v-if=\"activeTabName == 'article-list'\" :part=\"curSelectPartItem\" style=\"height: 99%;\" />\r\n </el-tab-pane>\r\n <el-tab-pane label=\"栏目设置\" name=\"part\" v-loading=\"partDataForm.loading\">\r\n <PartInfo v-if=\"activeTabName == 'part'\" :part=\"curSelectPartItem\" ref=\"partInfoRef\"\r\n :partDataForm=\"partDataForm\" />\r\n </el-tab-pane>\r\n <el-tab-pane label=\"页面内容\" name=\"part-content\" style=\"background-color: #f4f4f4\"\r\n v-if=\"curSelectPartItem.cmsPartTypeId != 1\">\r\n <!-- 存在内容扩展配置 -->\r\n <template v-if=\"partContentExtension && activeTabName == 'part-content'\">\r\n\r\n <!-- 都自定义扩展的话 -->\r\n <template v-if=\"partContentExtension.component && partContentExtension.adComponent\">\r\n <div style=\"background: #fff;margin-top: -10px;padding: 10px;box-sizing: border-box;\">\r\n <component :is=\"partContentExtension.adComponent\" />\r\n </div>\r\n <div style=\"background: #fff;\">\r\n <component :is=\"partContentExtension.component\" />\r\n </div>\r\n </template>\r\n <!-- 只扩展内容 -->\r\n <template v-if=\"partContentExtension.component && !partContentExtension.adComponent\">\r\n <PartBannerEdit v-if=\"partDataForm.data?.id\" :partId=\"partDataForm.data?.id\" :title=\"partDataForm.data?.title\" />\r\n <div style=\"background: #fff;margin-top: -10px;padding: 10px;box-sizing: border-box;\" v-if=\"partContentExtension.component\">\r\n <component :is=\"partContentExtension.component\" />\r\n </div>\r\n </template>\r\n <!-- 只扩展栏目广告栏 -->\r\n <template v-if=\"!partContentExtension.component && partContentExtension.adComponent\">\r\n <MKDocEditor :css=\"CmsSettings.part.doc.css\" :js=\"CmsSettings.part.doc.js\" :loading=\"partDataForm.loading\" namespace=\"cms-part\"\r\n :modelValue=\"partDataForm.data?.content\" placeholder=\"从这里开始写正文...\" @update:modelValue=\"docEditorChangeHandle\">\r\n <template #before-extentions>\r\n <div style=\"background: #fff;margin-bottom: 10px;\">\r\n <component :is=\"partContentExtension.adComponent\" />\r\n </div>\r\n </template>\r\n </MKDocEditor>\r\n </template>\r\n \r\n </template>\r\n\r\n <template v-else-if=\"activeTabName == 'part-content'\">\r\n <MKDocEditor :css=\"CmsSettings.part.doc.css\" :js=\"CmsSettings.part.doc.js\" :loading=\"partDataForm.loading\" namespace=\"cms-part\"\r\n :modelValue=\"partDataForm.data?.content\" @update:modelValue=\"docEditorChangeHandle\" placeholder=\"从这里开始写正文...\">\r\n <template #before-extentions>\r\n <PartBannerEdit v-if=\"partDataForm.data?.id\" :partId=\"partDataForm.data?.id\"\r\n :title=\"partDataForm.data?.title\" />\r\n </template>\r\n </MKDocEditor>\r\n </template>\r\n\r\n </el-tab-pane>\r\n <el-tab-pane v-for=\"(ext, i) in partExList\" :label=\"ext.title || `页面扩展设置 ${i == 0 ? '' : i}`\" :name=\"`part-ext${i}`\">\r\n <component :is=\"ext.component\" />\r\n </el-tab-pane>\r\n\r\n </el-tabs>\r\n <el-empty v-else description=\"请选择栏目\" style=\"width: 100%\" />\r\n </div>\r\n <el-dialog v-model=\"showPublish\" title=\"栏目发布\" width=\"475px\" :append-to-body=\"false\">\r\n <div class=\"mk-cms-contents__publish\">\r\n <div><span>是否发布列表:</span> <el-switch v-model=\"optionData.isPublishList\"\r\n :disabled=\"!curSelectPartItem.listTemplate\" /></div>\r\n <div><span>是否发布封面:</span> <el-switch v-model=\"optionData.isPublishCover\"\r\n :disabled=\"!curSelectPartItem.coverTemplate\" /></div>\r\n <div><span>是否发布内容:</span> <el-switch v-model=\"optionData.isPublishContent\"\r\n :disabled=\"!curSelectPartItem.contentTemplate\" /></div>\r\n <div><span>是否发布资源:</span> <el-switch v-model=\"optionData.isPublishAssets\" /></div>\r\n <div><span>是否强制发布:</span> <el-switch v-model=\"optionData.isCompulsion\" /></div>\r\n </div>\r\n <template #footer>\r\n <el-button @click=\"showPublish = false\">取消</el-button>\r\n <el-button type=\"primary\" @click=\"publishPartHandle\" :loading=\"publishLoading\">确定</el-button>\r\n </template>\r\n </el-dialog>\r\n </div>\r\n</template>\r\n<script setup lang=\"ts\">\r\nimport { MKPartTree } from \"../../components\";\r\nimport ArticleList from \"./components/article-list.vue\";\r\nimport PartInfo from \"./components/part-info.vue\";\r\nimport PartBannerEdit from \"./components/part-banner-edit.vue\";\r\nimport { MKDocEditor } from \"../../../../components\";\r\nimport { reactive, ref,shallowRef, watch, watchEffect } from \"vue\";\r\nimport { Dialoger, Messager } from \"@maketribe/dm\";\r\nimport { CmsContentManPartForm, CmsPartForm, CmsPartMiniForm } from \"../../dataviews/cms-parts\";\r\nimport { useRoute, useRouter } from \"vue-router\";\r\nimport { usePartExtensionList, usePartContentComponent, type PartExtension } from \"../../composables/part-extensions\"\r\nimport { ElSwitch } from \"element-plus\";\r\nimport { useCmsSettings } from \"../../cms-settings\"\r\nimport {MKSvgIcon} from \"../../../../components/basic\";\r\n//路由 \r\nconst route = useRoute();\r\nconst router = useRouter();\r\n\r\n// 当前选中的栏目id\r\nconst curSelectPartId = ref<string>(route.query.pid as string)\r\nwatch(() => route.query.pid, (v: any) => {\r\n curSelectPartId.value = v\r\n}, { immediate: true });\r\n\r\n//栏目Mini表单\r\nconst partMiniForm = reactive<CmsPartMiniForm>(new CmsPartMiniForm());\r\n\r\n// cms 配置\r\nconst CmsSettings = useCmsSettings(true);\r\n\r\n//发布栏目时的配置\r\nconst showPublish = ref(false)\r\n\r\n//发布配置项\r\nconst optionData = ref({\r\n isPublishList: false,\r\n isPublishCover: false,\r\n isPublishContent: false,\r\n isPublishAssets: false,\r\n isCompulsion: true\r\n});\r\n\r\n//发布加载状态\r\nconst publishLoading = ref(false);\r\n\r\n// 数据加载状态\r\nconst loading = ref(false)\r\n\r\n// 激活的tab\r\nconst activeTabName = ref(\"article-list\");\r\n\r\n// 当前选中的菜单\r\nconst curSelectPartItem = ref(null as any);\r\n\r\n// 栏目树ref\r\nconst partTreeRef = ref(null);\r\n\r\n//栏目扩展\r\nconst partExList = shallowRef<Array<PartExtension>>([]);\r\nconst partContentExtension = shallowRef<any>(null)\r\n\r\n//栏目数据\r\nconst partDataForm = reactive(new CmsContentManPartForm()) as CmsContentManPartForm;\r\n\r\n// 初始化表单\r\npartDataForm.init();\r\n\r\n// 切换tab 加载栏目表单数据\r\nlet beforeInitFormPart: any = null;\r\nwatchEffect(async () => {\r\n if ((activeTabName.value == \"part\" || activeTabName.value == \"part-content\") && curSelectPartItem.value != beforeInitFormPart && curSelectPartItem.value) {\r\n try {\r\n beforeInitFormPart = curSelectPartItem.value;\r\n await partDataForm.editRecord(curSelectPartItem.value.id);\r\n } catch (error) {\r\n console.log(132)\r\n console.log(error)\r\n }\r\n }\r\n});\r\n\r\n// 选择栏目\r\nconst selectPartHandle = async (item: any) => {\r\n\r\n if (curSelectPartItem.value != item) {\r\n\r\n curSelectPartItem.value = item;\r\n\r\n if (!curSelectPartItem.value.contentTemplate) {\r\n activeTabName.value = \"part\";\r\n }\r\n else {\r\n activeTabName.value = \"article-list\";\r\n }\r\n router.replace({ name: 'cms/contents', query: { pid: curSelectPartItem.value.id } } as any)\r\n partExList.value = usePartExtensionList(curSelectPartItem.value.id).concat(usePartExtensionList(curSelectPartItem.value.name));\r\n partContentExtension.value = usePartContentComponent(curSelectPartItem.value.id) || usePartContentComponent(curSelectPartItem.value.name)\r\n }\r\n};\r\n\r\n//删除栏目\r\nconst deletePartHandle = (item: any) => {\r\n if (item.id == curSelectPartItem.value.id) {\r\n curSelectPartItem.value = null;\r\n }\r\n};\r\n\r\n//编辑栏目\r\nconst editPartHandle = (item: any) => {\r\n curSelectPartItem.value = item;\r\n activeTabName.value = \"part\";\r\n};\r\n\r\n/**\r\n * 显示添加栏目表单\r\n */\r\nconst showPartFormHandle = async (item?: any) => {\r\n await Dialoger.dataFormDialog({\r\n dataForm: partMiniForm as CmsContentManPartForm,\r\n });\r\n\r\n if (item.id) {\r\n partMiniForm.addRecord({ parentId: item.id });\r\n }\r\n\r\n};\r\n\r\nwatch(showPublish, async (v) => {\r\n if (v) {\r\n console.log(2)\r\n optionData.value.isPublishList = !!curSelectPartItem.value.listTemplate\r\n optionData.value.isPublishCover = !!curSelectPartItem.value.coverTemplate\r\n optionData.value.isPublishContent = !!curSelectPartItem.value.contentTemplate\r\n }\r\n})\r\n\r\n//监听表单完成事件\r\npartMiniForm.submittedEvent.on(({ response }: any) => {\r\n if (response.data.data) {\r\n // 重置选中\r\n curSelectPartId.value = response.data.data;\r\n // 刷新完成直接选中\r\n (partTreeRef.value! as any).dataTree?.load();\r\n }\r\n\r\n});\r\n\r\n//栏目发布\r\nconst publishAllPartHandle = async () => {\r\n\r\n try {\r\n\r\n loading.value = true;\r\n\r\n await CmsPartForm.publishAll()\r\n }\r\n finally {\r\n loading.value = false;\r\n }\r\n\r\n}\r\nconst publishPartHandle = async () => {\r\n\r\n try {\r\n //表单未保存,默认保存\r\n try{\r\n if(partDataForm.isChanged){\r\n await savePartHandle()\r\n }\r\n }catch{\r\n Messager.error({\r\n message:\"保存失败\"\r\n })\r\n return \r\n }\r\n\r\n publishLoading.value = true\r\n\r\n await CmsPartForm.publish(curSelectPartItem.value.id, optionData.value);\r\n\r\n showPublish.value = false;\r\n\r\n } finally {\r\n publishLoading.value = false\r\n }\r\n}\r\n\r\n/**\r\n * 预览\r\n */\r\nconst previewHandle =async (num?:string|number)=>{\r\n if(partDataForm.isChanged){\r\n await savePartHandle()\r\n }\r\n if(num){\r\n CmsPartForm.openPreview(curSelectPartItem.value.id, '1')\r\n }else{\r\n CmsPartForm.openPreview(curSelectPartItem.value.id)\r\n }\r\n}\r\n\r\n/**\r\n * 保存栏目信息\r\n */\r\nconst savePartHandle = async () => {\r\n curSelectPartItem.value = partDataForm.data;\r\n await partDataForm.submit();\r\n}\r\n\r\n/**\r\n * 更新编辑器内容\r\n * @param v 内容\r\n */\r\nconst docEditorChangeHandle = (v: any) => {\r\n if(partDataForm.data){\r\n partDataForm.data.content = v\r\n }\r\n}\r\n</script>\r\n"],"names":["ref","useI18n","reactive","CmsPartTree","watch","ElMessageBox","withInstall","PartTree","useCmsSettings","CmsArticlesTable","CmsArticlesForm","useRouter","Dialoger","onMounted","isWhereFilter","Messager","CmsPartForm","DataViewRequest","cmsSettings","CmsAdContentsForm","CmsAdDefinesForm","computed","Where","useRoute","CmsPartMiniForm","shallowRef","CmsContentManPartForm","watchEffect","usePartExtensionList","usePartContentComponent"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
3
|
const vue = require("vue");
|
|
4
|
-
const index = require("./index-
|
|
4
|
+
const index = require("./index-B1VQXzw4.cjs");
|
|
5
5
|
const utils = require("@maketribe/utils");
|
|
6
6
|
require("vue-router");
|
|
7
7
|
require("@maketribe/dm");
|
|
@@ -32,4 +32,4 @@ const ColumnImage = /* @__PURE__ */ vue.defineComponent({
|
|
|
32
32
|
const MKColumnImage = ColumnImage;
|
|
33
33
|
exports.MKColumnImage = MKColumnImage;
|
|
34
34
|
exports.default = MKColumnImage;
|
|
35
|
-
//# sourceMappingURL=index-
|
|
35
|
+
//# sourceMappingURL=index-CjULkhHo.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-
|
|
1
|
+
{"version":3,"file":"index-CjULkhHo.cjs","sources":["../../src/components/data-model/data-table/components/column-image/column-image-options.ts","../../src/components/data-model/data-table/components/column-image/column-image.tsx","../../src/components/data-model/data-table/components/column-image/index.ts"],"sourcesContent":["import { ExtractPropTypes } from \"vue\";\nimport { buildProps } from \"@maketribe/utils\";\nimport { columnProps } from \"../../composables\";\n\nexport const columnImageProps = buildProps({\n ...columnProps,\n} as const);\n\nexport type ColumnImageProps = ExtractPropTypes<typeof columnImageProps>;\n","import { defineComponent, unref } from \"vue\";\r\nimport { useColumn } from \"../../composables\";\r\nimport { columnImageProps } from \"./column-image-options\";\r\nimport { ElImage } from \"element-plus\";\r\n\r\nexport default defineComponent({\r\n name: \"MKColumnImage\",\r\n props: columnImageProps,\r\n setup(props) {\r\n const { value } = useColumn(props);\r\n\r\n return () => {\r\n if (!unref(value)) {\r\n return null;\r\n }\r\n\r\n return <ElImage src={unref(value)} />;\r\n };\r\n },\r\n});\r\n","import ColumnImage from \"./column-image\";\r\n\r\nexport const MKColumnImage = ColumnImage;\r\nexport default MKColumnImage;\r\n"],"names":["buildProps","columnProps","defineComponent","name","props","columnImageProps","setup","value","useColumn","unref","_createVNode","ElImage"],"mappings":";;;;;;;;;;;AAIO,MAAM,mBAAmBA,MAAAA,WAAW;AAAA,EACzC,GAAGC,MAAA;AACL,CAAU;ACDV,MAAeC,kDAAgB;AAAA,EAC7BC,MAAM;AAAA,EACNC,OAAOC;AAAAA,EACPC,MAAMF,OAAO;AACX,UAAM;AAAA,MAAEG;AAAAA,IAAM,IAAIC,MAAAA,UAAUJ,KAAK;AAEjC,WAAO,MAAM;AACX,UAAI,CAACK,IAAAA,MAAMF,KAAK,GAAG;AACjB,eAAO;AAAA,MACT;AAEA,aAAAG,IAAAA,YAAAC,YAAAA,SAAA;AAAA,QAAA,OAAqBF,IAAK,MAACF,KAAK;AAAA,MAAC,GAAA,IAAA;AAAA;EAErC;AACF,CAAC;ACjBM,MAAM,gBAAgB;;;"}
|
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
|
3
3
|
const vue = require("vue");
|
|
4
4
|
const utils = require("@maketribe/utils");
|
|
5
5
|
const dm = require("@maketribe/dm");
|
|
6
|
-
const index = require("./index-
|
|
6
|
+
const index = require("./index-B1VQXzw4.cjs");
|
|
7
7
|
require("vue-router");
|
|
8
8
|
require("element-plus");
|
|
9
9
|
require("@maketribe/request");
|
|
@@ -46,4 +46,4 @@ const ColumnAction = /* @__PURE__ */ vue.defineComponent({
|
|
|
46
46
|
const MKColumnAction = ColumnAction;
|
|
47
47
|
exports.MKColumnAction = MKColumnAction;
|
|
48
48
|
exports.default = MKColumnAction;
|
|
49
|
-
//# sourceMappingURL=index-
|
|
49
|
+
//# sourceMappingURL=index-DUxljBVo.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-
|
|
1
|
+
{"version":3,"file":"index-DUxljBVo.cjs","sources":["../../src/components/data-model/data-table/components/column-action/column-action-options.ts","../../src/components/data-model/data-table/components/column-action/column-action.tsx","../../src/components/data-model/data-table/components/column-action/index.ts"],"sourcesContent":["import { ExtractPropTypes } from \"vue\";\nimport { buildProps } from \"@maketribe/utils\";\nimport { TableColumn } from \"@maketribe/dm\";\nimport { columnProps } from \"../../composables\";\n\nexport const columnActionProps = buildProps({\n ...columnProps,\n column: { type: TableColumn, required: true },\n buttons: { type: Array, default: () => [] }\n} as const);\n\nexport type ColumnActionProps = ExtractPropTypes<typeof columnActionProps>;\n","import { computed, defineComponent, unref } from \"vue\";\nimport { ElButton } from \"element-plus\";\n\nimport { columnActionProps } from \"./column-action-options\";\nimport { MKButton } from \"../../../../basic/button\";\nimport { ActionButton, TableActionColumn } from \"@maketribe/dm\";\n\nexport type MKColumnActionButton = {\n name?: string;\n label?: string;\n type?: InstanceType<typeof ElButton>[\"type\"];\n handler?: (row: any) => any;\n};\n\nexport default defineComponent({\n name: \"MKColumnAction\",\n props: columnActionProps,\n setup(props) {\n const buttons = computed(() => {\n if (props.column instanceof TableActionColumn) {\n return props.column.buttons;\n }\n\n return props.buttons as ActionButton[];\n });\n\n const handleColumnActionClick = (e: MouseEvent) => {\n e.preventDefault();\n e.stopPropagation();\n };\n\n return () => {\n const buttonVnodes = unref(buttons)\n .filter((button) => button.predicate(props.row))\n .map((button) => (\n <MKButton\n icon={button.icon}\n label={button.label}\n type={button.type}\n link\n onClick={() => button.handler(props.row)}\n />\n ));\n\n return (\n <span class=\"mk-column-action\" onClick={handleColumnActionClick}>\n {buttonVnodes}\n </span>\n );\n };\n },\n});\n","import ColumnAction from \"./column-action\";\r\n\r\nexport const MKColumnAction = ColumnAction;\r\nexport default MKColumnAction;\r\n"],"names":["buildProps","columnProps","TableColumn","defineComponent","name","props","columnActionProps","setup","buttons","computed","column","TableActionColumn","handleColumnActionClick","e","preventDefault","stopPropagation","buttonVnodes","unref","filter","button","predicate","row","map","_createVNode","MKButton","icon","label","type","onClick","handler"],"mappings":";;;;;;;;;;;AAKO,MAAM,oBAAoBA,MAAAA,WAAW;AAAA,EAC1C,GAAGC,MAAA;AAAA,EACH,QAAQ,EAAE,MAAMC,gBAAa,UAAU,KAAK;AAAA,EAC5C,SAAS,EAAE,MAAM,OAAO,SAAS,MAAM,CAAA,EAAG;AAC5C,CAAU;ACKV,MAAeC,mDAAgB;AAAA,EAC7BC,MAAM;AAAA,EACNC,OAAOC;AAAAA,EACPC,MAAMF,OAAO;AACX,UAAMG,UAAUC,IAAAA,SAAS,MAAM;AAC7B,UAAIJ,MAAMK,kBAAkBC,sBAAmB;AAC7C,eAAON,MAAMK,OAAOF;AAAAA,MACtB;AAEA,aAAOH,MAAMG;AAAAA,IACf,CAAC;AAED,UAAMI,0BAA2BC,OAAkB;AACjDA,QAAEC,eAAc;AAChBD,QAAEE,gBAAe;AAAA;AAGnB,WAAO,MAAM;AACX,YAAMC,eAAeC,IAAAA,MAAMT,OAAO,EAC/BU,OAAQC,YAAWA,OAAOC,UAAUf,MAAMgB,GAAG,CAAC,EAC9CC,IAAKH,YAAMI,IAAA,YAAAC,gBAAA;AAAA,QAAA,QAEFL,OAAOM;AAAAA,QAAI,SACVN,OAAOO;AAAAA,QAAK,QACbP,OAAOQ;AAAAA,QAAI,QAAA;AAAA,QAAA,WAERC,MAAMT,OAAOU,QAAQxB,MAAMgB,GAAG;AAAA,MAAC,GAAA,IAAA,CAE3C;AAEH,aAAAE,IAAAA,YAAA,QAAA;AAAA,QAAA,SAAA;AAAA,QAAA,WAC0CX;AAAAA,MAAuB,GAAA,CAC5DI,YAAY,CAAA;AAAA;EAIrB;AACF,CAAC;ACjDM,MAAM,iBAAiB;;;"}
|
|
@@ -5,7 +5,7 @@ const elementPlus = require("element-plus");
|
|
|
5
5
|
const elIcons = require("@element-plus/icons-vue");
|
|
6
6
|
const lodashEs = require("lodash-es");
|
|
7
7
|
const dm = require("@maketribe/dm");
|
|
8
|
-
const index = require("./index-
|
|
8
|
+
const index = require("./index-B1VQXzw4.cjs");
|
|
9
9
|
require("@maketribe/request");
|
|
10
10
|
const utils = require("@maketribe/utils");
|
|
11
11
|
require("@lexical/overflow");
|
|
@@ -24,7 +24,7 @@ require("./use-condition-BsNGbgF4.cjs");
|
|
|
24
24
|
require("./index-Cj3GY0CU.cjs");
|
|
25
25
|
require("./index-RjnvS-h4.cjs");
|
|
26
26
|
require("./index-D_CB0k2e.cjs");
|
|
27
|
-
require("./index-
|
|
27
|
+
require("./index-DkGZObr_.cjs");
|
|
28
28
|
const dataFilterFormItemProps = utils.buildProps({
|
|
29
29
|
name: { type: String, required: true },
|
|
30
30
|
label: { type: String }
|
|
@@ -270,19 +270,17 @@ const DataFilterDrawer = /* @__PURE__ */ vue.defineComponent({
|
|
|
270
270
|
dataTable.load();
|
|
271
271
|
};
|
|
272
272
|
return () => {
|
|
273
|
-
return vue.createVNode(
|
|
274
|
-
"
|
|
275
|
-
"showClose": false,
|
|
276
|
-
"appendToBody": true,
|
|
273
|
+
return vue.createVNode(index._sfc_main, {
|
|
274
|
+
"title": "筛选器",
|
|
277
275
|
"modelValue": vue.unref(visible),
|
|
278
276
|
"onUpdate:modelValue": (v) => visible.value = v
|
|
279
277
|
}, {
|
|
280
|
-
default: () =>
|
|
278
|
+
default: () => vue.createVNode(MKDataFilterForm, vue.mergeProps({
|
|
279
|
+
"class": "overflow-hidden",
|
|
281
280
|
"dataTable": props.dataTable
|
|
282
281
|
}, {
|
|
283
282
|
labelPosition: "top"
|
|
284
|
-
}), null)
|
|
285
|
-
header: () => "筛选器",
|
|
283
|
+
}), null),
|
|
286
284
|
footer: () => vue.createVNode(vue.Fragment, null, [vue.createVNode(elementPlus.ElButton, {
|
|
287
285
|
"onClick": handleCancelClick
|
|
288
286
|
}, {
|
|
@@ -413,4 +411,4 @@ const TableFilter = /* @__PURE__ */ vue.defineComponent({
|
|
|
413
411
|
const MKTableFilter = TableFilter;
|
|
414
412
|
exports.MKTableFilter = MKTableFilter;
|
|
415
413
|
exports.default = MKTableFilter;
|
|
416
|
-
//# sourceMappingURL=index-
|
|
414
|
+
//# sourceMappingURL=index-DWyoz9uB.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-DWyoz9uB.cjs","sources":["../../src/components/data-model/data-filter-form/data-filter-form-item/data-filter-form-item-options.ts","../../src/components/data-model/data-filter-form/token.ts","../../src/components/data-model/data-filter-form/data-filter-form-item/data-filter-form-item.tsx","../../src/components/data-model/data-filter-form/data-filter-form-item/index.ts","../../src/components/data-model/data-filter-form/data-filter-form-options.ts","../../src/components/data-model/data-filter-form/data-filter-form.tsx","../../src/components/data-model/data-filter-form/operator-options.ts","../../src/components/data-model/data-filter-form/index.ts","../../src/components/data-model/data-filter-drawer/data-filter-drawer-options.ts","../../src/components/data-model/data-filter-drawer/data-filter-drawer.tsx","../../src/components/data-model/data-filter-drawer/index.ts","../../src/components/data-model/data-table/components/header-components/table-filter/table-filter.tsx","../../src/components/data-model/data-table/components/header-components/table-filter/index.ts"],"sourcesContent":["import { ExtractPropTypes } from \"vue\";\r\nimport { buildProps } from \"@maketribe/utils\";\r\n\r\nexport const dataFilterFormItemProps = buildProps({\r\n name: { type: String, required: true },\r\n label: { type: String },\r\n} as const);\r\n\r\nexport type DataFilterFormItemProps = ExtractPropTypes<\r\n typeof dataFilterFormItemProps\r\n>;\r\n","import { InjectionKey } from \"vue\";\nimport { Operator, FilterColumn, DataFilter } from \"@maketribe/dm\";\nimport { OperatorOption } from \"./operator-options\";\n\nexport interface DataFilterContext {\n dataFilter: DataFilter;\n labelWidth: number;\n}\n\nexport interface DataFilterItemContext {\n dataFilter: DataFilter;\n // dataFilterItem: DataFilterItem;\n}\n\n// export interface DataFilterItem {\n// dataFilter: DataFilter;\n// column: FilterColumn;\n// currentOperator: Operator | null;\n// operatorOptions: OperatorOption[];\n// setOperator(operator: Operator): void;\n// setOperatorOptions(options: OperatorOption[]): void;\n// setValue(value: any): void;\n// getValue(): any;\n// }\n\nexport const DATA_FILTER_CONTEXT: InjectionKey<DataFilterContext> = Symbol(\n \"DATA_FILTER_CONTEXT\"\n);\nexport const DATA_FILTER_ITEM_CONTEXT: InjectionKey<DataFilterItemContext> =\n Symbol(\"DATA_FILTER_ITEM_CONTEXT\");\n\nexport const DATA_FILTER_QUERY_NAME: string = \"dataTableParams\";\n","import {\n computed,\n defineComponent,\n inject,\n onBeforeUnmount,\n reactive,\n toRaw,\n unref,\n watch,\n} from \"vue\";\nimport { ElFormItem } from \"element-plus\";\nimport { FilterColumn, isWhereFilter } from \"@maketribe/dm\";\nimport { useFilterColumnComponent } from \"../../../../composables\";\nimport { DataFilterComponent } from \"../../../../core\";\nimport { dataFilterFormItemProps } from \"./data-filter-form-item-options\";\nimport { DATA_FILTER_CONTEXT } from \"../token\";\n\nexport default defineComponent({\n name: \"MKDataFilterFormItem\",\n props: dataFilterFormItemProps,\n setup(props, { slots }) {\n const dataFilterContext = inject(DATA_FILTER_CONTEXT)!;\n\n const dataFilter = computed(() => dataFilterContext.dataFilter);\n\n let _filterColumn: FilterColumn | null = null;\n\n const createFilterColumn = () => {\n _filterColumn = reactive(\n new FilterColumn({\n name: props.name!,\n label: props.label!,\n })\n );\n\n unref(dataFilter).addColumn(_filterColumn);\n\n return _filterColumn;\n };\n\n const filterColumn = computed(() => {\n const existingColumn = unref(dataFilter).getColumn(props.name) ?? null;\n\n if (existingColumn) {\n return existingColumn;\n }\n\n if (!_filterColumn) {\n _filterColumn = createFilterColumn();\n }\n\n return _filterColumn;\n });\n\n const value = computed({\n get: () => unref(dataFilter).getParam(unref(filterColumn).name),\n set: (v) => unref(dataFilter).setParam(unref(filterColumn).name, v),\n });\n\n const { component, componentProps, componentInfo } =\n useFilterColumnComponent(filterColumn, dataFilter);\n\n watch(\n componentInfo,\n (componentInfo) => {\n const _dataFilter = unref(dataFilter);\n\n if (isWhereFilter(_dataFilter)) {\n _dataFilter.setParamOperator(\n unref(filterColumn).name,\n (componentInfo as DataFilterComponent).defaultOperator\n );\n }\n },\n { immediate: true }\n );\n\n onBeforeUnmount(() => {\n const _dataFilter = unref(dataFilter);\n\n if (isWhereFilter(_dataFilter)) {\n _dataFilter.deleteParamOperator(unref(filterColumn).name);\n }\n\n _dataFilter.deleteParam(unref(filterColumn).name);\n });\n\n return () => {\n const _filterColumn = unref(filterColumn);\n\n if (!_filterColumn) {\n return null;\n }\n\n let children: any = slots.default?.();\n\n if (!children && unref(component)) {\n const FilterColumnComponent = toRaw(unref(component));\n\n children = (\n <FilterColumnComponent\n {...unref(componentProps)}\n modelValue={unref(value)}\n onUpdate:modelValue={(v: any) => (value.value = v)}\n column={unref(filterColumn)}\n />\n );\n }\n\n const labelWidth = computed(() => dataFilterContext.labelWidth);\n\n return (\n <ElFormItem\n prop={_filterColumn.name}\n label={_filterColumn.label}\n labelWidth={unref(labelWidth)}\n >\n {children}\n </ElFormItem>\n );\n };\n },\n});\n","import { withInstall } from \"@maketribe/utils\";\r\nimport DataFilterFormItem from \"./data-filter-form-item\";\r\n\r\nexport const MKDataFilterFormItem = withInstall(DataFilterFormItem);\r\nexport default MKDataFilterFormItem;\r\n\r\nexport * from \"./data-filter-form-item-options\";\r\n","import { ExtractPropTypes } from \"vue\";\nimport { DataTable } from \"@maketribe/dm\";\nimport { buildProps } from \"@maketribe/utils\";\nimport dataFilterForm from \"./data-filter-form\";\n\nexport const dataFilterFormProps = buildProps({\n // dataFilter: { type: DataFilter, required: true },\n dataTable: { type: DataTable, required: true },\n} as const);\n\nexport type DataFilterFormProps = ExtractPropTypes<typeof dataFilterFormProps>;\n\nexport const dataFilterFormEmits = {};\n\nexport type DataFilterFormEmits = typeof dataFilterForm;\n","import {\n Suspense,\n computed,\n defineComponent,\n provide,\n reactive,\n unref,\n watch,\n onMounted,\n Fragment,\n} from \"vue\";\nimport { dataFilterFormProps } from \"./data-filter-form-options\";\nimport { MKDataFilterFormItem } from \"./data-filter-form-item\";\nimport { DATA_FILTER_CONTEXT } from \"./token\";\nimport { ElForm } from \"element-plus\";\n\nexport default defineComponent({\n name: \"MKDataFilterForm\",\n props: dataFilterFormProps,\n setup(props, { slots }) {\n const dataTable = computed(() => props.dataTable);\n const dataFilter = computed(() => unref(dataTable).dataFilter);\n\n const columns = computed(() =>\n unref(dataFilter)\n .getColumns()\n .filter((column) => column.visible)\n );\n\n const labelWidth = computed(() => {\n const maxWordCount = Math.max(\n ...unref(columns).map((column) => column.label.length)\n );\n\n return maxWordCount * 14 + 20;\n });\n\n provide(DATA_FILTER_CONTEXT, reactive({ dataFilter, labelWidth }));\n\n let resolve: Function | null = null;\n const suspenseResolvePromise = new Promise((_resolve) => {\n resolve = _resolve;\n });\n\n const handleResolve = () => {\n resolve?.();\n };\n\n onMounted(() => {\n watch(\n dataTable,\n async (dataTable, _, onCleanup) => {\n await suspenseResolvePromise;\n\n const disposable = dataTable.afterInitdEvent.on(() => {\n dataTable.dataFilter.setReady();\n });\n\n onCleanup(() => {\n disposable.dispose();\n });\n },\n { immediate: true }\n );\n });\n\n return () => {\n if (!unref(columns).length) {\n return null;\n }\n\n let children: any = slots.default?.();\n\n if (!children) {\n children = unref(columns).map((column) => {\n if (!column.name) {\n return null;\n }\n\n return (\n slots[`col-${column.name}`]?.() || (\n <MKDataFilterFormItem\n name={column.name}\n v-slots={{ default: slots[`col-${column.name}-content`] }}\n />\n )\n );\n });\n }\n\n if (!children) {\n return null;\n }\n\n return (\n <ElForm class=\"mk-data-filter-form\">\n <Suspense onResolve={handleResolve}>\n <Fragment>{children}</Fragment>\n </Suspense>\n </ElForm>\n );\n };\n },\n});\n\n// export default defineComponent({\n// name: \"MKDataFilterForm\",\n// props: dataFilterFormProps,\n// setup(props, { slots }) {\n// const dataTable = computed(() => props.dataTable);\n// const dataFilter = computed(() => unref(dataTable).dataFilter);\n\n// const columns = computed(() =>\n// unref(dataFilter)\n// .getColumns()\n// .filter((column) => column.visible)\n// );\n\n// const labelWidth = computed(() => {\n// const maxWordCount = Math.max(\n// ...unref(columns).map((column) => column.label.length)\n// );\n\n// return maxWordCount * 14 + 10;\n// });\n\n// provide(DATA_FILTER_CONTEXT, reactive({ dataFilter, labelWidth }));\n\n// let resolve: Function | null = null;\n// const suspenseResolvePromise = new Promise((_resolve) => {\n// resolve = _resolve;\n// });\n\n// const handleResolve = () => {\n// resolve?.();\n// };\n\n// onMounted(() => {\n// watch(\n// dataTable,\n// async (dataTable, _, onCleanup) => {\n// await suspenseResolvePromise;\n\n// const disposable = dataTable.afterInitdEvent.on(() => {\n// dataTable.dataFilter.setReady();\n// });\n\n// onCleanup(() => {\n// disposable.dispose();\n// });\n// },\n// { immediate: true }\n// );\n// });\n\n// return () => {\n// if (!unref(columns).length) {\n// return null;\n// }\n\n// let children: any = slots.default?.();\n\n// if (!children) {\n// children = unref(columns).map((column) => {\n// if (!column.name) {\n// return null;\n// }\n\n// return (\n// slots[`col-${column.name}`]?.() || (\n// <MKDataFilterFormItem\n// name={column.name}\n// v-slots={{ default: slots[`col-${column.name}-content`] }}\n// />\n// )\n// );\n// });\n// }\n\n// if (!children) {\n// return null;\n// }\n\n// return (\n// <div class=\"mk-data-filter-form\">\n// <Suspense onResolve={handleResolve}>\n// <Fragment>{children}</Fragment>\n// </Suspense>\n// </div>\n// );\n// };\n// },\n// });\n","import { Operator } from \"@maketribe/dm\";\r\n\r\nexport type OperatorOption = { value: Operator; label: string };\r\n\r\nexport const EQUAL_OPTION: OperatorOption = {\r\n value: Operator.EQUAL,\r\n label: \"mk.operator.equal\",\r\n};\r\n\r\nexport const CONTAIN_OPTION: OperatorOption = {\r\n value: Operator.CONTAIN,\r\n label: \"mk.operator.contain\",\r\n};\r\n\r\nexport const IN_OPTION: OperatorOption = {\r\n value: Operator.IN,\r\n label: \"mk.operator.in\",\r\n};\r\n\r\nexport const NOT_IN_OPTION: OperatorOption = {\r\n value: Operator.NOT_IN,\r\n label: \"mk.operator.notIn\",\r\n};\r\n\r\nexport const LESS_THAN_OPTION: OperatorOption = {\r\n value: Operator.LESS_THAN,\r\n label: \"mk.operator.lessThan\",\r\n};\r\n\r\nexport const LESS_THAN_EQUAL_OPTION: OperatorOption = {\r\n value: Operator.LESS_THAN_EQUAL,\r\n label: \"mk.operator.lessThanEqual\",\r\n};\r\n\r\nexport const GREATER_THAN_OPTION: OperatorOption = {\r\n value: Operator.GREATER_THAN,\r\n label: \"mk.operator.greaterThan\",\r\n};\r\n\r\nexport const GREATER_THAN_EQUAL_OPTION: OperatorOption = {\r\n value: Operator.GREATER_THAN_EQUAL,\r\n label: \"mk.operator.greaterThanEqual\",\r\n};\r\n\r\nexport const BETWEEN_OPTION: OperatorOption = {\r\n value: Operator.BETWEEN,\r\n label: \"mk.operator.between\",\r\n};\r\n","import { withInstall } from \"@maketribe/utils\";\nimport { MKDataFilterFormItem } from \"./data-filter-form-item\";\nimport DataFilterForm from \"./data-filter-form\";\n\nexport const MKDataFilterForm = withInstall(DataFilterForm, {\n MKDataFilterFormItem,\n});\nexport default MKDataFilterForm;\n\nexport * from \"./data-filter-form-item\";\nexport * from \"./data-filter-form-options\";\nexport * from \"./composables\";\nexport * from \"./operator-options\";\n\nexport * from \"./components\";\n","import { ExtractPropTypes } from \"vue\";\nimport { buildProps } from \"@maketribe/utils\";\nimport { DataTable } from \"@maketribe/dm\";\n\nexport const dataFilterDrawerProps = buildProps({\n visible: {\n type: Boolean,\n default: false,\n },\n dataTable: {\n type: DataTable,\n required: true,\n },\n} as const);\n\nexport type DataFilterDrawerProps = ExtractPropTypes<\n typeof dataFilterDrawerProps\n>;\n\nexport const dataFilterDrawerEmits = {\n \"update:visible\": (visible: boolean) => true,\n};\n\nexport type DataFilterDrawerEmits = typeof dataFilterDrawerEmits;\n","import {computed, defineComponent, Fragment, unref} from \"vue\";\nimport {ElButton, ElDrawer} from \"element-plus\";\nimport {MKDataFilterForm} from \"../data-filter-form\";\nimport {\n dataFilterDrawerEmits,\n dataFilterDrawerProps,\n} from \"./data-filter-drawer-options\";\nimport HSlideover from '../../../layouts/new/ui-kit/HSlideover.vue'\n\nexport default defineComponent({\n name: \"MKDataFilterDrawer\",\n props: dataFilterDrawerProps,\n emits: dataFilterDrawerEmits,\n setup(props, {emit}) {\n const visible = computed({\n get: () => props.visible,\n set: (v) => emit(\"update:visible\", v),\n });\n\n const handleCancelClick = () => {\n visible.value = false;\n };\n\n const handleResetClick = () => {\n visible.value = false;\n\n const dataTable = props.dataTable;\n const dataFilter = props.dataTable.dataFilter;\n\n dataFilter.reset();\n\n dataFilter.beforeSearchEvent.emit();\n\n dataTable.load();\n };\n\n const handleConfirmClick = () => {\n visible.value = false;\n\n const dataTable = props.dataTable;\n const dataFilter = props.dataTable.dataFilter;\n\n dataFilter.beforeSearchEvent.emit();\n\n dataTable.load();\n };\n\n return () => {\n return (\n <HSlideover\n title=\"筛选器\"\n modelValue={unref(visible)}\n onUpdate:modelValue={((v: boolean) => (visible.value = v)) as any}\n v-slots={{\n default: () => <MKDataFilterForm\n class=\"overflow-hidden\"\n dataTable={props.dataTable}\n {...{labelPosition: \"top\"}}\n />,\n footer: () => (\n <Fragment>\n <ElButton onClick={handleCancelClick}>取消</ElButton>\n\n <ElButton onClick={handleResetClick}>重置</ElButton>\n\n <ElButton type=\"primary\" onClick={handleConfirmClick}>\n 查询\n </ElButton>\n </Fragment>\n ),\n }}\n />\n );\n };\n },\n});\n","import { withInstall } from \"@maketribe/utils\";\nimport DataFilterDrawer from \"./data-filter-drawer\";\n\nexport const MKDataFilterDrawer = withInstall(DataFilterDrawer);\n\nexport default MKDataFilterDrawer;\n\nexport * from \"./data-filter-drawer-options\";\n","import { defineComponent, inject, computed, unref, watch, ref } from \"vue\";\r\nimport { ElButton, ElInput, ElTooltip } from \"element-plus\";\r\nimport { Search } from \"@element-plus/icons-vue\";\r\nimport { debounce } from \"lodash-es\";\r\nimport { isWhereFilter } from \"@maketribe/dm\";\r\nimport { DATA_TABLE_CONTEXT_KEY } from \"../../../token\";\r\nimport { MKSvgIcon } from \"../../../../../basic\";\r\nimport { MKDataFilterDrawer } from \"../../../../data-filter-drawer\";\r\nimport { MKDataFilterForm } from \"../../../../data-filter-form\";\r\n\r\nexport default defineComponent({\r\n name: \"MKTableFilter\",\r\n setup() {\r\n const search = ref(\"\");\r\n\r\n const isShowDrawer = ref(false);\r\n\r\n const dataTableContext = inject(DATA_TABLE_CONTEXT_KEY);\r\n\r\n const dataTable = computed(() => dataTableContext!.dataTable);\r\n\r\n const dataTableInitd = computed(() => unref(dataTable)?.initd ?? false);\r\n\r\n const searchFilterColumns = computed(() =>\r\n unref(dataTable)\r\n .dataFilter.getColumns()\r\n .filter((column) => column.search)\r\n );\r\n\r\n const searchPlaceholder = computed(\r\n () =>\r\n `通过${unref(searchFilterColumns)\r\n .map((column) => column.label)\r\n .join(\"、\")}搜索`\r\n );\r\n\r\n watch(\r\n dataTable,\r\n (dataTable, _, onCleanup) => {\r\n onCleanup(() => {\r\n const dataFilter = dataTable.dataFilter;\r\n if (isWhereFilter(dataFilter)) {\r\n dataFilter.getSearchGroup().clear();\r\n }\r\n });\r\n },\r\n { immediate: true }\r\n );\r\n\r\n const handleSearch = () => {\r\n debounceSearch.cancel();\r\n\r\n const dataFilter = unref(dataTable).dataFilter;\r\n if (isWhereFilter(dataFilter)) {\r\n const searchGroup = dataFilter.getSearchGroup();\r\n searchGroup.clear();\r\n\r\n const searchValue = unref(search);\r\n\r\n for (const searchFilterColumn of unref(searchFilterColumns)) {\r\n searchGroup.addOrCondition(\r\n searchFilterColumn.name,\r\n \"like\",\r\n `%${searchValue}%`\r\n );\r\n }\r\n }\r\n\r\n unref(dataTable).load();\r\n };\r\n\r\n const debounceSearch = debounce(handleSearch, 1000);\r\n\r\n const handleSearchKeydown = (event: KeyboardEvent) => {\r\n if (event.key === \"Enter\") {\r\n handleSearch();\r\n }\r\n };\r\n\r\n const handleSearchFocus = (event: FocusEvent) => {\r\n const target = event.target as HTMLInputElement;\r\n\r\n target.addEventListener(\"input\", debounceSearch);\r\n };\r\n\r\n const handleSearchBlur = (event: any) => {\r\n const target = event.target as HTMLInputElement;\r\n\r\n target.removeEventListener(\"input\", debounceSearch);\r\n };\r\n\r\n const handleShowDrawer = () => {\r\n isShowDrawer.value = true;\r\n };\r\n\r\n return () => {\r\n if (!unref(dataTableInitd)) {\r\n return null;\r\n }\r\n\r\n const _dataTable = unref(dataTable);\r\n\r\n if (_dataTable.dataFilter.getColumns().length === 0) {\r\n return null;\r\n }\r\n\r\n let searchInputVNode = null;\r\n\r\n if (unref(searchFilterColumns).length) {\r\n searchInputVNode = (\r\n <ElTooltip content={unref(searchPlaceholder)} effect=\"dark\" placement=\"top\">\r\n <ElInput\r\n prefixIcon={Search}\r\n class=\"mk-table-filter__search\"\r\n modelValue={unref(search)}\r\n onUpdate:modelValue={(v) => (search.value = v)}\r\n onKeydown={handleSearchKeydown as any}\r\n placeholder={unref(searchPlaceholder)}\r\n onFocus={handleSearchFocus}\r\n onBlur={handleSearchBlur}\r\n onClear={handleSearch}\r\n clearable\r\n />\r\n </ElTooltip>\r\n );\r\n }\r\n\r\n return (\r\n <div class=\"mk-table-filter\">\r\n {searchInputVNode}\r\n <ElTooltip content=\"筛选\" effect=\"dark\" placement=\"top\">\r\n <ElButton onClick={handleShowDrawer}>\r\n <MKSvgIcon name=\"iconoir:filter\" />\r\n </ElButton>\r\n </ElTooltip>\r\n\r\n <MKDataFilterDrawer\r\n visible={unref(isShowDrawer)}\r\n onUpdate:visible={(v) => (isShowDrawer.value = v)}\r\n dataTable={_dataTable}\r\n />\r\n\r\n <div class=\"mk-table-filter__hidden\">\r\n <MKDataFilterForm dataTable={_dataTable} />\r\n </div>\r\n </div>\r\n );\r\n };\r\n },\r\n});\r\n","import TableFilter from \"./table-filter\";\n\nexport const MKTableFilter = TableFilter;\nexport default MKTableFilter;\n"],"names":["buildProps","_isSlot","s","Object","prototype","toString","call","_isVNode","defineComponent","name","props","dataFilterFormItemProps","setup","slots","dataFilterContext","inject","DATA_FILTER_CONTEXT","dataFilter","computed","_filterColumn","createFilterColumn","reactive","FilterColumn","label","unref","addColumn","filterColumn","existingColumn","getColumn","value","get","getParam","set","v","setParam","component","componentProps","componentInfo","useFilterColumnComponent","watch","_dataFilter","isWhereFilter","setParamOperator","defaultOperator","immediate","onBeforeUnmount","deleteParamOperator","deleteParam","children","default","FilterColumnComponent","toRaw","_createVNode","_mergeProps","labelWidth","ElFormItem","withInstall","DataTable","dataFilterFormProps","dataTable","columns","getColumns","filter","column","visible","maxWordCount","Math","max","map","length","provide","resolve","suspenseResolvePromise","Promise","_resolve","handleResolve","onMounted","_","onCleanup","disposable","afterInitdEvent","on","setReady","dispose","MKDataFilterFormItem","ElForm","Suspense","_Fragment","Operator","dataFilterDrawerProps","emits","dataFilterDrawerEmits","emit","handleCancelClick","handleResetClick","reset","beforeSearchEvent","load","handleConfirmClick","HSlideover","MKDataFilterForm","labelPosition","footer","ElButton","_createTextVNode","search","ref","isShowDrawer","dataTableContext","DATA_TABLE_CONTEXT_KEY","dataTableInitd","initd","searchFilterColumns","searchPlaceholder","join","getSearchGroup","clear","handleSearch","debounceSearch","cancel","searchGroup","searchValue","searchFilterColumn","addOrCondition","debounce","handleSearchKeydown","event","key","handleSearchFocus","target","addEventListener","handleSearchBlur","removeEventListener","handleShowDrawer","_dataTable","searchInputVNode","ElTooltip","ElInput","Search","MKSvgIcon","MKDataFilterDrawer"],"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 utils = require("@maketribe/utils");
|
|
5
|
-
const index = require("./index-
|
|
5
|
+
const index = require("./index-B1VQXzw4.cjs");
|
|
6
6
|
require("vue-router");
|
|
7
7
|
require("@maketribe/dm");
|
|
8
8
|
require("element-plus");
|
|
@@ -33,4 +33,4 @@ const MKColumnText$1 = MKColumnText;
|
|
|
33
33
|
exports.MKColumnText = MKColumnText;
|
|
34
34
|
exports.columnTextProps = columnTextProps;
|
|
35
35
|
exports.default = MKColumnText$1;
|
|
36
|
-
//# sourceMappingURL=index-
|
|
36
|
+
//# sourceMappingURL=index-DcyP91fA.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-
|
|
1
|
+
{"version":3,"file":"index-DcyP91fA.cjs","sources":["../../src/components/data-model/data-table/components/column-text/column-text-options.ts","../../src/components/data-model/data-table/components/column-text/column-text.tsx","../../src/components/data-model/data-table/components/column-text/index.ts"],"sourcesContent":["import { ExtractPropTypes } from \"vue\";\nimport { buildProps } from \"@maketribe/utils\";\nimport { columnProps } from \"../../composables\";\n\nexport const columnTextProps = buildProps({\n ...columnProps,\n formatValue: { type: Function, default: (value: any) => value },\n});\n\nexport type ColumnTextProps = ExtractPropTypes<typeof columnTextProps>;\n","import { computed, defineComponent, unref } from \"vue\";\n\nimport { columnTextProps } from \"./column-text-options\";\nimport { useColumn } from \"../../composables\";\n\nexport default defineComponent({\n name: \"MKColumnText\",\n props: columnTextProps,\n setup(props) {\n const { value } = useColumn(props);\n\n const formatValue = computed(() => props.formatValue(unref(value)));\n\n return () => {\n return <span class=\"mk-column-text\">{unref(formatValue)}</span>;\n };\n },\n});\n","import ColumnText from \"./column-text\";\r\n\r\nexport const MKColumnText = ColumnText;\r\nexport default MKColumnText;\r\n\r\nexport * from \"./column-text-options\";\r\n"],"names":["buildProps","columnProps","defineComponent","name","props","columnTextProps","setup","value","useColumn","formatValue","computed","unref","_createVNode"],"mappings":";;;;;;;;;;;AAIO,MAAM,kBAAkBA,MAAAA,WAAW;AAAA,EACxC,GAAGC,MAAA;AAAA,EACH,aAAa,EAAE,MAAM,UAAU,SAAS,CAAC,UAAe,MAAM;AAChE,CAAC;ACFD,MAAeC,iDAAgB;AAAA,EAC7BC,MAAM;AAAA,EACNC,OAAOC;AAAAA,EACPC,MAAMF,OAAO;AACX,UAAM;AAAA,MAAEG;AAAAA,IAAM,IAAIC,MAAAA,UAAUJ,KAAK;AAEjC,UAAMK,cAAcC,IAAQ,SAAC,MAAMN,MAAMK,YAAYE,UAAMJ,KAAK,CAAC,CAAC;AAElE,WAAO,MAAM;AACX,aAAAK,IAAAA,YAAA,QAAA;AAAA,QAAA,SAAA;AAAA,MAAqCD,GAAAA,CAAAA,IAAK,MAACF,WAAW,CAAC,CAAA;AAAA;EAE3D;AACF,CAAC;ACfM,MAAM,eAAe;AAC5B,MAAA,iBAAe;;;;"}
|
|
@@ -4,7 +4,7 @@ const utils = require("@maketribe/utils");
|
|
|
4
4
|
const vue = require("vue");
|
|
5
5
|
const dm = require("@maketribe/dm");
|
|
6
6
|
const useCondition = require("./use-condition-BsNGbgF4.cjs");
|
|
7
|
-
const index = require("./index-
|
|
7
|
+
const index = require("./index-B1VQXzw4.cjs");
|
|
8
8
|
const conditionSelectProps = utils.buildProps({
|
|
9
9
|
...useCondition.dataFilterConditionProps,
|
|
10
10
|
multiple: {
|
|
@@ -48,4 +48,4 @@ exports.MKConditionSelect = MKConditionSelect;
|
|
|
48
48
|
exports.conditionSelectEmits = conditionSelectEmits;
|
|
49
49
|
exports.conditionSelectProps = conditionSelectProps;
|
|
50
50
|
exports.default = MKConditionSelect;
|
|
51
|
-
//# sourceMappingURL=index-
|
|
51
|
+
//# sourceMappingURL=index-DkGZObr_.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-
|
|
1
|
+
{"version":3,"file":"index-DkGZObr_.cjs","sources":["../../src/components/data-model/data-filter-form/components/condition-select/condition-select-options.ts","../../src/components/data-model/data-filter-form/components/condition-select/condition-select.tsx","../../src/components/data-model/data-filter-form/components/condition-select/index.ts"],"sourcesContent":["import { ExtractPropTypes } from \"vue\";\nimport { buildProps } from \"@maketribe/utils\";\nimport { DataTable } from \"@maketribe/dm\";\nimport { dataFilterConditionProps } from \"../../composables\";\n\nexport const conditionSelectProps = buildProps({\n ...dataFilterConditionProps,\n multiple: {\n type: Boolean,\n default: false,\n },\n options: {\n type: Array,\n },\n dataTable: {\n type: DataTable<any>,\n },\n});\n\nexport type ConditionSelectProps = ExtractPropTypes<\n typeof conditionSelectProps\n>;\n\nexport const conditionSelectEmits = {\n \"update:model-value\": (modelValue: any) => true,\n};\n\nexport type ConditionSelectEmits = typeof conditionSelectEmits;\n","import { computed, defineComponent, unref } from \"vue\";\n\nimport {\n conditionSelectEmits,\n conditionSelectProps,\n} from \"./condition-select-options\";\nimport { MKDataSelect } from \"../../../../basic/data-select\";\n\nexport default defineComponent({\n name: \"MKConditionSelect\",\n props: conditionSelectProps,\n emits: conditionSelectEmits,\n setup(props, { emit }) {\n const modelValue = computed({\n get: () => props.modelValue,\n set: (v) => emit(\"update:model-value\", v),\n });\n\n return () => {\n return (\n <MKDataSelect\n modelValue={unref(modelValue)}\n dataTable={props.dataTable}\n options={props.options}\n multiple={props.multiple}\n onUpdate:model-value={(v: any) => (modelValue.value = v)}\n />\n );\n };\n },\n});\n","import { withInstall } from \"@maketribe/utils\";\r\nimport ConditionSelect from \"./condition-select\";\r\n\r\nexport const MKConditionSelect = withInstall(ConditionSelect);\r\nexport default MKConditionSelect;\r\n\r\nexport * from \"./condition-select-options\";\r\n"],"names":["buildProps","dataFilterConditionProps","DataTable","defineComponent","name","props","conditionSelectProps","emits","conditionSelectEmits","setup","emit","modelValue","computed","get","set","v","_createVNode","MKDataSelect","unref","dataTable","options","multiple","value","withInstall"],"mappings":";;;;;;;AAKO,MAAM,uBAAuBA,MAAAA,WAAW;AAAA,EAC7C,GAAGC,aAAA;AAAA,EACH,UAAU;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA,EACX;AAAA,EACA,SAAS;AAAA,IACP,MAAM;AAAA,EACR;AAAA,EACA,WAAW;AAAA,IACT,MAAMC,GAAA;AAAA,EACR;AACF,CAAC;AAMM,MAAM,uBAAuB;AAAA,EAClC,sBAAsB,CAAC,eAAoB;AAC7C;ACjBA,MAAeC,sDAAgB;AAAA,EAC7BC,MAAM;AAAA,EACNC,OAAOC;AAAAA,EACPC,OAAOC;AAAAA,EACPC,MAAMJ,OAAO;AAAA,IAAEK;AAAAA,EAAK,GAAG;AACrB,UAAMC,aAAaC,IAAAA,SAAS;AAAA,MAC1BC,KAAKA,MAAMR,MAAMM;AAAAA,MACjBG,KAAMC,OAAML,KAAK,sBAAsBK,CAAC;AAAA,IAC1C,CAAC;AAED,WAAO,MAAM;AACX,aAAAC,IAAAA,YAAAC,MAAAA,cAAA;AAAA,QAAA,cAEgBC,IAAK,MAACP,UAAU;AAAA,QAAC,aAClBN,MAAMc;AAAAA,QAAS,WACjBd,MAAMe;AAAAA,QAAO,YACZf,MAAMgB;AAAAA,QAAQ,wBACDN,OAAYJ,WAAWW,QAAQP;AAAAA,MAAE,GAAA,IAAA;AAAA;EAIhE;AACF,CAAC;AC3BY,MAAA,oBAAoBQ,kBAAY,eAAe;;;;;"}
|
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
|
3
3
|
const vue = require("vue");
|
|
4
4
|
const request = require("@maketribe/request");
|
|
5
5
|
const dm = require("@maketribe/dm");
|
|
6
|
-
const index = require("./index-
|
|
6
|
+
const index = require("./index-B1VQXzw4.cjs");
|
|
7
7
|
require("element-plus");
|
|
8
8
|
require("@maketribe/utils");
|
|
9
9
|
require("vue-router");
|
|
@@ -390,4 +390,4 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
390
390
|
}
|
|
391
391
|
});
|
|
392
392
|
exports.default = _sfc_main;
|
|
393
|
-
//# sourceMappingURL=index-
|
|
393
|
+
//# sourceMappingURL=index-DkIRPJAw.cjs.map
|