@maketribe/ms-app 3.2.7 → 3.2.9
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/components/basic/data-table-select/data-table-select.js +2 -2
- package/dist/cjs/components/basic/data-table-select/data-table-select.js.map +1 -1
- package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/ImageEditPanel.js +4 -4
- package/dist/cjs/components/basic/doc-editor/plugins/ImagePlugin/ImageEditPanel.js.map +1 -1
- package/dist/cjs/components/basic/icon-select/icon-select.js +25 -9
- package/dist/cjs/components/basic/icon-select/icon-select.js.map +1 -1
- package/dist/cjs/components/basic/svg-icon/svg-icon.js +4 -4
- package/dist/cjs/components/basic/svg-icon/svg-icon.js.map +1 -1
- package/dist/cjs/components/basic/upload-file/ui/upload-image/upload-image-options.js +12 -0
- package/dist/cjs/components/basic/upload-file/ui/upload-image/upload-image-options.js.map +1 -1
- package/dist/cjs/components/basic/upload-file/ui/upload-image/upload-image.js +34 -6
- package/dist/cjs/components/basic/upload-file/ui/upload-image/upload-image.js.map +1 -1
- package/dist/cjs/components/business/resource-list/ResourceManager.js +2 -1
- package/dist/cjs/components/business/resource-list/ResourceManager.js.map +1 -1
- package/dist/cjs/components/data-model/data-filter-form/data-filter-form.js +2 -6
- package/dist/cjs/components/data-model/data-filter-form/data-filter-form.js.map +1 -1
- package/dist/cjs/components/data-model/data-form/data-form-item/data-form-item.js +1 -1
- package/dist/cjs/components/data-model/data-form/data-form-item/data-form-item.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/components/header-components/table-filter/table-filter.js +62 -2
- package/dist/cjs/components/data-model/data-table/components/header-components/table-filter/table-filter.js.map +1 -1
- package/dist/cjs/components/data-model/data-table/views/tree-view/tree-view.js +2 -2
- package/dist/cjs/components/data-model/data-table/views/tree-view/tree-view.js.map +1 -1
- package/dist/cjs/message-impl/DialogerImpl.js +4 -2
- package/dist/cjs/message-impl/DialogerImpl.js.map +1 -1
- package/dist/cjs/modules/cms/components/part-tree/index.vue.js +5 -5
- package/dist/cjs/modules/cms/composables/part-extensions.js.map +1 -1
- package/dist/cjs/modules/cms/pages/cms-ad/index.vue2.js +4 -4
- package/dist/cjs/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js +60 -47
- package/dist/cjs/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js.map +1 -1
- package/dist/cjs/modules/cms/pages/cms-contents/components/article-atlas.vue.js +4 -4
- package/dist/cjs/modules/cms/pages/cms-contents/index.vue2.js +71 -48
- package/dist/cjs/modules/cms/pages/cms-contents/index.vue2.js.map +1 -1
- package/dist/cjs/modules/cms/pages/cms-resource/index.vue2.js +30 -0
- package/dist/cjs/modules/cms/pages/cms-resource/index.vue2.js.map +1 -1
- package/dist/cjs/modules/ms/components/material-list/components/file-view/file-view.js +3 -3
- package/dist/cjs/modules/ms/components/material-list/components/file-view/file-view.js.map +1 -1
- package/dist/cjs/modules/ms/components/material-list/components/video-view/video-view.js +6 -6
- package/dist/cjs/modules/ms/components/material-list/components/video-view/video-view.js.map +1 -1
- package/dist/cjs/modules/ms/components/material-list/material-group.js +5 -5
- package/dist/cjs/modules/ms/components/material-list/material-group.js.map +1 -1
- package/dist/cjs/modules/ms/dataviews/ms-config/MsConfigTable.js +0 -1
- package/dist/cjs/modules/ms/dataviews/ms-config/MsConfigTable.js.map +1 -1
- package/dist/cjs/modules/ms/dataviews/ms-deny-ip-access-list/MsDenyIPAccessListTable.js +0 -1
- package/dist/cjs/modules/ms/dataviews/ms-deny-ip-access-list/MsDenyIPAccessListTable.js.map +1 -1
- package/dist/cjs/modules/ms/dataviews/ms-ip-white-list/MsIPWhitelistTable.js +0 -1
- package/dist/cjs/modules/ms/dataviews/ms-ip-white-list/MsIPWhitelistTable.js.map +1 -1
- package/dist/cjs/modules/ms/dataviews/ms-member/MsMemberTable.js +3 -4
- package/dist/cjs/modules/ms/dataviews/ms-member/MsMemberTable.js.map +1 -1
- package/dist/cjs/modules/ms/dataviews/ms-menu/MsMenuForm.js +10 -10
- package/dist/cjs/modules/ms/dataviews/ms-menu/MsMenuForm.js.map +1 -1
- package/dist/cjs/modules/ms/dataviews/ms-menu/MsMenuTable.js +0 -1
- package/dist/cjs/modules/ms/dataviews/ms-menu/MsMenuTable.js.map +1 -1
- package/dist/cjs/modules/ms/dataviews/ms-menu/ms-route/MsRouteTable.js +4 -1
- package/dist/cjs/modules/ms/dataviews/ms-menu/ms-route/MsRouteTable.js.map +1 -1
- package/dist/cjs/modules/ms/dataviews/ms-role/MsRoleTable.js +0 -1
- package/dist/cjs/modules/ms/dataviews/ms-role/MsRoleTable.js.map +1 -1
- package/dist/cjs/modules/ms/index.js +5 -0
- package/dist/cjs/modules/ms/index.js.map +1 -1
- package/dist/cjs/modules/ms/pages/icons/index.vue.js +4 -0
- package/dist/cjs/modules/ms/pages/icons/index.vue.js.map +1 -0
- package/dist/cjs/modules/ms/pages/icons/index.vue2.js +139 -0
- package/dist/cjs/modules/ms/pages/icons/index.vue2.js.map +1 -0
- package/dist/cjs/modules/ms/pages/ms-role/components/aside.vue.js +3 -3
- package/dist/esm/components/basic/icon-select/icon-select.js +26 -10
- package/dist/esm/components/basic/icon-select/icon-select.js.map +1 -1
- package/dist/esm/components/basic/svg-icon/svg-icon.js +3 -3
- package/dist/esm/components/basic/svg-icon/svg-icon.js.map +1 -1
- package/dist/esm/components/basic/upload-file/ui/upload-image/upload-image-options.js +12 -0
- package/dist/esm/components/basic/upload-file/ui/upload-image/upload-image-options.js.map +1 -1
- package/dist/esm/components/basic/upload-file/ui/upload-image/upload-image.js +34 -6
- package/dist/esm/components/basic/upload-file/ui/upload-image/upload-image.js.map +1 -1
- package/dist/esm/components/business/resource-list/ResourceManager.js +2 -1
- package/dist/esm/components/business/resource-list/ResourceManager.js.map +1 -1
- package/dist/esm/components/data-model/data-filter-form/data-filter-form.js +1 -5
- package/dist/esm/components/data-model/data-filter-form/data-filter-form.js.map +1 -1
- package/dist/esm/components/data-model/data-form/data-form-item/data-form-item.js +2 -2
- package/dist/esm/components/data-model/data-form/data-form-item/data-form-item.js.map +1 -1
- package/dist/esm/components/data-model/data-table/components/header-components/table-filter/table-filter.js +64 -4
- package/dist/esm/components/data-model/data-table/components/header-components/table-filter/table-filter.js.map +1 -1
- package/dist/esm/message-impl/DialogerImpl.js +4 -2
- package/dist/esm/message-impl/DialogerImpl.js.map +1 -1
- package/dist/esm/modules/cms/composables/part-extensions.js.map +1 -1
- package/dist/esm/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js +60 -47
- package/dist/esm/modules/cms/pages/cms-contents/article-edit-add-page.vue2.js.map +1 -1
- package/dist/esm/modules/cms/pages/cms-contents/index.vue2.js +72 -49
- package/dist/esm/modules/cms/pages/cms-contents/index.vue2.js.map +1 -1
- package/dist/esm/modules/cms/pages/cms-resource/index.vue2.js +30 -0
- package/dist/esm/modules/cms/pages/cms-resource/index.vue2.js.map +1 -1
- package/dist/esm/modules/ms/dataviews/ms-config/MsConfigTable.js +1 -2
- package/dist/esm/modules/ms/dataviews/ms-config/MsConfigTable.js.map +1 -1
- package/dist/esm/modules/ms/dataviews/ms-deny-ip-access-list/MsDenyIPAccessListTable.js +1 -2
- package/dist/esm/modules/ms/dataviews/ms-deny-ip-access-list/MsDenyIPAccessListTable.js.map +1 -1
- package/dist/esm/modules/ms/dataviews/ms-ip-white-list/MsIPWhitelistTable.js +1 -2
- package/dist/esm/modules/ms/dataviews/ms-ip-white-list/MsIPWhitelistTable.js.map +1 -1
- package/dist/esm/modules/ms/dataviews/ms-member/MsMemberTable.js +4 -5
- package/dist/esm/modules/ms/dataviews/ms-member/MsMemberTable.js.map +1 -1
- package/dist/esm/modules/ms/dataviews/ms-menu/MsMenuForm.js +10 -10
- package/dist/esm/modules/ms/dataviews/ms-menu/MsMenuForm.js.map +1 -1
- package/dist/esm/modules/ms/dataviews/ms-menu/MsMenuTable.js +1 -2
- package/dist/esm/modules/ms/dataviews/ms-menu/MsMenuTable.js.map +1 -1
- package/dist/esm/modules/ms/dataviews/ms-menu/ms-route/MsRouteTable.js +4 -1
- package/dist/esm/modules/ms/dataviews/ms-menu/ms-route/MsRouteTable.js.map +1 -1
- package/dist/esm/modules/ms/dataviews/ms-role/MsRoleTable.js +1 -2
- package/dist/esm/modules/ms/dataviews/ms-role/MsRoleTable.js.map +1 -1
- package/dist/esm/modules/ms/index.js +5 -0
- package/dist/esm/modules/ms/index.js.map +1 -1
- package/dist/esm/modules/ms/pages/icons/index.vue.js +5 -0
- package/dist/esm/modules/ms/pages/icons/index.vue.js.map +1 -0
- package/dist/esm/modules/ms/pages/icons/index.vue2.js +123 -0
- package/dist/esm/modules/ms/pages/icons/index.vue2.js.map +1 -0
- package/dist/style/components/form/form-detail.css +1 -1
- package/dist/style/components/form/form-icon-select.css +1 -1
- package/dist/style/components/form/index.css +1 -1
- package/dist/style/components/index.css +1 -1
- package/dist/style/components/table/index.css +1 -1
- package/dist/style/components/table/table-filter.css +1 -0
- package/dist/style/components/table-view.css +1 -1
- package/dist/style/index.css +1 -1
- package/dist/style/modules/ms/index.css +1 -1
- package/dist/style/modules/ms/pages/icon.css +1 -0
- package/dist/style/modules/ms/pages/index.css +1 -1
- package/dist/style/src/components/form/form-detail.scss +1 -1
- package/dist/style/src/components/form/form-icon-select.scss +21 -8
- package/dist/style/src/components/table/index.scss +2 -1
- package/dist/style/src/components/table/table-filter.scss +8 -0
- package/dist/style/src/components/table-view.scss +44 -43
- package/dist/style/src/modules/ms/pages/icon.scss +50 -0
- package/dist/style/src/modules/ms/pages/index.scss +2 -1
- package/dist/types/components/basic/upload-file/ui/upload-image/index.d.ts +9 -0
- package/dist/types/components/basic/upload-file/ui/upload-image/upload-image-options.d.ts +3 -0
- package/dist/types/components/basic/upload-file/ui/upload-image/upload-image.d.ts +9 -0
- package/dist/types/components/business/resource-list/ResourceManager.d.ts +1 -0
- package/dist/types/modules/cms/composables/part-extensions.d.ts +1 -1
- package/dist/types/modules/ms/pages/icons/index.vue.d.ts +2 -0
- package/package.json +4 -4
|
@@ -2,17 +2,13 @@
|
|
|
2
2
|
const vue = require("vue");
|
|
3
3
|
const dataFilterFormOptions = require("./data-filter-form-options.js");
|
|
4
4
|
const index = require("./data-filter-form-item/index.js");
|
|
5
|
-
const token
|
|
6
|
-
const vueRouter = require("vue-router");
|
|
7
|
-
const token = require("../data-table/token.js");
|
|
5
|
+
const token = require("./token.js");
|
|
8
6
|
const DataFilterForm = /* @__PURE__ */ vue.defineComponent({
|
|
9
7
|
name: "MKDataFilterForm",
|
|
10
8
|
props: dataFilterFormOptions.dataFilterFormProps,
|
|
11
9
|
setup(props, {
|
|
12
10
|
slots
|
|
13
11
|
}) {
|
|
14
|
-
vueRouter.useRouter();
|
|
15
|
-
vue.inject(token.DATA_TABLE_CONTEXT_KEY);
|
|
16
12
|
const dataTable = vue.computed(() => props.dataTable);
|
|
17
13
|
const dataFilter = vue.computed(() => vue.unref(dataTable).dataFilter);
|
|
18
14
|
const columns = vue.computed(() => vue.unref(dataFilter).getColumns().filter((column) => column.visible));
|
|
@@ -20,7 +16,7 @@ const DataFilterForm = /* @__PURE__ */ vue.defineComponent({
|
|
|
20
16
|
const maxWordCount = Math.max(...vue.unref(columns).map((column) => column.label.length));
|
|
21
17
|
return maxWordCount * 14 + 10;
|
|
22
18
|
});
|
|
23
|
-
vue.provide(token
|
|
19
|
+
vue.provide(token.DATA_FILTER_CONTEXT, vue.reactive({
|
|
24
20
|
dataFilter,
|
|
25
21
|
labelWidth
|
|
26
22
|
}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-filter-form.js","sources":["../../../../../src/components/data-model/data-filter-form/data-filter-form.tsx"],"sourcesContent":["import {\r\n Fragment,\r\n Suspense,\r\n computed,\r\n defineComponent,\r\n
|
|
1
|
+
{"version":3,"file":"data-filter-form.js","sources":["../../../../../src/components/data-model/data-filter-form/data-filter-form.tsx"],"sourcesContent":["import {\r\n Fragment,\r\n Suspense,\r\n computed,\r\n defineComponent,\r\n inject,\r\n provide,\r\n reactive,\r\n unref,\r\n watch,\r\n onMounted,\r\n} from \"vue\";\r\nimport { dataFilterFormProps } from \"./data-filter-form-options\";\r\nimport { MKDataFilterFormItem } from \"./data-filter-form-item\";\r\nimport { DATA_FILTER_CONTEXT } from \"./token\";\r\n\r\nexport default defineComponent({\r\n name: \"MKDataFilterForm\",\r\n props: dataFilterFormProps,\r\n setup(props, { slots }) {\r\n const dataTable = computed(() => props.dataTable);\r\n const dataFilter = computed(() => unref(dataTable).dataFilter);\r\n\r\n const columns = computed(() =>\r\n unref(dataFilter)\r\n .getColumns()\r\n .filter((column) => column.visible)\r\n );\r\n\r\n const labelWidth = computed(() => {\r\n const maxWordCount = Math.max(\r\n ...unref(columns).map((column) => column.label.length)\r\n );\r\n\r\n return maxWordCount * 14 + 10;\r\n });\r\n\r\n provide(DATA_FILTER_CONTEXT, reactive({ dataFilter, labelWidth }));\r\n\r\n let resolve: Function | null = null;\r\n const suspenseResolvePromise = new Promise((_resolve) => {\r\n resolve = _resolve;\r\n });\r\n\r\n const handleResolve = () => {\r\n resolve?.();\r\n };\r\n\r\n onMounted(() => {\r\n watch(\r\n dataTable,\r\n async (dataTable, _, onCleanup) => {\r\n await suspenseResolvePromise;\r\n\r\n const disposable = dataTable.afterInitdEvent.on(() => {\r\n dataTable.dataFilter.setReady();\r\n });\r\n\r\n onCleanup(() => {\r\n disposable.dispose();\r\n });\r\n },\r\n { immediate: true }\r\n );\r\n });\r\n\r\n return () => {\r\n if (!unref(columns).length) {\r\n return null;\r\n }\r\n\r\n let children: any = slots.default?.();\r\n\r\n if (!children) {\r\n children = unref(columns).map((column) => {\r\n if (!column.name) {\r\n return null;\r\n }\r\n\r\n return (\r\n slots[`col-${column.name}`]?.() || (\r\n <MKDataFilterFormItem\r\n name={column.name}\r\n v-slots={{ default: slots[`col-${column.name}-content`] }}\r\n />\r\n )\r\n );\r\n });\r\n }\r\n\r\n if (!children) {\r\n return null;\r\n }\r\n\r\n return (\r\n <div class=\"mk-data-filter-form\">\r\n <Suspense onResolve={handleResolve}>\r\n <Fragment>{children}</Fragment>\r\n </Suspense>\r\n </div>\r\n );\r\n };\r\n },\r\n});\r\n"],"names":["defineComponent","name","props","dataFilterFormProps","setup","slots","dataTable","computed","dataFilter","unref","columns","getColumns","filter","column","visible","labelWidth","maxWordCount","Math","max","map","label","length","provide","DATA_FILTER_CONTEXT","reactive","resolve","suspenseResolvePromise","Promise","_resolve","handleResolve","onMounted","watch","_","onCleanup","disposable","afterInitdEvent","on","setReady","dispose","immediate","children","default","_createVNode","MKDataFilterFormItem","Suspense","_Fragment"],"mappings":";;;;;AAgBA,MAAeA,qDAAgB;AAAA,EAC7BC,MAAM;AAAA,EACNC,OAAOC,sBAAmB;AAAA,EAC1BC,MAAMF,OAAO;AAAA,IAAEG;AAAAA,EAAM,GAAG;AACtB,UAAMC,YAAYC,IAAQ,SAAC,MAAML,MAAMI,SAAS;AAChD,UAAME,aAAaD,IAAAA,SAAS,MAAME,IAAK,MAACH,SAAS,EAAEE,UAAU;AAE7D,UAAME,UAAUH,IAAAA,SAAS,MACvBE,IAAAA,MAAMD,UAAU,EACbG,WAAY,EACZC,OAAQC,YAAWA,OAAOC,OAAO,CACtC;AAEA,UAAMC,aAAaR,IAAAA,SAAS,MAAM;AAChC,YAAMS,eAAeC,KAAKC,IACxB,GAAGT,IAAK,MAACC,OAAO,EAAES,IAAKN,YAAWA,OAAOO,MAAMC,MAAM,CACvD;AAEA,aAAOL,eAAe,KAAK;AAAA,IAC7B,CAAC;AAEDM,QAAO,QAACC,MAAmB,qBAAEC,aAAS;AAAA,MAAEhB;AAAAA,MAAYO;AAAAA,IAAY,CAAA,CAAC;AAEjE,QAAIU,UAA2B;AAC/B,UAAMC,yBAAyB,IAAIC,QAASC,cAAa;AACvDH,gBAAUG;AAAAA,IACZ,CAAC;AAED,UAAMC,gBAAgBA,MAAM;AAC1BJ;AAAAA;AAGFK,QAAAA,UAAU,MAAM;AACdC,UAAAA,MACEzB,WACA,OAAOA,YAAW0B,GAAGC,cAAc;AACjC,cAAMP;AAEN,cAAMQ,aAAa5B,WAAU6B,gBAAgBC,GAAG,MAAM;AACpD9B,UAAAA,WAAUE,WAAW6B;QACvB,CAAC;AAEDJ,kBAAU,MAAM;AACdC,qBAAWI,QAAO;AAAA,QACpB,CAAC;AAAA,MACH,GACA;AAAA,QAAEC,WAAW;AAAA,MAAK,CACpB;AAAA,IACF,CAAC;AAED,WAAO,MAAM;;AACX,UAAI,CAAC9B,IAAK,MAACC,OAAO,EAAEW,QAAQ;AAC1B,eAAO;AAAA,MACT;AAEA,UAAImB,YAAgBnC,WAAMoC,YAANpC;AAEpB,UAAI,CAACmC,UAAU;AACbA,mBAAW/B,IAAAA,MAAMC,OAAO,EAAES,IAAKN,YAAW;;AACxC,cAAI,CAACA,OAAOZ,MAAM;AAChB,mBAAO;AAAA,UACT;AAEA,mBACEI,MAAAA,MAAM,OAAOQ,OAAOZ,IAAI,QAAxBI,gBAAAA,IAAAA,gBAA+BqC,IAAA,YAAAC,4BAAA;AAAA,YAAA,QAErB9B,OAAOZ;AAAAA,aACJ;AAAA,YAAEwC,SAASpC,MAAM,OAAOQ,OAAOZ,IAAI,UAAU;AAAA,UAAE,CAAC;AAAA,QAIjE,CAAC;AAAA,MACH;AAEA,UAAI,CAACuC,UAAU;AACb,eAAO;AAAA,MACT;AAEA,aAAAE,IAAAA,YAAA,OAAA;AAAA,QAAA,SAAA;AAAA,SAAAA,CAAAA,IAAA,YAAAE,cAAA;AAAA,QAAA,aAEyBf;AAAAA,MAAa,GAAA;AAAA,QAAAY,SAAAA,MAAA,CAAAC,gBAAAG,IAAAA,iBACrBL,QAAQ,CAAA,CAAA;AAAA,MAAA,CAAA,CAAA,CAAA;AAAA;EAK7B;AACF,CAAC;;"}
|
|
@@ -54,7 +54,7 @@ const DataFormItem = /* @__PURE__ */ vue.defineComponent({
|
|
|
54
54
|
component,
|
|
55
55
|
componentProps
|
|
56
56
|
} = useColumnComponent.useFormColumnComponent(formColumn, dataForm);
|
|
57
|
-
const disabled = vue.computed(() => vue.unref(formColumn).disabled);
|
|
57
|
+
const disabled = elementPlus.useFormDisabled(vue.computed(() => vue.unref(formColumn).disabled));
|
|
58
58
|
const value = vue.computed({
|
|
59
59
|
get: () => {
|
|
60
60
|
var _a;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-form-item.js","sources":["../../../../../../src/components/data-model/data-form/data-form-item/data-form-item.tsx"],"sourcesContent":["import { ElFormItem } from \"element-plus\";\r\nimport {\r\n Ref,\r\n computed,\r\n defineComponent,\r\n inject,\r\n provide,\r\n reactive,\r\n ref,\r\n toRaw,\r\n unref,\r\n useSlots,\r\n watch,\r\n} from \"vue\";\r\nimport { FormColumn } from \"@maketribe/dm\";\r\n\r\nimport { useFormColumnComponent } from \"../../../../composables\";\r\nimport {\r\n DATA_FORM_CONTEXT_KEY,\r\n DATA_FORM_ITEM_CONTEXT_KEY,\r\n DataFormItemContext,\r\n} from \"../token\";\r\nimport { dataFormItemProps } from \"./data-form-item-options\";\r\n\r\nexport default defineComponent({\r\n name: \"MKDataFormItem\",\r\n props: dataFormItemProps,\r\n setup(props) {\r\n const slots = useSlots();\r\n\r\n const dataFormContext = inject(DATA_FORM_CONTEXT_KEY);\r\n\r\n const dataForm = computed(() => dataFormContext?.dataForm ?? null);\r\n\r\n let _formColumn: FormColumn | null = null;\r\n\r\n const existFormColumn = ref(\r\n unref(dataForm)!.getColumn(props.name!)\r\n ) as Ref<FormColumn | null>;\r\n\r\n const formColumn = computed(() => {\r\n const existingColumn = unref(existFormColumn);\r\n\r\n if (existingColumn) {\r\n return existingColumn;\r\n }\r\n\r\n if (!_formColumn) {\r\n _formColumn = reactive(\r\n new FormColumn({\r\n required: props.required,\r\n name: props.name!,\r\n label: props.label!,\r\n })\r\n ) as FormColumn;\r\n }\r\n\r\n return _formColumn!;\r\n });\r\n\r\n watch(\r\n formColumn,\r\n (formColumn, _, onCleanup) => {\r\n const existFormColumn = unref(dataForm)!.getColumn(formColumn.name);\r\n\r\n if (!existFormColumn && _formColumn) {\r\n unref(dataForm)!.addColumn(_formColumn);\r\n }\r\n\r\n onCleanup(() => {\r\n if (_formColumn) {\r\n unref(dataForm)!.removeColumn(_formColumn);\r\n }\r\n });\r\n },\r\n { immediate: true }\r\n );\r\n\r\n const { component, componentProps } = useFormColumnComponent(\r\n formColumn,\r\n dataForm\r\n );\r\n\r\n const disabled = computed(() => unref(formColumn).disabled);\r\n\r\n const value = computed({\r\n get: () => unref(formColumn)?.getValue(),\r\n set: (v) => {\r\n unref(formColumn).setValue(v);\r\n },\r\n });\r\n\r\n const label = computed(() =>\r\n typeof props.label !== \"string\" ? unref(formColumn).label : props.label\r\n );\r\n\r\n provide(\r\n DATA_FORM_ITEM_CONTEXT_KEY,\r\n reactive({ column: formColumn }) as DataFormItemContext\r\n );\r\n\r\n return () => {\r\n let _formColumn = unref(formColumn);\r\n\r\n let _component = unref(component);\r\n\r\n let children: any =\r\n slots.default?.({\r\n data: unref(dataForm)!.data,\r\n column: _formColumn,\r\n dataForm: unref(dataForm),\r\n }) || null;\r\n\r\n if (!children && _component) {\r\n const FormColumnComponent = toRaw(_component);\r\n\r\n children = (\r\n <FormColumnComponent\r\n {...unref(componentProps)}\r\n column={_formColumn}\r\n modelValue={value.value}\r\n disabled={unref(disabled)}\r\n onUpdate:modelValue={(v: any) => (value.value = v)}\r\n />\r\n );\r\n }\r\n\r\n return (\r\n <ElFormItem\r\n prop={_formColumn.name}\r\n label={unref(label)}\r\n required={_formColumn.required}\r\n labelWidth={props.labelWidth}\r\n >\r\n {children}\r\n </ElFormItem>\r\n );\r\n };\r\n },\r\n});\r\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","defineComponent","name","props","dataFormItemProps","setup","slots","useSlots","dataFormContext","inject","DATA_FORM_CONTEXT_KEY","dataForm","computed","_formColumn","existFormColumn","ref","unref","getColumn","formColumn","existingColumn","reactive","FormColumn","required","label","watch","_","onCleanup","addColumn","removeColumn","immediate","component","componentProps","useFormColumnComponent","disabled","value","get","getValue","set","v","setValue","provide","DATA_FORM_ITEM_CONTEXT_KEY","column","_component","children","default","data","FormColumnComponent","toRaw","_createVNode","_mergeProps","ElFormItem","labelWidth"],"mappings":";;;;;;;;;;;;;AAsB6D,SAAAA,QAAAC,GAAA;AAAA,SAAA,OAAAA,MAAA,cAAAC,OAAAC,UAAAC,SAAAC,KAAAJ,CAAA,MAAAK,qBAAAA,CAAAA,IAAA,QAAAL,CAAA;AAAA;AAE7D,MAAeM,mDAAgB;AAAA,EAC7BC,MAAM;AAAA,EACNC,OAAOC,oBAAiB;AAAA,EACxBC,MAAMF,OAAO;AACX,UAAMG,QAAQC,IAAAA;AAEd,UAAMC,kBAAkBC,WAAOC,MAAAA,qBAAqB;AAEpD,UAAMC,WAAWC,IAAAA,SAAS,OAAMJ,mDAAiBG,aAAY,IAAI;AAEjE,QAAIE,cAAiC;AAErC,UAAMC,kBAAkBC,IAAG,IACzBC,UAAML,QAAQ,EAAGM,UAAUd,MAAMD,IAAK,CACxC;AAEA,UAAMgB,aAAaN,IAAAA,SAAS,MAAM;AAChC,YAAMO,iBAAiBH,UAAMF,eAAe;AAE5C,UAAIK,gBAAgB;AAClB,eAAOA;AAAAA,MACT;AAEA,UAAI,CAACN,aAAa;AAChBA,sBAAcO,IAAAA,SACZ,IAAIC,cAAW;AAAA,UACbC,UAAUnB,MAAMmB;AAAAA,UAChBpB,MAAMC,MAAMD;AAAAA,UACZqB,OAAOpB,MAAMoB;AAAAA,QACd,CAAA,CACH;AAAA,MACF;AAEA,aAAOV;AAAAA,IACT,CAAC;AAEDW,QAAAA,MACEN,YACA,CAACA,aAAYO,GAAGC,cAAc;AAC5B,YAAMZ,mBAAkBE,IAAAA,MAAML,QAAQ,EAAGM,UAAUC,YAAWhB,IAAI;AAElE,UAAI,CAACY,oBAAmBD,aAAa;AACnCG,YAAAA,MAAML,QAAQ,EAAGgB,UAAUd,WAAW;AAAA,MACxC;AAEAa,gBAAU,MAAM;AACd,YAAIb,aAAa;AACfG,cAAAA,MAAML,QAAQ,EAAGiB,aAAaf,WAAW;AAAA,QAC3C;AAAA,MACF,CAAC;AAAA,IACH,GACA;AAAA,MAAEgB,WAAW;AAAA,IAAK,CACpB;AAEA,UAAM;AAAA,MAAEC;AAAAA,MAAWC;AAAAA,IAAe,IAAIC,mBAAsB,uBAC1Dd,YACAP,QACF;AAEA,UAAMsB,
|
|
1
|
+
{"version":3,"file":"data-form-item.js","sources":["../../../../../../src/components/data-model/data-form/data-form-item/data-form-item.tsx"],"sourcesContent":["import { ElFormItem, useFormDisabled } from \"element-plus\";\r\nimport {\r\n Ref,\r\n computed,\r\n defineComponent,\r\n inject,\r\n provide,\r\n reactive,\r\n ref,\r\n toRaw,\r\n unref,\r\n useSlots,\r\n watch,\r\n} from \"vue\";\r\nimport { FormColumn } from \"@maketribe/dm\";\r\n\r\nimport { useFormColumnComponent } from \"../../../../composables\";\r\nimport {\r\n DATA_FORM_CONTEXT_KEY,\r\n DATA_FORM_ITEM_CONTEXT_KEY,\r\n DataFormItemContext,\r\n} from \"../token\";\r\nimport { dataFormItemProps } from \"./data-form-item-options\";\r\n\r\nexport default defineComponent({\r\n name: \"MKDataFormItem\",\r\n props: dataFormItemProps,\r\n setup(props) {\r\n const slots = useSlots();\r\n\r\n const dataFormContext = inject(DATA_FORM_CONTEXT_KEY);\r\n\r\n const dataForm = computed(() => dataFormContext?.dataForm ?? null);\r\n\r\n let _formColumn: FormColumn | null = null;\r\n\r\n const existFormColumn = ref(\r\n unref(dataForm)!.getColumn(props.name!)\r\n ) as Ref<FormColumn | null>;\r\n\r\n const formColumn = computed(() => {\r\n const existingColumn = unref(existFormColumn);\r\n\r\n if (existingColumn) {\r\n return existingColumn;\r\n }\r\n\r\n if (!_formColumn) {\r\n _formColumn = reactive(\r\n new FormColumn({\r\n required: props.required,\r\n name: props.name!,\r\n label: props.label!,\r\n })\r\n ) as FormColumn;\r\n }\r\n\r\n return _formColumn!;\r\n });\r\n\r\n watch(\r\n formColumn,\r\n (formColumn, _, onCleanup) => {\r\n const existFormColumn = unref(dataForm)!.getColumn(formColumn.name);\r\n\r\n if (!existFormColumn && _formColumn) {\r\n unref(dataForm)!.addColumn(_formColumn);\r\n }\r\n\r\n onCleanup(() => {\r\n if (_formColumn) {\r\n unref(dataForm)!.removeColumn(_formColumn);\r\n }\r\n });\r\n },\r\n { immediate: true }\r\n );\r\n\r\n const { component, componentProps } = useFormColumnComponent(\r\n formColumn,\r\n dataForm\r\n );\r\n\r\n const disabled = useFormDisabled(\r\n computed(() => unref(formColumn).disabled)\r\n );\r\n\r\n const value = computed({\r\n get: () => unref(formColumn)?.getValue(),\r\n set: (v) => {\r\n unref(formColumn).setValue(v);\r\n },\r\n });\r\n\r\n const label = computed(() =>\r\n typeof props.label !== \"string\" ? unref(formColumn).label : props.label\r\n );\r\n\r\n provide(\r\n DATA_FORM_ITEM_CONTEXT_KEY,\r\n reactive({ column: formColumn }) as DataFormItemContext\r\n );\r\n\r\n return () => {\r\n let _formColumn = unref(formColumn);\r\n\r\n let _component = unref(component);\r\n\r\n let children: any =\r\n slots.default?.({\r\n data: unref(dataForm)!.data,\r\n column: _formColumn,\r\n dataForm: unref(dataForm),\r\n }) || null;\r\n\r\n if (!children && _component) {\r\n const FormColumnComponent = toRaw(_component);\r\n\r\n children = (\r\n <FormColumnComponent\r\n {...unref(componentProps)}\r\n column={_formColumn}\r\n modelValue={value.value}\r\n disabled={unref(disabled)}\r\n onUpdate:modelValue={(v: any) => (value.value = v)}\r\n />\r\n );\r\n }\r\n\r\n return (\r\n <ElFormItem\r\n prop={_formColumn.name}\r\n label={unref(label)}\r\n required={_formColumn.required}\r\n labelWidth={props.labelWidth}\r\n >\r\n {children}\r\n </ElFormItem>\r\n );\r\n };\r\n },\r\n});\r\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","defineComponent","name","props","dataFormItemProps","setup","slots","useSlots","dataFormContext","inject","DATA_FORM_CONTEXT_KEY","dataForm","computed","_formColumn","existFormColumn","ref","unref","getColumn","formColumn","existingColumn","reactive","FormColumn","required","label","watch","_","onCleanup","addColumn","removeColumn","immediate","component","componentProps","useFormColumnComponent","disabled","useFormDisabled","value","get","getValue","set","v","setValue","provide","DATA_FORM_ITEM_CONTEXT_KEY","column","_component","children","default","data","FormColumnComponent","toRaw","_createVNode","_mergeProps","ElFormItem","labelWidth"],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
const vue = require("vue");
|
|
3
3
|
const elementPlus = require("element-plus");
|
|
4
|
+
const elIcons = require("@element-plus/icons-vue");
|
|
4
5
|
const token = require("../../../token.js");
|
|
5
6
|
const index = require("../../../../data-filter-popover/index.js");
|
|
6
7
|
const index$1 = require("../../../../../basic/svg-icon/index.js");
|
|
@@ -25,15 +26,57 @@ require("../../../../../basic/upload-file/upload-file-options.js");
|
|
|
25
26
|
require("../../../../../basic/doc-editor/index.js");
|
|
26
27
|
require("../../../../../basic/copy-container/index.js");
|
|
27
28
|
require("../../../../../basic/image-cropper/index.js");
|
|
29
|
+
const lodashEs = require("lodash-es");
|
|
30
|
+
const dm = require("@maketribe/dm");
|
|
28
31
|
const TableFilter = /* @__PURE__ */ vue.defineComponent({
|
|
29
32
|
name: "MKTableFilter",
|
|
30
33
|
setup() {
|
|
34
|
+
const search = vue.ref("");
|
|
31
35
|
const dataTableContext = vue.inject(token.DATA_TABLE_CONTEXT_KEY);
|
|
32
36
|
const dataTable = vue.computed(() => dataTableContext.dataTable);
|
|
33
37
|
const dataTableInitd = vue.computed(() => {
|
|
34
38
|
var _a;
|
|
35
39
|
return ((_a = vue.unref(dataTable)) == null ? void 0 : _a.initd) ?? false;
|
|
36
40
|
});
|
|
41
|
+
const searchFilterColumns = vue.computed(() => vue.unref(dataTable).dataFilter.getColumns().filter((column) => column.search));
|
|
42
|
+
const searchPlaceholder = vue.computed(() => `通过${vue.unref(searchFilterColumns).map((column) => column.label).join("、")}搜索`);
|
|
43
|
+
vue.watch(dataTable, (dataTable2, _, onCleanup) => {
|
|
44
|
+
onCleanup(() => {
|
|
45
|
+
const dataFilter = dataTable2.dataFilter;
|
|
46
|
+
if (dm.isWhereFilter(dataFilter)) {
|
|
47
|
+
dataFilter.getSearchGroup().clear();
|
|
48
|
+
}
|
|
49
|
+
});
|
|
50
|
+
}, {
|
|
51
|
+
immediate: true
|
|
52
|
+
});
|
|
53
|
+
const handleSearch = () => {
|
|
54
|
+
debounceSearch.cancel();
|
|
55
|
+
const dataFilter = vue.unref(dataTable).dataFilter;
|
|
56
|
+
if (dm.isWhereFilter(dataFilter)) {
|
|
57
|
+
const searchGroup = dataFilter.getSearchGroup();
|
|
58
|
+
searchGroup.clear();
|
|
59
|
+
const searchValue = vue.unref(search);
|
|
60
|
+
for (const searchFilterColumn of vue.unref(searchFilterColumns)) {
|
|
61
|
+
searchGroup.addOrCondition(searchFilterColumn.name, "like", `%${searchValue}%`);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
vue.unref(dataTable).load();
|
|
65
|
+
};
|
|
66
|
+
const debounceSearch = lodashEs.debounce(handleSearch, 1e3);
|
|
67
|
+
const handleSearchKeydown = (event) => {
|
|
68
|
+
if (event.key === "Enter") {
|
|
69
|
+
handleSearch();
|
|
70
|
+
}
|
|
71
|
+
};
|
|
72
|
+
const handleSearchFocus = (event) => {
|
|
73
|
+
const target = event.target;
|
|
74
|
+
target.addEventListener("input", debounceSearch);
|
|
75
|
+
};
|
|
76
|
+
const handleSearchBlur = (event) => {
|
|
77
|
+
const target = event.target;
|
|
78
|
+
target.removeEventListener("input", debounceSearch);
|
|
79
|
+
};
|
|
37
80
|
return () => {
|
|
38
81
|
if (!vue.unref(dataTableInitd)) {
|
|
39
82
|
return null;
|
|
@@ -42,7 +85,24 @@ const TableFilter = /* @__PURE__ */ vue.defineComponent({
|
|
|
42
85
|
if (_dataTable.dataFilter.getColumns().length === 0) {
|
|
43
86
|
return null;
|
|
44
87
|
}
|
|
45
|
-
|
|
88
|
+
let searchInputVNode = null;
|
|
89
|
+
if (vue.unref(searchFilterColumns).length) {
|
|
90
|
+
searchInputVNode = vue.createVNode(elementPlus.ElInput, {
|
|
91
|
+
"prefixIcon": elIcons.Search,
|
|
92
|
+
"class": "mk-table-filter__search",
|
|
93
|
+
"modelValue": vue.unref(search),
|
|
94
|
+
"onUpdate:modelValue": (v) => search.value = v,
|
|
95
|
+
"onKeydown": handleSearchKeydown,
|
|
96
|
+
"placeholder": vue.unref(searchPlaceholder),
|
|
97
|
+
"onFocus": handleSearchFocus,
|
|
98
|
+
"onBlur": handleSearchBlur,
|
|
99
|
+
"onClear": handleSearch,
|
|
100
|
+
"clearable": true
|
|
101
|
+
}, null);
|
|
102
|
+
}
|
|
103
|
+
return vue.createVNode("div", {
|
|
104
|
+
"class": "mk-table-filter"
|
|
105
|
+
}, [searchInputVNode, vue.createVNode(index.MKDataFilterPopover, {
|
|
46
106
|
"dataTable": _dataTable
|
|
47
107
|
}, {
|
|
48
108
|
default: () => [vue.createVNode(elementPlus.ElButton, null, {
|
|
@@ -50,7 +110,7 @@ const TableFilter = /* @__PURE__ */ vue.defineComponent({
|
|
|
50
110
|
"iconClass": "Filter"
|
|
51
111
|
}, null)]
|
|
52
112
|
})]
|
|
53
|
-
});
|
|
113
|
+
})]);
|
|
54
114
|
};
|
|
55
115
|
}
|
|
56
116
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table-filter.js","sources":["../../../../../../../../src/components/data-model/data-table/components/header-components/table-filter/table-filter.tsx"],"sourcesContent":["import { defineComponent, inject, computed, unref, watch, ref } from \"vue\";\r\nimport { ElButton } from \"element-plus\";\r\nimport { DATA_TABLE_CONTEXT_KEY } from \"../../../token\";\r\nimport { MKDataFilterPopover } from \"../../../../data-filter-popover\";\r\nimport { MKSvgIcon } from \"../../../../../basic\";\r\n\r\nexport default defineComponent({\r\n name: \"MKTableFilter\",\r\n setup() {\r\n const dataTableContext = inject(DATA_TABLE_CONTEXT_KEY);\r\n\r\n const dataTable = computed(() => dataTableContext!.dataTable);\r\n\r\n const dataTableInitd = computed(() => unref(dataTable)?.initd ?? false);\r\n\r\n return () => {\r\n if (!unref(dataTableInitd)) {\r\n return null;\r\n }\r\n\r\n const _dataTable = unref(dataTable);\r\n\r\n if (_dataTable.dataFilter.getColumns().length === 0) {\r\n return null;\r\n }\r\n\r\n return (\r\n <MKDataFilterPopover dataTable={_dataTable}>\r\n
|
|
1
|
+
{"version":3,"file":"table-filter.js","sources":["../../../../../../../../src/components/data-model/data-table/components/header-components/table-filter/table-filter.tsx"],"sourcesContent":["import { defineComponent, inject, computed, unref, watch, ref } from \"vue\";\r\nimport { ElButton, ElInput } from \"element-plus\";\r\nimport { Search } from \"@element-plus/icons-vue\";\r\nimport { DATA_TABLE_CONTEXT_KEY } from \"../../../token\";\r\nimport { MKDataFilterPopover } from \"../../../../data-filter-popover\";\r\nimport { MKSvgIcon } from \"../../../../../basic\";\r\nimport { debounce } from \"lodash-es\";\r\nimport { isWhereFilter } from \"@maketribe/dm\";\r\n\r\nexport default defineComponent({\r\n name: \"MKTableFilter\",\r\n setup() {\r\n const search = ref(\"\");\r\n\r\n const dataTableContext = inject(DATA_TABLE_CONTEXT_KEY);\r\n\r\n const dataTable = computed(() => dataTableContext!.dataTable);\r\n\r\n const dataTableInitd = computed(() => unref(dataTable)?.initd ?? false);\r\n\r\n const searchFilterColumns = computed(() =>\r\n unref(dataTable)\r\n .dataFilter.getColumns()\r\n .filter((column) => column.search)\r\n );\r\n\r\n const searchPlaceholder = computed(\r\n () =>\r\n `通过${unref(searchFilterColumns)\r\n .map((column) => column.label)\r\n .join(\"、\")}搜索`\r\n );\r\n\r\n watch(\r\n dataTable,\r\n (dataTable, _, onCleanup) => {\r\n onCleanup(() => {\r\n const dataFilter = dataTable.dataFilter;\r\n if (isWhereFilter(dataFilter)) {\r\n dataFilter.getSearchGroup().clear();\r\n }\r\n });\r\n },\r\n { immediate: true }\r\n );\r\n\r\n const handleSearch = () => {\r\n debounceSearch.cancel();\r\n\r\n const dataFilter = unref(dataTable).dataFilter;\r\n if (isWhereFilter(dataFilter)) {\r\n const searchGroup = dataFilter.getSearchGroup();\r\n searchGroup.clear();\r\n\r\n const searchValue = unref(search);\r\n\r\n for (const searchFilterColumn of unref(searchFilterColumns)) {\r\n searchGroup.addOrCondition(\r\n searchFilterColumn.name,\r\n \"like\",\r\n `%${searchValue}%`\r\n );\r\n }\r\n }\r\n\r\n unref(dataTable).load();\r\n };\r\n\r\n const debounceSearch = debounce(handleSearch, 1000);\r\n\r\n const handleSearchKeydown = (event: KeyboardEvent) => {\r\n if (event.key === \"Enter\") {\r\n handleSearch();\r\n }\r\n };\r\n\r\n const handleSearchFocus = (event: FocusEvent) => {\r\n const target = event.target as HTMLInputElement;\r\n\r\n target.addEventListener(\"input\", debounceSearch);\r\n };\r\n\r\n const handleSearchBlur = (event: any) => {\r\n const target = event.target as HTMLInputElement;\r\n\r\n target.removeEventListener(\"input\", debounceSearch);\r\n };\r\n\r\n return () => {\r\n if (!unref(dataTableInitd)) {\r\n return null;\r\n }\r\n\r\n const _dataTable = unref(dataTable);\r\n\r\n if (_dataTable.dataFilter.getColumns().length === 0) {\r\n return null;\r\n }\r\n\r\n let searchInputVNode = null;\r\n\r\n if (unref(searchFilterColumns).length) {\r\n searchInputVNode = (\r\n <ElInput\r\n prefixIcon={Search}\r\n class=\"mk-table-filter__search\"\r\n modelValue={unref(search)}\r\n onUpdate:modelValue={(v) => (search.value = v)}\r\n onKeydown={handleSearchKeydown as any}\r\n placeholder={unref(searchPlaceholder)}\r\n onFocus={handleSearchFocus}\r\n onBlur={handleSearchBlur}\r\n onClear={handleSearch}\r\n clearable\r\n />\r\n );\r\n }\r\n\r\n return (\r\n <div class=\"mk-table-filter\">\r\n {searchInputVNode}\r\n <MKDataFilterPopover dataTable={_dataTable}>\r\n <ElButton>\r\n <MKSvgIcon iconClass=\"Filter\" />\r\n </ElButton>\r\n </MKDataFilterPopover>\r\n </div>\r\n );\r\n };\r\n },\r\n});\r\n"],"names":["defineComponent","name","setup","search","ref","dataTableContext","inject","DATA_TABLE_CONTEXT_KEY","dataTable","computed","dataTableInitd","unref","initd","searchFilterColumns","dataFilter","getColumns","filter","column","searchPlaceholder","map","label","join","watch","_","onCleanup","isWhereFilter","getSearchGroup","clear","immediate","handleSearch","debounceSearch","cancel","searchGroup","searchValue","searchFilterColumn","addOrCondition","load","debounce","handleSearchKeydown","event","key","handleSearchFocus","target","addEventListener","handleSearchBlur","removeEventListener","_dataTable","length","searchInputVNode","_createVNode","ElInput","Search","v","value","MKDataFilterPopover","default","ElButton","MKSvgIcon"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
const vue = require("vue");
|
|
3
3
|
const elementPlus = require("element-plus");
|
|
4
|
-
const
|
|
4
|
+
const elIcons = require("@element-plus/icons-vue");
|
|
5
5
|
const index = require("../tree/index.js");
|
|
6
6
|
const treeViewOptions = require("./tree-view-options.js");
|
|
7
7
|
const locale = require("@maketribe/locale");
|
|
@@ -56,7 +56,7 @@ const TreeView = /* @__PURE__ */ vue.defineComponent({
|
|
|
56
56
|
"modelValue": vue.unref(searchInputValue),
|
|
57
57
|
"clearable": true,
|
|
58
58
|
"onUpdate:modelValue": (v) => searchInputValue.value = v,
|
|
59
|
-
"prefix-icon":
|
|
59
|
+
"prefix-icon": elIcons.Search
|
|
60
60
|
}, null)]), vue.createVNode("div", {
|
|
61
61
|
"class": "header-box-tools"
|
|
62
62
|
}, [vue.createVNode(elementPlus.ElButton, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tree-view.js","sources":["../../../../../../../src/components/data-model/data-table/views/tree-view/tree-view.tsx"],"sourcesContent":["import { computed, defineComponent, inject, ref, unref, watch } from \"vue\";\r\nimport { ElButton, ElCard, ElInput } from \"element-plus\";\r\nimport { Search } from \"@element-plus/icons-vue\";\r\nimport { MKTree } from \"../tree\";\r\nimport { treeViewProps } from \"./tree-view-options\";\r\nimport { I18n } from \"@maketribe/locale\";\r\nimport { DATA_TABLE_CONTEXT_KEY } from \"../../token\";\r\nimport { DataTree } from \"@maketribe/dm\";\r\n\r\nexport default defineComponent({\r\n name: \"MKTreeView\",\r\n props: treeViewProps,\r\n setup(props, { slots }) {\r\n const dataTableContext = inject(DATA_TABLE_CONTEXT_KEY);\r\n\r\n const dataTree = computed(\r\n () => props.dataTree ?? (dataTableContext!.dataTable as DataTree)\r\n );\r\n\r\n const treeRef = ref<InstanceType<typeof MKTree>>();\r\n\r\n const searchInputValue = ref(\"\");\r\n watch(searchInputValue, (value) => {\r\n unref(treeRef)?.filter(value);\r\n });\r\n\r\n const filterNodeMethod = (value: string, data: any) => {\r\n if (typeof props.filterNodeMethod === \"function\") {\r\n return props.filterNodeMethod(value, data);\r\n }\r\n\r\n if (!searchInputValue.value) return true;\r\n\r\n return data.data[unref(dataTree).props.label].includes(\r\n searchInputValue.value\r\n );\r\n };\r\n\r\n const handleAdd = () => {\r\n unref(dataTree).addRecord();\r\n };\r\n\r\n return () => {\r\n const content = slots.default?.({ dataTree: props.dataTree }) || (\r\n <MKTree\r\n ref={\r\n ((component: InstanceType<typeof MKTree>) =>\r\n (treeRef.value = component)) as any\r\n }\r\n dataTree={unref(dataTree)}\r\n filterNodeMethod={filterNodeMethod}\r\n />\r\n );\r\n\r\n return (\r\n <ElCard\r\n class=\"mk-data-tree-page\"\r\n v-slots={{\r\n header: () => {\r\n return (\r\n <div class=\"header-box\">\r\n <div class=\"header-box-main\">\r\n <ElInput\r\n modelValue={unref(searchInputValue)}\r\n clearable={true}\r\n onUpdate:modelValue={(v: string) =>\r\n (searchInputValue.value = v)\r\n }\r\n prefix-icon={Search}\r\n />\r\n </div>\r\n <div class=\"header-box-tools\">\r\n <ElButton onClick={handleAdd} type=\"primary\">\r\n {I18n.instance.translate(\"mk.dataTreePage.addButton\")}\r\n </ElButton>\r\n </div>\r\n </div>\r\n );\r\n },\r\n }}\r\n >\r\n {content}\r\n </ElCard>\r\n );\r\n };\r\n },\r\n});\r\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","defineComponent","name","props","treeViewProps","setup","slots","dataTableContext","inject","DATA_TABLE_CONTEXT_KEY","dataTree","computed","dataTable","treeRef","ref","searchInputValue","watch","value","unref","filter","filterNodeMethod","data","label","includes","handleAdd","addRecord","content","default","_createVNode","MKTree","component","ElCard","header","_slot","ElInput","v","Search","ElButton","I18n","instance","translate"],"mappings":";;;;;;;;AAMqD,SAAAA,QAAAC,GAAA;AAAA,SAAA,OAAAA,MAAA,cAAAC,OAAAC,UAAAC,SAAAC,KAAAJ,CAAA,MAAAK,qBAAAA,CAAAA,IAAA,QAAAL,CAAA;AAAA;AAGrD,MAAeM,+CAAgB;AAAA,EAC7BC,MAAM;AAAA,EACNC,OAAOC,gBAAa;AAAA,EACpBC,MAAMF,OAAO;AAAA,IAAEG;AAAAA,EAAM,GAAG;AACtB,UAAMC,mBAAmBC,WAAOC,MAAAA,sBAAsB;AAEtD,UAAMC,WAAWC,IAAAA,SACf,MAAMR,MAAMO,YAAaH,iBAAkBK,SAC7C;AAEA,UAAMC,UAAUC,IAAAA;AAEhB,UAAMC,mBAAmBD,QAAI,EAAE;AAC/BE,QAAK,MAACD,kBAAmBE,WAAU;;AACjCC,gBAAAA,MAAML,OAAO,MAAbK,mBAAgBC,OAAOF;AAAAA,IACzB,CAAC;AAED,UAAMG,mBAAmBA,CAACH,OAAeI,SAAc;AACrD,UAAI,OAAOlB,MAAMiB,qBAAqB,YAAY;AAChD,eAAOjB,MAAMiB,iBAAiBH,OAAOI,IAAI;AAAA,MAC3C;AAEA,UAAI,CAACN,iBAAiBE,MAAO,QAAO;AAEpC,aAAOI,KAAKA,KAAKH,IAAK,MAACR,QAAQ,EAAEP,MAAMmB,KAAK,EAAEC,SAC5CR,iBAAiBE,KACnB;AAAA;AAGF,UAAMO,YAAYA,MAAM;AACtBN,gBAAMR,QAAQ,EAAEe;;AAGlB,WAAO,MAAM;;AACX,YAAMC,YAAUpB,WAAMqB,YAANrB,+BAAgB;AAAA,QAAEI,UAAUP,MAAMO;AAAAA,MAAS,OAAEkB,IAAA,YAAAC,cAAA;AAAA,QAAA,OAGrDC,eACCjB,QAAQI,QAAQa;AAAAA,QAAU,YAErBZ,IAAK,MAACR,QAAQ;AAAA,QAAC,oBACPU;AAAAA,MAErB,GAAA,IAAA;AAED,aAAAQ,IAAAA,YAAAG,YAAAA,QAAA;AAAA,QAAA,SAAA;AAAA,MAAA,GAAA;AAAA,QAAAJ,SAAAA,MAAA,CA2BKD,OAAO;AAAA,QAvBNM,QAAQA,MAAM;AAAA,cAAAC;AACZ,iBAAAL,IAAAA,YAAA,OAAA;AAAA,YAAA,SAAA;AAAA,UAAA,GAAA,CAAAA,IAAA,YAAA,OAAA;AAAA,YAAA,SAAA;AAAA,aAAAA,CAAAA,IAAA,YAAAM,qBAAA;AAAA,YAAA,cAIoBhB,IAAK,MAACH,gBAAgB;AAAA,YAAC,aACxB;AAAA,YAAI,uBACOoB,OACnBpB,iBAAiBE,QAAQkB;AAAAA,YAAE,eAEjBC,
|
|
1
|
+
{"version":3,"file":"tree-view.js","sources":["../../../../../../../src/components/data-model/data-table/views/tree-view/tree-view.tsx"],"sourcesContent":["import { computed, defineComponent, inject, ref, unref, watch } from \"vue\";\r\nimport { ElButton, ElCard, ElInput } from \"element-plus\";\r\nimport { Search } from \"@element-plus/icons-vue\";\r\nimport { MKTree } from \"../tree\";\r\nimport { treeViewProps } from \"./tree-view-options\";\r\nimport { I18n } from \"@maketribe/locale\";\r\nimport { DATA_TABLE_CONTEXT_KEY } from \"../../token\";\r\nimport { DataTree } from \"@maketribe/dm\";\r\n\r\nexport default defineComponent({\r\n name: \"MKTreeView\",\r\n props: treeViewProps,\r\n setup(props, { slots }) {\r\n const dataTableContext = inject(DATA_TABLE_CONTEXT_KEY);\r\n\r\n const dataTree = computed(\r\n () => props.dataTree ?? (dataTableContext!.dataTable as DataTree)\r\n );\r\n\r\n const treeRef = ref<InstanceType<typeof MKTree>>();\r\n\r\n const searchInputValue = ref(\"\");\r\n watch(searchInputValue, (value) => {\r\n unref(treeRef)?.filter(value);\r\n });\r\n\r\n const filterNodeMethod = (value: string, data: any) => {\r\n if (typeof props.filterNodeMethod === \"function\") {\r\n return props.filterNodeMethod(value, data);\r\n }\r\n\r\n if (!searchInputValue.value) return true;\r\n\r\n return data.data[unref(dataTree).props.label].includes(\r\n searchInputValue.value\r\n );\r\n };\r\n\r\n const handleAdd = () => {\r\n unref(dataTree).addRecord();\r\n };\r\n\r\n return () => {\r\n const content = slots.default?.({ dataTree: props.dataTree }) || (\r\n <MKTree\r\n ref={\r\n ((component: InstanceType<typeof MKTree>) =>\r\n (treeRef.value = component)) as any\r\n }\r\n dataTree={unref(dataTree)}\r\n filterNodeMethod={filterNodeMethod}\r\n />\r\n );\r\n\r\n return (\r\n <ElCard\r\n class=\"mk-data-tree-page\"\r\n v-slots={{\r\n header: () => {\r\n return (\r\n <div class=\"header-box\">\r\n <div class=\"header-box-main\">\r\n <ElInput\r\n modelValue={unref(searchInputValue)}\r\n clearable={true}\r\n onUpdate:modelValue={(v: string) =>\r\n (searchInputValue.value = v)\r\n }\r\n prefix-icon={Search}\r\n />\r\n </div>\r\n <div class=\"header-box-tools\">\r\n <ElButton onClick={handleAdd} type=\"primary\">\r\n {I18n.instance.translate(\"mk.dataTreePage.addButton\")}\r\n </ElButton>\r\n </div>\r\n </div>\r\n );\r\n },\r\n }}\r\n >\r\n {content}\r\n </ElCard>\r\n );\r\n };\r\n },\r\n});\r\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","defineComponent","name","props","treeViewProps","setup","slots","dataTableContext","inject","DATA_TABLE_CONTEXT_KEY","dataTree","computed","dataTable","treeRef","ref","searchInputValue","watch","value","unref","filter","filterNodeMethod","data","label","includes","handleAdd","addRecord","content","default","_createVNode","MKTree","component","ElCard","header","_slot","ElInput","v","Search","ElButton","I18n","instance","translate"],"mappings":";;;;;;;;AAMqD,SAAAA,QAAAC,GAAA;AAAA,SAAA,OAAAA,MAAA,cAAAC,OAAAC,UAAAC,SAAAC,KAAAJ,CAAA,MAAAK,qBAAAA,CAAAA,IAAA,QAAAL,CAAA;AAAA;AAGrD,MAAeM,+CAAgB;AAAA,EAC7BC,MAAM;AAAA,EACNC,OAAOC,gBAAa;AAAA,EACpBC,MAAMF,OAAO;AAAA,IAAEG;AAAAA,EAAM,GAAG;AACtB,UAAMC,mBAAmBC,WAAOC,MAAAA,sBAAsB;AAEtD,UAAMC,WAAWC,IAAAA,SACf,MAAMR,MAAMO,YAAaH,iBAAkBK,SAC7C;AAEA,UAAMC,UAAUC,IAAAA;AAEhB,UAAMC,mBAAmBD,QAAI,EAAE;AAC/BE,QAAK,MAACD,kBAAmBE,WAAU;;AACjCC,gBAAAA,MAAML,OAAO,MAAbK,mBAAgBC,OAAOF;AAAAA,IACzB,CAAC;AAED,UAAMG,mBAAmBA,CAACH,OAAeI,SAAc;AACrD,UAAI,OAAOlB,MAAMiB,qBAAqB,YAAY;AAChD,eAAOjB,MAAMiB,iBAAiBH,OAAOI,IAAI;AAAA,MAC3C;AAEA,UAAI,CAACN,iBAAiBE,MAAO,QAAO;AAEpC,aAAOI,KAAKA,KAAKH,IAAK,MAACR,QAAQ,EAAEP,MAAMmB,KAAK,EAAEC,SAC5CR,iBAAiBE,KACnB;AAAA;AAGF,UAAMO,YAAYA,MAAM;AACtBN,gBAAMR,QAAQ,EAAEe;;AAGlB,WAAO,MAAM;;AACX,YAAMC,YAAUpB,WAAMqB,YAANrB,+BAAgB;AAAA,QAAEI,UAAUP,MAAMO;AAAAA,MAAS,OAAEkB,IAAA,YAAAC,cAAA;AAAA,QAAA,OAGrDC,eACCjB,QAAQI,QAAQa;AAAAA,QAAU,YAErBZ,IAAK,MAACR,QAAQ;AAAA,QAAC,oBACPU;AAAAA,MAErB,GAAA,IAAA;AAED,aAAAQ,IAAAA,YAAAG,YAAAA,QAAA;AAAA,QAAA,SAAA;AAAA,MAAA,GAAA;AAAA,QAAAJ,SAAAA,MAAA,CA2BKD,OAAO;AAAA,QAvBNM,QAAQA,MAAM;AAAA,cAAAC;AACZ,iBAAAL,IAAAA,YAAA,OAAA;AAAA,YAAA,SAAA;AAAA,UAAA,GAAA,CAAAA,IAAA,YAAA,OAAA;AAAA,YAAA,SAAA;AAAA,aAAAA,CAAAA,IAAA,YAAAM,qBAAA;AAAA,YAAA,cAIoBhB,IAAK,MAACH,gBAAgB;AAAA,YAAC,aACxB;AAAA,YAAI,uBACOoB,OACnBpB,iBAAiBE,QAAQkB;AAAAA,YAAE,eAEjBC,QAAAA;AAAAA,UAAM,GAAA,IAAA,CAAA,CAAA,GAAAR,IAAAA,YAAA,OAAA;AAAA,YAAA,SAAA;AAAA,aAAAA,CAAAA,IAAA,YAAAS,sBAAA;AAAA,YAAA,WAIFb;AAAAA,YAAS,QAAA;AAAA,UAAA,GAAA9B,QAAAuC,QACzBK,YAAKC,SAASC,UAAU,2BAA2B,CAAC,IAAAP,QAAA;AAAA,YAAAN,SAAAA,MAAA,CAAAM,KAAA;AAAA,UAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,QAK/D;AAAA,MAAC,CAAA;AAAA;EAOX;AACF,CAAC;;"}
|
|
@@ -109,8 +109,10 @@ class DialogerImpl extends dm.SkeletonDialoger {
|
|
|
109
109
|
}
|
|
110
110
|
async dataTableSelectDialog(dataTable) {
|
|
111
111
|
dataTable = vue.reactive(dataTable);
|
|
112
|
-
|
|
113
|
-
|
|
112
|
+
dataTable.afterInitdEvent.once(() => {
|
|
113
|
+
const columns = dataTable.getColumns().filter((column) => column.name !== dm.TableActionColumn.actionColumnName);
|
|
114
|
+
dataTable.setColumns(columns);
|
|
115
|
+
});
|
|
114
116
|
return new Promise((resolve) => {
|
|
115
117
|
const handleConfirm = () => {
|
|
116
118
|
resolve({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DialogerImpl.js","sources":["../../../src/message-impl/DialogerImpl.tsx"],"sourcesContent":["import {\r\n DataForm,\r\n DataFormDialogOptions,\r\n DataTable,\r\n DataTableSelectDialogResult,\r\n DialogInstance,\r\n IDialogMessage,\r\n IDialogRenderOptions,\r\n Messager,\r\n SkeletonDialoger,\r\n TableActionColumn,\r\n} from \"@maketribe/dm\";\r\nimport { Event } from \"@maketribe/utils\";\r\nimport { ElButton, ElDrawer, ElMessageBox, ElScrollbar } from \"element-plus\";\r\nimport { isFunction } from \"lodash-es\";\r\nimport { MKDataForm, MKDataTable, MKForm } from \"../components\";\r\nimport { Fragment, reactive } from \"vue\";\r\nimport { I18n } from \"@maketribe/locale\";\r\n\r\nlet uid = 0;\r\n\r\nexport class DialogerImpl extends SkeletonDialoger {\r\n dialogInstanceCreateEvent: Event<DialogInstance> = new Event();\r\n\r\n async prompt(options: IDialogMessage): Promise<string> {\r\n const promptResult = await ElMessageBox.prompt(\r\n options.message,\r\n options.title,\r\n options\r\n );\r\n\r\n return promptResult.value;\r\n }\r\n\r\n async confirm(options: IDialogMessage): Promise<boolean> {\r\n try {\r\n await ElMessageBox.confirm(options.message, options.title, options);\r\n return true;\r\n } catch (e) {\r\n return false;\r\n }\r\n }\r\n\r\n async alert(options: IDialogMessage): Promise<void> {\r\n await ElMessageBox.alert(options.message, options.title, options);\r\n }\r\n\r\n customRender(options: IDialogRenderOptions): DialogInstance {\r\n let visible = true;\r\n\r\n const dialogInstance: DialogInstance = {\r\n class: \"\",\r\n ...options,\r\n id: uid++,\r\n get visible() {\r\n return visible;\r\n },\r\n set visible(v) {\r\n visible = v;\r\n dialogInstance.visibleChangeEvent.emit(visible);\r\n },\r\n visibleChangeEvent: new Event(),\r\n destroyEvent: new Event(),\r\n destroy: () => {\r\n dialogInstance.visible = false;\r\n dialogInstance.destroyEvent.emit();\r\n },\r\n };\r\n this.dialogInstanceCreateEvent.emit(dialogInstance);\r\n\r\n return dialogInstance;\r\n }\r\n\r\n async custom(options: IDialogRenderOptions): Promise<boolean> {\r\n return new Promise<boolean>((resolve) => {\r\n const dialogInstance = this.customRender({\r\n ...options,\r\n onConfirm: async () => {\r\n if (\r\n isFunction(options.onConfirm)\r\n ? (await options.onConfirm()) === false\r\n : false\r\n ) {\r\n return false;\r\n }\r\n\r\n dialogInstance.destroy();\r\n\r\n resolve(true);\r\n },\r\n onCancel: async () => {\r\n if (\r\n isFunction(options.onCancel)\r\n ? (await options.onCancel()) === false\r\n : false\r\n ) {\r\n return false;\r\n }\r\n\r\n dialogInstance.destroy();\r\n\r\n resolve(false);\r\n },\r\n });\r\n });\r\n }\r\n\r\n async dataTableSelectDialog(\r\n dataTable: DataTable\r\n ): Promise<DataTableSelectDialogResult> {\r\n dataTable = reactive(dataTable) as DataTable;\r\n\r\n // 过滤掉操作列\r\n const columns = dataTable\r\n .getColumns()\r\n .filter((column) => column.name !== TableActionColumn.actionColumnName);\r\n dataTable.setColumns(columns);\r\n\r\n return new Promise((resolve) => {\r\n const handleConfirm = () => {\r\n resolve({ isConfirm: true, selections: dataTable.getSelection() });\r\n\r\n dataTable.setList([]);\r\n dataTable.setSelection([]);\r\n\r\n dialogInstance.destroy();\r\n };\r\n\r\n const handleCancel = () => {\r\n resolve({ isConfirm: false, selections: [] });\r\n\r\n dialogInstance.destroy();\r\n };\r\n\r\n const dialogInstance = this.customRender({\r\n class: \"mk-data-table-select-dialog\",\r\n width: \"80%\",\r\n body: () => {\r\n return (\r\n <div class=\"mk-data-table-select-dialog__main\">\r\n <MKDataTable dataTable={dataTable} selection />\r\n </div>\r\n );\r\n },\r\n footer: () => {\r\n return (\r\n <Fragment>\r\n <ElButton\r\n type=\"primary\"\r\n onClick={handleConfirm}\r\n disabled={dataTable.getSelection().length === 0}\r\n >\r\n 确定\r\n </ElButton>\r\n <ElButton onClick={handleCancel}>取消</ElButton>\r\n </Fragment>\r\n );\r\n },\r\n });\r\n });\r\n }\r\n\r\n async dataFormDialog(\r\n dataFormOptions: DataFormDialogOptions\r\n ): Promise<DialogInstance> {\r\n return new Promise((resolve) => {\r\n const dataForm = reactive(dataFormOptions.dataForm) as DataForm;\r\n\r\n let title = \"\";\r\n\r\n if (dataFormOptions.customDataFormStatus !== true) {\r\n if (dataFormOptions.recId) {\r\n dataForm.editRecord(dataFormOptions.recId);\r\n } else {\r\n dataForm.addRecord();\r\n }\r\n\r\n title = dataFormOptions.recId ? \"编辑\" : \"新增\";\r\n }\r\n\r\n const dialogInstance = this.customRender({\r\n title: dataFormOptions.title ?? title,\r\n onClose: () => {\r\n dataForm.cancel();\r\n\r\n dialogInstance.destroy();\r\n },\r\n body: () => {\r\n return (\r\n <ElScrollbar max-height=\"600px\">\r\n <MKDataForm dataForm={dataForm}>\r\n <MKForm dataForm={dataForm} />\r\n </MKDataForm>\r\n </ElScrollbar>\r\n );\r\n },\r\n\r\n footer: () => {\r\n return (\r\n <Fragment>\r\n <ElButton\r\n type=\"primary\"\r\n disabled={!dataForm.isChanged}\r\n loading={!dataForm.allowSubmit}\r\n onClick={async () => {\r\n if (!(await dataForm.validate())) {\r\n return;\r\n }\r\n\r\n if (await dataForm.simpleSubmit()) {\r\n dialogInstance.destroy();\r\n }\r\n }}\r\n >\r\n {I18n.instance.translate(\"mk.dataForm.saveButton\")}\r\n </ElButton>\r\n <ElButton\r\n onClick={() => {\r\n dataForm.cancel();\r\n\r\n dialogInstance.destroy();\r\n }}\r\n >\r\n {I18n.instance.translate(\"mk.dataForm.cancelButton\")}\r\n </ElButton>\r\n </Fragment>\r\n );\r\n },\r\n });\r\n\r\n resolve(dialogInstance);\r\n });\r\n }\r\n}\r\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","uid","DialogerImpl","SkeletonDialoger","dialogInstanceCreateEvent","Event","prompt","options","promptResult","ElMessageBox","message","title","value","confirm","e","alert","customRender","visible","dialogInstance","class","id","v","visibleChangeEvent","emit","destroyEvent","destroy","custom","Promise","resolve","onConfirm","isFunction","onCancel","dataTableSelectDialog","dataTable","reactive","columns","getColumns","filter","column","name","TableActionColumn","actionColumnName","setColumns","handleConfirm","isConfirm","selections","getSelection","setList","setSelection","handleCancel","width","body","_createVNode","MKDataTable","footer","_Fragment","ElButton","length","default","_createTextVNode","dataFormDialog","dataFormOptions","dataForm","customDataFormStatus","recId","editRecord","addRecord","onClose","cancel","ElScrollbar","MKDataForm","MKForm","_slot","_slot2","isChanged","allowSubmit","validate","simpleSubmit","I18n","instance","translate","onClick"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DialogerImpl.js","sources":["../../../src/message-impl/DialogerImpl.tsx"],"sourcesContent":["import {\r\n DataForm,\r\n DataFormDialogOptions,\r\n DataTable,\r\n DataTableSelectDialogResult,\r\n DialogInstance,\r\n IDialogMessage,\r\n IDialogRenderOptions,\r\n Messager,\r\n SkeletonDialoger,\r\n TableActionColumn,\r\n} from \"@maketribe/dm\";\r\nimport { Event } from \"@maketribe/utils\";\r\nimport { ElButton, ElDrawer, ElMessageBox, ElScrollbar } from \"element-plus\";\r\nimport { isFunction } from \"lodash-es\";\r\nimport { MKDataForm, MKDataTable, MKForm } from \"../components\";\r\nimport { Fragment, reactive } from \"vue\";\r\nimport { I18n } from \"@maketribe/locale\";\r\n\r\nlet uid = 0;\r\n\r\nexport class DialogerImpl extends SkeletonDialoger {\r\n dialogInstanceCreateEvent: Event<DialogInstance> = new Event();\r\n\r\n async prompt(options: IDialogMessage): Promise<string> {\r\n const promptResult = await ElMessageBox.prompt(\r\n options.message,\r\n options.title,\r\n options\r\n );\r\n\r\n return promptResult.value;\r\n }\r\n\r\n async confirm(options: IDialogMessage): Promise<boolean> {\r\n try {\r\n await ElMessageBox.confirm(options.message, options.title, options);\r\n return true;\r\n } catch (e) {\r\n return false;\r\n }\r\n }\r\n\r\n async alert(options: IDialogMessage): Promise<void> {\r\n await ElMessageBox.alert(options.message, options.title, options);\r\n }\r\n\r\n customRender(options: IDialogRenderOptions): DialogInstance {\r\n let visible = true;\r\n\r\n const dialogInstance: DialogInstance = {\r\n class: \"\",\r\n ...options,\r\n id: uid++,\r\n get visible() {\r\n return visible;\r\n },\r\n set visible(v) {\r\n visible = v;\r\n dialogInstance.visibleChangeEvent.emit(visible);\r\n },\r\n visibleChangeEvent: new Event(),\r\n destroyEvent: new Event(),\r\n destroy: () => {\r\n dialogInstance.visible = false;\r\n dialogInstance.destroyEvent.emit();\r\n },\r\n };\r\n this.dialogInstanceCreateEvent.emit(dialogInstance);\r\n\r\n return dialogInstance;\r\n }\r\n\r\n async custom(options: IDialogRenderOptions): Promise<boolean> {\r\n return new Promise<boolean>((resolve) => {\r\n const dialogInstance = this.customRender({\r\n ...options,\r\n onConfirm: async () => {\r\n if (\r\n isFunction(options.onConfirm)\r\n ? (await options.onConfirm()) === false\r\n : false\r\n ) {\r\n return false;\r\n }\r\n\r\n dialogInstance.destroy();\r\n\r\n resolve(true);\r\n },\r\n onCancel: async () => {\r\n if (\r\n isFunction(options.onCancel)\r\n ? (await options.onCancel()) === false\r\n : false\r\n ) {\r\n return false;\r\n }\r\n\r\n dialogInstance.destroy();\r\n\r\n resolve(false);\r\n },\r\n });\r\n });\r\n }\r\n\r\n async dataTableSelectDialog(\r\n dataTable: DataTable\r\n ): Promise<DataTableSelectDialogResult> {\r\n dataTable = reactive(dataTable) as DataTable;\r\n\r\n dataTable.afterInitdEvent.once(() => {\r\n // 过滤掉操作列\r\n const columns = dataTable\r\n .getColumns()\r\n .filter((column) => column.name !== TableActionColumn.actionColumnName);\r\n dataTable.setColumns(columns);\r\n });\r\n\r\n return new Promise((resolve) => {\r\n const handleConfirm = () => {\r\n resolve({ isConfirm: true, selections: dataTable.getSelection() });\r\n\r\n dataTable.setList([]);\r\n dataTable.setSelection([]);\r\n\r\n dialogInstance.destroy();\r\n };\r\n\r\n const handleCancel = () => {\r\n resolve({ isConfirm: false, selections: [] });\r\n\r\n dialogInstance.destroy();\r\n };\r\n\r\n const dialogInstance = this.customRender({\r\n class: \"mk-data-table-select-dialog\",\r\n width: \"80%\",\r\n body: () => {\r\n return (\r\n <div class=\"mk-data-table-select-dialog__main\">\r\n <MKDataTable dataTable={dataTable} selection />\r\n </div>\r\n );\r\n },\r\n footer: () => {\r\n return (\r\n <Fragment>\r\n <ElButton\r\n type=\"primary\"\r\n onClick={handleConfirm}\r\n disabled={dataTable.getSelection().length === 0}\r\n >\r\n 确定\r\n </ElButton>\r\n <ElButton onClick={handleCancel}>取消</ElButton>\r\n </Fragment>\r\n );\r\n },\r\n });\r\n });\r\n }\r\n\r\n async dataFormDialog(\r\n dataFormOptions: DataFormDialogOptions\r\n ): Promise<DialogInstance> {\r\n return new Promise((resolve) => {\r\n const dataForm = reactive(dataFormOptions.dataForm) as DataForm;\r\n\r\n let title = \"\";\r\n\r\n if (dataFormOptions.customDataFormStatus !== true) {\r\n if (dataFormOptions.recId) {\r\n dataForm.editRecord(dataFormOptions.recId);\r\n } else {\r\n dataForm.addRecord();\r\n }\r\n\r\n title = dataFormOptions.recId ? \"编辑\" : \"新增\";\r\n }\r\n\r\n const dialogInstance = this.customRender({\r\n title: dataFormOptions.title ?? title,\r\n onClose: () => {\r\n dataForm.cancel();\r\n\r\n dialogInstance.destroy();\r\n },\r\n body: () => {\r\n return (\r\n <ElScrollbar max-height=\"600px\">\r\n <MKDataForm dataForm={dataForm}>\r\n <MKForm dataForm={dataForm} />\r\n </MKDataForm>\r\n </ElScrollbar>\r\n );\r\n },\r\n\r\n footer: () => {\r\n return (\r\n <Fragment>\r\n <ElButton\r\n type=\"primary\"\r\n disabled={!dataForm.isChanged}\r\n loading={!dataForm.allowSubmit}\r\n onClick={async () => {\r\n if (!(await dataForm.validate())) {\r\n return;\r\n }\r\n\r\n if (await dataForm.simpleSubmit()) {\r\n dialogInstance.destroy();\r\n }\r\n }}\r\n >\r\n {I18n.instance.translate(\"mk.dataForm.saveButton\")}\r\n </ElButton>\r\n <ElButton\r\n onClick={() => {\r\n dataForm.cancel();\r\n\r\n dialogInstance.destroy();\r\n }}\r\n >\r\n {I18n.instance.translate(\"mk.dataForm.cancelButton\")}\r\n </ElButton>\r\n </Fragment>\r\n );\r\n },\r\n });\r\n\r\n resolve(dialogInstance);\r\n });\r\n }\r\n}\r\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","uid","DialogerImpl","SkeletonDialoger","dialogInstanceCreateEvent","Event","prompt","options","promptResult","ElMessageBox","message","title","value","confirm","e","alert","customRender","visible","dialogInstance","class","id","v","visibleChangeEvent","emit","destroyEvent","destroy","custom","Promise","resolve","onConfirm","isFunction","onCancel","dataTableSelectDialog","dataTable","reactive","afterInitdEvent","once","columns","getColumns","filter","column","name","TableActionColumn","actionColumnName","setColumns","handleConfirm","isConfirm","selections","getSelection","setList","setSelection","handleCancel","width","body","_createVNode","MKDataTable","footer","_Fragment","ElButton","length","default","_createTextVNode","dataFormDialog","dataFormOptions","dataForm","customDataFormStatus","recId","editRecord","addRecord","onClose","cancel","ElScrollbar","MKDataForm","MKForm","_slot","_slot2","isChanged","allowSubmit","validate","simpleSubmit","I18n","instance","translate","onClick"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiByC,SAAAA,QAAAC,GAAA;AAAA,SAAA,OAAAA,MAAA,cAAAC,OAAAC,UAAAC,SAAAC,KAAAJ,CAAA,MAAAK,qBAAAA,CAAAA,IAAA,QAAAL,CAAA;AAAA;AAEzC,IAAIM,MAAM;AAEH,MAAMC,qBAAqBC,GAAAA,iBAAiB;AAAA,EAA5C;AAAA;AACLC,qDAAmD,IAAIC,MAAAA;;EAEvD,MAAMC,OAAOC,SAA0C;AACrD,UAAMC,eAAe,MAAMC,YAAY,aAACH,OACtCC,QAAQG,SACRH,QAAQI,OACRJ,OACF;AAEA,WAAOC,aAAaI;AAAAA,EACtB;AAAA,EAEA,MAAMC,QAAQN,SAA2C;AACvD,QAAI;AACF,YAAME,YAAAA,aAAaI,QAAQN,QAAQG,SAASH,QAAQI,OAAOJ,OAAO;AAClE,aAAO;AAAA,IACR,SAAQO,GAAG;AACV,aAAO;AAAA,IACT;AAAA,EACF;AAAA,EAEA,MAAMC,MAAMR,SAAwC;AAClD,UAAME,YAAAA,aAAaM,MAAMR,QAAQG,SAASH,QAAQI,OAAOJ,OAAO;AAAA,EAClE;AAAA,EAEAS,aAAaT,SAA+C;AAC1D,QAAIU,UAAU;AAEd,UAAMC,iBAAiC;AAAA,MACrCC,OAAO;AAAA,MACP,GAAGZ;AAAAA,MACHa,IAAInB;AAAAA,MACJ,IAAIgB,UAAU;AACZ,eAAOA;AAAAA,MACR;AAAA,MACD,IAAIA,QAAQI,GAAG;AACbJ,kBAAUI;AACVH,uBAAeI,mBAAmBC,KAAKN,OAAO;AAAA,MAC/C;AAAA,MACDK,oBAAoB,IAAIjB,MAAAA,MAAO;AAAA,MAC/BmB,cAAc,IAAInB,MAAAA,MAAO;AAAA,MACzBoB,SAASA,MAAM;AACbP,uBAAeD,UAAU;AACzBC,uBAAeM,aAAaD;MAC9B;AAAA;AAEF,SAAKnB,0BAA0BmB,KAAKL,cAAc;AAElD,WAAOA;AAAAA,EACT;AAAA,EAEA,MAAMQ,OAAOnB,SAAiD;AAC5D,WAAO,IAAIoB,QAAkBC,aAAY;AACvC,YAAMV,iBAAiB,KAAKF,aAAa;AAAA,QACvC,GAAGT;AAAAA,QACHsB,WAAW,YAAY;AACrB,cACEC,SAAU,WAACvB,QAAQsB,SAAS,IACvB,MAAMtB,QAAQsB,UAAS,MAAQ,QAChC,OACJ;AACA,mBAAO;AAAA,UACT;AAEAX,yBAAeO,QAAO;AAEtBG,kBAAQ,IAAI;AAAA,QACb;AAAA,QACDG,UAAU,YAAY;AACpB,cACED,SAAU,WAACvB,QAAQwB,QAAQ,IACtB,MAAMxB,QAAQwB,SAAQ,MAAQ,QAC/B,OACJ;AACA,mBAAO;AAAA,UACT;AAEAb,yBAAeO,QAAO;AAEtBG,kBAAQ,KAAK;AAAA,QACf;AAAA,MACF,CAAC;AAAA,IACH,CAAC;AAAA,EACH;AAAA,EAEA,MAAMI,sBACJC,WACsC;AACtCA,gBAAYC,IAAAA,SAASD,SAAS;AAE9BA,cAAUE,gBAAgBC,KAAK,MAAM;AAEnC,YAAMC,UAAUJ,UACbK,WAAU,EACVC,OAAQC,YAAWA,OAAOC,SAASC,qBAAkBC,gBAAgB;AACxEV,gBAAUW,WAAWP,OAAO;AAAA,IAC9B,CAAC;AAED,WAAO,IAAIV,QAASC,aAAY;AAC9B,YAAMiB,gBAAgBA,MAAM;AAC1BjB,gBAAQ;AAAA,UAAEkB,WAAW;AAAA,UAAMC,YAAYd,UAAUe,aAAa;AAAA,QAAE,CAAC;AAEjEf,kBAAUgB,QAAQ,CAAA,CAAE;AACpBhB,kBAAUiB,aAAa,CAAA,CAAE;AAEzBhC,uBAAeO,QAAO;AAAA;AAGxB,YAAM0B,eAAeA,MAAM;AACzBvB,gBAAQ;AAAA,UAAEkB,WAAW;AAAA,UAAOC,YAAY,CAAA;AAAA,QAAG,CAAC;AAE5C7B,uBAAeO,QAAO;AAAA;AAGxB,YAAMP,iBAAiB,KAAKF,aAAa;AAAA,QACvCG,OAAO;AAAA,QACPiC,OAAO;AAAA,QACPC,MAAMA,MAAM;AACV,iBAAAC,IAAAA,YAAA,OAAA;AAAA,YAAA,SAAA;AAAA,aAAAA,CAAAA,IAAA,YAAAC,mBAAA;AAAA,YAAA,aAE4BtB;AAAAA,YAAS,aAAA;AAAA,UAAA,GAAA,IAAA,CAAA,CAAA;AAAA,QAGtC;AAAA,QACDuB,QAAQA,MAAM;AACZ,iBAAAF,IAAA,YAAAG,IAAA,UAAAH,MAAAA,CAAAA,IAAAA,YAAAI,YAAAA,UAAA;AAAA,YAAA,QAAA;AAAA,YAAA,WAIeb;AAAAA,YAAa,YACZZ,UAAUe,aAAc,EAACW,WAAW;AAAA,UAAC,GAAA;AAAA,YAAAC,SAAAA,MAAA,CAAAC,oBAAA,IAAA,CAAA;AAAA,WAAAP,GAAAA,IAAA,YAAAI,sBAAA;AAAA,YAAA,WAI9BP;AAAAA,UAAY,GAAA;AAAA,YAAAS,SAAAA,MAAA,CAAAC,oBAAA,IAAA,CAAA;AAAA,UAAA,CAAA,CAAA,CAAA;AAAA,QAGrC;AAAA,MACF,CAAC;AAAA,IACH,CAAC;AAAA,EACH;AAAA,EAEA,MAAMC,eACJC,iBACyB;AACzB,WAAO,IAAIpC,QAASC,aAAY;AAC9B,YAAMoC,WAAW9B,IAAAA,SAAS6B,gBAAgBC,QAAQ;AAElD,UAAIrD,QAAQ;AAEZ,UAAIoD,gBAAgBE,yBAAyB,MAAM;AACjD,YAAIF,gBAAgBG,OAAO;AACzBF,mBAASG,WAAWJ,gBAAgBG,KAAK;AAAA,QAC3C,OAAO;AACLF,mBAASI,UAAS;AAAA,QACpB;AAEAzD,gBAAQoD,gBAAgBG,QAAQ,OAAO;AAAA,MACzC;AAEA,YAAMhD,iBAAiB,KAAKF,aAAa;AAAA,QACvCL,OAAOoD,gBAAgBpD,SAASA;AAAAA,QAChC0D,SAASA,MAAM;AACbL,mBAASM,OAAM;AAEfpD,yBAAeO,QAAO;AAAA,QACvB;AAAA,QACD4B,MAAMA,MAAM;AACV,iBAAAC,IAAAA,YAAAiB,YAAAA,aAAA;AAAA,YAAA,cAAA;AAAA,UAAA,GAAA;AAAA,YAAAX,SAAAA,MAAAN,CAAAA,IAAA,YAAAkB,oBAAA;AAAA,cAAA,YAE0BR;AAAAA,YAAQ,GAAA;AAAA,cAAAJ,SAAAA,MAAAN,CAAAA,IAAA,YAAAmB,gBAAA;AAAA,gBAAA,YACVT;AAAAA,cAAQ,GAAA,IAAA,CAAA;AAAA,YAAA,CAAA,CAAA;AAAA,UAAA,CAAA;AAAA,QAIjC;AAAA,QAEDR,QAAQA,MAAM;AAAA,cAAAkB,OAAAC;AACZ,iBAAArB,IAAA,YAAAG,IAAA,UAAAH,MAAAA,CAAAA,IAAAA,YAAAI,YAAAA,UAAA;AAAA,YAAA,QAAA;AAAA,YAAA,YAIgB,CAACM,SAASY;AAAAA,YAAS,WACpB,CAACZ,SAASa;AAAAA,YAAW,WACrB,YAAY;AACnB,kBAAI,CAAE,MAAMb,SAASc,SAAQ,GAAK;AAChC;AAAA,cACF;AAEA,kBAAI,MAAMd,SAASe,gBAAgB;AACjC7D,+BAAeO,QAAO;AAAA,cACxB;AAAA,YACF;AAAA,UAAC,GAAA/B,QAAAgF,QAEAM,YAAKC,SAASC,UAAU,wBAAwB,CAAC,IAAAR,QAAA;AAAA,YAAAd,SAAAA,MAAA,CAAAc,KAAA;AAAA,WAAApB,GAAAA,IAAA,YAAAI,sBAAA;AAAA,YAAA,WAGzCyB,MAAM;AACbnB,uBAASM,OAAM;AAEfpD,6BAAeO,QAAO;AAAA,YACxB;AAAA,UAAC,GAAA/B,QAAAiF,SAEAK,YAAKC,SAASC,UAAU,0BAA0B,CAAC,IAAAP,SAAA;AAAA,YAAAf,SAAAA,MAAA,CAAAe,MAAA;AAAA,UAAA,CAAA,CAAA,CAAA;AAAA,QAI5D;AAAA,MACF,CAAC;AAED/C,cAAQV,cAAc;AAAA,IACxB,CAAC;AAAA,EACH;AACF;;"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
const vue = require("vue");
|
|
3
3
|
const elementPlus = require("element-plus");
|
|
4
|
-
const
|
|
4
|
+
const elIcons = require("@element-plus/icons-vue");
|
|
5
5
|
const index = require("../../../../components/data-model/data-table/index.js");
|
|
6
6
|
require("@maketribe/dm");
|
|
7
7
|
require("@maketribe/utils");
|
|
@@ -153,7 +153,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
153
153
|
vue.createVNode(_component_el_dropdown_menu, null, {
|
|
154
154
|
default: vue.withCtx(() => [
|
|
155
155
|
vue.createVNode(_component_el_dropdown_item, {
|
|
156
|
-
icon: vue.unref(
|
|
156
|
+
icon: vue.unref(elIcons.Edit),
|
|
157
157
|
onClick: ($event) => handleEditClick(data.data)
|
|
158
158
|
}, {
|
|
159
159
|
default: vue.withCtx(() => [
|
|
@@ -162,7 +162,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
162
162
|
_: 2
|
|
163
163
|
}, 1032, ["icon", "onClick"]),
|
|
164
164
|
vue.createVNode(_component_el_dropdown_item, {
|
|
165
|
-
icon: vue.unref(
|
|
165
|
+
icon: vue.unref(elIcons.Delete),
|
|
166
166
|
onClick: ($event) => handleDeleteClick(data.data)
|
|
167
167
|
}, {
|
|
168
168
|
default: vue.withCtx(() => [
|
|
@@ -172,7 +172,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
172
172
|
}, 1032, ["icon", "onClick"]),
|
|
173
173
|
data.data.cmsPartTypeId != 1 ? (vue.openBlock(), vue.createBlock(_component_el_dropdown_item, {
|
|
174
174
|
key: 0,
|
|
175
|
-
icon: vue.unref(
|
|
175
|
+
icon: vue.unref(elIcons.Plus),
|
|
176
176
|
onClick: ($event) => handleAddClick(data.data)
|
|
177
177
|
}, {
|
|
178
178
|
default: vue.withCtx(() => [
|
|
@@ -187,7 +187,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
187
187
|
default: vue.withCtx(() => [
|
|
188
188
|
vue.createVNode(_component_ElIcon, null, {
|
|
189
189
|
default: vue.withCtx(() => [
|
|
190
|
-
vue.createVNode(vue.unref(
|
|
190
|
+
vue.createVNode(vue.unref(elIcons.MoreFilled))
|
|
191
191
|
]),
|
|
192
192
|
_: 1
|
|
193
193
|
})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"part-extensions.js","sources":["../../../../../src/modules/cms/composables/part-extensions.ts"],"sourcesContent":["\r\nimport { type Component } from \"vue\"\r\n\r\n\r\nexport type PartExtension = {\r\n saveHandle
|
|
1
|
+
{"version":3,"file":"part-extensions.js","sources":["../../../../../src/modules/cms/composables/part-extensions.ts"],"sourcesContent":["\r\nimport { type Component } from \"vue\"\r\n\r\n\r\nexport type PartExtension = {\r\n saveHandle?:Function,\r\n component:Component,\r\n save:Function\r\n}\r\n\r\nconst PartExtensionList:any = {};\r\n\r\n/**\r\n * 使用扩展\r\n * @param partId \r\n * @returns \r\n */\r\nexport const usePartExtension = (partId:string|number):any=>{\r\n return PartExtensionList[partId+\"\"];\r\n}\r\n\r\n/**\r\n * 注册扩展\r\n * @param partId \r\n * @returns \r\n */\r\nexport const registerPartExtension = (partId:string|number,ext:PartExtension)=>{\r\n PartExtensionList[partId+\"\"] = ext;\r\n}\r\n"],"names":[],"mappings":";;AAUA,MAAM,oBAAwB,CAAA;AAOjB,MAAA,mBAAmB,CAAC,WAA2B;AACnD,SAAA,kBAAkB,SAAO,EAAE;AACpC;AAOa,MAAA,wBAAwB,CAAC,QAAqB,QAAoB;AAC3D,oBAAA,SAAO,EAAE,IAAI;AACjC;;;"}
|
|
@@ -50,7 +50,7 @@ require("../../../ms/components/rich-text-editor/index.js");
|
|
|
50
50
|
require("../../../ms/material-upload-context/material-upload-context-options.js");
|
|
51
51
|
require("../../../ms/material-upload-context/material-upload-context.js");
|
|
52
52
|
require("@codemirror/lang-html");
|
|
53
|
-
const
|
|
53
|
+
const elIcons = require("@element-plus/icons-vue");
|
|
54
54
|
const _hoisted_1 = { class: "mk-cms-ad__warp" };
|
|
55
55
|
const _hoisted_2 = { style: { "color": "var(--el-text-color-regular)", "margin-left": "10px" } };
|
|
56
56
|
const _hoisted_3 = { class: "flex items-center" };
|
|
@@ -347,7 +347,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
347
347
|
default: vue.withCtx(() => [
|
|
348
348
|
vue.createVNode(_component_el_dropdown_item, {
|
|
349
349
|
class: "edit-button",
|
|
350
|
-
icon: vue.unref(
|
|
350
|
+
icon: vue.unref(elIcons.EditPen),
|
|
351
351
|
onClick: ($event) => showAdContentHandler(adContent, true)
|
|
352
352
|
}, {
|
|
353
353
|
default: vue.withCtx(() => [
|
|
@@ -357,7 +357,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
357
357
|
}, 1032, ["icon", "onClick"]),
|
|
358
358
|
vue.createVNode(_component_el_dropdown_item, {
|
|
359
359
|
class: "delete-button",
|
|
360
|
-
icon: vue.unref(
|
|
360
|
+
icon: vue.unref(elIcons.Delete),
|
|
361
361
|
onClick: ($event) => deleteHandler(vue.unref(adContentRequest), "title", adContent)
|
|
362
362
|
}, {
|
|
363
363
|
default: vue.withCtx(() => [
|
|
@@ -374,7 +374,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
374
374
|
vue.createTextVNode(" 更多"),
|
|
375
375
|
vue.createVNode(_component_el_icon, { class: "el-icon--right" }, {
|
|
376
376
|
default: vue.withCtx(() => [
|
|
377
|
-
vue.createVNode(vue.unref(
|
|
377
|
+
vue.createVNode(vue.unref(elIcons.ArrowDown))
|
|
378
378
|
]),
|
|
379
379
|
_: 1
|
|
380
380
|
})
|