ele-admin-plus 1.6.0-beta.1 → 1.6.0-beta.2
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/es/ele-admin-layout/components/layout-tabs.d.ts +5 -5
- package/es/ele-admin-layout/index.d.ts +6 -4
- package/es/ele-admin-layout/index.js +12 -12
- package/es/ele-admin-layout/props.d.ts +3 -1
- package/es/ele-admin-layout/props.js +2 -0
- package/es/ele-autocomplete/index.js +2 -0
- package/es/ele-basic-select/components/select-view.d.ts +3 -3
- package/es/ele-basic-select/index.d.ts +3 -3
- package/es/ele-breadcrumb/index.d.ts +2 -2
- package/es/ele-breadcrumb/props.d.ts +1 -1
- package/es/ele-cascader/index.js +4 -0
- package/es/ele-chat/index.js +7 -7
- package/es/ele-checkbox-group/index.d.ts +14 -14
- package/es/ele-checkbox-group/props.d.ts +6 -6
- package/es/ele-crud/components/edit-modal.d.ts +13 -1
- package/es/ele-crud/components/edit-modal.js +36 -2
- package/es/ele-crud/components/table-extra.d.ts +13 -1
- package/es/ele-crud/components/table-extra.js +22 -3
- package/es/ele-crud/index.d.ts +2 -0
- package/es/ele-crud/index.js +14 -0
- package/es/ele-crud/props.d.ts +3 -1
- package/es/ele-crud/props.js +2 -0
- package/es/ele-crud/types.d.ts +8 -0
- package/es/ele-crud-builder/util.js +20 -1
- package/es/ele-data-table/index.d.ts +3 -3
- package/es/ele-data-table/util.d.ts +1 -1
- package/es/ele-drawer/index.d.ts +59 -59
- package/es/ele-drawer/props.d.ts +21 -21
- package/es/ele-dropdown/components/pro-dropdown.d.ts +42 -42
- package/es/ele-dropdown/index.d.ts +42 -42
- package/es/ele-dropdown/props.d.ts +13 -13
- package/es/ele-dropdown-provider/util.d.ts +1 -1
- package/es/ele-icon/index.d.ts +2 -2
- package/es/ele-icon/props.d.ts +1 -1
- package/es/ele-icon-select/index.d.ts +1 -1
- package/es/ele-image-viewer/index.d.ts +20 -20
- package/es/ele-image-viewer/props.d.ts +9 -9
- package/es/ele-menus/components/menu-items.js +1 -1
- package/es/ele-menus/index.d.ts +30 -30
- package/es/ele-menus/props.d.ts +12 -12
- package/es/ele-modal/index.d.ts +52 -48
- package/es/ele-modal/props.d.ts +16 -16
- package/es/ele-pagination/index.d.ts +25 -25
- package/es/ele-pagination/props.d.ts +11 -11
- package/es/ele-popconfirm/index.d.ts +45 -45
- package/es/ele-popconfirm/props.d.ts +18 -18
- package/es/ele-popover/index.d.ts +47 -47
- package/es/ele-popover/props.d.ts +19 -19
- package/es/ele-pro-form/index.d.ts +19 -19
- package/es/ele-pro-form/props.d.ts +7 -7
- package/es/ele-pro-form-builder/style/index.scss +3 -3
- package/es/ele-pro-layout/index.d.ts +8 -6
- package/es/ele-pro-layout/index.js +2 -1
- package/es/ele-pro-layout/props.d.ts +1 -0
- package/es/ele-pro-layout/util.d.ts +5 -0
- package/es/ele-pro-layout/util.js +10 -3
- package/es/ele-pro-table/index.d.ts +4 -4
- package/es/ele-pro-table/style/index.scss +1 -0
- package/es/ele-qr-code-svg/qrcodegen.js +1 -1
- package/es/ele-radio-group/index.d.ts +21 -21
- package/es/ele-radio-group/props.d.ts +9 -9
- package/es/ele-select/index.d.ts +73 -73
- package/es/ele-select/props.d.ts +29 -29
- package/es/ele-select-tree/index.d.ts +91 -91
- package/es/ele-select-tree/props.d.ts +36 -36
- package/es/ele-steps/index.d.ts +18 -18
- package/es/ele-steps/props.d.ts +7 -7
- package/es/ele-tab-tool/index.d.ts +1 -1
- package/es/ele-table-select/index.d.ts +5 -5
- package/es/ele-tabs/index.d.ts +23 -23
- package/es/ele-tabs/props.d.ts +5 -5
- package/es/ele-tool/index.d.ts +1 -1
- package/es/ele-tooltip/index.d.ts +46 -46
- package/es/ele-tooltip/props.d.ts +18 -18
- package/es/ele-transfer/index.d.ts +20 -20
- package/es/ele-transfer/props.d.ts +9 -9
- package/es/ele-tree-select/index.d.ts +5 -5
- package/es/ele-upload-list/components/list-item.d.ts +2 -2
- package/es/ele-virtual-table/components/body-cell.d.ts +6 -6
- package/es/ele-virtual-table/components/cell-filter.d.ts +1 -1
- package/es/ele-virtual-table/components/header-cell.d.ts +2 -2
- package/es/ele-virtual-table/index.d.ts +6 -6
- package/es/utils/common.js +1 -1
- package/es/utils/hook.d.ts +7 -0
- package/es/utils/modal-hook.d.ts +1 -1
- package/es/utils/theme-util.d.ts +4 -0
- package/lib/ele-admin-layout/components/layout-tabs.d.ts +5 -5
- package/lib/ele-admin-layout/index.cjs +12 -12
- package/lib/ele-admin-layout/index.d.ts +6 -4
- package/lib/ele-admin-layout/props.cjs +2 -0
- package/lib/ele-admin-layout/props.d.ts +3 -1
- package/lib/ele-autocomplete/index.cjs +2 -0
- package/lib/ele-basic-select/components/select-view.d.ts +3 -3
- package/lib/ele-basic-select/index.d.ts +3 -3
- package/lib/ele-breadcrumb/index.d.ts +2 -2
- package/lib/ele-breadcrumb/props.d.ts +1 -1
- package/lib/ele-cascader/index.cjs +4 -0
- package/lib/ele-chat/index.cjs +6 -6
- package/lib/ele-checkbox-group/index.d.ts +14 -14
- package/lib/ele-checkbox-group/props.d.ts +6 -6
- package/lib/ele-crud/components/edit-modal.cjs +36 -2
- package/lib/ele-crud/components/edit-modal.d.ts +13 -1
- package/lib/ele-crud/components/table-extra.cjs +22 -3
- package/lib/ele-crud/components/table-extra.d.ts +13 -1
- package/lib/ele-crud/index.cjs +14 -0
- package/lib/ele-crud/index.d.ts +2 -0
- package/lib/ele-crud/props.cjs +2 -0
- package/lib/ele-crud/props.d.ts +3 -1
- package/lib/ele-crud/types.d.ts +8 -0
- package/lib/ele-crud-builder/util.cjs +20 -1
- package/lib/ele-data-table/index.d.ts +3 -3
- package/lib/ele-data-table/util.d.ts +1 -1
- package/lib/ele-drawer/index.d.ts +59 -59
- package/lib/ele-drawer/props.d.ts +21 -21
- package/lib/ele-dropdown/components/pro-dropdown.d.ts +42 -42
- package/lib/ele-dropdown/index.d.ts +42 -42
- package/lib/ele-dropdown/props.d.ts +13 -13
- package/lib/ele-dropdown-provider/util.d.ts +1 -1
- package/lib/ele-icon/index.d.ts +2 -2
- package/lib/ele-icon/props.d.ts +1 -1
- package/lib/ele-icon-select/index.d.ts +1 -1
- package/lib/ele-image-viewer/index.d.ts +20 -20
- package/lib/ele-image-viewer/props.d.ts +9 -9
- package/lib/ele-menus/components/menu-items.cjs +1 -1
- package/lib/ele-menus/index.d.ts +30 -30
- package/lib/ele-menus/props.d.ts +12 -12
- package/lib/ele-modal/index.d.ts +52 -48
- package/lib/ele-modal/props.d.ts +16 -16
- package/lib/ele-pagination/index.d.ts +25 -25
- package/lib/ele-pagination/props.d.ts +11 -11
- package/lib/ele-popconfirm/index.d.ts +45 -45
- package/lib/ele-popconfirm/props.d.ts +18 -18
- package/lib/ele-popover/index.d.ts +47 -47
- package/lib/ele-popover/props.d.ts +19 -19
- package/lib/ele-pro-form/index.d.ts +19 -19
- package/lib/ele-pro-form/props.d.ts +7 -7
- package/lib/ele-pro-form-builder/style/index.scss +3 -3
- package/lib/ele-pro-layout/index.cjs +2 -1
- package/lib/ele-pro-layout/index.d.ts +8 -6
- package/lib/ele-pro-layout/props.d.ts +1 -0
- package/lib/ele-pro-layout/util.cjs +10 -3
- package/lib/ele-pro-layout/util.d.ts +5 -0
- package/lib/ele-pro-table/index.d.ts +4 -4
- package/lib/ele-pro-table/style/index.scss +1 -0
- package/lib/ele-qr-code-svg/qrcodegen.cjs +1 -1
- package/lib/ele-radio-group/index.d.ts +21 -21
- package/lib/ele-radio-group/props.d.ts +9 -9
- package/lib/ele-select/index.d.ts +73 -73
- package/lib/ele-select/props.d.ts +29 -29
- package/lib/ele-select-tree/index.d.ts +91 -91
- package/lib/ele-select-tree/props.d.ts +36 -36
- package/lib/ele-steps/index.d.ts +18 -18
- package/lib/ele-steps/props.d.ts +7 -7
- package/lib/ele-tab-tool/index.d.ts +1 -1
- package/lib/ele-table-select/index.d.ts +5 -5
- package/lib/ele-tabs/index.d.ts +23 -23
- package/lib/ele-tabs/props.d.ts +5 -5
- package/lib/ele-tool/index.d.ts +1 -1
- package/lib/ele-tooltip/index.d.ts +46 -46
- package/lib/ele-tooltip/props.d.ts +18 -18
- package/lib/ele-transfer/index.d.ts +20 -20
- package/lib/ele-transfer/props.d.ts +9 -9
- package/lib/ele-tree-select/index.d.ts +5 -5
- package/lib/ele-upload-list/components/list-item.d.ts +2 -2
- package/lib/ele-virtual-table/components/body-cell.d.ts +6 -6
- package/lib/ele-virtual-table/components/cell-filter.d.ts +1 -1
- package/lib/ele-virtual-table/components/header-cell.d.ts +2 -2
- package/lib/ele-virtual-table/index.d.ts +6 -6
- package/lib/utils/common.cjs +1 -1
- package/lib/utils/hook.d.ts +7 -0
- package/lib/utils/modal-hook.d.ts +1 -1
- package/lib/utils/theme-util.d.ts +4 -0
- package/package.json +45 -4
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
const vue = require("vue");
|
|
3
3
|
const common = require("../../utils/common");
|
|
4
|
+
const util$2 = require("../../ele-data-table/util");
|
|
4
5
|
const EleModal = require("../../ele-modal/index");
|
|
5
6
|
const EleProForm = require("../../ele-pro-form/index");
|
|
6
7
|
const util = require("../../ele-pro-form/util");
|
|
@@ -18,6 +19,8 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
18
19
|
title: String,
|
|
19
20
|
/** 编辑配置 */
|
|
20
21
|
editConfig: Object,
|
|
22
|
+
/** 列表配置 */
|
|
23
|
+
listConfig: Object,
|
|
21
24
|
/** 字段数据 */
|
|
22
25
|
fields: Array,
|
|
23
26
|
/** 获取字段数据对应的表单项的方法 */
|
|
@@ -31,6 +34,8 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
31
34
|
proFormComponent: [String, Object, Function],
|
|
32
35
|
/** 修改数据接口 */
|
|
33
36
|
editApi: [Function, String],
|
|
37
|
+
/** 详情接口 */
|
|
38
|
+
detailApi: [Function, String],
|
|
34
39
|
/** 高级表单组件类型数据 */
|
|
35
40
|
itemTypeData: Array,
|
|
36
41
|
/** 远程数据源请求工具 */
|
|
@@ -44,7 +49,11 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
44
49
|
/** 编辑保存失败事件 */
|
|
45
50
|
editError: (_e) => true,
|
|
46
51
|
/** 编辑保存成功事件 */
|
|
47
|
-
editDone: (_msg) => true
|
|
52
|
+
editDone: (_msg) => true,
|
|
53
|
+
/** 详情查询失败事件 */
|
|
54
|
+
detailError: (_e) => true,
|
|
55
|
+
/** 详情查询成功事件 */
|
|
56
|
+
detailDone: (_data) => true
|
|
48
57
|
},
|
|
49
58
|
setup(__props, { emit: __emit }) {
|
|
50
59
|
const props = __props;
|
|
@@ -128,11 +137,36 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
128
137
|
}
|
|
129
138
|
return items;
|
|
130
139
|
});
|
|
140
|
+
const queryDetailData = () => {
|
|
141
|
+
if (!props.detailApi) {
|
|
142
|
+
return;
|
|
143
|
+
}
|
|
144
|
+
const detailApiFunc = typeof props.detailApi === "function" ? props.detailApi : props.detailApi.startsWith(util$1.codeStringPrefix) ? props.getAndCacheCode(props.detailApi) : void 0;
|
|
145
|
+
if (!detailApiFunc) {
|
|
146
|
+
return;
|
|
147
|
+
}
|
|
148
|
+
loading.value = true;
|
|
149
|
+
const rowKey = props.listConfig?.tableProps?.rowKey;
|
|
150
|
+
const dataKey = rowKey ? util$2.getValue(props.data, rowKey) : void 0;
|
|
151
|
+
detailApiFunc(dataKey, props.data).then((data) => {
|
|
152
|
+
loading.value = false;
|
|
153
|
+
handleResetEditForm(data);
|
|
154
|
+
emit("detailDone", data);
|
|
155
|
+
}).catch((e) => {
|
|
156
|
+
loading.value = false;
|
|
157
|
+
emit("detailError", e);
|
|
158
|
+
});
|
|
159
|
+
};
|
|
131
160
|
vue.watch(
|
|
132
161
|
() => props.modelValue,
|
|
133
162
|
(visible) => {
|
|
134
163
|
if (visible) {
|
|
135
|
-
|
|
164
|
+
if (!props.detailApi) {
|
|
165
|
+
handleResetEditForm(props.data);
|
|
166
|
+
} else {
|
|
167
|
+
handleResetEditForm();
|
|
168
|
+
queryDetailData();
|
|
169
|
+
}
|
|
136
170
|
}
|
|
137
171
|
}
|
|
138
172
|
);
|
|
@@ -2,7 +2,7 @@ import { PropType } from 'vue';
|
|
|
2
2
|
import { UserComponent } from '../../ele-app/types';
|
|
3
3
|
import { DataItem } from '../../ele-data-table/types';
|
|
4
4
|
import { ProFormItemTypeData, ScreenSize } from '../../ele-pro-form/types';
|
|
5
|
-
import { EditConfig, CrudField, EditApi, GetFieldsFormItemsFunction, GetAndCacheCodeFunction } from '../types';
|
|
5
|
+
import { EditConfig, ListConfig, CrudField, EditApi, DetailApi, GetFieldsFormItemsFunction, GetAndCacheCodeFunction } from '../types';
|
|
6
6
|
|
|
7
7
|
declare function __VLS_template(): Partial<Record<string, (_: any) => any>> & Partial<Record<string, (_: any) => any>>;
|
|
8
8
|
declare const __VLS_component: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
|
|
@@ -14,6 +14,8 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
|
|
|
14
14
|
title: StringConstructor;
|
|
15
15
|
/** 编辑配置 */
|
|
16
16
|
editConfig: PropType<EditConfig>;
|
|
17
|
+
/** 列表配置 */
|
|
18
|
+
listConfig: PropType<ListConfig>;
|
|
17
19
|
/** 字段数据 */
|
|
18
20
|
fields: PropType<CrudField[]>;
|
|
19
21
|
/** 获取字段数据对应的表单项的方法 */
|
|
@@ -27,6 +29,8 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
|
|
|
27
29
|
proFormComponent: PropType<UserComponent>;
|
|
28
30
|
/** 修改数据接口 */
|
|
29
31
|
editApi: PropType<EditApi | string>;
|
|
32
|
+
/** 详情接口 */
|
|
33
|
+
detailApi: PropType<DetailApi | string>;
|
|
30
34
|
/** 高级表单组件类型数据 */
|
|
31
35
|
itemTypeData: PropType<ProFormItemTypeData[]>;
|
|
32
36
|
/** 远程数据源请求工具 */
|
|
@@ -37,6 +41,8 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
|
|
|
37
41
|
"update:modelValue": (_visible?: boolean | undefined) => void;
|
|
38
42
|
editError: (_e: Error) => void;
|
|
39
43
|
editDone: (_msg?: string | undefined) => void;
|
|
44
|
+
detailError: (_e: Error) => void;
|
|
45
|
+
detailDone: (_data?: DataItem | undefined) => void;
|
|
40
46
|
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
|
|
41
47
|
/** 弹窗是否打开 */
|
|
42
48
|
modelValue: PropType<boolean>;
|
|
@@ -46,6 +52,8 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
|
|
|
46
52
|
title: StringConstructor;
|
|
47
53
|
/** 编辑配置 */
|
|
48
54
|
editConfig: PropType<EditConfig>;
|
|
55
|
+
/** 列表配置 */
|
|
56
|
+
listConfig: PropType<ListConfig>;
|
|
49
57
|
/** 字段数据 */
|
|
50
58
|
fields: PropType<CrudField[]>;
|
|
51
59
|
/** 获取字段数据对应的表单项的方法 */
|
|
@@ -59,6 +67,8 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
|
|
|
59
67
|
proFormComponent: PropType<UserComponent>;
|
|
60
68
|
/** 修改数据接口 */
|
|
61
69
|
editApi: PropType<EditApi | string>;
|
|
70
|
+
/** 详情接口 */
|
|
71
|
+
detailApi: PropType<DetailApi | string>;
|
|
62
72
|
/** 高级表单组件类型数据 */
|
|
63
73
|
itemTypeData: PropType<ProFormItemTypeData[]>;
|
|
64
74
|
/** 远程数据源请求工具 */
|
|
@@ -69,6 +79,8 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
|
|
|
69
79
|
"onUpdate:modelValue"?: ((_visible?: boolean | undefined) => any) | undefined;
|
|
70
80
|
onEditError?: ((_e: Error) => any) | undefined;
|
|
71
81
|
onEditDone?: ((_msg?: string | undefined) => any) | undefined;
|
|
82
|
+
onDetailError?: ((_e: Error) => any) | undefined;
|
|
83
|
+
onDetailDone?: ((_data?: DataItem | undefined) => any) | undefined;
|
|
72
84
|
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
|
73
85
|
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, ReturnType<typeof __VLS_template>>;
|
|
74
86
|
export default _default;
|
|
@@ -18,6 +18,8 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
18
18
|
addConfig: [Object, Boolean],
|
|
19
19
|
/** 修改配置 */
|
|
20
20
|
editConfig: [Object, Boolean],
|
|
21
|
+
/** 列表配置 */
|
|
22
|
+
listConfig: Object,
|
|
21
23
|
/** 字段数据 */
|
|
22
24
|
fields: Array,
|
|
23
25
|
/** 获取字段数据对应的表单项的方法 */
|
|
@@ -31,6 +33,8 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
31
33
|
addApi: [Function, String],
|
|
32
34
|
/** 修改数据接口 */
|
|
33
35
|
editApi: [Function, String],
|
|
36
|
+
/** 详情接口 */
|
|
37
|
+
detailApi: [Function, String],
|
|
34
38
|
/** 高级表单组件类型数据 */
|
|
35
39
|
itemTypeData: Array,
|
|
36
40
|
/** 远程数据源请求工具 */
|
|
@@ -57,7 +61,11 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
57
61
|
/** 修改保存失败事件 */
|
|
58
62
|
editError: (_e) => true,
|
|
59
63
|
/** 修改保存成功事件 */
|
|
60
|
-
editDone: (_msg) => true
|
|
64
|
+
editDone: (_msg) => true,
|
|
65
|
+
/** 详情查询失败事件 */
|
|
66
|
+
detailError: (_e) => true,
|
|
67
|
+
/** 详情查询成功事件 */
|
|
68
|
+
detailDone: (_data) => true
|
|
61
69
|
},
|
|
62
70
|
setup(__props, { emit: __emit }) {
|
|
63
71
|
const slotExcludes = ["default"];
|
|
@@ -74,6 +82,12 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
74
82
|
const handleEditDone = (msg) => {
|
|
75
83
|
emit("editDone", msg);
|
|
76
84
|
};
|
|
85
|
+
const handleDetailError = (e) => {
|
|
86
|
+
emit("detailError", e);
|
|
87
|
+
};
|
|
88
|
+
const handleDetailDone = (data) => {
|
|
89
|
+
emit("detailDone", data);
|
|
90
|
+
};
|
|
77
91
|
const handleUpdateAddVisible = (visible) => {
|
|
78
92
|
emit("update:addVisible", visible);
|
|
79
93
|
};
|
|
@@ -88,6 +102,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
88
102
|
modelValue: __props.addVisible,
|
|
89
103
|
title: __props.lang.add,
|
|
90
104
|
editConfig: __props.addConfig === true ? {} : __props.addConfig,
|
|
105
|
+
listConfig: __props.listConfig,
|
|
91
106
|
fields: __props.fields,
|
|
92
107
|
getFieldsEditFormItems: vue.unref(util.getFieldsAddFormItems),
|
|
93
108
|
getAndCacheCode: __props.getAndCacheCode,
|
|
@@ -110,23 +125,27 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
110
125
|
])
|
|
111
126
|
};
|
|
112
127
|
})
|
|
113
|
-
]), 1032, ["data", "modelValue", "title", "editConfig", "fields", "getFieldsEditFormItems", "getAndCacheCode", "proFormComponent", "editApi", "itemTypeData", "httpRequest", "screenSize"])) : vue.createCommentVNode("", true),
|
|
128
|
+
]), 1032, ["data", "modelValue", "title", "editConfig", "listConfig", "fields", "getFieldsEditFormItems", "getAndCacheCode", "proFormComponent", "editApi", "itemTypeData", "httpRequest", "screenSize"])) : vue.createCommentVNode("", true),
|
|
114
129
|
__props.editConfig !== false ? (vue.openBlock(), vue.createBlock(EditModal, {
|
|
115
130
|
key: 1,
|
|
116
131
|
data: __props.editData,
|
|
117
132
|
modelValue: __props.editVisible,
|
|
118
133
|
title: __props.lang.edit,
|
|
119
134
|
editConfig: __props.editConfig === true ? {} : __props.editConfig,
|
|
135
|
+
listConfig: __props.listConfig,
|
|
120
136
|
fields: __props.fields,
|
|
121
137
|
getFieldsEditFormItems: vue.unref(util.getFieldsEditFormItems),
|
|
122
138
|
getAndCacheCode: __props.getAndCacheCode,
|
|
123
139
|
proFormComponent: __props.proFormComponent,
|
|
124
140
|
editApi: __props.editApi,
|
|
141
|
+
detailApi: __props.detailApi,
|
|
125
142
|
itemTypeData: __props.itemTypeData,
|
|
126
143
|
httpRequest: __props.httpRequest,
|
|
127
144
|
screenSize: __props.screenSize,
|
|
128
145
|
onEditError: handleEditError,
|
|
129
146
|
onEditDone: handleEditDone,
|
|
147
|
+
onDetailError: handleDetailError,
|
|
148
|
+
onDetailDone: handleDetailDone,
|
|
130
149
|
"onUpdate:modelValue": handleUpdateEditVisible
|
|
131
150
|
}, vue.createSlots({ _: 2 }, [
|
|
132
151
|
vue.renderList(Object.keys(_ctx.$slots).filter(
|
|
@@ -139,7 +158,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
139
158
|
])
|
|
140
159
|
};
|
|
141
160
|
})
|
|
142
|
-
]), 1032, ["data", "modelValue", "title", "editConfig", "fields", "getFieldsEditFormItems", "getAndCacheCode", "proFormComponent", "editApi", "itemTypeData", "httpRequest", "screenSize"])) : vue.createCommentVNode("", true),
|
|
161
|
+
]), 1032, ["data", "modelValue", "title", "editConfig", "listConfig", "fields", "getFieldsEditFormItems", "getAndCacheCode", "proFormComponent", "editApi", "detailApi", "itemTypeData", "httpRequest", "screenSize"])) : vue.createCommentVNode("", true),
|
|
143
162
|
vue.renderSlot(_ctx.$slots, "default")
|
|
144
163
|
], 64);
|
|
145
164
|
};
|
|
@@ -2,7 +2,7 @@ import { PropType } from 'vue';
|
|
|
2
2
|
import { UserComponent } from '../../ele-app/types';
|
|
3
3
|
import { DataItem } from '../../ele-data-table/types';
|
|
4
4
|
import { ProFormItemTypeData, ScreenSize } from '../../ele-pro-form/types';
|
|
5
|
-
import { EditConfig, BtnClickAction, CrudField, EditApi, GetAndCacheCodeFunction, CrudLocale } from '../types';
|
|
5
|
+
import { EditConfig, ListConfig, BtnClickAction, CrudField, EditApi, DetailApi, GetAndCacheCodeFunction, CrudLocale } from '../types';
|
|
6
6
|
|
|
7
7
|
declare function __VLS_template(): Partial<Record<string, (_: any) => any>> & Partial<Record<string, (_: any) => any>> & {
|
|
8
8
|
default?(_: {}): any;
|
|
@@ -20,6 +20,8 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
|
|
|
20
20
|
addConfig: PropType<EditConfig | boolean>;
|
|
21
21
|
/** 修改配置 */
|
|
22
22
|
editConfig: PropType<EditConfig | boolean>;
|
|
23
|
+
/** 列表配置 */
|
|
24
|
+
listConfig: PropType<ListConfig>;
|
|
23
25
|
/** 字段数据 */
|
|
24
26
|
fields: PropType<CrudField[]>;
|
|
25
27
|
/** 获取字段数据对应的表单项的方法 */
|
|
@@ -33,6 +35,8 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
|
|
|
33
35
|
addApi: PropType<EditApi | string>;
|
|
34
36
|
/** 修改数据接口 */
|
|
35
37
|
editApi: PropType<EditApi | string>;
|
|
38
|
+
/** 详情接口 */
|
|
39
|
+
detailApi: PropType<DetailApi | string>;
|
|
36
40
|
/** 高级表单组件类型数据 */
|
|
37
41
|
itemTypeData: PropType<ProFormItemTypeData[]>;
|
|
38
42
|
/** 远程数据源请求工具 */
|
|
@@ -52,6 +56,8 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
|
|
|
52
56
|
btnClick: (_action: BtnClickAction, _e: MouseEvent, _item?: DataItem | undefined) => void;
|
|
53
57
|
addDone: (_msg?: string | undefined) => void;
|
|
54
58
|
editDone: (_msg?: string | undefined) => void;
|
|
59
|
+
detailError: (_e: Error) => void;
|
|
60
|
+
detailDone: (_data?: DataItem | undefined) => void;
|
|
55
61
|
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
|
|
56
62
|
/** 添加弹窗是否打开 */
|
|
57
63
|
addVisible: PropType<boolean>;
|
|
@@ -65,6 +71,8 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
|
|
|
65
71
|
addConfig: PropType<EditConfig | boolean>;
|
|
66
72
|
/** 修改配置 */
|
|
67
73
|
editConfig: PropType<EditConfig | boolean>;
|
|
74
|
+
/** 列表配置 */
|
|
75
|
+
listConfig: PropType<ListConfig>;
|
|
68
76
|
/** 字段数据 */
|
|
69
77
|
fields: PropType<CrudField[]>;
|
|
70
78
|
/** 获取字段数据对应的表单项的方法 */
|
|
@@ -78,6 +86,8 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
|
|
|
78
86
|
addApi: PropType<EditApi | string>;
|
|
79
87
|
/** 修改数据接口 */
|
|
80
88
|
editApi: PropType<EditApi | string>;
|
|
89
|
+
/** 详情接口 */
|
|
90
|
+
detailApi: PropType<DetailApi | string>;
|
|
81
91
|
/** 高级表单组件类型数据 */
|
|
82
92
|
itemTypeData: PropType<ProFormItemTypeData[]>;
|
|
83
93
|
/** 远程数据源请求工具 */
|
|
@@ -97,6 +107,8 @@ declare const __VLS_component: import('vue').DefineComponent<import('vue').Extra
|
|
|
97
107
|
onBtnClick?: ((_action: BtnClickAction, _e: MouseEvent, _item?: DataItem | undefined) => any) | undefined;
|
|
98
108
|
onAddDone?: ((_msg?: string | undefined) => any) | undefined;
|
|
99
109
|
onEditDone?: ((_msg?: string | undefined) => any) | undefined;
|
|
110
|
+
onDetailError?: ((_e: Error) => any) | undefined;
|
|
111
|
+
onDetailDone?: ((_data?: DataItem | undefined) => any) | undefined;
|
|
100
112
|
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
|
101
113
|
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, ReturnType<typeof __VLS_template>>;
|
|
102
114
|
export default _default;
|
package/lib/ele-crud/index.cjs
CHANGED
|
@@ -376,6 +376,17 @@ const index = /* @__PURE__ */ vue.defineComponent({
|
|
|
376
376
|
});
|
|
377
377
|
reloadTable();
|
|
378
378
|
};
|
|
379
|
+
const handleDetailError = (e) => {
|
|
380
|
+
const msg = e?.message;
|
|
381
|
+
if (!msg) {
|
|
382
|
+
console.error(e);
|
|
383
|
+
} else {
|
|
384
|
+
message$1.error({
|
|
385
|
+
...props2.messageOptions || {},
|
|
386
|
+
message: msg
|
|
387
|
+
});
|
|
388
|
+
}
|
|
389
|
+
};
|
|
379
390
|
const handleUpdateAddVisible = (visible) => {
|
|
380
391
|
addVisible.value = visible;
|
|
381
392
|
};
|
|
@@ -511,11 +522,13 @@ const index = /* @__PURE__ */ vue.defineComponent({
|
|
|
511
522
|
"editData": editData.value,
|
|
512
523
|
"addConfig": props2.addConfig,
|
|
513
524
|
"editConfig": props2.editConfig,
|
|
525
|
+
"listConfig": props2.listConfig,
|
|
514
526
|
"fields": props2.fields,
|
|
515
527
|
"getAndCacheCode": getAndCacheCode,
|
|
516
528
|
"proFormComponent": props2.proFormComponent,
|
|
517
529
|
"addApi": props2.addApi,
|
|
518
530
|
"editApi": props2.editApi,
|
|
531
|
+
"detailApi": props2.detailApi,
|
|
519
532
|
"itemTypeData": props2.itemTypeData,
|
|
520
533
|
"httpRequest": props2.httpRequest,
|
|
521
534
|
"screenSize": props2.screenSize,
|
|
@@ -525,6 +538,7 @@ const index = /* @__PURE__ */ vue.defineComponent({
|
|
|
525
538
|
"onAddDone": handleAddDone,
|
|
526
539
|
"onEditError": handleEditError,
|
|
527
540
|
"onEditDone": handleEditDone,
|
|
541
|
+
"onDetailError": handleDetailError,
|
|
528
542
|
"onUpdate:addVisible": handleUpdateAddVisible,
|
|
529
543
|
"onUpdate:editVisible": handleUpdateEditVisible
|
|
530
544
|
}, {
|
package/lib/ele-crud/index.d.ts
CHANGED
|
@@ -23,6 +23,7 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
|
|
|
23
23
|
deleteApi: import('vue').PropType<DeleteApi | string>;
|
|
24
24
|
addApi: import('vue').PropType<import('./types').EditApi | string>;
|
|
25
25
|
editApi: import('vue').PropType<import('./types').EditApi | string>;
|
|
26
|
+
detailApi: import('vue').PropType<import('./types').DetailApi | string>;
|
|
26
27
|
treeListApi: import('vue').PropType<Array<Record<string, any>> | TreeListApi | string>;
|
|
27
28
|
messageOptions: import('vue').PropType<import('../ele-app/plus').EleMessageOptions>;
|
|
28
29
|
itemTypeData: import('vue').PropType<import('../ele-pro-form/types').ProFormItemTypeData[]>;
|
|
@@ -61,6 +62,7 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
|
|
|
61
62
|
deleteApi: import('vue').PropType<DeleteApi | string>;
|
|
62
63
|
addApi: import('vue').PropType<import('./types').EditApi | string>;
|
|
63
64
|
editApi: import('vue').PropType<import('./types').EditApi | string>;
|
|
65
|
+
detailApi: import('vue').PropType<import('./types').DetailApi | string>;
|
|
64
66
|
treeListApi: import('vue').PropType<Array<Record<string, any>> | TreeListApi | string>;
|
|
65
67
|
messageOptions: import('vue').PropType<import('../ele-app/plus').EleMessageOptions>;
|
|
66
68
|
itemTypeData: import('vue').PropType<import('../ele-pro-form/types').ProFormItemTypeData[]>;
|
package/lib/ele-crud/props.cjs
CHANGED
package/lib/ele-crud/props.d.ts
CHANGED
|
@@ -4,7 +4,7 @@ import { EleMessageOptions } from '../ele-app/plus';
|
|
|
4
4
|
import { DataItem } from '../ele-data-table/types';
|
|
5
5
|
import { Datasource } from '../ele-pro-table/types';
|
|
6
6
|
import { ProFormItemTypeData, ScreenSize } from '../ele-pro-form/types';
|
|
7
|
-
import { CrudField, ListConfig, SearchConfig, EditConfig, PageConfig, DeleteApi, EditApi, TreeListApi, CrudLocale } from './types';
|
|
7
|
+
import { CrudField, ListConfig, SearchConfig, EditConfig, PageConfig, DeleteApi, EditApi, DetailApi, TreeListApi, CrudLocale } from './types';
|
|
8
8
|
|
|
9
9
|
/**
|
|
10
10
|
* 属性
|
|
@@ -41,6 +41,8 @@ export declare const crudProps: {
|
|
|
41
41
|
addApi: PropType<EditApi | string>;
|
|
42
42
|
/** 修改数据接口 */
|
|
43
43
|
editApi: PropType<EditApi | string>;
|
|
44
|
+
/** 详情接口 */
|
|
45
|
+
detailApi: PropType<DetailApi | string>;
|
|
44
46
|
/** 侧栏树组件数据接口 */
|
|
45
47
|
treeListApi: PropType<Array<Record<string, any>> | TreeListApi | string>;
|
|
46
48
|
/** 消息提示组件属性 */
|
package/lib/ele-crud/types.d.ts
CHANGED
|
@@ -204,6 +204,14 @@ export type DeleteApi = (
|
|
|
204
204
|
*/
|
|
205
205
|
export type EditApi = (data: DataItem) => Promise<string | undefined>;
|
|
206
206
|
|
|
207
|
+
/**
|
|
208
|
+
* 详情接口
|
|
209
|
+
*/
|
|
210
|
+
export type DetailApi = (
|
|
211
|
+
dataKey?: DataKey,
|
|
212
|
+
data?: DataItem
|
|
213
|
+
) => Promise<DataItem>;
|
|
214
|
+
|
|
207
215
|
/**
|
|
208
216
|
* 侧栏树组件数据接口
|
|
209
217
|
*/
|
|
@@ -77,7 +77,7 @@ const defaultPageConfigFormItems = [
|
|
|
77
77
|
props: {
|
|
78
78
|
title: "删除接口设置",
|
|
79
79
|
codeTips,
|
|
80
|
-
codePlaceholder: `async (
|
|
80
|
+
codePlaceholder: `async (dataKeys, data) => {
|
|
81
81
|
// 示例
|
|
82
82
|
const res = await httpRequest.delete('/system/user/batch', {
|
|
83
83
|
data: dataKeys
|
|
@@ -125,6 +125,25 @@ const defaultPageConfigFormItems = [
|
|
|
125
125
|
}
|
|
126
126
|
return Promise.reject(new Error(res.data.message));
|
|
127
127
|
}
|
|
128
|
+
`,
|
|
129
|
+
codePrefix: util.codeStringPrefix
|
|
130
|
+
}
|
|
131
|
+
},
|
|
132
|
+
{
|
|
133
|
+
label: "详情接口",
|
|
134
|
+
prop: "detailApi",
|
|
135
|
+
type: "proFormBuilderEventEdit",
|
|
136
|
+
props: {
|
|
137
|
+
title: "详情接口设置",
|
|
138
|
+
codeTips,
|
|
139
|
+
codePlaceholder: `async (dataKey, data) => {
|
|
140
|
+
// 示例
|
|
141
|
+
const res = await httpRequest.get('/system/user/' + dataKey);
|
|
142
|
+
if (res.data.code === 0) {
|
|
143
|
+
return res.data.data;
|
|
144
|
+
}
|
|
145
|
+
return Promise.reject(new Error(res.data.message));
|
|
146
|
+
}
|
|
128
147
|
`,
|
|
129
148
|
codePrefix: util.codeStringPrefix
|
|
130
149
|
}
|
|
@@ -61,6 +61,7 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
|
|
|
61
61
|
default: boolean;
|
|
62
62
|
};
|
|
63
63
|
lazy: BooleanConstructor;
|
|
64
|
+
load: import('vue').PropType<import('element-plus').TableProps<any>["load"]>;
|
|
64
65
|
emptyText: StringConstructor;
|
|
65
66
|
showHeader: {
|
|
66
67
|
type: BooleanConstructor;
|
|
@@ -104,7 +105,6 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
|
|
|
104
105
|
checkStrictly: boolean;
|
|
105
106
|
};
|
|
106
107
|
};
|
|
107
|
-
load: import('vue').PropType<import('element-plus').TableProps<any>["load"]>;
|
|
108
108
|
tableLayout: {
|
|
109
109
|
type: import('vue').PropType<import('element-plus').TableProps<Record<string, any>>["tableLayout"]>;
|
|
110
110
|
default: string;
|
|
@@ -232,6 +232,7 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
|
|
|
232
232
|
default: boolean;
|
|
233
233
|
};
|
|
234
234
|
lazy: BooleanConstructor;
|
|
235
|
+
load: import('vue').PropType<import('element-plus').TableProps<any>["load"]>;
|
|
235
236
|
emptyText: StringConstructor;
|
|
236
237
|
showHeader: {
|
|
237
238
|
type: BooleanConstructor;
|
|
@@ -275,7 +276,6 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
|
|
|
275
276
|
checkStrictly: boolean;
|
|
276
277
|
};
|
|
277
278
|
};
|
|
278
|
-
load: import('vue').PropType<import('element-plus').TableProps<any>["load"]>;
|
|
279
279
|
tableLayout: {
|
|
280
280
|
type: import('vue').PropType<import('element-plus').TableProps<Record<string, any>>["tableLayout"]>;
|
|
281
281
|
default: string;
|
|
@@ -300,6 +300,7 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
|
|
|
300
300
|
nativeScrollbar: BooleanConstructor;
|
|
301
301
|
}>> & Readonly<{
|
|
302
302
|
onSelect?: ((_selection: DataItem[], _row: DataItem) => any) | undefined;
|
|
303
|
+
onExpandChange?: ((_row: DataItem, _expanded: boolean) => any) | undefined;
|
|
303
304
|
onScroll?: ((_option: {
|
|
304
305
|
scrollLeft: number;
|
|
305
306
|
scrollTop: number;
|
|
@@ -307,7 +308,6 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
|
|
|
307
308
|
onFilterChange?: ((_filter: Filter) => any) | undefined;
|
|
308
309
|
onCellClick?: ((_row: DataItem, _column: Column, _cell: HTMLTableCellElement, _e: MouseEvent) => any) | undefined;
|
|
309
310
|
onCellContextmenu?: ((_row: DataItem, _column: Column, _cell: HTMLTableCellElement, _e: MouseEvent) => any) | undefined;
|
|
310
|
-
onExpandChange?: ((_row: DataItem, _expanded: boolean) => any) | undefined;
|
|
311
311
|
onCellDblclick?: ((_row: DataItem, _column: Column, _cell: HTMLTableCellElement, _e: MouseEvent) => any) | undefined;
|
|
312
312
|
"onUpdate:currentRowKey"?: ((_currentRowKey?: DataKey | undefined) => any) | undefined;
|
|
313
313
|
"onUpdate:selectedRowKeys"?: ((_selectedRowKeys?: DataKey[] | undefined) => any) | undefined;
|
|
@@ -154,6 +154,7 @@ export declare function useEmits(emit: Emitter<DataTableEmitsType>): {
|
|
|
154
154
|
'onUpdate:currentRowKey': (currentRowKey?: DataKey) => void;
|
|
155
155
|
'onUpdate:selectedRowKeys': (selectedRowKeys: DataKey[]) => void;
|
|
156
156
|
onSelect: (_selection: DataItem[], _row: DataItem) => any;
|
|
157
|
+
onExpandChange: (_row: DataItem, _expanded: boolean) => any;
|
|
157
158
|
onScroll: (_option: {
|
|
158
159
|
scrollLeft: number;
|
|
159
160
|
scrollTop: number;
|
|
@@ -174,5 +175,4 @@ export declare function useEmits(emit: Emitter<DataTableEmitsType>): {
|
|
|
174
175
|
onFilterChange: (_filter: Filter) => any;
|
|
175
176
|
onCurrentChange: (_current?: DataItem | null | undefined, _old?: DataItem | null | undefined) => any;
|
|
176
177
|
onHeaderDragend: (_width: number, _old: number, _column: Column, _e: MouseEvent) => any;
|
|
177
|
-
onExpandChange: (_row: DataItem, _expanded: boolean) => any;
|
|
178
178
|
};
|