@maketribe/ms-app 3.0.25 → 3.0.27
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/column-components/column-link/column-link-options.d.ts +1 -1
- package/dist/cjs/components/column-components/column-link/column-link.d.ts +3 -3
- package/dist/cjs/components/column-components/column-link/index.d.ts +3 -3
- package/dist/cjs/components/column-components/column-tag/column-tag.d.ts +1 -1
- package/dist/cjs/components/column-components/column-tag/index.d.ts +1 -1
- package/dist/cjs/components/data-model/data-table/views/table-view/table-view.js +10 -2
- package/dist/cjs/components/data-model/data-table/views/table-view/table-view.js.map +1 -1
- package/dist/cjs/dataview/config/ConfigForm.js +5 -0
- package/dist/cjs/dataview/config/ConfigForm.js.map +1 -1
- package/dist/cjs/dataview/config/ConfigTable.js +1 -1
- package/dist/cjs/dataview/config/ConfigTable.js.map +1 -1
- package/dist/cjs/dataview/member/MemberForm.js +13 -1
- package/dist/cjs/dataview/member/MemberForm.js.map +1 -1
- package/dist/cjs/page/index/dv/default/single/list/dialog.vue2.js +1 -0
- package/dist/cjs/page/index/dv/default/single/list/dialog.vue2.js.map +1 -1
- package/dist/cjs/page/index/dv/default/single/list/normal.vue2.js +1 -0
- package/dist/cjs/page/index/dv/default/single/list/normal.vue2.js.map +1 -1
- package/dist/esm/components/column-components/column-link/column-link-options.d.ts +1 -1
- package/dist/esm/components/column-components/column-link/column-link.d.ts +3 -3
- package/dist/esm/components/column-components/column-link/index.d.ts +3 -3
- package/dist/esm/components/column-components/column-tag/column-tag.d.ts +1 -1
- package/dist/esm/components/column-components/column-tag/index.d.ts +1 -1
- package/dist/esm/components/data-model/data-table/views/table-view/table-view.js +11 -3
- package/dist/esm/components/data-model/data-table/views/table-view/table-view.js.map +1 -1
- package/dist/esm/dataview/config/ConfigForm.js +5 -0
- package/dist/esm/dataview/config/ConfigForm.js.map +1 -1
- package/dist/esm/dataview/config/ConfigTable.js +1 -1
- package/dist/esm/dataview/config/ConfigTable.js.map +1 -1
- package/dist/esm/dataview/member/MemberForm.js +13 -1
- package/dist/esm/dataview/member/MemberForm.js.map +1 -1
- package/dist/esm/page/index/dv/default/single/list/dialog.vue2.js +1 -0
- package/dist/esm/page/index/dv/default/single/list/dialog.vue2.js.map +1 -1
- package/dist/esm/page/index/dv/default/single/list/normal.vue2.js +1 -0
- package/dist/esm/page/index/dv/default/single/list/normal.vue2.js.map +1 -1
- package/package.json +2 -2
- package/src/components/data-model/data-table/views/table-view/table-view.tsx +20 -6
- package/src/dataview/config/ConfigForm.ts +5 -0
- package/src/dataview/config/ConfigTable.ts +1 -1
- package/src/dataview/member/MemberForm.ts +3 -1
- package/src/page/index/dv/default/single/list/dialog.vue +1 -0
- package/src/page/index/dv/default/single/list/normal.vue +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ExtractPropTypes } from "vue";
|
|
2
2
|
import { ColumnEventData } from "../../data-model/data-table/composables";
|
|
3
3
|
export declare const columnLinkProps: {
|
|
4
|
-
readonly type: import("@maketribe/utils").PropFinalized<unknown, "" | "
|
|
4
|
+
readonly type: import("@maketribe/utils").PropFinalized<unknown, "" | "text" | "default" | "success" | "warning" | "info" | "primary" | "danger", unknown, "primary", boolean>;
|
|
5
5
|
readonly formatValue: {
|
|
6
6
|
readonly type: import("vue").PropType<Function>;
|
|
7
7
|
readonly required: false;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
declare const _default: import("vue").DefineComponent<{
|
|
2
|
-
readonly type: import("@maketribe/utils").PropFinalized<unknown, "" | "
|
|
2
|
+
readonly type: import("@maketribe/utils").PropFinalized<unknown, "" | "text" | "default" | "success" | "warning" | "info" | "primary" | "danger", unknown, "primary", boolean>;
|
|
3
3
|
readonly formatValue: {
|
|
4
4
|
readonly type: import("vue").PropType<Function>;
|
|
5
5
|
readonly required: false;
|
|
@@ -27,7 +27,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
27
27
|
}, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
28
28
|
click: (data: import("../../data-model/data-table/composables").ColumnEventData) => boolean;
|
|
29
29
|
}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
30
|
-
readonly type: import("@maketribe/utils").PropFinalized<unknown, "" | "
|
|
30
|
+
readonly type: import("@maketribe/utils").PropFinalized<unknown, "" | "text" | "default" | "success" | "warning" | "info" | "primary" | "danger", unknown, "primary", boolean>;
|
|
31
31
|
readonly formatValue: {
|
|
32
32
|
readonly type: import("vue").PropType<Function>;
|
|
33
33
|
readonly required: false;
|
|
@@ -55,6 +55,6 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
55
55
|
}>> & {
|
|
56
56
|
onClick?: ((data: import("../../data-model/data-table/composables").ColumnEventData) => any) | undefined;
|
|
57
57
|
}, {
|
|
58
|
-
readonly type: import("@maketribe/utils").PropMergeType<unknown, "" | "
|
|
58
|
+
readonly type: import("@maketribe/utils").PropMergeType<unknown, "" | "text" | "default" | "success" | "warning" | "info" | "primary" | "danger", unknown>;
|
|
59
59
|
}, {}>;
|
|
60
60
|
export default _default;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import ColumnLink from "./column-link";
|
|
2
2
|
export declare const MKColumnLink: import("vue").DefineComponent<{
|
|
3
|
-
readonly type: import("@maketribe/utils").PropFinalized<unknown, "" | "
|
|
3
|
+
readonly type: import("@maketribe/utils").PropFinalized<unknown, "" | "text" | "default" | "success" | "warning" | "info" | "primary" | "danger", unknown, "primary", boolean>;
|
|
4
4
|
readonly formatValue: {
|
|
5
5
|
readonly type: import("vue").PropType<Function>;
|
|
6
6
|
readonly required: false;
|
|
@@ -28,7 +28,7 @@ export declare const MKColumnLink: import("vue").DefineComponent<{
|
|
|
28
28
|
}, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
29
29
|
click: (data: import("../../data-model/data-table/composables").ColumnEventData) => boolean;
|
|
30
30
|
}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
31
|
-
readonly type: import("@maketribe/utils").PropFinalized<unknown, "" | "
|
|
31
|
+
readonly type: import("@maketribe/utils").PropFinalized<unknown, "" | "text" | "default" | "success" | "warning" | "info" | "primary" | "danger", unknown, "primary", boolean>;
|
|
32
32
|
readonly formatValue: {
|
|
33
33
|
readonly type: import("vue").PropType<Function>;
|
|
34
34
|
readonly required: false;
|
|
@@ -56,7 +56,7 @@ export declare const MKColumnLink: import("vue").DefineComponent<{
|
|
|
56
56
|
}>> & {
|
|
57
57
|
onClick?: ((data: import("../../data-model/data-table/composables").ColumnEventData) => any) | undefined;
|
|
58
58
|
}, {
|
|
59
|
-
readonly type: import("@maketribe/utils").PropMergeType<unknown, "" | "
|
|
59
|
+
readonly type: import("@maketribe/utils").PropMergeType<unknown, "" | "text" | "default" | "success" | "warning" | "info" | "primary" | "danger", unknown>;
|
|
60
60
|
}, {}>;
|
|
61
61
|
export default ColumnLink;
|
|
62
62
|
export * from "./column-link-options";
|
|
@@ -137,13 +137,13 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
137
137
|
__mkPropKey: true;
|
|
138
138
|
};
|
|
139
139
|
}>>, {
|
|
140
|
-
readonly type: import("@maketribe/utils").PropMergeType<unknown, "" | "success" | "warning" | "info" | "danger", unknown>;
|
|
141
140
|
readonly options: {
|
|
142
141
|
label: string;
|
|
143
142
|
value: any;
|
|
144
143
|
color: string;
|
|
145
144
|
type: "" | "success" | "warning" | "info" | "danger";
|
|
146
145
|
}[];
|
|
146
|
+
readonly type: import("@maketribe/utils").PropMergeType<unknown, "" | "success" | "warning" | "info" | "danger", unknown>;
|
|
147
147
|
readonly width: string;
|
|
148
148
|
readonly color: string;
|
|
149
149
|
readonly round: import("@maketribe/utils").PropMergeType<BooleanConstructor, unknown, unknown>;
|
|
@@ -137,13 +137,13 @@ export declare const MKColumnTag: import("vue").DefineComponent<{
|
|
|
137
137
|
__mkPropKey: true;
|
|
138
138
|
};
|
|
139
139
|
}>>, {
|
|
140
|
-
readonly type: import("@maketribe/utils").PropMergeType<unknown, "" | "success" | "warning" | "info" | "danger", unknown>;
|
|
141
140
|
readonly options: {
|
|
142
141
|
label: string;
|
|
143
142
|
value: any;
|
|
144
143
|
color: string;
|
|
145
144
|
type: "" | "success" | "warning" | "info" | "danger";
|
|
146
145
|
}[];
|
|
146
|
+
readonly type: import("@maketribe/utils").PropMergeType<unknown, "" | "success" | "warning" | "info" | "danger", unknown>;
|
|
147
147
|
readonly width: string;
|
|
148
148
|
readonly color: string;
|
|
149
149
|
readonly round: import("@maketribe/utils").PropMergeType<BooleanConstructor, unknown, unknown>;
|
|
@@ -18,6 +18,14 @@ var TableView = /* @__PURE__ */ vue.defineComponent({
|
|
|
18
18
|
}) {
|
|
19
19
|
const dataTable = vue.computed(() => props.dataTable);
|
|
20
20
|
const pageSizes = vue.computed(() => vue.unref(dataTable).pageSizes);
|
|
21
|
+
vue.watch(dataTable, (dataTable2) => {
|
|
22
|
+
const dataFilter = dataTable2.dataFilter;
|
|
23
|
+
if (dataFilter.getColumns().length === 0) {
|
|
24
|
+
dataFilter.setReady();
|
|
25
|
+
}
|
|
26
|
+
}, {
|
|
27
|
+
immediate: true
|
|
28
|
+
});
|
|
21
29
|
return () => {
|
|
22
30
|
const pagination = slots.pagination?.({
|
|
23
31
|
dataTable: vue.unref(dataTable)
|
|
@@ -48,7 +56,7 @@ var TableView = /* @__PURE__ */ vue.defineComponent({
|
|
|
48
56
|
"class": "header-box-main"
|
|
49
57
|
}, null), vue.createVNode("div", {
|
|
50
58
|
"class": "header-box-tools"
|
|
51
|
-
}, [vue.createVNode(index$4.MKDataFilterPopover, {
|
|
59
|
+
}, [_dataTable.dataFilter.getColumns().length ? vue.createVNode(index$4.MKDataFilterPopover, {
|
|
52
60
|
"dataTable": _dataTable
|
|
53
61
|
}, {
|
|
54
62
|
default: () => [vue.createVNode(elementPlus.ElButton, null, {
|
|
@@ -56,7 +64,7 @@ var TableView = /* @__PURE__ */ vue.defineComponent({
|
|
|
56
64
|
"iconClass": "Filter"
|
|
57
65
|
}, null)]
|
|
58
66
|
})]
|
|
59
|
-
}), buttons])]);
|
|
67
|
+
}) : null, buttons])]);
|
|
60
68
|
} else {
|
|
61
69
|
tools = vue.createVNode("div", {
|
|
62
70
|
"class": "mk-table-view__selection-tip"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table-view.js","sources":["../../../../../../../src/components/data-model/data-table/views/table-view/table-view.tsx"],"sourcesContent":["import { Fragment, VNode, computed, defineComponent, unref } from \"vue\";\nimport { ElButton, ElCard } from \"element-plus\";\n\nimport { MKButton } from \"../../../../button\";\nimport { MKTableClassifySearch } from \"./classify-search\";\nimport { MKDataTablePagination } from \"../../../data-table-pagination\";\nimport { MKDataFilterPopover } from \"../../../data-filter-popover\";\nimport { MKSvgIcon } from \"../../../../svg-icon\";\nimport { MKTable } from \"../table\";\nimport { tableViewProps } from \"./table-view-options\";\n\nexport default defineComponent({\n name: \"MKTableView\",\n props: tableViewProps,\n setup(props, { slots }) {\n const dataTable = computed(() => props.dataTable);\n\n const pageSizes = computed(() => unref(dataTable).pageSizes);\n\n return () => {\n const pagination =\n slots.pagination?.({ dataTable: unref(dataTable) }) ||\n (unref(pageSizes).length ? (\n <MKDataTablePagination dataTable={unref(dataTable)} />\n ) : null);\n\n return (\n <ElCard\n class=\"mk-table-view\"\n v-slots={{\n header: () => {\n const _dataTable = unref(dataTable);\n\n const buttons = _dataTable.buttonTools\n .filter((button) => button.predicate())\n .map((button) => (\n <MKButton button={button} onClick={() => button.handler()} />\n ));\n\n let classifySearch: any = slots[\"classify-search\"]?.() ?? null;\n if (\n !classifySearch &&\n _dataTable.classifySearch.getClassifySearchItems().length\n ) {\n classifySearch = <MKTableClassifySearch />;\n }\n\n let tools: VNode;\n\n if (!_dataTable.getSelection().length) {\n tools = (\n <Fragment>\n <div class=\"header-box-main\"></div>\n <div class=\"header-box-tools\">\n <MKDataFilterPopover dataTable={_dataTable}>\n
|
|
1
|
+
{"version":3,"file":"table-view.js","sources":["../../../../../../../src/components/data-model/data-table/views/table-view/table-view.tsx"],"sourcesContent":["import { Fragment, VNode, computed, defineComponent, unref, watch } from \"vue\";\nimport { ElButton, ElCard } from \"element-plus\";\n\nimport { MKButton } from \"../../../../button\";\nimport { MKTableClassifySearch } from \"./classify-search\";\nimport { MKDataTablePagination } from \"../../../data-table-pagination\";\nimport { MKDataFilterPopover } from \"../../../data-filter-popover\";\nimport { MKSvgIcon } from \"../../../../svg-icon\";\nimport { MKTable } from \"../table\";\nimport { tableViewProps } from \"./table-view-options\";\n\nexport default defineComponent({\n name: \"MKTableView\",\n props: tableViewProps,\n setup(props, { slots }) {\n const dataTable = computed(() => props.dataTable);\n\n const pageSizes = computed(() => unref(dataTable).pageSizes);\n\n watch(\n dataTable,\n (dataTable) => {\n const dataFilter = dataTable.dataFilter;\n\n if (dataFilter.getColumns().length === 0) {\n dataFilter.setReady();\n }\n },\n { immediate: true }\n );\n\n return () => {\n const pagination =\n slots.pagination?.({ dataTable: unref(dataTable) }) ||\n (unref(pageSizes).length ? (\n <MKDataTablePagination dataTable={unref(dataTable)} />\n ) : null);\n\n return (\n <ElCard\n class=\"mk-table-view\"\n v-slots={{\n header: () => {\n const _dataTable = unref(dataTable);\n\n const buttons = _dataTable.buttonTools\n .filter((button) => button.predicate())\n .map((button) => (\n <MKButton button={button} onClick={() => button.handler()} />\n ));\n\n let classifySearch: any = slots[\"classify-search\"]?.() ?? null;\n if (\n !classifySearch &&\n _dataTable.classifySearch.getClassifySearchItems().length\n ) {\n classifySearch = <MKTableClassifySearch />;\n }\n\n let tools: VNode;\n\n if (!_dataTable.getSelection().length) {\n tools = (\n <Fragment>\n <div class=\"header-box-main\"></div>\n <div class=\"header-box-tools\">\n {_dataTable.dataFilter.getColumns().length ? (\n <MKDataFilterPopover dataTable={_dataTable}>\n <ElButton>\n <MKSvgIcon iconClass=\"Filter\" />\n </ElButton>\n </MKDataFilterPopover>\n ) : null}\n {buttons}\n </div>\n </Fragment>\n );\n } else {\n tools = (\n <div class=\"mk-table-view__selection-tip\">\n <div class=\"mk-table-view__selection-tip-left\">\n <span>\n 已选中\n <span class=\"selection-count\">\n {_dataTable.getSelection().length}\n </span>\n 项\n </span>\n </div>\n <div class=\"mk-table-view__selection-tip-right\">\n {_dataTable.batchActionButtonTools.map((button) => (\n <MKButton\n link\n button={button}\n onClick={() => button.handler()}\n />\n ))}\n <ElButton\n link\n onClick={() => _dataTable.clearSelection()}\n >\n 取消选择\n </ElButton>\n </div>\n </div>\n );\n }\n\n return (\n <Fragment>\n {classifySearch}\n <div class=\"mk-table-view__header header-box\">{tools}</div>\n </Fragment>\n );\n },\n }}\n >\n {slots.default?.({ dataTable: unref(dataTable) }) || (\n <MKTable dataTable={unref(dataTable)} />\n )}\n {pagination}\n </ElCard>\n );\n };\n },\n});\n"],"names":["defineComponent","name","props","tableViewProps","setup","slots","dataTable","computed","pageSizes","unref","watch","dataFilter","getColumns","length","setReady","immediate","pagination","_createVNode","MKDataTablePagination","ElCard","default","MKTable","header","_dataTable","buttons","buttonTools","filter","button","predicate","map","MKButton","onClick","handler","classifySearch","getClassifySearchItems","MKTableClassifySearch","tools","getSelection","_Fragment","MKDataFilterPopover","ElButton","MKSvgIcon","_createTextVNode","batchActionButtonTools","clearSelection"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfigForm.js","sources":["../../../../src/dataview/config/ConfigForm.ts"],"sourcesContent":["import {\n DataForm,\n DataFormOptions,\n FormColumn,\n IComponents,\n} from \"@maketribe/dm\";\nimport { defineDataForm } from \"../../define-data-form\";\nimport { ConfigComponents, ITypeResolver } from \"../../core\";\n\nexport type Config<T = any> = {\n id: string;\n key: string;\n type: string;\n value: T;\n};\n\nexport type ConfigFormOptions = DataFormOptions & {\n typeResolver?: ITypeResolver<Config>;\n configComponent?: IComponents;\n};\n\nexport class ConfigForm\n extends DataForm<Config>\n implements ITypeResolver<Config>\n{\n configComponent: IComponents;\n\n constructor(options: ConfigFormOptions = {}) {\n super({ name: \"ms-cfg\", ...options });\n\n this.configComponent = options.configComponent ?? new ConfigComponents();\n }\n\n protected async initialize() {\n await super.initialize();\n\n const defaultType = \"string\";\n this.setColumns([\n new FormColumn({ name: \"id\", label: \"编号\" }),\n new FormColumn({ name: \"key\", label: \"配置键\", required: true }),\n new FormColumn({\n name: \"type\",\n label: \"类型\",\n componentInfo: \"MKFormDataSelect\",\n defaultValue: defaultType,\n required: true,\n componentProps: {\n options: [\n { value: \"string\", label: \"字符串\" },\n { value: \"int\", label: \"整数\" },\n { value: \"json\", label: \"JSON\" },\n ],\n onChange: () => {\n this.handleTypeChange(this.data);\n\n if (this.data) {\n this.data.value = null;\n }\n },\n },\n }),\n new FormColumn({\n name: \"value\",\n label: \"配置值\",\n required: true,\n defaultValue: null,\n rules: [\n {\n validator: (rule, value, callback) => {\n if (this.data?.type === \"json\") {\n try {\n JSON.parse(value);\n } catch (e) {\n callback(new Error(\"JSON格式错误\"));\n }\n }\n\n callback();\n },\n },\n ],\n componentInfo: this.resolveType(defaultType),\n }),\n ]);\n\n this.dataChangeEvent.on(({ data }) => {\n this.handleTypeChange(data);\n });\n }\n\n handleTypeChange(data: Config | null) {\n if (!data) {\n return;\n }\n\n const valueFormColumn = this.getColumn(\"value\")!;\n valueFormColumn.componentInfo =\n this.configComponent.resolveComponent(this.resolveItemType(data!)) ||\n this.configComponent.resolveComponent(\"MKFormInput\")!;\n }\n\n formatItem(item: Config): Config {\n let value = item.value;\n\n if (item.type !== \"json\") {\n try {\n value = JSON.parse(item.value);\n } catch (e) {}\n }\n\n return { ...item, value };\n }\n\n formatSubmitData(data: any) {\n return {\n ...data,\n value: data.type === \"json\" ? data.value : JSON.stringify(data.value),\n };\n }\n\n resolveType(type: string) {\n switch (type) {\n case \"int\":\n return \"MKConfigInputNumber\";\n case \"json\":\n return \"MKConfigJsonEditor\";\n default:\n return \"MKConfigInput\";\n }\n }\n\n resolveItemType(config: Config) {\n return this.resolveType(config.type);\n }\n}\n\ndefineDataForm(ConfigForm);\n"],"names":["DataForm","ConfigComponents","FormColumn","defineDataForm"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ConfigForm.js","sources":["../../../../src/dataview/config/ConfigForm.ts"],"sourcesContent":["import {\n DataForm,\n DataFormOptions,\n FormColumn,\n IComponents,\n} from \"@maketribe/dm\";\nimport { defineDataForm } from \"../../define-data-form\";\nimport { ConfigComponents, ITypeResolver } from \"../../core\";\n\nexport type Config<T = any> = {\n id: string;\n key: string;\n type: string;\n value: T;\n};\n\nexport type ConfigFormOptions = DataFormOptions & {\n typeResolver?: ITypeResolver<Config>;\n configComponent?: IComponents;\n};\n\nexport class ConfigForm\n extends DataForm<Config>\n implements ITypeResolver<Config>\n{\n configComponent: IComponents;\n\n constructor(options: ConfigFormOptions = {}) {\n super({ name: \"ms-cfg\", ...options });\n\n this.configComponent = options.configComponent ?? new ConfigComponents();\n }\n\n protected async initialize() {\n await super.initialize();\n\n const defaultType = \"string\";\n this.setColumns([\n new FormColumn({ name: \"id\", label: \"编号\" }),\n new FormColumn({ name: \"key\", label: \"配置键\", required: true }),\n new FormColumn({\n name: \"type\",\n label: \"类型\",\n componentInfo: \"MKFormDataSelect\",\n defaultValue: defaultType,\n required: true,\n componentProps: {\n options: [\n { value: \"string\", label: \"字符串\" },\n { value: \"int\", label: \"整数\" },\n { value: \"json\", label: \"JSON\" },\n ],\n onChange: () => {\n this.handleTypeChange(this.data);\n\n if (this.data) {\n this.data.value = null;\n }\n },\n },\n }),\n new FormColumn({\n name: \"value\",\n label: \"配置值\",\n required: true,\n defaultValue: null,\n rules: [\n {\n validator: (rule, value, callback) => {\n if (this.data?.type === \"json\") {\n try {\n JSON.parse(value);\n } catch (e) {\n callback(new Error(\"JSON格式错误\"));\n }\n }\n\n callback();\n },\n },\n ],\n componentInfo: this.resolveType(defaultType),\n }),\n new FormColumn({\n name: \"memo\",\n label: \"备注\",\n defaultValue: \"\",\n }),\n ]);\n\n this.dataChangeEvent.on(({ data }) => {\n this.handleTypeChange(data);\n });\n }\n\n handleTypeChange(data: Config | null) {\n if (!data) {\n return;\n }\n\n const valueFormColumn = this.getColumn(\"value\")!;\n valueFormColumn.componentInfo =\n this.configComponent.resolveComponent(this.resolveItemType(data!)) ||\n this.configComponent.resolveComponent(\"MKFormInput\")!;\n }\n\n formatItem(item: Config): Config {\n let value = item.value;\n\n if (item.type !== \"json\") {\n try {\n value = JSON.parse(item.value);\n } catch (e) {}\n }\n\n return { ...item, value };\n }\n\n formatSubmitData(data: any) {\n return {\n ...data,\n value: data.type === \"json\" ? data.value : JSON.stringify(data.value),\n };\n }\n\n resolveType(type: string) {\n switch (type) {\n case \"int\":\n return \"MKConfigInputNumber\";\n case \"json\":\n return \"MKConfigJsonEditor\";\n default:\n return \"MKConfigInput\";\n }\n }\n\n resolveItemType(config: Config) {\n return this.resolveType(config.type);\n }\n}\n\ndefineDataForm(ConfigForm);\n"],"names":["DataForm","ConfigComponents","FormColumn","defineDataForm"],"mappings":"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"}
|
|
@@ -19,8 +19,8 @@ class ConfigTable extends dm.DataTable {
|
|
|
19
19
|
async initialize() {
|
|
20
20
|
await super.initialize();
|
|
21
21
|
this.setColumns([
|
|
22
|
-
new dm.TableColumn({ name: "id", label: "\u7F16\u53F7", visible: false }),
|
|
23
22
|
new dm.TableColumn({ name: "key", label: "\u914D\u7F6E\u952E" }),
|
|
23
|
+
new dm.TableColumn({ name: "memo", label: "\u5907\u6CE8" }),
|
|
24
24
|
new dm.TableActionColumn()
|
|
25
25
|
]);
|
|
26
26
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfigTable.js","sources":["../../../../src/dataview/config/ConfigTable.ts"],"sourcesContent":["import { Where } from \"@maketribe/request\";\nimport {\n DataTable,\n DataTableOptions,\n TableColumn,\n TableActionColumn,\n} from \"@maketribe/dm\";\nimport { Config } from \"./ConfigForm\";\nimport { R, ResponseConfig } from \"@maketribe/request\";\nimport { defineDataTable } from \"../../define-data-table\";\n\nexport class ConfigTable extends DataTable<Config> {\n private static _instance: ConfigTable | null = null;\n\n static get instance(): ConfigTable {\n if (!ConfigTable._instance) {\n ConfigTable._instance = new ConfigTable();\n ConfigTable._instance.dataFilter.setReady();\n }\n\n return ConfigTable._instance;\n }\n\n constructor(options: DataTableOptions = {}) {\n super({ name: \"ms-cfg\", ...options });\n }\n\n protected async initialize() {\n await super.initialize();\n\n this.setColumns([\n new TableColumn({ name: \"
|
|
1
|
+
{"version":3,"file":"ConfigTable.js","sources":["../../../../src/dataview/config/ConfigTable.ts"],"sourcesContent":["import { Where } from \"@maketribe/request\";\nimport {\n DataTable,\n DataTableOptions,\n TableColumn,\n TableActionColumn,\n} from \"@maketribe/dm\";\nimport { Config } from \"./ConfigForm\";\nimport { R, ResponseConfig } from \"@maketribe/request\";\nimport { defineDataTable } from \"../../define-data-table\";\n\nexport class ConfigTable extends DataTable<Config> {\n private static _instance: ConfigTable | null = null;\n\n static get instance(): ConfigTable {\n if (!ConfigTable._instance) {\n ConfigTable._instance = new ConfigTable();\n ConfigTable._instance.dataFilter.setReady();\n }\n\n return ConfigTable._instance;\n }\n\n constructor(options: DataTableOptions = {}) {\n super({ name: \"ms-cfg\", ...options });\n }\n\n protected async initialize() {\n await super.initialize();\n\n this.setColumns([\n new TableColumn({ name: \"key\", label: \"配置键\" }),\n new TableColumn({ name: \"memo\", label: \"备注\" }),\n new TableActionColumn(),\n ]);\n }\n\n formatItem(item: Config): Config {\n let value = item.value;\n\n try {\n value = JSON.parse(value);\n } catch (e) {}\n\n return { ...item, value };\n }\n\n static async loadConfig<T = any>(\n key: string\n ): Promise<ResponseConfig<R<Config<T>>>> {\n const where = new Where();\n\n where.addCondition(\"key\", \"=\", key);\n\n const dataViewRequest = ConfigTable.instance.dataViewRequest;\n const response = await dataViewRequest.allList({\n data: { condition: where },\n });\n\n return {\n ...response,\n data: {\n ...response.data,\n data: response.data.data?.[0] ?? null,\n },\n };\n }\n}\n\n(window as any).ConfigTable = ConfigTable;\n\ndefineDataTable(ConfigTable);\n"],"names":["DataTable","TableColumn","TableActionColumn","Where","defineDataTable"],"mappings":";;;;;;AAWO,MAAM,oBAAoBA,YAAkB,CAAA;AAAA,EACjD,OAAe,SAAgC,GAAA,IAAA,CAAA;AAAA,EAE/C,WAAW,QAAwB,GAAA;AACjC,IAAI,IAAA,CAAC,YAAY,SAAW,EAAA;AAC1B,MAAY,WAAA,CAAA,SAAA,GAAY,IAAI,WAAY,EAAA,CAAA;AACxC,MAAY,WAAA,CAAA,SAAA,CAAU,WAAW,QAAS,EAAA,CAAA;AAAA,KAC5C;AAEA,IAAA,OAAO,WAAY,CAAA,SAAA,CAAA;AAAA,GACrB;AAAA,EAEA,WAAA,CAAY,OAA4B,GAAA,EAAI,EAAA;AAC1C,IAAA,KAAA,CAAM,EAAE,IAAA,EAAM,QAAU,EAAA,GAAG,SAAS,CAAA,CAAA;AAAA,GACtC;AAAA,EAEA,MAAgB,UAAa,GAAA;AAC3B,IAAA,MAAM,MAAM,UAAW,EAAA,CAAA;AAEvB,IAAA,IAAA,CAAK,UAAW,CAAA;AAAA,MACd,IAAIC,cAAY,CAAA,EAAE,MAAM,KAAO,EAAA,KAAA,EAAO,sBAAO,CAAA;AAAA,MAC7C,IAAIA,cAAY,CAAA,EAAE,MAAM,MAAQ,EAAA,KAAA,EAAO,gBAAM,CAAA;AAAA,MAC7C,IAAIC,oBAAkB,EAAA;AAAA,KACvB,CAAA,CAAA;AAAA,GACH;AAAA,EAEA,WAAW,IAAsB,EAAA;AAC/B,IAAA,IAAI,QAAQ,IAAK,CAAA,KAAA,CAAA;AAEjB,IAAI,IAAA;AACF,MAAQ,KAAA,GAAA,IAAA,CAAK,MAAM,KAAK,CAAA,CAAA;AAAA,aACjB,CAAG,EAAA;AAAA,KAAC;AAEb,IAAO,OAAA,EAAE,GAAG,IAAA,EAAM,KAAM,EAAA,CAAA;AAAA,GAC1B;AAAA,EAEA,aAAa,WACX,GACuC,EAAA;AACvC,IAAM,MAAA,KAAA,GAAQ,IAAIC,aAAM,EAAA,CAAA;AAExB,IAAM,KAAA,CAAA,YAAA,CAAa,KAAO,EAAA,GAAA,EAAK,GAAG,CAAA,CAAA;AAElC,IAAM,MAAA,eAAA,GAAkB,YAAY,QAAS,CAAA,eAAA,CAAA;AAC7C,IAAM,MAAA,QAAA,GAAW,MAAM,eAAA,CAAgB,OAAQ,CAAA;AAAA,MAC7C,IAAA,EAAM,EAAE,SAAA,EAAW,KAAM,EAAA;AAAA,KAC1B,CAAA,CAAA;AAED,IAAO,OAAA;AAAA,MACL,GAAG,QAAA;AAAA,MACH,IAAM,EAAA;AAAA,QACJ,GAAG,QAAS,CAAA,IAAA;AAAA,QACZ,IAAM,EAAA,QAAA,CAAS,IAAK,CAAA,IAAA,GAAO,CAAC,CAAK,IAAA,IAAA;AAAA,OACnC;AAAA,KACF,CAAA;AAAA,GACF;AACF,CAAA;AAEC,MAAA,CAAe,WAAc,GAAA,WAAA,CAAA;AAE9BC,+BAAA,CAAgB,WAAW,CAAA;;;;"}
|
|
@@ -15,6 +15,15 @@ require('../department/DepartmentForm.js');
|
|
|
15
15
|
var DepartmentTable = require('../department/DepartmentTable.js');
|
|
16
16
|
require('../department/DepartmentTree.js');
|
|
17
17
|
var pattern = require('../../constants/pattern.js');
|
|
18
|
+
require('../../components/upload-file/upload-file.js');
|
|
19
|
+
var WebFileUploadContext = require('../../components/upload-file/context/WebFileUploadContext.js');
|
|
20
|
+
require('../../components/material-select/index.js');
|
|
21
|
+
require('../../components/upload-file/context/material-upload-context.js');
|
|
22
|
+
require('../../components/upload-file/context/material-upload-context-options.js');
|
|
23
|
+
require('../../components/upload-file/context/web-file-upload-context.js');
|
|
24
|
+
require('../../components/upload-file/context/web-file-upload-context-options.js');
|
|
25
|
+
require('../../components/upload-file/ui/upload-image/index.js');
|
|
26
|
+
require('../../components/upload-file/upload-file-options.js');
|
|
18
27
|
|
|
19
28
|
class MemberForm extends dm.DataForm {
|
|
20
29
|
constructor(options = {}) {
|
|
@@ -39,7 +48,10 @@ class MemberForm extends dm.DataForm {
|
|
|
39
48
|
name: "avatar",
|
|
40
49
|
label: "\u5934\u50CF",
|
|
41
50
|
defaultValue: null,
|
|
42
|
-
componentInfo: "MKFormImageUpload"
|
|
51
|
+
componentInfo: "MKFormImageUpload",
|
|
52
|
+
componentProps: {
|
|
53
|
+
uploadContext: new WebFileUploadContext.WebFileUploadContext()
|
|
54
|
+
}
|
|
43
55
|
}),
|
|
44
56
|
new dm.FormColumn({
|
|
45
57
|
name: "roles",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MemberForm.js","sources":["../../../../src/dataview/member/MemberForm.ts"],"sourcesContent":["import { DataForm, DataFormOptions, FormColumn } from \"@maketribe/dm\";\nimport { defineDataForm } from \"../../define-data-form\";\nimport { RoleTable } from \"../role\";\nimport { DepartmentTable } from \"../department\";\nimport {
|
|
1
|
+
{"version":3,"file":"MemberForm.js","sources":["../../../../src/dataview/member/MemberForm.ts"],"sourcesContent":["import { DataForm, DataFormOptions, FormColumn } from \"@maketribe/dm\";\nimport { defineDataForm } from \"../../define-data-form\";\nimport { RoleTable } from \"../role\";\nimport { DepartmentTable } from \"../department\";\nimport { EMAIL_PATTERN } from \"../../constants\";\nimport { WebFileUploadContext } from \"../../components/upload-file\";\nexport type MemberResult = {\n id: string;\n name: string;\n wechatNo: string;\n nickName: string;\n email: string;\n phone: string;\n account: string;\n avatar: string;\n roles: any[];\n depts: any[];\n valid: number;\n};\n\nexport type Member = {\n id: string;\n name: string;\n wechatNo: string;\n nickName: string;\n email: string;\n phone: string;\n account: string;\n avatar: string | null;\n roles: any[];\n depts: any[];\n valid: number;\n};\n\nexport class MemberForm<\n T extends MemberResult = MemberResult,\n F extends Member = Member\n> extends DataForm<T, F> {\n constructor(options: DataFormOptions = {}) {\n super({ name: \"ms-member\", ...options });\n }\n\n protected async initialize() {\n await super.initialize();\n\n this.setColumns([\n new FormColumn({ name: \"id\", label: \"编号\" }),\n new FormColumn({ name: \"name\", label: \"姓名\", required: true }),\n new FormColumn({ name: \"wechatNo\", label: \"微信号\", defaultValue: null }),\n new FormColumn({ name: \"nickName\", label: \"昵称\", required: true }),\n new FormColumn({\n name: \"email\",\n label: \"邮箱\",\n required: true,\n rules: [{ message: \"邮箱格式有误\", pattern: EMAIL_PATTERN }],\n }),\n new FormColumn({ name: \"phone\", label: \"手机号\", defaultValue: null }),\n new FormColumn({ name: \"account\", label: \"账号\", required: true }),\n new FormColumn({\n name: \"avatar\",\n label: \"头像\",\n defaultValue: null,\n componentInfo: \"MKFormImageUpload\",\n componentProps: {\n uploadContext: new WebFileUploadContext(),\n }\n }),\n new FormColumn({\n name: \"roles\",\n label: \"角色\",\n defaultValue: null,\n componentInfo: \"MKFormDataTableSelect\",\n componentProps: {\n multiple: true,\n labelFieldName: \"name\",\n dataTable: new RoleTable(),\n },\n }),\n new FormColumn({\n name: \"depts\",\n label: \"部门\",\n defaultValue: null,\n componentInfo: \"MKFormDataTableSelect\",\n componentProps: {\n multiple: true,\n labelFieldName: \"name\",\n dataTable: new DepartmentTable(),\n },\n }),\n new FormColumn({ name: \"memo\", label: \"备注\" }),\n ]);\n }\n\n formatSubmitData(data: any) {\n const { roles, depts, ...rest } = data;\n\n const rolesArr = roles?.map((item: any) => {\n return { roleId: item };\n });\n const deptsArr = depts?.map((item: any) => {\n return { deptId: item };\n });\n return { ...rest, roles: rolesArr, depts: deptsArr };\n }\n\n formatItem(item: T): F {\n return {\n id: item.id,\n name: item.name || \"\",\n wechatNo: item.wechatNo || \"\",\n nickName: item.nickName || \"\",\n email: item.email || \"\",\n phone: item.phone || \"\",\n account: item.account || \"\",\n avatar: item.avatar,\n roles: item.roles?.map((role) => role.roleId),\n depts: item.depts?.map((department) => department.deptId),\n valid: item.valid,\n } as F;\n }\n}\n\ndefineDataForm(MemberForm);\n"],"names":["DataForm","FormColumn","EMAIL_PATTERN","WebFileUploadContext","RoleTable","DepartmentTable","defineDataForm"],"mappings":"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"}
|
|
@@ -89,6 +89,7 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
89
89
|
]
|
|
90
90
|
),
|
|
91
91
|
([_dataTable, _dataForm, name]) => {
|
|
92
|
+
isShowDialog.value = false;
|
|
92
93
|
dataTable.value = _dataTable || DataModelDefines.DataModelDefines.instance.getDataTable(name);
|
|
93
94
|
dataForm.value = _dataForm || DataModelDefines.DataModelDefines.instance.getDataForm(name);
|
|
94
95
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dialog.vue2.js","sources":["../../../../../../../../src/page/index/dv/default/single/list/dialog.vue"],"sourcesContent":["<template>\n <MKDataTablePage v-if=\"dataTable\" :data-table=\"dataTable\" selection />\n\n <ElDialog v-if=\"dataForm\" appendToBody v-model=\"isShowDialog\">\n <MKDataForm v-loading=\"dataForm.loading\" :dataForm=\"dataForm\">\n <MKForm :dataForm=\"dataForm\" />\n </MKDataForm>\n\n <template #footer>\n <ElButton\n type=\"primary\"\n :loading=\"dataForm.loading\"\n @click=\"handleSubmit\"\n >\n {{ I18n.instance.translate(\"mk.dataForm.saveButton\") }}\n </ElButton>\n <ElButton @click=\"handleCancel\">\n {{ I18n.instance.translate(\"mk.dataForm.cancelButton\") }}\n </ElButton>\n </template>\n </ElDialog>\n</template>\n\n<script setup lang=\"ts\">\nimport { unref, computed, watch, ref, Ref, nextTick } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport { ElMessage, ElDialog, ElButton } from \"element-plus\";\nimport { I18n } from \"@maketribe/locale\";\nimport { DataForm, DataTable, Dialoger, Messager } from \"@maketribe/dm\";\nimport {\n MKDataTablePage,\n MKDataForm,\n MKForm,\n} from \"../../../../../../components\";\nimport { DataModelDefines } from \"../../../../../../core\";\n\nconst props = defineProps({\n dataTable: { type: DataTable<any> },\n dataForm: { type: DataForm<any> },\n});\n\nconst router = useRouter();\n\nconst isShowDialog = ref(false);\n\nconst dataTable: Ref<DataTable | null> = ref(null);\nconst dataForm: Ref<DataForm | null> = ref(null);\n\nwatch(\n computed(\n () =>\n [\n props.dataTable,\n props.dataForm,\n unref(router.currentRoute).meta.name,\n ] as [DataTable, DataForm, string]\n ),\n ([_dataTable, _dataForm, name]) => {\n dataTable.value =\n _dataTable || DataModelDefines.instance.getDataTable(name);\n dataForm.value = _dataForm || DataModelDefines.instance.getDataForm(name);\n },\n { immediate: true }\n);\n\nwatch(\n dataTable,\n (dataTable, _, onCleanup) => {\n if (dataTable) {\n dataTable.addRecordEvent.on(async () => {\n const _dataForm = unref(dataForm);\n\n if (!_dataForm) {\n console.warn(`没有对应的 (${dataTable.name}) DataForm 实现`);\n return;\n }\n\n isShowDialog.value = true;\n\n _dataForm.addRecord();\n });\n\n dataTable.editRecordEvent.on(async ({ item }) => {\n const _dataForm = unref(dataForm);\n\n if (!_dataForm) {\n console.warn(`没有对应的 (${dataTable.name}) DataForm 实现`);\n return;\n }\n\n isShowDialog.value = true;\n\n try {\n const response = await _dataForm.editRecord(\n item[dataTable.primaryKey]\n );\n\n if (response.data.code !== 200) {\n ElMessage.error(response.data.msg);\n isShowDialog.value = false;\n return;\n }\n } catch (e) {\n console.error(e);\n isShowDialog.value = false;\n }\n });\n }\n\n onCleanup(() => {\n dataTable?.clearSelection();\n dataTable?.dispose();\n });\n },\n { immediate: true }\n);\n\nconst handleSubmit = async () => {\n try {\n const _dataForm = unref(dataForm);\n\n if (!_dataForm) {\n return;\n }\n\n if (!(await _dataForm.validate())) {\n return;\n }\n\n const response = await _dataForm.submit();\n\n if (response.data.code !== 200) {\n ElMessage.error({ message: response.data.msg });\n return;\n }\n\n unref(dataTable)?.load();\n ElMessage.success({\n message: I18n.instance.translate(\"mk.message.saveSuccess\"),\n });\n\n isShowDialog.value = false;\n } catch (e) {\n ElMessage.error({\n message: I18n.instance.translate(\"mk.message.saveError\"),\n });\n }\n};\n\nconst handleCancel = () => {\n unref(dataForm)?.cancel();\n isShowDialog.value = false;\n};\n</script>\n"],"names":["useRouter","ref","watch","computed","unref","DataModelDefines","dataTable","ElMessage","I18n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dialog.vue2.js","sources":["../../../../../../../../src/page/index/dv/default/single/list/dialog.vue"],"sourcesContent":["<template>\n <MKDataTablePage v-if=\"dataTable\" :data-table=\"dataTable\" selection />\n\n <ElDialog v-if=\"dataForm\" appendToBody v-model=\"isShowDialog\">\n <MKDataForm v-loading=\"dataForm.loading\" :dataForm=\"dataForm\">\n <MKForm :dataForm=\"dataForm\" />\n </MKDataForm>\n\n <template #footer>\n <ElButton\n type=\"primary\"\n :loading=\"dataForm.loading\"\n @click=\"handleSubmit\"\n >\n {{ I18n.instance.translate(\"mk.dataForm.saveButton\") }}\n </ElButton>\n <ElButton @click=\"handleCancel\">\n {{ I18n.instance.translate(\"mk.dataForm.cancelButton\") }}\n </ElButton>\n </template>\n </ElDialog>\n</template>\n\n<script setup lang=\"ts\">\nimport { unref, computed, watch, ref, Ref, nextTick } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport { ElMessage, ElDialog, ElButton } from \"element-plus\";\nimport { I18n } from \"@maketribe/locale\";\nimport { DataForm, DataTable, Dialoger, Messager } from \"@maketribe/dm\";\nimport {\n MKDataTablePage,\n MKDataForm,\n MKForm,\n} from \"../../../../../../components\";\nimport { DataModelDefines } from \"../../../../../../core\";\n\nconst props = defineProps({\n dataTable: { type: DataTable<any> },\n dataForm: { type: DataForm<any> },\n});\n\nconst router = useRouter();\n\nconst isShowDialog = ref(false);\n\nconst dataTable: Ref<DataTable | null> = ref(null);\nconst dataForm: Ref<DataForm | null> = ref(null);\n\nwatch(\n computed(\n () =>\n [\n props.dataTable,\n props.dataForm,\n unref(router.currentRoute).meta.name,\n ] as [DataTable, DataForm, string]\n ),\n ([_dataTable, _dataForm, name]) => {\n isShowDialog.value = false;\n dataTable.value =\n _dataTable || DataModelDefines.instance.getDataTable(name);\n dataForm.value = _dataForm || DataModelDefines.instance.getDataForm(name);\n },\n { immediate: true }\n);\n\nwatch(\n dataTable,\n (dataTable, _, onCleanup) => {\n if (dataTable) {\n dataTable.addRecordEvent.on(async () => {\n const _dataForm = unref(dataForm);\n\n if (!_dataForm) {\n console.warn(`没有对应的 (${dataTable.name}) DataForm 实现`);\n return;\n }\n\n isShowDialog.value = true;\n\n _dataForm.addRecord();\n });\n\n dataTable.editRecordEvent.on(async ({ item }) => {\n const _dataForm = unref(dataForm);\n\n if (!_dataForm) {\n console.warn(`没有对应的 (${dataTable.name}) DataForm 实现`);\n return;\n }\n\n isShowDialog.value = true;\n\n try {\n const response = await _dataForm.editRecord(\n item[dataTable.primaryKey]\n );\n\n if (response.data.code !== 200) {\n ElMessage.error(response.data.msg);\n isShowDialog.value = false;\n return;\n }\n } catch (e) {\n console.error(e);\n isShowDialog.value = false;\n }\n });\n }\n\n onCleanup(() => {\n dataTable?.clearSelection();\n dataTable?.dispose();\n });\n },\n { immediate: true }\n);\n\nconst handleSubmit = async () => {\n try {\n const _dataForm = unref(dataForm);\n\n if (!_dataForm) {\n return;\n }\n\n if (!(await _dataForm.validate())) {\n return;\n }\n\n const response = await _dataForm.submit();\n\n if (response.data.code !== 200) {\n ElMessage.error({ message: response.data.msg });\n return;\n }\n\n unref(dataTable)?.load();\n ElMessage.success({\n message: I18n.instance.translate(\"mk.message.saveSuccess\"),\n });\n\n isShowDialog.value = false;\n } catch (e) {\n ElMessage.error({\n message: I18n.instance.translate(\"mk.message.saveError\"),\n });\n }\n};\n\nconst handleCancel = () => {\n unref(dataForm)?.cancel();\n isShowDialog.value = false;\n};\n</script>\n"],"names":["useRouter","ref","watch","computed","unref","DataModelDefines","dataTable","ElMessage","I18n"],"mappings":"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"}
|
|
@@ -88,6 +88,7 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
88
88
|
]
|
|
89
89
|
),
|
|
90
90
|
([_dataTable, _dataForm, name]) => {
|
|
91
|
+
isShowDataForm.value = false;
|
|
91
92
|
dataTable.value = _dataTable || DataModelDefines.DataModelDefines.instance.getDataTable(name);
|
|
92
93
|
dataForm.value = _dataForm || DataModelDefines.DataModelDefines.instance.getDataForm(name);
|
|
93
94
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"normal.vue2.js","sources":["../../../../../../../../src/page/index/dv/default/single/list/normal.vue"],"sourcesContent":["<template>\n <MKDataTablePage\n v-if=\"dataTable\"\n v-show=\"!isShowDataForm\"\n :data-table=\"dataTable\"\n selection\n />\n <MKDataFormPage\n v-if=\"dataForm\"\n v-show=\"isShowDataForm\"\n :data-form=\"dataForm\"\n />\n</template>\n\n<script setup lang=\"ts\">\nimport { unref, computed, watch, ref, Ref } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport { ElMessage } from \"element-plus\";\nimport {
|
|
1
|
+
{"version":3,"file":"normal.vue2.js","sources":["../../../../../../../../src/page/index/dv/default/single/list/normal.vue"],"sourcesContent":["<template>\n <MKDataTablePage\n v-if=\"dataTable\"\n v-show=\"!isShowDataForm\"\n :data-table=\"dataTable\"\n selection\n />\n <MKDataFormPage\n v-if=\"dataForm\"\n v-show=\"isShowDataForm\"\n :data-form=\"dataForm\"\n />\n</template>\n\n<script setup lang=\"ts\">\nimport { unref, computed, watch, ref, Ref } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport { ElMessage } from \"element-plus\";\nimport { DataForm, DataTable, Dialoger, Messager } from \"@maketribe/dm\";\nimport { MKDataTablePage, MKDataFormPage } from \"../../../../../../components\";\nimport { DataModelDefines } from \"../../../../../../core\";\n\nconst props = defineProps({\n dataTable: { type: DataTable<any> },\n dataForm: { type: DataForm<any> },\n});\n\nconst router = useRouter();\n\nconst isShowDataForm = ref(false);\n\nconst dataTable: Ref<DataTable | null> = ref(null);\nconst dataForm: Ref<DataForm | null> = ref(null);\n\nwatch(\n computed(\n () =>\n [\n props.dataTable,\n props.dataForm,\n unref(router.currentRoute).meta.name,\n ] as [DataTable, DataForm, string]\n ),\n ([_dataTable, _dataForm, name]) => {\n isShowDataForm.value = false;\n dataTable.value =\n _dataTable || DataModelDefines.instance.getDataTable(name);\n dataForm.value = _dataForm || DataModelDefines.instance.getDataForm(name);\n },\n { immediate: true }\n);\n\nwatch(\n dataTable,\n (dataTable, _, onCleanup) => {\n if (dataTable) {\n dataTable.addRecordEvent.on(() => {\n const _dataForm = unref(dataForm);\n\n if (!_dataForm) {\n console.warn(`没有对应的 (${dataTable.name}) DataForm 实现`);\n return;\n }\n\n isShowDataForm.value = true;\n\n _dataForm.addRecord();\n });\n\n dataTable.editRecordEvent.on(async ({ item }) => {\n const _dataForm = unref(dataForm);\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(\n item[dataTable.primaryKey]\n );\n\n if (response.data.code !== 200) {\n ElMessage.error(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 dataTable?.clearSelection();\n dataTable?.dispose();\n });\n },\n { immediate: true }\n);\n\nwatch(\n dataForm,\n (dataForm, _, onCleanup) => {\n if (dataForm) {\n dataForm.submittedEvent.on(() => {\n isShowDataForm.value = false;\n\n unref(dataTable)?.load();\n });\n\n dataForm.cancelEvent.on(() => {\n isShowDataForm.value = false;\n\n unref(dataTable)?.load();\n });\n }\n\n onCleanup(() => {\n dataForm?.dispose();\n });\n },\n { immediate: true }\n);\n</script>\n"],"names":["useRouter","ref","watch","computed","unref","DataModelDefines","dataTable","ElMessage","dataForm"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ExtractPropTypes } from "vue";
|
|
2
2
|
import { ColumnEventData } from "../../data-model/data-table/composables";
|
|
3
3
|
export declare const columnLinkProps: {
|
|
4
|
-
readonly type: import("@maketribe/utils").PropFinalized<unknown, "" | "
|
|
4
|
+
readonly type: import("@maketribe/utils").PropFinalized<unknown, "" | "text" | "default" | "success" | "warning" | "info" | "primary" | "danger", unknown, "primary", boolean>;
|
|
5
5
|
readonly formatValue: {
|
|
6
6
|
readonly type: import("vue").PropType<Function>;
|
|
7
7
|
readonly required: false;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
declare const _default: import("vue").DefineComponent<{
|
|
2
|
-
readonly type: import("@maketribe/utils").PropFinalized<unknown, "" | "
|
|
2
|
+
readonly type: import("@maketribe/utils").PropFinalized<unknown, "" | "text" | "default" | "success" | "warning" | "info" | "primary" | "danger", unknown, "primary", boolean>;
|
|
3
3
|
readonly formatValue: {
|
|
4
4
|
readonly type: import("vue").PropType<Function>;
|
|
5
5
|
readonly required: false;
|
|
@@ -27,7 +27,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
27
27
|
}, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
28
28
|
click: (data: import("../../data-model/data-table/composables").ColumnEventData) => boolean;
|
|
29
29
|
}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
30
|
-
readonly type: import("@maketribe/utils").PropFinalized<unknown, "" | "
|
|
30
|
+
readonly type: import("@maketribe/utils").PropFinalized<unknown, "" | "text" | "default" | "success" | "warning" | "info" | "primary" | "danger", unknown, "primary", boolean>;
|
|
31
31
|
readonly formatValue: {
|
|
32
32
|
readonly type: import("vue").PropType<Function>;
|
|
33
33
|
readonly required: false;
|
|
@@ -55,6 +55,6 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
55
55
|
}>> & {
|
|
56
56
|
onClick?: ((data: import("../../data-model/data-table/composables").ColumnEventData) => any) | undefined;
|
|
57
57
|
}, {
|
|
58
|
-
readonly type: import("@maketribe/utils").PropMergeType<unknown, "" | "
|
|
58
|
+
readonly type: import("@maketribe/utils").PropMergeType<unknown, "" | "text" | "default" | "success" | "warning" | "info" | "primary" | "danger", unknown>;
|
|
59
59
|
}, {}>;
|
|
60
60
|
export default _default;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import ColumnLink from "./column-link";
|
|
2
2
|
export declare const MKColumnLink: import("vue").DefineComponent<{
|
|
3
|
-
readonly type: import("@maketribe/utils").PropFinalized<unknown, "" | "
|
|
3
|
+
readonly type: import("@maketribe/utils").PropFinalized<unknown, "" | "text" | "default" | "success" | "warning" | "info" | "primary" | "danger", unknown, "primary", boolean>;
|
|
4
4
|
readonly formatValue: {
|
|
5
5
|
readonly type: import("vue").PropType<Function>;
|
|
6
6
|
readonly required: false;
|
|
@@ -28,7 +28,7 @@ export declare const MKColumnLink: import("vue").DefineComponent<{
|
|
|
28
28
|
}, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
29
29
|
click: (data: import("../../data-model/data-table/composables").ColumnEventData) => boolean;
|
|
30
30
|
}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
31
|
-
readonly type: import("@maketribe/utils").PropFinalized<unknown, "" | "
|
|
31
|
+
readonly type: import("@maketribe/utils").PropFinalized<unknown, "" | "text" | "default" | "success" | "warning" | "info" | "primary" | "danger", unknown, "primary", boolean>;
|
|
32
32
|
readonly formatValue: {
|
|
33
33
|
readonly type: import("vue").PropType<Function>;
|
|
34
34
|
readonly required: false;
|
|
@@ -56,7 +56,7 @@ export declare const MKColumnLink: import("vue").DefineComponent<{
|
|
|
56
56
|
}>> & {
|
|
57
57
|
onClick?: ((data: import("../../data-model/data-table/composables").ColumnEventData) => any) | undefined;
|
|
58
58
|
}, {
|
|
59
|
-
readonly type: import("@maketribe/utils").PropMergeType<unknown, "" | "
|
|
59
|
+
readonly type: import("@maketribe/utils").PropMergeType<unknown, "" | "text" | "default" | "success" | "warning" | "info" | "primary" | "danger", unknown>;
|
|
60
60
|
}, {}>;
|
|
61
61
|
export default ColumnLink;
|
|
62
62
|
export * from "./column-link-options";
|
|
@@ -137,13 +137,13 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
137
137
|
__mkPropKey: true;
|
|
138
138
|
};
|
|
139
139
|
}>>, {
|
|
140
|
-
readonly type: import("@maketribe/utils").PropMergeType<unknown, "" | "success" | "warning" | "info" | "danger", unknown>;
|
|
141
140
|
readonly options: {
|
|
142
141
|
label: string;
|
|
143
142
|
value: any;
|
|
144
143
|
color: string;
|
|
145
144
|
type: "" | "success" | "warning" | "info" | "danger";
|
|
146
145
|
}[];
|
|
146
|
+
readonly type: import("@maketribe/utils").PropMergeType<unknown, "" | "success" | "warning" | "info" | "danger", unknown>;
|
|
147
147
|
readonly width: string;
|
|
148
148
|
readonly color: string;
|
|
149
149
|
readonly round: import("@maketribe/utils").PropMergeType<BooleanConstructor, unknown, unknown>;
|
|
@@ -137,13 +137,13 @@ export declare const MKColumnTag: import("vue").DefineComponent<{
|
|
|
137
137
|
__mkPropKey: true;
|
|
138
138
|
};
|
|
139
139
|
}>>, {
|
|
140
|
-
readonly type: import("@maketribe/utils").PropMergeType<unknown, "" | "success" | "warning" | "info" | "danger", unknown>;
|
|
141
140
|
readonly options: {
|
|
142
141
|
label: string;
|
|
143
142
|
value: any;
|
|
144
143
|
color: string;
|
|
145
144
|
type: "" | "success" | "warning" | "info" | "danger";
|
|
146
145
|
}[];
|
|
146
|
+
readonly type: import("@maketribe/utils").PropMergeType<unknown, "" | "success" | "warning" | "info" | "danger", unknown>;
|
|
147
147
|
readonly width: string;
|
|
148
148
|
readonly color: string;
|
|
149
149
|
readonly round: import("@maketribe/utils").PropMergeType<BooleanConstructor, unknown, unknown>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { defineComponent, computed, unref, createVNode, Fragment, createTextVNode } from 'vue';
|
|
1
|
+
import { defineComponent, computed, unref, watch, createVNode, Fragment, createTextVNode } from 'vue';
|
|
2
2
|
import { ElCard, ElButton } from 'element-plus';
|
|
3
3
|
import { MKButton } from '../../../../button/index.js';
|
|
4
4
|
import { MKTableClassifySearch } from './classify-search/index.js';
|
|
@@ -16,6 +16,14 @@ var TableView = /* @__PURE__ */ defineComponent({
|
|
|
16
16
|
}) {
|
|
17
17
|
const dataTable = computed(() => props.dataTable);
|
|
18
18
|
const pageSizes = computed(() => unref(dataTable).pageSizes);
|
|
19
|
+
watch(dataTable, (dataTable2) => {
|
|
20
|
+
const dataFilter = dataTable2.dataFilter;
|
|
21
|
+
if (dataFilter.getColumns().length === 0) {
|
|
22
|
+
dataFilter.setReady();
|
|
23
|
+
}
|
|
24
|
+
}, {
|
|
25
|
+
immediate: true
|
|
26
|
+
});
|
|
19
27
|
return () => {
|
|
20
28
|
const pagination = slots.pagination?.({
|
|
21
29
|
dataTable: unref(dataTable)
|
|
@@ -46,7 +54,7 @@ var TableView = /* @__PURE__ */ defineComponent({
|
|
|
46
54
|
"class": "header-box-main"
|
|
47
55
|
}, null), createVNode("div", {
|
|
48
56
|
"class": "header-box-tools"
|
|
49
|
-
}, [createVNode(MKDataFilterPopover, {
|
|
57
|
+
}, [_dataTable.dataFilter.getColumns().length ? createVNode(MKDataFilterPopover, {
|
|
50
58
|
"dataTable": _dataTable
|
|
51
59
|
}, {
|
|
52
60
|
default: () => [createVNode(ElButton, null, {
|
|
@@ -54,7 +62,7 @@ var TableView = /* @__PURE__ */ defineComponent({
|
|
|
54
62
|
"iconClass": "Filter"
|
|
55
63
|
}, null)]
|
|
56
64
|
})]
|
|
57
|
-
}), buttons])]);
|
|
65
|
+
}) : null, buttons])]);
|
|
58
66
|
} else {
|
|
59
67
|
tools = createVNode("div", {
|
|
60
68
|
"class": "mk-table-view__selection-tip"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table-view.js","sources":["../../../../../../../src/components/data-model/data-table/views/table-view/table-view.tsx"],"sourcesContent":["import { Fragment, VNode, computed, defineComponent, unref } from \"vue\";\nimport { ElButton, ElCard } from \"element-plus\";\n\nimport { MKButton } from \"../../../../button\";\nimport { MKTableClassifySearch } from \"./classify-search\";\nimport { MKDataTablePagination } from \"../../../data-table-pagination\";\nimport { MKDataFilterPopover } from \"../../../data-filter-popover\";\nimport { MKSvgIcon } from \"../../../../svg-icon\";\nimport { MKTable } from \"../table\";\nimport { tableViewProps } from \"./table-view-options\";\n\nexport default defineComponent({\n name: \"MKTableView\",\n props: tableViewProps,\n setup(props, { slots }) {\n const dataTable = computed(() => props.dataTable);\n\n const pageSizes = computed(() => unref(dataTable).pageSizes);\n\n return () => {\n const pagination =\n slots.pagination?.({ dataTable: unref(dataTable) }) ||\n (unref(pageSizes).length ? (\n <MKDataTablePagination dataTable={unref(dataTable)} />\n ) : null);\n\n return (\n <ElCard\n class=\"mk-table-view\"\n v-slots={{\n header: () => {\n const _dataTable = unref(dataTable);\n\n const buttons = _dataTable.buttonTools\n .filter((button) => button.predicate())\n .map((button) => (\n <MKButton button={button} onClick={() => button.handler()} />\n ));\n\n let classifySearch: any = slots[\"classify-search\"]?.() ?? null;\n if (\n !classifySearch &&\n _dataTable.classifySearch.getClassifySearchItems().length\n ) {\n classifySearch = <MKTableClassifySearch />;\n }\n\n let tools: VNode;\n\n if (!_dataTable.getSelection().length) {\n tools = (\n <Fragment>\n <div class=\"header-box-main\"></div>\n <div class=\"header-box-tools\">\n <MKDataFilterPopover dataTable={_dataTable}>\n
|
|
1
|
+
{"version":3,"file":"table-view.js","sources":["../../../../../../../src/components/data-model/data-table/views/table-view/table-view.tsx"],"sourcesContent":["import { Fragment, VNode, computed, defineComponent, unref, watch } from \"vue\";\nimport { ElButton, ElCard } from \"element-plus\";\n\nimport { MKButton } from \"../../../../button\";\nimport { MKTableClassifySearch } from \"./classify-search\";\nimport { MKDataTablePagination } from \"../../../data-table-pagination\";\nimport { MKDataFilterPopover } from \"../../../data-filter-popover\";\nimport { MKSvgIcon } from \"../../../../svg-icon\";\nimport { MKTable } from \"../table\";\nimport { tableViewProps } from \"./table-view-options\";\n\nexport default defineComponent({\n name: \"MKTableView\",\n props: tableViewProps,\n setup(props, { slots }) {\n const dataTable = computed(() => props.dataTable);\n\n const pageSizes = computed(() => unref(dataTable).pageSizes);\n\n watch(\n dataTable,\n (dataTable) => {\n const dataFilter = dataTable.dataFilter;\n\n if (dataFilter.getColumns().length === 0) {\n dataFilter.setReady();\n }\n },\n { immediate: true }\n );\n\n return () => {\n const pagination =\n slots.pagination?.({ dataTable: unref(dataTable) }) ||\n (unref(pageSizes).length ? (\n <MKDataTablePagination dataTable={unref(dataTable)} />\n ) : null);\n\n return (\n <ElCard\n class=\"mk-table-view\"\n v-slots={{\n header: () => {\n const _dataTable = unref(dataTable);\n\n const buttons = _dataTable.buttonTools\n .filter((button) => button.predicate())\n .map((button) => (\n <MKButton button={button} onClick={() => button.handler()} />\n ));\n\n let classifySearch: any = slots[\"classify-search\"]?.() ?? null;\n if (\n !classifySearch &&\n _dataTable.classifySearch.getClassifySearchItems().length\n ) {\n classifySearch = <MKTableClassifySearch />;\n }\n\n let tools: VNode;\n\n if (!_dataTable.getSelection().length) {\n tools = (\n <Fragment>\n <div class=\"header-box-main\"></div>\n <div class=\"header-box-tools\">\n {_dataTable.dataFilter.getColumns().length ? (\n <MKDataFilterPopover dataTable={_dataTable}>\n <ElButton>\n <MKSvgIcon iconClass=\"Filter\" />\n </ElButton>\n </MKDataFilterPopover>\n ) : null}\n {buttons}\n </div>\n </Fragment>\n );\n } else {\n tools = (\n <div class=\"mk-table-view__selection-tip\">\n <div class=\"mk-table-view__selection-tip-left\">\n <span>\n 已选中\n <span class=\"selection-count\">\n {_dataTable.getSelection().length}\n </span>\n 项\n </span>\n </div>\n <div class=\"mk-table-view__selection-tip-right\">\n {_dataTable.batchActionButtonTools.map((button) => (\n <MKButton\n link\n button={button}\n onClick={() => button.handler()}\n />\n ))}\n <ElButton\n link\n onClick={() => _dataTable.clearSelection()}\n >\n 取消选择\n </ElButton>\n </div>\n </div>\n );\n }\n\n return (\n <Fragment>\n {classifySearch}\n <div class=\"mk-table-view__header header-box\">{tools}</div>\n </Fragment>\n );\n },\n }}\n >\n {slots.default?.({ dataTable: unref(dataTable) }) || (\n <MKTable dataTable={unref(dataTable)} />\n )}\n {pagination}\n </ElCard>\n );\n };\n },\n});\n"],"names":["name","props","tableViewProps","setup","slots","dataTable","computed","pageSizes","unref","watch","dataFilter","getColumns","length","setReady","immediate","pagination","_createVNode","MKDataTablePagination","ElCard","default","MKTable","header","_dataTable","buttons","buttonTools","filter","button","predicate","map","MKButton","onClick","handler","classifySearch","getClassifySearchItems","MKTableClassifySearch","tools","getSelection","_Fragment","MKDataFilterPopover","ElButton","MKSvgIcon","_createTextVNode","batchActionButtonTools","clearSelection"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfigForm.js","sources":["../../../../src/dataview/config/ConfigForm.ts"],"sourcesContent":["import {\n DataForm,\n DataFormOptions,\n FormColumn,\n IComponents,\n} from \"@maketribe/dm\";\nimport { defineDataForm } from \"../../define-data-form\";\nimport { ConfigComponents, ITypeResolver } from \"../../core\";\n\nexport type Config<T = any> = {\n id: string;\n key: string;\n type: string;\n value: T;\n};\n\nexport type ConfigFormOptions = DataFormOptions & {\n typeResolver?: ITypeResolver<Config>;\n configComponent?: IComponents;\n};\n\nexport class ConfigForm\n extends DataForm<Config>\n implements ITypeResolver<Config>\n{\n configComponent: IComponents;\n\n constructor(options: ConfigFormOptions = {}) {\n super({ name: \"ms-cfg\", ...options });\n\n this.configComponent = options.configComponent ?? new ConfigComponents();\n }\n\n protected async initialize() {\n await super.initialize();\n\n const defaultType = \"string\";\n this.setColumns([\n new FormColumn({ name: \"id\", label: \"编号\" }),\n new FormColumn({ name: \"key\", label: \"配置键\", required: true }),\n new FormColumn({\n name: \"type\",\n label: \"类型\",\n componentInfo: \"MKFormDataSelect\",\n defaultValue: defaultType,\n required: true,\n componentProps: {\n options: [\n { value: \"string\", label: \"字符串\" },\n { value: \"int\", label: \"整数\" },\n { value: \"json\", label: \"JSON\" },\n ],\n onChange: () => {\n this.handleTypeChange(this.data);\n\n if (this.data) {\n this.data.value = null;\n }\n },\n },\n }),\n new FormColumn({\n name: \"value\",\n label: \"配置值\",\n required: true,\n defaultValue: null,\n rules: [\n {\n validator: (rule, value, callback) => {\n if (this.data?.type === \"json\") {\n try {\n JSON.parse(value);\n } catch (e) {\n callback(new Error(\"JSON格式错误\"));\n }\n }\n\n callback();\n },\n },\n ],\n componentInfo: this.resolveType(defaultType),\n }),\n ]);\n\n this.dataChangeEvent.on(({ data }) => {\n this.handleTypeChange(data);\n });\n }\n\n handleTypeChange(data: Config | null) {\n if (!data) {\n return;\n }\n\n const valueFormColumn = this.getColumn(\"value\")!;\n valueFormColumn.componentInfo =\n this.configComponent.resolveComponent(this.resolveItemType(data!)) ||\n this.configComponent.resolveComponent(\"MKFormInput\")!;\n }\n\n formatItem(item: Config): Config {\n let value = item.value;\n\n if (item.type !== \"json\") {\n try {\n value = JSON.parse(item.value);\n } catch (e) {}\n }\n\n return { ...item, value };\n }\n\n formatSubmitData(data: any) {\n return {\n ...data,\n value: data.type === \"json\" ? data.value : JSON.stringify(data.value),\n };\n }\n\n resolveType(type: string) {\n switch (type) {\n case \"int\":\n return \"MKConfigInputNumber\";\n case \"json\":\n return \"MKConfigJsonEditor\";\n default:\n return \"MKConfigInput\";\n }\n }\n\n resolveItemType(config: Config) {\n return this.resolveType(config.type);\n }\n}\n\ndefineDataForm(ConfigForm);\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ConfigForm.js","sources":["../../../../src/dataview/config/ConfigForm.ts"],"sourcesContent":["import {\n DataForm,\n DataFormOptions,\n FormColumn,\n IComponents,\n} from \"@maketribe/dm\";\nimport { defineDataForm } from \"../../define-data-form\";\nimport { ConfigComponents, ITypeResolver } from \"../../core\";\n\nexport type Config<T = any> = {\n id: string;\n key: string;\n type: string;\n value: T;\n};\n\nexport type ConfigFormOptions = DataFormOptions & {\n typeResolver?: ITypeResolver<Config>;\n configComponent?: IComponents;\n};\n\nexport class ConfigForm\n extends DataForm<Config>\n implements ITypeResolver<Config>\n{\n configComponent: IComponents;\n\n constructor(options: ConfigFormOptions = {}) {\n super({ name: \"ms-cfg\", ...options });\n\n this.configComponent = options.configComponent ?? new ConfigComponents();\n }\n\n protected async initialize() {\n await super.initialize();\n\n const defaultType = \"string\";\n this.setColumns([\n new FormColumn({ name: \"id\", label: \"编号\" }),\n new FormColumn({ name: \"key\", label: \"配置键\", required: true }),\n new FormColumn({\n name: \"type\",\n label: \"类型\",\n componentInfo: \"MKFormDataSelect\",\n defaultValue: defaultType,\n required: true,\n componentProps: {\n options: [\n { value: \"string\", label: \"字符串\" },\n { value: \"int\", label: \"整数\" },\n { value: \"json\", label: \"JSON\" },\n ],\n onChange: () => {\n this.handleTypeChange(this.data);\n\n if (this.data) {\n this.data.value = null;\n }\n },\n },\n }),\n new FormColumn({\n name: \"value\",\n label: \"配置值\",\n required: true,\n defaultValue: null,\n rules: [\n {\n validator: (rule, value, callback) => {\n if (this.data?.type === \"json\") {\n try {\n JSON.parse(value);\n } catch (e) {\n callback(new Error(\"JSON格式错误\"));\n }\n }\n\n callback();\n },\n },\n ],\n componentInfo: this.resolveType(defaultType),\n }),\n new FormColumn({\n name: \"memo\",\n label: \"备注\",\n defaultValue: \"\",\n }),\n ]);\n\n this.dataChangeEvent.on(({ data }) => {\n this.handleTypeChange(data);\n });\n }\n\n handleTypeChange(data: Config | null) {\n if (!data) {\n return;\n }\n\n const valueFormColumn = this.getColumn(\"value\")!;\n valueFormColumn.componentInfo =\n this.configComponent.resolveComponent(this.resolveItemType(data!)) ||\n this.configComponent.resolveComponent(\"MKFormInput\")!;\n }\n\n formatItem(item: Config): Config {\n let value = item.value;\n\n if (item.type !== \"json\") {\n try {\n value = JSON.parse(item.value);\n } catch (e) {}\n }\n\n return { ...item, value };\n }\n\n formatSubmitData(data: any) {\n return {\n ...data,\n value: data.type === \"json\" ? data.value : JSON.stringify(data.value),\n };\n }\n\n resolveType(type: string) {\n switch (type) {\n case \"int\":\n return \"MKConfigInputNumber\";\n case \"json\":\n return \"MKConfigJsonEditor\";\n default:\n return \"MKConfigInput\";\n }\n }\n\n resolveItemType(config: Config) {\n return this.resolveType(config.type);\n }\n}\n\ndefineDataForm(ConfigForm);\n"],"names":[],"mappings":"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"}
|
|
@@ -17,8 +17,8 @@ class ConfigTable extends DataTable {
|
|
|
17
17
|
async initialize() {
|
|
18
18
|
await super.initialize();
|
|
19
19
|
this.setColumns([
|
|
20
|
-
new TableColumn({ name: "id", label: "\u7F16\u53F7", visible: false }),
|
|
21
20
|
new TableColumn({ name: "key", label: "\u914D\u7F6E\u952E" }),
|
|
21
|
+
new TableColumn({ name: "memo", label: "\u5907\u6CE8" }),
|
|
22
22
|
new TableActionColumn()
|
|
23
23
|
]);
|
|
24
24
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfigTable.js","sources":["../../../../src/dataview/config/ConfigTable.ts"],"sourcesContent":["import { Where } from \"@maketribe/request\";\nimport {\n DataTable,\n DataTableOptions,\n TableColumn,\n TableActionColumn,\n} from \"@maketribe/dm\";\nimport { Config } from \"./ConfigForm\";\nimport { R, ResponseConfig } from \"@maketribe/request\";\nimport { defineDataTable } from \"../../define-data-table\";\n\nexport class ConfigTable extends DataTable<Config> {\n private static _instance: ConfigTable | null = null;\n\n static get instance(): ConfigTable {\n if (!ConfigTable._instance) {\n ConfigTable._instance = new ConfigTable();\n ConfigTable._instance.dataFilter.setReady();\n }\n\n return ConfigTable._instance;\n }\n\n constructor(options: DataTableOptions = {}) {\n super({ name: \"ms-cfg\", ...options });\n }\n\n protected async initialize() {\n await super.initialize();\n\n this.setColumns([\n new TableColumn({ name: \"
|
|
1
|
+
{"version":3,"file":"ConfigTable.js","sources":["../../../../src/dataview/config/ConfigTable.ts"],"sourcesContent":["import { Where } from \"@maketribe/request\";\nimport {\n DataTable,\n DataTableOptions,\n TableColumn,\n TableActionColumn,\n} from \"@maketribe/dm\";\nimport { Config } from \"./ConfigForm\";\nimport { R, ResponseConfig } from \"@maketribe/request\";\nimport { defineDataTable } from \"../../define-data-table\";\n\nexport class ConfigTable extends DataTable<Config> {\n private static _instance: ConfigTable | null = null;\n\n static get instance(): ConfigTable {\n if (!ConfigTable._instance) {\n ConfigTable._instance = new ConfigTable();\n ConfigTable._instance.dataFilter.setReady();\n }\n\n return ConfigTable._instance;\n }\n\n constructor(options: DataTableOptions = {}) {\n super({ name: \"ms-cfg\", ...options });\n }\n\n protected async initialize() {\n await super.initialize();\n\n this.setColumns([\n new TableColumn({ name: \"key\", label: \"配置键\" }),\n new TableColumn({ name: \"memo\", label: \"备注\" }),\n new TableActionColumn(),\n ]);\n }\n\n formatItem(item: Config): Config {\n let value = item.value;\n\n try {\n value = JSON.parse(value);\n } catch (e) {}\n\n return { ...item, value };\n }\n\n static async loadConfig<T = any>(\n key: string\n ): Promise<ResponseConfig<R<Config<T>>>> {\n const where = new Where();\n\n where.addCondition(\"key\", \"=\", key);\n\n const dataViewRequest = ConfigTable.instance.dataViewRequest;\n const response = await dataViewRequest.allList({\n data: { condition: where },\n });\n\n return {\n ...response,\n data: {\n ...response.data,\n data: response.data.data?.[0] ?? null,\n },\n };\n }\n}\n\n(window as any).ConfigTable = ConfigTable;\n\ndefineDataTable(ConfigTable);\n"],"names":[],"mappings":";;;;AAWO,MAAM,oBAAoB,SAAkB,CAAA;AAAA,EACjD,OAAe,SAAgC,GAAA,IAAA,CAAA;AAAA,EAE/C,WAAW,QAAwB,GAAA;AACjC,IAAI,IAAA,CAAC,YAAY,SAAW,EAAA;AAC1B,MAAY,WAAA,CAAA,SAAA,GAAY,IAAI,WAAY,EAAA,CAAA;AACxC,MAAY,WAAA,CAAA,SAAA,CAAU,WAAW,QAAS,EAAA,CAAA;AAAA,KAC5C;AAEA,IAAA,OAAO,WAAY,CAAA,SAAA,CAAA;AAAA,GACrB;AAAA,EAEA,WAAA,CAAY,OAA4B,GAAA,EAAI,EAAA;AAC1C,IAAA,KAAA,CAAM,EAAE,IAAA,EAAM,QAAU,EAAA,GAAG,SAAS,CAAA,CAAA;AAAA,GACtC;AAAA,EAEA,MAAgB,UAAa,GAAA;AAC3B,IAAA,MAAM,MAAM,UAAW,EAAA,CAAA;AAEvB,IAAA,IAAA,CAAK,UAAW,CAAA;AAAA,MACd,IAAI,WAAY,CAAA,EAAE,MAAM,KAAO,EAAA,KAAA,EAAO,sBAAO,CAAA;AAAA,MAC7C,IAAI,WAAY,CAAA,EAAE,MAAM,MAAQ,EAAA,KAAA,EAAO,gBAAM,CAAA;AAAA,MAC7C,IAAI,iBAAkB,EAAA;AAAA,KACvB,CAAA,CAAA;AAAA,GACH;AAAA,EAEA,WAAW,IAAsB,EAAA;AAC/B,IAAA,IAAI,QAAQ,IAAK,CAAA,KAAA,CAAA;AAEjB,IAAI,IAAA;AACF,MAAQ,KAAA,GAAA,IAAA,CAAK,MAAM,KAAK,CAAA,CAAA;AAAA,aACjB,CAAG,EAAA;AAAA,KAAC;AAEb,IAAO,OAAA,EAAE,GAAG,IAAA,EAAM,KAAM,EAAA,CAAA;AAAA,GAC1B;AAAA,EAEA,aAAa,WACX,GACuC,EAAA;AACvC,IAAM,MAAA,KAAA,GAAQ,IAAI,KAAM,EAAA,CAAA;AAExB,IAAM,KAAA,CAAA,YAAA,CAAa,KAAO,EAAA,GAAA,EAAK,GAAG,CAAA,CAAA;AAElC,IAAM,MAAA,eAAA,GAAkB,YAAY,QAAS,CAAA,eAAA,CAAA;AAC7C,IAAM,MAAA,QAAA,GAAW,MAAM,eAAA,CAAgB,OAAQ,CAAA;AAAA,MAC7C,IAAA,EAAM,EAAE,SAAA,EAAW,KAAM,EAAA;AAAA,KAC1B,CAAA,CAAA;AAED,IAAO,OAAA;AAAA,MACL,GAAG,QAAA;AAAA,MACH,IAAM,EAAA;AAAA,QACJ,GAAG,QAAS,CAAA,IAAA;AAAA,QACZ,IAAM,EAAA,QAAA,CAAS,IAAK,CAAA,IAAA,GAAO,CAAC,CAAK,IAAA,IAAA;AAAA,OACnC;AAAA,KACF,CAAA;AAAA,GACF;AACF,CAAA;AAEC,MAAA,CAAe,WAAc,GAAA,WAAA,CAAA;AAE9B,eAAA,CAAgB,WAAW,CAAA;;;;"}
|
|
@@ -13,6 +13,15 @@ import '../department/DepartmentForm.js';
|
|
|
13
13
|
import { DepartmentTable } from '../department/DepartmentTable.js';
|
|
14
14
|
import '../department/DepartmentTree.js';
|
|
15
15
|
import { EMAIL_PATTERN } from '../../constants/pattern.js';
|
|
16
|
+
import '../../components/upload-file/upload-file.js';
|
|
17
|
+
import { WebFileUploadContext } from '../../components/upload-file/context/WebFileUploadContext.js';
|
|
18
|
+
import '../../components/material-select/index.js';
|
|
19
|
+
import '../../components/upload-file/context/material-upload-context.js';
|
|
20
|
+
import '../../components/upload-file/context/material-upload-context-options.js';
|
|
21
|
+
import '../../components/upload-file/context/web-file-upload-context.js';
|
|
22
|
+
import '../../components/upload-file/context/web-file-upload-context-options.js';
|
|
23
|
+
import '../../components/upload-file/ui/upload-image/index.js';
|
|
24
|
+
import '../../components/upload-file/upload-file-options.js';
|
|
16
25
|
|
|
17
26
|
class MemberForm extends DataForm {
|
|
18
27
|
constructor(options = {}) {
|
|
@@ -37,7 +46,10 @@ class MemberForm extends DataForm {
|
|
|
37
46
|
name: "avatar",
|
|
38
47
|
label: "\u5934\u50CF",
|
|
39
48
|
defaultValue: null,
|
|
40
|
-
componentInfo: "MKFormImageUpload"
|
|
49
|
+
componentInfo: "MKFormImageUpload",
|
|
50
|
+
componentProps: {
|
|
51
|
+
uploadContext: new WebFileUploadContext()
|
|
52
|
+
}
|
|
41
53
|
}),
|
|
42
54
|
new FormColumn({
|
|
43
55
|
name: "roles",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MemberForm.js","sources":["../../../../src/dataview/member/MemberForm.ts"],"sourcesContent":["import { DataForm, DataFormOptions, FormColumn } from \"@maketribe/dm\";\nimport { defineDataForm } from \"../../define-data-form\";\nimport { RoleTable } from \"../role\";\nimport { DepartmentTable } from \"../department\";\nimport {
|
|
1
|
+
{"version":3,"file":"MemberForm.js","sources":["../../../../src/dataview/member/MemberForm.ts"],"sourcesContent":["import { DataForm, DataFormOptions, FormColumn } from \"@maketribe/dm\";\nimport { defineDataForm } from \"../../define-data-form\";\nimport { RoleTable } from \"../role\";\nimport { DepartmentTable } from \"../department\";\nimport { EMAIL_PATTERN } from \"../../constants\";\nimport { WebFileUploadContext } from \"../../components/upload-file\";\nexport type MemberResult = {\n id: string;\n name: string;\n wechatNo: string;\n nickName: string;\n email: string;\n phone: string;\n account: string;\n avatar: string;\n roles: any[];\n depts: any[];\n valid: number;\n};\n\nexport type Member = {\n id: string;\n name: string;\n wechatNo: string;\n nickName: string;\n email: string;\n phone: string;\n account: string;\n avatar: string | null;\n roles: any[];\n depts: any[];\n valid: number;\n};\n\nexport class MemberForm<\n T extends MemberResult = MemberResult,\n F extends Member = Member\n> extends DataForm<T, F> {\n constructor(options: DataFormOptions = {}) {\n super({ name: \"ms-member\", ...options });\n }\n\n protected async initialize() {\n await super.initialize();\n\n this.setColumns([\n new FormColumn({ name: \"id\", label: \"编号\" }),\n new FormColumn({ name: \"name\", label: \"姓名\", required: true }),\n new FormColumn({ name: \"wechatNo\", label: \"微信号\", defaultValue: null }),\n new FormColumn({ name: \"nickName\", label: \"昵称\", required: true }),\n new FormColumn({\n name: \"email\",\n label: \"邮箱\",\n required: true,\n rules: [{ message: \"邮箱格式有误\", pattern: EMAIL_PATTERN }],\n }),\n new FormColumn({ name: \"phone\", label: \"手机号\", defaultValue: null }),\n new FormColumn({ name: \"account\", label: \"账号\", required: true }),\n new FormColumn({\n name: \"avatar\",\n label: \"头像\",\n defaultValue: null,\n componentInfo: \"MKFormImageUpload\",\n componentProps: {\n uploadContext: new WebFileUploadContext(),\n }\n }),\n new FormColumn({\n name: \"roles\",\n label: \"角色\",\n defaultValue: null,\n componentInfo: \"MKFormDataTableSelect\",\n componentProps: {\n multiple: true,\n labelFieldName: \"name\",\n dataTable: new RoleTable(),\n },\n }),\n new FormColumn({\n name: \"depts\",\n label: \"部门\",\n defaultValue: null,\n componentInfo: \"MKFormDataTableSelect\",\n componentProps: {\n multiple: true,\n labelFieldName: \"name\",\n dataTable: new DepartmentTable(),\n },\n }),\n new FormColumn({ name: \"memo\", label: \"备注\" }),\n ]);\n }\n\n formatSubmitData(data: any) {\n const { roles, depts, ...rest } = data;\n\n const rolesArr = roles?.map((item: any) => {\n return { roleId: item };\n });\n const deptsArr = depts?.map((item: any) => {\n return { deptId: item };\n });\n return { ...rest, roles: rolesArr, depts: deptsArr };\n }\n\n formatItem(item: T): F {\n return {\n id: item.id,\n name: item.name || \"\",\n wechatNo: item.wechatNo || \"\",\n nickName: item.nickName || \"\",\n email: item.email || \"\",\n phone: item.phone || \"\",\n account: item.account || \"\",\n avatar: item.avatar,\n roles: item.roles?.map((role) => role.roleId),\n depts: item.depts?.map((department) => department.deptId),\n valid: item.valid,\n } as F;\n }\n}\n\ndefineDataForm(MemberForm);\n"],"names":[],"mappings":"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"}
|
|
@@ -87,6 +87,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
87
87
|
]
|
|
88
88
|
),
|
|
89
89
|
([_dataTable, _dataForm, name]) => {
|
|
90
|
+
isShowDialog.value = false;
|
|
90
91
|
dataTable.value = _dataTable || DataModelDefines.instance.getDataTable(name);
|
|
91
92
|
dataForm.value = _dataForm || DataModelDefines.instance.getDataForm(name);
|
|
92
93
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dialog.vue2.js","sources":["../../../../../../../../src/page/index/dv/default/single/list/dialog.vue"],"sourcesContent":["<template>\n <MKDataTablePage v-if=\"dataTable\" :data-table=\"dataTable\" selection />\n\n <ElDialog v-if=\"dataForm\" appendToBody v-model=\"isShowDialog\">\n <MKDataForm v-loading=\"dataForm.loading\" :dataForm=\"dataForm\">\n <MKForm :dataForm=\"dataForm\" />\n </MKDataForm>\n\n <template #footer>\n <ElButton\n type=\"primary\"\n :loading=\"dataForm.loading\"\n @click=\"handleSubmit\"\n >\n {{ I18n.instance.translate(\"mk.dataForm.saveButton\") }}\n </ElButton>\n <ElButton @click=\"handleCancel\">\n {{ I18n.instance.translate(\"mk.dataForm.cancelButton\") }}\n </ElButton>\n </template>\n </ElDialog>\n</template>\n\n<script setup lang=\"ts\">\nimport { unref, computed, watch, ref, Ref, nextTick } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport { ElMessage, ElDialog, ElButton } from \"element-plus\";\nimport { I18n } from \"@maketribe/locale\";\nimport { DataForm, DataTable, Dialoger, Messager } from \"@maketribe/dm\";\nimport {\n MKDataTablePage,\n MKDataForm,\n MKForm,\n} from \"../../../../../../components\";\nimport { DataModelDefines } from \"../../../../../../core\";\n\nconst props = defineProps({\n dataTable: { type: DataTable<any> },\n dataForm: { type: DataForm<any> },\n});\n\nconst router = useRouter();\n\nconst isShowDialog = ref(false);\n\nconst dataTable: Ref<DataTable | null> = ref(null);\nconst dataForm: Ref<DataForm | null> = ref(null);\n\nwatch(\n computed(\n () =>\n [\n props.dataTable,\n props.dataForm,\n unref(router.currentRoute).meta.name,\n ] as [DataTable, DataForm, string]\n ),\n ([_dataTable, _dataForm, name]) => {\n dataTable.value =\n _dataTable || DataModelDefines.instance.getDataTable(name);\n dataForm.value = _dataForm || DataModelDefines.instance.getDataForm(name);\n },\n { immediate: true }\n);\n\nwatch(\n dataTable,\n (dataTable, _, onCleanup) => {\n if (dataTable) {\n dataTable.addRecordEvent.on(async () => {\n const _dataForm = unref(dataForm);\n\n if (!_dataForm) {\n console.warn(`没有对应的 (${dataTable.name}) DataForm 实现`);\n return;\n }\n\n isShowDialog.value = true;\n\n _dataForm.addRecord();\n });\n\n dataTable.editRecordEvent.on(async ({ item }) => {\n const _dataForm = unref(dataForm);\n\n if (!_dataForm) {\n console.warn(`没有对应的 (${dataTable.name}) DataForm 实现`);\n return;\n }\n\n isShowDialog.value = true;\n\n try {\n const response = await _dataForm.editRecord(\n item[dataTable.primaryKey]\n );\n\n if (response.data.code !== 200) {\n ElMessage.error(response.data.msg);\n isShowDialog.value = false;\n return;\n }\n } catch (e) {\n console.error(e);\n isShowDialog.value = false;\n }\n });\n }\n\n onCleanup(() => {\n dataTable?.clearSelection();\n dataTable?.dispose();\n });\n },\n { immediate: true }\n);\n\nconst handleSubmit = async () => {\n try {\n const _dataForm = unref(dataForm);\n\n if (!_dataForm) {\n return;\n }\n\n if (!(await _dataForm.validate())) {\n return;\n }\n\n const response = await _dataForm.submit();\n\n if (response.data.code !== 200) {\n ElMessage.error({ message: response.data.msg });\n return;\n }\n\n unref(dataTable)?.load();\n ElMessage.success({\n message: I18n.instance.translate(\"mk.message.saveSuccess\"),\n });\n\n isShowDialog.value = false;\n } catch (e) {\n ElMessage.error({\n message: I18n.instance.translate(\"mk.message.saveError\"),\n });\n }\n};\n\nconst handleCancel = () => {\n unref(dataForm)?.cancel();\n isShowDialog.value = false;\n};\n</script>\n"],"names":["dataTable"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dialog.vue2.js","sources":["../../../../../../../../src/page/index/dv/default/single/list/dialog.vue"],"sourcesContent":["<template>\n <MKDataTablePage v-if=\"dataTable\" :data-table=\"dataTable\" selection />\n\n <ElDialog v-if=\"dataForm\" appendToBody v-model=\"isShowDialog\">\n <MKDataForm v-loading=\"dataForm.loading\" :dataForm=\"dataForm\">\n <MKForm :dataForm=\"dataForm\" />\n </MKDataForm>\n\n <template #footer>\n <ElButton\n type=\"primary\"\n :loading=\"dataForm.loading\"\n @click=\"handleSubmit\"\n >\n {{ I18n.instance.translate(\"mk.dataForm.saveButton\") }}\n </ElButton>\n <ElButton @click=\"handleCancel\">\n {{ I18n.instance.translate(\"mk.dataForm.cancelButton\") }}\n </ElButton>\n </template>\n </ElDialog>\n</template>\n\n<script setup lang=\"ts\">\nimport { unref, computed, watch, ref, Ref, nextTick } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport { ElMessage, ElDialog, ElButton } from \"element-plus\";\nimport { I18n } from \"@maketribe/locale\";\nimport { DataForm, DataTable, Dialoger, Messager } from \"@maketribe/dm\";\nimport {\n MKDataTablePage,\n MKDataForm,\n MKForm,\n} from \"../../../../../../components\";\nimport { DataModelDefines } from \"../../../../../../core\";\n\nconst props = defineProps({\n dataTable: { type: DataTable<any> },\n dataForm: { type: DataForm<any> },\n});\n\nconst router = useRouter();\n\nconst isShowDialog = ref(false);\n\nconst dataTable: Ref<DataTable | null> = ref(null);\nconst dataForm: Ref<DataForm | null> = ref(null);\n\nwatch(\n computed(\n () =>\n [\n props.dataTable,\n props.dataForm,\n unref(router.currentRoute).meta.name,\n ] as [DataTable, DataForm, string]\n ),\n ([_dataTable, _dataForm, name]) => {\n isShowDialog.value = false;\n dataTable.value =\n _dataTable || DataModelDefines.instance.getDataTable(name);\n dataForm.value = _dataForm || DataModelDefines.instance.getDataForm(name);\n },\n { immediate: true }\n);\n\nwatch(\n dataTable,\n (dataTable, _, onCleanup) => {\n if (dataTable) {\n dataTable.addRecordEvent.on(async () => {\n const _dataForm = unref(dataForm);\n\n if (!_dataForm) {\n console.warn(`没有对应的 (${dataTable.name}) DataForm 实现`);\n return;\n }\n\n isShowDialog.value = true;\n\n _dataForm.addRecord();\n });\n\n dataTable.editRecordEvent.on(async ({ item }) => {\n const _dataForm = unref(dataForm);\n\n if (!_dataForm) {\n console.warn(`没有对应的 (${dataTable.name}) DataForm 实现`);\n return;\n }\n\n isShowDialog.value = true;\n\n try {\n const response = await _dataForm.editRecord(\n item[dataTable.primaryKey]\n );\n\n if (response.data.code !== 200) {\n ElMessage.error(response.data.msg);\n isShowDialog.value = false;\n return;\n }\n } catch (e) {\n console.error(e);\n isShowDialog.value = false;\n }\n });\n }\n\n onCleanup(() => {\n dataTable?.clearSelection();\n dataTable?.dispose();\n });\n },\n { immediate: true }\n);\n\nconst handleSubmit = async () => {\n try {\n const _dataForm = unref(dataForm);\n\n if (!_dataForm) {\n return;\n }\n\n if (!(await _dataForm.validate())) {\n return;\n }\n\n const response = await _dataForm.submit();\n\n if (response.data.code !== 200) {\n ElMessage.error({ message: response.data.msg });\n return;\n }\n\n unref(dataTable)?.load();\n ElMessage.success({\n message: I18n.instance.translate(\"mk.message.saveSuccess\"),\n });\n\n isShowDialog.value = false;\n } catch (e) {\n ElMessage.error({\n message: I18n.instance.translate(\"mk.message.saveError\"),\n });\n }\n};\n\nconst handleCancel = () => {\n unref(dataForm)?.cancel();\n isShowDialog.value = false;\n};\n</script>\n"],"names":["dataTable"],"mappings":"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"}
|
|
@@ -86,6 +86,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
86
86
|
]
|
|
87
87
|
),
|
|
88
88
|
([_dataTable, _dataForm, name]) => {
|
|
89
|
+
isShowDataForm.value = false;
|
|
89
90
|
dataTable.value = _dataTable || DataModelDefines.instance.getDataTable(name);
|
|
90
91
|
dataForm.value = _dataForm || DataModelDefines.instance.getDataForm(name);
|
|
91
92
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"normal.vue2.js","sources":["../../../../../../../../src/page/index/dv/default/single/list/normal.vue"],"sourcesContent":["<template>\n <MKDataTablePage\n v-if=\"dataTable\"\n v-show=\"!isShowDataForm\"\n :data-table=\"dataTable\"\n selection\n />\n <MKDataFormPage\n v-if=\"dataForm\"\n v-show=\"isShowDataForm\"\n :data-form=\"dataForm\"\n />\n</template>\n\n<script setup lang=\"ts\">\nimport { unref, computed, watch, ref, Ref } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport { ElMessage } from \"element-plus\";\nimport {
|
|
1
|
+
{"version":3,"file":"normal.vue2.js","sources":["../../../../../../../../src/page/index/dv/default/single/list/normal.vue"],"sourcesContent":["<template>\n <MKDataTablePage\n v-if=\"dataTable\"\n v-show=\"!isShowDataForm\"\n :data-table=\"dataTable\"\n selection\n />\n <MKDataFormPage\n v-if=\"dataForm\"\n v-show=\"isShowDataForm\"\n :data-form=\"dataForm\"\n />\n</template>\n\n<script setup lang=\"ts\">\nimport { unref, computed, watch, ref, Ref } from \"vue\";\nimport { useRouter } from \"vue-router\";\nimport { ElMessage } from \"element-plus\";\nimport { DataForm, DataTable, Dialoger, Messager } from \"@maketribe/dm\";\nimport { MKDataTablePage, MKDataFormPage } from \"../../../../../../components\";\nimport { DataModelDefines } from \"../../../../../../core\";\n\nconst props = defineProps({\n dataTable: { type: DataTable<any> },\n dataForm: { type: DataForm<any> },\n});\n\nconst router = useRouter();\n\nconst isShowDataForm = ref(false);\n\nconst dataTable: Ref<DataTable | null> = ref(null);\nconst dataForm: Ref<DataForm | null> = ref(null);\n\nwatch(\n computed(\n () =>\n [\n props.dataTable,\n props.dataForm,\n unref(router.currentRoute).meta.name,\n ] as [DataTable, DataForm, string]\n ),\n ([_dataTable, _dataForm, name]) => {\n isShowDataForm.value = false;\n dataTable.value =\n _dataTable || DataModelDefines.instance.getDataTable(name);\n dataForm.value = _dataForm || DataModelDefines.instance.getDataForm(name);\n },\n { immediate: true }\n);\n\nwatch(\n dataTable,\n (dataTable, _, onCleanup) => {\n if (dataTable) {\n dataTable.addRecordEvent.on(() => {\n const _dataForm = unref(dataForm);\n\n if (!_dataForm) {\n console.warn(`没有对应的 (${dataTable.name}) DataForm 实现`);\n return;\n }\n\n isShowDataForm.value = true;\n\n _dataForm.addRecord();\n });\n\n dataTable.editRecordEvent.on(async ({ item }) => {\n const _dataForm = unref(dataForm);\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(\n item[dataTable.primaryKey]\n );\n\n if (response.data.code !== 200) {\n ElMessage.error(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 dataTable?.clearSelection();\n dataTable?.dispose();\n });\n },\n { immediate: true }\n);\n\nwatch(\n dataForm,\n (dataForm, _, onCleanup) => {\n if (dataForm) {\n dataForm.submittedEvent.on(() => {\n isShowDataForm.value = false;\n\n unref(dataTable)?.load();\n });\n\n dataForm.cancelEvent.on(() => {\n isShowDataForm.value = false;\n\n unref(dataTable)?.load();\n });\n }\n\n onCleanup(() => {\n dataForm?.dispose();\n });\n },\n { immediate: true }\n);\n</script>\n"],"names":["dataTable","dataForm"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@maketribe/ms-app",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.27",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "dist/cjs",
|
|
6
6
|
"files": [
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
"vue-router": "^4.2.4",
|
|
23
23
|
"@maketribe/dm": "^3.0.11",
|
|
24
24
|
"@maketribe/locale": "^1.0.5",
|
|
25
|
-
"@maketribe/request": "^
|
|
25
|
+
"@maketribe/request": "^2.0.2",
|
|
26
26
|
"@maketribe/utils": "^1.1.4"
|
|
27
27
|
},
|
|
28
28
|
"scripts": {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Fragment, VNode, computed, defineComponent, unref } from "vue";
|
|
1
|
+
import { Fragment, VNode, computed, defineComponent, unref, watch } from "vue";
|
|
2
2
|
import { ElButton, ElCard } from "element-plus";
|
|
3
3
|
|
|
4
4
|
import { MKButton } from "../../../../button";
|
|
@@ -17,6 +17,18 @@ export default defineComponent({
|
|
|
17
17
|
|
|
18
18
|
const pageSizes = computed(() => unref(dataTable).pageSizes);
|
|
19
19
|
|
|
20
|
+
watch(
|
|
21
|
+
dataTable,
|
|
22
|
+
(dataTable) => {
|
|
23
|
+
const dataFilter = dataTable.dataFilter;
|
|
24
|
+
|
|
25
|
+
if (dataFilter.getColumns().length === 0) {
|
|
26
|
+
dataFilter.setReady();
|
|
27
|
+
}
|
|
28
|
+
},
|
|
29
|
+
{ immediate: true }
|
|
30
|
+
);
|
|
31
|
+
|
|
20
32
|
return () => {
|
|
21
33
|
const pagination =
|
|
22
34
|
slots.pagination?.({ dataTable: unref(dataTable) }) ||
|
|
@@ -52,11 +64,13 @@ export default defineComponent({
|
|
|
52
64
|
<Fragment>
|
|
53
65
|
<div class="header-box-main"></div>
|
|
54
66
|
<div class="header-box-tools">
|
|
55
|
-
|
|
56
|
-
<
|
|
57
|
-
<
|
|
58
|
-
|
|
59
|
-
|
|
67
|
+
{_dataTable.dataFilter.getColumns().length ? (
|
|
68
|
+
<MKDataFilterPopover dataTable={_dataTable}>
|
|
69
|
+
<ElButton>
|
|
70
|
+
<MKSvgIcon iconClass="Filter" />
|
|
71
|
+
</ElButton>
|
|
72
|
+
</MKDataFilterPopover>
|
|
73
|
+
) : null}
|
|
60
74
|
{buttons}
|
|
61
75
|
</div>
|
|
62
76
|
</Fragment>
|
|
@@ -29,8 +29,8 @@ export class ConfigTable extends DataTable<Config> {
|
|
|
29
29
|
await super.initialize();
|
|
30
30
|
|
|
31
31
|
this.setColumns([
|
|
32
|
-
new TableColumn({ name: "id", label: "编号", visible: false }),
|
|
33
32
|
new TableColumn({ name: "key", label: "配置键" }),
|
|
33
|
+
new TableColumn({ name: "memo", label: "备注" }),
|
|
34
34
|
new TableActionColumn(),
|
|
35
35
|
]);
|
|
36
36
|
}
|
|
@@ -2,7 +2,6 @@ import { DataForm, DataFormOptions, FormColumn } from "@maketribe/dm";
|
|
|
2
2
|
import { defineDataForm } from "../../define-data-form";
|
|
3
3
|
import { RoleTable } from "../role";
|
|
4
4
|
import { DepartmentTable } from "../department";
|
|
5
|
-
import { WebFileUpload } from "@maketribe/request";
|
|
6
5
|
import { EMAIL_PATTERN } from "../../constants";
|
|
7
6
|
import { WebFileUploadContext } from "../../components/upload-file";
|
|
8
7
|
export type MemberResult = {
|
|
@@ -62,6 +61,9 @@ export class MemberForm<
|
|
|
62
61
|
label: "头像",
|
|
63
62
|
defaultValue: null,
|
|
64
63
|
componentInfo: "MKFormImageUpload",
|
|
64
|
+
componentProps: {
|
|
65
|
+
uploadContext: new WebFileUploadContext(),
|
|
66
|
+
}
|
|
65
67
|
}),
|
|
66
68
|
new FormColumn({
|
|
67
69
|
name: "roles",
|
|
@@ -56,6 +56,7 @@ watch(
|
|
|
56
56
|
] as [DataTable, DataForm, string]
|
|
57
57
|
),
|
|
58
58
|
([_dataTable, _dataForm, name]) => {
|
|
59
|
+
isShowDialog.value = false;
|
|
59
60
|
dataTable.value =
|
|
60
61
|
_dataTable || DataModelDefines.instance.getDataTable(name);
|
|
61
62
|
dataForm.value = _dataForm || DataModelDefines.instance.getDataForm(name);
|
|
@@ -16,7 +16,6 @@
|
|
|
16
16
|
import { unref, computed, watch, ref, Ref } from "vue";
|
|
17
17
|
import { useRouter } from "vue-router";
|
|
18
18
|
import { ElMessage } from "element-plus";
|
|
19
|
-
import { I18n } from "@maketribe/locale";
|
|
20
19
|
import { DataForm, DataTable, Dialoger, Messager } from "@maketribe/dm";
|
|
21
20
|
import { MKDataTablePage, MKDataFormPage } from "../../../../../../components";
|
|
22
21
|
import { DataModelDefines } from "../../../../../../core";
|
|
@@ -43,6 +42,7 @@ watch(
|
|
|
43
42
|
] as [DataTable, DataForm, string]
|
|
44
43
|
),
|
|
45
44
|
([_dataTable, _dataForm, name]) => {
|
|
45
|
+
isShowDataForm.value = false;
|
|
46
46
|
dataTable.value =
|
|
47
47
|
_dataTable || DataModelDefines.instance.getDataTable(name);
|
|
48
48
|
dataForm.value = _dataForm || DataModelDefines.instance.getDataForm(name);
|