@maketribe/ms-app 5.0.7 → 5.0.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/{404-C8nu30Zm.cjs → 404-BIDYMIcC.cjs} +2 -2
- package/dist/cjs/{404-C8nu30Zm.cjs.map → 404-BIDYMIcC.cjs.map} +1 -1
- package/dist/cjs/{Editor-Cxuu5U5Y.cjs → Editor-BfV0AK2P.cjs} +2 -2
- package/dist/cjs/{Editor-Cxuu5U5Y.cjs.map → Editor-BfV0AK2P.cjs.map} +1 -1
- package/dist/cjs/{Editor-DnOveke2.cjs → Editor-Bn5HOdE7.cjs} +2 -2
- package/dist/cjs/{Editor-DnOveke2.cjs.map → Editor-Bn5HOdE7.cjs.map} +1 -1
- package/dist/cjs/{PermissionManage-YXoEb78H.cjs → PermissionManage-DF4f122u.cjs} +2 -2
- package/dist/cjs/{PermissionManage-YXoEb78H.cjs.map → PermissionManage-DF4f122u.cjs.map} +1 -1
- package/dist/cjs/{ResourceSelectInput-DLB_Tjwn.cjs → ResourceSelectInput-CwFEJVO9.cjs} +2 -2
- package/dist/cjs/{ResourceSelectInput-DLB_Tjwn.cjs.map → ResourceSelectInput-CwFEJVO9.cjs.map} +1 -1
- package/dist/cjs/{dialog-B5ulKD-q.cjs → dialog-6PjQiIMK.cjs} +2 -2
- package/dist/cjs/{dialog-B5ulKD-q.cjs.map → dialog-6PjQiIMK.cjs.map} +1 -1
- package/dist/cjs/{dialog-DYzAnJMG.cjs → dialog-BGfaGyQ6.cjs} +2 -2
- package/dist/cjs/{dialog-DYzAnJMG.cjs.map → dialog-BGfaGyQ6.cjs.map} +1 -1
- package/dist/cjs/{dialog-D_IDp1nx.cjs → dialog-DRecJ_Xg.cjs} +2 -2
- package/dist/cjs/{dialog-D_IDp1nx.cjs.map → dialog-DRecJ_Xg.cjs.map} +1 -1
- package/dist/cjs/{edit-BCgfrZaE.cjs → edit-BG_tSegV.cjs} +2 -2
- package/dist/cjs/{edit-BCgfrZaE.cjs.map → edit-BG_tSegV.cjs.map} +1 -1
- package/dist/cjs/{index-DDFxwLX-.cjs → index--c8MDbiE.cjs} +2 -2
- package/dist/cjs/{index-DDFxwLX-.cjs.map → index--c8MDbiE.cjs.map} +1 -1
- package/dist/cjs/{index-DlNcbSWy.cjs → index-BBiY4zXU.cjs} +2 -2
- package/dist/cjs/{index-DlNcbSWy.cjs.map → index-BBiY4zXU.cjs.map} +1 -1
- package/dist/cjs/{index-DhN5vMsM.cjs → index-BHoDltlq.cjs} +2 -2
- package/dist/cjs/{index-DhN5vMsM.cjs.map → index-BHoDltlq.cjs.map} +1 -1
- package/dist/cjs/{index-pZAGw9y8.cjs → index-BXpyNkWH.cjs} +3 -3
- package/dist/cjs/{index-pZAGw9y8.cjs.map → index-BXpyNkWH.cjs.map} +1 -1
- package/dist/cjs/{index-Ce24QyMB.cjs → index-BY-U_xWS.cjs} +2 -2
- package/dist/cjs/{index-Ce24QyMB.cjs.map → index-BY-U_xWS.cjs.map} +1 -1
- package/dist/cjs/{index-BlKtOwxw.cjs → index-BY3mD50D.cjs} +2 -2
- package/dist/cjs/index-BY3mD50D.cjs.map +1 -0
- package/dist/cjs/{index-9ZNJfTqu.cjs → index-B_NYzlK6.cjs} +40 -40
- package/dist/cjs/{index-9ZNJfTqu.cjs.map → index-B_NYzlK6.cjs.map} +1 -1
- package/dist/cjs/{index-BI2Hv2_e.cjs → index-Bf6ESRnE.cjs} +2 -2
- package/dist/cjs/{index-BI2Hv2_e.cjs.map → index-Bf6ESRnE.cjs.map} +1 -1
- package/dist/cjs/{index-D2_uvOqH.cjs → index-BhOvr1Oy.cjs} +2 -2
- package/dist/cjs/{index-D2_uvOqH.cjs.map → index-BhOvr1Oy.cjs.map} +1 -1
- package/dist/cjs/{index-D2WkLc3C.cjs → index-BkAhQ2TQ.cjs} +5 -5
- package/dist/cjs/index-BkAhQ2TQ.cjs.map +1 -0
- package/dist/cjs/{index-P7hkyEpK.cjs → index-BwEDxVMu.cjs} +4 -4
- package/dist/cjs/{index-P7hkyEpK.cjs.map → index-BwEDxVMu.cjs.map} +1 -1
- package/dist/cjs/{index-DU3QcGw2.cjs → index-CK81RbM7.cjs} +2 -2
- package/dist/cjs/{index-DU3QcGw2.cjs.map → index-CK81RbM7.cjs.map} +1 -1
- package/dist/cjs/{index-BBeFZqDS.cjs → index-CWgDr4Ab.cjs} +2 -2
- package/dist/cjs/{index-BBeFZqDS.cjs.map → index-CWgDr4Ab.cjs.map} +1 -1
- package/dist/cjs/{index-CNs96e2U.cjs → index-D52vitTh.cjs} +3 -3
- package/dist/cjs/{index-CNs96e2U.cjs.map → index-D52vitTh.cjs.map} +1 -1
- package/dist/cjs/{index-CRLCw3DH.cjs → index-DSfBIU4s.cjs} +3 -3
- package/dist/cjs/{index-CRLCw3DH.cjs.map → index-DSfBIU4s.cjs.map} +1 -1
- package/dist/cjs/{index-BjOYTQNl.cjs → index-DXnXM4aZ.cjs} +2 -2
- package/dist/cjs/{index-BjOYTQNl.cjs.map → index-DXnXM4aZ.cjs.map} +1 -1
- package/dist/cjs/{index-bUBTeHB0.cjs → index-DYk1cnH7.cjs} +2 -2
- package/dist/cjs/{index-bUBTeHB0.cjs.map → index-DYk1cnH7.cjs.map} +1 -1
- package/dist/cjs/{index-CDOhulZ9.cjs → index-Do8KlOAA.cjs} +2 -2
- package/dist/cjs/{index-CDOhulZ9.cjs.map → index-Do8KlOAA.cjs.map} +1 -1
- package/dist/cjs/{index-C4JvLhxR.cjs → index-DtnQnL0I.cjs} +4 -38
- package/dist/cjs/index-DtnQnL0I.cjs.map +1 -0
- package/dist/cjs/{index-C9DRJ_R6.cjs → index-NOz-7LLC.cjs} +3 -3
- package/dist/cjs/{index-C9DRJ_R6.cjs.map → index-NOz-7LLC.cjs.map} +1 -1
- package/dist/cjs/{index-Cqj2f1PA.cjs → index-P7ex-e34.cjs} +2 -2
- package/dist/cjs/index-P7ex-e34.cjs.map +1 -0
- package/dist/cjs/{index-O3oSEIDs.cjs → index-PdOp9srZ.cjs} +2 -2
- package/dist/cjs/{index-O3oSEIDs.cjs.map → index-PdOp9srZ.cjs.map} +1 -1
- package/dist/cjs/{index-CveI1MAA.cjs → index-UQLWZg0_.cjs} +3 -3
- package/dist/cjs/{index-CveI1MAA.cjs.map → index-UQLWZg0_.cjs.map} +1 -1
- package/dist/cjs/{index-B1lU89SO.cjs → index-XTWaqhEp.cjs} +2 -2
- package/dist/cjs/{index-B1lU89SO.cjs.map → index-XTWaqhEp.cjs.map} +1 -1
- package/dist/cjs/{index-DxIE4twx.cjs → index-YCLEZCAs.cjs} +2 -2
- package/dist/cjs/{index-DxIE4twx.cjs.map → index-YCLEZCAs.cjs.map} +1 -1
- package/dist/cjs/{index-iP6rFOYM.cjs → index-ajPO9iHr.cjs} +2 -2
- package/dist/cjs/{index-iP6rFOYM.cjs.map → index-ajPO9iHr.cjs.map} +1 -1
- package/dist/cjs/{index-Ce4ravP6.cjs → index-nqNW-JSk.cjs} +2 -2
- package/dist/cjs/{index-Ce4ravP6.cjs.map → index-nqNW-JSk.cjs.map} +1 -1
- package/dist/cjs/{index-C05eL1CG.cjs → index-sfJAGyXi.cjs} +2 -2
- package/dist/cjs/{index-C05eL1CG.cjs.map → index-sfJAGyXi.cjs.map} +1 -1
- package/dist/cjs/index.js +1 -1
- package/dist/cjs/{normal-AaO9srgS.cjs → normal-B2xe7Lw2.cjs} +2 -2
- package/dist/cjs/{normal-AaO9srgS.cjs.map → normal-B2xe7Lw2.cjs.map} +1 -1
- package/dist/cjs/{normal-DzpN-tmy.cjs → normal-CQ98dFa6.cjs} +2 -2
- package/dist/cjs/{normal-DzpN-tmy.cjs.map → normal-CQ98dFa6.cjs.map} +1 -1
- package/dist/cjs/{table-AMpm7hkk.cjs → table-DaEUP5v3.cjs} +2 -2
- package/dist/cjs/{table-AMpm7hkk.cjs.map → table-DaEUP5v3.cjs.map} +1 -1
- package/dist/esm/{404-DrYKofUt.js → 404-DASdm_7V.js} +2 -2
- package/dist/esm/{404-DrYKofUt.js.map → 404-DASdm_7V.js.map} +1 -1
- package/dist/esm/{Editor-CszbtwYJ.js → Editor-BR_gOKIU.js} +2 -2
- package/dist/esm/{Editor-CszbtwYJ.js.map → Editor-BR_gOKIU.js.map} +1 -1
- package/dist/esm/{Editor-DnuqgkXg.js → Editor-C-NQ7Pq8.js} +2 -2
- package/dist/esm/{Editor-DnuqgkXg.js.map → Editor-C-NQ7Pq8.js.map} +1 -1
- package/dist/esm/{PermissionManage-FUljX6_R.js → PermissionManage-CviZpEWO.js} +2 -2
- package/dist/esm/{PermissionManage-FUljX6_R.js.map → PermissionManage-CviZpEWO.js.map} +1 -1
- package/dist/esm/{ResourceSelectInput-hzKYS1V8.js → ResourceSelectInput-BZfQIKr0.js} +2 -2
- package/dist/esm/{ResourceSelectInput-hzKYS1V8.js.map → ResourceSelectInput-BZfQIKr0.js.map} +1 -1
- package/dist/esm/{dialog--nL37O98.js → dialog-BvN7vEgX.js} +2 -2
- package/dist/esm/{dialog--nL37O98.js.map → dialog-BvN7vEgX.js.map} +1 -1
- package/dist/esm/{dialog-UVUBlVgO.js → dialog-C0y5QZEB.js} +2 -2
- package/dist/esm/{dialog-UVUBlVgO.js.map → dialog-C0y5QZEB.js.map} +1 -1
- package/dist/esm/{dialog-CFITXwu-.js → dialog-DTXozBBo.js} +2 -2
- package/dist/esm/{dialog-CFITXwu-.js.map → dialog-DTXozBBo.js.map} +1 -1
- package/dist/esm/{edit-BB7QAJwd.js → edit-DSDNIqMo.js} +2 -2
- package/dist/esm/{edit-BB7QAJwd.js.map → edit-DSDNIqMo.js.map} +1 -1
- package/dist/esm/{index-CkUHjpVZ.js → index-948pHVIx.js} +2 -2
- package/dist/esm/{index-CkUHjpVZ.js.map → index-948pHVIx.js.map} +1 -1
- package/dist/esm/{index-Coa43LvX.js → index-B-Qnsj6_.js} +2 -2
- package/dist/esm/{index-Coa43LvX.js.map → index-B-Qnsj6_.js.map} +1 -1
- package/dist/esm/{index-CjQQ3iDb.js → index-B3MG2tWC.js} +3 -3
- package/dist/esm/{index-CjQQ3iDb.js.map → index-B3MG2tWC.js.map} +1 -1
- package/dist/esm/{index-D_CKuKoo.js → index-B4lIWX72.js} +2 -2
- package/dist/esm/{index-D_CKuKoo.js.map → index-B4lIWX72.js.map} +1 -1
- package/dist/esm/{index-BsTLJmV1.js → index-BHGgyBY7.js} +5 -5
- package/dist/esm/index-BHGgyBY7.js.map +1 -0
- package/dist/esm/{index-B_8SWX-W.js → index-BR1S85Ut.js} +2 -2
- package/dist/esm/index-BR1S85Ut.js.map +1 -0
- package/dist/esm/{index-Jdb3h-Cn.js → index-BX_fbJCv.js} +2 -2
- package/dist/esm/{index-Jdb3h-Cn.js.map → index-BX_fbJCv.js.map} +1 -1
- package/dist/esm/{index-BnlFb2u8.js → index-BihcvWnt.js} +3 -3
- package/dist/esm/{index-BnlFb2u8.js.map → index-BihcvWnt.js.map} +1 -1
- package/dist/esm/{index-83tpPaur.js → index-BrtsLDxq.js} +2 -2
- package/dist/esm/{index-83tpPaur.js.map → index-BrtsLDxq.js.map} +1 -1
- package/dist/esm/{index-DpwAE_7u.js → index-Ck4uVtob.js} +5 -39
- package/dist/esm/index-Ck4uVtob.js.map +1 -0
- package/dist/esm/{index-BGPbplSD.js → index-Cq7MnBXz.js} +2 -2
- package/dist/esm/{index-BGPbplSD.js.map → index-Cq7MnBXz.js.map} +1 -1
- package/dist/esm/{index-D3r8yfsY.js → index-Czm8pBr-.js} +2 -2
- package/dist/esm/{index-D3r8yfsY.js.map → index-Czm8pBr-.js.map} +1 -1
- package/dist/esm/{index-DVu4B0Jb.js → index-DRMkTI0g.js} +2 -2
- package/dist/esm/{index-DVu4B0Jb.js.map → index-DRMkTI0g.js.map} +1 -1
- package/dist/esm/{index-D9fjxSL4.js → index-D_LaS-VV.js} +2 -2
- package/dist/esm/{index-D9fjxSL4.js.map → index-D_LaS-VV.js.map} +1 -1
- package/dist/esm/{index-p-xkS0IP.js → index-Dakmvbsp.js} +2 -2
- package/dist/esm/{index-p-xkS0IP.js.map → index-Dakmvbsp.js.map} +1 -1
- package/dist/esm/{index-BUaK5DTA.js → index-DdBnsCVn.js} +3 -3
- package/dist/esm/{index-BUaK5DTA.js.map → index-DdBnsCVn.js.map} +1 -1
- package/dist/esm/{index-Nxpa4qBO.js → index-Dhxizga1.js} +2 -2
- package/dist/esm/{index-Nxpa4qBO.js.map → index-Dhxizga1.js.map} +1 -1
- package/dist/esm/{index-BfdsTogi.js → index-Do1FN_FR.js} +2 -2
- package/dist/esm/{index-BfdsTogi.js.map → index-Do1FN_FR.js.map} +1 -1
- package/dist/esm/{index-DyS0xU_L.js → index-Dqxy9FAT.js} +2 -2
- package/dist/esm/{index-DyS0xU_L.js.map → index-Dqxy9FAT.js.map} +1 -1
- package/dist/esm/{index-s_aQeFrS.js → index-DvvglmTB.js} +3 -3
- package/dist/esm/{index-s_aQeFrS.js.map → index-DvvglmTB.js.map} +1 -1
- package/dist/esm/{index-DddknvTX.js → index-DzXMuczW.js} +40 -40
- package/dist/esm/{index-DddknvTX.js.map → index-DzXMuczW.js.map} +1 -1
- package/dist/esm/{index-C-xITLKJ.js → index-LbFUmUh4.js} +4 -4
- package/dist/esm/{index-C-xITLKJ.js.map → index-LbFUmUh4.js.map} +1 -1
- package/dist/esm/{index-X16arBXD.js → index-Nbr3Eni1.js} +2 -2
- package/dist/esm/index-Nbr3Eni1.js.map +1 -0
- package/dist/esm/{index-ClyK2QkM.js → index-ZJ2yWu1R.js} +2 -2
- package/dist/esm/{index-ClyK2QkM.js.map → index-ZJ2yWu1R.js.map} +1 -1
- package/dist/esm/{index-C_0_LVmx.js → index-_V10fkmP.js} +3 -3
- package/dist/esm/{index-C_0_LVmx.js.map → index-_V10fkmP.js.map} +1 -1
- package/dist/esm/{index-BnQGLVrJ.js → index-rlTrfHB1.js} +2 -2
- package/dist/esm/{index-BnQGLVrJ.js.map → index-rlTrfHB1.js.map} +1 -1
- package/dist/esm/{index-CbqELR7-.js → index-sNc5bZ1A.js} +2 -2
- package/dist/esm/{index-CbqELR7-.js.map → index-sNc5bZ1A.js.map} +1 -1
- package/dist/esm/{index-CwOK_Y0l.js → index-sy9POiMo.js} +2 -2
- package/dist/esm/{index-CwOK_Y0l.js.map → index-sy9POiMo.js.map} +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/{normal-DFz2_HB1.js → normal-BEZy15gA.js} +2 -2
- package/dist/esm/{normal-DFz2_HB1.js.map → normal-BEZy15gA.js.map} +1 -1
- package/dist/esm/{normal-BPSUoo-T.js → normal-BcyGG3km.js} +2 -2
- package/dist/esm/{normal-BPSUoo-T.js.map → normal-BcyGG3km.js.map} +1 -1
- package/dist/esm/{table-B7Fqs0K3.js → table-BGycI0PT.js} +2 -2
- package/dist/esm/{table-B7Fqs0K3.js.map → table-BGycI0PT.js.map} +1 -1
- package/package.json +2 -2
- package/dist/cjs/index-BlKtOwxw.cjs.map +0 -1
- package/dist/cjs/index-C4JvLhxR.cjs.map +0 -1
- package/dist/cjs/index-Cqj2f1PA.cjs.map +0 -1
- package/dist/cjs/index-D2WkLc3C.cjs.map +0 -1
- package/dist/esm/index-B_8SWX-W.js.map +0 -1
- package/dist/esm/index-BsTLJmV1.js.map +0 -1
- package/dist/esm/index-DpwAE_7u.js.map +0 -1
- package/dist/esm/index-X16arBXD.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-CjQQ3iDb.js","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\";\nimport { buildProps } from \"@maketribe/utils\";\n\nexport const dataFilterFormItemProps = buildProps({\n name: { type: String, required: true },\n label: { type: String },\n} as const);\n\nexport type DataFilterFormItemProps = ExtractPropTypes<\n typeof dataFilterFormItemProps\n>;\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\";\nimport DataFilterFormItem from \"./data-filter-form-item\";\n\nexport const MKDataFilterFormItem = withInstall(DataFilterFormItem);\nexport default MKDataFilterFormItem;\n\nexport * from \"./data-filter-form-item-options\";\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\";\nimport \"./data-filter.scss\"\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\";\n\nexport type OperatorOption = { value: Operator; label: string };\n\nexport const EQUAL_OPTION: OperatorOption = {\n value: Operator.EQUAL,\n label: \"mk.operator.equal\",\n};\n\nexport const CONTAIN_OPTION: OperatorOption = {\n value: Operator.CONTAIN,\n label: \"mk.operator.contain\",\n};\n\nexport const IN_OPTION: OperatorOption = {\n value: Operator.IN,\n label: \"mk.operator.in\",\n};\n\nexport const NOT_IN_OPTION: OperatorOption = {\n value: Operator.NOT_IN,\n label: \"mk.operator.notIn\",\n};\n\nexport const LESS_THAN_OPTION: OperatorOption = {\n value: Operator.LESS_THAN,\n label: \"mk.operator.lessThan\",\n};\n\nexport const LESS_THAN_EQUAL_OPTION: OperatorOption = {\n value: Operator.LESS_THAN_EQUAL,\n label: \"mk.operator.lessThanEqual\",\n};\n\nexport const GREATER_THAN_OPTION: OperatorOption = {\n value: Operator.GREATER_THAN,\n label: \"mk.operator.greaterThan\",\n};\n\nexport const GREATER_THAN_EQUAL_OPTION: OperatorOption = {\n value: Operator.GREATER_THAN_EQUAL,\n label: \"mk.operator.greaterThanEqual\",\n};\n\nexport const BETWEEN_OPTION: OperatorOption = {\n value: Operator.BETWEEN,\n label: \"mk.operator.between\",\n};\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 size: {\n type: [String,Number],\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\";\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 <ElDrawer\n title=\"筛选器\" size={props.size}\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\";\nimport { ElButton, ElInput, ElTooltip } from \"element-plus\";\nimport { Search } from \"@element-plus/icons-vue\";\nimport { debounce } from \"lodash-es\";\nimport { isWhereFilter } from \"@maketribe/dm\";\nimport { DATA_TABLE_CONTEXT_KEY } from \"../../../token\";\nimport { MKSvgIcon } from \"../../../../../basic/SvgIcon/index.ts\";\nimport { MKDataFilterDrawer } from \"../../../../data-filter-drawer\";\nimport { MKDataFilterForm } from \"../../../../data-filter-form\";\nimport useSettingsStore from \"../../../../../../layouts/store/modules/settings.ts\";\n\nexport default defineComponent({\n name: \"MKTableFilter\",\n setup() {\n const search = ref(\"\");\n const settingsStore = useSettingsStore();\n const isShowDrawer = ref(false);\n\n const dataTableContext = inject(DATA_TABLE_CONTEXT_KEY);\n\n const dataTable = computed(() => dataTableContext!.dataTable);\n\n const dataTableInitd = computed(() => unref(dataTable)?.initd ?? false);\n\n const searchFilterColumns = computed(() =>\n unref(dataTable)\n .dataFilter.getColumns()\n .filter((column) => column.search)\n );\n\n const searchPlaceholder = computed(\n () =>\n `通过${unref(searchFilterColumns)\n .map((column) => column.label)\n .join(\"、\")}搜索`\n );\n\n watch(\n dataTable,\n (dataTable, _, onCleanup) => {\n onCleanup(() => {\n const dataFilter = dataTable.dataFilter;\n if (isWhereFilter(dataFilter)) {\n dataFilter.getSearchGroup().clear();\n }\n });\n },\n { immediate: true }\n );\n\n const handleSearch = () => {\n debounceSearch.cancel();\n\n const dataFilter = unref(dataTable).dataFilter;\n if (isWhereFilter(dataFilter)) {\n const searchGroup = dataFilter.getSearchGroup();\n searchGroup.clear();\n\n const searchValue = unref(search);\n\n for (const searchFilterColumn of unref(searchFilterColumns)) {\n searchGroup.addOrCondition(\n searchFilterColumn.name,\n \"like\",\n `%${searchValue}%`\n );\n }\n }\n\n unref(dataTable).load();\n };\n\n const debounceSearch = debounce(handleSearch, 1000);\n\n const handleSearchKeydown = (event: KeyboardEvent) => {\n if (event.key === \"Enter\") {\n handleSearch();\n }\n };\n\n const handleSearchFocus = (event: FocusEvent) => {\n const target = event.target as HTMLInputElement;\n\n target.addEventListener(\"input\", debounceSearch);\n };\n\n const handleSearchBlur = (event: any) => {\n const target = event.target as HTMLInputElement;\n\n target.removeEventListener(\"input\", debounceSearch);\n };\n\n const handleShowDrawer = () => {\n isShowDrawer.value = true;\n };\n\n return () => {\n if (!unref(dataTableInitd)) {\n return null;\n }\n\n const _dataTable = unref(dataTable);\n\n if (_dataTable.dataFilter.getColumns().length === 0) {\n return null;\n }\n\n let searchInputVNode = null;\n\n if (unref(searchFilterColumns).length) {\n searchInputVNode = (\n <ElInput\n prefixIcon={Search}\n class=\"mk-table-filter__search\"\n modelValue={unref(search)}\n onUpdate:modelValue={(v) => (search.value = v)}\n onKeydown={handleSearchKeydown as any}\n placeholder={unref(searchPlaceholder)}\n onFocus={handleSearchFocus}\n onBlur={handleSearchBlur}\n onClear={handleSearch}\n clearable\n />\n );\n }\n\n return (\n <div class=\"mk-table-filter\">\n { settingsStore.mode === 'pc' ? searchInputVNode : null}\n {\n settingsStore.mode === 'pc' ?\n <ElTooltip content=\"筛选\" effect=\"dark\" placement=\"top\">\n <ElButton onClick={handleShowDrawer}>\n <MKSvgIcon name=\"iconoir:filter\" />\n </ElButton>\n </ElTooltip>\n :\n <ElButton onClick={handleShowDrawer}>\n <MKSvgIcon name=\"iconoir:filter\" />\n </ElButton>\n }\n\n <MKDataFilterDrawer size={settingsStore.mode === 'pc' ? \"400px\" : '100%'}\n visible={unref(isShowDrawer)}\n onUpdate:visible={(v) => (isShowDrawer.value = v)}\n dataTable={_dataTable}\n />\n\n <div class=\"mk-table-filter__hidden\">\n <MKDataFilterForm dataTable={_dataTable} />\n </div>\n </div>\n );\n };\n },\n});\n","import \"./index.scss\"\nimport TableFilter from \"./table-filter\";\n\nexport const MKTableFilter = TableFilter;\nexport default MKTableFilter;\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","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","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","dataFilterDrawerProps","emits","dataFilterDrawerEmits","emit","handleCancelClick","handleResetClick","reset","beforeSearchEvent","load","handleConfirmClick","ElDrawer","size","MKDataFilterForm","labelPosition","footer","ElButton","_createTextVNode","search","ref","settingsStore","useSettingsStore","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","ElInput","Search","mode","ElTooltip","MKSvgIcon","MKDataFilterDrawer"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index-B3MG2tWC.js","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\";\nimport { buildProps } from \"@maketribe/utils\";\n\nexport const dataFilterFormItemProps = buildProps({\n name: { type: String, required: true },\n label: { type: String },\n} as const);\n\nexport type DataFilterFormItemProps = ExtractPropTypes<\n typeof dataFilterFormItemProps\n>;\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\";\nimport DataFilterFormItem from \"./data-filter-form-item\";\n\nexport const MKDataFilterFormItem = withInstall(DataFilterFormItem);\nexport default MKDataFilterFormItem;\n\nexport * from \"./data-filter-form-item-options\";\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\";\nimport \"./data-filter.scss\"\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\";\n\nexport type OperatorOption = { value: Operator; label: string };\n\nexport const EQUAL_OPTION: OperatorOption = {\n value: Operator.EQUAL,\n label: \"mk.operator.equal\",\n};\n\nexport const CONTAIN_OPTION: OperatorOption = {\n value: Operator.CONTAIN,\n label: \"mk.operator.contain\",\n};\n\nexport const IN_OPTION: OperatorOption = {\n value: Operator.IN,\n label: \"mk.operator.in\",\n};\n\nexport const NOT_IN_OPTION: OperatorOption = {\n value: Operator.NOT_IN,\n label: \"mk.operator.notIn\",\n};\n\nexport const LESS_THAN_OPTION: OperatorOption = {\n value: Operator.LESS_THAN,\n label: \"mk.operator.lessThan\",\n};\n\nexport const LESS_THAN_EQUAL_OPTION: OperatorOption = {\n value: Operator.LESS_THAN_EQUAL,\n label: \"mk.operator.lessThanEqual\",\n};\n\nexport const GREATER_THAN_OPTION: OperatorOption = {\n value: Operator.GREATER_THAN,\n label: \"mk.operator.greaterThan\",\n};\n\nexport const GREATER_THAN_EQUAL_OPTION: OperatorOption = {\n value: Operator.GREATER_THAN_EQUAL,\n label: \"mk.operator.greaterThanEqual\",\n};\n\nexport const BETWEEN_OPTION: OperatorOption = {\n value: Operator.BETWEEN,\n label: \"mk.operator.between\",\n};\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 size: {\n type: [String,Number],\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\";\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 <ElDrawer\n title=\"筛选器\" size={props.size}\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\";\nimport { ElButton, ElInput, ElTooltip } from \"element-plus\";\nimport { Search } from \"@element-plus/icons-vue\";\nimport { debounce } from \"lodash-es\";\nimport { isWhereFilter } from \"@maketribe/dm\";\nimport { DATA_TABLE_CONTEXT_KEY } from \"../../../token\";\nimport { MKSvgIcon } from \"../../../../../basic/SvgIcon/index.ts\";\nimport { MKDataFilterDrawer } from \"../../../../data-filter-drawer\";\nimport { MKDataFilterForm } from \"../../../../data-filter-form\";\nimport useSettingsStore from \"../../../../../../layouts/store/modules/settings.ts\";\n\nexport default defineComponent({\n name: \"MKTableFilter\",\n setup() {\n const search = ref(\"\");\n const settingsStore = useSettingsStore();\n const isShowDrawer = ref(false);\n\n const dataTableContext = inject(DATA_TABLE_CONTEXT_KEY);\n\n const dataTable = computed(() => dataTableContext!.dataTable);\n\n const dataTableInitd = computed(() => unref(dataTable)?.initd ?? false);\n\n const searchFilterColumns = computed(() =>\n unref(dataTable)\n .dataFilter.getColumns()\n .filter((column) => column.search)\n );\n\n const searchPlaceholder = computed(\n () =>\n `通过${unref(searchFilterColumns)\n .map((column) => column.label)\n .join(\"、\")}搜索`\n );\n\n watch(\n dataTable,\n (dataTable, _, onCleanup) => {\n onCleanup(() => {\n const dataFilter = dataTable.dataFilter;\n if (isWhereFilter(dataFilter)) {\n dataFilter.getSearchGroup().clear();\n }\n });\n },\n { immediate: true }\n );\n\n const handleSearch = () => {\n debounceSearch.cancel();\n\n const dataFilter = unref(dataTable).dataFilter;\n if (isWhereFilter(dataFilter)) {\n const searchGroup = dataFilter.getSearchGroup();\n searchGroup.clear();\n\n const searchValue = unref(search);\n\n for (const searchFilterColumn of unref(searchFilterColumns)) {\n searchGroup.addOrCondition(\n searchFilterColumn.name,\n \"like\",\n `%${searchValue}%`\n );\n }\n }\n\n unref(dataTable).load();\n };\n\n const debounceSearch = debounce(handleSearch, 1000);\n\n const handleSearchKeydown = (event: KeyboardEvent) => {\n if (event.key === \"Enter\") {\n handleSearch();\n }\n };\n\n const handleSearchFocus = (event: FocusEvent) => {\n const target = event.target as HTMLInputElement;\n\n target.addEventListener(\"input\", debounceSearch);\n };\n\n const handleSearchBlur = (event: any) => {\n const target = event.target as HTMLInputElement;\n\n target.removeEventListener(\"input\", debounceSearch);\n };\n\n const handleShowDrawer = () => {\n isShowDrawer.value = true;\n };\n\n return () => {\n if (!unref(dataTableInitd)) {\n return null;\n }\n\n const _dataTable = unref(dataTable);\n\n if (_dataTable.dataFilter.getColumns().length === 0) {\n return null;\n }\n\n let searchInputVNode = null;\n\n if (unref(searchFilterColumns).length) {\n searchInputVNode = (\n <ElInput\n prefixIcon={Search}\n class=\"mk-table-filter__search\"\n modelValue={unref(search)}\n onUpdate:modelValue={(v) => (search.value = v)}\n onKeydown={handleSearchKeydown as any}\n placeholder={unref(searchPlaceholder)}\n onFocus={handleSearchFocus}\n onBlur={handleSearchBlur}\n onClear={handleSearch}\n clearable\n />\n );\n }\n\n return (\n <div class=\"mk-table-filter\">\n { settingsStore.mode === 'pc' ? searchInputVNode : null}\n {\n settingsStore.mode === 'pc' ?\n <ElTooltip content=\"筛选\" effect=\"dark\" placement=\"top\">\n <ElButton onClick={handleShowDrawer}>\n <MKSvgIcon name=\"iconoir:filter\" />\n </ElButton>\n </ElTooltip>\n :\n <ElButton onClick={handleShowDrawer}>\n <MKSvgIcon name=\"iconoir:filter\" />\n </ElButton>\n }\n\n <MKDataFilterDrawer size={settingsStore.mode === 'pc' ? \"400px\" : '100%'}\n visible={unref(isShowDrawer)}\n onUpdate:visible={(v) => (isShowDrawer.value = v)}\n dataTable={_dataTable}\n />\n\n <div class=\"mk-table-filter__hidden\">\n <MKDataFilterForm dataTable={_dataTable} />\n </div>\n </div>\n );\n };\n },\n});\n","import \"./index.scss\"\nimport TableFilter from \"./table-filter\";\n\nexport const MKTableFilter = TableFilter;\nexport default MKTableFilter;\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","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","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","dataFilterDrawerProps","emits","dataFilterDrawerEmits","emit","handleCancelClick","handleResetClick","reset","beforeSearchEvent","load","handleConfirmClick","ElDrawer","size","MKDataFilterForm","labelPosition","footer","ElButton","_createTextVNode","search","ref","settingsStore","useSettingsStore","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","ElInput","Search","mode","ElTooltip","MKSvgIcon","MKDataFilterDrawer"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAGO,MAAM,0BAA0B,WAAW;AAAA,EAChD,MAAM,EAAE,MAAM,QAAQ,UAAU,KAAA;AAAA,EAChC,OAAO,EAAE,MAAM,OAAA;AACjB,CAAU;ACmBH,MAAM,sBAAuD;AAAA,EAClE;AACF;ACZ+C,SAAAA,QAAAC,GAAA;AAAA,SAAA,OAAAA,MAAA,cAAAC,OAAAC,UAAAC,SAAAC,KAAAJ,CAAA,MAAA,qBAAA,CAAAK,QAAAL,CAAA;AAAA;AAE/C,MAAA,qDAA+B;AAAA,EAC7BM,MAAM;AAAA,EACNC,OAAOC;AAAAA,EACPC,MAAMF,OAAO;AAAA,IAAEG;AAAAA,EAAM,GAAG;AACtB,UAAMC,oBAAoBC,OAAOC,mBAAmB;AAEpD,UAAMC,aAAaC,SAAS,MAAMJ,kBAAkBG,UAAU;AAE9D,QAAIE,gBAAqC;AAEzC,UAAMC,qBAAqBA,MAAM;AAC/BD,sBAAgBE,SACd,IAAIC,aAAa;AAAA,QACfb,MAAMC,MAAMD;AAAAA,QACZc,OAAOb,MAAMa;AAAAA,MACf,CAAC,CACH;AAEAC,YAAMP,UAAU,EAAEQ,UAAUN,aAAa;AAEzC,aAAOA;AAAAA,IACT;AAEA,UAAMO,eAAeR,SAAS,MAAM;AAClC,YAAMS,iBAAiBH,MAAMP,UAAU,EAAEW,UAAUlB,MAAMD,IAAI,KAAK;AAElE,UAAIkB,gBAAgB;AAClB,eAAOA;AAAAA,MACT;AAEA,UAAI,CAACR,eAAe;AAClBA,wBAAgBC,mBAAkB;AAAA,MACpC;AAEA,aAAOD;AAAAA,IACT,CAAC;AAED,UAAMU,QAAQX,SAAS;AAAA,MACrBY,KAAKA,MAAMN,MAAMP,UAAU,EAAEc,SAASP,MAAME,YAAY,EAAEjB,IAAI;AAAA,MAC9DuB,KAAMC,OAAMT,MAAMP,UAAU,EAAEiB,SAASV,MAAME,YAAY,EAAEjB,MAAMwB,CAAC;AAAA,IACpE,CAAC;AAED,UAAM;AAAA,MAAEE;AAAAA,MAAWC;AAAAA,MAAgBC;AAAAA,IAAc,IAC/CC,yBAAyBZ,cAAcT,UAAU;AAEnDsB,UACEF,eACCA,CAAAA,mBAAkB;AACjB,YAAMG,cAAchB,MAAMP,UAAU;AAEpC,UAAIwB,cAAcD,WAAW,GAAG;AAC9BA,oBAAYE,iBACVlB,MAAME,YAAY,EAAEjB,MACnB4B,eAAsCM,eACzC;AAAA,MACF;AAAA,IACF,GACA;AAAA,MAAEC,WAAW;AAAA,IAAK,CACpB;AAEAC,oBAAgB,MAAM;AACpB,YAAML,cAAchB,MAAMP,UAAU;AAEpC,UAAIwB,cAAcD,WAAW,GAAG;AAC9BA,oBAAYM,oBAAoBtB,MAAME,YAAY,EAAEjB,IAAI;AAAA,MAC1D;AAEA+B,kBAAYO,YAAYvB,MAAME,YAAY,EAAEjB,IAAI;AAAA,IAClD,CAAC;AAED,WAAO,MAAM;AACX,YAAMU,iBAAgBK,MAAME,YAAY;AAExC,UAAI,CAACP,gBAAe;AAClB,eAAO;AAAA,MACT;AAEA,UAAI6B,WAAgBnC,MAAMoC,UAAO;AAEjC,UAAI,CAACD,YAAYxB,MAAMW,SAAS,GAAG;AACjC,cAAMe,wBAAwBC,MAAM3B,MAAMW,SAAS,CAAC;AAEpDa,mBAAQI,YAAAF,uBAAAG,WAEA7B,MAAMY,cAAc,GAAC;AAAA,UAAA,cACbZ,MAAMK,KAAK;AAAA,UAAC,uBACFI,OAAYJ,MAAMA,QAAQI;AAAAA,UAAE,UAC1CT,MAAME,YAAY;AAAA,SAAC,GAAA,IAAA;AAAA,MAGjC;AAEA,YAAM4B,aAAapC,SAAS,MAAMJ,kBAAkBwC,UAAU;AAE9D,aAAAF,YAAAG,YAAA;AAAA,QAAA,QAEUpC,eAAcV;AAAAA,QAAI,SACjBU,eAAcI;AAAAA,QAAK,cACdC,MAAM8B,UAAU;AAAA,MAAC,GAAApD,QAE5B8C,QAAQ,IAARA,WAAQ;AAAA,QAAAC,SAAAA,MAAA,CAARD,QAAQ;AAAA,MAAA,CAAA;AAAA,IAGf;AAAA,EACF;AACF,CAAC;ACvHM,MAAM,uBAAuB,YAAY,kBAAkB;ACE3D,MAAM,sBAAsB,WAAW;AAAA;AAAA,EAE5C,WAAW,EAAE,MAAM,WAAW,UAAU,KAAA;AAC1C,CAAU;ACSV,MAAA,iDAA+B;AAAA,EAC7BvC,MAAM;AAAA,EACNC,OAAO8C;AAAAA,EACP5C,MAAMF,OAAO;AAAA,IAAEG;AAAAA,EAAM,GAAG;AACtB,UAAM4C,YAAYvC,SAAS,MAAMR,MAAM+C,SAAS;AAChD,UAAMxC,aAAaC,SAAS,MAAMM,MAAMiC,SAAS,EAAExC,UAAU;AAE7D,UAAMyC,UAAUxC,SAAS,MACvBM,MAAMP,UAAU,EACb0C,WAAU,EACVC,OAAQC,YAAWA,OAAOC,OAAO,CACtC;AAEA,UAAMR,aAAapC,SAAS,MAAM;AAChC,YAAM6C,eAAeC,KAAKC,IACxB,GAAGzC,MAAMkC,OAAO,EAAEQ,IAAKL,YAAWA,OAAOtC,MAAM4C,MAAM,CACvD;AAEA,aAAOJ,eAAe,KAAK;AAAA,IAC7B,CAAC;AAEDK,YAAQpD,qBAAqBK,SAAS;AAAA,MAAEJ;AAAAA,MAAYqC;AAAAA,IAAW,CAAC,CAAC;AAEjE,QAAIe,UAA2B;AAC/B,UAAMC,yBAAyB,IAAIC,QAASC,cAAa;AACvDH,gBAAUG;AAAAA,IACZ,CAAC;AAED,UAAMC,gBAAgBA,MAAM;AAC1BJ,gBAAO;AAAA,IACT;AAEAK,cAAU,MAAM;AACdnC,YACEkB,WACA,OAAOA,YAAWkB,GAAGC,cAAc;AACjC,cAAMN;AAEN,cAAMO,aAAapB,WAAUqB,gBAAgBC,GAAG,MAAM;AACpDtB,UAAAA,WAAUxC,WAAW+D,SAAQ;AAAA,QAC/B,CAAC;AAEDJ,kBAAU,MAAM;AACdC,qBAAWI,QAAO;AAAA,QACpB,CAAC;AAAA,MACH,GACA;AAAA,QAAErC,WAAW;AAAA,MAAK,CACpB;AAAA,IACF,CAAC;AAED,WAAO,MAAM;AACX,UAAI,CAACpB,MAAMkC,OAAO,EAAES,QAAQ;AAC1B,eAAO;AAAA,MACT;AAEA,UAAInB,WAAgBnC,MAAMoC,UAAO;AAEjC,UAAI,CAACD,UAAU;AACbA,mBAAWxB,MAAMkC,OAAO,EAAEQ,IAAKL,YAAW;AACxC,cAAI,CAACA,OAAOpD,MAAM;AAChB,mBAAO;AAAA,UACT;AAEA,iBACEI,MAAM,OAAOgD,OAAOpD,IAAI,EAAE,IAAC,KAAI2C,YAAA8B,sBAAA;AAAA,YAAA,QAErBrB,OAAOpD;AAAAA,aACJ;AAAA,YAAEwC,SAASpC,MAAM,OAAOgD,OAAOpD,IAAI,UAAU;AAAA,UAAE,CAAC;AAAA,QAIjE,CAAC;AAAA,MACH;AAEA,UAAI,CAACuC,UAAU;AACb,eAAO;AAAA,MACT;AAEA,aAAAI,YAAA+B,QAAA;AAAA,QAAA,SAAA;AAAA,MAAA,GAAA;AAAA,QAAAlC,SAAAA,MAAA,CAAAG,YAAAgC,UAAA;AAAA,UAAA,aAEyBX;AAAAA,QAAa,GAAA;AAAA,UAAAxB,SAAAA,MAAA,CAAAG,YAAAiC,iBACrBrC,QAAQ,CAAA,CAAA;AAAA,QAAA,CAAA,CAAA;AAAA,MAAA,CAAA;AAAA,IAI3B;AAAA,EACF;AACF,CAAC;AAAA,CCpG2C;AAAA,EAC1C,OAAO,SAAS;AAElB;AAAA,CAE8C;AAAA,EAC5C,OAAO,SAAS;AAElB;AAAA,CAEyC;AAAA,EACvC,OAAO,SAAS;AAElB;AAAA,CAE6C;AAAA,EAC3C,OAAO,SAAS;AAElB;AAAA,CAEgD;AAAA,EAC9C,OAAO,SAAS;AAElB;AAAA,CAEsD;AAAA,EACpD,OAAO,SAAS;AAElB;AAAA,CAEmD;AAAA,EACjD,OAAO,SAAS;AAElB;AAAA,CAEyD;AAAA,EACvD,OAAO,SAAS;AAElB;AAAA,CAE8C;AAAA,EAC5C,OAAO,SAAS;AAElB;AC3CO,MAAM,mBAAmB,YAAY,gBAAgB;AAAA,EAC1D;AACF,CAAC;ACFM,MAAM,wBAAwB,WAAW;AAAA,EAC9C,SAAS;AAAA,IACP,MAAM;AAAA,IACN,SAAS;AAAA,EAAA;AAAA,EAEX,MAAM;AAAA,IACJ,MAAM,CAAC,QAAO,MAAM;AAAA,IACpB,SAAS;AAAA,EAAA;AAAA,EAEX,WAAW;AAAA,IACT,MAAM;AAAA,IACN,UAAU;AAAA,EAAA;AAEd,CAAU;AAMH,MAAM,wBAAwB;AAAA,EACnC,kBAAkB,CAAC,YAAqB;AAC1C;ACjBA,MAAA,mDAA+B;AAAA,EAC7BvC,MAAM;AAAA,EACNC,OAAO4E;AAAAA,EACPC,OAAOC;AAAAA,EACP5E,MAAMF,OAAO;AAAA,IAAC+E;AAAAA,EAAI,GAAG;AACnB,UAAM3B,UAAU5C,SAAS;AAAA,MACvBY,KAAKA,MAAMpB,MAAMoD;AAAAA,MACjB9B,KAAMC,OAAMwD,KAAK,kBAAkBxD,CAAC;AAAA,IACtC,CAAC;AAED,UAAMyD,oBAAoBA,MAAM;AAC9B5B,cAAQjC,QAAQ;AAAA,IAClB;AAEA,UAAM8D,mBAAmBA,MAAM;AAC7B7B,cAAQjC,QAAQ;AAEhB,YAAM4B,YAAY/C,MAAM+C;AACxB,YAAMxC,aAAaP,MAAM+C,UAAUxC;AAEnCA,iBAAW2E,MAAK;AAEhB3E,iBAAW4E,kBAAkBJ,KAAI;AAEjChC,gBAAUqC,KAAI;AAAA,IAChB;AAEA,UAAMC,qBAAqBA,MAAM;AAC/BjC,cAAQjC,QAAQ;AAEhB,YAAM4B,YAAY/C,MAAM+C;AACxB,YAAMxC,aAAaP,MAAM+C,UAAUxC;AAEnCA,iBAAW4E,kBAAkBJ,KAAI;AAEjChC,gBAAUqC,KAAI;AAAA,IAChB;AAEA,WAAO,MAAM;AACX,aAAA1C,YAAA4C,UAAA;AAAA,QAAA,SAAA;AAAA,QAAA,QAEsBtF,MAAMuF;AAAAA,QAAI,cAChBzE,MAAMsC,OAAO;AAAA,QAAC,uBACH7B,OAAgB6B,QAAQjC,QAAQI;AAAAA,SAC9C;AAAA,QACPgB,SAASA,MAAAG,YAAA8C,kBAAA7C,WAAA;AAAA,UAAA,SAAA;AAAA,UAAA,aAEI3C,MAAM+C;AAAAA,QAAS,GAAA;AAAA,UACrB0C,eAAe;AAAA,SAAK,GAAA,IAAA;AAAA,QAE3BC,QAAQA,MAAAhD,YAAAiC,UAAA,MAAA,CAAAjC,YAAAiD,UAAA;AAAA,UAAA,WAEeX;AAAAA,QAAiB,GAAA;AAAA,UAAAzC,SAAAA,MAAA,CAAAqD,gBAAA,IAAA,CAAA;AAAA,SAAA,GAAAlD,YAAAiD,UAAA;AAAA,UAAA,WAEjBV;AAAAA,QAAgB,GAAA;AAAA,UAAA1C,SAAAA,MAAA,CAAAqD,gBAAA,IAAA,CAAA;AAAA,SAAA,GAAAlD,YAAAiD,UAAA;AAAA,UAAA,QAAA;AAAA,UAAA,WAEDN;AAAAA,QAAkB,GAAA;AAAA,UAAA9C,SAAAA,MAAA,CAAAqD,gBAAA,IAAA,CAAA;AAAA,QAAA,CAAA,CAAA,CAAA;AAAA,OAKzD;AAAA,IAGP;AAAA,EACF;AACF,CAAC;ACvEM,MAAM,qBAAqB,YAAY,gBAAgB;ACQ9D,MAAA,8CAA+B;AAAA,EAC7B7F,MAAM;AAAA,EACNG,QAAQ;AACN,UAAM2F,SAASC,IAAI,EAAE;AACrB,UAAMC,gBAAgBC,iBAAgB;AACtC,UAAMC,eAAeH,IAAI,KAAK;AAE9B,UAAMI,mBAAmB7F,OAAO8F,sBAAsB;AAEtD,UAAMpD,YAAYvC,SAAS,MAAM0F,iBAAkBnD,SAAS;AAE5D,UAAMqD,iBAAiB5F,SAAS,MAAMM,MAAMiC,SAAS,GAAGsD,SAAS,KAAK;AAEtE,UAAMC,sBAAsB9F,SAAS,MACnCM,MAAMiC,SAAS,EACZxC,WAAW0C,WAAU,EACrBC,OAAQC,YAAWA,OAAO0C,MAAM,CACrC;AAEA,UAAMU,oBAAoB/F,SACxB,MACE,KAAKM,MAAMwF,mBAAmB,EAC3B9C,IAAKL,YAAWA,OAAOtC,KAAK,EAC5B2F,KAAK,GAAG,CAAC,IAChB;AAEA3E,UACEkB,WACA,CAACA,YAAWkB,GAAGC,cAAc;AAC3BA,gBAAU,MAAM;AACd,cAAM3D,aAAawC,WAAUxC;AAC7B,YAAIwB,cAAcxB,UAAU,GAAG;AAC7BA,qBAAWkG,eAAc,EAAGC,MAAK;AAAA,QACnC;AAAA,MACF,CAAC;AAAA,IACH,GACA;AAAA,MAAExE,WAAW;AAAA,IAAK,CACpB;AAEA,UAAMyE,eAAeA,MAAM;AACzBC,qBAAeC,OAAM;AAErB,YAAMtG,aAAaO,MAAMiC,SAAS,EAAExC;AACpC,UAAIwB,cAAcxB,UAAU,GAAG;AAC7B,cAAMuG,cAAcvG,WAAWkG,eAAc;AAC7CK,oBAAYJ,MAAK;AAEjB,cAAMK,cAAcjG,MAAM+E,MAAM;AAEhC,mBAAWmB,sBAAsBlG,MAAMwF,mBAAmB,GAAG;AAC3DQ,sBAAYG,eACVD,mBAAmBjH,MACnB,QACA,IAAIgH,WAAW,GACjB;AAAA,QACF;AAAA,MACF;AAEAjG,YAAMiC,SAAS,EAAEqC,KAAI;AAAA,IACvB;AAEA,UAAMwB,iBAAiBM,SAASP,cAAc,GAAI;AAElD,UAAMQ,sBAAuBC,WAAyB;AACpD,UAAIA,MAAMC,QAAQ,SAAS;AACzBV,qBAAY;AAAA,MACd;AAAA,IACF;AAEA,UAAMW,oBAAqBF,WAAsB;AAC/C,YAAMG,SAASH,MAAMG;AAErBA,aAAOC,iBAAiB,SAASZ,cAAc;AAAA,IACjD;AAEA,UAAMa,mBAAoBL,WAAe;AACvC,YAAMG,SAASH,MAAMG;AAErBA,aAAOG,oBAAoB,SAASd,cAAc;AAAA,IACpD;AAEA,UAAMe,mBAAmBA,MAAM;AAC7B1B,mBAAa9E,QAAQ;AAAA,IACvB;AAEA,WAAO,MAAM;AACX,UAAI,CAACL,MAAMsF,cAAc,GAAG;AAC1B,eAAO;AAAA,MACT;AAEA,YAAMwB,aAAa9G,MAAMiC,SAAS;AAElC,UAAI6E,WAAWrH,WAAW0C,WAAU,EAAGQ,WAAW,GAAG;AACnD,eAAO;AAAA,MACT;AAEA,UAAIoE,mBAAmB;AAEvB,UAAI/G,MAAMwF,mBAAmB,EAAE7C,QAAQ;AACrCoE,2BAAgBnF,YAAAoF,SAAA;AAAA,UAAA,cAEAC;AAAAA,UAAM,SAAA;AAAA,UAAA,cAENjH,MAAM+E,MAAM;AAAA,UAAC,uBACHtE,OAAOsE,OAAO1E,QAAQI;AAAAA,UAAE,aACnC4F;AAAAA,UAAmB,eACjBrG,MAAMyF,iBAAiB;AAAA,UAAC,WAC5Be;AAAAA,UAAiB,UAClBG;AAAAA,UAAgB,WACfd;AAAAA,UAAY,aAAA;AAAA,WAAA,IAAA;AAAA,MAI3B;AAEA,aAAAjE,YAAA,OAAA;AAAA,QAAA,SAAA;AAAA,MAAA,GAAA,CAEMqD,cAAciC,SAAS,OAAOH,mBAAmB,MAEjD9B,cAAciC,SAAS,OAAItF,YAAAuF,WAAA;AAAA,QAAA,WAAA;AAAA,QAAA,UAAA;AAAA,QAAA,aAAA;AAAA,MAAA,GAAA;AAAA,QAAA1F,SAAAA,MAAA,CAAAG,YAAAiD,UAAA;AAAA,UAAA,WAEJgC;AAAAA,QAAgB,GAAA;AAAA,UAAApF,SAAAA,MAAA,CAAAG,YAAAwF,WAAA;AAAA,YAAA,QAAA;AAAA,UAAA,GAAA,IAAA,CAAA;AAAA,QAAA,CAAA,CAAA;AAAA,OAAA,IAAAxF,YAAAiD,UAAA;AAAA,QAAA,WAKlBgC;AAAAA,MAAgB,GAAA;AAAA,QAAApF,SAAAA,MAAA,CAAAG,YAAAwF,WAAA;AAAA,UAAA,QAAA;AAAA,QAAA,GAAA,IAAA,CAAA;AAAA,OAAA,GAExBxF,YAAAyF,oBAAA;AAAA,QAAA,QAGWpC,cAAciC,SAAS,OAAO,UAAU;AAAA,QAAM,WAC7DlH,MAAMmF,YAAY;AAAA,QAAC,oBACT1E,OAAO0E,aAAa9E,QAAQI;AAAAA,QAAE,aACtCqG;AAAAA,MAAU,GAAA,IAAA,GAAAlF,YAAA,OAAA;AAAA,QAAA,SAAA;AAAA,SAAA,CAAAA,YAAA8C,kBAAA;AAAA,QAAA,aAIQoC;AAAAA,MAAU,GAAA,IAAA,CAAA,CAAA,CAAA,CAAA;AAAA,IAI/C;AAAA,EACF;AACF,CAAC;ACxJM,MAAM,gBAAgB;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { buildProps, withInstall } from "@maketribe/utils";
|
|
2
2
|
import { defineComponent, computed, watch, unref, ref, resolveComponent, createElementBlock, openBlock, createVNode, withCtx, createTextVNode, toDisplayString } from "vue";
|
|
3
|
-
import { g as useFormItem, h as MKDataTable, i as DataForm, j as MKForm, _ as _export_sfc } from "./index-
|
|
3
|
+
import { g as useFormItem, h as MKDataTable, i as DataForm, j as MKForm, _ as _export_sfc } from "./index-DzXMuczW.js";
|
|
4
4
|
import { FormDetailColumn, Messager, DataFormType } from "@maketribe/dm";
|
|
5
5
|
import { ElButton } from "element-plus";
|
|
6
6
|
import { I18n } from "@maketribe/locale";
|
|
@@ -161,4 +161,4 @@ export {
|
|
|
161
161
|
formDetailEmits,
|
|
162
162
|
formDetailProps
|
|
163
163
|
};
|
|
164
|
-
//# sourceMappingURL=index-
|
|
164
|
+
//# sourceMappingURL=index-B4lIWX72.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-
|
|
1
|
+
{"version":3,"file":"index-B4lIWX72.js","sources":["../../src/components/data-model/data-form/components/form-detail/form-detail-options.ts","../../src/components/data-model/data-form/components/form-detail/form-detail.vue","../../src/components/data-model/data-form/components/form-detail/index.ts"],"sourcesContent":["import { ExtractPropTypes } from \"vue\";\nimport { buildProps } from \"@maketribe/utils\";\nimport { FormDetailColumn } from \"@maketribe/dm\";\n\nexport const formDetailProps = buildProps({\n modelValue: {\n type: null,\n },\n disabled: {\n type: Boolean,\n default: false,\n },\n column: { type: FormDetailColumn, required: true },\n formWidth: {\n type: String,\n default: \"400px\",\n },\n} as const);\n\nexport type FormDetailProps = ExtractPropTypes<typeof formDetailProps>;\n\nexport const formDetailEmits = {\n \"update:model-value\": (v: any) => true,\n};\n\nexport type FormDetailEmits = ExtractPropTypes<typeof formDetailEmits>;\n","<script setup lang=\"ts\">\nimport {computed, ref, unref, watch} from \"vue\";\nimport {MKDataTable} from \"../../../data-table\";\nimport DataForm from \"../../data-form.vue\";\nimport {formDetailEmits, formDetailProps} from \"./form-detail-options\";\nimport {useFormItem} from \"../../composables\";\nimport {MKForm} from '../../views'\nimport {ElButton, ElEmpty} from \"element-plus\";\nimport { I18n } from \"@maketribe/locale\";\nimport {DataFormType, Messager} from \"@maketribe/dm\";\n\nconst props = defineProps(formDetailProps);\n\nconst emit = defineEmits(formDetailEmits)\n\nconst detailTable = computed(() => props.column.detailTable);\nconst detailForm = computed(() => props.column.detailForm!);\n\nconst {value} = useFormItem();\n\nwatch(\n computed(() => unref(value)),\n (value) => {\n const _detailTable = unref(detailTable);\n\n value = Array.isArray(value) ? value : [];\n\n _detailTable.setList(\n value.map((item: any) => _detailTable.formatItem(item))\n );\n }\n);\n\nconst isShowDataForm = ref(false);\n\nwatch(\n detailTable,\n (dataTable, _, onCleanup) => {\n\n const addRecordDisposable = dataTable.addRecordEvent.on(async ({item}) => {\n const _dataForm = unref(detailForm);\n\n if (!_dataForm) {\n console.warn(`没有对应的 (${dataTable.name}) DataForm 实现`);\n return;\n }\n\n isShowDataForm.value = true;\n\n _dataForm.addRecord(item);\n });\n\n const editRecordDisposable = dataTable.editRecordEvent.on(\n async ({item}) => {\n const _dataForm = unref(detailForm);\n\n if (!_dataForm) {\n console.warn(`没有对应的 (${dataTable.name}) DataForm 实现`);\n return;\n }\n\n isShowDataForm.value = true;\n\n try {\n const response = await _dataForm.editRecord(item);\n\n if (response.data.code !== 200) {\n Messager.error({message: response.data.msg});\n isShowDataForm.value = false;\n return;\n }\n } catch (e) {\n console.error(e);\n isShowDataForm.value = false;\n }\n }\n );\n\n onCleanup(() => {\n addRecordDisposable.dispose();\n editRecordDisposable.dispose();\n });\n },\n {immediate: true}\n);\n\nwatch(\n detailForm,\n (dataForm, _, onCleanup) => {\n const submittedDisposable = dataForm.submittedEvent.on(() => {\n isShowDataForm.value = false;\n\n unref(detailTable)?.load();\n });\n\n const cancelDisposable = dataForm.cancelEvent.on(() => {\n isShowDataForm.value = false;\n });\n\n onCleanup(() => {\n submittedDisposable.dispose();\n cancelDisposable.dispose();\n });\n },\n {immediate: true}\n);\n\nconst isUpdateForm = computed(()=> unref(detailForm).getDataFormType() == DataFormType.UPDATE)\n\nconst handleFormSave = async () => {\n await unref(detailForm)?.simpleSubmit();\n};\n\nconst handleFormCancel = () => {\n unref(detailForm).cancel();\n};\n\n\n</script>\n\n<template>\n <div class=\"mk-form-detail\">\n <MKDataTable :dataTable=\"detailTable\" :autoLoad=\"false\" />\n <ElDrawer v-model=\"isShowDataForm\" append-to-body :title=\"column.label\">\n <DataForm :dataForm=\"detailForm\" :autoLoad=\"false\" >\n <MKForm labelPosition=\"top\" />\n </DataForm>\n <template #footer>\n <ElButton @click=\"handleFormCancel\">\n {{I18n.instance.translate(\"mk.dataForm.cancelButton\")}}\n </ElButton>\n <ElButton type=\"primary\" @click=\"handleFormSave\">\n {{ isUpdateForm ? I18n.instance.translate(\"mk.dataForm.saveButton\") : I18n.instance.translate(\"mk.dataForm.addButton\")}}\n </ElButton>\n </template>\n\n<!-- <template #empty>-->\n<!-- <ElEmpty :image-size=\"100\"/>-->\n<!-- </template>-->\n </ElDrawer>\n </div>\n</template>\n<style scoped lang=\"scss\">\n.mk-form-detail {\n width: 100%;\n min-height: 200px;\n\n .mk-data-table {\n height: 100%;\n }\n\n .mk-data-table-search {\n display: none;\n }\n\n .el-table {\n flex: 1;\n }\n\n @at-root {\n &__drawer {\n .el-card {\n border: none;\n\n &__body {\n --el-card-padding: 0px;\n }\n }\n }\n }\n}\n\n</style>\n","import { withInstall } from \"@maketribe/utils\";\nimport FormDetail from \"./form-detail.vue\";\n\nexport const MKFormDetail = withInstall(FormDetail);\nexport default MKFormDetail;\n\nexport * from \"./form-detail-options\";\n"],"names":["value"],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@ import { ElDropdown, ElDropdownMenu, ElDropdownItem, ElButton, ElIcon } from "el
|
|
|
3
3
|
import { Setting } from "@element-plus/icons-vue";
|
|
4
4
|
import { buildProps } from "@maketribe/utils";
|
|
5
5
|
import { TableColumn, TableActionColumn } from "@maketribe/dm";
|
|
6
|
-
import { c as columnProps, M as MKButton } from "./index-
|
|
6
|
+
import { c as columnProps, M as MKButton } from "./index-DzXMuczW.js";
|
|
7
7
|
import "vue-router";
|
|
8
8
|
import "@maketribe/request";
|
|
9
9
|
import "@maketribe/locale";
|
|
@@ -42,7 +42,7 @@ const ColumnAction = /* @__PURE__ */ defineComponent({
|
|
|
42
42
|
e.stopPropagation();
|
|
43
43
|
};
|
|
44
44
|
return () => {
|
|
45
|
-
const
|
|
45
|
+
const buttonVNodes = unref(buttons).filter((button) => button.predicate(props.row)).map((button) => {
|
|
46
46
|
const childrenList = button.getChildrenList(props.row)?.filter((item) => item.predicate ? item.predicate(props.row) : true);
|
|
47
47
|
if (childrenList != null) {
|
|
48
48
|
return createVNode(ElDropdown, {
|
|
@@ -64,7 +64,7 @@ const ColumnAction = /* @__PURE__ */ defineComponent({
|
|
|
64
64
|
let _slot;
|
|
65
65
|
return createVNode(ElDropdownMenu, null, _isSlot(_slot = childrenList.map((option) => {
|
|
66
66
|
return createVNode(ElDropdownItem, {
|
|
67
|
-
"onClick": () => option.handler(props.row)
|
|
67
|
+
"onClick": () => option.handle ? option.handler(props.row) : option.handler(props.row)
|
|
68
68
|
}, {
|
|
69
69
|
default: () => [option.label]
|
|
70
70
|
});
|
|
@@ -85,7 +85,7 @@ const ColumnAction = /* @__PURE__ */ defineComponent({
|
|
|
85
85
|
return createVNode("span", {
|
|
86
86
|
"class": "mk-column-action",
|
|
87
87
|
"onClick": handleColumnActionClick
|
|
88
|
-
}, [
|
|
88
|
+
}, [buttonVNodes]);
|
|
89
89
|
};
|
|
90
90
|
}
|
|
91
91
|
});
|
|
@@ -94,4 +94,4 @@ export {
|
|
|
94
94
|
MKColumnAction,
|
|
95
95
|
MKColumnAction as default
|
|
96
96
|
};
|
|
97
|
-
//# sourceMappingURL=index-
|
|
97
|
+
//# sourceMappingURL=index-BHGgyBY7.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-BHGgyBY7.js","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,ElDropdown,ElDropdownMenu,ElDropdownItem, ElIcon } from \"element-plus\";\nimport { Setting } from \"@element-plus/icons-vue\";\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\n const buttons = computed(() => {\n if (props.column instanceof TableActionColumn) {\n return props.column.buttons;\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 \n // 子菜单\n const childrenList = button.getChildrenList(props.row)\n ?.filter((item) => item.predicate ? item.predicate(props.row) : true);\n \n if(childrenList != null){\n return <ElDropdown trigger={\"click\"} v-slots={{\n dropdown: () => {\n return <ElDropdownMenu>\n {\n childrenList!.map((option)=>{\n return <ElDropdownItem onClick={()=>option.handle ? option.handler(props.row):option.handler(props.row)}>\n {option.label}\n </ElDropdownItem>\n })\n }\n </ElDropdownMenu>\n }\n }}>\n <ElButton type=\"text\" size=\"small\" class={\"pa-[2px]!\"} disabled={childrenList.length<=0}>\n {button.label}\n <ElIcon style={\"margin-left:5px\"}>\n <Setting />\n </ElIcon>\n </ElButton>\n </ElDropdown>\n }\n\n return <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\";\n\nexport const MKColumnAction = ColumnAction;\nexport default MKColumnAction;\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","name","props","columnActionProps","setup","buttons","computed","column","TableActionColumn","handleColumnActionClick","e","preventDefault","stopPropagation","buttonVNodes","unref","filter","button","predicate","row","map","childrenList","getChildrenList","item","_createVNode","ElDropdown","default","ElButton","length","label","ElIcon","Setting","dropdown","_slot","ElDropdownMenu","option","ElDropdownItem","onClick","handle","handler","MKButton","icon","type"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAKO,MAAM,oBAAoB,WAAW;AAAA,EAC1C,GAAG;AAAA,EACH,QAAQ,EAAE,MAAM,aAAa,UAAU,KAAA;AAAA,EACvC,SAAS,EAAE,MAAM,OAAO,SAAS,MAAM,CAAA,EAAC;AAC1C,CAAU;ACHsD,SAAAA,QAAAC,GAAA;AAAA,SAAA,OAAAA,MAAA,cAAAC,OAAAC,UAAAC,SAAAC,KAAAJ,CAAA,MAAA,qBAAA,CAAAK,QAAAL,CAAA;AAAA;AAShE,MAAA,+CAA+B;AAAA,EAC7BM,MAAM;AAAA,EACNC,OAAOC;AAAAA,EACPC,MAAMF,OAAO;AAEX,UAAMG,UAAUC,SAAS,MAAM;AAC7B,UAAIJ,MAAMK,kBAAkBC,mBAAmB;AAC7C,eAAON,MAAMK,OAAOF;AAAAA,MACtB;AACA,aAAOH,MAAMG;AAAAA,IACf,CAAC;AAED,UAAMI,0BAA2BC,OAAkB;AACjDA,QAAEC,eAAc;AAChBD,QAAEE,gBAAe;AAAA,IACnB;AAEA,WAAO,MAAM;AACX,YAAMC,eAAeC,MAAMT,OAAO,EAC/BU,OAAQC,YAAWA,OAAOC,UAAUf,MAAMgB,GAAG,CAAC,EAC9CC,IAAKH,YAAW;AAGf,cAAMI,eAAeJ,OAAOK,gBAAgBnB,MAAMgB,GAAG,GACnDH,OAAQO,UAASA,KAAKL,YAAYK,KAAKL,UAAUf,MAAMgB,GAAG,IAAI,IAAI;AAEpE,YAAGE,gBAAgB,MAAK;AACtB,iBAAAG,YAAAC,YAAA;AAAA,YAAA,WAA4B;AAAA,UAAO,GAAA;AAAA,YAAAC,SAAAA,MAAA,CAAAF,YAAAG,UAAA;AAAA,cAAA,QAAA;AAAA,cAAA,QAAA;AAAA,cAAA,SAaU;AAAA,cAAW,YAAYN,aAAaO,UAAQ;AAAA,YAAC,GAAA;AAAA,cAAAF,SAAAA,MAAA,CACrFT,OAAOY,OAAKL,YAAAM,QAAA;AAAA,gBAAA,SACE;AAAA,cAAiB,GAAA;AAAA,gBAAAJ,SAAAA,MAAA,CAAAF,YAAAO,SAAA,MAAA,IAAA,CAAA;AAAA,cAAA,CAAA,CAAA;AAAA,YAAA,CAAA,CAAA;AAAA,YAdhCC,UAAUA,MAAM;AAAA,kBAAAC;AACd,qBAAAT,YAAAU,gBAAA,MAAAvC,QAAAsC,QAEIZ,aAAcD,IAAKe,YAAS;AAC1B,uBAAAX,YAAAY,gBAAA;AAAA,kBAAA,WAAgCC,MAAIF,OAAOG,SAASH,OAAOI,QAAQpC,MAAMgB,GAAG,IAAEgB,OAAOI,QAAQpC,MAAMgB,GAAG;AAAA,gBAAC,GAAA;AAAA,kBAAAO,SAAAA,MAAA,CACpGS,OAAON,KAAK;AAAA,gBAAA,CAAA;AAAA,cAEjB,CAAC,CAAC,IAAAI,QAAA;AAAA,gBAAAP,SAAAA,MAAA,CAAAO,KAAA;AAAA,cAAA,CAAA;AAAA,YAGR;AAAA,UAAC,CAAA;AAAA,QASP;AAED,eAAAT,YAAAgB,UAAA;AAAA,UAAA,QACSvB,OAAOwB;AAAAA,UAAI,SACVxB,OAAOY;AAAAA,UAAK,QACbZ,OAAOyB;AAAAA,UAAI,QAAA;AAAA,UAAA,WAERL,MAAMpB,OAAOsB,QAAQpC,MAAMgB,GAAG;AAAA,QAAC,GAAA,IAAA;AAAA,MAE5C,CAAC;AAEH,aAAAK,YAAA,QAAA;AAAA,QAAA,SAAA;AAAA,QAAA,WAC0Cd;AAAAA,MAAuB,GAAA,CAC5DI,YAAY,CAAA;AAAA,IAGnB;AAAA,EACF;AACF,CAAC;AC9EM,MAAM,iBAAiB;"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { defineComponent, createBlock, openBlock, unref, withCtx, createVNode } from "vue";
|
|
2
|
-
import { x as MKPagePanel, A as MKMaterialList } from "./index-
|
|
2
|
+
import { x as MKPagePanel, A as MKMaterialList } from "./index-DzXMuczW.js";
|
|
3
3
|
import "element-plus";
|
|
4
4
|
import "@maketribe/dm";
|
|
5
5
|
import "vue-cropper";
|
|
@@ -35,4 +35,4 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
35
35
|
export {
|
|
36
36
|
_sfc_main as default
|
|
37
37
|
};
|
|
38
|
-
//# sourceMappingURL=index-
|
|
38
|
+
//# sourceMappingURL=index-BR1S85Ut.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-BR1S85Ut.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { defineComponent, ref, computed, unref, onMounted, resolveComponent, createBlock, openBlock, withCtx, createVNode, createElementVNode, createElementBlock, Fragment, renderList, toDisplayString } from "vue";
|
|
2
2
|
import { ElMessage } from "element-plus";
|
|
3
|
-
import { x as MKPagePanel, d as MKSvgIcon, _ as _export_sfc } from "./index-
|
|
3
|
+
import { x as MKPagePanel, d as MKSvgIcon, _ as _export_sfc } from "./index-DzXMuczW.js";
|
|
4
4
|
import "@maketribe/dm";
|
|
5
5
|
import "vue-cropper";
|
|
6
6
|
import "@lexical/overflow";
|
|
@@ -116,4 +116,4 @@ const index = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-16f0
|
|
|
116
116
|
export {
|
|
117
117
|
index as default
|
|
118
118
|
};
|
|
119
|
-
//# sourceMappingURL=index-
|
|
119
|
+
//# sourceMappingURL=index-BX_fbJCv.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-
|
|
1
|
+
{"version":3,"file":"index-BX_fbJCv.js","sources":["../../src/pages/icons/index.vue"],"sourcesContent":["<template>\n <MKPagePanel class=\"mk-icons-page\" title=\"图标库\">\n <template #tools>\n <ElInput\n v-model=\"search\"\n placeholder=\"搜索图标\"\n >\n <template #suffix>\n <MKSvgIcon name=\"ep:search\"/>\n </template>\n </ElInput>\n </template>\n <ElCard>\n <ElScrollbar height=\"100%\">\n <ul class=\"mk-icon-list\">\n <li class=\"mk-icon-list__item\" v-for=\"icon in filteredIcons\">\n <div class=\"mk-icon-item\" @click=\"handleClick(icon)\">\n <div class=\"mk-icon-item__icon\">\n <MKSvgIcon :name=\"icon\"/>\n </div>\n\n <div class=\"mk-icon-item__name\">\n {{ icon }}\n </div>\n </div>\n </li>\n </ul>\n </ElScrollbar>\n </ElCard>\n </MKPagePanel>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed, onMounted, ref, Ref, unref} from \"vue\";\nimport {ElMessage} from \"element-plus\";\nimport {MKPagePanel, MKSvgIcon} from \"../../components\";\n\nconst icons: Ref<string[]> = ref([]);\n\nconst search = ref(\"\");\n\nconst filteredIcons = computed(() => {\n const _search = unref(search).toLowerCase();\n\n return unref(icons).filter((icon) => icon.toLowerCase().includes(_search));\n});\n\nonMounted(() => {\n const svgList: NodeListOf<SVGElement> = document.querySelectorAll(\n 'body > svg[aria-hidden=\"true\"]'\n );\n\n let iconList: string[] = [];\n\n for (const svg of Array.from(svgList)) {\n const symbols = svg.querySelectorAll(\"symbol\");\n\n iconList = iconList.concat(\n Array.from(symbols).map((symbol) => symbol.id.replace(/^icon-/, \"\"))\n );\n }\n\n icons.value = Array.from(new Set(iconList));\n});\n\nconst handleClick = (icon: string) => {\n const content = `<MKSvgIcon name=\"${icon}\"/>`;\n\n if (navigator.clipboard === undefined) {\n //通过input标签进行复制\n const input = document.createElement(\"input\");\n input.value = content;\n document.body.appendChild(input);\n input.select();\n document.execCommand(\"Copy\");\n document.body.removeChild(input);\n } else {\n navigator.clipboard.writeText(content);\n }\n\n ElMessage.success(\"复制成功\");\n};\n</script>\n\n<style lang=\"scss\" scoped>\n.mk-icons-page {\n :deep(.el-card) {\n height: 100%;\n\n .el-card__body {\n height: 100%;\n }\n }\n}\n.mk-icon-list {\n display: grid;\n grid-template-columns: repeat(7, 1fr);\n flex-wrap: wrap;\n list-style: none;\n padding: 0;\n margin: 0;\n color: var(--el-text-color-regular);\n\n &__item {\n border-bottom: 1px var(--el-border-color) solid;\n border-right: 1px var(--el-border-color) solid;\n\n &:nth-child(-n + 7) {\n border-top: 1px var(--el-border-color) solid;\n }\n &:nth-child(7n + 1) {\n border-left: 1px var(--el-border-color) solid;\n }\n }\n\n .mk-icon-item {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n height: 90px;\n cursor: pointer;\n\n &__icon {\n font-size: 24px;\n }\n\n &__name {\n margin-top: 6px;\n padding: 0 8px;\n font-size: 12px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n box-sizing: border-box;\n }\n\n &:hover {\n background-color: var(--el-border-color-extra-light);\n }\n }\n}\n\n</style>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqCA,UAAM,QAAuB,IAAI,EAAE;AAEnC,UAAM,SAAS,IAAI,EAAE;AAErB,UAAM,gBAAgB,SAAS,MAAM;AACnC,YAAM,UAAU,MAAM,MAAM,EAAE,YAAA;AAE9B,aAAO,MAAM,KAAK,EAAE,OAAO,CAAC,SAAS,KAAK,YAAA,EAAc,SAAS,OAAO,CAAC;AAAA,IAC3E,CAAC;AAED,cAAU,MAAM;AACd,YAAM,UAAkC,SAAS;AAAA,QAC/C;AAAA,MAAA;AAGF,UAAI,WAAqB,CAAA;AAEzB,iBAAW,OAAO,MAAM,KAAK,OAAO,GAAG;AACrC,cAAM,UAAU,IAAI,iBAAiB,QAAQ;AAE7C,mBAAW,SAAS;AAAA,UAClB,MAAM,KAAK,OAAO,EAAE,IAAI,CAAC,WAAW,OAAO,GAAG,QAAQ,UAAU,EAAE,CAAC;AAAA,QAAA;AAAA,MAEvE;AAEA,YAAM,QAAQ,MAAM,KAAK,IAAI,IAAI,QAAQ,CAAC;AAAA,IAC5C,CAAC;AAED,UAAM,cAAc,CAAC,SAAiB;AACpC,YAAM,UAAU,oBAAoB,IAAI;AAExC,UAAI,UAAU,cAAc,QAAW;AAErC,cAAM,QAAQ,SAAS,cAAc,OAAO;AAC5C,cAAM,QAAQ;AACd,iBAAS,KAAK,YAAY,KAAK;AAC/B,cAAM,OAAA;AACN,iBAAS,YAAY,MAAM;AAC3B,iBAAS,KAAK,YAAY,KAAK;AAAA,MACjC,OAAO;AACL,kBAAU,UAAU,UAAU,OAAO;AAAA,MACvC;AAEA,gBAAU,QAAQ,MAAM;AAAA,IAC1B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { defineComponent, computed, unref, createVNode, isVNode } from "vue";
|
|
2
|
-
import { c as columnTextProps } from "./index-
|
|
3
|
-
import { u as useColumn, b as MKText } from "./index-
|
|
2
|
+
import { c as columnTextProps } from "./index-sNc5bZ1A.js";
|
|
3
|
+
import { u as useColumn, b as MKText } from "./index-DzXMuczW.js";
|
|
4
4
|
import "@maketribe/utils";
|
|
5
5
|
import "vue-router";
|
|
6
6
|
import "@maketribe/dm";
|
|
@@ -48,4 +48,4 @@ export {
|
|
|
48
48
|
columnTextProps,
|
|
49
49
|
MKColumnText as default
|
|
50
50
|
};
|
|
51
|
-
//# sourceMappingURL=index-
|
|
51
|
+
//# sourceMappingURL=index-BihcvWnt.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-
|
|
1
|
+
{"version":3,"file":"index-BihcvWnt.js","sources":["../../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 { computed, defineComponent, unref } from \"vue\";\nimport { columnTextProps } from \"./column-text-options\";\nimport { useColumn } from \"../../composables\";\nimport {MKText} from \"../../../../basic\";\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 <MKText class=\"mk-column-text\" copy={props.copy}>{unref(formatValue)}</MKText>;\n };\n },\n});\n","import ColumnText from \"./column-text\";\nimport \"./index.scss\"\nexport const MKColumnText = ColumnText;\nexport default MKColumnText;\n\nexport * from \"./column-text-options\";\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","name","props","columnTextProps","setup","value","useColumn","formatValue","computed","unref","_slot","_createVNode","MKText","copy","default"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAGyC,SAAAA,QAAAC,GAAA;AAAA,SAAA,OAAAA,MAAA,cAAAC,OAAAC,UAAAC,SAAAC,KAAAJ,CAAA,MAAA,qBAAA,CAAAK,QAAAL,CAAA;AAAA;AAEzC,MAAA,6CAA+B;AAAA,EAC7BM,MAAM;AAAA,EACNC,OAAOC;AAAAA,EACPC,MAAMF,OAAO;AACX,UAAM;AAAA,MAAEG;AAAAA,IAAM,IAAIC,UAAUJ,KAAK;AAEjC,UAAMK,cAAcC,SAAS,MAAMN,MAAMK,YAAYE,MAAMJ,KAAK,CAAC,CAAC;AAElE,WAAO,MAAM;AAAA,UAAAK;AACX,aAAAC,YAAAC,QAAA;AAAA,QAAA,SAAA;AAAA,QAAA,QAA4CV,MAAMW;AAAAA,SAAInB,QAAAgB,QAAGD,MAAMF,WAAW,CAAC,IAAAG,QAAA;AAAA,QAAAI,SAAAA,MAAA,CAAAJ,KAAA;AAAA,MAAA,CAAA;AAAA,IAC7E;AAAA,EACF;AACF,CAAC;ACfM,MAAM,eAAe;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { defineComponent, computed, unref, createVNode, isVNode } from "vue";
|
|
2
2
|
import { ElTag } from "element-plus";
|
|
3
|
-
import { c as columnProps, u as useColumn } from "./index-
|
|
3
|
+
import { c as columnProps, u as useColumn } from "./index-DzXMuczW.js";
|
|
4
4
|
import { buildProps } from "@maketribe/utils";
|
|
5
5
|
import "vue-router";
|
|
6
6
|
import "@maketribe/dm";
|
|
@@ -105,4 +105,4 @@ export {
|
|
|
105
105
|
columnTagProps,
|
|
106
106
|
MKColumnTag as default
|
|
107
107
|
};
|
|
108
|
-
//# sourceMappingURL=index-
|
|
108
|
+
//# sourceMappingURL=index-BrtsLDxq.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-
|
|
1
|
+
{"version":3,"file":"index-BrtsLDxq.js","sources":["../../src/components/data-model/data-table/components/column-tag/column-tag-options.ts","../../src/components/data-model/data-table/components/column-tag/column-tag.tsx","../../src/components/data-model/data-table/components/column-tag/index.ts"],"sourcesContent":["import { ExtractPropTypes } from \"vue\";\nimport { buildProps } from \"@maketribe/utils\";\nimport { columnProps } from \"../../composables\";\n\nexport const columnTagProps = buildProps({\n ...columnProps,\n type: {\n values: [\"success\", \"warning\", \"info\", \"danger\", \"primary\"],\n },\n effect: {\n default: \"light\",\n values: [\"light\", \"dark\"],\n },\n color: {\n type: String,\n default: \"\",\n },\n hit: {\n type: Boolean,\n default: false,\n },\n round: {\n type: Boolean,\n default: false,\n },\n width: {\n type: String,\n default: \"\",\n },\n options: {\n type: Array<{\n label: string;\n value: any;\n color: string;\n type: \"success\" | \"warning\" | \"info\" | \"danger\";\n }>,\n default: () => [],\n },\n} as const);\n\nexport type ColumnTagProps = ExtractPropTypes<typeof columnTagProps>;\n","import { computed, defineComponent, unref } from \"vue\";\nimport { ElTag } from \"element-plus\";\n\nimport { useColumn } from \"../../composables\";\nimport { columnTagProps } from \"./column-tag-options\";\n\nexport default defineComponent({\n name: \"MKColumnTag\",\n props: columnTagProps,\n setup(props) {\n const { value } = useColumn(props);\n\n const options = computed(() => props.options);\n\n const tagStyle = computed(() => ({ width: props.width }));\n\n const currentOption = computed(() =>\n unref(options).find((option) => option.value === unref(value))\n );\n\n return () => {\n const _currentOption = unref(currentOption);\n\n let content;\n\n if (!_currentOption) {\n content = (\n <ElTag\n style={unref(tagStyle)}\n disableTransitions\n type={props.type}\n effect={props.effect}\n hit={props.hit}\n color={props.color}\n round={props.round}\n >\n {unref(value)}\n </ElTag>\n );\n } else {\n content = (\n <ElTag\n style={unref(tagStyle)}\n disableTransitions\n type={_currentOption.type}\n effect={props.effect}\n hit={props.hit}\n color={_currentOption.color}\n round={props.round}\n >\n {_currentOption.label || _currentOption.value}\n </ElTag>\n );\n }\n\n return <div class=\"mk-column-tag\">{content}</div>;\n };\n },\n});\n","import ColumnTag from \"./column-tag\";\n\nexport const MKColumnTag = ColumnTag;\nexport default MKColumnTag;\n\nexport * from \"./column-tag-options\";\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","name","props","columnTagProps","setup","value","useColumn","options","computed","tagStyle","width","currentOption","unref","find","option","_currentOption","content","_slot","_createVNode","ElTag","type","effect","hit","color","round","default","label"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAIO,MAAM,iBAAiB,WAAW;AAAA,EACvC,GAAG;AAAA,EACH,MAAM;AAAA,IACJ,QAAQ,CAAC,WAAW,WAAW,QAAQ,UAAU,SAAS;AAAA,EAAA;AAAA,EAE5D,QAAQ;AAAA,IACN,SAAS;AAAA,IACT,QAAQ,CAAC,SAAS,MAAM;AAAA,EAAA;AAAA,EAE1B,OAAO;AAAA,IACL,MAAM;AAAA,IACN,SAAS;AAAA,EAAA;AAAA,EAEX,KAAK;AAAA,IACH,MAAM;AAAA,IACN,SAAS;AAAA,EAAA;AAAA,EAEX,OAAO;AAAA,IACL,MAAM;AAAA,IACN,SAAS;AAAA,EAAA;AAAA,EAEX,OAAO;AAAA,IACL,MAAM;AAAA,IACN,SAAS;AAAA,EAAA;AAAA,EAEX,SAAS;AAAA,IACP,MAAM;AAAA,IAMN,SAAS,MAAM,CAAA;AAAA,EAAC;AAEpB,CAAU;AClC4C,SAAAA,QAAAC,GAAA;AAAA,SAAA,OAAAA,MAAA,cAAAC,OAAAC,UAAAC,SAAAC,KAAAJ,CAAA,MAAA,qBAAA,CAAAK,QAAAL,CAAA;AAAA;AAEtD,MAAA,4CAA+B;AAAA,EAC7BM,MAAM;AAAA,EACNC,OAAOC;AAAAA,EACPC,MAAMF,OAAO;AACX,UAAM;AAAA,MAAEG;AAAAA,IAAM,IAAIC,UAAUJ,KAAK;AAEjC,UAAMK,UAAUC,SAAS,MAAMN,MAAMK,OAAO;AAE5C,UAAME,WAAWD,SAAS,OAAO;AAAA,MAAEE,OAAOR,MAAMQ;AAAAA,IAAM,EAAE;AAExD,UAAMC,gBAAgBH,SAAS,MAC7BI,MAAML,OAAO,EAAEM,KAAMC,YAAWA,OAAOT,UAAUO,MAAMP,KAAK,CAAC,CAC/D;AAEA,WAAO,MAAM;AACX,YAAMU,iBAAiBH,MAAMD,aAAa;AAE1C,UAAIK;AAEJ,UAAI,CAACD,gBAAgB;AAAA,YAAAE;AACnBD,kBAAOE,YAAAC,OAAA;AAAA,UAAA,SAEIP,MAAMH,QAAQ;AAAA,UAAC,sBAAA;AAAA,UAAA,QAEhBP,MAAMkB;AAAAA,UAAI,UACRlB,MAAMmB;AAAAA,UAAM,OACfnB,MAAMoB;AAAAA,UAAG,SACPpB,MAAMqB;AAAAA,UAAK,SACXrB,MAAMsB;AAAAA,WAAK9B,QAAAuB,QAEjBL,MAAMP,KAAK,CAAC,IAAAY,QAAA;AAAA,UAAAQ,SAAAA,MAAA,CAAAR,KAAA;AAAA,SAAA;AAAA,MAGnB,OAAO;AACLD,kBAAOE,YAAAC,OAAA;AAAA,UAAA,SAEIP,MAAMH,QAAQ;AAAA,UAAC,sBAAA;AAAA,UAAA,QAEhBM,eAAeK;AAAAA,UAAI,UACjBlB,MAAMmB;AAAAA,UAAM,OACfnB,MAAMoB;AAAAA,UAAG,SACPP,eAAeQ;AAAAA,UAAK,SACpBrB,MAAMsB;AAAAA,QAAK,GAAA;AAAA,UAAAC,SAAAA,MAAA,CAEjBV,eAAeW,SAASX,eAAeV,KAAK;AAAA,SAAA;AAAA,MAGnD;AAEA,aAAAa,YAAA,OAAA;AAAA,QAAA,SAAA;AAAA,MAAA,GAAA,CAAmCF,OAAO,CAAA;AAAA,IAC5C;AAAA,EACF;AACF,CAAC;ACxDM,MAAM,cAAc;"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { defineComponent, inject, computed, createVNode
|
|
1
|
+
import { defineComponent, inject, computed, createVNode } from "vue";
|
|
2
2
|
import { ElDropdown, ElDropdownMenu, ElDropdownItem } from "element-plus";
|
|
3
|
-
import { D as DATA_TABLE_CONTEXT_KEY, d as MKSvgIcon } from "./index-
|
|
4
|
-
import
|
|
3
|
+
import { D as DATA_TABLE_CONTEXT_KEY, d as MKSvgIcon } from "./index-DzXMuczW.js";
|
|
4
|
+
import "@maketribe/dm";
|
|
5
5
|
import "vue-cropper";
|
|
6
6
|
import "@lexical/overflow";
|
|
7
7
|
import "@lexical/text";
|
|
@@ -25,28 +25,6 @@ const BatchOpt = /* @__PURE__ */ defineComponent({
|
|
|
25
25
|
setup(props) {
|
|
26
26
|
const dataTable = inject(DATA_TABLE_CONTEXT_KEY)?.dataTable;
|
|
27
27
|
const disallowBatchOpt = computed(() => (dataTable?.getSelection().length ?? 0) === 0);
|
|
28
|
-
const handleExport = (...args) => {
|
|
29
|
-
dataTable.exportData();
|
|
30
|
-
};
|
|
31
|
-
console.log(props);
|
|
32
|
-
const handleBatchDelete = async () => {
|
|
33
|
-
const isConfirm = await Dialoger.confirm({
|
|
34
|
-
message: "是否删除选中项",
|
|
35
|
-
type: "warning",
|
|
36
|
-
title: "批量删除"
|
|
37
|
-
});
|
|
38
|
-
if (!isConfirm) {
|
|
39
|
-
return;
|
|
40
|
-
}
|
|
41
|
-
const response = await dataTable.batchDelete(dataTable.getSelection());
|
|
42
|
-
if (response.data.code !== 200) {
|
|
43
|
-
Messager.error({
|
|
44
|
-
message: response.data.msg
|
|
45
|
-
});
|
|
46
|
-
return;
|
|
47
|
-
}
|
|
48
|
-
dataTable.load();
|
|
49
|
-
};
|
|
50
28
|
return () => {
|
|
51
29
|
return createVNode(ElDropdown, {
|
|
52
30
|
"splitButton": true,
|
|
@@ -62,24 +40,12 @@ const BatchOpt = /* @__PURE__ */ defineComponent({
|
|
|
62
40
|
return createVNode(ElDropdownMenu, null, {
|
|
63
41
|
default: () => [props.children?.filter((item) => item.predicate ? item.predicate() : true).map((item) => {
|
|
64
42
|
return createVNode(ElDropdownItem, {
|
|
65
|
-
"onClick": () => item.handler(dataTable?.getSelection())
|
|
43
|
+
"onClick": () => item.handle ? item.handle(dataTable?.getSelection()) : item.handler(dataTable?.getSelection())
|
|
66
44
|
}, {
|
|
67
45
|
default: () => [item.icon ? createVNode(MKSvgIcon, {
|
|
68
46
|
"name": item.icon
|
|
69
47
|
}, null) : "", item.label]
|
|
70
48
|
});
|
|
71
|
-
}), createVNode(ElDropdownItem, {
|
|
72
|
-
"onClick": handleExport
|
|
73
|
-
}, {
|
|
74
|
-
default: () => [createVNode(MKSvgIcon, {
|
|
75
|
-
"name": "icon-park-solid:export-themes"
|
|
76
|
-
}, null), createTextVNode(" 批量导出")]
|
|
77
|
-
}), createVNode(ElDropdownItem, {
|
|
78
|
-
"onClick": handleBatchDelete
|
|
79
|
-
}, {
|
|
80
|
-
default: () => [createVNode(MKSvgIcon, {
|
|
81
|
-
"name": "icon-park-solid:delete-themes"
|
|
82
|
-
}, null), createTextVNode(" 批量删除")]
|
|
83
49
|
})]
|
|
84
50
|
});
|
|
85
51
|
}
|
|
@@ -92,4 +58,4 @@ export {
|
|
|
92
58
|
MKBatchOpt,
|
|
93
59
|
MKBatchOpt as default
|
|
94
60
|
};
|
|
95
|
-
//# sourceMappingURL=index-
|
|
61
|
+
//# sourceMappingURL=index-Ck4uVtob.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-Ck4uVtob.js","sources":["../../src/components/data-model/data-table/components/header-components/batch-opt/batch-opt.tsx","../../src/components/data-model/data-table/components/header-components/batch-opt/index.ts"],"sourcesContent":["import { computed, defineComponent, inject, unref } from \"vue\";\nimport { ElDropdown, ElDropdownItem, ElDropdownMenu,ElButton } from \"element-plus\";\nimport { MKSvgIcon } from \"../../../../../basic\";\nimport { DATA_TABLE_CONTEXT_KEY } from \"../../../token\";\nimport {DataTree, Dialoger, Messager} from \"@maketribe/dm\";\n\nexport default defineComponent({\n name: \"MKBatchOpt\",\n props:{\n children: {\n type: Array,\n },\n\n },\n setup(props) {\n const dataTable = inject(DATA_TABLE_CONTEXT_KEY)?.dataTable!;\n const disallowBatchOpt = computed(\n () => (dataTable?.getSelection().length ?? 0) === 0\n );\n\n // const handleExport = (...args: any[]) => {\n // dataTable.exportData();\n // };\n // const handleBatchDelete = async () => {\n // const isConfirm = await Dialoger.confirm({\n // message: \"是否删除选中项\",\n // type: \"warning\",\n // title: \"批量删除\",\n // });\n //\n // if (!isConfirm) {\n // return;\n // }\n //\n // const response = await dataTable.batchDelete(dataTable.getSelection());\n //\n // if (response.data.code !== 200) {\n // Messager.error({ message: response.data.msg });\n // return;\n // }\n //\n // dataTable.load();\n // };\n\n return () => {\n\n return (\n <ElDropdown splitButton disabled={disallowBatchOpt.value}\n v-slots={{\n default: ()=>{\n return `批量操作${!disallowBatchOpt.value?\"(已选中\"+dataTable?.getSelection().length+\"项)\":\"\"}`\n },\n dropdown: () => {\n return (\n <ElDropdownMenu>\n {\n props.children?.filter((item:any)=>item.predicate ? item.predicate() : true).map((item:any)=>{\n return <ElDropdownItem onClick={()=>item.handle ? item.handle(dataTable?.getSelection()) : item.handler(dataTable?.getSelection())}>\n {item.icon ? <MKSvgIcon name={item.icon} /> : \"\"}\n {item.label}\n </ElDropdownItem>\n })\n }\n {/*<ElDropdownItem onClick={handleExport}>*/}\n {/* <MKSvgIcon name=\"icon-park-solid:export-themes\" /> 批量导出*/}\n {/*</ElDropdownItem>*/}\n {/*<ElDropdownItem onClick={handleBatchDelete}>*/}\n {/* <MKSvgIcon name=\"icon-park-solid:delete-themes\" /> 批量删除*/}\n {/*</ElDropdownItem>*/}\n </ElDropdownMenu>\n );\n },\n }}\n >\n <MKSvgIcon name=\"clarity:export-solid-badged\" />\n </ElDropdown>\n );\n };\n },\n});\n","import BatchOpt from \"./batch-opt\";\n\nexport const MKBatchOpt = BatchOpt;\nexport default MKBatchOpt;\n"],"names":["name","props","children","type","Array","setup","dataTable","inject","DATA_TABLE_CONTEXT_KEY","disallowBatchOpt","computed","getSelection","length","_createVNode","ElDropdown","value","default","MKSvgIcon","dropdown","ElDropdownMenu","filter","item","predicate","map","ElDropdownItem","onClick","handle","handler","icon","label"],"mappings":";;;;;;;;;;;;;;;;;AAMA,MAAA,2CAA+B;AAAA,EAC7BA,MAAM;AAAA,EACNC,OAAM;AAAA,IACJC,UAAU;AAAA,MACRC,MAAMC;AAAAA,IACR;AAAA;EAGFC,MAAMJ,OAAO;AACX,UAAMK,YAAYC,OAAOC,sBAAsB,GAAGF;AAClD,UAAMG,mBAAmBC,SACvB,OAAOJ,WAAWK,eAAeC,UAAU,OAAO,CACpD;AA0BA,WAAO,MAAM;AAEX,aAAAC,YAAAC,YAAA;AAAA,QAAA,eAAA;AAAA,QAAA,YACoCL,iBAAiBM;AAAAA,MAAK,GAAA;AAAA,QAAAC,SAAAA,MAAA,CAAAH,YAAAI,WAAA;AAAA,UAAA,QAAA;AAAA,QAAA,GAAA,IAAA,CAAA;AAAA,QAEpDD,SAASA,MAAI;AACX,iBAAO,OAAO,CAACP,iBAAiBM,QAAM,SAAOT,WAAWK,eAAeC,SAAO,OAAK,EAAE;AAAA,QACvF;AAAA,QACAM,UAAUA,MAAM;AACd,iBAAAL,YAAAM,gBAAA,MAAA;AAAA,YAAAH,SAAAA,MAAA,CAGMf,MAAMC,UAAUkB,OAAQC,UAAWA,KAAKC,YAAYD,KAAKC,UAAS,IAAK,IAAI,EAAEC,IAAKF,UAAW;AAC3F,qBAAAR,YAAAW,gBAAA;AAAA,gBAAA,WAAiCC,MAAIJ,KAAKK,SAASL,KAAKK,OAAOpB,WAAWK,aAAY,CAAE,IAAIU,KAAKM,QAAQrB,WAAWK,aAAY,CAAE;AAAA,cAAC,GAAA;AAAA,gBAAAK,SAAAA,MAAA,CAChIK,KAAKO,OAAIf,YAAAI,WAAA;AAAA,kBAAA,QAAoBI,KAAKO;AAAAA,gBAAI,GAAA,IAAA,IAAO,IAC7CP,KAAKQ,KAAK;AAAA,cAAA,CAAA;AAAA,YAEf,CAAC,CAAC;AAAA,UAAA,CAAA;AAAA,QAUV;AAAA,MAAC,CAAA;AAAA,IAMT;AAAA,EACF;AACF,CAAC;AC7EM,MAAM,aAAa;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { defineComponent, computed, createVNode, unref } from "vue";
|
|
2
2
|
import { ElSwitch } from "element-plus";
|
|
3
|
-
import { c as columnProps, u as useColumn } from "./index-
|
|
3
|
+
import { c as columnProps, u as useColumn } from "./index-DzXMuczW.js";
|
|
4
4
|
import { buildProps } from "@maketribe/utils";
|
|
5
5
|
import "vue-router";
|
|
6
6
|
import "@maketribe/dm";
|
|
@@ -63,4 +63,4 @@ export {
|
|
|
63
63
|
columnSwitchProps,
|
|
64
64
|
MKColumnSwitch as default
|
|
65
65
|
};
|
|
66
|
-
//# sourceMappingURL=index-
|
|
66
|
+
//# sourceMappingURL=index-Cq7MnBXz.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-
|
|
1
|
+
{"version":3,"file":"index-Cq7MnBXz.js","sources":["../../src/components/data-model/data-table/components/column-switch/column-switch-options.ts","../../src/components/data-model/data-table/components/column-switch/column-switch.tsx","../../src/components/data-model/data-table/components/column-switch/index.ts"],"sourcesContent":["import { ExtractPropTypes } from \"vue\";\nimport { buildProps } from \"@maketribe/utils\";\nimport { ColumnEventData, columnProps } from \"../../composables\";\n\nexport const columnSwitchProps = buildProps({\n ...columnProps,\n disabled: { type: Boolean, default: true },\n} as const);\n\nexport type ColumnSwitchProps = ExtractPropTypes<typeof columnSwitchProps>;\n\nexport const columnSwitchEmits = {\n change: (data: ColumnEventData & { value: boolean }) => true,\n};\n\nexport type ColumnSwitchEmits = typeof columnSwitchEmits;\n","import { computed, defineComponent, unref } from \"vue\";\nimport { ElSwitch } from \"element-plus\";\n\nimport { useColumn } from \"../../composables\";\nimport { columnSwitchEmits, columnSwitchProps } from \"./column-switch-options\";\n\nexport default defineComponent({\n name: \"MKColumnSwitch\",\n props: columnSwitchProps,\n emits: columnSwitchEmits,\n setup(props, { emit }) {\n const { value } = useColumn(props);\n\n const disabled = computed(() => props.disabled);\n\n const handleChange = (value: boolean) => {\n emit(\"change\", {\n row: props.row,\n column: props.column,\n index: props.index,\n value,\n });\n };\n\n return () => {\n return (\n <div class=\"mk-column-switch\">\n <ElSwitch\n disabled={unref(disabled)}\n modelValue={unref(value)}\n onChange={handleChange as any}\n />\n </div>\n );\n };\n },\n});\n","import ColumnSwitch from \"./column-switch\";\n\nexport const MKColumnSwitch = ColumnSwitch;\nexport default MKColumnSwitch;\n\nexport * from \"./column-switch-options\";\n"],"names":["name","props","columnSwitchProps","emits","columnSwitchEmits","setup","emit","value","useColumn","disabled","computed","handleChange","row","column","index","_createVNode","ElSwitch","unref"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAIO,MAAM,oBAAoB,WAAW;AAAA,EAC1C,GAAG;AAAA,EACH,UAAU,EAAE,MAAM,SAAS,SAAS,KAAA;AACtC,CAAU;AAIH,MAAM,oBAAoB;AAAA,EAC/B,QAAQ,CAAC,SAA+C;AAC1D;ACPA,MAAA,+CAA+B;AAAA,EAC7BA,MAAM;AAAA,EACNC,OAAOC;AAAAA,EACPC,OAAOC;AAAAA,EACPC,MAAMJ,OAAO;AAAA,IAAEK;AAAAA,EAAK,GAAG;AACrB,UAAM;AAAA,MAAEC;AAAAA,IAAM,IAAIC,UAAUP,KAAK;AAEjC,UAAMQ,WAAWC,SAAS,MAAMT,MAAMQ,QAAQ;AAE9C,UAAME,eAAgBJ,CAAAA,WAAmB;AACvCD,WAAK,UAAU;AAAA,QACbM,KAAKX,MAAMW;AAAAA,QACXC,QAAQZ,MAAMY;AAAAA,QACdC,OAAOb,MAAMa;AAAAA,QACbP,OAAAA;AAAAA,MACF,CAAC;AAAA,IACH;AAEA,WAAO,MAAM;AACX,aAAAQ,YAAA,OAAA;AAAA,QAAA,SAAA;AAAA,SAAA,CAAAA,YAAAC,UAAA;AAAA,QAAA,YAGgBC,MAAMR,QAAQ;AAAA,QAAC,cACbQ,MAAMV,KAAK;AAAA,QAAC,YACdI;AAAAA,MAAY,GAAA,IAAA,CAAA,CAAA;AAAA,IAI9B;AAAA,EACF;AACF,CAAC;AClCM,MAAM,iBAAiB;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { defineComponent, ref, watch, resolveComponent, createElementBlock, openBlock, createVNode, createElementVNode, withCtx, createTextVNode, unref, toDisplayString, Fragment, renderList, normalizeClass, pushScopeId, popScopeId } from "vue";
|
|
2
2
|
import { ElCard } from "element-plus";
|
|
3
|
-
import { G as DATA_MODEL_NAME, H as MODULE_NAME, I as MSAppClient, J as MsAccountTable, K as useMSAppClient, d as MKSvgIcon, _ as _export_sfc } from "./index-
|
|
3
|
+
import { G as DATA_MODEL_NAME, H as MODULE_NAME, I as MSAppClient, J as MsAccountTable, K as useMSAppClient, d as MKSvgIcon, _ as _export_sfc } from "./index-DzXMuczW.js";
|
|
4
4
|
import { DataForm, Messager, FormColumn, Dialoger } from "@maketribe/dm";
|
|
5
5
|
import "vue-cropper";
|
|
6
6
|
import "@lexical/overflow";
|
|
@@ -281,4 +281,4 @@ const index = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-75f8
|
|
|
281
281
|
export {
|
|
282
282
|
index as default
|
|
283
283
|
};
|
|
284
|
-
//# sourceMappingURL=index-
|
|
284
|
+
//# sourceMappingURL=index-Czm8pBr-.js.map
|