@kp-ui/lowcode 2.15.0-beta.8 → 2.16.0-alpha.3
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/install.js +18 -16
- package/install.js.map +1 -1
- package/package.json +2 -1
- package/src/components/FormRender/FormContainer.vue.js +55 -0
- package/src/components/FormRender/FormContainer.vue.js.map +1 -0
- package/src/components/FormRender/FormContainer.vue2.js +5 -0
- package/src/components/FormRender/FormContainer.vue2.js.map +1 -0
- package/src/components/FormRender/index.vue.js +2 -2
- package/src/components/FormRender/index.vue2.js +35 -40
- package/src/components/FormRender/index.vue2.js.map +1 -1
- package/src/components/FormRender/useFormContext.js +128 -120
- package/src/components/FormRender/useFormContext.js.map +1 -1
- package/src/components/form-designer/form-widget/container-widget/useTableWidget.js +116 -114
- package/src/components/form-designer/form-widget/container-widget/useTableWidget.js.map +1 -1
- package/src/components/form-designer/form-widget/container-widget/vf-dialog-widget.vue.js +2 -2
- package/src/components/form-designer/form-widget/container-widget/vf-dialog-widget.vue2.js +22 -16
- package/src/components/form-designer/form-widget/container-widget/vf-dialog-widget.vue2.js.map +1 -1
- package/src/components/form-designer/form-widget/field-widget/rich-editor-widget.vue2.js.map +1 -1
- package/src/components/form-designer/form-widget/field-widget/useField.js +33 -33
- package/src/components/form-designer/form-widget/field-widget/useField.js.map +1 -1
- package/src/components/form-designer/setting-panel/form-setting.vue.js +2 -2
- package/src/components/form-designer/setting-panel/form-setting.vue2.js +100 -126
- package/src/components/form-designer/setting-panel/form-setting.vue2.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/button-list-editor.vue2.js +45 -39
- package/src/components/form-designer/setting-panel/property-editor/button-list-editor.vue2.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-data-table/data-table-showButtonsColumn-editor.vue.js +2 -2
- package/src/components/form-designer/setting-panel/property-editor/container-data-table/data-table-showButtonsColumn-editor.vue2.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-vf-dialog/cancelButtonLabel-editor.vue2.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/container-vf-dialog/left-editor.vue.js +5 -0
- package/src/components/form-designer/setting-panel/property-editor/container-vf-dialog/left-editor.vue.js.map +1 -0
- package/src/components/form-designer/setting-panel/property-editor/container-vf-dialog/left-editor.vue2.js +38 -0
- package/src/components/form-designer/setting-panel/property-editor/container-vf-dialog/left-editor.vue2.js.map +1 -0
- package/src/components/form-designer/setting-panel/property-editor/container-vf-dialog/top-editor.vue.js +5 -0
- package/src/components/form-designer/setting-panel/property-editor/container-vf-dialog/top-editor.vue.js.map +1 -0
- package/src/components/form-designer/setting-panel/property-editor/container-vf-dialog/top-editor.vue2.js +38 -0
- package/src/components/form-designer/setting-panel/property-editor/container-vf-dialog/top-editor.vue2.js.map +1 -0
- package/src/components/form-designer/setting-panel/property-editor/container-vf-dialog/width-editor.vue2.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onTableChange-editor.vue2.js +4 -4
- package/src/components/form-designer/setting-panel/property-editor/event-handler/onTableChange-editor.vue2.js.map +1 -1
- package/src/components/form-designer/setting-panel/property-editor/index.js +158 -156
- package/src/components/form-designer/setting-panel/property-editor/index.js.map +1 -1
- package/src/components/form-designer/setting-panel/propertyRegister.js +2 -0
- package/src/components/form-designer/setting-panel/propertyRegister.js.map +1 -1
- package/src/components/form-designer/widget-panel/containers/vf-dialog.js +34 -10
- package/src/components/form-designer/widget-panel/containers/vf-dialog.js.map +1 -1
- package/src/components/form-render/container-items/data-table-widget.vue.js +1 -1
- package/src/components/form-render/container-items/data-table-widget.vue2.js +60 -61
- package/src/components/form-render/container-items/data-table-widget.vue2.js.map +1 -1
- package/src/components/form-render/dynamic-dialog.vue.js +72 -75
- package/src/components/form-render/dynamic-dialog.vue.js.map +1 -1
- package/src/components/public/ActionButtonListDialog.vue.js +1 -1
- package/src/components/public/ActionButtonListDialog.vue2.js +115 -94
- package/src/components/public/ActionButtonListDialog.vue2.js.map +1 -1
- package/src/components/public/ActionButtonListRender.vue.js +15 -13
- package/src/components/public/ActionButtonListRender.vue.js.map +1 -1
- package/src/components/public/ActionButtonListRender.vue2.js +35 -25
- package/src/components/public/ActionButtonListRender.vue2.js.map +1 -1
- package/src/constants/EditorTypeEnum.js +1 -1
- package/src/constants/EditorTypeEnum.js.map +1 -1
- package/src/hooks/useLowcode.js.map +1 -1
- package/src/lang/en-US.js +1 -0
- package/src/lang/en-US.js.map +1 -1
- package/src/lang/zh-CN.js +1 -0
- package/src/lang/zh-CN.js.map +1 -1
- package/src/utils/util.js +21 -20
- package/src/utils/util.js.map +1 -1
- package/stats.html +1 -1
- package/styles/style.css +1 -1
- package/src/components/FormRender/FormContainer.js +0 -52
- package/src/components/FormRender/FormContainer.js.map +0 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import t from "./data-table-widget.vue2.js";
|
|
2
2
|
/* empty css */
|
|
3
3
|
import a from "../../../../_virtual/_plugin-vue_export-helper.js";
|
|
4
|
-
const m = /* @__PURE__ */ a(t, [["__scopeId", "data-v-
|
|
4
|
+
const m = /* @__PURE__ */ a(t, [["__scopeId", "data-v-e792a706"]]);
|
|
5
5
|
export {
|
|
6
6
|
m as default
|
|
7
7
|
};
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
import
|
|
3
|
-
import { ComponentNameEnum as
|
|
4
|
-
import { useVxeTable as
|
|
5
|
-
import { useField as
|
|
6
|
-
import { useTableWidget as
|
|
7
|
-
const
|
|
8
|
-
name:
|
|
9
|
-
componentName:
|
|
1
|
+
import { defineComponent as N, watchEffect as p, onMounted as W, createBlock as K, createCommentVNode as V, unref as o, openBlock as I, mergeProps as L, withCtx as z, createElementVNode as B, normalizeStyle as H, createVNode as O } from "vue";
|
|
2
|
+
import j from "./container-wrapper.vue.js";
|
|
3
|
+
import { ComponentNameEnum as q, ContainerTypeEnum as A } from "../../../constants/WidgetTypeEnum.js";
|
|
4
|
+
import { useVxeTable as G, Table as J } from "tmgc2-share";
|
|
5
|
+
import { useField as Q } from "../../form-designer/form-widget/field-widget/useField.js";
|
|
6
|
+
import { useTableWidget as U } from "../../form-designer/form-widget/container-widget/useTableWidget.js";
|
|
7
|
+
const te = /* @__PURE__ */ N({
|
|
8
|
+
name: A.DataTable,
|
|
9
|
+
componentName: q.FieldWidget,
|
|
10
10
|
__name: "data-table-widget",
|
|
11
11
|
props: {
|
|
12
12
|
widget: {},
|
|
@@ -17,80 +17,79 @@ const ne = /* @__PURE__ */ W({
|
|
|
17
17
|
subFormRowIndex: {},
|
|
18
18
|
subFormRowId: {}
|
|
19
19
|
},
|
|
20
|
-
setup(
|
|
21
|
-
var
|
|
22
|
-
const t =
|
|
23
|
-
isLoading:
|
|
24
|
-
tableProps:
|
|
20
|
+
setup(u, { expose: m }) {
|
|
21
|
+
var d;
|
|
22
|
+
const t = u, { fieldModel: f, handleHidden: g, defineExposed: w, customClass: b } = Q(t), {
|
|
23
|
+
isLoading: C,
|
|
24
|
+
tableProps: R,
|
|
25
25
|
tableWidth: h,
|
|
26
|
-
pagintion:
|
|
27
|
-
setPagination:
|
|
28
|
-
setTableRef:
|
|
29
|
-
initTableSoureData:
|
|
30
|
-
handleTableChange:
|
|
31
|
-
|
|
32
|
-
onRunEvent: n,
|
|
26
|
+
pagintion: s,
|
|
27
|
+
setPagination: r,
|
|
28
|
+
setTableRef: v,
|
|
29
|
+
initTableSoureData: l,
|
|
30
|
+
handleTableChange: k,
|
|
31
|
+
onRunEvent: a,
|
|
33
32
|
onSortChange: S,
|
|
34
33
|
onCheckboxChange: x,
|
|
35
34
|
tableDefinExpoed: E
|
|
36
|
-
} =
|
|
35
|
+
} = U({
|
|
37
36
|
props: t,
|
|
38
|
-
fieldModel:
|
|
37
|
+
fieldModel: f
|
|
39
38
|
});
|
|
40
|
-
|
|
41
|
-
t.field.options.showPagination ||
|
|
39
|
+
p(() => {
|
|
40
|
+
t.field.options.showPagination || r({
|
|
42
41
|
total: 0
|
|
43
42
|
});
|
|
44
|
-
}),
|
|
45
|
-
|
|
43
|
+
}), s.value.onChange = (e, F) => {
|
|
44
|
+
l();
|
|
46
45
|
};
|
|
47
|
-
const { tableRef:
|
|
46
|
+
const { tableRef: n, register: T, selectedRowInfo: i, sorts: c, selectRow: y, delSelectRow: D } = G({
|
|
48
47
|
props: {
|
|
49
48
|
rowKey: t.field.options.rowKey,
|
|
50
|
-
hasRowSelection: (
|
|
49
|
+
hasRowSelection: (d = t.field.options.rowSelection) == null ? void 0 : d.hasRowSelection,
|
|
51
50
|
clickRowCheck: t.field.options.colorRow
|
|
52
51
|
},
|
|
53
52
|
events: {
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
53
|
+
dataChange: (e) => k({ sorts: c.value }),
|
|
54
|
+
cellDblclick: (e) => a(e, "onDblclick"),
|
|
55
|
+
cellMouseenter: (e) => a(e, "onMouseenter"),
|
|
56
|
+
cellMouseleave: (e) => a(e, "onMouseleave")
|
|
57
57
|
},
|
|
58
58
|
callbacks: {
|
|
59
59
|
onCheckboxChange: x,
|
|
60
60
|
onSortChange: S,
|
|
61
|
-
cellClick: (e) =>
|
|
61
|
+
cellClick: (e) => a(e, "onClick")
|
|
62
62
|
}
|
|
63
|
-
}),
|
|
64
|
-
return
|
|
65
|
-
|
|
66
|
-
}),
|
|
67
|
-
|
|
68
|
-
}),
|
|
69
|
-
...
|
|
63
|
+
}), P = () => i.value.selectedRowKeys, _ = () => i.value.selectedRows, M = () => n.value;
|
|
64
|
+
return p(() => {
|
|
65
|
+
n.value && v(n.value);
|
|
66
|
+
}), W(() => {
|
|
67
|
+
l();
|
|
68
|
+
}), m({
|
|
69
|
+
...w,
|
|
70
70
|
...E,
|
|
71
|
-
delSelectRow:
|
|
72
|
-
getFieldEditor:
|
|
73
|
-
selectRow:
|
|
74
|
-
getSelectedRowKeys:
|
|
75
|
-
getSelectedRows:
|
|
76
|
-
setPagination:
|
|
77
|
-
sorts:
|
|
78
|
-
selectedRowInfo:
|
|
79
|
-
loadDataTableDataSource:
|
|
80
|
-
fieldEditor:
|
|
81
|
-
}), (e,
|
|
82
|
-
default:
|
|
83
|
-
|
|
71
|
+
delSelectRow: D,
|
|
72
|
+
getFieldEditor: M,
|
|
73
|
+
selectRow: y,
|
|
74
|
+
getSelectedRowKeys: P,
|
|
75
|
+
getSelectedRows: _,
|
|
76
|
+
setPagination: r,
|
|
77
|
+
sorts: c,
|
|
78
|
+
selectedRowInfo: i,
|
|
79
|
+
loadDataTableDataSource: l,
|
|
80
|
+
fieldEditor: n
|
|
81
|
+
}), (e, F) => o(g) ? V("", !0) : (I(), K(j, L({ key: 0 }, t, { customClass: o(b) }), {
|
|
82
|
+
default: z(() => [
|
|
83
|
+
B("div", {
|
|
84
84
|
class: "talbe-wrapper",
|
|
85
|
-
style:
|
|
85
|
+
style: H({ width: o(h) })
|
|
86
86
|
}, [
|
|
87
|
-
|
|
87
|
+
O(o(J), {
|
|
88
88
|
onRegister: o(T),
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
}, null, 8, ["onRegister", "onChange", "tableProps", "loading", "pagination"])
|
|
89
|
+
tableProps: o(R),
|
|
90
|
+
loading: o(C),
|
|
91
|
+
pagination: o(s)
|
|
92
|
+
}, null, 8, ["onRegister", "tableProps", "loading", "pagination"])
|
|
94
93
|
], 4)
|
|
95
94
|
]),
|
|
96
95
|
_: 1
|
|
@@ -98,6 +97,6 @@ const ne = /* @__PURE__ */ W({
|
|
|
98
97
|
}
|
|
99
98
|
});
|
|
100
99
|
export {
|
|
101
|
-
|
|
100
|
+
te as default
|
|
102
101
|
};
|
|
103
102
|
//# sourceMappingURL=data-table-widget.vue2.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-table-widget.vue2.js","sources":["../../../../../src/components/form-render/container-items/data-table-widget.vue"],"sourcesContent":["<template>\n <container-wrapper v-bind=\"props\" :customClass=\"customClass\" v-if=\"!handleHidden\">\n <div class=\"talbe-wrapper\" :style=\"{ width: tableWidth }\">\n <Table\n @register=\"register\"\n
|
|
1
|
+
{"version":3,"file":"data-table-widget.vue2.js","sources":["../../../../../src/components/form-render/container-items/data-table-widget.vue"],"sourcesContent":["<template>\n <container-wrapper v-bind=\"props\" :customClass=\"customClass\" v-if=\"!handleHidden\">\n <div class=\"talbe-wrapper\" :style=\"{ width: tableWidth }\">\n <Table\n @register=\"register\"\n :tableProps=\"tableProps\"\n :loading=\"isLoading\"\n :pagination=\"pagintion\"\n />\n </div>\n </container-wrapper>\n</template>\n\n<script lang=\"ts\" setup>\n import ContainerWrapper from './container-wrapper.vue';\n import { ContainerTypeEnum, ComponentNameEnum } from '@/constants/WidgetTypeEnum';\n import { onMounted, watchEffect } from 'vue';\n import { useVxeTable, Table } from 'tmgc2-share';\n import { WidgetProps } from '@/components/form-designer/form-widget/container-widget/useContainerWidget';\n import { DataTableWidget } from '@/components/form-designer/widget-panel/advanced';\n import { useField } from '@/components/form-designer/form-widget/field-widget/useField';\n import { useTableWidget } from '@/components/form-designer/form-widget/container-widget/useTableWidget';\n\n const props = defineProps<WidgetProps<DataTableWidget>>();\n defineOptions({\n name: ContainerTypeEnum.DataTable,\n componentName: ComponentNameEnum.FieldWidget\n });\n\n const { fieldModel, handleHidden, defineExposed, customClass } = useField(props);\n\n const {\n isLoading,\n tableProps,\n tableWidth,\n pagintion,\n setPagination,\n setTableRef,\n initTableSoureData,\n handleTableChange,\n onRunEvent,\n onSortChange,\n onCheckboxChange,\n tableDefinExpoed\n } = useTableWidget({\n props,\n fieldModel\n });\n\n watchEffect(() => {\n if (!props.field.options.showPagination) {\n setPagination({\n total: 0\n });\n }\n });\n\n pagintion.value.onChange = (current, pageSize) => {\n initTableSoureData();\n };\n\n const { tableRef, register, selectedRowInfo, sorts, selectRow, delSelectRow } = useVxeTable({\n props: {\n rowKey: props.field.options.rowKey,\n hasRowSelection: props.field.options.rowSelection?.hasRowSelection,\n clickRowCheck: props.field.options.colorRow\n },\n events: {\n dataChange: params => handleTableChange({ sorts: sorts.value }),\n cellDblclick: params => onRunEvent(params, 'onDblclick'),\n cellMouseenter: params => onRunEvent(params, 'onMouseenter'),\n cellMouseleave: params => onRunEvent(params, 'onMouseleave')\n },\n callbacks: {\n onCheckboxChange,\n onSortChange,\n cellClick: params => onRunEvent(params, 'onClick')\n }\n });\n\n const getSelectedRowKeys = () => {\n return selectedRowInfo.value.selectedRowKeys;\n };\n\n const getSelectedRows = () => {\n return selectedRowInfo.value.selectedRows;\n };\n\n /**\n * 获取字段编辑器\n * @returns 字段编辑器\n */\n const getFieldEditor = () => {\n // 获取内置的el表单组件\n return tableRef.value;\n };\n\n watchEffect(() => {\n if (tableRef.value) {\n setTableRef(tableRef.value);\n }\n });\n\n onMounted(() => {\n initTableSoureData();\n });\n\n defineExpose({\n ...defineExposed,\n ...tableDefinExpoed,\n delSelectRow,\n getFieldEditor,\n selectRow,\n getSelectedRowKeys,\n getSelectedRows,\n setPagination,\n sorts,\n selectedRowInfo,\n loadDataTableDataSource: initTableSoureData,\n fieldEditor: tableRef\n });\n</script>\n\n<style lang=\"scss\" scoped>\n .talbe-wrapper {\n width: 100%;\n .vxe-grid {\n width: 100%;\n }\n &__pagination {\n margin-top: 10px;\n display: flex;\n justify-content: end;\n }\n }\n</style>\n"],"names":["props","__props","fieldModel","handleHidden","defineExposed","customClass","useField","isLoading","tableProps","tableWidth","pagintion","setPagination","setTableRef","initTableSoureData","handleTableChange","onRunEvent","onSortChange","onCheckboxChange","tableDefinExpoed","useTableWidget","watchEffect","current","pageSize","tableRef","register","selectedRowInfo","sorts","selectRow","delSelectRow","useVxeTable","_a","params","getSelectedRowKeys","getSelectedRows","getFieldEditor","onMounted","__expose","_unref","_openBlock","_createBlock","ContainerWrapper","_mergeProps","_createElementVNode","_createVNode","Table"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAuBI,UAAMA,IAAQC,GAMR,EAAE,YAAAC,GAAY,cAAAC,GAAc,eAAAC,GAAe,aAAAC,EAAA,IAAgBC,EAASN,CAAK,GAEzE;AAAA,MACF,WAAAO;AAAA,MACA,YAAAC;AAAA,MACA,YAAAC;AAAA,MACA,WAAAC;AAAA,MACA,eAAAC;AAAA,MACA,aAAAC;AAAA,MACA,oBAAAC;AAAA,MACA,mBAAAC;AAAA,MACA,YAAAC;AAAA,MACA,cAAAC;AAAA,MACA,kBAAAC;AAAA,MACA,kBAAAC;AAAA,IAAA,IACAC,EAAe;AAAA,MACf,OAAAnB;AAAA,MACA,YAAAE;AAAA,IAAA,CACH;AAED,IAAAkB,EAAY,MAAM;AACd,MAAKpB,EAAM,MAAM,QAAQ,kBACrBW,EAAc;AAAA,QACV,OAAO;AAAA,MAAA,CACV;AAAA,IAET,CAAC,GAEDD,EAAU,MAAM,WAAW,CAACW,GAASC,MAAa;AAC9C,MAAAT,EAAA;AAAA,IACJ;AAEA,UAAM,EAAE,UAAAU,GAAU,UAAAC,GAAU,iBAAAC,GAAiB,OAAAC,GAAO,WAAAC,GAAW,cAAAC,EAAA,IAAiBC,EAAY;AAAA,MACxF,OAAO;AAAA,QACH,QAAQ7B,EAAM,MAAM,QAAQ;AAAA,QAC5B,kBAAiB8B,IAAA9B,EAAM,MAAM,QAAQ,iBAApB,gBAAA8B,EAAkC;AAAA,QACnD,eAAe9B,EAAM,MAAM,QAAQ;AAAA,MAAA;AAAA,MAEvC,QAAQ;AAAA,QACJ,YAAY,CAAA+B,MAAUjB,EAAkB,EAAE,OAAOY,EAAM,OAAO;AAAA,QAC9D,cAAc,CAAAK,MAAUhB,EAAWgB,GAAQ,YAAY;AAAA,QACvD,gBAAgB,CAAAA,MAAUhB,EAAWgB,GAAQ,cAAc;AAAA,QAC3D,gBAAgB,CAAAA,MAAUhB,EAAWgB,GAAQ,cAAc;AAAA,MAAA;AAAA,MAE/D,WAAW;AAAA,QACP,kBAAAd;AAAA,QACA,cAAAD;AAAA,QACA,WAAW,CAAAe,MAAUhB,EAAWgB,GAAQ,SAAS;AAAA,MAAA;AAAA,IACrD,CACH,GAEKC,IAAqB,MAChBP,EAAgB,MAAM,iBAG3BQ,IAAkB,MACbR,EAAgB,MAAM,cAO3BS,IAAiB,MAEZX,EAAS;AAGpB,WAAAH,EAAY,MAAM;AACd,MAAIG,EAAS,SACTX,EAAYW,EAAS,KAAK;AAAA,IAElC,CAAC,GAEDY,EAAU,MAAM;AACZ,MAAAtB,EAAA;AAAA,IACJ,CAAC,GAEDuB,EAAa;AAAA,MACT,GAAGhC;AAAA,MACH,GAAGc;AAAA,MACH,cAAAU;AAAA,MACA,gBAAAM;AAAA,MACA,WAAAP;AAAA,MACA,oBAAAK;AAAA,MACA,iBAAAC;AAAA,MACA,eAAAtB;AAAA,MACA,OAAAe;AAAA,MACA,iBAAAD;AAAA,MACA,yBAAyBZ;AAAA,MACzB,aAAaU;AAAA,IAAA,CAChB,aAvHmEc,EAAAlC,CAAA,iBAApEmC,KAAAC,EASoBC,GATpBC,EASoB,EAAA,KAAA,EAAA,GATOzC,GAAK,EAAG,aAAaqC,EAAAhC,CAAA,EAAA,CAAW,GAAA;AAAA,iBACvD,MAOM;AAAA,QAPNqC,EAOM,OAAA;AAAA,UAPD,OAAM;AAAA,UAAiB,kBAAgBL,EAAA5B,CAAA,GAAU;AAAA,QAAA;UAClDkC,EAKEN,EAAAO,CAAA,GAAA;AAAA,YAJG,YAAUP,EAAAb,CAAA;AAAA,YACV,YAAYa,EAAA7B,CAAA;AAAA,YACZ,SAAS6B,EAAA9B,CAAA;AAAA,YACT,YAAY8B,EAAA3B,CAAA;AAAA,UAAA;;;;;;;"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
import { useExecFunction as
|
|
3
|
-
import G from "./SubmitButtonRender.vue.js";
|
|
1
|
+
import { defineComponent as H, computed as d, ref as u, onBeforeUnmount as J, createBlock as P, openBlock as A, unref as c, mergeProps as U, withCtx as g, createElementVNode as I, createVNode as x, nextTick as q } from "vue";
|
|
2
|
+
import { useExecFunction as z, TpfModal as G } from "tmgc2-share";
|
|
4
3
|
import { useLowcode as K } from "../../hooks/useLowcode.js";
|
|
5
4
|
import Q from "../FormRender/index.vue.js";
|
|
6
|
-
|
|
5
|
+
import W from "../public/ActionButtonListRender.vue.js";
|
|
6
|
+
const X = { class: "dialog-content" }, oe = /* @__PURE__ */ H({
|
|
7
7
|
name: "dynamic-dialog",
|
|
8
8
|
__name: "dynamic-dialog",
|
|
9
9
|
props: {
|
|
@@ -45,109 +45,106 @@ const W = { class: "dialog-content" }, oe = /* @__PURE__ */ J({
|
|
|
45
45
|
default: null
|
|
46
46
|
}
|
|
47
47
|
},
|
|
48
|
-
setup(n, { expose:
|
|
49
|
-
const
|
|
50
|
-
formCode:
|
|
51
|
-
...
|
|
52
|
-
}), R =
|
|
53
|
-
...
|
|
54
|
-
parentDom:
|
|
48
|
+
setup(n, { expose: C }) {
|
|
49
|
+
const t = n, h = d(() => t.options.height || "500px"), f = u(null), p = u(!1), l = u(!1), { context: i, asyncExecuteFunction: m, executeFunction: Y } = z(), { vfdRef: s, isLoading: v, getComponentJson: O } = K({
|
|
50
|
+
formCode: t.options.formCode,
|
|
51
|
+
...t.vfCtx
|
|
52
|
+
}), R = d(() => ({
|
|
53
|
+
...t.parentFormRef,
|
|
54
|
+
parentDom: i.value,
|
|
55
55
|
getParentFormRef: y
|
|
56
|
-
})),
|
|
57
|
-
|
|
58
|
-
var
|
|
59
|
-
console.log(
|
|
56
|
+
})), F = d(() => t.options.cancelButtonHidden && t.options.okButtonHidden ? { footer: null } : {});
|
|
57
|
+
J(() => {
|
|
58
|
+
var e, o;
|
|
59
|
+
console.log(t.parentFormRef), (o = (e = t.parentFormRef) == null ? void 0 : e.setChildFormRef) == null || o.call(e, null);
|
|
60
60
|
});
|
|
61
|
-
const
|
|
62
|
-
v.value =
|
|
63
|
-
},
|
|
64
|
-
|
|
65
|
-
},
|
|
61
|
+
const D = (e) => {
|
|
62
|
+
v.value = e;
|
|
63
|
+
}, k = (e) => {
|
|
64
|
+
t.options.title = e;
|
|
65
|
+
}, w = () => {
|
|
66
66
|
l.value = !0;
|
|
67
|
+
}, B = async ({ result: e }) => {
|
|
68
|
+
e !== !1 && await r();
|
|
67
69
|
}, j = () => {
|
|
68
|
-
l.value = !0,
|
|
69
|
-
var
|
|
70
|
-
(
|
|
70
|
+
l.value = !0, q(async () => {
|
|
71
|
+
var e, o, a;
|
|
72
|
+
(e = t.options) != null && e.readMode && ((o = s.value) == null || o.setReadMode(!0)), await O([], t.options.formCode), (a = s.value) == null || a.setDialogOrDrawerRef(i.value), t.parentFormRef && t.parentFormRef.setChildFormRef(s.value), b();
|
|
71
73
|
});
|
|
72
74
|
}, E = async () => {
|
|
73
|
-
if (
|
|
74
|
-
return await
|
|
75
|
-
functionBody:
|
|
75
|
+
if (t.options.onDialogBeforeClose)
|
|
76
|
+
return await m({
|
|
77
|
+
functionBody: t.options.onDialogBeforeClose
|
|
76
78
|
});
|
|
77
79
|
l.value = !1;
|
|
78
|
-
},
|
|
79
|
-
|
|
80
|
-
},
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
return await r({
|
|
85
|
-
functionBody: e.options.onDialogOpened
|
|
80
|
+
}, r = () => {
|
|
81
|
+
l.value = !1;
|
|
82
|
+
}, b = async () => {
|
|
83
|
+
if (t.options.onDialogOpened)
|
|
84
|
+
return await m({
|
|
85
|
+
functionBody: t.options.onDialogOpened
|
|
86
86
|
});
|
|
87
|
-
}, y = () =>
|
|
88
|
-
var
|
|
89
|
-
(a = (o = (
|
|
90
|
-
},
|
|
91
|
-
|
|
92
|
-
},
|
|
93
|
-
|
|
94
|
-
}, N = () =>
|
|
95
|
-
var
|
|
96
|
-
return (
|
|
87
|
+
}, y = () => t.parentFormRef, L = () => {
|
|
88
|
+
var e, o, a;
|
|
89
|
+
(a = (o = (e = t.vfCtx) == null ? void 0 : e.parent) == null ? void 0 : o.exposed) != null && a.updateTable && t.vfCtx.parent.exposed.updateTable();
|
|
90
|
+
}, T = () => t.extraData, M = (e) => {
|
|
91
|
+
f.value = e;
|
|
92
|
+
}, S = (e) => {
|
|
93
|
+
p.value = e;
|
|
94
|
+
}, N = () => s.value, V = () => {
|
|
95
|
+
var e;
|
|
96
|
+
return (e = s.value) == null ? void 0 : e.context;
|
|
97
97
|
};
|
|
98
|
-
return
|
|
98
|
+
return C({
|
|
99
99
|
getParentFormRef: y,
|
|
100
100
|
getFormRef: N,
|
|
101
|
-
setDisabled:
|
|
102
|
-
setleftText:
|
|
103
|
-
setLoading:
|
|
104
|
-
setTitle:
|
|
105
|
-
beforeOpen:
|
|
101
|
+
setDisabled: S,
|
|
102
|
+
setleftText: M,
|
|
103
|
+
setLoading: D,
|
|
104
|
+
setTitle: k,
|
|
105
|
+
beforeOpen: w,
|
|
106
106
|
show: j,
|
|
107
107
|
close: E,
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
}), (t, o) => (U(), P(c(z), A({
|
|
108
|
+
handleCloseEvent: r,
|
|
109
|
+
handleOpenedEvent: b,
|
|
110
|
+
updateTable: L,
|
|
111
|
+
getExtraData: T
|
|
112
|
+
}), (e, o) => (A(), P(c(G), U({
|
|
114
113
|
class: "tpf-model design-model",
|
|
115
114
|
destroyOnClose: !0,
|
|
116
115
|
title: n.options.title,
|
|
117
116
|
bodyStyle: {
|
|
118
|
-
height:
|
|
117
|
+
height: h.value,
|
|
119
118
|
overflow: "auto",
|
|
120
119
|
...JSON.parse(n.options.bodyStyle || "{}")
|
|
121
120
|
},
|
|
122
121
|
centered: !0,
|
|
123
122
|
visible: l.value,
|
|
124
|
-
"onUpdate:visible": o[
|
|
123
|
+
"onUpdate:visible": o[0] || (o[0] = (a) => l.value = a),
|
|
125
124
|
width: n.options.width,
|
|
126
125
|
mask: n.options.showModal,
|
|
127
126
|
maskClosable: n.options.closeOnClickModal,
|
|
128
127
|
keyboard: n.options.closeOnPressEscape,
|
|
129
|
-
onCancel:
|
|
130
|
-
"left-num":
|
|
131
|
-
},
|
|
132
|
-
footerRight:
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
ctx: H()
|
|
140
|
-
}, null, 8, ["disabled", "dialog-visible", "options", "ctx"])
|
|
128
|
+
onCancel: r,
|
|
129
|
+
"left-num": f.value
|
|
130
|
+
}, F.value), {
|
|
131
|
+
footerRight: g(() => [
|
|
132
|
+
x(W, {
|
|
133
|
+
buttonList: n.options.buttonList || [],
|
|
134
|
+
ctx: V(),
|
|
135
|
+
onOnClick: B,
|
|
136
|
+
disabled: p.value
|
|
137
|
+
}, null, 8, ["buttonList", "ctx", "disabled"])
|
|
141
138
|
]),
|
|
142
|
-
default:
|
|
143
|
-
I("div",
|
|
144
|
-
|
|
139
|
+
default: g(() => [
|
|
140
|
+
I("div", X, [
|
|
141
|
+
x(Q, {
|
|
145
142
|
ref_key: "vfdRef",
|
|
146
|
-
ref:
|
|
143
|
+
ref: s,
|
|
147
144
|
loading: c(v),
|
|
148
145
|
vfCtx: {
|
|
149
146
|
...n.vfCtx,
|
|
150
|
-
instance: c(
|
|
147
|
+
instance: c(i)
|
|
151
148
|
},
|
|
152
149
|
"parent-form": R.value,
|
|
153
150
|
"disabled-mode": n.options.disabledMode,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dynamic-dialog.vue.js","sources":["../../../../src/components/form-render/dynamic-dialog.vue"],"sourcesContent":["<template>\n <TpfModal\n class=\"tpf-model design-model\"\n :destroyOnClose=\"true\"\n :title=\"options.title\"\n :bodyStyle=\"{\n height: dialogHeight,\n overflow: 'auto',\n ...JSON.parse(options.bodyStyle || '{}')\n }\"\n :centered=\"true\"\n v-model:visible=\"dialogVisible\"\n :width=\"options.width\"\n :mask=\"options.showModal\"\n :maskClosable=\"options.closeOnClickModal\"\n :keyboard=\"options.closeOnPressEscape\"\n @cancel=\"handleCloseEvent\"\n :left-num=\"leftNum\"\n v-bind=\"otherAttrs\"\n >\n <div class=\"dialog-content\">\n <VFormRender\n ref=\"vfdRef\"\n :loading=\"isLoading\"\n :vfCtx=\"{\n ...vfCtx,\n instance: context\n }\"\n :parent-form=\"parentForm\"\n :disabled-mode=\"options.disabledMode\"\n :dynamic-creation=\"true\"\n />\n </div>\n <template #footerRight>\n <SubmitButtonRender\n :disabled=\"isDisabled\"\n v-model:dialog-visible=\"dialogVisible\"\n :handleBeforeClose=\"handleBeforeClose\"\n :options=\"options\"\n :ctx=\"getFormContext()\"\n />\n </template>\n </TpfModal>\n</template>\n\n<script lang=\"ts\" setup>\n import { ref, computed, nextTick, onBeforeUnmount } from 'vue';\n import { TpfModal, useExecFunction } from 'tmgc2-share';\n import SubmitButtonRender from './SubmitButtonRender.vue';\n import { useLowcode } from '@/hooks/useLowcode';\n import VFormRender from '../FormRender/index.vue';\n\n defineOptions({\n name: 'dynamic-dialog'\n });\n\n const props = defineProps({\n options: {\n type: Object,\n default: () => ({})\n },\n formJson: {\n type: Object\n },\n formData: {\n type: Object,\n default: () => ({})\n },\n vfCtx: {\n type: Object,\n default: () => ({})\n },\n optionData: {\n //prop传入的选项数据\n type: Object,\n default: () => ({})\n },\n globalDsv: {\n // 全局数据源变量\n type: Object,\n default: () => ({})\n },\n parentFormRef: {\n type: Object,\n default: null\n },\n extraData: {\n type: Object,\n default: () => ({})\n },\n wrapperId: {\n type: String,\n default: null\n }\n });\n\n const dialogHeight = computed(() => {\n return props.options.height || '500px';\n });\n const leftNum = ref(null);\n\n const isDisabled = ref(false);\n const dialogVisible = ref(false);\n\n const { context, asyncExecuteFunction, executeFunction } = useExecFunction();\n const { vfdRef, isLoading, getComponentJson } = useLowcode({\n formCode: props.options.formCode,\n ...props.vfCtx\n });\n // 计算属性\n const parentForm = computed(() => {\n return {\n ...props.parentFormRef,\n parentDom: context.value,\n getParentFormRef\n };\n });\n\n const otherAttrs = computed(() => {\n if (props.options.cancelButtonHidden && props.options.okButtonHidden) {\n return { footer: null };\n }\n return {};\n });\n\n // 生命周期钩子\n onBeforeUnmount(() => {\n console.log(props.parentFormRef);\n props.parentFormRef?.setChildFormRef?.(null);\n });\n\n const setLoading = status => {\n isLoading.value = status;\n };\n\n const setTitle = title => {\n props.options.title = title;\n };\n\n const beforeOpen = () => {\n dialogVisible.value = true;\n };\n\n const show = () => {\n dialogVisible.value = true;\n\n //设置readMode模式\n nextTick(async () => {\n if (props.options?.readMode) {\n vfdRef.value?.setReadMode(true);\n }\n await getComponentJson([], props.options.formCode);\n vfdRef.value?.setDialogOrDrawerRef(context.value);\n if (props.parentFormRef) {\n props.parentFormRef.setChildFormRef(vfdRef.value);\n }\n handleOpenedEvent();\n });\n };\n\n const close = async () => {\n if (props.options.onDialogBeforeClose) {\n return await asyncExecuteFunction({\n functionBody: props.options.onDialogBeforeClose\n });\n }\n\n dialogVisible.value = false;\n };\n\n const handleCloseEvent = () => {\n if (!handleBeforeClose()) return;\n dialogVisible.value = false;\n };\n\n const handleBeforeClose = async () => {\n if (props.options.onDialogBeforeClose) {\n return (await asyncExecuteFunction({\n functionBody: props.options.onDialogBeforeClose\n })) as Promise<boolean>;\n }\n return true;\n };\n\n const handleOpenedEvent = async () => {\n if (props.options.onDialogOpened) {\n return await asyncExecuteFunction({\n functionBody: props.options.onDialogOpened\n });\n }\n };\n\n const getParentFormRef = () => {\n return props.parentFormRef;\n };\n\n const updateTable = () => {\n if (props.vfCtx?.parent?.exposed?.updateTable) {\n props.vfCtx.parent.exposed.updateTable();\n }\n };\n\n const getExtraData = () => {\n return props.extraData;\n };\n\n const setleftText = number => {\n leftNum.value = number;\n };\n\n const setDisabled = status => {\n isDisabled.value = status;\n };\n\n const getFormRef = () => {\n return vfdRef.value;\n };\n\n const getFormContext = () => {\n return vfdRef.value?.context;\n };\n\n // 暴露方法给父组件\n defineExpose({\n getParentFormRef,\n getFormRef,\n setDisabled,\n setleftText,\n setLoading,\n setTitle,\n beforeOpen,\n show,\n close,\n handleBeforeClose,\n handleCloseEvent,\n handleOpenedEvent,\n updateTable,\n getExtraData\n });\n</script>\n\n<style lang=\"less\">\n .dialog-content {\n display: flex;\n flex: 1;\n flex-direction: column;\n min-height: 300px;\n }\n</style>\n"],"names":["props","__props","dialogHeight","computed","leftNum","ref","isDisabled","dialogVisible","context","asyncExecuteFunction","executeFunction","useExecFunction","vfdRef","isLoading","getComponentJson","useLowcode","parentForm","getParentFormRef","otherAttrs","onBeforeUnmount","_b","_a","setLoading","status","setTitle","title","beforeOpen","show","nextTick","_c","handleOpenedEvent","close","handleCloseEvent","handleBeforeClose","updateTable","getExtraData","setleftText","number","setDisabled","getFormRef","getFormContext","__expose","_openBlock","_createBlock","_unref","_mergeProps","$event","_createVNode","SubmitButtonRender","_createElementVNode","_hoisted_1","VFormRender"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dynamic-dialog.vue.js","sources":["../../../../src/components/form-render/dynamic-dialog.vue"],"sourcesContent":["<template>\n <TpfModal\n class=\"tpf-model design-model\"\n :destroyOnClose=\"true\"\n :title=\"options.title\"\n :bodyStyle=\"{\n height: dialogHeight,\n overflow: 'auto',\n ...JSON.parse(options.bodyStyle || '{}')\n }\"\n :centered=\"true\"\n v-model:visible=\"dialogVisible\"\n :width=\"options.width\"\n :mask=\"options.showModal\"\n :maskClosable=\"options.closeOnClickModal\"\n :keyboard=\"options.closeOnPressEscape\"\n @cancel=\"handleCloseEvent\"\n :left-num=\"leftNum\"\n v-bind=\"otherAttrs\"\n >\n <div class=\"dialog-content\">\n <VFormRender\n ref=\"vfdRef\"\n :loading=\"isLoading\"\n :vfCtx=\"{\n ...vfCtx,\n instance: context\n }\"\n :parent-form=\"parentForm\"\n :disabled-mode=\"options.disabledMode\"\n :dynamic-creation=\"true\"\n />\n </div>\n <template #footerRight>\n <ActionButtonListRender\n :buttonList=\"options.buttonList || []\"\n :ctx=\"getFormContext()\"\n @on-click=\"handleBtnClick\"\n :disabled=\"isDisabled\"\n />\n <!-- <SubmitButtonRender\n :disabled=\"isDisabled\"\n v-model:dialog-visible=\"dialogVisible\"\n :handleBeforeClose=\"handleBeforeClose\"\n :options=\"options\"\n :ctx=\"getFormContext()\"\n /> -->\n </template>\n </TpfModal>\n</template>\n\n<script lang=\"ts\" setup>\n import { ref, computed, nextTick, onBeforeUnmount } from 'vue';\n import { TpfModal, useExecFunction } from 'tmgc2-share';\n import SubmitButtonRender from './SubmitButtonRender.vue';\n import { useLowcode } from '@/hooks/useLowcode';\n import VFormRender from '../FormRender/index.vue';\n import ActionButtonListRender from '@/components/public/ActionButtonListRender.vue';\n defineOptions({\n name: 'dynamic-dialog'\n });\n\n const props = defineProps({\n options: {\n type: Object,\n default: () => ({})\n },\n formJson: {\n type: Object\n },\n formData: {\n type: Object,\n default: () => ({})\n },\n vfCtx: {\n type: Object,\n default: () => ({})\n },\n optionData: {\n //prop传入的选项数据\n type: Object,\n default: () => ({})\n },\n globalDsv: {\n // 全局数据源变量\n type: Object,\n default: () => ({})\n },\n parentFormRef: {\n type: Object,\n default: null\n },\n extraData: {\n type: Object,\n default: () => ({})\n },\n wrapperId: {\n type: String,\n default: null\n }\n });\n\n const dialogHeight = computed(() => {\n return props.options.height || '500px';\n });\n const leftNum = ref(null);\n\n const isDisabled = ref(false);\n const dialogVisible = ref(false);\n\n const { context, asyncExecuteFunction, executeFunction } = useExecFunction();\n const { vfdRef, isLoading, getComponentJson } = useLowcode({\n formCode: props.options.formCode,\n ...props.vfCtx\n });\n // 计算属性\n const parentForm = computed(() => {\n return {\n ...props.parentFormRef,\n parentDom: context.value,\n getParentFormRef\n };\n });\n\n const otherAttrs = computed(() => {\n if (props.options.cancelButtonHidden && props.options.okButtonHidden) {\n return { footer: null };\n }\n return {};\n });\n\n // 生命周期钩子\n onBeforeUnmount(() => {\n console.log(props.parentFormRef);\n props.parentFormRef?.setChildFormRef?.(null);\n });\n\n const setLoading = status => {\n isLoading.value = status;\n };\n\n const setTitle = title => {\n props.options.title = title;\n };\n\n const beforeOpen = () => {\n dialogVisible.value = true;\n };\n\n const handleBtnClick = async ({ result }: any) => {\n if (result !== false) {\n await handleCloseEvent();\n }\n };\n\n const show = () => {\n dialogVisible.value = true;\n\n //设置readMode模式\n nextTick(async () => {\n if (props.options?.readMode) {\n vfdRef.value?.setReadMode(true);\n }\n await getComponentJson([], props.options.formCode);\n vfdRef.value?.setDialogOrDrawerRef(context.value);\n if (props.parentFormRef) {\n props.parentFormRef.setChildFormRef(vfdRef.value);\n }\n handleOpenedEvent();\n });\n };\n\n const close = async () => {\n if (props.options.onDialogBeforeClose) {\n return await asyncExecuteFunction({\n functionBody: props.options.onDialogBeforeClose\n });\n }\n\n dialogVisible.value = false;\n };\n\n const handleCloseEvent = () => {\n dialogVisible.value = false;\n };\n\n const handleOpenedEvent = async () => {\n if (props.options.onDialogOpened) {\n return await asyncExecuteFunction({\n functionBody: props.options.onDialogOpened\n });\n }\n };\n\n const getParentFormRef = () => {\n return props.parentFormRef;\n };\n\n const updateTable = () => {\n if (props.vfCtx?.parent?.exposed?.updateTable) {\n props.vfCtx.parent.exposed.updateTable();\n }\n };\n\n const getExtraData = () => {\n return props.extraData;\n };\n\n const setleftText = number => {\n leftNum.value = number;\n };\n\n const setDisabled = status => {\n isDisabled.value = status;\n };\n\n const getFormRef = () => {\n return vfdRef.value;\n };\n\n const getFormContext = () => {\n return vfdRef.value?.context;\n };\n\n // 暴露方法给父组件\n defineExpose({\n getParentFormRef,\n getFormRef,\n setDisabled,\n setleftText,\n setLoading,\n setTitle,\n beforeOpen,\n show,\n close,\n handleCloseEvent,\n handleOpenedEvent,\n updateTable,\n getExtraData\n });\n</script>\n\n<style lang=\"less\">\n .dialog-content {\n display: flex;\n flex: 1;\n flex-direction: column;\n min-height: 300px;\n }\n</style>\n"],"names":["props","__props","dialogHeight","computed","leftNum","ref","isDisabled","dialogVisible","context","asyncExecuteFunction","executeFunction","useExecFunction","vfdRef","isLoading","getComponentJson","useLowcode","parentForm","getParentFormRef","otherAttrs","onBeforeUnmount","_b","_a","setLoading","status","setTitle","title","beforeOpen","handleBtnClick","result","handleCloseEvent","show","nextTick","_c","handleOpenedEvent","close","updateTable","getExtraData","setleftText","number","setDisabled","getFormRef","getFormContext","__expose","_openBlock","_createBlock","_unref","_mergeProps","$event","_createVNode","ActionButtonListRender","_createElementVNode","_hoisted_1","VFormRender"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import o from "./ActionButtonListDialog.vue2.js";
|
|
2
2
|
/* empty css */
|
|
3
3
|
import t from "../../../_virtual/_plugin-vue_export-helper.js";
|
|
4
|
-
const m = /* @__PURE__ */ t(o, [["__scopeId", "data-v-
|
|
4
|
+
const m = /* @__PURE__ */ t(o, [["__scopeId", "data-v-1ba0ad55"]]);
|
|
5
5
|
export {
|
|
6
6
|
m as default
|
|
7
7
|
};
|